@charset "UTF-8";
/* CONFIG */
/*** DEFINITION ***/
/* DEFINE CLASS NAME */
/* COLOR */
/* RESET */
* {
  filter: inherit;
  -webkit-text-size-adjust: none; }

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  border: 0;
  font-size: 100%;
  margin: 0;
  padding: 0;
  text-decoration: none;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

html *,
html *::after,
html *::before {
  max-height: 999999px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-box-sizing: border-box; }

body {
  line-height: 1; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

strong {
  font-weight: bold; }

em {
  font-style: italic; }

a,
input,
button,
select,
textarea {
  outline: none;
  margin: 0;
  padding: 0; }

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0; }

select::-ms-expand {
  display: none; }

input {
  display: inline-block;
  border-style: none;
  border-color: transparent;
  border-width: 0;
  cursor: pointer; }

input[type=text],
input[type=password],
input[type=tel],
input[type=email],
input[type=number],
input[type=search],
input[type=url] {
  cursor: text; }

input[type=range] {
  width: 100%; }
  input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none; }
  input[type=range]::-ms-track {
    width: 100%;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    color: transparent; }

input:disabled {
  cursor: default; }

select {
  background-color: transparent;
  background-image: url("../images/form/imgArrow.png");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 18px; }

textarea {
  resize: none; }

/* COMMON */
html, body {
  width: 100%;
  font-family: 'PingFang HK', "微軟正黑體", "Microsoft JhengHei", "Heiti TC", "LiHei Pro", Arial, Helvetica, "新細明體", PMingLiU, sans-serif;
  color: #4D4D4D;
  background-color: #ffffff;
  -webkit-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent; }
  html.vs-loadingOpen, html.vs-menuOpen, html.vs-popupOpen, body.vs-loadingOpen, body.vs-menuOpen, body.vs-popupOpen {
    overflow: hidden; }
  html.vs-loadingOpen.vs-devicePortable, html.vs-menuOpen.vs-devicePortable, html.vs-popupOpen.vs-devicePortable, body.vs-loadingOpen.vs-devicePortable, body.vs-menuOpen.vs-devicePortable, body.vs-popupOpen.vs-devicePortable {
    position: fixed;
    transform-style: preserve-3d; }

.block {
  display: block; }

.hide {
  display: none !important; }

.noWrap {
  white-space: nowrap; }

.clear:after {
  content: "";
  display: block;
  clear: both; }

/* CONTROL */
.vs-mobile .hide-vs-mobile {
  display: none !important; }

.vs-tablet .hide-vs-tablet {
  display: none !important; }

.vs-desktop .hide-vs-desktop {
  display: none !important; }

.vs-largeDesktop .hide-vs-largeDesktop {
  display: none !important; }

.vs-transitionFreeze * {
  transition: none !important; }

/* BLOCK WRAPPER */
.fixedWrapper {
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9; }
  .vs-popupOpen .fixedWrapper {
    min-height: 100%; }
  .vs-menuOpen .fixedWrapper {
    overflow-x: hidden;
    overflow-y: auto; }
  .fixedWrapper .fixedBg {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    cursor: default; }
    .vs-popupOpen .fixedWrapper .fixedBg {
      display: block;
      background-color: rgba(0, 0, 0, 0.5); }
  .fixedWrapper .fixedBgBtn {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    cursor: default; }
    .vs-popupOpen .fixedWrapper .fixedBgBtn {
      display: block; }

.mainWrapper {
  overflow-x: hidden;
  position: relative;
  transition: transform 0.2s ease-out;
  z-index: 2;
  /*
	.vs-loadingOpen &,
	.vs-menuOpen &,
	.vs-popupOpen &
	{
		position: relative;
	}
	*/ }
  .vs-mobile .mainWrapper,
  .vs-tablet .mainWrapper {
    min-height: calc(100vh - 60px);
    margin-top: 60px;
    margin-bottom: 0; }
  .vs-desktop .mainWrapper,
  .vs-largeDesktop .mainWrapper {
    min-height: calc(100vh - 60px);
    margin-top: 60px;
    margin-bottom: 0; }
  .mainWrapper:after {
    content: "";
    display: none;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    transition: all 0.2s ease-out; }

/* TEXT_CONTENT */
b,
strong {
  font-weight: bold; }

i,
em {
  font-style: italic; }

sup {
  vertical-align: super;
  font-size: smaller; }

sub {
  vertical-align: sub;
  font-size: smaller;
  line-height: 0em; }

/* EDITOR_CONTENT */
.editorContent {
  line-height: 1.5em; }
  .editorContent p {
    margin: 1em 0; }
  .editorContent b,
  .editorContent strong {
    font-weight: bold; }
  .editorContent i,
  .editorContent em {
    font-style: italic; }
  .editorContent i,
  .editorContent em {
    font-style: italic; }
  .editorContent u {
    text-decoration: underline; }
  .editorContent s,
  .editorContent strike {
    text-decoration: line-through; }
  .editorContent ol,
  .editorContent ul {
    list-style-position: outside; }
    .editorContent ol li,
    .editorContent ul li {
      margin: 0 0 0 1.3em; }
  .editorContent ol {
    list-style-type: decimal; }
  .editorContent ul {
    list-style-type: disc; }
  .editorContent sup {
    vertical-align: super;
    font-size: smaller; }
  .editorContent sub {
    vertical-align: sub;
    font-size: smaller; }

/* BACK TO TOP*/
.backToTop {
  display: block;
  width: 40px;
  height: 40px;
  opacity: 0;
  position: fixed;
  bottom: 20px;
  right: 20px;
  transform: translate3d(0, 100%, 0);
  background-color: #D50000;
  text-align: center;
  color: #ffffff;
  font-size: 14px;
  line-height: 40px;
  font-weight: 700;
  letter-spacing: 1px;
  border-radius: 100%;
  z-index: 3;
  transition: all 0.2s ease-out; }
  .backToTop.vs-active {
    opacity: 1;
    transform: translate3d(0, 0, 0); }

/* LOADING */
.loading {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  opacity: 0;
  background-color: #ffffff;
  transform: translate(0, -100%);
  transition: opacity 0.2s ease-out, transform 0.01s linear 0.2s;
  z-index: 99; }
  .vs-loadingOpen .loading {
    opacity: 1;
    transform: translate(0, 0);
    transition: none; }
  .vs-ready.vs-loadingOpen .loading {
    background-color: rgba(255, 255, 255, 0.7); }
  .loading .loadingBlock {
    display: block;
    width: 200px;
    position: absolute;
    left: 50%;
    top: 50%;
    text-align: center;
    transform: translate(-50%, -50%) scale3d(0.5, 0.5, 1); }
    .loading .loadingBlock span {
      display: inline-block;
      width: 20px;
      height: 20px;
      border-radius: 100%;
      background-color: #1991D0;
      margin: 35px 5px; }
      .loading .loadingBlock span:nth-child(1) {
        animation: vsAni_loading_movingBall 1s ease-in-out infinite; }
      .loading .loadingBlock span:nth-child(2) {
        animation: vsAni_loading_movingBall 1s ease-in-out 0.2s infinite; }
      .loading .loadingBlock span:nth-child(3) {
        animation: vsAni_loading_movingBall 1s ease-in-out 0.4s infinite; }
      .loading .loadingBlock span:nth-child(4) {
        animation: vsAni_loading_movingBall 1s ease-in-out 0.6s infinite; }
      .loading .loadingBlock span:nth-child(5) {
        animation: vsAni_loading_movingBall 1s ease-in-out 0.8s infinite; }

@keyframes vsAni_loading_movingBall {
  0%, 75%, 100% {
    transform: translate3d(0, 0, 0); }
  25% {
    transform: translate3d(0, -20px, 0); } }

/* HEADER */
.header {
  position: relative;
  background-color: #2B8247;
  color: #ffffff;
  line-height: 60px;
  transition: all 0.2s ease-out; }
  .vs-mobile .header,
  .vs-tablet .header {
    height: 60px; }
  .vs-desktop .header,
  .vs-largeDesktop .header {
    height: 60px; }
  .vs-mobile .vs-menuOpen .header,
  .vs-tablet .vs-menuOpen .header {
    width: 100%; }
  .header.active .leftPanel {
    display: none; }
  .header.active .rightPanel {
    display: none; }
  .header.active .searchPanel {
    display: -ms-flexbox;
    display: flex; }
  .header .innerHeader {
    max-width: 1024px;
    height: 100%;
    margin: 0 auto;
    position: relative; }
  .header .logo {
    display: block;
    width: 57px;
    height: 35px;
    position: absolute;
    left: 20px;
    top: 20px;
    background-image: url("../images/common/logo.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 100%; }
  .header .leftPanel {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end;
    max-width: calc(100% - 120px);
    position: absolute;
    left: 20px;
    top: 20px; }
    .header .leftPanel .userInfo {
      display: block;
      position: relative; }
      .header .leftPanel .userInfo .userBtn {
        display: block;
        height: 24px;
        overflow: hidden;
        padding-right: 16px;
        background-image: url("../images/common/arrow.svg");
        background-repeat: no-repeat;
        background-position: right 0px center;
        background-size: 12px;
        color: #ffffff;
        font-size: 20px;
        line-height: 24px;
        white-space: nowrap;
        text-overflow: ellipsis; }
      .header .leftPanel .userInfo .userBtnWrapper {
        display: none;
        position: absolute;
        left: 0;
        top: 30px;
        background-color: #ffffff;
        box-shadow: 0px 5px 10px rgba(20, 94, 133, 0.3);
        border-radius: 6px;
        z-index: 2; }
      .header .leftPanel .userInfo .orderBtn {
        display: block;
        padding: 0 10px 0 36px;
        position: relative;
        background-image: url("../images/common/order-grey.svg");
        background-repeat: no-repeat;
        background-position: left 10px center;
        background-size: 20px;
        color: #4D4D4D;
        line-height: 50px; }
      .header .leftPanel .userInfo .logoutBtn {
        display: block;
        padding: 0 10px 0 36px;
        position: relative;
        background-image: url("../images/common/logout.svg");
        background-repeat: no-repeat;
        background-position: left 10px center;
        background-size: 20px;
        color: #4D4D4D;
        line-height: 50px; }
      .header .leftPanel .userInfo.active .userBtnWrapper {
        display: block; }
  .header .rightPanel {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end;
    max-width: calc(100% - 120px);
    position: absolute;
    right: 20px;
    top: 16px; }
    .header .rightPanel .searchBtn {
      display: block;
      width: 32px;
      height: 32px;
      margin-right: 12px;
      background-image: url("../images/common/search.svg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
    .header .rightPanel .orderBtn {
      display: block;
      width: 32px;
      height: 32px;
      position: relative;
      background-image: url("../images/common/order.svg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
      .header .rightPanel .orderBtn .count {
        display: block;
        width: 20px;
        height: 20px;
        position: absolute;
        right: -4px;
        bottom: -2px;
        background-color: #ffffff;
        color: #2B8247;
        text-align: center;
        font-size: 12px;
        line-height: 20px;
        border-radius: 100px; }
  .header .searchPanel {
    display: none;
    -ms-flex-pack: justify;
        justify-content: space-between;
    width: calc(100% - 40px);
    position: absolute;
    left: 20px;
    bottom: 8px; }
    .header .searchPanel .closeBtn {
      display: block;
      width: 12px;
      height: 40px;
      background-image: url("../images/common/close.svg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
    .header .searchPanel #input_searchText {
      width: calc(100% - 30px);
      padding: 10px 36px 10px 16px;
      border-radius: 4px; }
    .header .searchPanel .searchBtn {
      display: block;
      width: 16px;
      height: 40px;
      position: absolute;
      right: 16px;
      top: 0;
      background-image: url("../images/common/search-green.svg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: 20px; }
  .header .headerExtendWrapper {
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    top: 60px;
    background-color: #ffffff; }
    .header .headerExtendWrapper .headerExtend {
      max-width: 1024px;
      height: 60px;
      margin: 0 auto;
      position: relative; }
      .header .headerExtendWrapper .headerExtend.listingCategory {
        display: -ms-flexbox;
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        padding: 0 20px;
        position: relative;
        cursor: grab; }
        .header .headerExtendWrapper .headerExtend.listingCategory.active {
          cursor: grabbing;
          -webkit-user-select: none;
             -moz-user-select: none;
              -ms-user-select: none;
                  user-select: none; }
        .header .headerExtendWrapper .headerExtend.listingCategory::-webkit-scrollbar-track {
          border-radius: 10px;
          background-color: rgba(171, 171, 171, 0.1); }
        .header .headerExtendWrapper .headerExtend.listingCategory::-webkit-scrollbar {
          height: 4px;
          background-color: rgba(171, 171, 171, 0.1); }
        .header .headerExtendWrapper .headerExtend.listingCategory::-webkit-scrollbar-thumb {
          border-radius: 10px;
          background-color: rgba(171, 171, 171, 0.4); }
        .header .headerExtendWrapper .headerExtend.listingCategory .categoryBtn {
          display: block;
          margin-left: 32px;
          position: relative;
          white-space: nowrap;
          color: #4D4D4D;
          font-size: 20px;
          line-height: 60px;
          transition: all 0.2s ease-out; }
          .header .headerExtendWrapper .headerExtend.listingCategory .categoryBtn:first-child {
            margin-left: 0; }
          .header .headerExtendWrapper .headerExtend.listingCategory .categoryBtn:before {
            content: "";
            display: block;
            width: 100%;
            height: 4px;
            opacity: 0;
            background-color: #2B8247;
            position: absolute;
            left: 0;
            bottom: 0;
            transition: all 0.2s ease-out; }
          .header .headerExtendWrapper .headerExtend.listingCategory .categoryBtn:hover {
            color: #2B8247; }
          .header .headerExtendWrapper .headerExtend.listingCategory .categoryBtn.active {
            color: #2B8247; }
            .header .headerExtendWrapper .headerExtend.listingCategory .categoryBtn.active:before {
              opacity: 1; }
      .header .headerExtendWrapper .headerExtend.listingFilterPanel {
        display: -ms-flexbox;
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        max-width: 1024px;
        margin: 0 auto;
        padding: 12px 20px;
        position: relative;
        cursor: grab; }
        .header .headerExtendWrapper .headerExtend.listingFilterPanel.active {
          cursor: grabbing;
          -webkit-user-select: none;
             -moz-user-select: none;
              -ms-user-select: none;
                  user-select: none; }
        .header .headerExtendWrapper .headerExtend.listingFilterPanel::-webkit-scrollbar-track {
          border-radius: 10px;
          background-color: rgba(171, 171, 171, 0.1); }
        .header .headerExtendWrapper .headerExtend.listingFilterPanel::-webkit-scrollbar {
          height: 4px;
          background-color: rgba(171, 171, 171, 0.1); }
        .header .headerExtendWrapper .headerExtend.listingFilterPanel::-webkit-scrollbar-thumb {
          border-radius: 10px;
          background-color: rgba(171, 171, 171, 0.4); }
        .header .headerExtendWrapper .headerExtend.listingFilterPanel .filterBtn {
          display: block;
          margin-left: 12px;
          padding: 0 16px;
          position: relative;
          white-space: nowrap;
          background-color: #ffffff;
          color: #4D4D4D;
          font-size: 16px;
          line-height: 32px;
          border-style: solid;
          border-width: 1px;
          border-color: #ABABAB;
          border-radius: 100px;
          transition: all 0.2s ease-out; }
          .header .headerExtendWrapper .headerExtend.listingFilterPanel .filterBtn:first-child {
            margin-left: 0; }
          .header .headerExtendWrapper .headerExtend.listingFilterPanel .filterBtn:hover {
            color: #32AF5A;
            border-color: #32AF5A; }
          .header .headerExtendWrapper .headerExtend.listingFilterPanel .filterBtn.active {
            color: #ffffff;
            background-color: #32AF5A;
            border-color: #32AF5A; }
      .header .headerExtendWrapper .headerExtend.searchResultPanel {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between;
        padding: 0 20px;
        position: relative;
        color: #4D4D4D;
        font-size: 20px;
        line-height: 60px; }
        .header .headerExtendWrapper .headerExtend.searchResultPanel .searchResult {
          display: block;
          min-width: calc(100% - 24px - 20px);
          max-width: calc(100% - 24px - 20px);
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis; }
        .header .headerExtendWrapper .headerExtend.searchResultPanel .closeBtn {
          display: block;
          min-width: 24px;
          max-width: 24px;
          height: 60px;
          background-image: url("../images/common/cartItem-close.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: 100%; }
      .header .headerExtendWrapper .headerExtend.breadcrumb {
        display: -ms-flexbox;
        display: flex;
        padding: 0 20px;
        position: relative; }
        .header .headerExtendWrapper .headerExtend.breadcrumb .breadcrumbItem {
          padding-right: 30px;
          position: relative;
          color: #000;
          font-size: 16px;
          line-height: 60px; }
          .header .headerExtendWrapper .headerExtend.breadcrumb .breadcrumbItem:last-child {
            padding-right: 0; }
            .header .headerExtendWrapper .headerExtend.breadcrumb .breadcrumbItem:last-child:before {
              display: none; }
          .header .headerExtendWrapper .headerExtend.breadcrumb .breadcrumbItem:before {
            content: "";
            display: block;
            width: 30px;
            height: 100%;
            position: absolute;
            right: 0;
            top: 0;
            background-image: url("../images/common/breadcrumb-arrow.svg");
            background-repeat: no-repeat;
            background-position: center center;
            background-size: 7px; }
          .header .headerExtendWrapper .headerExtend.breadcrumb .breadcrumbItem.active {
            color: #2B8247; }
      .header .headerExtendWrapper .headerExtend.backPanel {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between;
        padding: 0 20px;
        position: relative; }
        .header .headerExtendWrapper .headerExtend.backPanel .backBtn {
          padding-left: 30px;
          position: relative;
          color: #4D4D4D;
          font-size: 20px;
          line-height: 60px; }
          .header .headerExtendWrapper .headerExtend.backPanel .backBtn:before {
            content: "";
            display: block;
            width: 30px;
            height: 100%;
            position: absolute;
            left: 0;
            top: 0;
            background-image: url("../images/common/backBtn-arrow.svg");
            background-repeat: no-repeat;
            background-position: left center;
            background-size: 11px; }
        .header .headerExtendWrapper .headerExtend.backPanel .remarks {
          display: block;
          color: #ABABAB;
          font-size: 16px;
          line-height: 60px; }

/* FOOTER */
.footer {
  width: 100%;
  position: fixed;
  bottom: 0;
  background-color: #4D4D4D;
  color: #ffffff;
  line-height: 52px;
  transition: all 0.2s ease-out;
  box-shadow: 0px 2px 4px 0px rgba(89, 89, 89, 0.75); }
  .vs-mobile .footer,
  .vs-tablet .footer {
    height: 52px; }
  .vs-desktop .footer,
  .vs-largeDesktop .footer {
    height: 52px; }
  .vs-mobile .vs-menuOpen .footer,
  .vs-tablet .vs-menuOpen .footer {
    width: 100%; }
  .footer .innerFooter {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end;
    max-width: 1024px;
    height: 100%;
    margin: 0 auto;
    position: relative; }
    .footer .innerFooter .statistic {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: end;
          justify-content: flex-end;
      width: calc(100% - 40px);
      max-width: 450px;
      margin: 14px 20px;
      position: relative; }
      .footer .innerFooter .statistic .stat_item {
        display: block;
        margin-left: 12px;
        font-size: 18px;
        line-height: 24px; }
        .footer .innerFooter .statistic .stat_item:first-child {
          margin-left: 0;
          position: absolute;
          left: 0;
          top: 0; }
        .footer .innerFooter .statistic .stat_item span {
          display: inline-block;
          width: 32px;
          margin-left: 4px;
          text-align: center;
          color: #4D4D4D;
          background-color: #ffffff;
          border-radius: 4px; }

/* MENU */
/* MENU - DESKTOP */
.header .menu {
  position: absolute;
  right: 0;
  top: 0;
  letter-spacing: 0.2em; }
  .vs-mobile .header .menu,
  .vs-tablet .header .menu {
    display: none; }
  .header .menu ul {
    display: -ms-flexbox;
    display: flex;
    padding: 26px 220px 0 0; }
    .header .menu ul li:after {
      content: "";
      display: block;
      clear: both; }
    .header .menu ul li a {
      display: block;
      overflow: hidden;
      margin: 0 0 0 26px;
      position: relative;
      color: #000;
      font-size: 20px;
      line-height: 40px;
      cursor: pointer; }
      .header .menu ul li a:hover, .header .menu ul li a.vs-active {
        color: #abd037; }
      .header .menu ul li a.vs-active:before {
        content: "";
        display: block;
        width: 10px;
        height: 10px;
        position: absolute;
        left: calc(50% - 6px);
        top: 10px;
        background-color: #abd037;
        border-radius: 100%; }
    .header .menu ul li a {
      padding: 20px 22px 0; }

.header .menuBtn {
  display: block;
  width: 40px;
  height: 60px;
  padding: 20px 10px;
  position: absolute;
  left: 0;
  top: 0; }
  .vs-desktop .header .menuBtn,
  .vs-largeDesktop .header .menuBtn {
    display: none; }
  .header .menuBtn span {
    display: block;
    height: 3px;
    margin: 0 0 5px;
    background-color: #abd037;
    border-radius: 3px;
    transition: all 0.2s ease-out; }
    .vs-menuOpen .vs-mobile .header .menuBtn span:nth-child(1) {
      transform: translate(0, 8px) rotate(45deg); }
    .header .menuBtn span:nth-child(2) {
      margin: 0 4px 5px 0; }
      .vs-menuOpen .vs-mobile .header .menuBtn span:nth-child(2) {
        margin: 0 0px 5px 0;
        transform: scale(0); }
    .vs-menuOpen .vs-mobile .header .menuBtn span:nth-child(3) {
      transform: translate(0, -8px) rotate(-45deg); }

/* MENU - MOBILE & TABLET */
.menuWrapper {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  transform: translate3d(0, -100%, 0);
  background-color: #abd037; }
  .vs-desktop .menuWrapper,
  .vs-largeDesktop .menuWrapper {
    display: none; }
  .vs-menuOpen .menuWrapper {
    transform: translate3d(0, 0, 0);
    transition: all 0.2s ease-out;
    z-index: 8; }
  .menuWrapper .menu {
    height: 100%;
    position: relative;
    overflow-x: hidden;
    overflow-y: auto; }
    .vs-mobile .menuWrapper .menu,
    .vs-tablet .menuWrapper .menu {
      padding: 60px 0 0; }
    .vs-deviceDesktop .menuWrapper .menu {
      overflow-y: hidden; }
    .menuWrapper .menu ul {
      position: relative;
      overflow: hidden; }
      .menuWrapper .menu ul li {
        display: block;
        margin: 0 auto;
        position: relative;
        overflow: hidden; }
        .vs-mobile .menuWrapper .menu ul li {
          max-width: 275px; }
        .vs-tablet .menuWrapper .menu ul li {
          max-width: 550px; }
        .menuWrapper .menu ul li:after {
          content: "";
          display: block;
          width: 40px;
          height: 1px;
          position: absolute;
          top: 0;
          left: 50%;
          transform: translate3d(-50%, 0, 0);
          background-color: #ffffff; }
        .menuWrapper .menu ul li:first-child:after {
          display: none; }
        .menuWrapper .menu ul li a {
          display: block;
          padding: 0 10px;
          color: #ffffff;
          font-size: 18px;
          line-height: 1.3em; }
        .menuWrapper .menu ul li a {
          display: block;
          padding: 24px 10px;
          text-align: center;
          color: #ffffff;
          font-size: 20px;
          line-height: 24px;
          transition: all 0.2s ease-out; }

.vs-menuOpen .menu {
  z-index: 2; }

/* FORM */
/* BUTTON & FORM ELEMENT */
a,
input,
button,
select,
textarea {
  color: #4D4D4D; }

input:disabled,
textarea:disabled,
select:disabled {
  opacity: 1; }

button[type="submit"] {
  padding: 12px 16px;
  font-size: 18px;
  line-height: 1.3em;
  border-style: solid;
  border-color: transparent;
  border-width: 0; }

input[type='file'] {
  border: none;
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background: transparent;
  color: inherit;
  font: inherit;
  outline: none;
  text-align: inherit;
  line-height: normal;
  border-radius: 0;
  cursor: pointer;
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  -webkit-appearance: none;
  opacity: 0;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

input[type='text'],
input[type='password'],
input[type='tel'],
input[type='email'],
input[type='number'],
input[type='search'],
input[type='url'] {
  padding: 12px 16px;
  font-size: 18px;
  line-height: 1.3em;
  border-style: solid;
  border-color: transparent;
  border-width: 0; }
  input[type='text'] + label,
  input[type='password'] + label,
  input[type='tel'] + label,
  input[type='email'] + label,
  input[type='number'] + label,
  input[type='search'] + label,
  input[type='url'] + label {
    display: inline-block;
    margin: 16px 0 0;
    position: absolute;
    left: 0;
    top: 0;
    transform-origin: left top;
    color: #4D4D4D;
    font-size: 18px;
    line-height: 1.3em;
    font-weight: bold;
    transition: all 0.2s ease-out;
    cursor: text; }
  input[type='text']:disabled,
  input[type='password']:disabled,
  input[type='tel']:disabled,
  input[type='email']:disabled,
  input[type='number']:disabled,
  input[type='search']:disabled,
  input[type='url']:disabled {
    color: #dddddd !important;
    background-color: transparent !important;
    border-color: #dddddd; }
    input[type='text']:disabled + label,
    input[type='password']:disabled + label,
    input[type='tel']:disabled + label,
    input[type='email']:disabled + label,
    input[type='number']:disabled + label,
    input[type='search']:disabled + label,
    input[type='url']:disabled + label {
      color: #dddddd !important; }
  input[type='text']:focus + label, input[type='text'].vs-active + label,
  input[type='password']:focus + label,
  input[type='password'].vs-active + label,
  input[type='tel']:focus + label,
  input[type='tel'].vs-active + label,
  input[type='email']:focus + label,
  input[type='email'].vs-active + label,
  input[type='number']:focus + label,
  input[type='number'].vs-active + label,
  input[type='search']:focus + label,
  input[type='search'].vs-active + label,
  input[type='url']:focus + label,
  input[type='url'].vs-active + label {
    transform: translate(0, -16px) scale(0.8); }
  input[type='text']::-webkit-input-placeholder,
  input[type='password']::-webkit-input-placeholder,
  input[type='tel']::-webkit-input-placeholder,
  input[type='email']::-webkit-input-placeholder,
  input[type='number']::-webkit-input-placeholder,
  input[type='search']::-webkit-input-placeholder,
  input[type='url']::-webkit-input-placeholder {
    color: #D6E0E6; }
  input[type='text']::-moz-placeholder,
  input[type='password']::-moz-placeholder,
  input[type='tel']::-moz-placeholder,
  input[type='email']::-moz-placeholder,
  input[type='number']::-moz-placeholder,
  input[type='search']::-moz-placeholder,
  input[type='url']::-moz-placeholder {
    color: #D6E0E6; }
  input[type='text']:-ms-input-placeholder,
  input[type='password']:-ms-input-placeholder,
  input[type='tel']:-ms-input-placeholder,
  input[type='email']:-ms-input-placeholder,
  input[type='number']:-ms-input-placeholder,
  input[type='search']:-ms-input-placeholder,
  input[type='url']:-ms-input-placeholder {
    color: #D6E0E6; }
  input[type='text'] :-moz-placeholder,
  input[type='password'] :-moz-placeholder,
  input[type='tel'] :-moz-placeholder,
  input[type='email'] :-moz-placeholder,
  input[type='number'] :-moz-placeholder,
  input[type='search'] :-moz-placeholder,
  input[type='url'] :-moz-placeholder {
    color: #D6E0E6; }

input[type='checkbox'],
input[type='radio'] {
  position: absolute;
  left: -9999px; }
  input[type='checkbox'] + label,
  input[type='radio'] + label {
    display: inline-block;
    padding: 6px 6px 6px 22px;
    position: relative;
    color: #4D4D4D;
    border-style: solid;
    border-color: transparent;
    border-width: 1px;
    border-radius: 4px;
    cursor: pointer; }
    input[type='checkbox'] + label:before,
    input[type='radio'] + label:before {
      content: '';
      display: block;
      width: 16px;
      height: 16px;
      position: absolute;
      left: 0;
      top: calc(50% - 1px);
      transform: translate(0, -50%);
      background-color: #ffffff;
      border-style: solid;
      border-color: #4D4D4D;
      border-width: 1px;
      border-radius: 4px;
      transition: all 0.2s ease-out; }
    input[type='checkbox'] + label:after,
    input[type='radio'] + label:after {
      content: '';
      display: block;
      opacity: 0;
      width: 7px;
      height: 14px;
      position: absolute;
      left: 5px;
      top: 4px;
      transform: rotate3d(0, 0, 1, 45deg);
      border-style: solid;
      border-color: transparent #000 #000 transparent;
      border-width: 2px;
      transition: all 0.2s ease-out; }
  input[type='checkbox']:checked + label:after,
  input[type='radio']:checked + label:after {
    opacity: 1; }

input[type='radio'] + label:before {
  border-radius: 100%; }

input[type='range'] {
  margin: 12px 0; }
  input[type='range']::-webkit-slider-thumb {
    width: 20px;
    height: 20px;
    transform: translate(0, 2px) translate(0, -50%);
    border-radius: 20px;
    background-color: #4D4D4D;
    cursor: pointer; }
  input[type='range']::-moz-range-thumb {
    width: 20px;
    height: 20px;
    border-radius: 20px;
    background-color: #4D4D4D;
    cursor: pointer; }
  input[type='range']::-ms-thumb {
    width: 16px;
    height: 16px;
    transform: translate(0, 8px) translate(0, -50%);
    border-radius: 20px;
    background-color: #4D4D4D;
    cursor: pointer; }
  input[type='range']::-webkit-slider-runnable-track {
    width: 100%;
    height: 4px;
    background-color: #dddddd;
    cursor: pointer; }
  input[type='range']::-moz-range-track {
    width: 100%;
    height: 4px;
    background-color: #dddddd;
    cursor: pointer; }
  input[type='range']::-ms-track {
    width: 100%;
    height: 4px;
    background-color: #dddddd;
    cursor: pointer; }

select {
  padding: 6px 20px 6px 8px;
  background-color: transparent;
  font-size: 18px;
  line-height: 1.3em;
  color: #4D4D4D;
  background-image: url("../images/common/select-arrow.svg");
  background-repeat: no-repeat;
  background-position: right 6px center;
  background-size: 10px;
  border-style: solid;
  border-color: #CFDBE2;
  border-width: 1px;
  border-radius: 4px;
  cursor: pointer; }
  select:disabled {
    color: #dddddd !important;
    background-color: transparent !important;
    border-color: #dddddd; }
  select option:disabled {
    color: #dddddd !important;
    background-color: transparent !important;
    border-color: #dddddd; }

textarea {
  margin: 16px 0 0;
  font-size: 18px;
  line-height: 1.3em;
  background-color: transparent;
  border-style: solid;
  border-color: #4D4D4D;
  border-width: 1px; }
  textarea + label {
    display: inline-block;
    margin: 16px 0 0;
    position: absolute;
    top: 1px;
    left: 1px;
    transform-origin: left top;
    color: #4D4D4D;
    font-size: 18px;
    line-height: 1.3em;
    font-weight: bold;
    transition: all 0.2s ease-out; }
  textarea:disabled {
    color: #dddddd !important;
    background-color: transparent !important;
    border-color: #dddddd; }
    textarea:disabled + label {
      color: #dddddd !important; }
  textarea:focus + label, textarea.vs-active + label {
    transform: translate(0, -16px) scale(0.8); }

/* DATE PICKER (JQUERY-UI) */
.ui-datepicker {
  display: none;
  width: calc(100% - 60px);
  max-width: 400px;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.3em;
  background-color: #ffffff;
  border-style: solid;
  border-color: #1991D0;
  border-width: 1px; }
  .ui-datepicker .ui-datepicker-header {
    position: relative;
    margin: 4px;
    text-align: center;
    background-color: #1991D0;
    font-weight: bold;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .ui-datepicker .ui-datepicker-header .ui-datepicker-title,
    .ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
    .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
      line-height: 30px; }
    .ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
    .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
      width: 1.6em;
      position: absolute;
      top: 0;
      color: #ffffff;
      cursor: pointer; }
      .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:before,
      .ui-datepicker .ui-datepicker-header .ui-datepicker-next:before {
        display: inline-block;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        transition: all 0.2s ease-out; }
      .ui-datepicker .ui-datepicker-header .ui-datepicker-prev span,
      .ui-datepicker .ui-datepicker-header .ui-datepicker-next span {
        visibility: hidden; }
      .ui-datepicker .ui-datepicker-header .ui-datepicker-prev.ui-state-disabled,
      .ui-datepicker .ui-datepicker-header .ui-datepicker-next.ui-state-disabled {
        display: none; }
    .ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
      left: 0; }
      .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:before {
        content: '<'; }
      .deviceDesktop .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:hover:before, .deviceDesktop .ui-datepicker .ui-datepicker-header .ui-datepicker-prev:active:before {
        transform: translate(-80%, -50%); }
    .ui-datepicker .ui-datepicker-header .ui-datepicker-next {
      right: 0; }
      .ui-datepicker .ui-datepicker-header .ui-datepicker-next:before {
        content: '>'; }
      .deviceDesktop .ui-datepicker .ui-datepicker-header .ui-datepicker-next:hover:before, .deviceDesktop .ui-datepicker .ui-datepicker-header .ui-datepicker-next:active:before {
        transform: translate(-20%, -50%); }
  .ui-datepicker .ui-datepicker-calendar {
    width: 100%;
    margin: 4px 0; }
    .ui-datepicker .ui-datepicker-calendar th,
    .ui-datepicker .ui-datepicker-calendar td {
      width: 14.2857%;
      text-align: center;
      border-style: solid;
      border-color: transparent;
      border-width: 4px; }
      .ui-datepicker .ui-datepicker-calendar th a,
      .ui-datepicker .ui-datepicker-calendar th span,
      .ui-datepicker .ui-datepicker-calendar td a,
      .ui-datepicker .ui-datepicker-calendar td span {
        display: block; }
    .ui-datepicker .ui-datepicker-calendar th {
      font-weight: bold; }
      .ui-datepicker .ui-datepicker-calendar th span {
        color: #1991D0; }
    .ui-datepicker .ui-datepicker-calendar td a {
      line-height: 32px;
      color: #1991D0;
      border-style: solid;
      border-color: #1991D0;
      border-width: 1px;
      transition: all 0.2s ease-out; }
      .deviceDesktop .ui-datepicker .ui-datepicker-calendar td a:hover, .deviceDesktop .ui-datepicker .ui-datepicker-calendar td a:active {
        color: #ffffff;
        background-color: #1991D0; }
    .ui-datepicker .ui-datepicker-calendar td:nth-child(1) a {
      background-color: #f3f9fc; }
    .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today {
      font-weight: bold; }
    .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day {
      font-weight: bold; }
      .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a {
        color: #ffffff;
        background-color: #1991D0; }
    .ui-datepicker .ui-datepicker-calendar td.ui-state-disabled a,
    .ui-datepicker .ui-datepicker-calendar td.ui-state-disabled span {
      line-height: 32px;
      color: #CFDBE2;
      border-style: solid;
      border-color: #CFDBE2;
      border-width: 1px; }
  .ui-datepicker .ui-datepicker-buttonpane {
    margin: 4px;
    text-align: center; }
    .ui-datepicker .ui-datepicker-buttonpane button {
      height: 1.6em;
      padding: 0 4px;
      color: #ffffff;
      background-color: #4D4D4D;
      font-weight: bold;
      border-style: solid;
      border-color: transparent;
      border-width: 1px;
      cursor: pointer;
      transition: all 0.2s ease-out; }
      .deviceDesktop .ui-datepicker .ui-datepicker-buttonpane button:hover, .deviceDesktop .ui-datepicker .ui-datepicker-buttonpane button:active {
        color: #4D4D4D;
        background-color: #ffffff;
        border-color: #4D4D4D; }

/* POPUP */
/* MAGNIFIC POPUP */
.mfp-bg {
  height: 100% !important; }

.mfp-wrap {
  height: 100vh !important; }
  .vs-popupOpen .mfp-wrap {
    top: 0 !important; }

.mfp-container {
  padding: 0 20px;
  overflow-y: auto; }

.mfp-content {
  max-width: 500px; }

.mfp-close-btn-in .mfp-close {
  width: 40px;
  height: 40px;
  right: 12px;
  top: 12px;
  background-image: url("../images/common/popup-close.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 40px;
  font-size: 0; }

.popupWrapper {
  margin: 0 0 80px;
  padding: 40px 20px 20px;
  background-color: #ffffff;
  text-align: center;
  color: #4D4D4D;
  border-radius: 4px; }
  .popupWrapper .popup .popupInnerWrapper {
    padding: 20px 0; }
    .popupWrapper .popup .popupInnerWrapper .popupContent {
      width: 80%;
      max-width: 500px;
      transform: translate(-23px, 0); }
      .vs-tablet .popupWrapper .popup .popupInnerWrapper .popupContent,
      .vs-desktop .popupWrapper .popup .popupInnerWrapper .popupContent,
      .vs-largeDesktop .popupWrapper .popup .popupInnerWrapper .popupContent {
        transform: none; }
  .popupWrapper .btnClose {
    min-width: 36px;
    background-color: #ff0;
    border-color: #D50000; }
    .vs-deviceDesktop .popupWrapper .btnClose:hover, .vs-deviceDesktop .popupWrapper .btnClose:active {
      background-color: rgba(255, 255, 255, 0.8); }
    .vs-deviceDesktop .popupWrapper .btnClose:hover:before, .vs-deviceDesktop .popupWrapper .btnClose:active:before {
      background-color: rgba(255, 255, 255, 0.8); }
  .popupWrapper.popup-productEdit .popupTitle {
    display: block;
    padding-bottom: 24px;
    text-align: center;
    color: #4D4D4D;
    font-size: 24px;
    line-height: 1.3em;
    font-weight: 700; }
  .popupWrapper.popup-productEdit .productItem {
    margin-bottom: 0;
    text-align: left; }
  .popupWrapper.popup-productEdit .orderInputWrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center;
    padding-top: 24px; }
    .popupWrapper.popup-productEdit .orderInputWrapper input {
      display: block;
      width: 100%;
      min-width: 100%;
      max-width: 100%;
      padding-top: 20px;
      padding-bottom: 20px;
      text-align: center;
      color: #4D4D4D;
      font-size: 16px;
      line-height: 1.3em;
      border-style: solid;
      border-width: 1px;
      border-color: #ABABAB;
      border-radius: 4px; }
      .popupWrapper.popup-productEdit .orderInputWrapper input::-webkit-input-placeholder {
        color: #ABABAB; }
      .popupWrapper.popup-productEdit .orderInputWrapper input::-moz-placeholder {
        color: #ABABAB; }
      .popupWrapper.popup-productEdit .orderInputWrapper input:-ms-input-placeholder {
        color: #ABABAB; }
      .popupWrapper.popup-productEdit .orderInputWrapper input :-moz-placeholder {
        color: #ABABAB; }
    .popupWrapper.popup-productEdit .orderInputWrapper.errorWrapper:after {
      width: 100%;
      min-width: 100%;
      max-width: 100%;
      text-align: left; }
  .popupWrapper.popup-productEdit .editConfirmWrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    padding-top: 24px; }
    .popupWrapper.popup-productEdit .editConfirmWrapper .editConfirmBtn {
      display: block;
      width: 100%;
      padding: 16px;
      color: #ffffff;
      font-size: 20px;
      line-height: 1.3em;
      background-color: #32AF5A;
      border-style: solid;
      border-width: 1px;
      border-color: #32AF5A;
      border-radius: 4px; }
  .popupWrapper.popup-orderConfirm .popupTitle {
    display: block;
    padding-bottom: 24px;
    text-align: center;
    color: #4D4D4D;
    font-size: 24px;
    line-height: 1.3em;
    font-weight: 700; }
  .popupWrapper.popup-orderConfirm .productItem {
    margin-bottom: 0;
    padding: 12px 0;
    position: relative;
    text-align: left; }
    .popupWrapper.popup-orderConfirm .productItem:before {
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      position: absolute;
      left: 0;
      top: 0;
      background-color: #EEEEEE; }
    .popupWrapper.popup-orderConfirm .productItem:first-child {
      padding-top: 0; }
      .popupWrapper.popup-orderConfirm .productItem:first-child:before {
        display: none; }
  .popupWrapper.popup-orderConfirm .orderConfirmBtnWrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding-top: 24px;
    position: relative; }
    .popupWrapper.popup-orderConfirm .orderConfirmBtnWrapper .backBtn {
      display: block;
      min-width: calc((100% - 20px) / 2);
      max-width: calc((100% - 20px) / 2);
      padding: 16px;
      color: #2B8247;
      font-size: 20px;
      line-height: 1.3em;
      background-color: #ffffff;
      border-style: solid;
      border-width: 1px;
      border-color: #2B8247;
      border-radius: 4px; }
    .popupWrapper.popup-orderConfirm .orderConfirmBtnWrapper .confirmBtn {
      display: block;
      min-width: calc((100% - 20px) / 2);
      max-width: calc((100% - 20px) / 2);
      padding: 16px;
      color: #ffffff;
      font-size: 20px;
      line-height: 1.3em;
      background-color: #32AF5A;
      border-style: solid;
      border-width: 1px;
      border-color: #32AF5A;
      border-radius: 4px; }
  .popupWrapper.popup-errorMsg .popupTitle {
    display: block;
    padding-bottom: 24px;
    text-align: center;
    color: #4D4D4D;
    font-size: 24px;
    line-height: 1.3em;
    font-weight: 700; }
  .popupWrapper.popup-errorMsg .productItem {
    margin-bottom: 0;
    padding: 12px 0;
    position: relative;
    text-align: left; }
    .popupWrapper.popup-errorMsg .productItem:before {
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      position: absolute;
      left: 0;
      top: 0;
      background-color: #EEEEEE; }
    .popupWrapper.popup-errorMsg .productItem:first-child {
      padding-top: 0; }
      .popupWrapper.popup-errorMsg .productItem:first-child:before {
        display: none; }
  .popupWrapper.popup-errorMsg .errorMsgBtnWrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    padding-top: 24px; }
    .popupWrapper.popup-errorMsg .errorMsgBtnWrapper .backBtn {
      display: block;
      width: 100%;
      padding: 16px;
      color: #2B8247;
      font-size: 20px;
      line-height: 1.3em;
      background-color: #ffffff;
      border-style: solid;
      border-width: 1px;
      border-color: #2B8247;
      border-radius: 4px; }

.popup-connectionError {
  font-size: 18px; }
  .popup-connectionError a {
    display: inline-block;
    padding: 7px 10px;
    color: #1991D0;
    background-color: #ffffff;
    border-style: solid;
    border-color: #1991D0;
    border-width: 1px;
    border-radius: 4px; }

/* SLIDER */
.slickSlider .slick-prev,
.slickSlider .slick-next,
.slickSlider .slick-dots {
  z-index: 2; }

/* PAGE COMMON */
.actionPanel {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100%;
  max-width: 1024px;
  height: 84px;
  position: fixed;
  bottom: 0;
  background-color: #ffffff;
  box-shadow: 0px -2px 4px rgba(25, 145, 208, 0.1); }
  .actionPanel.disabled a {
    background-color: #EEEEEE !important;
    opacity: 1 !important; }
  .actionPanel a {
    display: block;
    width: calc(100% - 40px);
    max-width: 375px;
    height: 60px;
    margin-top: 12px;
    background-color: #32AF5A;
    text-align: center;
    color: #ffffff;
    font-size: 20px;
    line-height: 60px;
    border-radius: 4px;
    transition: all 0.2s ease-out; }
    .actionPanel a:hover {
      opacity: 0.7; }

.errorWrapper.errorActive:after {
  content: attr(data-error);
  display: block;
  margin-top: 4px;
  position: relative;
  color: #D50000;
  font-size: 12px;
  line-height: 1.3em; }

.errorWrapper.errorActive input[type='text'],
.errorWrapper.errorActive input[type='tel'],
.errorWrapper.errorActive input[type='email'] {
  border-color: #D50000 !important; }

.productItem {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-bottom: 16px; }
  .productItem:last-child {
    margin-bottom: 0; }
  .productItem .productItem_thumbnailWrapper {
    display: block;
    position: relative; }
    .vs-mobile .productItem .productItem_thumbnailWrapper {
      min-width: 82px;
      max-width: 82px; }
    .vs-tablet .productItem .productItem_thumbnailWrapper,
    .vs-desktop .productItem .productItem_thumbnailWrapper,
    .vs-largeDesktop .productItem .productItem_thumbnailWrapper {
      min-width: 164px;
      max-width: 164px; }
    .productItem .productItem_thumbnailWrapper .productItem_thumbnail {
      display: block;
      width: 100%;
      overflow: hidden;
      padding-top: 100%;
      position: relative;
      background-color: #f1f3f4;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      border-radius: 4px;
      /*
			img
			{
				display: block;
				width: 100%;
				border-radius: 4px;
			}
			*/ }
  .productItem .productItem_infoWrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    position: relative; }
    .vs-mobile .productItem .productItem_infoWrapper {
      min-width: calc(100% - 82px - 16px);
      max-width: calc(100% - 82px - 16px); }
    .vs-tablet .productItem .productItem_infoWrapper,
    .vs-desktop .productItem .productItem_infoWrapper,
    .vs-largeDesktop .productItem .productItem_infoWrapper {
      min-width: calc(100% - 164px - 16px);
      max-width: calc(100% - 164px - 16px); }
    .productItem .productItem_infoWrapper .productItem_name {
      display: block;
      color: #4D4D4D;
      font-size: 22px;
      line-height: 1.3em; }
    .productItem .productItem_infoWrapper .productItem_desc {
      display: block;
      margin-top: 4px;
      color: #ABABAB;
      font-size: 18px;
      line-height: 1.3em; }
    .productItem .productItem_infoWrapper .productItem_stock {
      display: block;
      margin-top: 4px;
      position: relative;
      color: #4D4D4D;
      font-size: 16px;
      line-height: 1.3em; }
      .productItem .productItem_infoWrapper .productItem_stock .editBtn {
        display: inline-block;
        width: 24px;
        height: 24px;
        margin-left: 4px;
        vertical-align: top;
        vertical-align: text-top;
        background-image: url("../images/common/productItem-edit.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100%;
        border-style: solid;
        border-width: 0 0 1px;
        border-color: #ccc; }

.saveNotice {
  width: 100%;
  height: 40px;
  position: absolute;
  top: 120px;
  transform: translate3d(0, -100%, 0) translate3d(0, -10px, 0);
  background-color: rgba(43, 130, 71, 0.9);
  color: #ffffff;
  transition: all 0.2s ease-out; }
  .saveNotice.active {
    transform: none; }
  .saveNotice .innerWrapper {
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 20px;
    line-height: 40px; }

/* PAGE LOGIN */
.page-login .mainWrapper {
  min-height: 100vh !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background-color: #ffffff !important; }
  .page-login .mainWrapper .formWrapper {
    width: 100%;
    max-width: 828px;
    margin: 0 auto;
    position: relative;
    background-image: url("../images/login/login-bg.jpg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100%;
    border-radius: 0px 0px 50px 50px; }
  .page-login .mainWrapper form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    overflow: hidden;
    width: 100%;
    max-width: 500px;
    min-height: calc(100vh - 50px);
    margin: 0 auto 50px;
    padding: 0 20px; }
    .page-login .mainWrapper form .brandInfo {
      padding-bottom: 24px;
      text-align: center;
      color: #ffffff; }
      .page-login .mainWrapper form .brandInfo .brand {
        font-size: 40px;
        line-height: 1.3em;
        font-weight: 700; }
      .page-login .mainWrapper form .brandInfo .platform {
        font-size: 20px;
        line-height: 1.3em; }
    .page-login .mainWrapper form .logo {
      width: 131px;
      height: 131px;
      margin: 40px auto 0;
      background-image: url("../images/login/login-logo.svg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
    .page-login .mainWrapper form input[type="text"],
    .page-login .mainWrapper form input[type="password"],
    .page-login .mainWrapper form select {
      width: 100%;
      margin: 10px 0;
      padding: 10px 36px 10px 16px;
      border-width: 1px;
      border-radius: 4px; }
      .page-login .mainWrapper form input[type="text"].error,
      .page-login .mainWrapper form input[type="password"].error,
      .page-login .mainWrapper form select.error {
        color: #D50000;
        border-color: #D50000;
        background-image: url("../images/common/error.svg");
        background-repeat: no-repeat;
        background-position: right 8px center;
        background-size: 24px; }
    .page-login .mainWrapper form select {
      background-color: #ffffff; }
    .page-login .mainWrapper form input[type="checkbox"] + label {
      color: #ffffff; }
      .page-login .mainWrapper form input[type="checkbox"] + label:before {
        border-color: #CFDBE2; }
    .page-login .mainWrapper form button[type="submit"] {
      width: 100%;
      margin: 10px 0;
      background-color: #FFDA2A;
      color: #4D4D4D;
      border-radius: 4px; }
    .page-login .mainWrapper form .login-row {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      margin: 10px 0; }
      .page-login .mainWrapper form .login-row label {
        font-size: 18px; }
    .page-login .mainWrapper form .forget-pw {
      visibility: hidden;
      margin: 10px 0;
      font-size: 18px;
      line-height: 1.3em;
      color: #ffffff; }
      .page-login .mainWrapper form .forget-pw.active {
        visibility: visible; }
    .page-login .mainWrapper form .errorMsg {
      visibility: hidden;
      height: 40px;
      margin: 10px 0 50px;
      font-size: 18px;
      line-height: 1.3em;
      text-align: left;
      color: #ffffff; }
      .page-login .mainWrapper form .errorMsg.error {
        visibility: visible; }
    .page-login .mainWrapper form a {
      font-size: 18px;
      line-height: 30px;
      color: #ffffff;
      text-decoration: underline; }
      .page-login .mainWrapper form a:hover {
        text-decoration: none; }
  .page-login .mainWrapper .copyright {
    width: 100%;
    padding: 10px 0;
    position: absolute;
    bottom: -50px; }
    .page-login .mainWrapper .copyright span {
      display: block;
      width: calc(100% - 40px);
      margin: 0 auto;
      color: #ABABAB;
      text-align: center;
      font-size: 12px;
      line-height: 1.3em; }

/* PAGE LISTING */
.vs-mobile .page-listing.subCategory .mainWrapper,
.vs-tablet .page-listing.subCategory .mainWrapper {
  min-height: calc(100vh - 180px);
  margin-top: 180px; }

.vs-desktop .page-listing.subCategory .mainWrapper,
.vs-largeDesktop .page-listing.subCategory .mainWrapper {
  min-height: calc(100vh - 180px);
  margin-top: 180px; }

.page-listing.subCategory .saveNotice {
  top: 180px; }

.vs-mobile .page-listing .mainWrapper,
.vs-tablet .page-listing .mainWrapper {
  min-height: calc(100vh - 120px);
  margin-top: 120px;
  margin-bottom: 60px; }

.vs-desktop .page-listing .mainWrapper,
.vs-largeDesktop .page-listing .mainWrapper {
  min-height: calc(100vh - 120px);
  margin-top: 120px;
  margin-bottom: 60px; }

.page-listing .listingWrapper {
  max-width: 1024px;
  margin: 0 auto; }
  .page-listing .listingWrapper .noResult {
    width: calc(100% - 40px);
    margin: 12px auto;
    padding: 12px;
    text-align: center;
    font-size: 18px;
    line-height: 40px; }
  .page-listing .listingWrapper .listingItemCategory {
    width: calc(100% - 40px);
    margin: 0 auto;
    margin-top: 24px;
    position: relative; }
    .page-listing .listingWrapper .listingItemCategory .listingItemCategory_title {
      margin-bottom: 16px;
      color: #4D4D4D;
      font-size: 20px;
      line-height: 1.3em; }

.page-listing .saveNotice {
  top: 120px; }

/* PAGE DETAILS */
.vs-mobile .page-details .mainWrapper,
.vs-tablet .page-details .mainWrapper {
  min-height: calc(100vh - 120px);
  margin-top: 120px;
  margin-bottom: 84px; }

.vs-desktop .page-details .mainWrapper,
.vs-largeDesktop .page-details .mainWrapper {
  min-height: calc(100vh - 120px);
  margin-top: 120px;
  margin-bottom: 84px; }

.page-details .detailsWrapper {
  max-width: 1024px;
  margin: 0 auto; }
  .page-details .detailsWrapper .productImageWrapper {
    width: 100%;
    max-width: 828px;
    margin: 0 auto; }
    .page-details .detailsWrapper .productImageWrapper .productImage {
      width: 100%;
      padding-top: 67.63285%;
      position: relative;
      background-color: #f1f3f4;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      /*
				img
				{
				display: block;
				width: 100%;
			}
			*/ }
  .page-details .detailsWrapper .productInfo {
    margin: 20px 0;
    padding: 0 20px; }
    .page-details .detailsWrapper .productInfo .productInfo_name {
      color: #4D4D4D;
      font-size: 24px;
      line-height: 1.3em; }
    .page-details .detailsWrapper .productInfo .productInfo_desc {
      margin-top: 8px;
      color: #ABABAB;
      font-size: 16px;
      line-height: 1.3em; }
    .page-details .detailsWrapper .productInfo .productInfo_remarks {
      margin-top: 8px;
      color: #4D4D4D;
      font-size: 18px;
      line-height: 1.3em; }
  .page-details .detailsWrapper .productQuantity {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between;
    margin: 30px 0 20px;
    padding: 0 20px; }
    .page-details .detailsWrapper .productQuantity .productQuantity_stock,
    .page-details .detailsWrapper .productQuantity .productQuantity_site,
    .page-details .detailsWrapper .productQuantity .productQuantity_order {
      display: block; }
      .page-details .detailsWrapper .productQuantity .productQuantity_stock .productQuantity_label,
      .page-details .detailsWrapper .productQuantity .productQuantity_site .productQuantity_label,
      .page-details .detailsWrapper .productQuantity .productQuantity_order .productQuantity_label {
        color: #4D4D4D;
        font-size: 18px;
        line-height: 1.3em; }
      .page-details .detailsWrapper .productQuantity .productQuantity_stock .productQuantity_value,
      .page-details .detailsWrapper .productQuantity .productQuantity_site .productQuantity_value,
      .page-details .detailsWrapper .productQuantity .productQuantity_order .productQuantity_value {
        margin-top: 8px;
        color: #4D4D4D;
        font-size: 18px;
        line-height: 1.3em; }
    .page-details .detailsWrapper .productQuantity .productQuantity_stock {
      min-width: calc((100% - 20px) / 2);
      max-width: calc((100% - 20px) / 2); }
    .page-details .detailsWrapper .productQuantity .productQuantity_site {
      min-width: calc((100% - 20px) / 2);
      max-width: calc((100% - 20px) / 2); }
    .page-details .detailsWrapper .productQuantity .productQuantity_order {
      min-width: 100%;
      max-width: 100%;
      margin-top: 20px; }
      .page-details .detailsWrapper .productQuantity .productQuantity_order input {
        width: 120px;
        text-align: center;
        color: #4D4D4D;
        font-size: 18px;
        line-height: 1.3em;
        border-style: solid;
        border-width: 1px;
        border-color: #ABABAB;
        border-radius: 4px; }
        .page-details .detailsWrapper .productQuantity .productQuantity_order input::-webkit-input-placeholder {
          color: #ABABAB; }
        .page-details .detailsWrapper .productQuantity .productQuantity_order input::-moz-placeholder {
          color: #ABABAB; }
        .page-details .detailsWrapper .productQuantity .productQuantity_order input:-ms-input-placeholder {
          color: #ABABAB; }
        .page-details .detailsWrapper .productQuantity .productQuantity_order input :-moz-placeholder {
          color: #ABABAB; }
  .page-details .detailsWrapper .productSpec {
    margin: 40px 0 20px;
    padding: 0 20px;
    position: relative; }
    .page-details .detailsWrapper .productSpec:before {
      content: "";
      display: block;
      width: calc(100% - 40px);
      height: 1px;
      position: absolute;
      left: 20px;
      top: -20px;
      background-color: #EEEEEE; }
    .page-details .detailsWrapper .productSpec .productSpec_title,
    .page-details .detailsWrapper .productSpec .productSpec_text {
      color: #4D4D4D;
      font-size: 18px;
      line-height: 1.3em; }
    .page-details .detailsWrapper .productSpec .productSpec_title {
      font-weight: 700; }
    .page-details .detailsWrapper .productSpec .productSpec_text {
      margin-top: 16px; }
  .page-details .detailsWrapper .noResult {
    width: calc(100% - 40px);
    margin: 12px auto;
    padding: 12px;
    text-align: center;
    font-size: 18px;
    line-height: 40px; }
  .page-details .detailsWrapper .listingItemCategory {
    width: calc(100% - 40px);
    margin: 0 auto;
    margin-top: 24px;
    position: relative; }
    .page-details .detailsWrapper .listingItemCategory .listingItemCategory_title {
      margin-bottom: 16px;
      color: #4D4D4D;
      font-size: 20px;
      line-height: 1.3em; }
    .page-details .detailsWrapper .listingItemCategory .listItem {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      margin-bottom: 16px; }
      .page-details .detailsWrapper .listingItemCategory .listItem:last-child {
        margin-bottom: 0; }
      .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper {
        display: block;
        position: relative; }
        .vs-mobile .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper {
          min-width: 82px;
          max-width: 82px; }
        .vs-tablet .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper,
        .vs-desktop .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper,
        .vs-largeDesktop .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper {
          min-width: 164px;
          max-width: 164px; }
        .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper .listItem_thumbnail {
          display: block;
          width: 100%;
          position: relative; }
          .page-details .detailsWrapper .listingItemCategory .listItem .listItem_thumbnailWrapper .listItem_thumbnail img {
            display: block;
            width: 100%;
            border-radius: 4px; }
      .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: center;
            justify-content: center;
        position: relative; }
        .vs-mobile .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper {
          min-width: calc(100% - 82px - 16px);
          max-width: calc(100% - 82px - 16px); }
        .vs-tablet .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper,
        .vs-desktop .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper,
        .vs-largeDesktop .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper {
          min-width: calc(100% - 164px - 16px);
          max-width: calc(100% - 164px - 16px); }
        .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper .listItem_name {
          display: block;
          color: #4D4D4D;
          font-size: 20px;
          line-height: 1.3em; }
        .page-details .detailsWrapper .listingItemCategory .listItem .listItem_infoWrapper .listItem_desc {
          display: block;
          margin-top: 4px;
          color: #ABABAB;
          font-size: 14px;
          line-height: 1.3em; }

.page-details .saveNotice {
  top: 120px; }

/* PAGE CART */
.vs-mobile .page-cart .mainWrapper,
.vs-tablet .page-cart .mainWrapper {
  min-height: calc(100vh - 120px);
  margin-top: 120px;
  margin-bottom: 84px; }

.vs-desktop .page-cart .mainWrapper,
.vs-largeDesktop .page-cart .mainWrapper {
  min-height: calc(100vh - 120px);
  margin-top: 120px;
  margin-bottom: 84px; }

.page-cart .cartWrapper {
  max-width: 1024px;
  margin: 0 auto; }
  .page-cart .cartWrapper .selectAllWrapper {
    padding: 12px 20px;
    background-color: #F4F4F4; }
    .page-cart .cartWrapper .selectAllWrapper + .cartItem:before {
      display: none; }
  .page-cart .cartWrapper .cartItem {
    padding: 12px 20px;
    position: relative; }
    .page-cart .cartWrapper .cartItem:before {
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      position: absolute;
      left: 0;
      top: 0;
      background-color: #EEEEEE; }
    .page-cart .cartWrapper .cartItem.outOfStock .productItem_stock {
      color: #D50000 !important; }
    .page-cart .cartWrapper .cartItem input[type='checkbox'] + label {
      padding-right: 32px;
      position: relative; }
      .page-cart .cartWrapper .cartItem input[type='checkbox'] + label .productItem {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between;
        margin-bottom: 0; }
      .page-cart .cartWrapper .cartItem input[type='checkbox'] + label .closeBtn {
        display: block;
        width: 24px;
        height: 24px;
        position: absolute;
        right: 0;
        top: -4px;
        background-image: url("../images/common/cartItem-close.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100%; }
  .page-cart .cartWrapper input[type='checkbox'] {
    display: none; }
    .page-cart .cartWrapper input[type='checkbox'] + label {
      display: block;
      padding: 0;
      padding-left: 40px;
      color: #4D4D4D;
      font-size: 16px;
      line-height: 1.3em;
      position: relative; }
      .page-cart .cartWrapper input[type='checkbox'] + label:before {
        content: "";
        display: block;
        width: 22px;
        height: 22px;
        position: absolute;
        left: 0;
        top: 10px;
        border-style: solid;
        border-color: #CCCCCC;
        border-radius: 4px;
        transition: all 0.2s ease-out; }
      .page-cart .cartWrapper input[type='checkbox'] + label:after {
        content: "";
        display: block;
        opacity: 0;
        width: 8px;
        height: 16px;
        position: absolute;
        left: 7px;
        top: 0;
        border-color: transparent #ffffff #ffffff transparent;
        transition: all 0.2s ease-out; }
    .page-cart .cartWrapper input[type='checkbox']:checked + label:before {
      background-color: #32AF5A;
      border-color: #32AF5A; }
    .page-cart .cartWrapper input[type='checkbox']:checked + label:after {
      opacity: 1; }

/* PAGE HISTORY */
.page-history .mainWrapper {
  background-color: #EEEEEE; }
  .vs-mobile .page-history .mainWrapper,
  .vs-tablet .page-history .mainWrapper {
    min-height: calc(100vh - 120px);
    margin-top: 120px;
    padding-bottom: 10px; }
  .vs-desktop .page-history .mainWrapper,
  .vs-largeDesktop .page-history .mainWrapper {
    min-height: calc(100vh - 120px);
    margin-top: 120px;
    padding-bottom: 10px; }

.page-history .historyWrapper {
  max-width: 1024px;
  margin: 0 auto; }
  .page-history .historyWrapper .historyItem {
    padding-top: 12px;
    position: relative; }
    .page-history .historyWrapper .historyItem:first-child {
      padding-top: 0; }
      .page-history .historyWrapper .historyItem:first-child:before {
        display: none; }
    .page-history .historyWrapper .historyItem .historyItem_heading {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      padding: 12px 20px;
      background-color: #EDFAF2; }
      .page-history .historyWrapper .historyItem .historyItem_heading .historyItem_orderNum {
        color: #4D4D4D;
        font-size: 16px;
        line-height: 1.3em; }
      .page-history .historyWrapper .historyItem .historyItem_heading .historyItem_orderTime {
        color: #ABABAB;
        font-size: 16px;
        line-height: 1.3em; }
    .page-history .historyWrapper .historyItem .historyItem_list {
      padding: 0 20px;
      background-color: #ffffff; }
      .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem {
        padding: 12px 0;
        position: relative; }
        .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem:before {
          content: "";
          display: block;
          width: 100%;
          height: 1px;
          position: absolute;
          left: 0;
          top: 0;
          background-color: #EEEEEE; }
        .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem:first-child:before {
          display: none; }
        .vs-mobile .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_indexWrapper {
          min-width: 40px;
          max-width: 40px; }
        .vs-tablet .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_indexWrapper,
        .vs-desktop .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_indexWrapper,
        .vs-largeDesktop .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_indexWrapper {
          min-width: 40px;
          max-width: 40px; }
        .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_indexWrapper .productItem_index {
          color: #2B8247;
          font-size: 20px;
          line-height: 1.3em; }
        .vs-mobile .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_infoWrapper {
          min-width: calc(100% - 40px - 16px);
          max-width: calc(100% - 40px - 16px); }
        .vs-tablet .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_infoWrapper,
        .vs-desktop .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_infoWrapper,
        .vs-largeDesktop .page-history .historyWrapper .historyItem .historyItem_list .historyItem_listItem .productItem .productItem_infoWrapper {
          min-width: calc(100% - 40px - 16px);
          max-width: calc(100% - 40px - 16px); }
