body {
  --header-menu-height: 16vw;
  margin: 0;
  font-family: "Poppins", "Noto Sans TC", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.6;
  font-size: 4vw;
  box-sizing: border-box;
  padding-top: var(--header-menu-height);
  display: flex;
  min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
  flex-direction: column;
  justify-content: space-between;
  color: #666;
}
@media screen and (min-width: 768px) {
  body {
    --header-menu-height: 6.6145833333vw;
    padding-top: 0;
    font-size: 0.9375vw;
  }
}
body * {
  box-sizing: border-box;
}
body a {
  color: #666;
}

main {
  position: relative;
  overflow: hidden;
  flex: 1;
}

a {
  text-decoration: none;
}

figure {
  margin: 0;
}

h1, .h1 {
  position: relative;
  margin: 0;
  background-position: 0 calc(50% - 0.35em);
  padding-left: 0;
  color: #85683C;
  font-weight: 600;
  font-size: 9.3333333333vw;
  letter-spacing: 0.02em;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  h1, .h1 {
    font-size: 2.34375vw;
  }
}
h1 div, .h1 div {
  font-style: normal;
}
h1 .en, .h1 .en {
  display: block;
  color: #FE6900;
  font-size: 0.5em;
  letter-spacing: -0.015em;
  text-transform: uppercase;
}
.post-type-archive-portfolio .cat-link {
  color: #747474;
  font-weight: 600;
  font-size: 4.5333333333vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio .cat-link {
    font-size: 1.25vw;
  }
}

@keyframes hrline {
  to {
    transform: translateX(145%);
  }
}
.fade-up, .fade-up-top {
  opacity: 0;
  transform: translate(0, 2vw);
}

.swiper, .swiper * {
  z-index: initial;
}

#head-menu {
  padding: 0 4vw 0 8vw;
}
@media screen and (min-width: 768px) {
  #head-menu {
    position: fixed;
    top: var(--wp-admin--admin-bar--height, 0px);
    left: 0;
    width: 100%;
    height: var(--header-menu-height);
    padding: 0 3.8020833333vw;
    justify-content: space-between;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 9;
  }
}
#head-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#head-menu #head-menu-logo {
  display: block;
  width: 12vw;
  height: 12vw;
  overflow: hidden;
  position: fixed;
  top: calc(var(--wp-admin--admin-bar--height, 0px) + 2.6666666667vw);
  left: 8vw;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  #head-menu #head-menu-logo {
    position: relative;
    top: 0;
    left: 0;
    width: 4.6875vw;
    height: 4.6875vw;
  }
}
#head-menu #head-menu-logo:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#head-menu #head-menu-logo video {
  width: auto;
  height: 100%;
  transform: translateX(-23vw);
}
@media screen and (min-width: 768px) {
  #head-menu #head-menu-logo video {
    transform: translateX(-9vw);
  }
}
#head-menu #head-menu-logo img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
#head-menu .nav-mob-toogle {
  width: 8vw;
  height: 8vw;
  background: linear-gradient(294deg, #FE6900, #FFD37F);
  position: relative;
  border-radius: 50%;
  cursor: pointer;
  position: fixed;
  top: calc(var(--wp-admin--admin-bar--height, 0px) + 4vw);
  right: 4vw;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  #head-menu .nav-mob-toogle {
    display: none;
  }
}
#head-menu .nav-mob-toogle:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/mob-toogle.svg);
  background-size: auto 100%;
  background-position: 0 center;
}
#head-menu .nav-mob-toogle.open:after {
  background-position: 100% center;
}
#head-menu #head-menu-nav {
  display: none;
}
@media screen and (min-width: 768px) {
  #head-menu #head-menu-nav {
    display: flex;
    align-items: center;
  }
}
#head-menu #head-menu-nav > .menu-item {
  margin-right: 1.0416666667vw;
  position: relative;
}
#head-menu #head-menu-nav > .menu-item:hover > a {
  color: #fff;
}
#head-menu #head-menu-nav > .menu-item:hover > a:before {
  transform: scaleX(1);
}
#head-menu #head-menu-nav > .menu-item:hover.icon > a:after {
  background-image: url('data:image/svg+xml,<svg width="9" height="10" viewBox="0 0 9 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.30313 2.25784C7.80381 1.86801 8.53413 2.01346 8.84515 2.56975L8.86943 2.61316C9.17157 3.15356 8.92358 3.83911 8.34797 4.05469C7.48056 4.37955 7.48118 5.62069 8.3486 5.94555C8.92397 6.16104 9.17248 6.84613 8.87108 7.38667L8.82759 7.46466C8.51308 8.02872 7.77556 8.17667 7.27201 7.77672C6.52991 7.1873 5.45866 7.83011 5.59461 8.7745C5.68713 9.41721 5.19201 10 4.54987 10C3.91011 10 3.4136 9.42691 3.49716 8.78537C3.62129 7.8323 2.53424 7.20477 1.79306 7.80654C1.28674 8.21763 0.536891 8.07254 0.216338 7.50145L0.127529 7.34324C-0.17087 6.81162 0.0778283 6.13393 0.644118 5.92028C1.49494 5.59929 1.50079 4.37418 0.645943 4.06432C0.0776557 3.85833 -0.170504 3.18452 0.126046 2.65269L0.175857 2.56335C0.492179 1.99606 1.23149 1.84286 1.74289 2.23863L1.77695 2.26499C2.54539 2.85968 3.63848 2.19974 3.50647 1.23025C3.4184 0.583476 3.91472 0 4.56021 0C5.21109 0 5.70854 0.593708 5.61105 1.2446C5.46881 2.1943 6.55061 2.84375 7.30313 2.25784Z" fill="%23FFFFFF"/></svg>');
}
#head-menu #head-menu-nav > .menu-item:hover .sub-menu {
  display: block;
}
#head-menu #head-menu-nav > .menu-item > a {
  position: relative;
  color: #993300;
  font-optical-sizing: auto;
  font-size: 0.9375vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  overflow: hidden;
  transition: color 0.4s;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(0.1041666667vw);
  padding: 0.9em 2.1em;
}
@media screen and (min-width: 1440px) {
  #head-menu #head-menu-nav > .menu-item > a {
    font-size: 1.0416666667vw;
  }
}
#head-menu #head-menu-nav > .menu-item > a:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #FE6900;
  border-radius: 0.3125vw;
  z-index: -1;
  transition: all 0.4s;
  transform: scaleX(0);
  transform-origin: left;
}
#head-menu #head-menu-nav > .menu-item > a:last-child {
  margin-right: 0;
}
#head-menu #head-menu-nav > .menu-item.icon > a {
  padding: 0.8854166667vw 2.8125vw 0.8854166667vw 1.7708333333vw;
}
#head-menu #head-menu-nav > .menu-item.icon > a:after {
  content: "";
  width: 0.46875vw;
  height: 0.5208333333vw;
  background-image: url('data:image/svg+xml,<svg width="9" height="10" viewBox="0 0 9 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.30313 2.25784C7.80381 1.86801 8.53413 2.01346 8.84515 2.56975L8.86943 2.61316C9.17157 3.15356 8.92358 3.83911 8.34797 4.05469C7.48056 4.37955 7.48118 5.62069 8.3486 5.94555C8.92397 6.16104 9.17248 6.84613 8.87108 7.38667L8.82759 7.46466C8.51308 8.02872 7.77556 8.17667 7.27201 7.77672C6.52991 7.1873 5.45866 7.83011 5.59461 8.7745C5.68713 9.41721 5.19201 10 4.54987 10C3.91011 10 3.4136 9.42691 3.49716 8.78537C3.62129 7.8323 2.53424 7.20477 1.79306 7.80654C1.28674 8.21763 0.536891 8.07254 0.216338 7.50145L0.127529 7.34324C-0.17087 6.81162 0.0778283 6.13393 0.644118 5.92028C1.49494 5.59929 1.50079 4.37418 0.645943 4.06432C0.0776557 3.85833 -0.170504 3.18452 0.126046 2.65269L0.175857 2.56335C0.492179 1.99606 1.23149 1.84286 1.74289 2.23863L1.77695 2.26499C2.54539 2.85968 3.63848 2.19974 3.50647 1.23025C3.4184 0.583476 3.91472 0 4.56021 0C5.21109 0 5.70854 0.593708 5.61105 1.2446C5.46881 2.1943 6.55061 2.84375 7.30313 2.25784Z" fill="%23FE6900"/></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 1.3020833333vw;
  right: 1.5625vw;
}
#head-menu #head-menu-nav > .menu-item.btn {
  margin-left: 1.3020833333vw;
}
#head-menu #head-menu-nav > .menu-item.btn > a {
  border-radius: 100px !important;
  padding: 0.9em 2.1em !important;
  text-shadow: 0px 0.0520833333vw 0.4166666667vw #DE5C00;
  /*        @media screen and (min-width:1440px) {
              font-size: 20px !important;
              padding: 18px 42px !important;
              text-shadow: 0px 1px 8px #DE5C00;
          }*/
}
#head-menu #head-menu-nav .sub-menu {
  display: none;
  position: absolute;
  left: 0;
  width: 100%;
  padding-top: 1.2890625vw;
  transition: transform 0.4s;
}
#head-menu #head-menu-nav .sub-menu > ul {
  padding: 0.5208333333vw 0;
  background: #FFF;
  box-shadow: 0 0.2083333333vw 0.5208333333vw 0 rgba(205, 205, 205, 0.15);
  border-radius: 1.5625vw;
}
#head-menu #head-menu-nav .sub-menu > ul a {
  display: block;
  width: 100%;
  padding: 0.625vw 0;
  color: #85683C;
  text-align: center;
  font-size: 0.8333333333vw;
  font-weight: 400;
  letter-spacing: 0.05em;
}
#head-menu #head-menu-nav .sub-menu > ul a:hover {
  color: #FE6900;
  font-weight: 500;
}

button.btn, a.btn, div.btn, #head-menu #head-menu-nav > li.menu-item.btn > a {
  outline: none;
  border: none;
  position: relative;
  z-index: 1;
  padding: 0.7em 1.2em;
  color: #fff !important;
  font-weight: 700;
  border-radius: 1.3em;
  overflow: hidden;
  background: #FE6900;
  background: linear-gradient(114deg, #FFD37F 0%, #FE6900 100%);
  transition: all 0.3s;
  cursor: pointer;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  button.btn, a.btn, div.btn, #head-menu #head-menu-nav > li.menu-item.btn > a {
    border-radius: 1.5em;
  }
}

#scrolltop {
  position: fixed;
  bottom: 9.0666666667vw;
  right: 6.6666666667vw;
  width: 9.0666666667vw;
  height: 9.0666666667vw;
  border-radius: 1.6vw;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  cursor: pointer;
  opacity: 0;
  display: none;
}
@media screen and (min-width: 768px) {
  #scrolltop {
    bottom: 2.5vw;
    right: 2.6041666667vw;
    width: 2.5vw;
    height: 2.5vw;
    border-radius: 0.5208333333vw;
  }
}
#scrolltop svg {
  display: block;
  width: 2.9333333333vw;
}
@media screen and (min-width: 768px) {
  #scrolltop svg {
    width: 1.0416666667vw;
  }
}
#scrolltop.fixed-bottom {
  position: absolute;
}

#main-footer {
  color: #666;
  position: relative;
  border-top: 1px solid rgba(0, 0, 0, 0.0705882353);
}
@media screen and (min-width: 768px) {
  #main-footer {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-direction: row;
    flex-wrap: wrap;
  }
}
#main-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  display: block;
  background: rgba(255, 255, 255, 0.4);
}
#main-footer .footer-logo {
  display: block;
  width: 85.3333333333vw;
  aspect-ratio: 275/58;
  margin: 12vw auto 0 auto;
  position: relative;
  overflow: hidden;
}
#main-footer .footer-logo img {
  display: block;
}
#main-footer .footer-logo video {
  display: none;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-logo {
    display: block;
    width: calc(100% - 70.3125vw);
    height: auto;
    margin: 0 0 0 auto;
  }
  #main-footer .footer-logo img {
    display: none;
  }
  #main-footer .footer-logo video {
    display: block;
  }
}
#main-footer .footer-logo:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#main-footer .footer-logo video, #main-footer .footer-logo img {
  top: 0;
  left: 0vw;
  width: 100%;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-logo video, #main-footer .footer-logo img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20vw;
    transform: translate(-50%, -50%);
  }
}
#main-footer .footer-content {
  padding: 10.6666666667vw 8vw 5.3333333333vw 8vw;
  border-radius: 0 10.6666666667vw 0 0;
  position: relative;
  z-index: 3;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content {
    width: 64.5833333333vw;
    padding: 2.1354166667vw 3.4895833333vw 2.2395833333vw 4.6875vw;
    border-radius: 0 3.125vw 0 0;
    flex-direction: row;
    align-items: flex-start;
  }
}
#main-footer .footer-content a {
  color: inherit;
}
#main-footer .footer-content a:hover {
  text-decoration: underline;
}
#main-footer .footer-content h2 {
  font-weight: 600;
  color: #FE6900;
  margin: 0 0 0.4em;
  font-size: 1.7em;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content h2 {
    font-size: 1.5em;
  }
}
#main-footer .footer-content h2 span {
  color: #943D00;
}
#main-footer .footer-content-info {
  font-weight: 500;
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-info {
    margin: 0 0;
  }
}
#main-footer .footer-content-info > div {
  line-height: 2;
}
#main-footer .footer-content-info > div span {
  color: #FE6900;
}
#main-footer .footer-content-sitemap {
  margin: 0;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-sitemap {
    flex: 0 18.2291666667vw;
    margin: 0 10.4166666667vw 0 0;
  }
}
#main-footer .footer-content-sitemap ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  width: 100%;
  list-style-type: none;
  height: auto;
  padding: 0;
  margin: 0;
  gap: 0.5em;
}
#main-footer .footer-content-sitemap ul li {
  text-align: left;
}
#main-footer .footer-content-sitemap ul li.menu-item-38 {
  display: none;
}
#main-footer .footer-content-sitemap .footer-social {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 2.3em 0;
  height: 2.3em;
  align-items: stretch;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-sitemap .footer-social {
    margin: 1.6em 0 0 0;
    height: 2.4em;
    font-size: 0.7291666667vw;
  }
}
#main-footer .footer-content-sitemap .footer-social a {
  flex: 0 4.7em;
  border-right: 1px solid currentColor;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-sitemap .footer-social a {
    flex: 0 4.8em;
  }
}
#main-footer .footer-content-sitemap .footer-social a:first-child {
  border-left: 1px solid currentColor;
}
#main-footer .footer-content-sitemap .footer-social img {
  display: block;
  width: 1.5em;
  height: auto;
  margin: auto;
  filter: brightness(0.4) invert(0);
}
#main-footer .txt-shadow {
  filter: drop-shadow(0px 0.2666666667vw 1.0666666667vw rgba(204, 51, 0, 0.6));
}
@media screen and (min-width: 768px) {
  #main-footer .txt-shadow {
    filter: drop-shadow(0px 0.0520833333vw 0.5208333333vw rgba(204, 51, 0, 0.6));
  }
}
#main-footer .footer-content-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 3.4666666667vw;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-top {
    font-size: 0.78125vw;
    line-height: 153%;
    letter-spacing: 0.05em;
  }
}
#main-footer .footer-content-top .footer-social {
  width: 20vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-top .footer-social {
    width: 6.1979166667vw;
  }
}
#main-footer .footer-content-top .footer-social img {
  display: block;
  width: 4vw;
  height: auto;
  filter: brightness(0) invert(0);
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-top .footer-social img {
    width: 1.0416666667vw;
  }
}
#main-footer .footer-line {
  width: 100%;
  margin: 6.1333333333vw 0 3.7333333333vw 0;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-line {
    width: 40.46875vw;
    margin: 0.7291666667vw 0;
  }
}
#main-footer .footer-content-bottom {
  width: 100%;
  font-size: 4vw;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
  flex-direction: column;
  color: #fff;
  padding: 0.7em 0;
  background: linear-gradient(114deg, #FE6900, #FFD37F);
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-bottom {
    font-size: 0.78125vw;
    display: flex;
    flex-direction: row;
  }
}
#main-footer .footer-content-bottom .addr {
  display: block;
  font-size: 3.4666666667vw;
  margin-bottom: 0.5em;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-bottom .addr {
    margin-bottom: 0;
    font-size: 0.78125vw;
    display: block;
    letter-spacing: 0.1em;
  }
}
#main-footer .footer-content-bottom .copyright {
  display: flex;
  justify-content: space-between;
}
#main-footer .footer-content-bottom .copyright .space {
  display: block;
  flex: 1;
  position: relative;
}
#main-footer .footer-content-bottom .copyright .space:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 0.2666666667vw;
  height: 100%;
  background: #fff;
}
@media screen and (min-width: 768px) {
  #main-footer .footer-content-bottom .copyright .space:after {
    width: 0.0520833333vw;
  }
}
#main-footer .footer-content-bottom .copyright a {
  color: #fff;
  letter-spacing: 0.1em;
}

#fixed-bottom-menu-bg {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

#fixed-bottom-menu {
  display: none;
  opacity: 0;
  position: fixed;
  bottom: 4.5333333333vw;
  left: 4.6666666667vw;
  width: 90.6666666667vw;
  height: 11.7333333333vw;
  border-radius: 1.6vw;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 1.0666666667vw 2.1333333333vw 0px rgba(121, 121, 121, 0.15);
  backdrop-filter: blur(10px);
  transition: bottom 0.4s, left 0.4s, width 0.4s, height 0.4s, border-radius 0.4s;
  z-index: 999;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu {
    bottom: 1.8229166667vw;
    left: 21.8229166667vw;
    width: 56.3541666667vw;
    height: 4.1666666667vw;
    border-radius: 0.5208333333vw;
    box-shadow: 0px 0.2083333333vw 0.4166666667vw 0px rgba(121, 121, 121, 0.15);
    backdrop-filter: blur(10px);
  }
}
#fixed-bottom-menu.fixed-bottom {
  position: absolute;
}
#fixed-bottom-menu .control {
  width: 100%;
  height: 11.7333333333vw;
  padding: 1.3333333333vw 3.4666666667vw 1.3333333333vw 2.1333333333vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .control {
    height: 4.1666666667vw;
    padding: 0.6770833333vw 1.5625vw 0.8854166667vw 0.9375vw;
  }
}
#fixed-bottom-menu .logo {
  display: block;
  width: 9.0666666667vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .logo {
    width: 2.65625vw;
  }
}
#fixed-bottom-menu .btns {
  display: flex;
}
#fixed-bottom-menu .btns .btn {
  color: #FFF;
  text-align: center;
  font-size: 2.6666666667vw;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .btns .btn {
    width: 8.0208333333vw;
    height: 2.5vw;
    border-radius: 0.4166666667vw;
    font-size: 0.8333333333vw;
    line-height: 1.2;
    padding: 0.7291666667vw 0.3645833333vw;
  }
}
#fixed-bottom-menu .btns .toogle {
  padding: 1.4666666667vw 5.8666666667vw 1.4666666667vw 2.1333333333vw;
  margin-right: 2.6666666667vw;
  display: flex;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .btns .toogle {
    padding: 0.3645833333vw;
    margin-right: 0.9375vw;
  }
}
#fixed-bottom-menu .btns .toogle .menu-icon {
  display: block;
  width: 3.7333333333vw;
  margin-right: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .btns .toogle .menu-icon {
    width: 1.7708333333vw;
    margin-right: 0.9375vw;
  }
}
#fixed-bottom-menu .btns .toogle .menu-text {
  display: block;
  width: 9.0666666667vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .btns .toogle .menu-text {
    width: 2.8125vw;
  }
}
#fixed-bottom-menu .links-m {
  display: flex;
  justify-content: space-between;
  width: 61.3333333333vw;
  margin: 0 auto;
  padding-top: 8vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .links-m {
    visibility: hidden;
  }
}
#fixed-bottom-menu .links-m ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#fixed-bottom-menu .links-m ul li {
  padding: 0;
  margin-bottom: 5.3333333333vw;
  line-height: 4vw;
}
#fixed-bottom-menu .links-m ul li:last-child {
  margin-bottom: 0;
}
#fixed-bottom-menu .links-m a {
  padding: 0 0 0 6.6666666667vw;
  color: #FE6900;
  font-size: 2.6666666667vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  display: block;
}
#fixed-bottom-menu .links-m > ul > li {
  margin-bottom: 16.5333333333vw;
}
#fixed-bottom-menu .links-m > ul > li:last-child {
  margin-bottom: 0;
}
#fixed-bottom-menu .links-m > ul > li > a {
  font-size: 3.4666666667vw;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  background-size: 2.4vw auto;
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml,<svg width="9" height="10" viewBox="0 0 9 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.30313 2.25784C7.80381 1.86801 8.53413 2.01346 8.84515 2.56975L8.86943 2.61316C9.17157 3.15356 8.92358 3.83911 8.34797 4.05469C7.48056 4.37955 7.48118 5.62069 8.3486 5.94555C8.92397 6.16104 9.17248 6.84613 8.87108 7.38667L8.82759 7.46466C8.51308 8.02872 7.77556 8.17667 7.27201 7.77672C6.52991 7.1873 5.45866 7.83011 5.59461 8.7745C5.68713 9.41721 5.19201 10 4.54987 10C3.91011 10 3.4136 9.42691 3.49716 8.78537C3.62129 7.8323 2.53424 7.20477 1.79306 7.80654C1.28674 8.21763 0.536891 8.07254 0.216338 7.50145L0.127529 7.34324C-0.17087 6.81162 0.0778283 6.13393 0.644118 5.92028C1.49494 5.59929 1.50079 4.37418 0.645943 4.06432C0.0776557 3.85833 -0.170504 3.18452 0.126046 2.65269L0.175857 2.56335C0.492179 1.99606 1.23149 1.84286 1.74289 2.23863L1.77695 2.26499C2.54539 2.85968 3.63848 2.19974 3.50647 1.23025C3.4184 0.583476 3.91472 0 4.56021 0C5.21109 0 5.70854 0.593708 5.61105 1.2446C5.46881 2.1943 6.55061 2.84375 7.30313 2.25784Z" fill="%23FE6900"/></svg>');
}
#fixed-bottom-menu .links-m .sub-menu {
  position: relative;
  margin-top: 7.2vw;
}
#fixed-bottom-menu .links-m .sub-menu .current-menu-item a {
  color: #CD5500;
  font-weight: 600;
}
#fixed-bottom-menu .links {
  visibility: hidden;
  position: absolute;
  top: 1.4583333333vw;
  left: 7.03125vw;
  width: 27.34375vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .links {
    visibility: visible;
  }
}
#fixed-bottom-menu .links * {
  visibility: hidden;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .links * {
    visibility: visible;
  }
}
#fixed-bottom-menu .links ul {
  visibility: hidden;
  margin: 0;
  padding: 0;
  list-style: none;
}
#fixed-bottom-menu .links ul li {
  padding: 0;
  margin-bottom: 1.0416666667vw;
  line-height: 1.09375vw;
}
#fixed-bottom-menu .links ul li:last-child {
  margin-bottom: 0;
}
#fixed-bottom-menu .links a {
  white-space: nowrap;
  padding: 0 0 0 1.09375vw;
  color: #FE6900;
  font-size: 0.7291666667vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  display: block;
}
#fixed-bottom-menu .links > ul {
  display: flex;
  justify-content: space-between;
}
#fixed-bottom-menu .links > ul > li {
  margin-bottom: 1.5625vw;
}
#fixed-bottom-menu .links > ul > li:last-child {
  margin-bottom: 0;
}
#fixed-bottom-menu .links > ul > li > a {
  font-size: 0.8333333333vw;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  background-size: 0.4166666667vw auto;
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml,<svg width="9" height="10" viewBox="0 0 9 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.30313 2.25784C7.80381 1.86801 8.53413 2.01346 8.84515 2.56975L8.86943 2.61316C9.17157 3.15356 8.92358 3.83911 8.34797 4.05469C7.48056 4.37955 7.48118 5.62069 8.3486 5.94555C8.92397 6.16104 9.17248 6.84613 8.87108 7.38667L8.82759 7.46466C8.51308 8.02872 7.77556 8.17667 7.27201 7.77672C6.52991 7.1873 5.45866 7.83011 5.59461 8.7745C5.68713 9.41721 5.19201 10 4.54987 10C3.91011 10 3.4136 9.42691 3.49716 8.78537C3.62129 7.8323 2.53424 7.20477 1.79306 7.80654C1.28674 8.21763 0.536891 8.07254 0.216338 7.50145L0.127529 7.34324C-0.17087 6.81162 0.0778283 6.13393 0.644118 5.92028C1.49494 5.59929 1.50079 4.37418 0.645943 4.06432C0.0776557 3.85833 -0.170504 3.18452 0.126046 2.65269L0.175857 2.56335C0.492179 1.99606 1.23149 1.84286 1.74289 2.23863L1.77695 2.26499C2.54539 2.85968 3.63848 2.19974 3.50647 1.23025C3.4184 0.583476 3.91472 0 4.56021 0C5.21109 0 5.70854 0.593708 5.61105 1.2446C5.46881 2.1943 6.55061 2.84375 7.30313 2.25784Z" fill="%23FE6900"/></svg>');
}
#fixed-bottom-menu .links .sub-menu {
  position: relative;
  margin-top: 1.3541666667vw;
  visibility: hidden;
}
#fixed-bottom-menu .links .sub-menu .current-menu-item a {
  color: #CD5500;
  font-weight: 600;
}
#fixed-bottom-menu #fixed-bottom-menu-bottom {
  visibility: hidden;
  position: absolute;
  bottom: 7.2vw;
  left: 8.2666666667vw;
  width: 83.2vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #FE6900;
  text-align: right;
  font-size: 2.1333333333vw;
  font-weight: 500;
  line-height: 3.7333333333vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu #fixed-bottom-menu-bottom {
    bottom: 3.0208333333vw;
    left: auto;
    right: 1.7708333333vw;
    width: auto;
    font-size: 0.6770833333vw;
    font-weight: 500;
    line-height: 1.1979166667vw;
    align-items: flex-end;
  }
}
#fixed-bottom-menu #fixed-bottom-menu-bottom .left-link {
  padding-left: 6.6666666667vw;
  color: #FE6900;
  letter-spacing: 0.1em;
  font-size: 3.4666666667vw;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  background-size: 2.4vw auto;
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml,<svg width="9" height="10" viewBox="0 0 9 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.30313 2.25784C7.80381 1.86801 8.53413 2.01346 8.84515 2.56975L8.86943 2.61316C9.17157 3.15356 8.92358 3.83911 8.34797 4.05469C7.48056 4.37955 7.48118 5.62069 8.3486 5.94555C8.92397 6.16104 9.17248 6.84613 8.87108 7.38667L8.82759 7.46466C8.51308 8.02872 7.77556 8.17667 7.27201 7.77672C6.52991 7.1873 5.45866 7.83011 5.59461 8.7745C5.68713 9.41721 5.19201 10 4.54987 10C3.91011 10 3.4136 9.42691 3.49716 8.78537C3.62129 7.8323 2.53424 7.20477 1.79306 7.80654C1.28674 8.21763 0.536891 8.07254 0.216338 7.50145L0.127529 7.34324C-0.17087 6.81162 0.0778283 6.13393 0.644118 5.92028C1.49494 5.59929 1.50079 4.37418 0.645943 4.06432C0.0776557 3.85833 -0.170504 3.18452 0.126046 2.65269L0.175857 2.56335C0.492179 1.99606 1.23149 1.84286 1.74289 2.23863L1.77695 2.26499C2.54539 2.85968 3.63848 2.19974 3.50647 1.23025C3.4184 0.583476 3.91472 0 4.56021 0C5.21109 0 5.70854 0.593708 5.61105 1.2446C5.46881 2.1943 6.55061 2.84375 7.30313 2.25784Z" fill="%23FE6900"/></svg>');
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu #fixed-bottom-menu-bottom .left-link {
    visibility: hidden;
  }
}
#fixed-bottom-menu #fixed-bottom-menu-bottom .info {
  font-optical-sizing: auto;
}
#fixed-bottom-menu #fixed-bottom-menu-bottom .info div:nth-child(1) {
  letter-spacing: 0.185em;
}
#fixed-bottom-menu #fixed-bottom-menu-bottom .info div:nth-child(2) {
  letter-spacing: 0.1em;
}
#fixed-bottom-menu.active {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 133.3333333333vw;
  border-radius: 2.6666666667vw 2.6666666667vw 0 0;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu.active {
    bottom: 1.5625vw;
    left: 12.5vw;
    width: 75vw;
    height: 21.6145833333vw;
    border-radius: 0.5208333333vw;
  }
}
#fixed-bottom-menu.active .control {
  height: 20.8vw;
  padding: 5.8666666667vw 8vw 7.2vw 8vw;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu.active .control {
    height: 4.5833333333vw;
    padding: 1.09375vw 1.5625vw 0.8333333333vw 1.5104166667vw;
  }
}
#fixed-bottom-menu.active .btns .toogle {
  background: #FE6900;
}
#fixed-bottom-menu.active .btns .toogle .menu-icon {
  transform: rotate(90deg);
  transform-origin: center center;
  transform-box: fill-box;
}
#fixed-bottom-menu.active #fixed-bottom-menu-bottom {
  visibility: visible;
}
#fixed-bottom-menu.active .links {
  top: 1.8229166667vw;
  left: 12.2916666667vw;
  width: 34.3229166667vw;
}
#fixed-bottom-menu.active .links .sub-menu {
  visibility: visible;
}
#fixed-bottom-menu .track-bg {
  position: absolute;
  top: 0;
  left: 1.0666666667vw;
  width: 0.5333333333vw;
  height: 100%;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .track-bg {
    left: 0.2083333333vw;
    width: 0.1041666667vw;
  }
}
#fixed-bottom-menu .track-bg .track-bg-top, #fixed-bottom-menu .track-bg .track-bg-bottom {
  position: absolute;
  left: 0;
  width: 100%;
  background: #fff;
  border-radius: 50px;
}
#fixed-bottom-menu .track-bg .track-bg-top {
  top: 0;
}
#fixed-bottom-menu .track-bg .track-bg-bottom {
  bottom: 0;
}
#fixed-bottom-menu .track-bg .tracker {
  width: 100%;
  height: 4vw;
  position: absolute;
  top: 0;
  left: 0;
  background: #FE6900;
  border-radius: 50px;
}
@media screen and (min-width: 768px) {
  #fixed-bottom-menu .track-bg .tracker {
    height: 0.8333333333vw;
  }
}

@media screen and (min-width: 768px) {
  body:not(.home) #fixed-bottom-menu {
    display: none !important;
  }
}

#mob-menu-panel {
  position: fixed;
  top: var(--wp-admin--admin-bar--height, 0px);
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(5.3333333333vw);
  padding: 26.4vw 0 17.6vw 0;
  z-index: 1;
  transform: translate(0, -100%);
  transition: transform 0.4s, box-shadow 0.4s;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.4);
}
@media screen and (min-width: 768px) {
  #mob-menu-panel {
    display: none !important;
  }
}
#mob-menu-panel.open {
  transform: translate(0, 0);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.4);
}
#mob-menu-panel .order-btn {
  position: absolute;
  top: 4vw;
  right: 17.8666666667vw;
  color: #FFF;
  text-align: center;
  /* font-size: size-m(13);
  font-weight: 700;*/
  border-radius: 100px;
}
#mob-menu-panel .links {
  display: flex;
  justify-content: space-between;
  padding: 0 18.6666666667vw 0 10.6666666667vw;
}
#mob-menu-panel .links ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#mob-menu-panel .links .menu-item {
  margin-bottom: 10.6666666667vw;
}
#mob-menu-panel .links .menu-item:last-child {
  margin-bottom: 0;
}
#mob-menu-panel .links .menu-item > a {
  color: #FE6900;
  font-size: 4.8vw;
  line-height: 6.1333333333vw;
  font-weight: 600;
  letter-spacing: 0.1em;
  padding-left: 6.6666666667vw;
  background-image: url('data:image/svg+xml,<svg width="9" height="10" viewBox="0 0 9 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.30313 2.25784C7.80381 1.86801 8.53413 2.01346 8.84515 2.56975L8.86943 2.61316C9.17157 3.15356 8.92358 3.83911 8.34797 4.05469C7.48056 4.37955 7.48118 5.62069 8.3486 5.94555C8.92397 6.16104 9.17248 6.84613 8.87108 7.38667L8.82759 7.46466C8.51308 8.02872 7.77556 8.17667 7.27201 7.77672C6.52991 7.1873 5.45866 7.83011 5.59461 8.7745C5.68713 9.41721 5.19201 10 4.54987 10C3.91011 10 3.4136 9.42691 3.49716 8.78537C3.62129 7.8323 2.53424 7.20477 1.79306 7.80654C1.28674 8.21763 0.536891 8.07254 0.216338 7.50145L0.127529 7.34324C-0.17087 6.81162 0.0778283 6.13393 0.644118 5.92028C1.49494 5.59929 1.50079 4.37418 0.645943 4.06432C0.0776557 3.85833 -0.170504 3.18452 0.126046 2.65269L0.175857 2.56335C0.492179 1.99606 1.23149 1.84286 1.74289 2.23863L1.77695 2.26499C2.54539 2.85968 3.63848 2.19974 3.50647 1.23025C3.4184 0.583476 3.91472 0 4.56021 0C5.21109 0 5.70854 0.593708 5.61105 1.2446C5.46881 2.1943 6.55061 2.84375 7.30313 2.25784Z" fill="%23FE6900"/></svg>');
  background-size: 2.4vw auto;
  background-position: 0 1.3333333333vw;
  background-repeat: no-repeat;
}
#mob-menu-panel .links .sub-menu {
  margin-top: 5.3333333333vw;
}
#mob-menu-panel .links .sub-menu .menu-item {
  margin: 0;
  margin-bottom: 5.3333333333vw;
}
#mob-menu-panel .links .sub-menu .menu-item:last-child {
  margin-bottom: 0;
}
#mob-menu-panel .links .sub-menu .menu-item > a {
  color: #9c4100;
  font-size: 4vw;
  line-height: 5.3333333333vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  background: none;
  position: relative;
}
#mob-menu-panel .links .sub-menu .menu-item.current-menu-item a {
  color: #CD5500;
  font-weight: 600;
}
#mob-menu-panel .links .sub-menu .menu-item.current-menu-item a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 1.0666666667vw;
  height: 4.2666666667vw;
  background: #FE6900;
  border-radius: 100px;
}

#portfolio-sidebar {
  position: sticky;
  top: 0;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar {
    width: 11.3541666667vw;
    margin-right: 6.7708333333vw;
  }
}
#portfolio-sidebar .widget {
  margin-bottom: 17.3333333333vw;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget {
    margin-bottom: 4.1666666667vw;
  }
}
#portfolio-sidebar .widget:last-child {
  margin-bottom: 0;
}
#portfolio-sidebar .widget .widget-title {
  color: #4E4E4E;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 7.2vw;
  letter-spacing: 0.5333333333vw;
  margin: 0 0 7.2vw 0;
  padding-bottom: 5.8666666667vw;
  border-bottom: 0.2666666667vw solid #D8D8D8;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget .widget-title {
    font-size: 1.25vw;
    line-height: 1.40625vw;
    letter-spacing: 0.1041666667vw;
    margin: 0 0 1.3020833333vw 0;
    padding-bottom: 1.1458333333vw;
    border-bottom: 0.0520833333vw solid #D8D8D8;
  }
}
#portfolio-sidebar .widget.cats, #portfolio-sidebar .widget.search {
  display: none;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget.cats, #portfolio-sidebar .widget.search {
    display: block;
  }
}
#portfolio-sidebar .widget.tags {
  width: 74.6666666667vw;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget.tags {
    width: 100%;
  }
}
#portfolio-sidebar .widget.tags h3 {
  display: none;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget.tags h3 {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget.cats h3, #portfolio-sidebar .widget.tags h3 {
    border: none;
    padding-bottom: 0.5208333333vw;
  }
}
#portfolio-sidebar .widget.cats .widget-body > div, #portfolio-sidebar .widget.tags .widget-body > div {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget.cats .widget-body > div, #portfolio-sidebar .widget.tags .widget-body > div {
    margin-left: -0.2604166667vw;
    margin-right: -0.2604166667vw;
  }
}
#portfolio-sidebar .widget.cats a, #portfolio-sidebar .widget.tags a {
  letter-spacing: 0.06em;
  background: #fff;
  text-align: center;
  border-radius: 1.5em;
  margin: 0.8vw;
  transition: all 0.2s;
  padding: 0.7em 1.2em;
  box-shadow: 0px 0.2em 0.5em rgba(0, 0, 0, 0.1333333333);
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar .widget.cats a, #portfolio-sidebar .widget.tags a {
    width: 9.6354166667vw;
    margin: 0 0 1.0416666667vw 0;
    display: block;
  }
}
#portfolio-sidebar .widget.cats a:hover, #portfolio-sidebar .widget.tags a:hover {
  background: #FE6900;
  border-color: #FE6900;
  color: #fff;
}
#portfolio-sidebar .widget.cats.widget.cats a.active, #portfolio-sidebar .widget.tags.widget.cats a.active {
  color: #fff;
  background: linear-gradient(114deg, #FE6900 0%, #FFD37F 100%);
  border-color: #FFD37F;
  text-shadow: 0 0 0.3em #FE6900;
}
#portfolio-sidebar article {
  margin-bottom: 4vw;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar article {
    margin-bottom: 0.9375vw;
  }
}
#portfolio-sidebar article:last-child {
  margin-bottom: 0;
}
#portfolio-sidebar article .info-date-cat {
  display: flex;
  color: #9B9B9B;
  font-size: 3.7333333333vw;
  margin-bottom: 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar article .info-date-cat {
    font-size: 0.7291666667vw;
    margin-bottom: 0.2604166667vw;
  }
}
#portfolio-sidebar article .info-date-cat time {
  margin-right: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar article .info-date-cat time {
    margin-right: 0.5208333333vw;
  }
}
#portfolio-sidebar article h4 {
  color: #4E4E4E;
  font-size: 3.7333333333vw;
  font-weight: 600;
  line-height: 5.8666666667vw;
  margin: 0;
}
@media screen and (min-width: 768px) {
  #portfolio-sidebar article h4 {
    font-size: 0.8333333333vw;
    line-height: 1.1458333333vw;
  }
}

.single #post-sidebar .widget.search {
  display: block;
}

@keyframes contactText {
  from {
    background-position: 0 0;
  }
  to {
    background-position: calc(var(--text-width) * -2);
  }
}
body {
  background: #FBFBFB;
  background-image: url(/wp-content/themes/lixin/assets/img/page-bg.png);
  background-size: 100% auto;
}

.tax-portfolio_category section, .post-type-archive-portfolio section {
  position: relative;
  padding: 9.3333333333vw 0 63.7333333333vw 0;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section, .post-type-archive-portfolio section {
    padding: 8.8541666667vw 0 14.5833333333vw 0;
  }
}
.tax-portfolio_category section h1, .post-type-archive-portfolio section h1 {
  white-space: nowrap;
  margin-bottom: 0.5em;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section h1, .post-type-archive-portfolio section h1 {
    position: static;
    margin-bottom: 3.125vw;
  }
}
.tax-portfolio_category section .container, .post-type-archive-portfolio section .container {
  padding: 0 8vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .container, .post-type-archive-portfolio section .container {
    padding: 0 1.0416666667vw;
    max-width: 92.7083333333vw;
    margin: 0 auto;
  }
}
.tax-portfolio_category section .categories-slider, .post-type-archive-portfolio section .categories-slider {
  margin-bottom: 13.3333333333vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .categories-slider, .post-type-archive-portfolio section .categories-slider {
    display: none;
  }
}
.tax-portfolio_category section .categories-slider .swiper, .post-type-archive-portfolio section .categories-slider .swiper {
  overflow: visible;
}
.tax-portfolio_category section .categories-slider .swiper .swiper-slide, .post-type-archive-portfolio section .categories-slider .swiper .swiper-slide {
  width: auto;
  margin-right: 3.2vw;
}
.tax-portfolio_category section .categories-slider .swiper .swiper-slide:last-child, .post-type-archive-portfolio section .categories-slider .swiper .swiper-slide:last-child {
  margin-right: 0;
}
.tax-portfolio_category section .categories-slider .swiper .swiper-slide a, .post-type-archive-portfolio section .categories-slider .swiper .swiper-slide a {
  display: block;
  border-radius: 1.3em;
  background: #FFF;
  box-shadow: 0px 0.2em 0.5em rgba(0, 0, 0, 0.1333333333);
  text-align: center;
  padding: 0.4em 1.2em;
  min-width: 5.8em;
  white-space: nowrap;
}
.tax-portfolio_category section .categories-slider .swiper .swiper-slide a.active, .post-type-archive-portfolio section .categories-slider .swiper .swiper-slide a.active {
  color: #fff;
  background: linear-gradient(114deg, #FE6900 0%, #FFD37F 100%);
}
.tax-portfolio_category section .inner, .post-type-archive-portfolio section .inner {
  position: relative;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner, .post-type-archive-portfolio section .inner {
    display: flex;
    align-items: flex-start;
  }
}
.tax-portfolio_category section .inner .no-result, .post-type-archive-portfolio section .inner .no-result {
  color: #797979;
  font-size: 4.2666666667vw;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-top: 29.0666666667vw;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner .no-result, .post-type-archive-portfolio section .inner .no-result {
    font-size: 1.875vw;
    margin-top: 13.3854166667vw;
  }
}
.tax-portfolio_category section .inner #post-list, .post-type-archive-portfolio section .inner #post-list {
  margin-bottom: 17.3333333333vw;
  /* font-size: size-m(12);
  font-weight: 500;
  letter-spacing: .06em;
  line-height: 1.6; */
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list, .post-type-archive-portfolio section .inner #post-list {
    margin-bottom: 0;
    width: 72.6041666667vw;
  }
}
.tax-portfolio_category section .inner #post-list #post-list-inner, .post-type-archive-portfolio section .inner #post-list #post-list-inner {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -2.1333333333vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list #post-list-inner, .post-type-archive-portfolio section .inner #post-list #post-list-inner {
    margin: 0 -0.6510416667vw;
  }
}
.tax-portfolio_category section .inner #post-list article, .post-type-archive-portfolio section .inner #post-list article {
  width: 100%;
  position: relative;
  padding: 0 2.1333333333vw;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list article, .post-type-archive-portfolio section .inner #post-list article {
    width: 50%;
    padding: 0 0.6510416667vw;
    margin-bottom: 1.5625vw;
  }
}
.tax-portfolio_category section .inner #post-list article:last-child, .post-type-archive-portfolio section .inner #post-list article:last-child {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list article:last-child, .post-type-archive-portfolio section .inner #post-list article:last-child {
    margin-bottom: 1.5625vw;
  }
}
.tax-portfolio_category section .inner #post-list article a, .post-type-archive-portfolio section .inner #post-list article a {
  display: block;
  position: relative;
  border-radius: 2.1333333333vw;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list article a, .post-type-archive-portfolio section .inner #post-list article a {
    border-radius: 0.4166666667vw;
  }
}
.tax-portfolio_category section .inner #post-list article a::after, .post-type-archive-portfolio section .inner #post-list article a::after {
  content: " ";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: inset 0 0 1.6em rgba(0, 0, 0, 0.1333333333);
}
.tax-portfolio_category section .inner #post-list article figure, .post-type-archive-portfolio section .inner #post-list article figure {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  position: relative;
  overflow: hidden;
}
.tax-portfolio_category section .inner #post-list article figure img, .post-type-archive-portfolio section .inner #post-list article figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.2s;
}
.tax-portfolio_category section .inner #post-list article .info, .post-type-archive-portfolio section .inner #post-list article .info {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: #fff;
  background: rgba(0, 0, 0, 0.6);
  padding: 2.6666666667vw 5.3333333333vw;
  opacity: 1;
  transition: all 0.2s;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list article .info, .post-type-archive-portfolio section .inner #post-list article .info {
    padding: 1.0416666667vw 1.5625vw;
  }
}
.tax-portfolio_category section .inner #post-list article .info .info-title, .post-type-archive-portfolio section .inner #post-list article .info .info-title {
  display: flex;
  justify-content: center;
}
.tax-portfolio_category section .inner #post-list article .info .info-desc, .post-type-archive-portfolio section .inner #post-list article .info .info-desc {
  display: flex;
  justify-content: center;
}
.tax-portfolio_category section .inner #post-list article .info .info-desc > div, .post-type-archive-portfolio section .inner #post-list article .info .info-desc > div {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list article .info .info-desc > div, .post-type-archive-portfolio section .inner #post-list article .info .info-desc > div {
    margin-top: 0.3125vw;
  }
}
.tax-portfolio_category section .inner #post-list article:hover figure img, .post-type-archive-portfolio section .inner #post-list article:hover figure img {
  transform: scale(1.05);
}
.tax-portfolio_category section .inner #post-list article:hover .info, .post-type-archive-portfolio section .inner #post-list article:hover .info {
  opacity: 0;
}
.tax-portfolio_category section .post-pagination, .post-type-archive-portfolio section .post-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .post-pagination, .post-type-archive-portfolio section .post-pagination {
    margin-top: 6.9791666667vw;
  }
}
.tax-portfolio_category section .post-pagination .page-numbers, .post-type-archive-portfolio section .post-pagination .page-numbers {
  width: 9.0666666667vw;
  height: 9.0666666667vw;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FE6900;
  background: #fff;
  font-size: 3.2vw;
  font-weight: 600;
  border-radius: 1.6vw;
  margin: 0 1.0666666667vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .post-pagination .page-numbers, .post-type-archive-portfolio section .post-pagination .page-numbers {
    width: 3.3333333333vw;
    height: 3.3333333333vw;
    font-size: 1.25vw;
    border-radius: 0.3125vw;
    margin: 0 0.625vw;
  }
}
.tax-portfolio_category section .post-pagination .page-numbers.current, .tax-portfolio_category section .post-pagination .page-numbers.next, .tax-portfolio_category section .post-pagination .page-numbers.prev, .post-type-archive-portfolio section .post-pagination .page-numbers.current, .post-type-archive-portfolio section .post-pagination .page-numbers.next, .post-type-archive-portfolio section .post-pagination .page-numbers.prev {
  color: #FFFFFF;
  background: linear-gradient(114deg, #FE6900 0%, #FFD37F 100%);
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .post-pagination .page-numbers.prev, .post-type-archive-portfolio section .post-pagination .page-numbers.prev {
    margin-right: 3.125vw;
  }
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .post-pagination .page-numbers.next, .post-type-archive-portfolio section .post-pagination .page-numbers.next {
    margin-left: 3.125vw;
  }
}
.tax-portfolio_category section .post-pagination .page-numbers.dots, .post-type-archive-portfolio section .post-pagination .page-numbers.dots {
  color: #797979;
  background: none;
  width: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .post-pagination .page-numbers.dots, .post-type-archive-portfolio section .post-pagination .page-numbers.dots {
    width: 1.5625vw;
  }
}
.tax-portfolio_category .style, .post-type-archive-portfolio .style {
  position: absolute;
  bottom: 26.6666666667vw;
  left: -82.4613333333vw;
  width: 160.9213333333vw;
  transform: rotate(-105.125deg);
  opacity: 0.6;
  z-index: -1;
  filter: blur(1.3333333333vw);
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category .style, .post-type-archive-portfolio .style {
    bottom: -13.75vw;
    left: -39.2307291667vw;
    width: 90.390625vw;
    transform: rotate(116.26deg);
    filter: blur(0.2604166667vw);
  }
}

.post-type-archive-portfolio section {
  padding-bottom: 0;
}
.post-type-archive-portfolio .cat-link {
  color: #C9A063;
  margin-bottom: 0.5em;
}
.post-type-archive-portfolio .cat-link a {
  color: #C9A063;
}
.post-type-archive-portfolio section .inner #post-list {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio section .inner #post-list {
    width: 73.90625vw;
  }
}
.post-type-archive-portfolio .post-list-cat-items {
  margin-bottom: 9.6vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio .post-list-cat-items {
    margin-bottom: 3.6458333333vw;
  }
}
.post-type-archive-portfolio .post-list-cat-items:last-child {
  margin-bottom: 0;
}
.post-type-archive-portfolio .post-list-cat-items .post-list-cat-slider article {
  width: 100% !important;
  padding: 0 !important;
}
.post-type-archive-portfolio .post-list-cat-items .post-list-cat-slider article figure {
  padding-top: 100% !important;
}
.post-type-archive-portfolio .post-list-cat-items .post-list-cat-slider .swiper {
  overflow: visible;
  z-index: initial;
}
.post-type-archive-portfolio .post-list-cat-items .post-list-cat-slider .swiper .swiper-slide {
  width: 66.6666666667vw;
  margin-right: 4.2666666667vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio .post-list-cat-items .post-list-cat-slider .swiper .swiper-slide {
    width: 17.1875vw;
    margin-right: 1.3020833333vw;
  }
}
.post-type-archive-portfolio .post-list-cat-items .post-list-cat-slider .swiper .swiper-slide:last-child {
  margin-right: 0;
}
.post-type-archive-portfolio #contact {
  padding: 24vw 0 35.4666666667vw 0;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact {
    padding: 6.9791666667vw 0 26.1458333333vw 0;
  }
}
.post-type-archive-portfolio #contact .contact-bg {
  position: absolute;
  top: 34.4vw;
  left: 0;
  width: 100%;
  pointer-events: none;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .contact-bg {
    top: 6.875vw;
    width: 98.2026041667vw;
  }
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .contact-bg.m {
    display: none;
  }
}
.post-type-archive-portfolio #contact .contact-bg.pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .contact-bg.pc {
    display: block;
  }
}
.post-type-archive-portfolio #contact .contact-bg-video {
  display: none;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .contact-bg-video {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 57.54vw;
    z-index: -1;
    overflow: hidden;
  }
}
.post-type-archive-portfolio #contact .contact-bg-video:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.post-type-archive-portfolio #contact .contact-bg-video video {
  position: absolute;
  top: 0;
  left: 50%;
  width: 297vw;
  height: auto;
  transform: translate(-50%, 0);
}
.post-type-archive-portfolio #contact .big-text {
  --text-width: 224vw;
  width: 100%;
  height: 16.2666666667vw;
  background-image: url(../img/contact-us-text.svg);
  background-size: var(--text-width) auto;
  animation: contactText 20s linear infinite;
  margin-bottom: 19.2vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .big-text {
    --text-width: 218.75vw;
    height: 15.8854166667vw;
    animation-duration: 30s;
    margin-bottom: 10vw;
  }
}
.post-type-archive-portfolio #contact .t1 {
  color: #85683C;
  font-size: 4.2666666667vw;
  line-height: 7.4666666667vw;
  font-weight: 600;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .t1 {
    font-size: 2.34375vw;
    line-height: 4.0625vw;
  }
}
.post-type-archive-portfolio #contact .t2 {
  color: #C9A063;
  font-size: 4.2666666667vw;
  line-height: 7.4666666667vw;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 5.6vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .t2 {
    font-size: 2.34375vw;
    line-height: 4.0625vw;
    margin-bottom: 2.03125vw;
  }
}
.post-type-archive-portfolio #contact .line {
  --line-width: 64.8vw;
  width: var(--line-width);
  height: 0.5333333333vw;
  margin: 0 auto 6.9333333333vw auto;
  border-radius: 2.6666666667vw;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .line {
    --line-width: 35.7291666667vw;
    height: 0.2083333333vw;
    margin: 0 auto 3.6458333333vw auto;
    border-radius: 0.5208333333vw;
  }
}
.post-type-archive-portfolio #contact .line .line-inner {
  width: 300%;
  height: 100%;
  position: relative;
  overflow: hidden;
  position: relative;
  display: flex;
}
.post-type-archive-portfolio #contact .line .line-inner .line1, .post-type-archive-portfolio #contact .line .line-inner .line2, .post-type-archive-portfolio #contact .line .line-inner .line3 {
  width: 33.3333%;
  height: 100%;
  background: #E8E8E8;
  border-radius: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .line .line-inner .line1, .post-type-archive-portfolio #contact .line .line-inner .line2, .post-type-archive-portfolio #contact .line .line-inner .line3 {
    border-radius: 0.5208333333vw;
  }
}
.post-type-archive-portfolio #contact .line .line-inner .line2 {
  background: #C9A063;
  margin: 0 1.0666666667vw;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .line .line-inner .line2 {
    border-radius: 0.8333333333vw;
  }
}
.post-type-archive-portfolio #contact .btn {
  font-size: 2.6666666667vw;
  line-height: 4.8vw;
  font-weight: 600;
  letter-spacing: 0.22em;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .post-type-archive-portfolio #contact .btn {
    font-size: 1.0416666667vw;
    line-height: 1.3541666667vw;
    padding: 1.09375vw 3.8020833333vw;
  }
}

.tax-portfolio_category section .inner #post-list article {
  width: auto;
}
.tax-portfolio_category section .inner #post-list article figure {
  width: auto;
  height: auto;
  padding-top: 0;
}
.tax-portfolio_category section .inner #post-list article figure img {
  position: static;
  display: block;
  width: 84vw;
  height: auto;
}
@media screen and (min-width: 768px) {
  .tax-portfolio_category section .inner #post-list article figure img {
    width: auto;
    height: 22.7604166667vw;
  }
}

/*# sourceMappingURL=portfolio.css.map */
