@charset "UTF-8";
/*
reset css
*/
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

img {
  max-width: 100%;
  height: auto;
  width: 100%;
}

.img-radius {
  border-radius: var(--BorderRadius);
  overflow: hidden;
}

a {
  color: inherit;
  -webkit-tap-highlight-color: transparent;
}

a,
button {
  -webkit-transition: var(--TransitionDefault);
  transition: var(--TransitionDefault);
  text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
  a:hover {
    color: var(--ColorPrimaryHover);
  }
}
a:is(:active, :focus-visible) {
  color: var(--ColorPrimaryHover);
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
  color: inherit;
}

button,
input {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  border-radius: 0;
  color: inherit;
}

button,
select {
  text-transform: none;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
  -moz-appearance: none;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  display: none;
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button {
  display: inline-block;
}

textarea {
  width: 100%;
  resize: none;
}

figure,
address,
fieldset,
legend {
  margin: 0;
  padding: 0;
}

:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

*,
*::before,
*::after,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:is(h1, h2, h3, h4, h5, h6, p) {
  padding: 0;
  margin: 0;
}

/*
basic
*/
html {
  --TransitionDefault: 0.3s ease;
  --ColorPrimary: #b3540f;
  --ColorSecondary: #3a1f14;
  --ColorPrimaryHover: #b3540f;
  --ColorSecondaryHover: #000000;
  --BgColor: #ffffff;
  --TextColorPrimary: #2a2a2a;
  --TextColorSecondary: #5e5e5e;
  --TextColorTitle: #2a2a2a;
  --BorderPrimary: 1px solid #dcdcdc;
  --BorderSecondary: 1px solid #f1f1f1;
  --BorderColorPrimary: #dcdcdc;
  --BorderColorSecondary: #f1f1f1;
  --BtnOutlineTextColor: #3a1f14;
  --BtnOutlineBg: transparent;
  --BtnOutlineHoverTextColor: white;
  --BtnOutlineHoverBg: var(--ColorSecondary);
  --BtnPrimaryTextColor: white;
  --BtnPrimaryBg: var(--ColorPrimary);
  --BtnPrimaryHoverTextColor: white;
  --BtnPrimaryHoverBg: var(--ColorPrimaryHover);
  --BtnSecondaryTextColor: white;
  --BtnSecondaryBg: var(--ColorSecondary);
  --BtnSecondaryHoverTextColor: white;
  --BtnSecondaryHoverBg: #b3540f;
  --BtnBorderRadius: 999px;
  --BtnWidth: 250px;
  --BtnHeight: 52px;
  --BtnFontSize: 16px;
  --BtnMarginTop: max(3vw, 2rem);
  --FontFamily: "Noto Sans TC", "Microsoft JhengHei", "PingFang TC", sans-serif;
  --FontFamilyEn: "Noto Sans TC", sans-serif;
  --FontFamilyTw: "Noto Sans TC", sans-serif;
  --FontSizePrimary: clamp(1.625rem, 1.2507rem + 0.7808vw, 2.5rem);
  --FontSizeSecondary: clamp(1.125rem, 0.9646rem + 0.3346vw, 1.5rem);
  --FontSizeItemTitle: clamp(1.0625rem, 0.9823rem + 0.1673vw, 1.25rem);
  --FontSizeHint: clamp(1rem, 0.8396rem + 0.3346vw, 1.375rem);
  --FontSizeBody: clamp(0.9375rem, 0.884rem + 0.1115vw, 1.0625rem);
  --FontSizeTitleDeco: clamp(1rem, 0.7861rem + 0.4462vw, 1.5rem);
  --FontSizeEnTitle: clamp(2.5rem, 1.1632rem + 2.7886vw, 5.625rem);
  --SectionPadding: clamp(4rem, 6vw, 8.75rem);
  --SectionTitleBottom: max(3vw, 2rem);
  --ItemPadding: max(2vw, 1.5rem);
  --CardPadding: max(3vw, 2rem);
  --BlockPadding: max(3vw, 2rem);
  --Space1: 1rem;
  --Space2: max(2vw, 1.5rem);
  --Space3: max(3vw, 2rem);
  --Space4: max(4vw, 2.5rem);
  --Space5: max(5vw, 3rem);
  --ContainerDefaultWidth: 85%;
  --BorderRadius: 6px;
  --TransformCenter: translateX(-50%) translateY(-50%);
  --TransformXCenter: translateX(-50%);
  --TransformYCenter: translateY(-50%);
  --SnsLine: #00873c;
  --SnsFB: #1877f2;
  --SnsMessenger: linear-gradient(20deg,
      rgba(0, 153, 255, 1) 0%,
      rgba(160, 51, 255, 1) 60%,
      rgba(255, 82, 128, 1) 90%,
      rgba(255, 112, 97, 1) 100%);
  --SnsYT: #ff0033;
  --SnsIG: linear-gradient(45deg,
      rgba(250, 225, 0, 1) 0%,
      rgba(252, 183, 32, 1) 15%,
      rgba(255, 121, 80, 1) 30%,
      rgba(255, 28, 116, 1) 50%,
      rgba(108, 28, 209, 1) 100%);
  --SnsTwitter: #000;
  --SnsShopee: #ed4c2f;
}

body {
  margin: 0;
  padding: 0;
  letter-spacing: normal;
  line-height: 1.75;
  font-size: 16px;
  color: var(--TextColorPrimary);
  font-family: var(--FontFamily);
  background: var(--BgColor);
  font-weight: 400;
}

.main-content {
  margin-top: 0;
  overflow: hidden;
}

.container-fluid {
  width: 100%;
  z-index: 1;
  position: relative;
  padding-inline: 0;
}

.container-95 {
  width: calc(var(--ContainerDefaultWidth) + 10%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-90 {
  width: calc(var(--ContainerDefaultWidth) + 5%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-85 {
  width: var(--ContainerDefaultWidth);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-80 {
  width: calc(var(--ContainerDefaultWidth) - 5%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-75 {
  width: calc(var(--ContainerDefaultWidth) - 10%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-70 {
  width: calc(var(--ContainerDefaultWidth) - 15%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-65 {
  width: calc(var(--ContainerDefaultWidth) - 25%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.container-60 {
  width: calc(var(--ContainerDefaultWidth) - 30%);
  margin: auto;
  z-index: 1;
  position: relative;
  max-width: calc(95% - 30px);
}

.section-spacing {
  padding: var(--SectionPadding) 0;
}

.section-spacing-top {
  padding-top: var(--SectionPadding);
}

.section-spacing-bottom {
  padding-bottom: var(--SectionPadding);
}

.section-title {
  position: relative;
}

.section-title-bottom {
  margin-bottom: var(--SectionTitleBottom);
}

.main-title {
  font-weight: 400;
  margin-top: 0rem;
  margin-bottom: 0;
  font-size: var(--FontSizePrimary);
  color: var(--TextColorTitle);
  line-height: 1.5;
  letter-spacing: 0.3em;
}

.sub-title {
  font-weight: 300;
  font-size: var(--FontSizeSecondary);
  line-height: 1.5;
  letter-spacing: 0.3em;
  color: var(--TextColorTitle);
}

.en-title {
  font-size: var(--FontSizeEnTitle);
  font-family: var(--FontFamilyEn);
  font-weight: 600;
  letter-spacing: -2px;
  line-height: 1.5;
}

p {
  font-size: var(--FontSizeBody);
}

.btn-group {
  display: flex;
}
.btn-group .btn-link {
  border: none;
  padding: 10px;
  width: var(--BtnWidth);
  height: var(--BtnHeight);
  border-radius: var(--BtnBorderRadius);
  font-size: var(--BtnFontSize);
  letter-spacing: 2px;
  margin-top: var(--BtnMarginTop);
  transition: background-color 0.3s, border-color 0.3s, color 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
}
.btn-group .main-btn {
  color: var(--BtnPrimaryTextColor);
  background-color: var(--BtnPrimaryBg);
}
.btn-group .sub-btn {
  color: var(--BtnSecondaryTextColor);
  background-color: var(--BtnSecondaryBg);
}
.btn-group .outline-btn {
  border: var(--BorderPrimary);
  background-color: var(--BtnOutlineBg);
  color: var(--BtnOutlineTextColor);
}
.btn-group .btn-icon {
  transition: var(--TransitionDefault);
  width: 23px;
}

.btn-group-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-group-right {
  display: flex;
  justify-content: flex-end;
}

.img-cover {
  width: 100%;
  height: 100%;
  max-width: unset;
  object-fit: cover;
}

.scroll-top {
  bottom: 100px;
}
.scroll-top[data-align=right] {
  right: 20px;
}
.scroll-top .scrolltop-btn {
  border: 0;
  color: white;
  width: 45px;
  border-radius: 0;
}
.scroll-top .scrolltop-btn-text {
  font-size: 13px;
  letter-spacing: 2px;
  color: #7b7b7b;
}

@media (hover: hover) and (pointer: fine) {
  .btn-group .main-btn:hover {
    color: var(--BtnPrimaryHoverTextColor);
    background-color: var(--BtnPrimaryHoverBg);
  }
  .btn-group .sub-btn:hover {
    color: var(--BtnSecondaryHoverTextColor);
    background-color: var(--BtnSecondaryHoverBg);
  }
  .btn-group .outline-btn:hover {
    border-color: var(--BtnOutlineHoverBg);
    background-color: var(--BtnOutlineHoverBg);
    color: var(--BtnOutlineHoverTextColor);
  }
}
.btn-group .main-btn:is(:active, :focus-visible) {
  color: var(--BtnPrimaryHoverTextColor);
  background-color: var(--BtnPrimaryHoverBg);
}
.btn-group .sub-btn:is(:active, :focus-visible) {
  color: var(--BtnSecondaryHoverTextColor);
  background-color: var(--BtnSecondaryHoverBg);
}
.btn-group .outline-btn:is(:active, :focus-visible) {
  border-color: var(--BtnOutlineHoverBg);
  background-color: var(--BtnOutlineHoverBg);
  color: var(--BtnOutlineHoverTextColor);
}

@media (max-width: 2048px) {
  :root {
    --ContainerDefaultWidth: 90%;
  }
}
@media (max-width: 1680px) {
  :root {
    --ContainerDefaultWidth: 95%;
  }
}
@media (max-width: 1440px) {
  :root {
    --BtnWidth: 220px;
    --ContainerDefaultWidth: 100%;
    --BtnHeight: 50px;
  }
}
@media (max-width: 1199px) {
  :root {
    --ContainerDefaultWidth: 105%;
  }
  .tpl-header_search_full .search-panel-inner {
    max-width: calc(95% - 30px);
  }
}
@media (max-width: 991px) {
  :root {
    --ContainerDefaultWidth: 110%;
  }
  .btn-group .btn-icon {
    width: 20px;
  }
  .main-title {
    letter-spacing: 2px;
  }
  .en-title {
    letter-spacing: -1px;
  }
}
@media (max-width: 850px) {
  :root {
    --ContainerDefaultWidth: 115%;
  }
}
@media (max-width: 650px) {
  :root {
    --BtnWidth: 100%;
  }
  .btn-group {
    width: 100%;
  }
  .sub-title,
  .main-title {
    letter-spacing: 2px;
  }
  .scroll-top[data-align=right] {
    right: 0px;
  }
}
html {
  --NaviHeight: 80px;
  --NaviStickyOffset: calc(var(--NaviHeight, 80px) + 1rem);
  --NaviTextColor: #ffffff;
  --NaviHoverTextColor: #b3540f;
  --NaviUpTextColor: #ffffff;
  --NaviUpHoverTextColor: #b3540f;
  --NaviUpBgColor: rgb(42 22 14 / 90%);
  --FontSizeNavi: clamp(0.9375rem, 0.7768rem + 0.1786vw, 1.0625rem);
  --NaviBtnPrimaryTextColor: #ffffff;
  --NaviBtnPrimaryBg: var(--SnsLine, #00873c);
  --NaviBtnPrimaryHoverTextColor: #ffffff;
  --NaviBtnPrimaryHoverBg: #006e31;
  --NaviBtnSecondaryTextColor: var(--BtnSecondaryTextColor, #ffffff);
  --NaviBtnSecondaryBg: var(--ColorSecondary, #3a1f14);
  --NaviBtnSecondaryHoverTextColor: var(--BtnSecondaryHoverTextColor, #ffffff);
  --NaviBtnSecondaryHoverBg: #000000;
  --NaviBtnWidth: 150px;
  --NaviBtnHeight: calc(var(--NaviHeight, 80px) - 30px);
}

body.is-locked {
  overflow: hidden;
}

.header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  display: flex;
  align-items: center;
  height: var(--NaviHeight, 80px);
  padding-inline: 24px;
  color: var(--NaviTextColor, #ffffff);
  transition: box-shadow 0.3s;
}
.header::before {
  position: absolute;
  inset: 0 0 auto;
  z-index: -1;
  height: 0;
  background: var(--NaviUpBgColor, rgba(42, 22, 14, 0.9));
  content: "";
  transition: height 0.3s;
}
.header.is-fixed, body:not(:is(.index-page, :has(.home-page))) .header {
  box-shadow: 0 0 50px rgba(0, 0, 0, 0.1);
}
.header.is-fixed::before, body:not(:is(.index-page, :has(.home-page))) .header::before {
  height: 100%;
}
.header .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.header .header-logo {
  display: flex;
  flex: none;
  align-items: center;
  margin-right: 36px;
}
.header .header-logo img {
  width: auto;
  height: calc(var(--NaviHeight, 80px) - 40px);
}
.header .header-menu {
  margin-left: auto;
}
.header .nav-list {
  display: flex;
  align-items: center;
  list-style: none;
}
.header .nav-item {
  position: relative;
  display: flex;
  align-items: center;
}
.header .nav-link {
  display: block;
  padding: 10px 20px 10px 5px;
  color: var(--NaviTextColor, #ffffff);
  font-size: var(--FontSizeNavi, 16px);
  letter-spacing: 2px;
  white-space: nowrap;
  transition: color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .header .nav-link:hover {
    color: var(--NaviHoverTextColor, #b3540f);
  }
}
.header .nav-link:is(:active, :focus-visible) {
  color: var(--NaviHoverTextColor, #b3540f);
}
.header .nav-link:not(:only-child) {
  position: relative;
  padding-right: 24px;
}
.header .nav-link:not(:only-child)::after {
  position: absolute;
  top: 50%;
  right: 9px;
  width: 6px;
  height: 6px;
  border: solid currentColor;
  border-width: 1px 1px 0 0;
  content: "";
  transform: translate(0, -70%) rotate(135deg);
  transition: transform 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .header .nav-item:hover > .nav-link {
    color: var(--NaviHoverTextColor, #b3540f);
  }
}
.header .nav-item.is-open > .nav-link::after {
  transform: translate(0, -20%) rotate(-45deg);
}
.header .submenu {
  position: absolute;
  top: calc(100% + 15px);
  left: 50%;
  width: 200px;
  background: var(--ColorSecondary, #3a1f14);
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-50%);
  transition: opacity 0.3s, visibility 0.3s;
}
.header .submenu::before {
  position: absolute;
  inset: auto 0 100%;
  height: 20px;
  content: "";
}
.header .nav-item:is(.is-open, :focus-within) > .submenu {
  opacity: 1;
  visibility: visible;
}
@media (hover: hover) and (pointer: fine) {
  .header .nav-item:hover > .submenu {
    opacity: 1;
    visibility: visible;
  }
}
.header .submenu-link {
  display: block;
  padding: 12px 20px;
  color: var(--NaviTextColor, #ffffff);
  font-size: var(--FontSizeNavi, 16px);
  letter-spacing: 0.1em;
  transition: color 0.3s, background-color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .header .submenu-link:hover {
    color: #ffffff;
    background: var(--ColorPrimary, #b3540f);
  }
}
.header .submenu-link:is(:active, :focus-visible) {
  color: #ffffff;
  background: var(--ColorPrimary, #b3540f);
}
.header .nav-link.is-active,
.header .is-active-parent > .nav-link {
  color: var(--NaviHoverTextColor, #b3540f);
}
.header .header-tools {
  position: relative;
  z-index: 2;
  display: flex;
  flex: none;
  align-items: center;
  margin-left: clamp(16px, 2vw, 40px);
}
.header .tool-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: var(--NaviTextColor, #ffffff);
  font-size: 0;
  transition: color 0.3s;
}
.header .tool-button::before {
  width: 22px;
  height: 22px;
  background: currentColor;
  content: "";
}
@media (hover: hover) and (pointer: fine) {
  .header .tool-button:hover {
    color: var(--NaviHoverTextColor, #b3540f);
  }
}
.header .tool-button:is(:active, :focus-visible) {
  color: var(--NaviHoverTextColor, #b3540f);
}
.header .search-open::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.header .inquiry-open::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
}
.header .inquiry-tool {
  position: relative;
}
.header .inquiry-count {
  position: absolute;
  top: 4px;
  right: 2px;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--ColorPrimary, #b3540f);
  font-size: 12px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
  pointer-events: none;
}
.header .inquiry-count[hidden] {
  display: none;
}
.header .menu-toggle {
  display: none;
}
.header .menu-toggle::before, .header .menu-toggle::after {
  position: absolute;
  left: 10px;
  width: 24px;
  height: 2px;
  background: currentColor;
  content: "";
  transition: top 0.3s, transform 0.3s, box-shadow 0.3s;
}
.header .menu-toggle::before {
  top: 14px;
  box-shadow: 0 7px 0 currentColor;
}
.header .menu-toggle::after {
  top: 28px;
}
.header .menu-toggle[aria-expanded=true]::before {
  top: 21px;
  box-shadow: none;
  transform: rotate(45deg);
}
.header .menu-toggle[aria-expanded=true]::after {
  top: 21px;
  transform: rotate(-45deg);
}
.header .search-panel {
  position: fixed;
  inset: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow-y: auto;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0s 0.3s;
}
.header .search-panel.is-open {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s, visibility 0s;
}
.header .search-inner {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  width: min(85%, 1080px);
  padding: 2.25rem 0;
}
.header .search-form {
  position: relative;
  display: flex;
  flex: 1;
  min-width: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  transition: border-color 0.3s;
}
.header .search-form:focus-within {
  border-color: #ffffff;
}
.header .search-input {
  flex: 1;
  min-width: 0;
  box-sizing: border-box;
  padding: 0.75rem 3.5rem 0.75rem 1rem;
  color: #ffffff;
  background: transparent;
  font-size: 18px;
}
.header .search-input::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.header .search-input:focus-visible {
  outline: none;
}
.header .search-submit,
.header .search-close {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 44px;
  height: 44px;
  color: #ffffff;
  font-size: 0;
  transition: opacity 0.3s;
}
.header .search-submit::before,
.header .search-close::before {
  width: 26px;
  height: 26px;
  background: currentColor;
  content: "";
}
@media (hover: hover) and (pointer: fine) {
  .header .search-submit:hover,
  .header .search-close:hover {
    opacity: 0.6;
  }
}
.header .search-submit:is(:active, :focus-visible),
.header .search-close:is(:active, :focus-visible) {
  opacity: 0.6;
}
.header .search-submit {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.header .search-submit::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.header .search-close::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") center/contain no-repeat;
}

@media (min-width: 1681px) {
  .header .nav-link {
    padding-left: 15px;
  }
}
@media (min-width: 1801px) {
  :root {
    --NaviHeight: 90px;
    --NaviBtnWidth: 175px;
    --NaviBtnHeight: calc(var(--NaviHeight, 90px) - 40px);
  }
  .header {
    padding-inline: 3%;
  }
  .header .submenu {
    top: calc(100% + 20px);
  }
}
@media (max-width: 1200px) {
  .header .header-menu {
    position: fixed;
    inset: 0;
    z-index: 1;
    margin-left: 0;
    background: rgba(0, 0, 0, 0);
    pointer-events: none;
    transition: background-color 0.3s;
  }
  .header .header-menu.is-open {
    background: rgba(0, 0, 0, 0.6);
    pointer-events: auto;
  }
  .header .header-nav {
    width: 100%;
    max-width: 400px;
    height: 100%;
    margin-left: auto;
    padding: var(--NaviHeight, 80px) 2rem 60px;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--ColorSecondary, #3a1f14);
    visibility: hidden;
    transform: translateX(100%);
    transition: transform 0.3s, visibility 0.3s;
  }
  .header .header-menu.is-open .header-nav {
    visibility: visible;
    transform: none;
  }
  .header .nav-list {
    flex-direction: column;
    align-items: stretch;
  }
  .header .nav-item {
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .header .nav-link {
    flex: 1;
    padding: 20px 5px;
  }
  .header .nav-link:not(:only-child)::after {
    right: 19px;
  }
  .header .evo-menu-toggle {
    position: absolute;
    top: 0;
    right: 0;
    width: 48px;
    height: 68px;
    background: transparent;
  }
  .header .submenu {
    position: static;
    flex-basis: 100%;
    width: auto;
    max-height: 0;
    overflow: hidden;
    background: transparent;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: max-height 0.3s;
  }
  .header .submenu::before {
    display: none;
  }
  .header .nav-item.is-open > .submenu {
    max-height: 1000px;
    padding-bottom: 1rem;
    transition: max-height 0.5s;
  }
  .header .submenu-link {
    padding: 12px 20px;
    font-size: 15px;
  }
  .header .header-tools {
    margin-left: auto;
  }
  .header .menu-toggle {
    display: flex;
  }
}
@media (max-width: 767px) {
  :root {
    --NaviHeight: 64px;
  }
  .header {
    padding-inline: 16px;
  }
  .header .header-logo {
    margin-right: auto;
  }
  .header .header-logo img {
    height: 36px;
  }
}
.footer {
  padding-top: clamp(56px, 5vw, 96px);
  background: #f1f1f1;
}
.footer .footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1.3fr);
  gap: 48px;
}
.footer .footer-title {
  margin-bottom: 18px;
  color: var(--ColorPrimary, #b3540f);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.footer .footer-logo {
  width: auto;
  max-width: 100%;
  height: clamp(58px, 44.7px + 1.74vw, 78px);
  margin-bottom: 20px;
  object-fit: contain;
  object-position: 0 50%;
}
.footer .description {
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 16px;
  line-height: 1.75;
}
.footer .footer-nav {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  gap: 0 48px;
  list-style: none;
}
.footer .footer-link,
.footer .contact-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--TextColorPrimary, #2a2a2a);
  transition: color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .footer .footer-link:hover,
  .footer .contact-link:hover {
    color: var(--ColorPrimary, #b3540f);
  }
}
.footer .footer-link:is(:active, :focus-visible),
.footer .contact-link:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
}
.footer .contact-list {
  list-style: none;
}
.footer .contact-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 6px;
  line-height: 1.75;
}
.footer .contact-item::before {
  flex: none;
  width: 20px;
  height: 20px;
  margin-top: 4px;
  background: var(--ColorPrimary, #b3540f);
  content: "";
}
.footer .icon-phone::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.footer .icon-mail::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E") center/contain no-repeat;
}
.footer .icon-clock::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E") center/contain no-repeat;
}
.footer .contact-link {
  margin: -10px 0;
}
.footer .no-wrap {
  white-space: nowrap;
}
.footer .footer-btn-box {
  display: flex;
}
.footer .footer-btn-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: min(100%, 250px);
  min-height: 58px;
  margin-top: 20px;
  padding: 10px 20px;
  border: 1px solid var(--SnsLine, #00873c);
  border-radius: 2px;
  color: var(--SnsLine, #00873c);
  background: transparent;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 2px;
  transition: color 0.3s, background-color 0.3s;
}
.footer .footer-btn-link .line-icon {
  flex: none;
  width: 26px;
  height: 26px;
  background: currentColor;
  -webkit-mask: url("../image/line-01.webp") center/contain no-repeat;
  mask: url("../image/line-01.webp") center/contain no-repeat;
}
@media (hover: hover) and (pointer: fine) {
  .footer .footer-btn-link:hover {
    color: #ffffff;
    background: var(--SnsLine, #00873c);
  }
}
.footer .footer-btn-link:is(:active, :focus-visible) {
  color: #ffffff;
  background: var(--SnsLine, #00873c);
}
.footer .copyright-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 24px;
  margin-top: clamp(48px, 4vw, 72px);
  padding: 24px 0;
  border-top: var(--BorderPrimary, 1px solid #dcdcdc);
  color: var(--TextColorSecondary, #5e5e5e);
  font-size: 16px;
}
.footer .copyright-text {
  display: flex;
  align-items: center;
  gap: 0.35em;
}
.footer .copyright-link {
  display: inline-block;
  margin: -10px 0;
  padding: 10px 0;
  color: var(--TextColorPrimary, #2a2a2a);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .footer .copyright-link:hover {
    color: var(--ColorPrimary, #b3540f);
  }
}
.footer .copyright-link:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
}

.tpl-line-float {
  position: fixed;
  top: calc(50% + 16px);
  right: 16px;
  z-index: 40;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 46px;
  padding: 14px 0 16px;
  border-radius: 12px;
  color: #ffffff;
  background: var(--SnsLine, #00873c);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s;
}
.tpl-line-float .line-float-icon {
  display: none;
  flex: none;
  width: 22px;
  height: 22px;
  background: currentColor;
  -webkit-mask: url("../image/line-01.webp") center/contain no-repeat;
  mask: url("../image/line-01.webp") center/contain no-repeat;
}
.tpl-line-float .line-float-label {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
}
.tpl-line-float .line-float-text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.25em;
  writing-mode: vertical-rl;
}
@media (hover: hover) and (pointer: fine) {
  .tpl-line-float:hover {
    color: #ffffff;
    background: #006e31;
  }
}
.tpl-line-float:is(:active, :focus-visible) {
  color: #ffffff;
  background: #006e31;
}

.tpl-back-to-top {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 40;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ColorSecondary, #3a1f14);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
  font-size: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s, visibility 0.15s, background-color 0.15s;
}
.tpl-back-to-top::before {
  width: 22px;
  height: 22px;
  background: currentColor;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 7-7 7 7'/%3E%3Cpath d='M12 19V5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 7-7 7 7'/%3E%3Cpath d='M12 19V5'/%3E%3C/svg%3E") center/contain no-repeat;
}
.tpl-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
}
@media (hover: hover) and (pointer: fine) {
  .tpl-back-to-top:hover {
    background: #000000;
  }
}
.tpl-back-to-top:is(:active, :focus-visible) {
  background: #000000;
}

.inquiry-panel {
  position: fixed;
  inset: 0;
  z-index: 80;
  color: var(--TextColorPrimary, #2a2a2a);
}
.inquiry-panel[hidden] {
  display: none;
}
.inquiry-panel .inquiry-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
}
.inquiry-panel .inquiry-box {
  position: absolute;
  inset: 0 0 0 auto;
  display: flex;
  flex-direction: column;
  width: min(450px, 100%);
  padding: 0 clamp(20px, 2.4vw, 40px);
  background: #f7f7f7;
  animation: inquiry-enter 0.3s ease;
}
.inquiry-panel .inquiry-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: var(--NaviHeight, 80px);
  padding: 12px 0;
  border-bottom: var(--BorderPrimary, 1px solid #dcdcdc);
}
.inquiry-panel .inquiry-title {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.inquiry-panel .inquiry-close {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 0;
  transition: color 0.15s, background-color 0.15s;
}
.inquiry-panel .inquiry-close::before {
  width: 22px;
  height: 22px;
  background: currentColor;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") center/contain no-repeat;
}
@media (hover: hover) and (pointer: fine) {
  .inquiry-panel .inquiry-close:hover {
    color: var(--ColorPrimary, #b3540f);
    background: #f1f1f1;
  }
}
.inquiry-panel .inquiry-close:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
  background: #f1f1f1;
}
.inquiry-panel .inquiry-list {
  flex: 1;
  padding: 16px 0;
  overflow: auto;
  list-style: none;
}
.inquiry-panel .inquiry-list:empty::before {
  display: block;
  padding: 40px 0;
  color: var(--TextColorSecondary, #5e5e5e);
  text-align: center;
  content: "詢問車目前是空的。";
}
.inquiry-panel .query-item {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 20px;
  padding: 16px 0;
  border-bottom: var(--BorderPrimary, 1px solid #dcdcdc);
}
.inquiry-panel .query-item__thumb {
  display: block;
  aspect-ratio: 1;
  overflow: hidden;
  background: #ffffff;
}
.inquiry-panel .query-item__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.inquiry-panel .query-item__name {
  padding: 6px 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
.inquiry-panel .query-item__category {
  color: var(--TextColorSecondary, #5e5e5e);
  font-size: 16px;
  line-height: 1.5;
}
.inquiry-panel .query-item__category:empty {
  display: none;
}
.inquiry-panel .query-item__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 6px;
  color: var(--TextColorSecondary, #5e5e5e);
}
.inquiry-panel .query-item__remove {
  min-height: 44px;
  color: var(--TextColorPrimary, #2a2a2a);
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: color 0.15s;
}
@media (hover: hover) and (pointer: fine) {
  .inquiry-panel .query-item__remove:hover {
    color: var(--ColorPrimary, #b3540f);
  }
}
.inquiry-panel .query-item__remove:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
}
.inquiry-panel .inquiry-footer {
  padding: 20px 0 28px;
  border-top: var(--BorderPrimary, 1px solid #dcdcdc);
}
.inquiry-panel .inquiry-footer .btn-link {
  width: 100%;
  height: 52px;
  margin-top: 0;
  border-radius: 0;
  cursor: pointer;
}
.inquiry-panel .inquiry-list:empty + .inquiry-footer {
  display: none;
}

@keyframes inquiry-enter {
  from {
    transform: translateX(100%);
  }
}
.cookie-notice {
  position: fixed;
  right: 50px;
  bottom: 50px;
  z-index: 9999;
  width: 420px;
  max-width: calc(100% - 32px);
  padding: var(--CardPadding, max(3vw, 2rem));
  border-radius: var(--BorderRadius, 2em);
  color: #ffffff;
  background: #1e1b18;
  font-size: var(--FontSizeBody, 16px);
  line-height: 1.8;
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
}
.cookie-notice.is-visible {
  opacity: 1;
  visibility: visible;
  transform: none;
}
.is-locked .cookie-notice.is-visible {
  opacity: 0;
  visibility: hidden;
}
.cookie-notice .privacy-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cookie-notice .btn-group {
  justify-content: center;
  margin-top: var(--Space2, max(2vw, 1.5rem));
}
.cookie-notice .cookie-notice-btn {
  width: 250px;
  height: 60px;
  border: 1px solid #a1a1a1;
  border-radius: 2px;
  color: #ffffff;
  background: transparent;
  font-size: 17px;
  cursor: pointer;
  transition: color 0.3s, background-color 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .cookie-notice .cookie-notice-btn:hover {
    color: #000000;
    background: #ffffff;
  }
}
.cookie-notice .cookie-notice-btn:is(:active, :focus-visible) {
  color: #000000;
  background: #ffffff;
}

@media (prefers-reduced-motion: reduce) {
  .inquiry-panel .inquiry-box {
    animation: none;
  }
  .cookie-notice {
    transition: none;
  }
}
@media (max-width: 1440px) {
  .cookie-notice .cookie-notice-btn {
    width: 220px;
    height: 50px;
  }
}
@media (max-width: 1024px) {
  .cookie-notice {
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: none;
    border-radius: 0;
    text-align: center;
  }
}
@media (max-width: 1023px) {
  .footer .footer-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .footer .footer-brand {
    grid-column: 1/-1;
  }
}
@media (max-width: 767px) {
  .footer .footer-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
  }
  body {
    padding-bottom: 56px;
  }
  .tpl-back-to-top {
    right: 16px;
    bottom: 72px;
  }
  .tpl-line-float {
    inset: auto 0 0;
    flex-direction: row;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 56px;
    padding: 0;
    border-radius: 0;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
  }
  .tpl-line-float .line-float-icon {
    display: block;
  }
  .tpl-line-float .line-float-label {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
  }
  .tpl-line-float .line-float-text {
    font-size: 16px;
    letter-spacing: 0.1em;
    writing-mode: horizontal-tb;
  }
  .inquiry-panel .query-item {
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 14px;
  }
  .cookie-notice {
    bottom: 56px;
  }
}
@media (max-width: 650px) {
  .footer .footer-btn-link {
    width: 100%;
  }
}
@media (max-width: 576px) {
  .cookie-notice .cookie-notice-btn {
    width: 100%;
  }
}
.tpl-page-heading {
  padding: calc(var(--NaviHeight, 80px) + clamp(40px, 4vw, 80px)) 0 clamp(40px, 4vw, 76px);
  text-align: center;
}
.tpl-page-heading .main-title {
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: clamp(28px, 3vw, 56px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.04em;
}
.tpl-page-heading .sub-title {
  margin-top: 18px;
  color: var(--TextColorSecondary, #5e5e5e);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: normal;
}
.tpl-page-heading .breadcrumb-list {
  overflow: hidden;
  margin-top: 6px;
  padding: 6px;
  color: var(--TextColorSecondary, #5e5e5e);
  font-size: 16px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  list-style: none;
}
.tpl-page-heading .breadcrumb-item {
  display: inline;
}
.tpl-page-heading .breadcrumb-item[hidden] {
  display: none;
}
.tpl-page-heading .breadcrumb-item[aria-current] {
  color: var(--TextColorPrimary, #2a2a2a);
}
.tpl-page-heading .breadcrumb-sep {
  display: inline;
}
.tpl-page-heading .breadcrumb-sep::before {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin: 0 6px;
  background: currentColor;
  content: "";
  opacity: 0.6;
  vertical-align: -0.15em;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.tpl-page-heading .breadcrumb-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: unset;
  vertical-align: bottom;
  color: var(--TextColorSecondary, #5e5e5e);
  transition: color 0.15s;
}
@media (hover: hover) and (pointer: fine) {
  .tpl-page-heading .breadcrumb-link:hover {
    color: var(--ColorPrimary, #b3540f);
  }
}
.tpl-page-heading .breadcrumb-link:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
}

.side-layout {
  display: grid;
  grid-template-columns: minmax(0, 260px) minmax(0, 1fr);
  align-items: start;
  gap: clamp(32px, 4vw, 80px);
}
.side-layout .side-menu {
  position: sticky;
  top: calc(var(--NaviHeight, 80px) + 24px);
}
.side-layout .side-toggle {
  display: none;
}
.side-layout .side-title {
  padding: 14px 20px;
  border-top: 3px solid var(--ColorPrimary, #b3540f);
  background: #f1f1f1;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.side-layout .side-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 0 20px;
  border-bottom: var(--BorderPrimary, 1px solid #dcdcdc);
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 16px;
  transition: color 0.15s, background-color 0.15s;
}
.side-layout .side-link::after {
  flex: none;
  width: 16px;
  height: 16px;
  background: var(--TextColorSecondary, #5e5e5e);
  content: "";
  transition: transform 0.15s, background-color 0.15s;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.side-layout .side-link.is-active {
  color: var(--ColorPrimary, #b3540f);
  background: #ffffff;
  box-shadow: inset 3px 0 0 var(--ColorPrimary, #b3540f);
  font-weight: 700;
}
.side-layout .side-link.is-active::after {
  background: var(--ColorPrimary, #b3540f);
}
@media (hover: hover) and (pointer: fine) {
  .side-layout .side-link:hover {
    color: var(--ColorPrimary, #b3540f);
  }
  .side-layout .side-link:hover::after {
    transform: translateX(3px);
  }
}
.side-layout .side-link:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
}

.product-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 32px);
}
.product-list.is-wide {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.product-list .product-item {
  display: flex;
  flex-direction: column;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  color: var(--TextColorPrimary, #2a2a2a);
  transition: border-color 0.15s;
}
.product-list .product-item[hidden] {
  display: none;
}
@media (hover: hover) and (pointer: fine) {
  .product-list .product-item:hover {
    border-color: var(--ColorPrimary, #b3540f);
    color: var(--TextColorPrimary, #2a2a2a);
  }
  .product-list .product-item:hover .product-image img {
    transform: scale(1.04);
  }
  .product-list .product-item:hover .product-name {
    color: var(--ColorPrimary, #b3540f);
  }
}
.product-list .product-item:is(:active, :focus-visible) {
  border-color: var(--ColorPrimary, #b3540f);
}
.product-list .product-item:is(:active, :focus-visible) .product-name {
  color: var(--ColorPrimary, #b3540f);
}
.product-list .product-image {
  display: block;
  aspect-ratio: 1/1;
  overflow: clip;
  background: #ffffff;
}
.product-list .product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.product-list .product-image.is-contain img {
  padding: 8%;
  object-fit: contain;
}
.product-list .product-name {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  min-height: 3.6em;
  padding: 12px 16px;
  background: #f1f1f1;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  transition: color 0.15s;
}

:is(.text-body, .tpl-text-page) h2 {
  margin-top: 2em;
  font-size: clamp(20px, 1.4vw, 24px);
  font-weight: 700;
  line-height: 1.5;
}
:is(.text-body, .tpl-text-page) h3 {
  margin-top: 1.5em;
  font-size: 18px;
  font-weight: 700;
}
:is(.text-body, .tpl-text-page) p,
:is(.text-body, .tpl-text-page) ul,
:is(.text-body, .tpl-text-page) ol {
  margin-top: 1em;
}
:is(.text-body, .tpl-text-page) ul,
:is(.text-body, .tpl-text-page) ol {
  padding-left: 1.5em;
}
:is(.text-body, .tpl-text-page) a {
  color: var(--ColorPrimary, #b3540f);
  text-decoration: underline;
  text-underline-offset: 3px;
}
:is(.text-body, .tpl-text-page) > :first-child {
  margin-top: 0;
}

.tpl-news-article p {
  font-size: clamp(16px, 1.1vw, 18px);
  line-height: 1.95;
}
.tpl-news-article p + p {
  margin-top: 1em;
}
.tpl-news-article figure {
  margin: clamp(24px, 2.4vw, 40px) 0;
  padding: 0;
}
.tpl-news-article figure img {
  width: 100%;
  height: auto;
  max-height: unset;
}

[data-evo-list]:not(:empty) ~ [data-evo-empty] {
  display: none;
}

.empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 56px 24px;
  border: 2px dashed #dcdcdc;
  color: var(--TextColorSecondary, #5e5e5e);
  text-align: center;
}
.empty-state[hidden] {
  display: none;
}
.empty-state::before {
  width: 40px;
  height: 40px;
  background: currentColor;
  content: "";
}
.empty-state.icon-box::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7.5 4.27 9 5.15'/%3E%3Cpath d='M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z'/%3E%3Cpath d='m3.3 7 8.7 5 8.7-5'/%3E%3Cpath d='M12 22V12'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7.5 4.27 9 5.15'/%3E%3Cpath d='M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z'/%3E%3Cpath d='m3.3 7 8.7 5 8.7-5'/%3E%3Cpath d='M12 22V12'/%3E%3C/svg%3E") center/contain no-repeat;
}
.empty-state.icon-search::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.empty-state.icon-inquiry::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
}
.empty-state .btn-link {
  margin-top: 0;
}

.btn-group .outline-btn {
  border-color: var(--ColorSecondary, #3a1f14);
}
.btn-group .line-btn {
  color: #ffffff;
  background: var(--SnsLine, #00873c);
}
@media (hover: hover) and (pointer: fine) {
  .btn-group .line-btn:hover {
    color: #ffffff;
    background: #006e31;
  }
}
.btn-group .line-btn:is(:active, :focus-visible) {
  color: #ffffff;
  background: #006e31;
}
.btn-group .btn-link:is(.icon-previous, .icon-message, .icon-inquiry)::before {
  flex: none;
  width: 20px;
  height: 20px;
  background: currentColor;
  content: "";
}
.btn-group .icon-previous::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.btn-group .icon-message::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.9 20A9 9 0 1 0 4 16.1L2 22Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.9 20A9 9 0 1 0 4 16.1L2 22Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.btn-group .icon-inquiry::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
}
.btn-group .btn-link:disabled {
  cursor: not-allowed;
  opacity: 0.4;
}

.form-field + .form-field {
  margin-top: 20px;
}
.form-field .form-label {
  display: block;
  margin-bottom: 8px;
  font-weight: 500;
}
.form-field .required-mark {
  color: var(--ColorPrimary, #b3540f);
}
.form-field .form-input {
  width: 100%;
  min-height: 52px;
  padding: 12px 16px;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  border-radius: var(--BorderRadius, 6px);
  background: #ffffff;
  font-size: 16px;
  transition: border-color 0.15s;
}
.form-field .form-input:focus-visible {
  border-color: var(--ColorPrimary, #b3540f);
  outline: none;
}

.qty-control {
  display: inline-flex;
  align-items: stretch;
  width: max-content;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  border-radius: var(--BorderRadius, 6px);
  background: #ffffff;
}
.qty-control .qty-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-height: 44px;
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 0;
  transition: color 0.15s, background-color 0.15s;
}
.qty-control .qty-button::before {
  width: 18px;
  height: 18px;
  background: currentColor;
  content: "";
}
@media (hover: hover) and (pointer: fine) {
  .qty-control .qty-button:hover {
    color: var(--ColorPrimary, #b3540f);
    background: #f1f1f1;
  }
}
.qty-control .qty-button:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
  background: #f1f1f1;
}
.qty-control .qty-minus::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;
}
.qty-control .qty-plus::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M12 5v14'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='M12 5v14'/%3E%3C/svg%3E") center/contain no-repeat;
}
.qty-control .qty-input {
  width: 64px;
  border-inline: var(--BorderPrimary, 1px solid #dcdcdc);
  font-size: 16px;
  text-align: center;
}

:is(.tpl-search, .tpl-inquiry-list) .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

@media (min-width: 1920px) {
  .product-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .product-list.is-wide {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .product-list .product-image img {
    transition: none;
  }
}
@media (max-width: 1023px) {
  .side-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .side-layout .side-menu {
    position: relative;
    top: auto;
    z-index: 5;
  }
  .side-layout .side-title {
    display: none;
  }
  .side-layout .side-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 52px;
    padding: 0 20px;
    border: var(--BorderPrimary, 1px solid #dcdcdc);
    border-top: 3px solid var(--ColorPrimary, #b3540f);
    color: var(--TextColorPrimary, #2a2a2a);
    background: #f1f1f1;
    font-size: 16px;
    font-weight: 700;
    text-align: left;
  }
  .side-layout .side-toggle::after {
    flex: none;
    width: 18px;
    height: 18px;
    background: currentColor;
    content: "";
    transition: transform 0.15s;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .side-layout .side-toggle[aria-expanded=true]::after {
    transform: rotate(180deg);
  }
  .side-layout .side-nav {
    position: absolute;
    inset: 100% 0 auto;
    display: none;
    max-height: 60vh;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: var(--BorderPrimary, 1px solid #dcdcdc);
    border-top: 0;
    background: #ffffff;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
  }
  .side-layout .side-menu.is-open .side-nav {
    display: block;
  }
  .side-layout .side-link:last-child {
    border-bottom: 0;
  }
  .product-list.is-wide {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .product-list,
  .product-list.is-wide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }
  .product-list .product-name {
    padding: 10px 8px;
    font-size: 16px;
  }
}
.side-layout > .tpl-leftmenu001 {
  position: sticky;
  top: calc(var(--NaviHeight, 80px) + 24px);
  z-index: 5;
}

.main-content:has(> .tpl-leftmenu001) {
  --SystemGap: clamp(32px, 4vw, 80px);
  --SystemContainer: min(calc(var(--ContainerDefaultWidth, 85%) - 15%), calc(95% - 30px));
  display: grid;
  grid-template-columns: [full-start] minmax(0, 1fr) [menu-start] 260px [menu-end] var(--SystemGap) [content-start] minmax(0, calc(var(--SystemContainer) - 260px - var(--SystemGap))) [content-end] minmax(0, 1fr) [full-end];
  align-items: start;
}
.main-content:has(> .tpl-leftmenu001) > .tpl-leftmenu001 {
  position: sticky;
  top: calc(var(--NaviHeight, 80px) + 24px);
  z-index: 5;
  grid-row: 2;
  grid-column: menu;
}
.main-content:has(> .tpl-leftmenu001) > .inner-page {
  display: contents;
}
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-page-heading {
  grid-row: 1;
  grid-column: full;
}
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-list,
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-detail {
  grid-row: 2;
  grid-column: content;
}
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-list .container-70,
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-detail .container-70 {
  width: 100%;
  max-width: none;
}
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-list .side-layout,
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-detail .side-layout {
  display: block;
}
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-list .side-layout > :is(.tpl-leftmenu001, .side-menu),
.main-content:has(> .tpl-leftmenu001) > .inner-page > .tpl-product-detail .side-layout > :is(.tpl-leftmenu001, .side-menu) {
  display: none;
}
.main-content:has(> .tpl-leftmenu001):has(> .sd-detail) {
  padding-top: calc(var(--NaviHeight, 80px) + clamp(40px, 4vw, 80px));
}
.main-content:has(> .tpl-leftmenu001):has(> .sd-detail) > .tpl-leftmenu001 {
  grid-row: 1;
}
.main-content:has(> .tpl-leftmenu001) > .sd-detail {
  grid-row: 1;
  grid-column: content;
  justify-self: stretch;
  width: auto;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 0 0 var(--SectionSpacing, clamp(60px, 6vw, 120px));
}

.main-content .tpl-leftmenu001.tpl-model {
  display: block;
  width: 100%;
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-container {
  position: relative;
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-dropdown-trigger {
  display: none;
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-title {
  margin: 0;
  padding: 14px 20px;
  border: 0;
  border-top: 3px solid var(--ColorPrimary, #b3540f);
  color: var(--TextColorPrimary, #2a2a2a);
  background: #f1f1f1;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.main-content .tpl-leftmenu001.tpl-model .left-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-item {
  position: relative;
  margin: 0;
  padding: 0;
  border-bottom: var(--BorderPrimary, 1px solid #dcdcdc);
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-item.is-active > .tpl-leftmenu001-link {
  color: var(--ColorPrimary, #b3540f);
  background: #ffffff;
  box-shadow: inset 3px 0 0 var(--ColorPrimary, #b3540f);
  font-weight: 700;
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-item.is-active > .tpl-leftmenu001-link::after {
  background: var(--ColorPrimary, #b3540f);
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 0 20px;
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 16px;
  line-height: 1.5;
  transition: color 0.15s, background-color 0.15s;
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-link::after {
  flex: none;
  width: 16px;
  height: 16px;
  background: var(--TextColorSecondary, #5e5e5e);
  content: "";
  transition: transform 0.15s, background-color 0.15s;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
@media (hover: hover) and (pointer: fine) {
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-link:hover {
    color: var(--ColorPrimary, #b3540f);
    background: transparent;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-link:hover::after {
    transform: translateX(3px);
  }
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-link:is(:active, :focus-visible) {
  color: var(--ColorPrimary, #b3540f);
}
.main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-item:not(.has-child) > .tpl-leftmenu001-toggle {
  display: none;
}

.main-content .tpl-product-detail001.tpl-model.template-wrapper {
  --PdGap: clamp(24px, 3vw, 56px);
  --PdImageRadius: 0;
  --PdThumbRadius: 0;
  --PdImagePlaceholder: #ffffff;
  --PdLine: #dcdcdc;
  --PdText: var(--TextColorPrimary, #2a2a2a);
  --PdTextSub: var(--TextColorSecondary, #5e5e5e);
  --PdNavSize: 44px;
  --swiper-navigation-sides-offset: 12px;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: var(--PdGap);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-body {
  display: contents;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-gallery {
  position: relative;
  flex: 0 0 calc(50% - var(--PdGap) / 2);
  width: calc(50% - var(--PdGap) / 2);
  min-width: 0;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-gallery-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-main {
  position: relative;
  width: 100%;
  overflow: hidden;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  border-radius: 0;
  background: #ffffff;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-main-link {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 1/1;
  background: #ffffff;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-main-link img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-nav {
  width: 44px;
  height: 44px;
  margin-top: -22px;
  padding: 14px;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: var(--TextColorPrimary, #2a2a2a);
  background: rgba(255, 255, 255, 0.9);
  transition: background-color 0.15s, color 0.15s, border-color 0.15s, opacity 0.15s;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-nav.swiper-button-disabled {
  opacity: 0.3;
}
@media (hover: hover) and (pointer: fine) {
  .main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-nav:hover:not(.swiper-button-disabled) {
    border-color: var(--ColorSecondary, #3a1f14);
    color: #ffffff;
    background: var(--ColorSecondary, #3a1f14);
  }
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-nav:is(:active, :focus-visible):not(.swiper-button-disabled) {
  border-color: var(--ColorSecondary, #3a1f14);
  color: #ffffff;
  background: var(--ColorSecondary, #3a1f14);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs {
  width: 100%;
  padding-top: 12px;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs[hidden] {
  display: none;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs .swiper-slide {
  aspect-ratio: 1/1;
  height: auto;
  overflow: hidden;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  border-radius: 0;
  opacity: 1;
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (hover: hover) and (pointer: fine) {
  .main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs .swiper-slide:hover {
    border-color: var(--ColorPrimary, #b3540f);
  }
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs:not(.swiper-initialized) .swiper-slide {
  width: calc((100% - 36px) / 4);
  margin-right: 12px;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-thumbs .swiper-slide-thumb-active {
  border-color: var(--ColorPrimary, #b3540f);
  box-shadow: 0 0 0 1px var(--ColorPrimary, #b3540f);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-info {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
  padding: clamp(24px, 2.4vw, 40px);
  background: #f1f1f1;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="1"] {
  order: 1;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="2"] {
  order: 2;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="3"] {
  order: 3;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="4"] {
  order: 4;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="5"] {
  order: 5;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="6"] {
  order: 6;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="7"] {
  order: 7;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="8"] {
  order: 8;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper [data-pdorder="9"] {
  order: 9;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-block {
  width: 100%;
  margin-bottom: 0;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-name {
  margin: 0 0 clamp(18px, 1.6vw, 28px);
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: clamp(24px, 2vw, 34px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: normal;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-price:empty {
  display: none;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-desc,
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-text-blocks {
  margin-top: clamp(20px, 2vw, 28px);
  padding-top: 20px;
  border-top: var(--BorderPrimary, 1px solid #dcdcdc);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-sub-title,
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-text-title {
  margin-bottom: 8px;
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: normal;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-desc-text,
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-text-body {
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 16px;
  line-height: 1.75;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-desc-text {
  white-space: pre-line;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-desc:has(.tpl-product-detail001-desc-text:empty) {
  display: none;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-more {
  color: var(--ColorPrimary, #b3540f);
  font-size: 16px;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-row {
  display: grid;
  grid-template-columns: 4.5em minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin-top: clamp(20px, 2vw, 28px);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-field-label {
  width: auto;
  padding: 0;
  color: var(--TextColorSecondary, #5e5e5e);
  font-size: 16px;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty {
  display: inline-flex;
  align-items: stretch;
  width: max-content;
  padding: 0;
  overflow: hidden;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  border-radius: var(--BorderRadius, 6px);
  background: #ffffff;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-btn {
  width: 44px;
  height: 44px;
  border: 0;
  color: var(--TextColorPrimary, #2a2a2a);
  background: #ffffff;
  font-size: 18px;
  cursor: pointer;
  transition: color 0.15s, background-color 0.15s;
}
@media (hover: hover) and (pointer: fine) {
  .main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-btn:hover {
    color: var(--ColorPrimary, #b3540f);
    background: #f7f7f7;
  }
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-btn:focus-visible {
  color: var(--ColorPrimary, #b3540f);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-input {
  width: 64px;
  height: 44px;
  border: 0;
  border-inline: var(--BorderPrimary, 1px solid #dcdcdc);
  color: var(--TextColorPrimary, #2a2a2a);
  font-size: 16px;
  text-align: center;
  -moz-appearance: textfield;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-input::-webkit-inner-spin-button, .main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-qty-input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-btn-links {
  display: flex;
  margin-top: var(--BtnMarginTop, 24px);
  padding-top: 0;
  border-top: 0;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-link-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: var(--BtnWidth, 250px);
  max-width: 100%;
  height: var(--BtnHeight, 52px);
  padding: 0 24px;
  border-radius: var(--BtnBorderRadius, 999px);
  color: var(--BtnPrimaryTextColor, #ffffff);
  background: var(--BtnPrimaryBg, #b3540f);
  font-size: var(--BtnFontSize, 16px);
  cursor: pointer;
  transition: color 0.3s, background-color 0.3s;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-link-btn svg {
  display: none;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-link-btn::before {
  flex: none;
  width: 20px;
  height: 20px;
  background: currentColor;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
}
@media (hover: hover) and (pointer: fine) {
  .main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-link-btn:hover {
    color: var(--BtnPrimaryHoverTextColor, #ffffff);
    background: var(--BtnPrimaryHoverBg, #3a1f14);
  }
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-link-btn:is(:active, :focus-visible) {
  color: var(--BtnPrimaryHoverTextColor, #ffffff);
  background: var(--BtnPrimaryHoverBg, #3a1f14);
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .note-list {
  list-style: none;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .note-list li {
  position: relative;
  padding-left: 1.2em;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .note-list li + li {
  margin-top: 8px;
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .note-list li::before {
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ColorPrimary, #b3540f);
  content: "";
}
.main-content .tpl-product-detail001.tpl-model.template-wrapper .note-list li:empty {
  display: none;
}

:is(.tpl-product-detail001, .sd-detail) .product-specs {
  order: 2;
}

.spec-table {
  width: 100%;
  margin-bottom: 20px;
  border-collapse: collapse;
  background: #ffffff;
}
.spec-table caption {
  padding-bottom: 10px;
  font-weight: 700;
  text-align: left;
}
.spec-table th,
.spec-table td {
  padding: 10px 16px;
  border: var(--BorderPrimary, 1px solid #dcdcdc);
  text-align: left;
}
.spec-table thead th {
  border-color: var(--ColorSecondary, #3a1f14);
  color: #ffffff;
  background: var(--ColorSecondary, #3a1f14);
  font-weight: 500;
}
.spec-table td:last-child {
  color: var(--ColorPrimary, #b3540f);
  font-weight: 700;
}

.spec-row {
  display: grid;
  grid-template-columns: max-content auto;
  gap: 12px;
  padding: 1rem 0;
  border-bottom: var(--BorderPrimary, 1px solid #dcdcdc);
}
.spec-row:last-of-type {
  border-bottom: 0;
  padding-bottom: 0;
}
.spec-row dt {
  color: var(--TextColorSecondary, #5e5e5e);
}
.spec-row.is-price dd {
  color: var(--ColorPrimary, #b3540f);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
}

.product-note {
  margin-top: 12px;
}

@media (max-width: 1199px) {
  .side-layout:has(> .tpl-leftmenu001) {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .side-layout:has(> .tpl-leftmenu001) > .tpl-leftmenu001 {
    position: relative;
    top: auto;
  }
  .main-content:has(> .tpl-leftmenu001) {
    grid-template-columns: [full-start] minmax(0, 1fr) [menu-start content-start] var(--SystemContainer) [menu-end content-end] minmax(0, 1fr) [full-end];
  }
  .main-content:has(> .tpl-leftmenu001) > .tpl-leftmenu001 {
    position: relative;
    top: auto;
    margin-bottom: 24px;
  }
  .main-content:has(> .tpl-leftmenu001) > .inner-page > :is(.tpl-product-list, .tpl-product-detail) {
    grid-row: 3;
  }
  .main-content:has(> .tpl-leftmenu001):has(> .sd-detail) > .sd-detail {
    grid-row: 2;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-dropdown-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 52px;
    padding: 0 20px;
    border: var(--BorderPrimary, 1px solid #dcdcdc);
    border-top: 3px solid var(--ColorPrimary, #b3540f);
    color: var(--TextColorPrimary, #2a2a2a);
    background: #f1f1f1;
    font-size: 16px;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-dropdown-trigger svg {
    display: none;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-dropdown-trigger::after {
    flex: none;
    width: 18px;
    height: 18px;
    background: currentColor;
    content: "";
    transition: transform 0.15s;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-dropdown-label {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-title {
    display: none;
  }
  .main-content .tpl-leftmenu001.tpl-model .left-menu {
    position: absolute;
    inset: 100% 0 auto;
    z-index: 100;
    display: none;
    max-height: 60vh;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: var(--BorderPrimary, 1px solid #dcdcdc);
    border-top: 0;
    background: #ffffff;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-container.is-dropdown-open > .left-menu {
    display: block;
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-container.is-dropdown-open > .tpl-leftmenu001-dropdown-trigger::after {
    transform: rotate(180deg);
  }
  .main-content .tpl-leftmenu001.tpl-model .tpl-leftmenu001-item:last-child {
    border-bottom: 0;
  }
}
@media (max-width: 1023px) {
  .main-content .tpl-product-detail001.tpl-model.template-wrapper {
    flex-direction: column;
    align-items: stretch;
  }
  .main-content .tpl-product-detail001.tpl-model.template-wrapper .tpl-product-detail001-gallery {
    flex-basis: auto;
    width: 100%;
  }
}
