@charset "UTF-8";
html {
  color: #000;
}

@media (max-width: 1196px) {
  html {
    font-size: 1.3377926421vw;
  }
}
@media (max-width: 768px) {
  html {
    font-size: 4.2666666667vw;
  }
}

.u_sp {
  display: none;
}

@media (max-width: 768px) {
  .u_sp {
    display: block !important;
  }
  .u_pc {
    display: none !important;
  }
}
/* コンテンツ幅 */
.inner {
  max-width: 1258px;
  width: calc(100% - 48px);
  margin: 0 auto;
}
@media (min-width: 769px) {
  .p-flex {
    display: flex;
  }
}
header {
  position: relative;
  z-index: 1000;
  width: 100%;
  color: #000;
  background: transparent;
  transition: background 0.2s;
}
header .header_inner {
  /* padding: 19px 2.5rem 40px; */
  padding: 15px 35px 15px;
  display: flex;
  gap: 2.5rem;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  transition: background 0.2s linear 0.2s;
}
@media screen and (max-width: 940px) {
  header .header_inner {
    gap: 1.25rem;
  }
}
header .header_inner .logo_content {
  width: 56px;
  z-index: 1000;
  position: relative;
}
header .header_inner .header_inner_wrap {
  display: flex;
  align-items: center;
  width: 43.125vw;
  justify-content: space-between;
}
@media screen and (min-width: 1601px) {
  header .header_inner .header_inner_wrap {
    width: 45.125vw;
  }
}
header .header-top_wrap .header_inner {
  /* padding: 8px 2.5rem; */
  padding: 8px 35px;
}
header a.reserve {
  transition: all 0.2s linear 0.2s;
  border: 1px solid #fff;
  padding: 6px 13px;
}
header::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(102, 102, 102, 0) 100%);
  transition: opacity 0s linear 0s;
  z-index: -1;
}

/* ハンバーガーメニュー非表示 */
.toggle-menu {
  display: none;
}

/* ヘッダーリンク */
.header_nav {
  display: flex;
  align-items: center;
  gap: 3.125rem;
}
@media (min-width: 769px) {
  .header_nav {
    margin-right: -20px;
  }
}
.header_nav .global_nav a {
  transition: color 0.2s linear 0.2s;
}
.header_nav .global_nav ul {
  display: flex;
  gap: 2.3125rem;
  align-items: center;
}
@media screen and (max-width: 1100px) {
  .header_nav .global_nav ul {
    gap: 1.25rem;
  }
}
.header_nav .global_nav ul li a {
  white-space: nowrap;
}
.header_nav .global_nav .logo_wrap {
  flex-shrink: 0;
}
.header_nav .global_nav .logo_wrap .logo {
  margin: 0 0.9375rem;
}

@media (max-width: 768px) {
  header .header_inner {
    display: block;
    margin: 0;
    padding: 8px 24px 8px;
  }
  header .header_inner .logo_content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  header .header_inner .logo_content .logo {
    width: 50px;
    z-index: 1000;
  }
  header .header_inner .logo_content .lang_wrap {
    display: flex !important;
    gap: 13px;
  }
  header .header_inner .logo_content .logo_content_left,
  header .header_inner .logo_content .logo_content_right {
    display: flex;
    gap: 20px;
    align-items: center;
  }
  header .header_inner .logo_content .logo_content_right .reserve {
    display: flex !important;
    align-items: center;
  }
  /* ハンバーガーメニュー */
  .toggle-menu {
    display: inline-block;
    width: 16px;
    height: 12px;
    position: relative;
    z-index: 100;
    background: transparent;
  }
  .toggle-menu .toggle-line {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    text-indent: -9999px;
    width: 16px;
    height: 1px;
    background-color: #fff;
  }
  .toggle-menu .toggle-line::before,
  .toggle-menu .toggle-line::after {
    content: "";
    position: absolute;
    left: 0;
    width: 16px;
    height: 1px;
    background-color: #fff;
    transition: 0.3s;
  }
  #childPage .toggle-menu .toggle-line::before,
  #childPage .toggle-menu .toggle-line::after,
  #childPage .toggle-menu .toggle-line {
    background-color: #000;
  }
  .toggle-menu .toggle-line::before {
    top: -7px;
  }
  .toggle-menu .toggle-line::after {
    top: 7px;
  }
  .header_nav {
    position: fixed;
    top: 0;
    left: 0;
    padding: 0 20px 0;
    display: flex;
    flex-direction: column;
    width: 100vw;
    height: 100vh;
    background-color: #fff;
    z-index: 90;
    transform: translateX(100%);
    transition: 0.3s ease-out;
    color: #000;
    gap: 40px;
  }
  .header_nav .global_nav {
    margin-top: 80px;
    width: 100%;
  }
  .header_nav .global_nav ul {
    flex-flow: column;
    align-items: flex-start;
  }
  .header_nav .global_nav ul li a {
    color: #000;
    display: block;
    width: 100%;
  }
  .open .toggle-menu {
    transition: all 0.5s linear 0.5s;
  }
  .open .toggle-menu .toggle-line {
    height: 0;
    background-color: #000;
  }
  .open .toggle-menu .toggle-line::before {
    background-color: #000;
    transform: rotate(-45deg);
    top: 0;
  }
  .open .toggle-menu .toggle-line::after {
    background-color: #000;
    transform: rotate(45deg);
    top: 0;
  }
  header.open .header_nav {
    transform: translateX(0);
    overflow: auto;
  }
  .open .gtranslate_wrapper {
    color: #000;
    transition: color 0s linear;
  }
  header.fixed .toggle-line {
    background-color: #000;
  }
  header.fixed .toggle-line::before {
    background-color: #000;
  }
  header.fixed .toggle-line::after {
    background-color: #000;
  }
}
.open .header_inner .logo_content .logo_content_right .reserve {
  color: #000;
  border: 1px solid #000;
  transition: all 0s linear 0s;
}

.header-top_wrap {
  background-color: rgba(0, 0, 0, 0.6);
}
.header-top_wrap .header_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
}
.header-top_wrap .header_inner .lang_wrap {
  display: flex;
  gap: 16px;
}
.header-top_wrap .header_inner .search_wrap {
  display: flex;
  align-items: center;
}
.header-top_wrap .header_inner .search_wrap a {
  padding: 0 15px;
}
.header-top_wrap .header_inner .search_wrap a:last-of-type {
  border-right: unset;
  padding: 0;
  padding-left: 18px;
}

.contact_wrap {
  display: flex;
  gap: 20px;
  align-items: center;
}
@media (max-width: 768px) {
  .contact_wrap {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .contact_wrap .reserve {
    border: 1px solid #000;
    position: absolute;
    top: 15px;
    right: 55px;
  }
}

.nav_line {
  position: relative;
  width: 16px;
  height: 1px;
  background-color: #fff;
}
.nav_line::before, .nav_line::after {
  content: "";
  display: inline-block;
  background-image: url();
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 16px;
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
}
.nav_line::before {
  top: 6px;
}
.nav_line::after {
  top: -6px;
}

#topPage .header-fadein {
  opacity: 0;
  animation: HeaderfadeIn 0.7s linear 0s forwards;
}

@keyframes HeaderfadeIn {
  to {
    opacity: 1;
  }
}
@media (max-width: 768px) {
  #topPage .header-fadein {
    animation: HeaderfadeIn 0.7s linear 0.7s forwards;
  }
}
.header-search {
  display: flex;
  align-items: center;
}
.header-search::before {
  content: "";
  display: inline-block;
  background-image: url(../img/common/icon-search.svg);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 12px;
  height: 12px;
  margin-right: 8px;
}

.like {
  display: flex;
  align-items: center;
}

.reserve {
  display: flex;
  align-items: baseline;
}

.reserve.u_sp {
  display: none;
}

#childPage .reserve {
  border: 1px solid #000;
  padding: 6px 13px;
  z-index: 1001;
  border-radius:0px;
}

/* JSが動いて初めて transform を制御したい */
header.js-fade {
  transform: none;
  opacity: 1;
  transition: none;
}

/* スクロール前にJSが transform: translateY(-100%) に切り替える */
header.js-fade.before-fixed {
  position: unset;
  transform: translateY(-100%);
  opacity: 0;
}

header.js-fade.is-fixed {
  margin-top: 150px;
  position: fixed;
  transform: translateY(0);
  opacity: 1;
  transition: transform 0.4s linear, opacity 0.4s linear;
}
@media (max-width: 768px) {
  header.js-fade.is-fixed {
    margin-top: 54px;
  }
}

/* header-top_wrap を非表示にする */
.header-top_wrap.is-hidden {
  display: none;
}

/* childPage用のheader-top_wrapアニメーション */
#childPage header .header-top_wrap {
  transition: opacity 0.3s linear, transform 0.3s linear;
  opacity: 1;
  transform: translateY(0);
}
#childPage header .header-top_wrap.is-hidden {
  opacity: 0;
  transform: translateY(-100%);
  pointer-events: none;
  /* アニメーション完了後に完全に非表示にする */
}
#childPage header .header-top_wrap.is-hidden:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  z-index: -1;
}

/* childPage用のヘッダーアニメーション */
#childPage header {
  color: #000;
  background: #fff;
  position: fixed;
  top: 0;
  /* 初期状態はrelative */
  transition: all 0.3s linear;
  /* すべてのプロパティにトランジション適用 */
  will-change: position, transform;
  /* パフォーマンス最適化 */
  /* topPageと同じヘッダーアニメーション */
}
#childPage header.scrolled {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 1000;
}
#childPage header.scrolled .header_inner {
  color: #000;
  /* スクロール時は黒文字 */
}
#childPage header.js-fade {
  transform: none;
  opacity: 1;
  transition: none;
}
#childPage header.js-fade.before-fixed {
  position: fixed;
  top: 0;
  opacity: 1;
  transform: translateY(0);
}
#childPage header.js-fade.is-fixed {
  margin-top: 150px;
  position: fixed;
  transform: translateY(0);
  opacity: 1;
  transition: transform 0.4s linear, opacity 0.4s linear;
}
#childPage header .header_inner {
  transition: color 0.3s linear;
  color: #000;
}
#childPage header .header_inner.header_fixed {
  /* padding: 19px 2.5rem 19px; */
  padding: 19px 35px 19px;
  background: #fff;
}
@media (max-width: 1328px){
  #childPage header .header_inner.header_fixed{
    padding: 19px 24px 19px;
  }
}
@media (max-width: 768px) {
  #childPage header .header_inner.header_fixed {
    padding: 4px 0;
    margin: 0;
    padding: 8px 24px;
  }
}
#childPage header .header-top_wrap .header_inner {
  color: #fff;
}
@media (min-width: 769px) {
  #childPage header .submenu {
    top: 69%;
    padding-top: 40px;
  }
}
@media (max-width: 768px) {
  #childPage header .submenu {
    padding-top: 0;
  }
}

/* childPage用のメインコンテンツの調整 */
#childPage main {
  transition: margin-top 0.3s linear;
  /* メインコンテンツのマージン調整もスムーズに */
  margin-top: 158px;
}
@media (max-width: 768px) {
  #childPage main {
    margin-top: 80px;
  }
}

@media (min-width: 769px) {
  header::before {
    content: "";
    display: block;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s linear 0.2s;
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    background: #fff;
    padding: 0;
    padding-top: 20px;
    transition: opacity 0.2s linear 0.2s, visibility 0.2s linear 0.2s;
  }
}
header .global_nav ul li.has-submenu .submenu .submenu_top_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right {
  display: flex;
  align-items: center;
  gap: 20px;
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right a {
  color: #000;
  display: flex;
  align-items: center;
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right a::after {
  content: "";
  display: inline-block;
  background-image: url(../img/common/header-submenu_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 12px;
  height: 12px;
  margin-left: 5px;
  transform: rotate(90deg);
  top: -1px;
  position: relative;
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu .submenu_top_right.u_sp {
    display: none;
  }
}
@media (max-width: 768px) {
  header .global_nav ul li.has-submenu .submenu .submenu_top_right.u_sp {
    align-items: center;
    justify-content: space-between;
    margin-top: 24px;
  }
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right.u_sp a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right.u_sp a::after {
  margin-left: 68px;
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right.u_sp a:last-child {
  margin-top: 20px;
}
header .global_nav ul li.has-submenu .submenu .submenu_top_right.u_sp a::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 28px;
  left: 0;
}
header .global_nav ul li.has-submenu .submenu .submenu_parent {
  color: #000;
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.view{
  text-decoration:underline;
  margin-left:30px;
  font-size:14px;
}
header .global_nav ul li.has-submenu .submenu .submenu_parent .archive::after {
  content: "";
  display: inline-block;
  background: #000;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 20px;
  height: 1px;
  margin-left: 30px;
}
header .global_nav ul li.has-submenu .submenu .line {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
header .global_nav ul li.has-submenu .submenu ul {
  justify-content: center;
  gap: 0px;
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul li {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
  }
}
header .global_nav ul li.has-submenu .submenu ul li:last-of-type {
  border-right: unset;
}
header .global_nav ul li.has-submenu .submenu ul li a {
  display: block;
  padding: 1.9375rem 14px 16px 14px;
  color: #333;
  text-decoration: none;
}
@media (max-width: 768px) {
  header .global_nav ul li.has-submenu .submenu ul li a {
    padding: 9px;
  }
}
header .global_nav ul li.has-submenu .submenu ul li a img {
  width: 218px;
  height: 9.5625rem;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 6px;
}
@media (max-width: 768px) {
  header .global_nav ul li.has-submenu .submenu ul li a img {
    width: 100%;
    height: auto;
  }
}
header .global_nav ul li.has-submenu .submenu ul li a p {
  text-align: center;
}
header .global_nav ul li.has-submenu .submenu ul.submenu_products_list {
  display: grid;
  /* grid-template-columns: repeat(6, 1fr); */
  grid-template-columns: repeat(5, 1fr);
  gap: 0px;
  max-width: 1258px;
  width: calc(100% - 48px);
  margin: 0 auto;
  position: relative;
}
@media (max-width: 768px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list {
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(0, 0, 0, 0.1);
    position: absolute;
      top: 50%;
      transform: translateY(-50%);
    left: 0;
    width: 100vw;
margin-left: calc(50% - 50vw); 
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
  }
}
@media (max-width: 768px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(odd) {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(5n) {
    border-right: none;
  }
}
/* @media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(-n+5) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
} */
/* @media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li {
    width: 11.875rem;
  }
} */
/* @media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(-n+6) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n) {
    border-right: none;
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n+1) {
    width: 26.25vw;
    padding-left: 10vw;
  }
}
@media screen and (min-width: 1601px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n+1) {
    padding-left: 20vw;
    width: 32.5vw;
  }
}
@media screen and (min-width: 2000px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n+1) {
    padding-left: 24.375vw;
    width: 33.75vw;
  }
}
@media screen and (min-width: 2400px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n+1) {
    padding-left: 25vw;
    width: 35vw;
  }
}
@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n) {
    width: 26.25vw;
    padding-right: 10vw;
  }
}
@media screen and (min-width: 1601px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n) {
    padding-right: 20vw;
    width: 32.5vw;
  }
}
@media screen and (min-width: 2000px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n) {
    padding-right: 24.375vw;
    width: 33.75vw;
  }
}
@media screen and (min-width: 2400px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n) {
    padding-right: 25vw;
    width: 35vw;
  }
} */
header .global_nav ul li.has-submenu.is-open > .submenu {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.2s linear 0.2s, visibility 0.2s linear 0.2s;
}
header .global_nav ul li.has-submenu.is-open > a {
  color: #000;
  opacity: 1;
  transition: color 0.2s linear 0.2s;
}
header:has(.has-submenu.is-open) {
  background: #fff;
  transition: background 0.2s linear 0.2s;
}
header:has(.has-submenu.is-open)::before {
  opacity: 1;
  transition: opacity 0.2s linear 0.2s;
  z-index: -1;
}
header:has(.has-submenu.is-open) .header_inner.header_fixed {
  background: #fff;
  transition: background 0.2s linear 0.2s;
}
@media (min-width: 769px) {
  header:has(.has-submenu.is-open) .global_nav a {
    color: rgba(0, 0, 0, 0.4);
    transition: color 0.2s linear 0.2s;
  }
}
header:has(.has-submenu.is-open) a.reserve {
  color: #000;
  border: 1px solid #000;
  transition: all 0.2s linear 0.2s;
}
header:has(.has-submenu.is-open) .hamburger-line {
  background-color: #000;
  transition: all 0.2s linear 0.2s;
}
header:has(.has-submenu.is-open) .hamburger-line::before, header:has(.has-submenu.is-open) .hamburger-line::after {
  background-color: #000;
  transition: all 0.2s linear 0.2s;
}

.header-search {
  position: relative;
  margin-right: 15px;
  border-bottom: 1px solid #fff;
}

.header-search input {
  width: 100%;
  background: transparent;
  width: 7rem;
  color: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border-radius: 0;
  outline: none;
  /* font-family: "Shippori Mincho B1", serif !important; */
  font-size: 12px;
}
@media (max-width: 768px) {
  .header-search input {
    width: 100%;
  }
}

.header-search input::-moz-placeholder {
  color: rgba(255,255,255,0.8);
  opacity: 1;
  font-family: neue-haas-grotesk-display, sans-serif !important;
  font-size: 12px;
  letter-spacing: 0.1em;
}

.header-search input::placeholder {
  color: rgba(255,255,255,0.8);
  opacity: 1;
  font-family: neue-haas-grotesk-display, sans-serif !important;
  font-size: 12px;
  letter-spacing: 0.1em;
}

.header-search input:focus {
  width: 11rem;
  /* border-bottom: 1px solid #fff; */
}
@media (max-width: 768px) {
  .header-search input:focus {
    width: 100%;
  }
}

.header-search input:focus::-moz-placeholder {
  color: rgba(255,255,255,0.8);
}

.header-search input:focus::placeholder {
  color: rgba(255,255,255,0.8);
}
@media (max-width: 768px) {
  .header-search input:focus::-moz-placeholder {
    color: #ccc;
  }
  .header-search input:focus::placeholder {
    color: #ccc;
  }
}

.header-search button {
  background: none;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  margin-top: 4px;
}

#childPage .header-search input {
  color: #fff;
}

.gtranslate_wrapper {
  display: flex;
  flex-direction: row-reverse;
  gap: 13px;
  transition: color 0.2s linear;
}

@media (max-width: 768px) {
  header .global_nav ul li {
    position: relative;
    width: 100%;
  }
  header .global_nav ul li::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(0, 0, 0, 0.1);
    position: absolute;
    top: 28px;
    left: 0;
  }
  header .global_nav ul li.has-submenu {
    position: relative;
  }
  header .global_nav ul li.has-submenu.active::after {
    transform: rotate(0deg);
    top: 6px;
  }
  header .global_nav ul li.has-submenu .submenu {
    display: none;
    position: static;
    background: transparent;
    box-shadow: none;
    padding: 0;
    margin-top: 10px;
    top: 0;
    left: 0;
    transform: unset;
  }
  header .global_nav ul li.has-submenu .submenu.active {
    display: block;
  }
  header .global_nav ul li.has-submenu .submenu .inner {
    padding: 0;
    width: 100%;
  }
  header .global_nav ul li.has-submenu .submenu .inner .submenu_parent {
    display: none;
  }
  header .global_nav ul li.has-submenu .submenu .inner .line {
    display: none;
  }
  header .global_nav ul li.has-submenu .submenu .inner ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li {
    width: 100%;
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li::before {
    display: none;
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li:nth-child(odd) {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li:not(:nth-last-child(-n+2)) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li:nth-child(even):nth-last-child(2) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li a {
    align-items: center;
    padding: 9px;
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li a img {
    height: 100%;
    width: 100%;
  }
  header .global_nav ul li.has-submenu .submenu .inner ul li a p {
    margin: 0;
    padding: 4px 0;
  }
  header .global_nav ul li.has-submenu .submenu .submenu_products_list li::before {
    display: none;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  header .global_nav ul li.has-submenu .submenu .submenu_products_list li:not(:nth-last-child(-n+2)) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  header .global_nav ul li.has-submenu .submenu .submenu_products_list li:nth-child(even):nth-last-child(2) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
}

.header_other-menu_sp {
  width: 100%;
}
.header_other-menu_sp .other-menu_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px 0;
}
.header_other-menu_sp .other-menu_list li {
  width: 50%;
  white-space: nowrap;
}
.header_other-menu_sp .header-search {
  margin-right: unset;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 32px;
}
.header_other-menu_sp .header-search::before {
  background-image: url(../img/common/ic_gnav_search_black.svg);
}
.header_other-menu_sp .header-search form {
  width: 100%;
}
.header_other-menu_sp .header-search input::-moz-placeholder {
  color: #000;
}
.header_other-menu_sp .header-search input::placeholder {
  color: #000;
}
.header_other-menu_sp .header-search input {
  color: #000;
}
.header_other-menu_sp .header-search input:focus::-moz-placeholder {
  color: #999;
}
.header_other-menu_sp .header-search input:focus::placeholder {
  color: #999;
}
.header_other-menu_sp .sns_list_sp {
  margin-top: 32px;
  display: flex !important;
  align-items: center;
  gap: 26px;
}
.header_other-menu_sp .sns_list_sp .sns {
  display: flex;
  gap: 15px;
}
.header_other-menu_sp .sns_list_sp .sns a {
  display: flex;
}
.header_other-menu_sp .sns_list_sp .sns img {
  width: 30px;
  height: 30px;
}
.header_other-menu_sp .sns_list_sp .more_btn {
  width: auto;
  margin: 0;
}

a.no-link {
  pointer-events: auto !important;
}

@media (max-width: 768px) {
  .submenu-title-wrap.u_sp {
    display: flex !important;
  }
}

.has-submenu .submenu-arrow {
  position: relative;
  display: flex;
  width: 50px;
  justify-content: end;
}
.has-submenu .submenu-arrow::before, .has-submenu .submenu-arrow::after {
  content: "";
  position: absolute;
  background-color: #000;
  transition: all 0.3s linear;
}
.has-submenu .submenu-arrow::before {
  width: 1px;
  height: 12px;
  top: 4px;
  right: 10px;
}
.has-submenu .submenu-arrow::after {
  width: 12px;
  height: 1px;
  top: 9px;
  right: 5px;
}
.has-submenu .submenu-arrow img {
  display: none;
  transform: rotate(180deg);
  transition: transform 0.3s linear;
  width: 10px;
}

.has-submenu.active .submenu-arrow img {
  transform: rotate(0deg);
  top: 6px;
}
.has-submenu.active .submenu-arrow::before {
  transform: rotate(90deg);
  opacity: 0;
}
.has-submenu.active .submenu-arrow::after {
  transform: rotate(0deg);
  opacity: 1;
}

header.fixed .header_inner.header_fixed {
  transition: background 0s linear 0s;
  background: #fff;
  color: #000;
}
header.fixed .header_inner.header_fixed a.reserve {
  border: 1px solid #000;
  color: #000;
  border-radius:0px;
}

.header_hamburger-menu_pc {
  display: flex;
  align-items: center;
}
.header_hamburger-menu_pc .hamburger_icon {
  display: inline-block;
  width: 40px;
  height: 40px;
  left: -10px;
  position: relative;
  z-index: 1000;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
}
.header_hamburger-menu_pc .hamburger_icon .hamburger-line {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  text-indent: -9999px;
  width: 16px;
  height: 1px;
  background-color: #fff;
  transition: all 0.2s linear 0.2s;
}
.header_hamburger-menu_pc .hamburger_icon .hamburger-line::before,
.header_hamburger-menu_pc .hamburger_icon .hamburger-line::after {
  content: "";
  position: absolute;
  left: 0;
  width: 16px;
  height: 1px;
  background-color: #fff;
  transition: all 0.2s linear 0.2s;
}
.header_hamburger-menu_pc .hamburger_icon .hamburger-line::before {
  top: -7px;
}
.header_hamburger-menu_pc .hamburger_icon .hamburger-line::after {
  top: 7px;
}

.header_pc-menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 0;
  max-width: 500px;
  height: 100vh;
  background: #fff;
  z-index: 10000;
  transform: translateX(100%);
  transition: transform 0.3s ease-out, width 0.3s ease-out;
  overflow: hidden;
  box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
}
.header_pc-menu.is-open {
  width: 400px;
  transform: translateX(0);
}
@media screen and (max-width: 600px) {
  .header_pc-menu.is-open {
    width: 80vw;
  }
}
.header_pc-menu .pc-menu-content {
  width: 100%;
  height: 100%;
  padding: 120px 37px 40px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 10001;
  scrollbar-gutter: stable;
  /* 右側のスクロールバー分を常時確保 */
}
@media screen and (max-width: 600px) {
  .header_pc-menu .pc-menu-content {
    padding: 60px 20px 20px;
  }
}
.header_pc-menu .pc-menu-close {
  position: absolute;
  top: 60px;
  right: 27px;
  z-index: 10002;
}
.header_pc-menu .pc-menu-close .pc-menu-close-btn {
  width: 40px;
  height: 40px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: transform 0.3s linear;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.header_pc-menu .pc-menu-close .pc-menu-close-btn .close-line::before,
.header_pc-menu .pc-menu-close .pc-menu-close-btn .close-line::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 1px;
  background-color: #000;
  transition: 0.3s;
}
.header_pc-menu .pc-menu-close .pc-menu-close-btn .close-line::before {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.header_pc-menu .pc-menu-close .pc-menu-close-btn .close-line::after {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.header_pc-menu .footer_menu {
  margin-bottom: 38px;
}
.header_pc-menu .footer_menu .footer_manu_list {
  display: flex;
  flex-direction: column;
  gap: 14px 0;
}
.header_pc-menu .footer_menu .footer_manu_list li {
  width: 100%;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 12px;
  margin-bottom: 0;
  color: #000;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon {
  width: 20px;
  height: 20px;
  padding:10px;
  position: relative;
  margin-left: 10px;
  transition: all 0.3s linear;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon::before, .header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon::after {
  content: "";
  position: absolute;
  background-color: #000;
  transition: all 0.3s linear;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon::before {
  width: 1px;
  height: 12px;
  top: 4px;
  left: 10px;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon::after {
  width: 12px;
  height: 1px;
  top: 9px;
  left: 4px;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon.active::before {
  transform: rotate(90deg);
  opacity: 0;
}
.header_pc-menu .footer_menu .footer_manu_list li .parent_link .accordion-icon.active::after {
  transform: rotate(0deg);
  opacity: 1;
}
.header_pc-menu .footer_menu .footer_manu_list li.no_accordion_list {
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 12px;
}
.header_pc-menu .footer_menu .footer_manu_list li.no_accordion_list .parent_link {
  border-bottom: none;
  padding-bottom: 0;
  color: #000;
}
.header_pc-menu .footer_menu .footer_manu_list li.no_accordion_list::after {
  content: "";
  display: block;
  background-image: url(../img/common/header-submenu_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 6px;
  right: 7px;
  transform: rotate(90deg);
}
.header_pc-menu .footer_menu .footer_manu_list li .child_wrap,
.header_pc-menu .footer_menu .footer_manu_list li .product_child_wrap {
  display: none;
  margin-top: 10px;
  padding-left: 0;
  padding-bottom: 50px;
  gap: 0;
  white-space: nowrap;
}
.header_pc-menu .footer_menu .footer_manu_list li .child_wrap.active,
.header_pc-menu .footer_menu .footer_manu_list li .product_child_wrap.active {
  display: flex;
  flex-direction: column;
}
.header_pc-menu .footer_menu .footer_manu_list li .child_wrap ul,
.header_pc-menu .footer_menu .footer_manu_list li .product_child_wrap ul {
  width: 50%;
}
.header_pc-menu .footer_menu .footer_manu_list li .child_wrap ul li,
.header_pc-menu .footer_menu .footer_manu_list li .product_child_wrap ul li {
  width: 100%;
  margin-bottom: 0;
}
.header_pc-menu .footer_menu .footer_manu_list li .child_wrap ul li a,
.header_pc-menu .footer_menu .footer_manu_list li .product_child_wrap ul li a {
  color: #000;
  display: block;
  padding: 5px 0;
}
.header_pc-menu .sns_list_sp {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 26px;
  margin-top: auto;
  padding-top: 38px;
}
.header_pc-menu .sns_list_sp .sns {
  display: flex;
  gap: 15px;
}
.header_pc-menu .sns_list_sp .sns a {
  display: flex;
}
.header_pc-menu .sns_list_sp .sns img {
  width: 30px;
  height: 30px;
}
.header_pc-menu .sns_list_sp .more_btn.footer_news_letter {
  text-align: center;
  border-bottom: 1px solid #000;
  margin: 0 auto;
  padding: 8px 0;
  display: block;
  transition: all 0.3s;
  width: auto;
  color: #000;
}
.header_pc-menu .reserve.u_pc {
  color: #000;
  border: 1px solid #000;
  justify-content: center;
}
.header_pc-menu .header-search {
  width: 100%;
  margin-right: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 38px;
}
.header_pc-menu .header-search::before {
  background-image: url(../img/common/ic_gnav_search_black.svg);
}
.header_pc-menu .header-search form {
  width: 100%;
}
.header_pc-menu .header-search input {
  color: #000;
  width: 100%;
}
.header_pc-menu .header-search input::-moz-placeholder {
  color: #000;
}
.header_pc-menu .header-search input::placeholder {
  color: #000;
}
.header_pc-menu .header-search input:focus {
  width: 100%;
}
.header_pc-menu .header-search input:focus::-moz-placeholder {
  color: #999;
}
.header_pc-menu .header-search input:focus::placeholder {
  color: #999;
}

body.pc-menu-active {
  overflow: hidden;
}

#childPage .header_hamburger-menu_pc .hamburger_icon .hamburger-line,
header.fixed .header_hamburger-menu_pc .hamburger_icon .hamburger-line {
  background-color: #000;
  transition: background 0.2s linear 0.2s;
}
#childPage .header_hamburger-menu_pc .hamburger_icon .hamburger-line::before, #childPage .header_hamburger-menu_pc .hamburger_icon .hamburger-line::after,
header.fixed .header_hamburger-menu_pc .hamburger_icon .hamburger-line::before,
header.fixed .header_hamburger-menu_pc .hamburger_icon .hamburger-line::after {
  background-color: #000;
  transition: background 0.2s linear 0.2s;
}

#childPage .header_pc-menu .header-search {
  width: 100%;
  margin-right: 0;
}
#childPage .header_pc-menu .header-search {
  width: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 38px;
  margin-right: 0;
}
#childPage .header_pc-menu .header-search::before {
  background-image: url(../img/common/ic_gnav_search_black.svg);
}
#childPage .header_pc-menu .header-search form {
  width: 100%;
}
#childPage .header_pc-menu .header-search input {
  color: #000;
}
#childPage .header_pc-menu .header-search input::-moz-placeholder {
  color: #000;
}
#childPage .header_pc-menu .header-search input::placeholder {
  color: #000;
}
#childPage .header_pc-menu .header-search input:focus {
  width: 100%;
}
#childPage .header_pc-menu .header-search input:focus::-moz-placeholder {
  color: #999;
}
#childPage .header_pc-menu .header-search input:focus::placeholder {
  color: #999;
}

#childPage .header_inner.header_fixed::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s linear 0.2s;
}

#childPage.pc-menu-active .header_inner.header_fixed::before {
  opacity: 1;
  transition: opacity 0.2s linear 0.2s;
  z-index: 1;
}

header.fixed .header_inner.header_fixed::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s linear 0.2s;
}

.pc-menu-active header.fixed .header_inner.header_fixed::before {
  opacity: 1;
  transition: opacity 0.2s linear 0.2s;
  z-index: 0;
}

.pc-menu-active header::before {
  opacity: 1;
  transition: opacity 0.2s linear 0.2s;
  z-index: -1;
}
.pc-menu-active .header_inner.header_fixed::before {
  opacity: 1;
  transition: opacity 0.2s linear 0.2s;
  z-index: 1;
}

#topPage header .header_nav .global_nav ul li a {
  opacity: 1;
  transition: opacity 0.2s linear 0.2s;
}

#topPage.pc-menu-active header .header_nav .global_nav ul li a {
  opacity: 0.5;
}

#topPage.pc-menu-active header.fixed .header_nav .global_nav ul li a {
  opacity: 1;
}

html.pc-menu-active,
html.scrollrock {
  overflow: auto;
  scrollbar-gutter: stable;
}

html.pc-menu-active,
body.pc-menu-active,
html.scrollrock,
body.scrollrock {
  overflow: hidden;
  overscroll-behavior: contain;
}

/* @media screen and (min-width: 1200px) {
  header .global_nav ul li.has-submenu.product_submenu .submenu ul li a {
    width: 189px;
  }
} */

@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n+1) {
    padding-left: none;
  }
}

@media (min-width: 769px) {
  header .global_nav ul li.has-submenu .submenu ul.submenu_products_list li:nth-child(6n+1) a {
    margin-left: auto;
  }
}

/* フッター
***************************************************************/
footer {
  background: #fff;
  width: 100%;
  padding: 0 0 48px;
  text-align: center;
}
@media (max-width: 768px) {
  footer {
    padding: 0 0 24px;
  }
}
@media (max-width: 768px) {
  footer .top_content_inner {
    width: 100%;
  }
}
footer .footer_top_content {
  justify-content: space-between;
  gap:0 8px;
}
@media (max-width: 768px) {
  footer .footer_top_content {
    margin: 0 auto;
  }
}
footer .footer_top_content .footer_top_content_item {
  position: relative;
}
footer .footer_top_content .txt_wrap {
  position: absolute;
  top: 57%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
  color: #fff;
  width: 100%;
}
@media (max-width: 768px) {
  footer .footer_top_content .txt_wrap {
    color: #fff;
  }
}
footer .footer_top_content .sec_title_jp {
  color: #fff;
  margin-bottom: 24px;
}
footer .footer_top_content .more_btn {
  transition: all 0.3s;
  border-bottom: 1px solid #fff;
}
footer .footer_bottom_content {
  position: relative;
  padding-top: 2.5rem;
}
@media (max-width: 768px) {
  footer .footer_bottom_content {
    padding-top: 48px;
  }
}
footer .footer_bottom_content .footer_menu {
  margin-bottom: 24px;
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu {
    margin-bottom: 38px;
  }
}
footer .footer_bottom_content .footer_menu li {
  text-align: left;
}
@media (min-width: 769px) {
  footer .footer_bottom_content .footer_menu li a {
    font-size: clamp(10px, 1.1vw, 13px);
    margin-bottom:15px;
  }
}
footer .footer_bottom_content .footer_menu.footer_menu_2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
}
footer .footer_bottom_content .footer_menu .footer_manu_list {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu .footer_manu_list {
    flex-direction: column;
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu .footer_manu_list li.parent_list {
    width: 100%;
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu .footer_manu_list li.product_list {
    width: 100%;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 {
  align-items: baseline;
  text-align: left;
  gap: 3.75rem;
  margin-bottom: 40px;
}
@media screen and (max-width: 1202px){
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 {
    gap: 3.3rem;
  }
}
@media screen and (max-width: 1000px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 {
    gap: 2.75rem;
  }
}
@media screen and (max-width: 1000px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 {
    gap: 2.75rem;
  }
}
@media screen and (max-width: 850px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 {
    gap: 1.75rem;
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 {
    justify-content: flex-start;
    gap: 14px 0;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .sns {
  display: flex;
  margin: 6px 0 16px;
  gap: 21px;
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .sns a img {
  width: 22px;
  height: 22px;
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .sns a img {
    width: 30px;
    height: 30px;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .parent_link {
  margin-bottom: 10px;
  border-bottom: 1px solid #000;
  padding-bottom: 5px;
  display: inline-block;
  width: 144px;
  width: 100%;
}
@media (min-width: 769px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .parent_link {
    font-size: clamp(10px, 1.1vw, 13px);
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .parent_link {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap {
  align-items: flex-start;
  gap: 3.75rem;
}
@media screen and (max-width: 1000px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap {
    gap: 2.75rem;
  }
}
@media screen and (max-width: 850px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap {
    gap: 1.75rem;
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap {
    gap: 0;
    white-space: nowrap;
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap ul {
    width: 50%;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap ul li {
  width: clamp(105px, 12vw, 144px);
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .child_wrap ul li {
    width: 100%;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li .product_child_wrap {
  display: flex;
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_2 {
  gap: 3.75rem;
}
@media screen and (max-width: 1000px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_2 {
    gap: 2.75rem;
  }
}
@media screen and (max-width: 850px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_2 {
    gap: 1.75rem;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_2 li {
  width: clamp(105px, 12vw, 144px);
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_2 li a {
  text-align: left;
}
footer .footer_bottom_content .sns_list_sp {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 26px;
}
footer .footer_bottom_content .sns_list_sp .sns {
  display: flex;
  gap: 15px;
}
footer .footer_bottom_content .sns_list_sp .sns a {
  display: flex;
}
footer .footer_bottom_content .sns_list_sp .sns img {
  width: 30px;
  height: 30px;
}
footer .footer_bottom_content .sns_list_sp .more_btn {
  width: auto;
  padding: 0 0 14px;
  margin: 0;
}
footer .footer_bottom_content .parent_list_sns {
  margin-left: 30px;
}
@media screen and (max-width: 1250px) {
  footer .footer_bottom_content .parent_list_sns {
    margin-left: 0;
  }
}
.footer_flex{
  display:flex;
  justify-content:space-between;
  gap:20px;
}
.footer_news_letter{
  width:50%;
}
footer .footer_bottom_content .copy_right {
  text-align: center;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media (max-width: 768px) {
  footer .footer_bottom_content .copy_right {
    position: relative;
    margin-top: 64px;
  }
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    padding-bottom: 12px;
    margin-bottom: 0;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon {
    width: 20px;
    height: 20px;
    position: relative;
    margin-left: 10px;
    transition: all 0.3s ease;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon::before, footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon::after {
    content: "";
    position: absolute;
    background-color: #000;
    transition: all 0.3s ease;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon::before {
    width: 1px;
    height: 12px;
    top: 4px;
    left: 10px;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon::after {
    width: 12px;
    height: 1px;
    top: 9px;
    left: 4px;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon.active::before {
    transform: rotate(90deg);
    opacity: 0;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .parent_link .accordion-icon.active::after {
    transform: rotate(0deg);
    opacity: 1;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .child_wrap,
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .product_child_wrap {
    display: none;
    margin-top: 10px;
    padding-left: 10px;
  }
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .child_wrap.active,
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .product_child_wrap.active {
    display: flex;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .child_wrap,
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.accordion_list .product_child_wrap {
    padding-left: 0;
    padding-bottom: 50px;
  }
}
footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.no_accordion_list {
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 12px;
}
@media (max-width: 768px) {
  footer .footer_bottom_content .footer_menu ul.footer_manu_list.list_1 li.no_accordion_list::after {
    content: "";
    display: block;
    background-image: url(../img/common/header-submenu_arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 6px;
    right: 7px;
    transform: rotate(90deg);
  }
}
footer .footer_bottom_content .footer_news_letter {
  text-align: center;
  border-bottom: 1px solid #000;
  margin: 0 auto;
  padding: 8px 0;
  display: block;
  transition: all 0.3s;
  width: auto;
}
@media (min-width: 769px) {
  footer .footer_bottom_content .footer_news_letter {
    font-size: clamp(10px, 1vw, 13px);
  }
}
.footer_line {
  border-top: 1px solid rgba(0, 0, 0, 0.3);
}

body {
  background-color: #fff;
}

a {
  text-decoration: none;
  transition: all 0.3s;
}

a:hover {
  opacity: 0.6;
}

.page {
  padding-bottom: 136px;
}
@media (max-width: 768px) {
  .page {
    padding-bottom: 64px;
  }
}

.breadcrumb {
  margin-top: 3.75rem;
}
@media (max-width: 768px) {
  .breadcrumb {
    margin-top: 24px;
  }
}
.breadcrumb ul {
  display: flex;
  gap: 6px;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
}
.breadcrumb ul li a {
  text-decoration: underline;
}
.breadcrumb ul li:last-child {
  color: rgba(0, 0, 0, 0.3);
}
.breadcrumb ul li.separator {
  pointer-events: none;
  font-size: 5px;
}

.btn_bk {
  width: 168px;
  height: 42px;
  background-color: #000;
  display: flex;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  color: #fff;
  border:1px solid #000;
  border-radius: 4px;
  justify-content: center;
  text-decoration: none !important;
}

.more_btn {
  text-align: center;
  width: 130px;
  border-bottom: 1px solid #000;
  margin: 0 auto;
  padding: 8px 0;
  display: block;
}
@media (max-width: 768px) {
  .more_btn {
    width: 100px;
  }
}

.slider_arrow_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  margin-top: 20px;
}

.slider_arrow_wrap .swiper-button-prev,
.slider_arrow_wrap .swiper-button-next {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}

.slider_arrow_wrap .swiper-button-prev::after,
.slider_arrow_wrap .swiper-button-next::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 20px;
  height: 20px;
  display: block;
}

.slider_arrow_wrap .swiper-button-prev::after {
  transform: rotate(180deg);
}

a:hover {
  opacity: 0.5;
}

h1.p_title {
  text-align: center;
  margin: 29px 0 0;
  color: #444;
}
@media (max-width: 768px) {
  h1.p_title {
    margin: 32px 0 0;
  }
}

h2.sec_title {
  text-align: center;
  color: #444;
}

.sec_title_jp {
  position: relative;
  margin-bottom: 34px;
  text-align: center;
  color: #444;
}
@media (max-width: 768px) {
  .sec_title_jp {
    margin-bottom: 16px;
  }
}
.top_brands .sec_title_jp{
  margin-bottom:24px;
}
.p_title_jp {
  margin-bottom: 0;
}

.p_title_jp_mb {
  margin-bottom: 48px;
}
@media (max-width: 768px) {
  .p_title_jp_mb {
    margin-bottom: 40px;
  }
}

.p_top_txt {
  margin: 48px auto 0;
  max-width: 952px;
}
@media (max-width: 768px) {
  .p_top_txt {
    margin: 36px auto 0;
  }
}
.p_top_txt p:not(:last-child) {
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .p_top_txt p:not(:last-child) {
    margin-bottom: 16px;
  }
}
.p_top_txt p span {
  text-decoration: underline;
}

.page-mv {
  margin-top: 48px;
}
@media (max-width: 768px) {
  .page-mv {
    margin-top: 40px;
  }
}

.cat_wrap {
  display: flex;
  align-items: center;
}
.cat_wrap p {
  display: flex;
  align-items: center;
}
.cat_wrap p span {
  padding: 0 5px;
}

.product_list_img {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
}

.works_list_txt {
  text-align: left;
}

/* .filter-content-wrapper {
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
} */

.filter-accordion_wrap {
  border: 1px solid #dbdbdb;
  background-color: #fafafa;
  padding: 30px 20px;
  margin-bottom: 12px;
  width: 220px;
}
@media (max-width: 768px) {
  .filter-accordion_wrap {
    width: 100%;
    padding: 32px 20px;
  }
}

.filter-box {
  margin-bottom: 12px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  gap: 5px;
}
@media (min-width: 769px) {
  .filter-box {
    width: 220px;
  }
}
.filter-box input {
  border: 1px solid #dbdbdb;
  background-color: #fafafa;
  padding: 0 11px;
  flex: 1;
}
.filter-box input[type="text"] {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
}
.filter-box input[type="text"]:focus {
  background-color: transparent;
} 

@media (max-width: 768px) {
  .filter-box input {
    width: 100%;
  }
}
.filter-box button {
  background-color: #000;
  color: #fff;
  height: 42px;
  width: 42px;
  flex-shrink: 0;
}

.filter-clear-wrap {
  margin-top: 20px;
  text-align: center;
}
@media (min-width: 769px) {
  .filter-clear-wrap {
    text-align: justify;
  }
}
.filter-clear-wrap .filter-clear-btn {
  background: #000;
  padding: 8px 16px;
  color: #fff;
  cursor: pointer;
  pointer-events: auto;
  transition: all 0.3s ease;
  width: 100%;
  height: 40px;
}
@media (min-width: 769px) {
  .filter-clear-wrap .filter-clear-btn {
    width: 220px;
  }
}

.filter-accordion {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.filter-accordion:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.filter-accordion .filter-header {
  margin-left: 5px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
@media (max-width: 768px) {
  .filter-accordion .filter-header {
    margin-bottom: 0;
  }
}
.filter-accordion .filter-header .filter_cat_title {
  margin: 0;
}
.filter-accordion .filter-arrow {
  position: relative;
  width: 18px;
  height: 18px;
  background-color: #000;
}
.filter-accordion .filter-arrow img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(360deg);
  /*画像を反転させる*/
  width: 10px;
  height: auto;
  transition: transform 0.3s ease;
  transform-origin: center center;
}
.filter-accordion.active .filter-arrow img {
  transform: translate(-50%, -50%) rotate(0deg);
}
.filter-accordion .filter-content {
  text-align: left;
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}
.filter-accordion .filter-content.active {
  max-height: 1000px;
  padding-top: 17px;
}
@media (max-width: 768px) {
  .filter-accordion .filter-content.active {
    padding-top: 16px;
  }
}
.filter-accordion label {
  display: block;
  margin-bottom: 13px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
}
.filter-accordion label input[type=checkbox] {
  width: 16px;
  height: 16px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #707070;
  background-color: #fff;
  cursor: pointer;
  position: relative;
}
.filter-accordion label input[type=checkbox]:checked {
  background-color: #fff;
}
.filter-accordion label input[type=checkbox]:checked::after {
  content: "✓";
  color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.filter-accordion label input[type=radio] {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #707070;
  background-color: #fff;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
}
.filter-accordion label input[type=radio]:checked {
  background-color: #fff;
  border-color: #000;
}
.filter-accordion label input[type=radio]:checked::after {
  content: "";
  color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  background-color: #000;
  border-radius: 50%;
}
.filter-accordion label input[type=radio]:focus {
  outline: none;
}

.filter-title {
  text-align: left;
  margin-bottom: 23px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 768px) {
  .filter-title {
    margin-bottom: 16px;
    justify-content: flex-start;
    align-items: baseline;
  }
}
@media (max-width: 768px) {
  .filter-title::before {
    content: "";
    display: inline-block;
    background-image: url(../img/common/icon-filter.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    width: 11px;
    height: 10px;
    margin-right: 5px;
  }
}

.p_cat_filter_wrap {
  width: 235px;
  flex-shrink: 0;
  /* position: sticky;
  top: 108px; */
  align-self: flex-start;
}
@media (max-width: 768px) {
  .p_cat_filter_wrap {
    position: static;
    width: 100%;
  }
}
.brand-text{
  margin-bottom:34px;
}
@media (max-width: 768px){
  .brand-text{
    text-align:left;
}
}

.post-card_txt {
  text-align: left;
  margin-top: 12px;
}
/* .post-card_txt .cat_wrap {
  margin-bottom: 0px;
  margin-top: 12px;
} */
.post-card_txt .cat_wrap span {
  margin: 0 5px;
}
.post-card_txt .title {
  margin-bottom: 0px;
}
.post-card_txt .works_en{
  margin-top:0px;
}
.post-card_txt .txt {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top:6px;
}

section {
  text-align: center;
  padding-top: 96px;
}
@media (max-width: 768px) {
  section {
    padding-top: 64px;
  }
}

.fv {
  padding-top: 0;
  margin-top: -150px;
  position: relative;
  overflow: hidden;
  height: calc(100vh + 3px);
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .fv {
    height: 70vh;
    max-height: 100vh;
  }
}
@media (max-width: 768px) {
  .fv {
    margin-top: -54px;
  }
}
.fv .fv_bg {
  height: calc(100vh + 3px);
  width: 100%;
  -o-object-position: center center;
     object-position: center center;
  -o-object-fit: cover;
     object-fit: cover;
     pointer-events: none;
}
.fv .fv_bg::-webkit-media-controls {
  display: none !important;
}
.fv .fv_chair {
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  bottom: 0;
  z-index: 10;
}
.fv .chair01 {
  height: 84%;
  right: 36px;
  opacity: 0;
  /* animation: Chair-fadeInOut 3.5s ease-out 3.5s forwards; */
  animation: Chair-fadeInOut 3.5s ease-out 10.5s forwards
}
@media screen and (min-width: 1025px) {
  .fv .chair01 {
    aspect-ratio: 451/390;
  }
}
@media screen and (max-width: 1024px) {
  .fv .chair01 {
    right: 0;
    height: 65%;
    width: auto;
  }
}
@keyframes Chair-fadeInOut {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fv .chair02 {
  height: 83%;
  right: 0;
  opacity: 0;
  animation: Chair-fadeInOut 3.5s ease-out 10.5s forwards;
  /* animation: Chair-fadeInOut 3.5s ease-out 18s forwards; */
}
@media screen and (min-width: 1025px) {
  .fv .chair02 {
    aspect-ratio: 1191/728;
  }
}
@media screen and (max-width: 1024px) {
  .fv .chair02 {
    bottom: 0;
    right: 0;
    width: auto;
    height: 45%;
  }
}
.fv .chair03 {
  height: 85%;
  right: 40px;
  bottom: -20px;
  opacity: 0;
  /* animation: Chair03-fadeIn 1.8s ease-out 18s forwards; */
  /* animation: Chair-fadeInOut 3.5s ease-out 18s forwards; */
  /* animation: Chair05-fadeIn 3.5s ease-out 25s forwards; */
  animation: Chair-fadeInOut 3.5s ease-out 18s forwards;
}
@media screen and (min-width: 1025px) {
  .fv .chair03 {
    aspect-ratio: 1072/809;
  }
}
@media screen and (max-width: 1024px) {
  .fv .chair03 {
    right: -26.6666666667vw;
    height: 58%;
    width: auto;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: left;
       object-position: left;
    right: 0;
  }
}
@keyframes Chair03-fadeIn {
  to {
    opacity: 1;
  }
}
.fv .fv_text {
  position: absolute;
  color: #fff;
  text-align: left;
  z-index: 10;
  left: 0;
  bottom: 65px;
  width: 320px;
  border-bottom: 1px solid #fff;
  text-align: right;
  opacity: 0;
  animation: fvtext-fadeIn 0.7s ease 4.5s forwards;
}
@media (max-width: 768px) {
  .fv .fv_text {
    bottom: unset;
    top: 103px;
    width: 200px;
    left: 0;
  }
}
.fv .fv_text span {
  margin-top: 10px;
  display: block;
}
@media (max-width: 768px) {
  .fv .fv_text span {
    margin-top: 12px;
  }
}
@keyframes fvtext-fadeIn {
  to {
    opacity: 1;
  }
}

.fv svg {
  position: absolute;
  z-index: 20;
}

#layer_1 {
  top: 14%;
  right: 34px;
  width: -moz-fit-content !important;
  width: fit-content !important;
  height: 138% !important;
  opacity: 1;
  /* animation: layer-fadeout 1s ease-out 2.8s forwards; */
  animation: layer02-fadeout 1s ease-out 9.8s forwards;
  aspect-ratio: 940/1340;
}

#layer1_sp {
  bottom: 0;
  right: 0;
  width: auto;
  height: 64%;
  opacity: 1;
  /* animation: layer-fadeout 1s ease-out 2.8s forwards; */
  animation: layer02-fadeout 1s ease-out 9.8s forwards;
}

@keyframes layer-fadeout {
  to {
    opacity: 0;
  }
}
#layer_2 {
  height: 109%;
  bottom: -62px;
  width: -moz-fit-content !important;
  width: fit-content !important;
  bottom: 0;
  bottom: -63px;
  right: 0;
  opacity: 1;
  animation: layer02-fadeout 1s ease-out 9.8s forwards;
  /* animation: layer03-fadeout 1s ease-out 16.8s forwards; */
}
@media screen and (min-width: 1025px) {
  #layer_2 {
    aspect-ratio: 1318/937;
  }
}
@media screen and (max-width: 1024px) {
  #layer_2 {
    bottom: 7px;
    width: auto !important;
    height: 51% !important;
  }
}

@keyframes layer02-fadeout {
  to {
    opacity: 0;
  }
}
#layer_3 {
  height: 119% !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  top: 16%;
  right: 52px;
  opacity: 1;
    animation: layer03-fadeout 1s ease-out 16.8s forwards;
    /* animation: layer04-fadeout 1s ease-out 23.8s forwards; */
  aspect-ratio: 1106/1190;
}

#layer3_sp {
  bottom: -23px;
  right: 0;
  width: auto !important;
  height: 59% !important;
  opacity: 1;
  animation: layer03-fadeout 1s ease-out 16.8s forwards;
  /* animation: layer04-fadeout 1s ease-out 23.8s forwards; */
}

@keyframes layer03-fadein {
  to {
    opacity: 1;
  }
}
@keyframes layer03-fadeout {
  to {
    opacity: 0;
  }
}
.top_topics .top_topics_content .swiper-topics .swiper-wrapper {
  align-items: stretch;
}
.top_topics .top_topics_content .swiper-topics .swiper-slide {
  position: relative;
  height: auto;
  height: -moz-fit-content !important;
  height: fit-content !important;
  min-height: 200px;
}
.top_topics .top_topics_content .swiper-topics .swiper-slide img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (min-width: 769px) {
  .top_topics .top_topics_content .swiper-topics .swiper-slide img {
    width: 33vw;
  }
}
.top_topics .top_topics_content .swiper-topics .swiper-slide .txt_wrap .english,
.top_topics .top_topics_content .swiper-topics .swiper-slide .txt_wrap .title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: 3.75rem;
}
@media (max-width: 768px) {
  .top_topics .top_topics_content .swiper-topics .swiper-slide .txt_wrap .english,
  .top_topics .top_topics_content .swiper-topics .swiper-slide .txt_wrap .title {
    height: 42px;
  }
}
@media (max-width: 768px) {
  .top_topics .top_topics_content .swiper-topics .swiper-slide-next .txt_wrap,
  .top_topics .top_topics_content .swiper-topics .swiper-slide-prev .txt_wrap {
    display: none;
  }
}
@media (min-width: 769px) {
  .top_topics .top_topics_content .slider_arrow_wrap {
    margin-top: 0;
  }
}

.top_products {
  padding-bottom: 131px;
}
@media (max-width: 768px) {
  .top_products {
    padding-bottom: 64px;
  }
}
.top_products .top_products_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 45px 8px;
}
@media (max-width: 768px) {
  .top_products .top_products_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px 16px;
  }
}
.top_products .top_products_list li {
  width: calc(20% - 8px);
}
@media (max-width: 768px) {
  .top_products .top_products_list li {
    width: 100%;
  }
}
.top_products .top_products_list li a {
  text-decoration: none;
  transition: all 0.1s;
  color: #000;
}
.top_products_list li a figure{
  margin-bottom:1em;
}
@media (max-width: 768px){
  .top_products_list li a figure{
    margin-bottom:0.3em;
  }
}
.top_products .sec_title_jp{
  margin-bottom:3px;
}
.top_products .top_products_list li .hoverZoom img {
  transition: transform 0.5s ease;
  width: 85%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 768px) {
  .top_products .top_products_list li .hoverZoom img {
    width: 100%;
  }
}
.top_products .top_products_list li .hoverZoom:hover img {
  transform: scale(1.1);
}

.top_brands {
  background-color: #f5f5f5;
  padding-bottom: 96px;
}
@media (max-width: 768px) {
  .top_brands {
    padding-bottom: 40px;
  }
}

.top_brands .brands_list,
.p-brand .brands_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}
@media (max-width: 768px) {
  .top_brands .brands_list,
  .p-brand .brands_list {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
}
.top_brands .brands_list li,
.p-brand .brands_list li {
  position: relative;
}
.top_brands .brands_list li .txt_wrap,
.p-brand .brands_list li .txt_wrap {
  display: flex;
  position: absolute;
  bottom: 1.4rem;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  width: 100%;
  align-items: center;
}
@media (max-width: 768px) {
  .top_brands .brands_list li .txt_wrap,
  .p-brand .brands_list li .txt_wrap {
    bottom: 28px;
  }
}
@media (min-width: 769px) {
  .p-brand .about_item_wrap .text_wrap {
      position: relative;
      bottom: 8.1875rem;
  }
}
.p-brand .about_item_wrap .text_wrap .title{
  line-height: 1.5;
    margin-bottom: 0px;
}
.p-brand .about_item_wrap .text_wrap .heading{
  font-size: 13px;
  line-height: 1.5;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .p-brand .about_item_wrap .text_wrap {
      margin-bottom: 24px;
  }
  .p-brand .about_item_wrap .text_wrap .title {
    text-align: left;
    margin-bottom: 3px;
  }
  .p-brand .about_item_wrap .text_wrap .heading {
    text-align: left;
    line-height: 1.8;
    margin-bottom: 24px;
}

}
.brand_bg-img{
  height: 100%;
  width: 100%;
}
.brand-logo.adcore{
  height:27px;
}
.brand-logo.amode{
  height:19px;
}
.brand-logo.neo{
  height:17px;
}
.brand-logo.pma{
  height:19px;
}
@media (max-width: 768px) {
  .brand-logo.adcore{
    height:24px;
  }
  .brand-logo.amode{
    height:17px;
  }
  .brand-logo.neo{
    height:15.5px;
  }
  .brand-logo.pma{
    height:17px;
  }
}
.top_brands .brands_list li .txt_wrap .txt,
.p-brand .brands_list li .txt_wrap .txt {
  margin: 0.75vw 0 1.5vw;
}
.top_brands .brands_list li .txt_wrap .more_btn,
.p-brand .brands_list li .txt_wrap .more_btn {
  border-bottom: 1px solid #fff;
}
.top_brands .name,
.p-brand .name {
  margin: 0 auto;
}
.top_brands .top_brands_other_content .brands_other_content_wrap,
.p-brand .top_brands_other_content .brands_other_content_wrap {
  display: flex;
  gap: 8px;
}
.top_brands .top_brands_other_content .brands_other_content_wrap .item .txt_wrap,
.p-brand .top_brands_other_content .brands_other_content_wrap .item .txt_wrap {
  margin-top: 24px;
}
@media (max-width: 768px) {
  .top_brands .top_brands_other_content .brands_other_content_wrap .item .txt_wrap,
  .p-brand .top_brands_other_content .brands_other_content_wrap .item .txt_wrap {
    margin-top: 16px;
  }
}
.top_brands .top_brands_other_content .brands_other_content_wrap .item .txt_wrap .name,
.p-brand .top_brands_other_content .brands_other_content_wrap .item .txt_wrap .name {
  padding-left: 0;
}
.top_brands .top_brands_other_content .brands_other_content_wrap .item .txt_wrap .sec_title_jp,
.p-brand .top_brands_other_content .brands_other_content_wrap .item .txt_wrap .sec_title_jp {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .top_brands .top_brands_other_content .brands_other_content_wrap .item .more_btn,
  .p-brand .top_brands_other_content .brands_other_content_wrap .item .more_btn {
    margin-bottom: 24px;
  }
}

.top_column .swiper-column {
  margin-bottom: 24px;
}
.top_column .swiper-column .swiper-slide {
  text-align: left;
}
.top_column .swiper-column .swiper-slide img {
  -o-object-fit: contain;
     object-fit: contain;
  height: auto;
}
@media (max-width: 768px) {
  .top_column .swiper-column .swiper-slide-next .txt_wrap,
  .top_column .swiper-column .swiper-slide-next .title,
  .top_column .swiper-column .swiper-slide-next .txt,
  .top_column .swiper-column .swiper-slide-prev .txt_wrap,
  .top_column .swiper-column .swiper-slide-prev .title,
  .top_column .swiper-column .swiper-slide-prev .txt {
    display: none;
  }
}
.top_column .more_btn {
  margin-top: 28px;
}
@media (max-width: 768px) {
  .top_column .more_btn {
    margin-top: 16px;
  }
}

.top_news {
  padding-bottom: 136px;
}
@media (max-width: 768px) {
  .top_news {
    padding-bottom: 64px;
  }
}
.top_news .top_news_content .inner .item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  padding-bottom: 12px;
  margin-bottom: 24px;
}
@media (max-width: 768px) {
  .top_news .top_news_content .inner .item {
    padding-bottom: 6px;
    margin-bottom: 10px;
  }
}
.top_news .top_news_content .inner .item a {
  align-items: center;
  gap: 30px;
}
.top_news .top_news_content .inner .item a .txt_wrap {
  width: 150px;
}
@media (max-width: 768px) {
  .top_news .top_news_content .inner .item a .txt_wrap {
    width: 100px;
  }
}
.top_news .top_news_content .inner .item a .txt_wrap span.pipe {
  margin: 0 5px;
  padding: 0px 5px;
  font-family: "Shippori Mincho B1", serif;
}
.top_news .top_news_content .inner .item a .txt_wrap .date {
  /* width: 73px; */
}
.top_news .top_news_content .inner .item a .title {
  text-align: left;
}
.top_news .top_news_content .more_btn {
  margin-top: 48px;
}
@media (max-width: 768px) {
  .top_news .top_news_content .more_btn {
    margin-top: 16px;
  }
}

#topPage header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
#topPage header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  animation: fadeInDown 0.3s ease forwards;
}

.fv {
  margin-top: 0;
}

.sec_other {
  /* max-width: 1196px;
  width: calc(100% - 40px); */
  max-width: 1258px;
  width: calc(100% - 48px);
  margin: 0 auto;
  margin-top: 136px;
  margin-bottom:136px;
  padding: 72px 0;
  background-color: rgba(0, 0, 0, 0.08);
}
@media (max-width: 768px) {
  .sec_other {
    margin-top: 64px;
    padding: 8px 0 0px;
  }
  .sec_other{
    margin-bottom:64px;
  }
  .p-product-arch .sec_other{
    margin-bottom:64px;
  }
}

.sec_other .other_content_wrap {
  gap: 6.25rem;
  max-width: 1200px;
  margin: 0 auto;
  justify-content: center;
}
.sec_other .other_content_wrap .other_content {
  width: 40%;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}
@media (max-width: 768px) {
  .sec_other .other_content_wrap .other_content {
    width: 100%;
    padding-bottom: 40px;
  }
  .other_content_wrap .other_content:first-child{
    border:none;
  }
}
.sec_other .other_content_wrap .other_content h3 {
  margin: 34px 0 24px;
  text-align: center;
}
@media (max-width: 768px) {
  .sec_other .other_content_wrap .other_content h3 {
    margin: 32px 0 7px;
  }
}
.sec_other .other_content_wrap .other_content .txt_wrap {
  gap: 4.125rem;
  align-items: end;
}
.sec_other .other_content_wrap .other_content .txt_wrap p {
  text-align: left;
  margin-bottom: 18px;
  min-height: 88px;
}
@media screen and (max-width: 970px) {
  .sec_other .other_content_wrap .other_content .txt_wrap p {
    min-height: 128px;
  }
}
@media (max-width: 768px) {
  .sec_other .other_content_wrap .other_content .txt_wrap p {
    margin-bottom: 24px;
    min-height: unset;
  }
}
.sec_other .other_content_wrap .other_content .txt_wrap .btn_more {
  flex-shrink: 0;
}

/***************************************************
 * Generated by SVG Artista on 7/12/2025, 6:10:20 PM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/
@media screen and (max-width: 1024px) {
  #layer_1 {
    display: none;
  }
}
@keyframes animate-svg-stroke-1 {
  0% {
    stroke-dashoffset: 2.2707442939px;
    stroke-dasharray: 2.2707442939px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2707442939px;
  }
}
#layer_1 .svg-elem-1 {
  animation: animate-svg-stroke-1 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-2 {
  0% {
    stroke-dashoffset: 2.2900009155px;
    stroke-dasharray: 2.2900009155px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2900009155px;
  }
}
#layer_1 .svg-elem-2 {
  animation: animate-svg-stroke-2 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-3 {
  0% {
    stroke-dashoffset: 2.2900009155px;
    stroke-dasharray: 2.2900009155px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2900009155px;
  }
}
#layer_1 .svg-elem-3 {
  animation: animate-svg-stroke-3 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-4 {
  0% {
    stroke-dashoffset: 2.2799987793px;
    stroke-dasharray: 2.2799987793px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2799987793px;
  }
}
#layer_1 .svg-elem-4 {
  animation: animate-svg-stroke-4 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-5 {
  0% {
    stroke-dashoffset: 2.2531799078px;
    stroke-dasharray: 2.2531799078px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2531799078px;
  }
}
#layer_1 .svg-elem-5 {
  animation: animate-svg-stroke-5 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-6 {
  0% {
    stroke-dashoffset: 2.3206243515px;
    stroke-dasharray: 2.3206243515px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.3206243515px;
  }
}
#layer_1 .svg-elem-6 {
  animation: animate-svg-stroke-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-7 {
  0% {
    stroke-dashoffset: 2.3199996948px;
    stroke-dasharray: 2.3199996948px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.3199996948px;
  }
}
#layer_1 .svg-elem-7 {
  animation: animate-svg-stroke-7 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-8 {
  0% {
    stroke-dashoffset: 2.2600021362px;
    stroke-dasharray: 2.2600021362px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2600021362px;
  }
}
#layer_1 .svg-elem-8 {
  animation: animate-svg-stroke-8 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-9 {
  0% {
    stroke-dashoffset: 4.9499969482px;
    stroke-dasharray: 4.9499969482px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 4.9499969482px;
  }
}
#layer_1 .svg-elem-9 {
  animation: animate-svg-stroke-9 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-10 {
  0% {
    stroke-dashoffset: 5.260017395px;
    stroke-dasharray: 5.260017395px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.260017395px;
  }
}
#layer_1 .svg-elem-10 {
  animation: animate-svg-stroke-10 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-11 {
  0% {
    stroke-dashoffset: 2.2701893747px;
    stroke-dasharray: 2.2701893747px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2701893747px;
  }
}
#layer_1 .svg-elem-11 {
  animation: animate-svg-stroke-11 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-12 {
  0% {
    stroke-dashoffset: 2.2900009155px;
    stroke-dasharray: 2.2900009155px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2900009155px;
  }
}
#layer_1 .svg-elem-12 {
  animation: animate-svg-stroke-12 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-13 {
  0% {
    stroke-dashoffset: 2.2999992371px;
    stroke-dasharray: 2.2999992371px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2999992371px;
  }
}
#layer_1 .svg-elem-13 {
  animation: animate-svg-stroke-13 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-14 {
  0% {
    stroke-dashoffset: 2.2800006866px;
    stroke-dasharray: 2.2800006866px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2800006866px;
  }
}
#layer_1 .svg-elem-14 {
  animation: animate-svg-stroke-14 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-15 {
  0% {
    stroke-dashoffset: 2.2531796396px;
    stroke-dasharray: 2.2531796396px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2531796396px;
  }
}
#layer_1 .svg-elem-15 {
  animation: animate-svg-stroke-15 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-16 {
  0% {
    stroke-dashoffset: 2.3214028478px;
    stroke-dasharray: 2.3214028478px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.3214028478px;
  }
}
#layer_1 .svg-elem-16 {
  animation: animate-svg-stroke-16 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-17 {
  0% {
    stroke-dashoffset: 2.3199996948px;
    stroke-dasharray: 2.3199996948px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.3199996948px;
  }
}
#layer_1 .svg-elem-17 {
  animation: animate-svg-stroke-17 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-18 {
  0% {
    stroke-dashoffset: 2.25px;
    stroke-dasharray: 2.25px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.25px;
  }
}
#layer_1 .svg-elem-18 {
  animation: animate-svg-stroke-18 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-19 {
  0% {
    stroke-dashoffset: 4.9499998093px;
    stroke-dasharray: 4.9499998093px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 4.9499998093px;
  }
}
#layer_1 .svg-elem-19 {
  animation: animate-svg-stroke-19 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-20 {
  0% {
    stroke-dashoffset: 5.260014534px;
    stroke-dasharray: 5.260014534px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.260014534px;
  }
}
#layer_1 .svg-elem-20 {
  animation: animate-svg-stroke-20 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-21 {
  0% {
    stroke-dashoffset: 5.5135891438px;
    stroke-dasharray: 5.5135891438px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.5135891438px;
  }
}
#layer_1 .svg-elem-21 {
  animation: animate-svg-stroke-21 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-22 {
  0% {
    stroke-dashoffset: 108.3033599854px;
    stroke-dasharray: 108.3033599854px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 108.3033599854px;
  }
}
#layer_1 .svg-elem-22 {
  animation: animate-svg-stroke-22 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-23 {
  0% {
    stroke-dashoffset: 3.5201357603px;
    stroke-dasharray: 3.5201357603px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.5201357603px;
  }
}
#layer_1 .svg-elem-23 {
  animation: animate-svg-stroke-23 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-24 {
  0% {
    stroke-dashoffset: 3.160246253px;
    stroke-dasharray: 3.160246253px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.160246253px;
  }
}
#layer_1 .svg-elem-24 {
  animation: animate-svg-stroke-24 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-25 {
  0% {
    stroke-dashoffset: 13.0600385666px;
    stroke-dasharray: 13.0600385666px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 13.0600385666px;
  }
}
#layer_1 .svg-elem-25 {
  animation: animate-svg-stroke-25 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-26 {
  0% {
    stroke-dashoffset: 108.3596801758px;
    stroke-dasharray: 108.3596801758px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 108.3596801758px;
  }
}
#layer_1 .svg-elem-26 {
  animation: animate-svg-stroke-26 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-27 {
  0% {
    stroke-dashoffset: 3.5201314688px;
    stroke-dasharray: 3.5201314688px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.5201314688px;
  }
}
#layer_1 .svg-elem-27 {
  animation: animate-svg-stroke-27 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-28 {
  0% {
    stroke-dashoffset: 3.1662634611px;
    stroke-dasharray: 3.1662634611px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.1662634611px;
  }
}
#layer_1 .svg-elem-28 {
  animation: animate-svg-stroke-28 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-29 {
  0% {
    stroke-dashoffset: 13.0500717163px;
    stroke-dasharray: 13.0500717163px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 13.0500717163px;
  }
}
#layer_1 .svg-elem-29 {
  animation: animate-svg-stroke-29 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-30 {
  0% {
    stroke-dashoffset: 30.1805934906px;
    stroke-dasharray: 30.1805934906px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 30.1805934906px;
  }
}
#layer_1 .svg-elem-30 {
  animation: animate-svg-stroke-30 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-31 {
  0% {
    stroke-dashoffset: 2.204135716px;
    stroke-dasharray: 2.204135716px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.204135716px;
  }
}
#layer_1 .svg-elem-31 {
  animation: animate-svg-stroke-31 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-32 {
  0% {
    stroke-dashoffset: 9.9435248375px;
    stroke-dasharray: 9.9435248375px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 9.9435248375px;
  }
}
#layer_1 .svg-elem-32 {
  animation: animate-svg-stroke-32 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-33 {
  0% {
    stroke-dashoffset: 2.8936658502px;
    stroke-dasharray: 2.8936658502px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.8936658502px;
  }
}
#layer_1 .svg-elem-33 {
  animation: animate-svg-stroke-33 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-34 {
  0% {
    stroke-dashoffset: 30.1805915833px;
    stroke-dasharray: 30.1805915833px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 30.1805915833px;
  }
}
#layer_1 .svg-elem-34 {
  animation: animate-svg-stroke-34 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-35 {
  0% {
    stroke-dashoffset: 2.2041385919px;
    stroke-dasharray: 2.2041385919px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.2041385919px;
  }
}
#layer_1 .svg-elem-35 {
  animation: animate-svg-stroke-35 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-36 {
  0% {
    stroke-dashoffset: 2.9080140591px;
    stroke-dasharray: 2.9080140591px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.9080140591px;
  }
}
#layer_1 .svg-elem-36 {
  animation: animate-svg-stroke-36 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-37 {
  0% {
    stroke-dashoffset: 9.9435987473px;
    stroke-dasharray: 9.9435987473px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 9.9435987473px;
  }
}
#layer_1 .svg-elem-37 {
  animation: animate-svg-stroke-37 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-38 {
  0% {
    stroke-dashoffset: 78.2437057495px;
    stroke-dasharray: 78.2437057495px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 78.2437057495px;
  }
}
#layer_1 .svg-elem-38 {
  animation: animate-svg-stroke-38 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-39 {
  0% {
    stroke-dashoffset: 30.8062744141px;
    stroke-dasharray: 30.8062744141px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 30.8062744141px;
  }
}
#layer_1 .svg-elem-39 {
  animation: animate-svg-stroke-39 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-40 {
  0% {
    stroke-dashoffset: 3.7641451359px;
    stroke-dasharray: 3.7641451359px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.7641451359px;
  }
}
#layer_1 .svg-elem-40 {
  animation: animate-svg-stroke-40 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-41 {
  0% {
    stroke-dashoffset: 30.8064594269px;
    stroke-dasharray: 30.8064594269px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 30.8064594269px;
  }
}
#layer_1 .svg-elem-41 {
  animation: animate-svg-stroke-41 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-42 {
  0% {
    stroke-dashoffset: 3.7639613152px;
    stroke-dasharray: 3.7639613152px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.7639613152px;
  }
}
#layer_1 .svg-elem-42 {
  animation: animate-svg-stroke-42 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-43 {
  0% {
    stroke-dashoffset: 38.367931366px;
    stroke-dasharray: 38.367931366px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 38.367931366px;
  }
}
#layer_1 .svg-elem-43 {
  animation: animate-svg-stroke-43 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-44 {
  0% {
    stroke-dashoffset: 2.8033044338px;
    stroke-dasharray: 2.8033044338px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.8033044338px;
  }
}
#layer_1 .svg-elem-44 {
  animation: animate-svg-stroke-44 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-45 {
  0% {
    stroke-dashoffset: 2.8397251964px;
    stroke-dasharray: 2.8397251964px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.8397251964px;
  }
}
#layer_1 .svg-elem-45 {
  animation: animate-svg-stroke-45 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-46 {
  0% {
    stroke-dashoffset: 38.3781738281px;
    stroke-dasharray: 38.3781738281px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 38.3781738281px;
  }
}
#layer_1 .svg-elem-46 {
  animation: animate-svg-stroke-46 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-47 {
  0% {
    stroke-dashoffset: 34.4539794922px;
    stroke-dasharray: 34.4539794922px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 34.4539794922px;
  }
}
#layer_1 .svg-elem-47 {
  animation: animate-svg-stroke-47 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-48 {
  0% {
    stroke-dashoffset: 34.4347419739px;
    stroke-dasharray: 34.4347419739px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 34.4347419739px;
  }
}
#layer_1 .svg-elem-48 {
  animation: animate-svg-stroke-48 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-49 {
  0% {
    stroke-dashoffset: 72.1800003052px;
    stroke-dasharray: 72.1800003052px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 72.1800003052px;
  }
}
#layer_1 .svg-elem-49 {
  animation: animate-svg-stroke-49 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-50 {
  0% {
    stroke-dashoffset: 2.529999733px;
    stroke-dasharray: 2.529999733px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.529999733px;
  }
}
#layer_1 .svg-elem-50 {
  animation: animate-svg-stroke-50 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-51 {
  0% {
    stroke-dashoffset: 33.5976581573px;
    stroke-dasharray: 33.5976581573px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 33.5976581573px;
  }
}
#layer_1 .svg-elem-51 {
  animation: animate-svg-stroke-51 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-52 {
  0% {
    stroke-dashoffset: 33.5978965759px;
    stroke-dasharray: 33.5978965759px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 33.5978965759px;
  }
}
#layer_1 .svg-elem-52 {
  animation: animate-svg-stroke-52 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-53 {
  0% {
    stroke-dashoffset: 5.5130944252px;
    stroke-dasharray: 5.5130944252px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.5130944252px;
  }
}
#layer_1 .svg-elem-53 {
  animation: animate-svg-stroke-53 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-54 {
  0% {
    stroke-dashoffset: 108.065246582px;
    stroke-dasharray: 108.065246582px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 108.065246582px;
  }
}
#layer_1 .svg-elem-54 {
  animation: animate-svg-stroke-54 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-55 {
  0% {
    stroke-dashoffset: 108.0652313232px;
    stroke-dasharray: 108.0652313232px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 108.0652313232px;
  }
}
#layer_1 .svg-elem-55 {
  animation: animate-svg-stroke-55 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-56 {
  0% {
    stroke-dashoffset: 111.810798645px;
    stroke-dasharray: 111.810798645px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 111.810798645px;
  }
}
#layer_1 .svg-elem-56 {
  animation: animate-svg-stroke-56 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-57 {
  0% {
    stroke-dashoffset: 111.9204788208px;
    stroke-dasharray: 111.9204788208px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 111.9204788208px;
  }
}
#layer_1 .svg-elem-57 {
  animation: animate-svg-stroke-57 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-58 {
  0% {
    stroke-dashoffset: 108.0660476685px;
    stroke-dasharray: 108.0660476685px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 108.0660476685px;
  }
}
#layer_1 .svg-elem-58 {
  animation: animate-svg-stroke-58 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-59 {
  0% {
    stroke-dashoffset: 111.810798645px;
    stroke-dasharray: 111.810798645px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 111.810798645px;
  }
}
#layer_1 .svg-elem-59 {
  animation: animate-svg-stroke-59 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-60 {
  0% {
    stroke-dashoffset: 111.8046646118px;
    stroke-dasharray: 111.8046646118px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 111.8046646118px;
  }
}
#layer_1 .svg-elem-60 {
  animation: animate-svg-stroke-60 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-61 {
  0% {
    stroke-dashoffset: 108.0660476685px;
    stroke-dasharray: 108.0660476685px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 108.0660476685px;
  }
}
#layer_1 .svg-elem-61 {
  animation: animate-svg-stroke-61 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}

#layer1_sp {
  /***************************************************
  * Generated by SVG Artista on 9/1/2025, 1:23:16 PM
  * MIT license (https://opensource.org/licenses/MIT)
  * W. https://svgartista.net
  **************************************************/
  /***************************************************
   * Generated by SVG Artista on 9/9/2025, 12:12:53 AM
   * MIT license (https://opensource.org/licenses/MIT)
   * W. https://svgartista.net
   **************************************************/
}
@media screen and (min-width: 1025px) {
  #layer1_sp {
    display: none;
  }
}
@keyframes animate-svg-stroke-chair01-sp-1 {
  0% {
    stroke-dashoffset: 16.2616834641px;
    stroke-dasharray: 16.2616834641px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 16.2616834641px;
  }
}
#layer1_sp .svg-elem-chair01-sp-1 {
  animation: animate-svg-stroke-chair01-sp-1 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-2 {
  0% {
    stroke-dashoffset: 432.365234375px;
    stroke-dasharray: 432.365234375px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 432.365234375px;
  }
}
#layer1_sp .svg-elem-chair01-sp-2 {
  animation: animate-svg-stroke-chair01-sp-2 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-3 {
  0% {
    stroke-dashoffset: 432.5935974121px;
    stroke-dasharray: 432.5935974121px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 432.5935974121px;
  }
}
#layer1_sp .svg-elem-chair01-sp-3 {
  animation: animate-svg-stroke-chair01-sp-3 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-4 {
  0% {
    stroke-dashoffset: 8.1710314751px;
    stroke-dasharray: 8.1710314751px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 8.1710314751px;
  }
}
#layer1_sp .svg-elem-chair01-sp-4 {
  animation: animate-svg-stroke-chair01-sp-4 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-5 {
  0% {
    stroke-dashoffset: 6.7249488831px;
    stroke-dasharray: 6.7249488831px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 6.7249488831px;
  }
}
#layer1_sp .svg-elem-chair01-sp-5 {
  animation: animate-svg-stroke-chair01-sp-5 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-6 {
  0% {
    stroke-dashoffset: 46.672290802px;
    stroke-dasharray: 46.672290802px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 46.672290802px;
  }
}
#layer1_sp .svg-elem-chair01-sp-6 {
  animation: animate-svg-stroke-chair01-sp-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-7 {
  0% {
    stroke-dashoffset: 116.3983840942px;
    stroke-dasharray: 116.3983840942px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 116.3983840942px;
  }
}
#layer1_sp .svg-elem-chair01-sp-7 {
  animation: animate-svg-stroke-chair01-sp-7 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-8 {
  0% {
    stroke-dashoffset: 116.3993911743px;
    stroke-dasharray: 116.3993911743px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 116.3993911743px;
  }
}
#layer1_sp .svg-elem-chair01-sp-8 {
  animation: animate-svg-stroke-chair01-sp-8 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-9 {
  0% {
    stroke-dashoffset: 2.828602314px;
    stroke-dasharray: 2.828602314px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.828602314px;
  }
}
#layer1_sp .svg-elem-chair01-sp-9 {
  animation: animate-svg-stroke-chair01-sp-9 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-10 {
  0% {
    stroke-dashoffset: 5.6828000546px;
    stroke-dasharray: 5.6828000546px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.6828000546px;
  }
}
#layer1_sp .svg-elem-chair01-sp-10 {
  animation: animate-svg-stroke-chair01-sp-10 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-11 {
  0% {
    stroke-dashoffset: 34.2469863892px;
    stroke-dasharray: 34.2469863892px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 34.2469863892px;
  }
}
#layer1_sp .svg-elem-chair01-sp-11 {
  animation: animate-svg-stroke-chair01-sp-11 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-12 {
  0% {
    stroke-dashoffset: 311.4535522461px;
    stroke-dasharray: 311.4535522461px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 311.4535522461px;
  }
}
#layer1_sp .svg-elem-chair01-sp-12 {
  animation: animate-svg-stroke-chair01-sp-12 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-13 {
  0% {
    stroke-dashoffset: 118.9387054443px;
    stroke-dasharray: 118.9387054443px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 118.9387054443px;
  }
}
#layer1_sp .svg-elem-chair01-sp-13 {
  animation: animate-svg-stroke-chair01-sp-13 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-14 {
  0% {
    stroke-dashoffset: 9.1607351303px;
    stroke-dasharray: 9.1607351303px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 9.1607351303px;
  }
}
#layer1_sp .svg-elem-chair01-sp-14 {
  animation: animate-svg-stroke-chair01-sp-14 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-15 {
  0% {
    stroke-dashoffset: 118.9389190674px;
    stroke-dasharray: 118.9389190674px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 118.9389190674px;
  }
}
#layer1_sp .svg-elem-chair01-sp-15 {
  animation: animate-svg-stroke-chair01-sp-15 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-16 {
  0% {
    stroke-dashoffset: 149.6359405518px;
    stroke-dasharray: 149.6359405518px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 149.6359405518px;
  }
}
#layer1_sp .svg-elem-chair01-sp-16 {
  animation: animate-svg-stroke-chair01-sp-16 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-17 {
  0% {
    stroke-dashoffset: 5.2587654591px;
    stroke-dasharray: 5.2587654591px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.2587654591px;
  }
}
#layer1_sp .svg-elem-chair01-sp-17 {
  animation: animate-svg-stroke-chair01-sp-17 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-18 {
  0% {
    stroke-dashoffset: 149.6778869629px;
    stroke-dasharray: 149.6778869629px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 149.6778869629px;
  }
}
#layer1_sp .svg-elem-chair01-sp-18 {
  animation: animate-svg-stroke-chair01-sp-18 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-19 {
  0% {
    stroke-dashoffset: 133.182144165px;
    stroke-dasharray: 133.182144165px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 133.182144165px;
  }
}
#layer1_sp .svg-elem-chair01-sp-19 {
  animation: animate-svg-stroke-chair01-sp-19 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-20 {
  0% {
    stroke-dashoffset: 286.896697998px;
    stroke-dasharray: 286.896697998px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 286.896697998px;
  }
}
#layer1_sp .svg-elem-chair01-sp-20 {
  animation: animate-svg-stroke-chair01-sp-20 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-21 {
  0% {
    stroke-dashoffset: 4.1515007019px;
    stroke-dasharray: 4.1515007019px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 4.1515007019px;
  }
}
#layer1_sp .svg-elem-chair01-sp-21 {
  animation: animate-svg-stroke-chair01-sp-21 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-22 {
  0% {
    stroke-dashoffset: 129.8443069458px;
    stroke-dasharray: 129.8443069458px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 129.8443069458px;
  }
}
#layer1_sp .svg-elem-chair01-sp-22 {
  animation: animate-svg-stroke-chair01-sp-22 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-23 {
  0% {
    stroke-dashoffset: 446.093963623px;
    stroke-dasharray: 446.093963623px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 446.093963623px;
  }
}
#layer1_sp .svg-elem-chair01-sp-23 {
  animation: animate-svg-stroke-chair01-sp-23 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-24 {
  0% {
    stroke-dashoffset: 430.9655761719px;
    stroke-dasharray: 430.9655761719px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 430.9655761719px;
  }
}
#layer1_sp .svg-elem-chair01-sp-24 {
  animation: animate-svg-stroke-chair01-sp-24 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-25 {
  0% {
    stroke-dashoffset: 446.0940246582px;
    stroke-dasharray: 446.0940246582px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 446.0940246582px;
  }
}
#layer1_sp .svg-elem-chair01-sp-25 {
  animation: animate-svg-stroke-chair01-sp-25 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke-chair01-sp-26 {
  0% {
    stroke-dashoffset: 430.965637207px;
    stroke-dasharray: 430.965637207px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 430.965637207px;
  }
}
#layer1_sp .svg-elem-chair01-sp-26 {
  animation: animate-svg-stroke-chair01-sp-26 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}

/***************************************************
 * Generated by SVG Artista on 8/5/2025, 12:04:42 PM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/
#layer_2 {
  /***************************************************
  * Generated by SVG Artista on 10/28/2025, 1:43:57 AM
  * MIT license (https://opensource.org/licenses/MIT)
  * W. https://svgartista.net
  **************************************************/
}
@keyframes animate-svg-stroke02-1 {
  0% {
    stroke-dashoffset: 1801.1353759766px;
    stroke-dasharray: 1801.1353759766px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1801.1353759766px;
  }
}
#layer_2 .svg-elem-chair02-1 {
  animation: animate-svg-stroke02-1 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-2 {
  0% {
    stroke-dashoffset: 1801.1246337891px;
    stroke-dasharray: 1801.1246337891px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1801.1246337891px;
  }
}
#layer_2 .svg-elem-chair02-2 {
  animation: animate-svg-stroke02-2 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-3 {
  0% {
    stroke-dashoffset: 1921.0592041016px;
    stroke-dasharray: 1921.0592041016px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1921.0592041016px;
  }
}
#layer_2 .svg-elem-chair02-3 {
  animation: animate-svg-stroke02-3 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-4 {
  0% {
    stroke-dashoffset: 1921.0056152344px;
    stroke-dasharray: 1921.0056152344px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1921.0056152344px;
  }
}
#layer_2 .svg-elem-chair02-4 {
  animation: animate-svg-stroke02-4 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-5 {
  0% {
    stroke-dashoffset: 859.7155151367px;
    stroke-dasharray: 859.7155151367px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 859.7155151367px;
  }
}
#layer_2 .svg-elem-chair02-5 {
  animation: animate-svg-stroke02-5 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-6 {
  0% {
    stroke-dashoffset: 776.3530273438px;
    stroke-dasharray: 776.3530273438px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 776.3530273438px;
  }
}
#layer_2 .svg-elem-chair02-6 {
  animation: animate-svg-stroke02-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-7 {
  0% {
    stroke-dashoffset: 1060.0496826172px;
    stroke-dasharray: 1060.0496826172px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1060.0496826172px;
  }
}
#layer_2 .svg-elem-chair02-7 {
  animation: animate-svg-stroke02-7 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-8 {
  0% {
    stroke-dashoffset: 169.6784057617px;
    stroke-dasharray: 169.6784057617px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 169.6784057617px;
  }
}
#layer_2 .svg-elem-chair02-8 {
  animation: animate-svg-stroke02-8 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-9 {
  0% {
    stroke-dashoffset: 19.1409873962px;
    stroke-dasharray: 19.1409873962px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 19.1409873962px;
  }
}
#layer_2 .svg-elem-chair02-9 {
  animation: animate-svg-stroke02-9 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-10 {
  0% {
    stroke-dashoffset: 19.1350231171px;
    stroke-dasharray: 19.1350231171px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 19.1350231171px;
  }
}
#layer_2 .svg-elem-chair02-10 {
  animation: animate-svg-stroke02-10 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-11 {
  0% {
    stroke-dashoffset: 168.1508483887px;
    stroke-dasharray: 168.1508483887px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 168.1508483887px;
  }
}
#layer_2 .svg-elem-chair02-11 {
  animation: animate-svg-stroke02-11 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-12 {
  0% {
    stroke-dashoffset: 2232.4853515625px;
    stroke-dasharray: 2232.4853515625px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2232.4853515625px;
  }
}
#layer_2 .svg-elem-chair02-12 {
  animation: animate-svg-stroke02-12 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-13 {
  0% {
    stroke-dashoffset: 2232.3310546875px;
    stroke-dasharray: 2232.3310546875px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2232.3310546875px;
  }
}
#layer_2 .svg-elem-chair02-13 {
  animation: animate-svg-stroke02-13 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-14 {
  0% {
    stroke-dashoffset: 531.8886108398px;
    stroke-dasharray: 531.8886108398px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 531.8886108398px;
  }
}
#layer_2 .svg-elem-chair02-14 {
  animation: animate-svg-stroke02-14 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-15 {
  0% {
    stroke-dashoffset: 1903.3265380859px;
    stroke-dasharray: 1903.3265380859px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1903.3265380859px;
  }
}
#layer_2 .svg-elem-chair02-15 {
  animation: animate-svg-stroke02-15 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-16 {
  0% {
    stroke-dashoffset: 583.1705322266px;
    stroke-dasharray: 583.1705322266px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 583.1705322266px;
  }
}
#layer_2 .svg-elem-chair02-16 {
  animation: animate-svg-stroke02-16 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-17 {
  0% {
    stroke-dashoffset: 1321.958984375px;
    stroke-dasharray: 1321.958984375px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1321.958984375px;
  }
}
#layer_2 .svg-elem-chair02-17 {
  animation: animate-svg-stroke02-17 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-18 {
  0% {
    stroke-dashoffset: 2.0874079615px;
    stroke-dasharray: 2.0874079615px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.0874079615px;
  }
}
#layer_2 .svg-elem-chair02-18 {
  animation: animate-svg-stroke02-18 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-19 {
  0% {
    stroke-dashoffset: 324.3741149902px;
    stroke-dasharray: 324.3741149902px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 324.3741149902px;
  }
}
#layer_2 .svg-elem-chair02-19 {
  animation: animate-svg-stroke02-19 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-20 {
  0% {
    stroke-dashoffset: 80.5432052612px;
    stroke-dasharray: 80.5432052612px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 80.5432052612px;
  }
}
#layer_2 .svg-elem-chair02-20 {
  animation: animate-svg-stroke02-20 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-21 {
  0% {
    stroke-dashoffset: 47.7536697388px;
    stroke-dasharray: 47.7536697388px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 47.7536697388px;
  }
}
#layer_2 .svg-elem-chair02-21 {
  animation: animate-svg-stroke02-21 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-22 {
  0% {
    stroke-dashoffset: 39.881061554px;
    stroke-dasharray: 39.881061554px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 39.881061554px;
  }
}
#layer_2 .svg-elem-chair02-22 {
  animation: animate-svg-stroke02-22 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-23 {
  0% {
    stroke-dashoffset: 52.0245666504px;
    stroke-dasharray: 52.0245666504px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 52.0245666504px;
  }
}
#layer_2 .svg-elem-chair02-23 {
  animation: animate-svg-stroke02-23 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-24 {
  0% {
    stroke-dashoffset: 3.0335072279px;
    stroke-dasharray: 3.0335072279px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 3.0335072279px;
  }
}
#layer_2 .svg-elem-chair02-24 {
  animation: animate-svg-stroke02-24 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-25 {
  0% {
    stroke-dashoffset: 301.7614746094px;
    stroke-dasharray: 301.7614746094px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 301.7614746094px;
  }
}
#layer_2 .svg-elem-chair02-25 {
  animation: animate-svg-stroke02-25 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-26 {
  0% {
    stroke-dashoffset: 68.9452209473px;
    stroke-dasharray: 68.9452209473px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 68.9452209473px;
  }
}
#layer_2 .svg-elem-chair02-26 {
  animation: animate-svg-stroke02-26 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-27 {
  0% {
    stroke-dashoffset: 39.8459968567px;
    stroke-dasharray: 39.8459968567px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 39.8459968567px;
  }
}
#layer_2 .svg-elem-chair02-27 {
  animation: animate-svg-stroke02-27 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-28 {
  0% {
    stroke-dashoffset: 24.4481830597px;
    stroke-dasharray: 24.4481830597px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 24.4481830597px;
  }
}
#layer_2 .svg-elem-chair02-28 {
  animation: animate-svg-stroke02-28 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-29 {
  0% {
    stroke-dashoffset: 48.6067810059px;
    stroke-dasharray: 48.6067810059px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 48.6067810059px;
  }
}
#layer_2 .svg-elem-chair02-29 {
  animation: animate-svg-stroke02-29 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-30 {
  0% {
    stroke-dashoffset: 326.3950195313px;
    stroke-dasharray: 326.3950195313px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 326.3950195313px;
  }
}
#layer_2 .svg-elem-chair02-30 {
  animation: animate-svg-stroke02-30 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-31 {
  0% {
    stroke-dashoffset: 348.2989196777px;
    stroke-dasharray: 348.2989196777px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 348.2989196777px;
  }
}
#layer_2 .svg-elem-chair02-31 {
  animation: animate-svg-stroke02-31 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-32 {
  0% {
    stroke-dashoffset: 167.2171020508px;
    stroke-dasharray: 167.2171020508px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 167.2171020508px;
  }
}
#layer_2 .svg-elem-chair02-32 {
  animation: animate-svg-stroke02-32 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-33 {
  0% {
    stroke-dashoffset: 35.8557434082px;
    stroke-dasharray: 35.8557434082px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 35.8557434082px;
  }
}
#layer_2 .svg-elem-chair02-33 {
  animation: animate-svg-stroke02-33 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-34 {
  0% {
    stroke-dashoffset: 14.5216989517px;
    stroke-dasharray: 14.5216989517px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 14.5216989517px;
  }
}
#layer_2 .svg-elem-chair02-34 {
  animation: animate-svg-stroke02-34 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-35 {
  0% {
    stroke-dashoffset: 12.5615148544px;
    stroke-dasharray: 12.5615148544px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 12.5615148544px;
  }
}
#layer_2 .svg-elem-chair02-35 {
  animation: animate-svg-stroke02-35 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-36 {
  0% {
    stroke-dashoffset: 381.6953735352px;
    stroke-dasharray: 381.6953735352px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 381.6953735352px;
  }
}
#layer_2 .svg-elem-chair02-36 {
  animation: animate-svg-stroke02-36 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-37 {
  0% {
    stroke-dashoffset: 12.2223834991px;
    stroke-dasharray: 12.2223834991px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 12.2223834991px;
  }
}
#layer_2 .svg-elem-chair02-37 {
  animation: animate-svg-stroke02-37 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-38 {
  0% {
    stroke-dashoffset: 16.3606214523px;
    stroke-dasharray: 16.3606214523px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 16.3606214523px;
  }
}
#layer_2 .svg-elem-chair02-38 {
  animation: animate-svg-stroke02-38 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-39 {
  0% {
    stroke-dashoffset: 909.5139770508px;
    stroke-dasharray: 909.5139770508px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 909.5139770508px;
  }
}
#layer_2 .svg-elem-chair02-39 {
  animation: animate-svg-stroke02-39 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-40 {
  0% {
    stroke-dashoffset: 817.7670898438px;
    stroke-dasharray: 817.7670898438px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 817.7670898438px;
  }
}
#layer_2 .svg-elem-chair02-40 {
  animation: animate-svg-stroke02-40 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-41 {
  0% {
    stroke-dashoffset: 816.9800415039px;
    stroke-dasharray: 816.9800415039px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 816.9800415039px;
  }
}
#layer_2 .svg-elem-chair02-41 {
  animation: animate-svg-stroke02-41 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-42 {
  0% {
    stroke-dashoffset: 596.7701416016px;
    stroke-dasharray: 596.7701416016px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 596.7701416016px;
  }
}
#layer_2 .svg-elem-chair02-42 {
  animation: animate-svg-stroke02-42 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-43 {
  0% {
    stroke-dashoffset: 299.4840087891px;
    stroke-dasharray: 299.4840087891px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 299.4840087891px;
  }
}
#layer_2 .svg-elem-chair02-43 {
  animation: animate-svg-stroke02-43 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-44 {
  0% {
    stroke-dashoffset: 501.749206543px;
    stroke-dasharray: 501.749206543px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 501.749206543px;
  }
}
#layer_2 .svg-elem-chair02-44 {
  animation: animate-svg-stroke02-44 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-45 {
  0% {
    stroke-dashoffset: 254.2878417969px;
    stroke-dasharray: 254.2878417969px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 254.2878417969px;
  }
}
#layer_2 .svg-elem-chair02-45 {
  animation: animate-svg-stroke02-45 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-46 {
  0% {
    stroke-dashoffset: 723.8286743164px;
    stroke-dasharray: 723.8286743164px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 723.8286743164px;
  }
}
#layer_2 .svg-elem-chair02-46 {
  animation: animate-svg-stroke02-46 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-47 {
  0% {
    stroke-dashoffset: 723.1707763672px;
    stroke-dasharray: 723.1707763672px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 723.1707763672px;
  }
}
#layer_2 .svg-elem-chair02-47 {
  animation: animate-svg-stroke02-47 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-48 {
  0% {
    stroke-dashoffset: 528.3356323242px;
    stroke-dasharray: 528.3356323242px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 528.3356323242px;
  }
}
#layer_2 .svg-elem-chair02-48 {
  animation: animate-svg-stroke02-48 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-49 {
  0% {
    stroke-dashoffset: 265.2368164063px;
    stroke-dasharray: 265.2368164063px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 265.2368164063px;
  }
}
#layer_2 .svg-elem-chair02-49 {
  animation: animate-svg-stroke02-49 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-50 {
  0% {
    stroke-dashoffset: 444.2481384277px;
    stroke-dasharray: 444.2481384277px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 444.2481384277px;
  }
}
#layer_2 .svg-elem-chair02-50 {
  animation: animate-svg-stroke02-50 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-51 {
  0% {
    stroke-dashoffset: 225.2590026855px;
    stroke-dasharray: 225.2590026855px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 225.2590026855px;
  }
}
#layer_2 .svg-elem-chair02-51 {
  animation: animate-svg-stroke02-51 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-52 {
  0% {
    stroke-dashoffset: 2539.9318847656px;
    stroke-dasharray: 2539.9318847656px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2539.9318847656px;
  }
}
#layer_2 .svg-elem-chair02-52 {
  animation: animate-svg-stroke02-52 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-53 {
  0% {
    stroke-dashoffset: 2539.97265625px;
    stroke-dasharray: 2539.97265625px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2539.97265625px;
  }
}
#layer_2 .svg-elem-chair02-53 {
  animation: animate-svg-stroke02-53 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-54 {
  0% {
    stroke-dashoffset: 1733.6519775391px;
    stroke-dasharray: 1733.6519775391px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1733.6519775391px;
  }
}
#layer_2 .svg-elem-chair02-54 {
  animation: animate-svg-stroke02-54 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-55 {
  0% {
    stroke-dashoffset: 1618.6435546875px;
    stroke-dasharray: 1618.6435546875px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1618.6435546875px;
  }
}
#layer_2 .svg-elem-chair02-55 {
  animation: animate-svg-stroke02-55 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-56 {
  0% {
    stroke-dashoffset: 768.1521606445px;
    stroke-dasharray: 768.1521606445px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 768.1521606445px;
  }
}
#layer_2 .svg-elem-chair02-56 {
  animation: animate-svg-stroke02-56 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-57 {
  0% {
    stroke-dashoffset: 715.2860717773px;
    stroke-dasharray: 715.2860717773px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 715.2860717773px;
  }
}
#layer_2 .svg-elem-chair02-57 {
  animation: animate-svg-stroke02-57 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-58 {
  0% {
    stroke-dashoffset: 653.4481811523px;
    stroke-dasharray: 653.4481811523px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 653.4481811523px;
  }
}
#layer_2 .svg-elem-chair02-58 {
  animation: animate-svg-stroke02-58 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-59 {
  0% {
    stroke-dashoffset: 381.6956481934px;
    stroke-dasharray: 381.6956481934px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 381.6956481934px;
  }
}
#layer_2 .svg-elem-chair02-59 {
  animation: animate-svg-stroke02-59 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-60 {
  0% {
    stroke-dashoffset: 12.4504432678px;
    stroke-dasharray: 12.4504432678px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 12.4504432678px;
  }
}
#layer_2 .svg-elem-chair02-60 {
  animation: animate-svg-stroke02-60 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-61 {
  0% {
    stroke-dashoffset: 16.3625717163px;
    stroke-dasharray: 16.3625717163px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 16.3625717163px;
  }
}
#layer_2 .svg-elem-chair02-61 {
  animation: animate-svg-stroke02-61 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}
@keyframes animate-svg-stroke02-62 {
  0% {
    stroke-dashoffset: 6087.8603515625px;
    stroke-dasharray: 6087.8603515625px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 6087.8603515625px;
  }
}
#layer_2 .svg-elem-chair02-62 {
  animation: animate-svg-stroke02-62 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 8s both;
}

@media screen and (max-width: 1024px) {
  #layer_3 {
    display: none;
  }
}

@-webkit-keyframes animate-svg-stroke03-1 {
  0% {
    stroke-dashoffset: 1590.71630859375px;
    stroke-dasharray: 1590.71630859375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1590.71630859375px;
  }
}

@keyframes animate-svg-stroke03-1 {
  0% {
    stroke-dashoffset: 1590.71630859375px;
    stroke-dasharray: 1590.71630859375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1590.71630859375px;
  }
}

#layer_3 .svg-chair03-1 {
  -webkit-animation: animate-svg-stroke03-1 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-1 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-2 {
  0% {
    stroke-dashoffset: 82.01488494873047px;
    stroke-dasharray: 82.01488494873047px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 82.01488494873047px;
  }
}

@keyframes animate-svg-stroke03-2 {
  0% {
    stroke-dashoffset: 82.01488494873047px;
    stroke-dasharray: 82.01488494873047px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 82.01488494873047px;
  }
}

#layer_3 .svg-chair03-2 {
  -webkit-animation: animate-svg-stroke03-2 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-2 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-3 {
  0% {
    stroke-dashoffset: 2372.315185546875px;
    stroke-dasharray: 2372.315185546875px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2372.315185546875px;
  }
}

@keyframes animate-svg-stroke03-3 {
  0% {
    stroke-dashoffset: 2372.315185546875px;
    stroke-dasharray: 2372.315185546875px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2372.315185546875px;
  }
}

#layer_3 .svg-chair03-3 {
  -webkit-animation: animate-svg-stroke03-3 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-3 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-4 {
  0% {
    stroke-dashoffset: 2526.6884765625px;
    stroke-dasharray: 2526.6884765625px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2526.6884765625px;
  }
}

@keyframes animate-svg-stroke03-4 {
  0% {
    stroke-dashoffset: 2526.6884765625px;
    stroke-dasharray: 2526.6884765625px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2526.6884765625px;
  }
}

#layer_3 .svg-chair03-4 {
  -webkit-animation: animate-svg-stroke03-4 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-4 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-5 {
  0% {
    stroke-dashoffset: 2328.853271484375px;
    stroke-dasharray: 2328.853271484375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2328.853271484375px;
  }
}

@keyframes animate-svg-stroke03-5 {
  0% {
    stroke-dashoffset: 2328.853271484375px;
    stroke-dasharray: 2328.853271484375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2328.853271484375px;
  }
}

#layer_3 .svg-chair03-5 {
  -webkit-animation: animate-svg-stroke03-5 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-5 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-6 {
  0% {
    stroke-dashoffset: 2498.39208984375px;
    stroke-dasharray: 2498.39208984375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2498.39208984375px;
  }
}

@keyframes animate-svg-stroke03-6 {
  0% {
    stroke-dashoffset: 2498.39208984375px;
    stroke-dasharray: 2498.39208984375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2498.39208984375px;
  }
}

#layer_3 .svg-chair03-6 {
  -webkit-animation: animate-svg-stroke03-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-7 {
  0% {
    stroke-dashoffset: 2498.406005859375px;
    stroke-dasharray: 2498.406005859375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2498.406005859375px;
  }
}

@keyframes animate-svg-stroke03-7 {
  0% {
    stroke-dashoffset: 2498.406005859375px;
    stroke-dasharray: 2498.406005859375px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2498.406005859375px;
  }
}

#layer_3 .svg-chair03-7 {
  -webkit-animation: animate-svg-stroke03-7 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-7 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-8 {
  0% {
    stroke-dashoffset: 2314.00341796875px;
    stroke-dasharray: 2314.00341796875px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2314.00341796875px;
  }
}

@keyframes animate-svg-stroke03-8 {
  0% {
    stroke-dashoffset: 2314.00341796875px;
    stroke-dasharray: 2314.00341796875px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2314.00341796875px;
  }
}

#layer_3 .svg-chair03-8 {
  -webkit-animation: animate-svg-stroke03-8 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-8 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-9 {
  0% {
    stroke-dashoffset: 56.75625228881836px;
    stroke-dasharray: 56.75625228881836px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 56.75625228881836px;
  }
}

@keyframes animate-svg-stroke03-9 {
  0% {
    stroke-dashoffset: 56.75625228881836px;
    stroke-dasharray: 56.75625228881836px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 56.75625228881836px;
  }
}

#layer_3 .svg-chair03-9 {
  -webkit-animation: animate-svg-stroke03-9 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-9 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-10 {
  0% {
    stroke-dashoffset: 16.670377731323242px;
    stroke-dasharray: 16.670377731323242px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 16.670377731323242px;
  }
}

@keyframes animate-svg-stroke03-10 {
  0% {
    stroke-dashoffset: 16.670377731323242px;
    stroke-dasharray: 16.670377731323242px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 16.670377731323242px;
  }
}

#layer_3 .svg-chair03-10 {
  -webkit-animation: animate-svg-stroke03-10 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-10 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

@-webkit-keyframes animate-svg-stroke03-11 {
  0% {
    stroke-dashoffset: 1420.6431884765625px;
    stroke-dasharray: 1420.6431884765625px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1420.6431884765625px;
  }
}

@keyframes animate-svg-stroke03-11 {
  0% {
    stroke-dashoffset: 1420.6431884765625px;
    stroke-dasharray: 1420.6431884765625px;
  }

  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 1420.6431884765625px;
  }
}

#layer_3 .svg-chair03-11 {
  -webkit-animation: animate-svg-stroke03-11 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
          animation: animate-svg-stroke03-11 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

#layer3_sp {
  /***************************************************
  * Generated by SVG Artista on 9/1/2025, 12:12:52 PM
  * MIT license (https://opensource.org/licenses/MIT)
  * W. https://svgartista.net
  **************************************************/
}
@media screen and (min-width: 1025px) {
  #layer3_sp {
    display: none;
  }
}
@keyframes animate-svg-chair03-sp-1 {
  0% {
    stroke-dashoffset: 630.8590087891px;
    stroke-dasharray: 630.8590087891px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 630.8590087891px;
  }
}
#layer3_sp .svg-elem-chair03-sp-1 {
  animation: animate-svg-chair03-sp-1 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-2 {
  0% {
    stroke-dashoffset: 668.0640869141px;
    stroke-dasharray: 668.0640869141px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 668.0640869141px;
  }
}
#layer3_sp .svg-elem-chair03-sp-2 {
  animation: animate-svg-chair03-sp-2 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-3 {
  0% {
    stroke-dashoffset: 615.9242553711px;
    stroke-dasharray: 615.9242553711px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 615.9242553711px;
  }
}
#layer3_sp .svg-elem-chair03-sp-3 {
  animation: animate-svg-chair03-sp-3 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-4 {
  0% {
    stroke-dashoffset: 659.9167480469px;
    stroke-dasharray: 659.9167480469px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 659.9167480469px;
  }
}
#layer3_sp .svg-elem-chair03-sp-4 {
  animation: animate-svg-chair03-sp-4 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-5 {
  0% {
    stroke-dashoffset: 827.0629272461px;
    stroke-dasharray: 827.0629272461px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 827.0629272461px;
  }
}
#layer3_sp .svg-elem-chair03-sp-5 {
  animation: animate-svg-chair03-sp-5 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-6 {
  0% {
    stroke-dashoffset: 612.0863037109px;
    stroke-dasharray: 612.0863037109px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 612.0863037109px;
  }
}
#layer3_sp .svg-elem-chair03-sp-6 {
  animation: animate-svg-chair03-sp-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-7 {
  0% {
    stroke-dashoffset: 15.8625268936px;
    stroke-dasharray: 15.8625268936px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 15.8625268936px;
  }
}
#layer3_sp .svg-elem-chair03-sp-7 {
  animation: animate-svg-chair03-sp-7 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-8 {
  0% {
    stroke-dashoffset: 5.2736213207px;
    stroke-dasharray: 5.2736213207px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.2736213207px;
  }
}
#layer3_sp .svg-elem-chair03-sp-8 {
  animation: animate-svg-chair03-sp-8 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-9 {
  0% {
    stroke-dashoffset: 5.3649578094px;
    stroke-dasharray: 5.3649578094px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 5.3649578094px;
  }
}
#layer3_sp .svg-elem-chair03-sp-9 {
  animation: animate-svg-chair03-sp-9 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}
@keyframes animate-svg-chair03-sp-10 {
  0% {
    stroke-dashoffset: 2.1089019775px;
    stroke-dasharray: 2.1089019775px;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 2.1089019775px;
  }
}
#layer3_sp .svg-elem-chair03-sp-10 {
  animation: animate-svg-chair03-sp-10 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 15s both;
}

.p_cat {
  display: flex;
  gap: 2rem;
}
@media (max-width: 768px) {
  .p_cat {
    flex-direction: column;
    gap: 0px;
  }
}
.p_cat button {
  background-color: #000;
  color: #fff;
  width: 220px;
  height: 40px;
}
@media (max-width: 768px) {
  .p_cat button {
    width: 100%;
  }
}
.p_cat .filter-box button {
  height: 42px;
  width: 42px;
  flex-shrink: 0;
}

.p_cat_container {
  width: 100%;
}
@media (max-width: 768px) {
  .p_cat_container {
    padding-top:20px;
  }
}
.p_cat_list {
  /* display: flex;
  flex-wrap: wrap; */
  gap: 1.875rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 768px) {
  .p_cat_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 16px;
  }
}
/* .p_cat_list li {
  width: 30.5%;
}
@media screen and (max-width: 1170px) {
  .p_cat_list li {
    width: 47%;
  }
} */
@media (max-width: 768px) {
  .p_cat_list li {
    width: auto;
  }
}

.pagination {
  margin-top: 7.5rem;
  text-align: center;
}
@media (max-width: 768px) {
  .pagination {
    margin-top: 48px;
  }
}
.pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 8px;
}
.pagination li {
  margin: 0;
}
.pagination li .page-numbers {
  margin: 0;
  text-decoration: none;
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.1);
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination li .page-numbers.current {
  color: #fff;
  background-color: #000;
}
.pagination li .page-numbers.prev, .pagination li .page-numbers.next {
  font-weight: bold;
  margin: 0 30px;
  color: #fff;
  background-color: #000;
}
@media (max-width: 768px) {
  .pagination li .page-numbers.prev, .pagination li .page-numbers.next {
    margin: 0;
  }
}
.pagination li .page-numbers.dots {
  background-color: unset;
  width: 30px;
}
@media (max-width: 768px) {
  .pagination li .page-numbers.dots {
    width: 20px;
  }
}

.work_link {
  /* max-width: 1196px;
  width: calc(100% - 40px);
  margin: 0 auto; */
  /* position: relative; */
  padding-top: 136px;
}
.work_link .inner{
  position: relative;
}
@media (max-width: 768px) {
  .work_link {
    padding-top: 64px;
  }
}
.work_link .bg_img {
  position: relative;
  height: 100%;
  width: 100%;
}
@media (max-width: 768px) {
  .work_link .bg_img {
    height: auto;
  }
}
.work_link .bg_img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 769px) {
  .work_link .bg_img::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 43%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.9);
  }
}
@media (min-width: 769px) {
  .work_link .txt_wrap {
    position: absolute;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    max-width: 400px;
  }
}
@media (max-width: 1196px) {
  .work_link .txt_wrap {
    right: 6.25rem;
    width: 25vw;
  }
}
@media (max-width: 768px) {
  .work_link .txt_wrap {
    padding: 32px 20px 64px;
    width: 100%;
  }
}
.work_link .txt_wrap p {
  text-align: left;
  margin: 12px 0 24px;
}
@media (max-width: 768px) {
  .work_link .txt_wrap p {
    margin-bottom: 20px;
  }
}

.sort_wrap {
  margin: 0 0 1.5625rem;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 45px;
}
@media (max-width: 768px) {
  .sort_wrap {
    margin: 0 0 19px;
    gap: 19px;
    justify-content: flex-start;
  }
}
.sort_wrap .sort-item {
  display: flex;
  align-items: center;
  gap: 7px;
  position: relative;
}
.sort_wrap .sort-item img {
  cursor: pointer;
}
.sort_wrap .number-sort p span {
  margin-right: 3px;
}

.posts-per-page-dropdown {
  position: absolute;
  top: 90%;
  left: 0;
  background: #fff;
  border: 1px solid #ccc;
  list-style: none;
  padding: 0;
  width: 40%;
  z-index: 10;
}

.posts-per-page-dropdown li {
  padding: 2px;
  cursor: pointer;
}

.posts-per-page-dropdown li:hover {
  background-color: #eee;
}

.sort-dropdown li {
  padding: 2px;
  cursor: pointer;
}

.sort-dropdown li:hover {
  background-color: #eee;
}

.sort-item {
  position: relative;
  cursor: pointer;
}

/* デフォルトは非表示 */
.posts-per-page-dropdown,
.sort-dropdown {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease;
  position: absolute;
  top: 100%;
  /* 親の下に配置 */
  left: 0;
  background: #fff;
  border: 1px solid #ccc;
  width: 100%;
  z-index: 10;
  list-style: none;
  padding: 0;
  margin: 0;
}

/* sort-item にホバーしたら表示 */
.sort-item:hover .posts-per-page-dropdown,
.sort-item:hover .sort-dropdown {
  opacity: 1;
  visibility: visible;
}

.posts-per-page-dropdown li,
.sort-dropdown li {
  padding: 6px 8px;
  cursor: pointer;
}

.posts-per-page-dropdown li:hover,
.sort-dropdown li:hover {
  background-color: #eee;
}

.p_cat_filter_wrap {
  /* アクティブ状態：縦棒を回転して横棒に重ねる */
}
.p_cat_filter_wrap .toggle-icon {
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 8px;
  cursor: pointer;
}
@media (min-width: 769px) {
  .p_cat_filter_wrap .toggle-icon {
    display: none;
  }
}
.p_cat_filter_wrap .bar {
  position: absolute;
  background-color: #000;
  transition: transform 0.3s ease;
}
.p_cat_filter_wrap .bar.vertical {
  width: 1px;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.p_cat_filter_wrap .bar.horizontal {
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.p_cat_filter_wrap .filter-toggle.active .bar.vertical {
  transform: translateX(-50%) rotate(90deg);
}

.s-product .product_detail {
  gap: 3.75rem;
}
.s-product .product_detail_img_wrap {
  width: 63.6805555556%;
  /* レイアウトのためのスタイル */
}
.s-product .product_detail_img_wrap .swiper-button-next.swiper-button-disabled,
.s-product .product_detail_img_wrap .swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}
@media (max-width: 768px) {
  .s-product .product_detail_img_wrap .swiper-button-next,
  .s-product .product_detail_img_wrap .swiper-button-prev {
    display: none;
  }
}
.s-product .product_detail_img_wrap .swiper-button-next::after,
.s-product .product_detail_img_wrap .swiper-button-prev::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 10px;
  height: 20px;
  display: block;
}
.s-product .product_detail_img_wrap .swiper-button-prev::after {
  transform: rotate(180deg);
}
.s-product .product_detail_img_wrap .slider-main .swiper-pagination {
  width: -moz-fit-content;
  width: fit-content;
  padding: 0px 8px 2px 24px;
  top: 11px;
  right: 12px;
  height: 22px;
  left: unset;
  color: #000;
  border:1px solid #000;
  background-color: #fff;
  border-radius: 100px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.s-product .product_detail_img_wrap .slider-main .swiper-pagination:hover {
  background-color: #333;
}
.s-product .product_detail_img_wrap .slider-main .swiper-pagination::before {
  content: "";
  display: inline-block;
  background-image: url(../img/product-detail/product-modal.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  margin-left: 8px;
}
.s-product .product_detail_img_wrap .slider-main .swiper-slide {
  border: none !important;
}
@media (min-width: 769px) {
  .s-product .product_detail_img_wrap .slider-main .swiper-slide img {
    height: 34.5625rem;
    width:auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
@media (max-width: 768px) {
  .s-product .product_detail_img_wrap .slider-main .swiper-slide img {
    height: 14.625rem;
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.s-product .product_detail_img_wrap .slider-thumbnail {
  margin-top: 17px;
}
@media (max-width: 768px) {
  .s-product .product_detail_img_wrap .slider-thumbnail {
    margin-top: 8px;
    margin-bottom:20px;
  }
}
.s-product .product_detail_img_wrap .slider-thumbnail .thumbnail_gradation {
  position: absolute;
  width: 96px;
  height: 123px;
  top: 0;
  right: 0;
  background: linear-gradient(to right, transparent, #fff);
  z-index: 5;
}
@media (min-width: 769px) {
  .s-product .product_detail_img_wrap .slider-thumbnail .swiper-slide img {
    height: 5.5625rem;
    -o-object-fit: contain;
       object-fit: contain;
       width:auto;
  }
}
@media (max-width: 768px) {
  .s-product .product_detail_img_wrap .slider-thumbnail .swiper-slide img {
    height: 3.375rem;
    -o-object-fit: contain;
       object-fit: contain;
       width:auto;
  }
}
.s-product .product_detail_img_wrap .slider-thumbnail .swiper-slide {
  width: 25%;
  border: 1px solid #EAEAEA;
  transition: opacity 0.5s, border 0.3s ease;
}
.s-product .product_detail_img_wrap .slider-thumbnail .swiper-slide:hover {
  cursor: pointer;
}
.s-product .product_detail_img_wrap .slider .swiper-slide {
  border: 1px solid #EAEAEA;
}
.s-product .product_detail_img_wrap .swiper {
  width: 100%;
}
.s-product .product_detail_img_wrap .swiper-slide img {
  height: auto;
  width: 100%;
}
.s-product .product_detail_img_wrap .slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
  border: 1px solid #000;
}
.s-product .product_detail_img_wrap .swiper-button-next-thumb,
.s-product .product_detail_img_wrap .swiper-button-prev-thumb {
  z-index: 10;
  width: 20px;
  height: 20px;
  display: none;
  z-index: 10;
  top: 65%;
}
.s-product .product_detail_img_wrap .swiper-button-next-thumb::after,
.s-product .product_detail_img_wrap .swiper-button-prev-thumb::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 0.625rem;
  height: 1.25rem;
  display: block;
}
.s-product .product_detail_img_wrap .swiper-button-next-thumb {
  right: 0;
}
.s-product .product_detail_img_wrap .swiper-button-prev-thumb {
  left: 0;
}
.s-product .product_detail_img_wrap .swiper-button-prev-thumb::after {
  transform: rotate(180deg);
}
.s-product .product_detail_txt_wrap {
  text-align: left;
  flex: 1;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap {
    width: 100%;
    margin-top: 0px;
  }
  /* .s-product .product_detail_img_wrap .swiper-button-next-thumb,
.s-product .product_detail_img_wrap .swiper-button-prev-thumb {
  top: 50%;
} */
}
.s-product .product_detail_txt_wrap .brand_wrap {
  /* display: flex;
  align-items: center;
  justify-content: space-between; */
  display: block;
  margin-bottom: 18px;
  padding-top:0;
}
@media (min-width: 769px) {
  .s-product .product_detail_txt_wrap .brand_wrap {
    margin-left: auto;
    width: fit-content;
    padding-top:0;
  }
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .brand_wrap {
    /* flex-direction: column;
    align-items: flex-start;
    gap: 8px; */
  }
}
button.simplefavorite-button {
  padding: 3px 10px;
  border: 1px solid #000;
  border-radius: 100px;
  cursor: pointer;
  margin-top:10px;
  font-size:10px;
  width:120px
}
@media (max-width: 768px) {
  button.simplefavorite-button {
    padding: 8px 12px;
  }
}
.s-product .product_detail_txt_wrap .product_description {
  margin-bottom: 14px;
  margin-top: 0px;
  /* border-bottom: 1px solid rgba(0, 0, 0, 0.1); */
  padding-bottom: 14px;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .product_description {
    margin-top: 0px;
    padding-bottom: 24px;
    margin-bottom: 24px;
  }
}
.s-product .product_detail_txt_wrap .product_description.fabric_color_wrap {
  padding-bottom: 0px;
  margin-bottom: 0px;
  margin-top: 18px;
}
@media screen and (min-width: 769px) {
  .s-product .product_detail_txt_wrap .product_description.fabric_color_wrap {
    display: flex;
    gap: 24px;
  }

}
.s-product .product_detail_txt_wrap .product_size,
.s-product .product_detail_txt_wrap .product_material {
  margin-bottom: 14px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .product_size,
  .s-product .product_detail_txt_wrap .product_material {
    margin-bottom: 24px;
  }
}
.s-product .product_detail_txt_wrap .product_size .accordion-header,
.s-product .product_detail_txt_wrap .product_material .accordion-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding-bottom: 14px;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .product_size .accordion-header,
  .s-product .product_detail_txt_wrap .product_material .accordion-header {
    padding-bottom: 24px;
  }
}
.s-product .product_detail_txt_wrap .product_size .accordion-header p,
.s-product .product_detail_txt_wrap .product_material .accordion-header p {
  margin: 0;
}
.s-product .product_detail_txt_wrap .product_size .accordion-header .accordion-icon,
.s-product .product_detail_txt_wrap .product_material .accordion-header .accordion-icon {
  position: relative;
  width: 18px;
  height: 18px;
  transition: transform 0.3s ease;
  background-color: #000;
  border:1px solid #000;
  border-radius:0px;
}
.s-product .product_detail_txt_wrap .product_size .accordion-header .accordion-icon::before, .s-product .product_detail_txt_wrap .product_size .accordion-header .accordion-icon::after,
.s-product .product_detail_txt_wrap .product_material .accordion-header .accordion-icon::before,
.s-product .product_detail_txt_wrap .product_material .accordion-header .accordion-icon::after {
  content: "";
  position: absolute;
  background-color: #fff;
  transition: all 0.3s ease;
}
.s-product .product_detail_txt_wrap .product_size .accordion-header .accordion-icon::before,
.s-product .product_detail_txt_wrap .product_material .accordion-header .accordion-icon::before {
  top: 50%;
  left: 50%;
  width: 8px;
  height: 1px;
  transform: translate(-50%, -50%);
}
.s-product .product_detail_txt_wrap .product_size .accordion-header .accordion-icon::after,
.s-product .product_detail_txt_wrap .product_material .accordion-header .accordion-icon::after {
  top: 50%;
  left: 50%;
  width: 1px;
  height: 8px;
  transform: translate(-50%, -50%);
}
.s-product .product_detail_txt_wrap .product_size .accordion-content,
.s-product .product_detail_txt_wrap .product_material .accordion-content {
  display: block;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  padding: 0;
  transform-origin: top;
}
.s-product .product_detail_txt_wrap .product_size .accordion-content p,
.s-product .product_detail_txt_wrap .product_material .accordion-content p {
  margin: 0;
  padding-bottom: 15px;
}
.s-product .product_detail_txt_wrap .product_size.active .accordion-header .accordion-icon::after,
.s-product .product_detail_txt_wrap .product_material.active .accordion-header .accordion-icon::after {
  transform: translateX(-50%) rotate(90deg);
  opacity: 0;
}
.s-product .product_detail_txt_wrap .product_size.active .accordion-content,
.s-product .product_detail_txt_wrap .product_material.active .accordion-content {
  max-height: 1500px;
}
.s-product .product_detail_txt_wrap .product_size.active .accordion-content p,
.s-product .product_detail_txt_wrap .product_material.active .accordion-content p {
  opacity: 1;
}
.s-product .product_detail_txt_wrap .product_btn_list_wrap {
  margin-top: 5px;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .product_btn_list_wrap {
    margin-top: 24px;
  }
}
.s-product .product_detail_txt_wrap .product_btn_list_wrap .product_btn_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 7px 12px;
  background-color: #f5f5f5;
  padding: 1.125rem 1.3125rem;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .product_btn_list_wrap .product_btn_list {
    gap: 12px;
    padding: 24px 20px;
  }
}
.s-product .product_detail_txt_wrap .product_btn_list_wrap .product_btn_list li {
  width: 100%;
}
.s-product .product_detail_txt_wrap .product_btn_list_wrap .product_btn_list li a {
  color: #000;
  font-size: clamp(8px, 0.8vw, 12px);
  height: 42px;
  background-color: #fff;
  border:1px solid #000;
  display: block;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.s-product .product_detail_txt_wrap .product_btn_list_wrap .product_btn_list li a:hover{
  background-color: #000;
  color: #fff;
}
@media (max-width: 768px) {
  .s-product .product_detail_txt_wrap .product_btn_list_wrap .product_btn_list li a {
    font-size: 12px;
  }
}
.s-product .slider_arrow_wrap,
.sec_works_pickup .slider_arrow_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  margin-top: 30px;
}
@media (max-width: 768px) {
  .s-product .slider_arrow_wrap,
  .sec_works_pickup .slider_arrow_wrap {
    margin-top: 20px;
  }
}
@media (max-width: 768px) {
  .s-product .slider_arrow_wrap {
    margin-top: 20px;
  }
}
.s-product .slider_arrow_wrap .swiper-button-prev,
.s-product .slider_arrow_wrap .swiper-button-next {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.s-product .slider_arrow_wrap .swiper-button-prev::after,
.s-product .slider_arrow_wrap .swiper-button-next::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 20px;
  height: 20px;
  display: block;
}
.s-product .slider_arrow_wrap .swiper-button-prev::after {
  transform: rotate(180deg);
}
.s-product .sec_product_works .product_works_slider .swiper-slide {
  position: relative;
}
.s-product .sec_product_works .product_works_slider .swiper-slide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.s-product .sec_product_similar .sec_product_similar-text {
  text-align: left;
}
.s-product .sec_product_viewed {
  margin-bottom: 7.5625rem;
}
@media (max-width: 768px) {
  .s-product .sec_product_viewed {
    margin-bottom: 60px;
  }
  /* .swiper-free-mode>.swiper-wrapper{
    margin-bottom:24px;
  } */
}
/* .s-product .sec_product_viewed .slider_arrow_wrap,
.s-product .sec_product_similar .slider_arrow_wrap {
  margin-top: 32px !important;
} */
/* @media (max-width: 768px) {
  .s-product .sec_product_viewed .slider_arrow_wrap,
  .s-product .sec_product_similar .slider_arrow_wrap {
    margin-top: 24px !important;
  }
} */
.s-product .modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}
.s-product .modal .modal_content {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 1rem;
  background-color: #fff;
  padding: 2rem;
  width: 95vw;
  height: 95vh;
  overflow: auto;
}
@media screen and (min-width: 768px) {
  .s-product .modal .modal_content {
    overflow-y: hidden; /* 縦スクロールを無効化 */
    overflow-x: hidden; /* 横スクロールも無効化（必要に応じて） */
  }
}
@media (max-width: 768px) {
  .s-product .modal .modal_content {
    flex-direction: column;
    padding: 20px;
    padding-top: 58px;
    max-width: 90%;
  }
}
.s-product .modal .modal_content .modal-close {
  background: none;
  border: none;
  cursor: pointer;
  color: #fff;
  width: 18px;
  height: 18px;
  font-size: 13px;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease;
}
@media (max-width: 768px) {
  .s-product .modal .modal_content .modal-close {
    position: absolute;
    top: 20px;
    right: 20px;
  }
}
.s-product .modal .modal_content .modal-close:hover {
  background-color: #f0f0f0;
}
.s-product .modal .modal_content .modal_main {
  width: 70%;
  max-width: 1090px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 769px) {
  .s-product .modal .modal_content .modal_main {
    /* width: 68.125rem; */
    width: 100%;
    max-width: unset;
    height: 100%;
  }
}
@media (max-width: 768px) {
  .s-product .modal .modal_content .modal_main {
    width: 100%;
    height: 13.75rem;
  }
}
.s-product .modal .modal_content .modal_main img {
  width: 100%;
  height: 100%;
  display: block;
  border: 1px solid #EAEAEA;
  max-height: 80vh;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (min-width: 769px) {
  .s-product .modal .modal_content .modal_main img {
    max-height: unset;
  }
}
.s-product .modal .modal_content .modal_thumbnail {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5px;
  max-height: 800px;
  overflow-y: auto;
  padding-right: 10px;
}
@media screen and (min-width: 769px) {
  .s-product .modal .modal_content .modal_thumbnail {
    grid-template-columns: repeat(1, 1fr);
    max-height: calc(95vh - 64px);
  }
}
@media (max-width: 768px) {
  .s-product .modal .modal_content .modal_thumbnail {
    gap: 8px;
    width: 100%;
  }
}
.s-product .modal .modal_content .modal_thumbnail::-webkit-scrollbar {
  width: 6px;
}
.s-product .modal .modal_content .modal_thumbnail::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 3px;
}
.s-product .modal .modal_content .modal_thumbnail::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 3px;
}
.s-product .modal .modal_content .modal_thumbnail::-webkit-scrollbar-thumb:hover {
  background: #555;
}
.s-product .modal .modal_content .modal_thumbnail img {
  width: 9.125rem;
  height: auto;
  height: 6.875rem;
  -o-object-fit: contain;
     object-fit: contain;
  cursor: pointer;
  transition: opacity 0.3s ease;
  border: 1px solid #EAEAEA;
}
@media (max-width: 768px) {
  .s-product .modal .modal_content .modal_thumbnail img {
    width: 100%;
  }
}
.s-product .modal .modal_content .modal_thumbnail img:hover {
  opacity: 0.8;
}
.s-product .modal .modal_content .modal_thumbnail img.active {
  opacity: 1;
  border: 1px solid #5A5A5A;
}
.s-product .detail_wrap {
  margin-top: 40px;
  display: flex;
  gap: 24px;
}
@media (max-width: 768px) {
  .s-product .detail_wrap {
    margin-top: 34px;
  }
}
.s-product .detail_img_wrap {
  width: 49.375rem;
  max-width: 790px;
}
@media (max-width: 768px) {
  .s-product .detail_img_wrap {
    width: 100%;
  }
}
.s-product .sec_product_detail {
  padding-top: 0;
}
.s-product .sec_product_detail .inner {
  width: 100%;
}
.s-product .product_detail_img_wrap {
  width: 100%;
}
.s-product .product_detail_sticky {
  position: sticky;
  top: 76px;
}

.allworks_content {
  display: flex;
  gap: 5rem;
}
@media (max-width: 768px) {
  .allworks_content {
    gap: 40px;
    flex-direction: column;
  }
}

.sec_works_pickup .works_pickup_slider .swiper-slide {
  position: relative;
}
.sec_works_pickup .works_pickup_slider .swiper-slide a {
  transition: all 0.3s ease;
}
.sec_works_pickup .works_pickup_slider .swiper-slide a figure {
  width: 100%;
  height: 100%;
}
.sec_works_pickup .works_pickup_slider .swiper-slide a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
/* .sec_works_pickup .slider_arrow_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  margin-top: 30px;
} */
.sec_works_pickup .slider_arrow_wrap .swiper-button-prev,
.sec_works_pickup .slider_arrow_wrap .swiper-button-next {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.sec_works_pickup .slider_arrow_wrap .swiper-button-prev::after,
.sec_works_pickup .slider_arrow_wrap .swiper-button-next::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 20px;
  height: 20px;
  display: block;
}
.sec_works_pickup .slider_arrow_wrap .swiper-button-prev::after {
  transform: rotate(180deg);
}
.sec_allworks_list{
  padding-top: 60px;
}
@media (max-width: 768px) {
  .sec_allworks_list{
    padding-top: 40px;
  }
}

.sec_allworks_list #works-filter-form .category-label {
  display: flex;
  margin-bottom: 13px;
}

.allworks_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem 16px;
}
@media (max-width: 1170px) and (min-width: 769px) {
  .allworks_list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .allworks_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 8px;
  }
}
.allworks_list .allworks_item img {
  height: auto;
}
.allworks_list .allworks_item figure {
  position: relative;
}
.allworks_list .allworks_item figure img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

.category-group {
  margin-top: 13px;
}
.allworks_content .category-link {
  margin-left: 5px;
}
.category-parent {
  margin-bottom: 8px;
    margin-left: 5px;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.parent-label {
  cursor: pointer;
  margin-bottom: 0;
}

.toggle-child {
  position: relative;
  width: 16px;
  height: 16px;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: transform 0.3s ease;
}
.toggle-child::before, .toggle-child::after {
  content: "";
  position: absolute;
  background-color: #000;
  transition: all 0.3s ease;
}
.toggle-child::before {
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  transform: translate(-50%, -50%);
}
.toggle-child::after {
  top: 50%;
  left: 50%;
  width: 2px;
  height: 12px;
  transform: translate(-50%, -50%);
}

.category-parent.active > .toggle-child::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(90deg);
}

.category-children {
  display: block;
  margin-left: 24px;
  text-align: left;
}

.child-category {
  display: block;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.3);
  margin-bottom: 8px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.child-category:hover {
  color: #000;
  text-decoration: underline;
}

.category-label {
  display: inline-block;
}

.child-category.selected-child {
  color: #000;
  text-decoration: underline;
}

.archive-container {
  flex: 1;
}

.no-results p {
  white-space: nowrap;
}

.s-works .s-works_content {
  padding-top: 52px;
}
@media (max-width: 768px) {
  .s-works .s-works_content {
    padding-top: 24px;
  }
}
.s-works .s-works_content .works_en {
  text-align: left;
}
@media (max-width: 768px) {
  .s-works .s-works_content .works_en {
    margin-bottom: 4px;
  }
}
.s-works .s-works_content h1 {
  text-align: left;
  margin-bottom: 41px;
}
@media (max-width: 768px) {
  .s-works .s-works_content h1 {
    margin-bottom: 32px;
  }
}
.s-works .main_img {
  width: 100%;
}
@media (max-width: 768px) {
  .s-works .main_img {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}
.s-works .main_img img {
  width: 100%;
  max-height: auto;
}
.s-works .main_img #main-work-image {
  transition: opacity 0.4s ease;
  opacity: 1;
}
.s-works .thumb_img {
  /* display: flex;
  justify-content: center;
  gap: 24px; */
  margin-top: 19px;
}

@media (max-width: 768px) {
  .s-works .thumb_img {
    margin-top: 8px;
    gap: 20px;
  }
}
.s-works .thumb_img img {
  width: 160px;
  height: auto;
}
.s-works .thumb-swiper .swiper-slide {
  width: 160px; /* 固定幅にする場合 */
  height: auto;
  opacity: 0.5;
  cursor: pointer;
}

.s-works .thumb-swiper .swiper-slide-thumb-active {
  opacity: 1;
}
.s-works .thumb_img .thumb-image {
  opacity: 1;
  cursor: pointer;
  transition: opacity 0.3s;
}
.s-works .thumb_img .thumb-image.active {
  opacity: 0.2;
}
.s-works .thumb-button-next::after, .s-works .thumb-button-prev::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 10px;
  height: 20px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.s-works .thumb-button-next::after{

}
.s-works .thumb-button-prev::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.s-works .thumb-button-next, .s-works .thumb-button-prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease;
  width:30px;
  height: 30px;
  background: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width: 768px) {
  .s-works .thumb-button-next::after, .s-works .thumb-button-prev::after {
    width: 10px;
    height: 10px;
  }
  .s-works .thumb-button-next, .s-works .thumb-button-prev {
    width:20px;
    height: 20px;
  }
}
.s-works .thumb-button-next{
  right: 0;
}
.s-works .s-works_txt_wrap {
  max-width: 952px;
  margin: 48px auto 0;
  justify-content: center;
  text-align: left;
  /* 開いたときのスタイル */
}
@media (max-width: 768px) {
  .s-works .s-works_txt_wrap {
    margin-top: 24px;
  }
  .s-works .thumb_img img{
    height: 3.375rem;
    width: auto;
  }
  .s-works .thumb-swiper .swiper-slide {
    height: 3.375rem;
    width: auto;
  }
}
.s-works .s-works_txt_wrap .main-desc {
  overflow: hidden;
  position: relative;
  transition: max-height 0.4s ease;
}
.s-works .s-works_txt_wrap .main-desc.open {
  max-height: 1000px;
  /* 充分大きければOK */
}
.s-works .s-works_txt_wrap .main-desc.open::after {
  opacity: 0;
  /* フェード削除 */
}
.s-works .s-works_txt_wrap .more_btn {
  background-color: #fff;
  cursor: pointer;
}
.s-works .s-works_txt_wrap .property-info_wrap {
  background-color: rgba(217, 217, 217, 0.3);
  padding: 14px 42px;
  margin-top: 24px;
}
@media (max-width: 768px) {
  .s-works .s-works_txt_wrap .property-info_wrap {
    margin-top: 16px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    padding: 24px 20px;
  }
}
.s-works .s-works_txt_wrap .property-info p {
  margin: 20px 0 20px;
}
.s-works .s-works_txt_wrap .property-info a {
  text-decoration: underline;
}
.s-works .s-works_txt_wrap .property-info.open {
  max-height: 1000px;
  /* コンテンツより大きめに指定（十分に大きければOK） */
}
.s-works .s-works_txt_wrap .toggle-btn {
  background: none;
  border: none;
  cursor: pointer;
  display: block;
  /* ブロックにする */
  margin: 0 auto;
  display: flex;
  align-items: center;
  /* 左右の余白を自動で中央に */
}
.s-works .s-works_txt_wrap .toggle-btn .toggle-arrow {
  margin-left: 20px;
  position: relative;
  width: 18px;
  height: 18px;
  background-color: #000;
  display: block;
}
.s-works .s-works_txt_wrap .toggle-btn .toggle-arrow img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease;
  width: 10px;
  height: 10px;
}
.s-works .s-works_txt_wrap .toggle-btn.active .toggle-arrow img {
  transform: translate(-50%, -50%) rotate(180deg);
}
.s-works .s-works_txt_wrap .property-info.open {
  max-height: 1000px;
}
.s-works .s-works_product {
  overflow: hidden;
}
.s-works .s-works_product .swiper-w-product {
  position: relative;
}
.s-works .s-works_same-cat {
  overflow: hidden;
}
.s-works .s-works_same-cat .s-works_same-cat_wrap {
  display: flex;
  gap: 16px;
}
@media (max-width: 768px) {
  .s-works .s-works_same-cat .s-works_same-cat_wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 8px;
  }
}
.s-works .s-works_same-cat .s-works_same-cat_item {
  width: 25%;
}
@media (max-width: 768px) {
  .s-works .s-works_same-cat .s-works_same-cat_item {
    width: 100%;
  }
}
.s-works .s-works_same-cat .s-works_same-cat_item img {
  /* aspect-ratio: 1/1; */
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.s-works .slider_arrow_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  margin-top: 32px !important;
}
@media (max-width: 768px) {
  .s-works .slider_arrow_wrap {
    margin-top: 32px !important;
  }
}
.s-works .swiper-button-prev,
.s-works .swiper-button-next {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.s-works .swiper-button-prev::after,
.s-works .swiper-button-next::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 20px;
  height: 20px;
  display: block;
}
.s-works .more_btn {
  margin-top: 24px;
}

.p-wishlist {
  text-align: center;
}
.p-wishlist .p_cat_list {
  margin: 30px 0 120px;
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 768px) {
  .p-wishlist .p_cat_list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-wishlist .p_cat_list li {
  width: 100%;
}
@media (max-width: 768px) {
  .p-wishlist .p_cat_list li {
    width: 100%;
  }
}
.p-wishlist .p_cat_list li img {
  -o-object-fit: contain;
     object-fit: contain;
  height: auto;
  margin: 0 0 1em;
}
.p-wishlist button {
  padding: 3px 10px;
  border: 1px solid #EEEEEE;
  border-radius: 100px;
  cursor: pointer;
  width: 120px;
}
.p-wishlist .no_wishlist {
  margin: 50px 0 120px;
}

.p-showroom .p_top_txt {
  margin: 32px auto 24px;
  max-width: 952px;
}
@media (max-width: 768px) {
  .p-showroom .p_top_txt {
    margin: 24px auto 32px;
  }
  .p_top_txt p{
    text-align: left;
  }
  .post-card_txt{
    margin-top:4px;
  }
  .post-card_img{
    margin-bottom:0.5em;
  }
}
.p-showroom .showroom_list {
  justify-content: center;
  gap: 24px;
}
@media (max-width: 768px) {
  .p-showroom .showroom_list {
    display: flex;
    flex-direction: column;
    gap: 38px;
  }
}
.p-showroom .showroom_list img {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-showroom .showroom_list .txt {
  margin: 24px 0;
}
@media (max-width: 768px) {
  .p-showroom .showroom_list .txt {
    margin: 12px 0 16px;
  }
}

.sec_business {
  margin: 0 auto 139px;
}
@media (max-width: 768px) {
  .sec_business {
    margin: 0 auto 64px;
  }
}
.sec_business .business_wrap {
  align-items: center;
  gap: 9.375rem;
  background-color: rgba(0, 0, 0, 0.05);
  max-width: 954px;
  padding: 2.1875rem 3.25rem;
  margin: 0 auto;
  border-radius: 8px;
}
@media (max-width: 768px) {
  .sec_business .business_wrap {
    padding: 32px 20px;
  }
}
.sec_business .business_wrap .business_txt {
  text-align: left;
  width: 50%;
}
@media (max-width: 768px) {
  .sec_business .business_wrap .business_txt {
    text-align: center;
    width: 100%;
  }
}
.sec_business .business_wrap .business_txt h2 {
  margin-bottom: 19px;
}
@media (max-width: 768px) {
  .sec_business .business_wrap .business_txt p {
    margin-bottom: 32px;
  }
}
.sec_business .business_wrap .business_link .more_btn {
  width: 152px;
}

.s-showroom {
  padding-bottom: 136px;
}
@media (max-width: 768px) {
  .s-showroom {
    padding-bottom: 64px;
  }
}
.s-showroom .showroom_en {
  margin-bottom: 12px;
  text-align: left;
}
@media (max-width: 768px) {
  .s-showroom .showroom_en {
    margin-bottom: 4px;
  }
}
.s-showroom h1 {
  margin-bottom: 34px;
}
@media (max-width: 768px) {
  .s-showroom h1 {
    margin-bottom: 32px;
  }
}

.showroom_thumb_img {
  display: flex;
  justify-content: center;
  gap: 21px;
  margin-top: 19px;
}
.showroom_thumb_img img {
  width: 98px;
  height: 56px;
  -o-object-fit: cover;
     object-fit: cover;
}
.showroom_thumb_img .showroom_thumb-image {
  opacity: 0.2;
  cursor: pointer;
  transition: opacity 0.3s;
}
.showroom_thumb_img .showroom_thumb-image.active {
  opacity: 1;
}
.wrap-tab{
  max-width:70%;
  margin:0 auto;
}
@media (max-width: 768px) {
  .wrap-tab{
    max-width:100%;
    margin:0 auto;
  }
}

.s-showroom_access {
  text-align: left;
}
.s-showroom_access .s-showroom_access_content {
  gap: 24px;
}
.s-showroom_access .s-showroom_access_content .s-showroom_access_content_left {
  width: 50%;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .s-showroom_access .s-showroom_access_content .s-showroom_access_content_left {
    width: 100%;
  }
}
.s-showroom_access .s-showroom_access_content .s-showroom_access_content_left .access_item {
  margin-bottom: 28px;
}
@media (max-width: 768px) {
  .s-showroom_access .s-showroom_access_content .s-showroom_access_content_left .access_item {
    margin-bottom: 32px;
  }
}
.s-showroom_access .s-showroom_access_content .s-showroom_access_content_left .access_item .access_title {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  margin-bottom: 7px;
}
.s-showroom_access .s-showroom_access_content .s-showroom_access_content_left .access_item .access_text a {
  text-decoration: underline;
}
@media (min-width: 769px) {
  .s-showroom_access .s-showroom_access_content .s-showroom_access_content_right {
    width: 50%;
  }
}
@media (max-width: 768px) {
  .s-showroom_access .s-showroom_access_content .s-showroom_access_content_right {
    height: 335px;
  }
}
.s-showroom_access .s-showroom_access_content .s-showroom_access_content_right iframe {
  width: 100%;
}
@media (max-width: 768px) {
  .s-showroom_access .s-showroom_access_content .s-showroom_access_content_right iframe {
    width: 100%;
  }
}

.s-showroom_topics .topics_content .topics_list .topics_item {
  margin-bottom: 24px;
  text-align: left;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
@media (max-width: 768px) {
  .s-showroom_topics .topics_content .topics_list .topics_item {
    margin-bottom: 10px;
    padding-bottom: 8px;
  }
}
.s-showroom_topics .topics_content .topics_list .topics_item .date {
  width: 7rem;
  flex-shrink: 0;
}
.s-showroom_topics .topics_content .topics_list .topics_item .text_wrap .title {
  margin-bottom: 13px;
}

.s-showroom .ricoh-theta-iframe {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 800 / 487;

  /* height: 709px !important; */
}
@media (max-width: 768px) {
  .s-showroom .ricoh-theta-iframe {
    aspect-ratio: 345 / 225;
  }
}

/* SP時のみ横スクロール */
@media (max-width: 768px) {
  .showroom_thumb_img {
    display: flex;
    gap: 12px;
    /* サムネ間の余白 */
    overflow-x: auto;
    /* 横スクロール有効化 */
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    /* iOS慣性スクロール */
    scroll-snap-type: x mandatory;
    /* スナップ（任意） */
    padding-bottom: 8px;
    /* スクロールバー分の余白（任意）;
    }

    /* サムネ要素（imgまたは子要素）に固定幅を付けて横並びに */
    /* 画像が直接入っている場合の調整 */
    /* スクロールバーを目立たなく（任意） */
  }
  .showroom_thumb_img .showroom_thumb_img > * {
    flex: 0 0 auto;
    /* 折り返さない */
    width: 120px;
    /* サムネの表示幅を調整 */
    scroll-snap-align: start;
    /* スナップ（任意） */
  }
  .showroom_thumb_img .showroom_thumb_img img {
    display: block;
    width: 120px;
    /* 上と揃える */
    height: auto;
  }
  .showroom_thumb_img .showroom_thumb_img::-webkit-scrollbar {
    height: 6px;
  }
  .showroom_thumb_img .showroom_thumb_img::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 3px;
  }
  .showroom_thumb_img .showroom_thumb_img::-webkit-scrollbar-track {
    background: transparent;
  }
}
.p-search {
  padding-bottom: 136px;
}
.p-search .type {
  margin-bottom: 0;
}
.p-search .p-search_content {
  text-align: center;
}
.p-search .p-search_content .search_list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
@media (max-width: 768px) {
  .p-search .p-search_content .search_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 16px;
  }
}
.p-search .p-search_content .search_list li {
  width: 23%;
}
@media (max-width: 768px) {
  .p-search .p-search_content .search_list li {
    width: 100%;
  }
}

.archive-content {
  display: flex;
  gap: 2rem;
}
@media (max-width: 768px) {
  .archive-content {
    gap: 40px;
    flex-direction: column;
  }
}

.archive-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 16px;
}
@media (max-width: 1170px) and (min-width: 769px) {
  .archive-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .archive-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px 0;
  }
}
.archive-list .archive-list_item {
  min-width: 0;
}
.archive-list .archive-list_item img {
  height: auto;
}
.archive-list .archive-list_item figure {
  position: relative;
  aspect-ratio: 293/205;
}
.archive-list .archive-list_item figure img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

.sec_column_list .filter_backnumber .filter-content,
.sec_news_list .filter_backnumber .filter-content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .sec_column_list .filter_backnumber .filter-content,
  .sec_news_list .filter_backnumber .filter-content {
    grid-template-columns: repeat(3, 1fr);
  }
}

.sec_single_content {
  text-align: left;
  padding-top: 48px;
}
.sec_single_content .youtube-container iframe {
  width: 100% !important;
}

@media (max-width: 768px) {
  .sec_single_content .youtube-container iframe {
    height:300px;
  }
}
@media (max-width: 768px) {
  .sec_single_content {
    padding-top: 40px;
  }
}
.sec_single_content .inner {
  max-width: 952px;
}
.sec_single_content .post_wrap {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 82px;
}
@media (max-width: 768px) {
  .sec_single_content .post_wrap {
    padding-bottom: 46px;
  }
}
.sec_single_content .post_wrap .cat_wrap {
  margin-bottom: 22px;
}
@media (max-width: 768px) {
  .sec_single_content .post_wrap .cat_wrap {
    margin-bottom: 14px;
  }
}
.sec_single_content h1.post_title {
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.sec_single_content .post_img {
  margin: 24px 0;
}

.sec_single_content .post_img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.sec_single_content .post_content p {
  margin-bottom: 20px;
}
.sec_single_content .post_content .btn_bk {
  margin-left: 0;
}
.sec_single_content .post_content a {
  text-decoration: underline;
}
.sec_single_content .post_content .pop-single {
  text-decoration: none;
}
.sec_single_content .post_bottom_wrap {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-top: 48px;
  position: relative;
}
@media (max-width: 768px) {
  .sec_single_content .post_bottom_wrap {
    margin: 12px 0 32px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  .sec_single_content .post_content iframe{
    width: 100%;
  }
}
.sec_single_content .post_bottom_wrap a {
  text-decoration: none;
}
@media (max-width: 768px) {
  .sec_single_content .post_bottom_wrap a {
    width: 50%;
  }
}
.sec_single_content .post_bottom_wrap a span {
  display: block;
}
@media (min-width: 769px) {
  .sec_single_content .post_bottom_wrap .post_next_btn {
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 282px;
  }
  .sec_single_content .post_bottom_wrap .post_next_btn::after {
    content: "";
    display: inline-block;
    background-image: url(../img/common/post-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    width: 10px;
    height: 7px;
    margin-left: 16px;
  }
}
.sec_single_content .post_bottom_wrap .post_next_btn span {
  text-align: right;
}
@media (min-width: 769px) {
  .sec_single_content .post_bottom_wrap .post_prev_btn {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 282px;
  }
  .sec_single_content .post_bottom_wrap .post_prev_btn::before {
    content: "";
    display: inline-block;
    background-image: url(../img/common/post-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    width: 10px;
    height: 7px;
    margin-right: 16px;
    transform: rotate(180deg);
  }
}
@media (min-width: 769px) {
  .sec_single_content .post_bottom_wrap .post_prev_placeholder,
  .sec_single_content .post_bottom_wrap .post_next_placeholder {
    width: 282px;
    height: 1px;
  }
}
@media (min-width: 769px) {
  .sec_single_content .post_bottom_wrap .post_next_placeholder::after {
    display: none;
  }
}
@media (min-width: 769px) {
  .sec_single_content .post_bottom_wrap .post_prev_placeholder::before {
    display: none;
  }
}
.sec_single_content .pop-single {
  text-decoration: none;
}
.sec_single_content .pop-single figcaption,
.post_content figcaption {
  padding:10px;
  text-decoration: unset;
}
.sec_single_content .pop-single figure {
  margin-bottom: 32px;
}
.sec_single_content .pop-single:last-of-type figure {
  margin-bottom: 0;
}
.sec_single_content .back_btn {
  display: block;
  border-bottom: 1px solid #000;
  text-align: center;
  width: 128px;
  padding-bottom: 10px;
  margin: 0 auto;
}

.post_bottom_wrap.u_sp {
  display: none;
}
.post_bottom_wrap.u_sp::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 80%;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .post_bottom_wrap.u_sp {
    display: flex !important;
    position: relative;
  }
}
.post_bottom_wrap.u_sp .post_next_btn {
  text-align: right;
  padding-left: 24px;
}
.post_bottom_wrap.u_sp .post_prev_btn {
  padding-right: 24px;
}

@media (min-width: 769px) {
  .back_btn_sp.u_sp {
    display: none;
  }
}

.p-contact .inner {
  max-width: 952px;
}
@media (min-width: 769px) {
  .p-contact .p_top_txt p {
    text-align: center;
  }
}
.p-contact .sec_contact_form input[type=text],
.p-contact .sec_contact_form input[type=email],
.p-contact .sec_contact_form input[type=tel],
.p-contact .sec_contact_form input[type=file],
.p-contact .sec_contact_form textarea,
.p-contact .sec_contact_form select {
  border: 1px solid #d9d9d3;
  padding: 12px 14px;
  width: 100%;
  font-family: "Shippori Mincho B1", serif;
}
.p-contact .sec_contact_form input[type=text]::-moz-placeholder, .p-contact .sec_contact_form input[type=email]::-moz-placeholder, .p-contact .sec_contact_form input[type=tel]::-moz-placeholder, .p-contact .sec_contact_form input[type=file]::-moz-placeholder, .p-contact .sec_contact_form textarea::-moz-placeholder, .p-contact .sec_contact_form select::-moz-placeholder {
  font-family: "Shippori Mincho B1", serif;
}
.p-contact .sec_contact_form input[type=text]::placeholder,
.p-contact .sec_contact_form input[type=email]::placeholder,
.p-contact .sec_contact_form input[type=tel]::placeholder,
.p-contact .sec_contact_form input[type=file]::placeholder,
.p-contact .sec_contact_form textarea::placeholder,
.p-contact .sec_contact_form select::placeholder {
  font-family: "Shippori Mincho B1", serif;
}
.p-contact .sec_contact_form .wpcf7-form-control-wrap,
.p-contact .sec_contact_form .row_inner,
.p-contact .sec_contact_form .dropdown-menu {
  flex: 1;
  width: 100%;
}
.p-contact .sec_contact_form .row_inner .confirm-view {
  text-align: left;
}
.p-contact .sec_contact_form .dropdown-menu {
  position: relative;
}
.p-contact .sec_contact_form .dropdown-menu::after {
  content: "";
  display: inline-block;
  background-image: url(../img/contact/dropdown-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 13px;
  right: 13px;
}
.p-contact .sec_contact_form .dropdown-menu .confirm-view {
  text-align: left;
}
.p-contact .sec_contact_form .know-list {
  position: relative;
}
.p-contact .sec_contact_form .know-list .wpcf7-list-item {
  margin-bottom: 18px;
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .know-list .wpcf7-list-item {
    margin-bottom: 8px;
  }
}
@media (min-width: 769px) {
  .p-contact .sec_contact_form .know-list .wpcf7-list-item.first {
    margin-top: 15px;
  }
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .know-list .wpcf7-list-item.first {
    margin-bottom: 60px;
  }
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .know-list .wpcf7-list-item:nth-child(3) {
    margin-bottom: 60px;
  }
}
.p-contact .sec_contact_form .know-list .know-list_text {
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .know-list .know-list_text {
    right: unset;
    left: 0;
  }
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .know-list .know-list_text01 {
    top: 54px;
  }
}
.p-contact .sec_contact_form .know-list .know-list_text02 {
  top: 85px;
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .know-list .know-list_text02 {
    top: 167px;
  }
}
.p-contact .sec_contact_form .know-list .confirm-view {
  text-align: left;
}
.p-contact .sec_contact_form .row {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .row {
    flex-direction: column;
    align-items: flex-start;
  }
}
.p-contact .sec_contact_form .form-list {
  width: 250px;
  text-align: left;
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .form-list {
    width: 100%;
    margin-bottom: 8px;
  }
}
.p-contact .sec_contact_form .codedropz-upload-handler,
.p-contact .sec_contact_form .codedropz-upload-wrapper {
  width: 100%;
}
.p-contact .sec_contact_form .cd-upload-btn {
  text-align: left;
  padding-left: 0;
  padding-top: 0;
  background: #000;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  align-items: center;
  height: 34px;
  padding: 0 20px;
}
.p-contact .sec_contact_form .dnd-upload-counter {
  display: none !important;
}
.p-contact .sec_contact_form .codedropz-upload-container {
  padding: 12px 14px;
}
.p-contact .sec_contact_form .codedropz-btn-wrap {
  display: flex;
  align-items: center;
  margin-left: 7px;
}
.p-contact .sec_contact_form .confirm-btn {
  color: #fff;
  background: #000;
}
.p-contact .sec_contact_form .file-type-note {
  text-align: left;
  color: #000;
}
.p-contact .sec_contact_form .submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-top: 20px;
}
.p-contact .sec_contact_form .form-pp-link {
  text-decoration: underline;
  margin: 20px 0 40px;
  display: inline-block;
}
@media (max-width: 768px) {
  .p-contact .sec_contact_form .form-pp-link {
    margin: 20px 0;
  }
}
.p-contact .sec_contact_form label.error,
.p-contact .sec_contact_form label.error-file {
  text-align: left;
}
.p-contact .sec_contact_form .wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.p-contact .sec_contact_form .wpcf7-checkbox .wpcf7-list-item {
  margin-left: 0;
}
.p-contact .sec_contact_form .wpcf7-checkbox .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 8px;
}
.p-contact .sec_contact_form .wpcf7-checkbox.catalog-list {
  flex-direction: row;
  gap: 29px;
}
.p-contact .sec_contact_form .wpcf7-radio {
  display: flex;
  align-items: flex-start;
}
.p-contact .sec_contact_form .wpcf7-radio .wpcf7-list-item {
  margin: 0;
  margin-right: 28px;
}
.p-contact .sec_contact_form .wpcf7-radio .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 8px;
}
.p-contact .sec_contact_form .dropdown-menu.hide-after::after {
  display: none !important;
}
.p-contact .sec_contact_form .catalog-list {
  position: relative;
}
.p-contact .sec_contact_form .catalog-list label.error {
  position: absolute;
  left: 0;
  bottom: -18px;
}
.p-contact .sec_contact_form .files .confirm-view {
  text-align: left;
}
.p-contact .sec_contact_form .p_top_txt {
  margin-bottom: 39px;
}
.p-contact button {
  width: 168px !important;
  height: 42px;
  border-radius: 4px;
}
.p-contact .go-back-btn {
  background: #fff;
  border: 1px solid #000;
  color: #000;
}
.p-contact .submit-btn {
  color: #fff;
  background: #000;
}
.p-contact .catalog-order_top_item_wrap {
  gap: 4.625rem;
  text-align: left;
}
@media (min-width: 769px) {
  .p-contact .catalog-order_top_item_wrap .catalog-order_top_item {
    width: 50%;
  }
}
@media (max-width: 768px) {
  .p-contact .catalog-order_top_item_wrap .catalog-order_top_item:first-child {
    margin-bottom: 24px;
  }
}
.p-contact .catalog-order_top_item_wrap .catalog_title {
  margin: 16px 0;
}
@media (max-width: 768px) {
  .p-contact .catalog-order_top_item_wrap .catalog_title {
    margin: 16px 0 8px;
  }
}
.p-contact input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  /* デフォルトの見た目を無効化 */
  width: 22px;
  height: 22px;
  border: 1px solid #ccc;
  border-radius: 0;
}
.p-contact input[type=checkbox]:checked {
  background-color: #fff;
  /* チェック時の背景色 */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000000'%3E%3Cpath d='M20.285 6.709a1 1 0 00-1.576-.096L9.5 15.086 5.79 11.71a1 1 0 10-1.415 1.415l4.29 4.29a1 1 0 001.415-.002l9.206-9.206a1 1 0 00-.001-1.498z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 14px;
}
.p-contact .wpcf7-radio {
  position: relative;
}
.p-contact .wpcf7-radio #gender-error,
.p-contact .wpcf7-radio #showroom-error {
  position: absolute;
  left: 0;
  bottom: -15px;
}
@media (max-width: 768px) {
  .p-contact .wpcf7-acceptance {
    display: flex;
  }
}
.p-contact .wpcf7-acceptance .wpcf7-list-item {
  position: relative;
  margin: 0;
}
.p-contact .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label {
  position: relative;
  top: -6px;
  left: 10px;
}
.p-contact .wpcf7-acceptance .wpcf7-list-item .privacy-error {
  position: absolute;
  left: 0;
  bottom: 20px;
}
@media (max-width: 768px) {
  .p-contact .wpcf7-acceptance .wpcf7-list-item .privacy-error {
    bottom: 0;
  }
}
.p-contact .confirm-view {
  margin: 0;
}
@media (max-width: 768px) {
  .p-contact .confirm-view {
    margin-bottom: 8px;
  }
}

.side_nav {
  flex-shrink: 0;
  text-align: left;
  height: -moz-fit-content;
  height: fit-content;
  z-index: 10;
}
@media (min-width: 769px) {
  .side_nav {
    position: sticky;
    width: 178px;
  }
}

.p-fabric .link_wrap {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}
.p-fabric .link_wrap .link_wrap_item {
  color: #ccc;
  border-bottom: 2px solid #fafafa;
  padding: 0 20px;
}
.p-fabric .link_wrap .link_wrap_item.active {
  color: #000;
  border-bottom: 2px solid #000;
}
.p-fabric .sec_fabric_content {
  gap: 80px;
}
@media (max-width: 768px) {
  .p-fabric .side_nav {
    padding-top: 48px;
  }
}
@media (min-width: 769px) {
  .p-fabric .side_nav {
    top: 180px;
  }
}
.p-fabric .side_nav .category_parent {
  margin-bottom: 18px;
}
.p-fabric .side_nav .category_parent_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 8px;
  position: relative;
}
.p-fabric .side_nav .category_parent_header > a {
  flex: 1;
}
.p-fabric .side_nav .category_parent_header.active > a {
  color: #000;
}
.p-fabric .side_nav .category_parent_header::before {
  content: "";
  display: block;
  width: 12px;
  height: 1px;
  background-color: #000;
  position: absolute;
  bottom: -1px;
  right: 0;
}
.p-fabric .side_nav .accordion-icon {
  width: 20px;
  height: 10px;
  position: relative;
  margin-left: 10px;
}
.p-fabric .side_nav .accordion-icon::after {
  content: "";
  display: block;
  background-image: url(../img/common/header-submenu_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 0px;
  right: 0;
  transition: transform 0.3s ease;
  transform: rotate(180deg);
}
.p-fabric .side_nav .accordion-icon.active::after {
  transform: rotate(0deg);
  top: 3px;
}
.p-fabric .category_child_list {
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
}
.p-fabric .category_child_list.active {
  max-height: 500px;
  padding: 18px 0 0;
}
.p-fabric .category_child > a {
  padding-left: 19px;
  margin-bottom: 14px;
  position: relative;
}
.p-fabric .category_child > a.active::before {
  content: "▶";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #000;
}
.p-fabric a {
  display: block;
  transition: color 0.3s ease;
}
.p-fabric a.active {
  color: #000;
}
.p-fabric .category_wrap {
  text-align: left;
}
@media (max-width: 768px) {
  .p-fabric .category_wrap:first-child {
    padding-top: 48px;
  }
}
.p-fabric .item_wrap {
  margin-bottom: 64px;
}
.p-fabric .item_wrap:last-child {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .p-fabric .item_wrap {
    margin-bottom: 64px;
  }
}
.p-fabric .item_list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
}
@media (max-width: 768px) {
  .p-fabric .item_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 16px;
  }
}
.p-fabric .item_list .fabric_item {
  cursor: pointer;
}
.p-fabric .category_title_jp {
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .p-fabric .category_title_jp {
    margin-bottom: 24px;
  }
}
.p-fabric .rank_title {
  padding-bottom: 11px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 22px;
  position: relative;
}
.p-fabric .rank_title::before {
  content: "";
  display: block;
  width: 50px;
  height: 1px;
  background-color: #000;
  position: absolute;
  bottom: -1px;
  left: 0;
}
@media (max-width: 768px) {
  .p-fabric .rank_title {
    margin-bottom: 24px;
    padding-bottom: 8px;
  }
}
.p-fabric .item_category {
  margin-bottom: 20px;
  gap: 8px;
  align-items: center;
}
@media (max-width: 768px) {
  .p-fabric .item_category {
    margin-bottom: 16px;
  }
}
@media (max-width: 768px) {
  .p-fabric .item_category_title {
    margin-bottom: 4px;
  }
}
.p-fabric .item_category_type {
  background: #e3e3e3;
  padding: 2px 10px;
}
@media (max-width: 768px) {
  .p-fabric .item_category_type {
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-fabric .item_desk {
  margin-bottom: 13px;
  display: flex;
  gap: 9px;
}
@media (max-width: 768px) {
  .p-fabric .item_desk {
    margin-bottom: 24px;
  }
}
.p-fabric .item_desk_text a {
  text-decoration: underline;
}
.p-fabric .item_desk_img {
  width: 59px;
  height: 59px;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-fabric .item_text {
  margin-top: 10px;
}
.p-fabric .item_comment {
  color: #DE3A3A;
}
.p-fabric #fabric_modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}
.p-fabric .modal_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}
.p-fabric .modal_content {
  position: relative;
  background: #fff;
  display: flex;
  padding: 20px 80px;
  z-index: 1;
  max-width: 900px;
  width: 90%;
  max-height: 90%;
  height: 70%;
  overflow: auto;
  align-items: start;
}
@media (max-width: 768px) {
  .p-fabric .modal_content {
    flex-direction: column;
    gap: 8px;
    width: 100%;
    max-width: 90%;
    padding: 20px;
    padding-top: 40px;
    max-height: 95%;
    height: auto;
  }
}
.p-fabric .modal_main {
  flex: 1;
  text-align: center;
  height: 100%;
  margin: 0 auto;
}
.p-fabric .modal_main_item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 10px;
  height: 100%;
}
.p-fabric .modal_main img {
  max-width: 100%;
  height: auto;
}
.p-fabric .modal_thumbs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5px;
  margin-left: 20px;
  max-height: 1000px; /* または必要な高さ */
  overflow-y: auto; /* 縦方向だけスクロール */
  -webkit-overflow-scrolling: touch; /* スマホでスムーズスクロール */
}
@media (max-width: 768px) {
  .p-fabric .modal_thumbs {
    margin: 0 auto;
  }
}
.p-fabric .modal_thumbs img {
  width: 80px;
  cursor: pointer;
  border: 1px solid transparent;
}
@media (max-width: 768px) {
  .p-fabric .modal_thumbs img {
    width: 100%;
  }
}
.p-fabric .modal_thumbs img.active {
  border-color: #000;
}
.p-fabric .modal_close {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 10px;
  cursor: pointer;
  cursor: pointer;
  color: #fff;
  width: 18px;
  height: 18px;
  background-color: #000;
  align-items: center;
  display: flex;
  justify-content: center;
}
@media (max-width: 768px) {
  .p-fabric .modal_close {
    top: 10px;
    right: 10px;
  }
}

.p-catalog .catalog_list {
  display: flex;
  justify-content: center;
  gap: 20px;
}
@media (max-width: 768px) {
  .p-catalog .catalog_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 15px;
  }
}
.p-catalog .catalog_list .item {
  flex: 1;
}
.p-catalog .catalog_list .item img {
  max-width: 464px;
  width: 100%;
}
@media (max-width: 768px) {
  .p-catalog .catalog_list .item img {
    max-width: 100%;
  }
}
.p-catalog .catalog_list .item .btn-download {
  margin-top: 8px;
}
.p-catalog .catalog_list .item .btn-download a {
  padding: 8px 13px;
  border-bottom: 1px solid #000;
}
@media (max-width: 768px) {
  .p-catalog .catalog_list .item .project {
    display: none;
  }
}
.p-catalog .all_list {
  margin-bottom: 46px;
}
@media (max-width: 768px) {
  .p-catalog .all_list {
    margin-bottom: 32px;
  }
}
@media (max-width: 768px) {
  .p-catalog .all_list .catalog_list {
    display: block;
  }
}
.p-catalog .btn_bk {
  margin-top: 72px;
}

.p-brand .sec_about {
  padding-top: 0;
}
.p-brand .about_item_wrap {
  gap: 4.5625rem;
  margin-top: 73px;
  align-items: flex-end;
}
@media (max-width: 768px) {
  .p-brand .about_item_wrap {
    margin-top: 40px;
  }
}
.p-brand .about_item_wrap .text_wrap {
  text-align: left;
}
@media (min-width: 769px) {
  .p-brand .about_item_wrap .text_wrap {
    position: relative;
    bottom: 8.1875rem;
  }
}
@media (max-width: 768px) {
  .p-brand .about_item_wrap .text_wrap {
    margin-bottom: 24px;
  }
}
.p-brand .about_item_wrap:nth-child(even) {
  flex-direction: row-reverse;
}
@media (min-width: 769px) {
  .p-brand .img_wrap {
    width: 44.25rem;
    flex-shrink: 0;
  }
}
@media (max-width: 768px) {
  .p-brand .img_wrap {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}
.p-brand .img_wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-company section {
  text-align: left;
}
.p-company .company_content_wrap {
  gap: 5rem;
  position: relative;
}
.p-company .side_nav {
  top: 50px;
}
.p-company .side_nav li {
  margin-bottom: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 8px;
  position: relative;
}
.p-company .side_nav li::before {
  content: "";
  display: block;
  width: 12px;
  height: 1px;
  background-color: #000;
  position: absolute;
  bottom: -1px;
  right: 0;
}
.p-company .side_nav li a {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-company .side_nav .accordion-icon {
  position: relative;
  width: 10px;
  height: 10px;
}
.p-company .side_nav .accordion-icon::after {
  content: "";
  display: block;
  background-image: url(../img/common/header-submenu_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 0px;
  right: 0;
  transition: transform 0.3s ease;
  transform: rotate(180deg);
}
.p-company .side_nav li.is-active .accordion-icon::after {
  transform: rotate(90deg);
  right: 2px;
}
@media (min-width: 769px) {
  .p-company section .sec_title {
    text-align: left;
  }
}
@media (min-width: 769px) {
  .p-company section .sec_title_jp {
    text-align: left;
  }
}
.p-company .company_main-content {
  flex: 1;
  max-width: 952px;
}
.p-company .company_profile {
  scroll-margin-top: 80px;
}
.p-company .company_profile .place_wrap {
  display: flex;
  gap: min(56px, 3.5vw);
}
@media screen and (max-width: 1100px) {
  .p-company .company_profile .place_wrap {
    flex-direction: column;
    gap: 12px;
  }
}
.p-company .company_profile .profile_item {
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  .p-company .company_profile .profile_item {
    margin-bottom: 12px;
  }
}
.p-company .company_profile .profile_item .profile_title {
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
@media (max-width: 768px) {
  .p-company .company_profile .profile_item .profile_title {
    padding-bottom: 5px;
  }
}
.p-company .company_profile .profile_item .profile_text {
  margin-top: 10px;
}
@media (max-width: 768px) {
  .p-company .company_profile .profile_item .profile_text {
    margin-top: 8px;
  }
}
.p-company .company_profile .profile_item .profile_text a {
  text-decoration: underline;
  margin-bottom: 10px;
}
.p-company .company_img {
  display: block;
  width: 104vw;
  max-width: 104vw;
  height: auto;
  margin-left: calc(50% - 50vw);
  left: -150px;
  position: relative;
  margin-top: 80px;
}
@media screen and (min-width: 1580px) {
  .p-company .company_img {
    left: -8.75vw;
  }
}
.p-company .company_history {
  position: relative;
  /* 背景要素の基準にする */
  padding-bottom: 96px;
  scroll-margin-top: 80px;
}
@media (max-width: 768px) {
  .p-company .company_history {
    padding-bottom: 64px;
  }
}
.p-company .company_history .history_item {
  display: flex;
  align-items: center;
  gap: 31px;
  padding-top: 18px;
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  margin-bottom: 19px;
}
@media (max-width: 768px) {
  .p-company .company_history .history_item {
    margin-bottom: 12px;
    padding-top: 12px;
  }
}
.p-company .company_history .history_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 110vw;
  /* 画面幅いっぱい */
  height: 100%;
  /* sectionの高さ分 */
  background: #f0f0f0;
  /* 背景色など */
  z-index: -1;
  /* コンテンツの後ろに回す */
  max-width: 110vw;
  margin-left: calc(50% - 50vw);
  left: -130px;
}
@media screen and (min-width: 1580px) {
  .p-company .company_history .history_bg {
    left: -12.5vw;
  }
}
@media (max-width: 768px) {
  .p-company .company_history .history_bg {
    left: unset;
    max-width: 100vw;
    width: 100vw;
  }
}
.p-company .company_director {
  scroll-margin-top: 80px;
}
.p-company .company_director .director_message_wrap {
  gap: min(70px, 4.375vw);
  align-items: flex-end;
}
.p-company .company_director .director_message_wrap .director_message_img {
  max-width: 480px;
  flex: 1;
  width: 36.625vw;
}
@media (max-width: 768px) {
  .p-company .company_director .director_message_wrap .director_message_img {
    width: 100%;
    max-width: unset;
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}
@media (min-width: 769px) {
  .p-company .company_director .director_message_wrap .director_message_text {
    max-width: 364px;
  }
}
@media (max-width: 768px) {
  .p-company .company_director .director_message_wrap .director_message_text {
    margin-top: 24px;
  }
}
.p-company .company_director .director_profile_content {
  margin-top: 40px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding-top: 21px;
}
@media (max-width: 768px) {
  .p-company .company_director .director_profile_content {
    margin-top: 24px;
    padding-top: 12px;
  }
}
.p-company .company_director .director_profile_content .director_profile_wrap {
  justify-content: space-between;
  gap: 24px;
}
.p-company .company_director .director_profile_content .profile_name {
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 18px;
}
.p-company .company_director .director_profile_content .director_profile_link_wrap {
  background: rgba(217, 217, 217, 0.3);
  padding: 1.4375rem 2.375rem;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: 0px;
}
@media (max-width: 768px) {
  .p-company .company_director .director_profile_content .director_profile_link_wrap {
    margin-top: 24px;
    padding: 32px 16px;
  }
}
.p-company .company_director .director_profile_content .director_profile_link_wrap .link_title {
  text-align: center;
  margin-bottom: 14px;
}
@media (max-width: 768px) {
  .p-company .company_director .director_profile_content .director_profile_link_wrap .link_title {
    margin-bottom: 24px;
  }
}
.p-company .company_director .director_profile_content .director_profile_link_wrap .link_wrap {
  display: flex;
  gap: 8px;
}
@media screen and (max-width: 1080px) {
  .p-company .company_director .director_profile_content .director_profile_link_wrap .link_wrap {
    flex-direction: column;
    gap: 12px;
  }
}
@media (max-width: 768px) {
  .p-company .company_director .director_profile_content .director_profile_link_wrap .link_wrap {
    gap: 8px;
  }
}
.p-company .company_director .director_profile_content .director_profile_title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding-bottom: 21px;
}
@media (max-width: 768px) {
  .p-company .company_director .director_profile_content .director_profile_title {
    padding-bottom: 12px;
  }
}
@media (min-width: 769px) {
  .p-company .company_director .director_profile_content .profile_text {
    max-width: 380px;
  }
}
.p-company .company_director .director_profile_content .accordion-icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  transition: transform 0.3s;
  background-color: #000;
  width: 18px;
  height: 18px;
}
.p-company .company_director .director_profile_content .accordion-icon::before,
.p-company .company_director .director_profile_content .accordion-icon::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 1px;
  background-color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-company .company_director .director_profile_content .accordion-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: all 0.3s ease;
  /* 縦棒 */
}
.p-company .company_director .director_profile_content .is-open .accordion-icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}
.p-company .company_director .director_profile_content .js-accordion-content {
  max-height: 0;
  overflow: hidden;
  padding-top: 0;
  transition: all 0.3s ease;
}
.p-company .company_director .director_profile_content .js-accordion-content.is-open {
  max-height: 1000px;
  padding-top: 23px;
  padding-bottom: 56px;
  align-items:center;
}
@media (max-width: 768px) {
  .p-company .company_director .director_profile_content .js-accordion-content.is-open {
    padding-top: 12px;
    padding-bottom: 24px;
  }
}
.p-company .company_director .director_message_name {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 34px;
}
@media (max-width: 768px) {
  .p-company .company_director .director_message_name {
    justify-content: end;
    margin-top: 8px;
  }
}
.p-company .company_slider_wrap {
  margin-top: 64px;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  overflow: visible;
}
.p-company .company_slider .swiper-slide {
  overflow: visible;
  width: 80%;
  /* スライド幅を固定しておく */
}

@media (min-width: 769px) {
  .p-recruitment .p_top_txt {
    text-align: center;
  }
}
.p-recruitment .recruitment_list {
  overflow: hidden;
  transition: height 0.5s ease;
  border-top: 1px solid rgb(0, 0, 0);
}
.p-recruitment .recruitment_list:last-child {
  border-bottom: 1px solid rgb(0, 0, 0);
}
.p-recruitment .recruitment_list summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 17px 0;
  cursor: pointer;
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list summary {
    padding: 12px 0;
  }
}
.p-recruitment .recruitment_list summary::-webkit-details-marker {
  display: none;
}
.p-recruitment .recruitment_list .accordion-icon {
  position: relative;
  width: 18px;
  height: 18px;
  transition: transform 0.3s ease;
  background-color: #000;
}
.p-recruitment .recruitment_list .accordion-icon::before,
.p-recruitment .recruitment_list .accordion-icon::after {
  width: 1px;
  height: 8px;
  border-radius: 5px;
  background-color: #fff;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-recruitment .recruitment_list .accordion-icon::before {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-recruitment .recruitment_list .accordion-icon::after {
  transition: all 0.3s ease;
}
.p-recruitment .recruitment_list[open] .accordion-icon::after {
  transform: translate(-50%, -50%) rotate(-90deg);
}
.p-recruitment .recruitment_list .list_item_wrap {
  margin: 0;
  opacity: 0;
  transform: translateY(-10px);
  transition: transform 0.5s, opacity 0.5s;
}
.p-recruitment .recruitment_list .list_item_wrap .list_item:first-child{
  border-top:none;
}
.p-recruitment .recruitment_list .list_item_wrap .list_item {
  padding: 20px 0;
  gap: 41px;
  text-align: left;
}
@media (min-width: 769px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
  }
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item {
    padding: 6px 0;
  }
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item:last-child {
    padding-bottom: 18px;
  }
}
.p-recruitment .recruitment_list .list_item_wrap .list_item .item_title {
  width: 203px;
  text-align: left;
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item .item_title {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    width: 100%;
    padding-bottom: 5px;
  }
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item .item_text {
    padding-top: 5px;
  }
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item_img {
    padding-top: 0;
    border-top: none;
    padding-bottom: 10px;
  }
}
.p-recruitment .recruitment_list .list_item_wrap .list_item_img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 356px;
}
@media (max-width: 768px) {
  .p-recruitment .recruitment_list .list_item_wrap .list_item_img img {
    max-height: 124px;
  }
}
.p-recruitment .recruitment_list[open] .list_item_wrap {
  opacity: 1;
  transform: none;
  padding:23px 0;
}
.p-recruitment .btn_recruit {
  margin-top: 35px;
}

.p-download .link p a {
  background-color: #000;
  color: #fff;
}

.p-download .link p a:hover {
  background: #000;
  opacity: 0.5;
}/*# sourceMappingURL=style.css.map */

/* 20251217 */
.s-product .product_detail_img_wrap .slider-main .swiper-button-next,
.s-product .product_detail_img_wrap .slider-main .swiper-button-prev {
  opacity: 0; /* 初期状態では非表示 */
  transition: opacity 0.3s ease; /* スムーズな表示/非表示 */
  width:37px;
  height:40px;
  background:rgba(255,255,255,0.5);
}

@media (max-width: 768px) {
  .s-product .product_detail_img_wrap .swiper-button-next,
  .s-product .product_detail_img_wrap .swiper-button-prev {
    display: none;
  }
}

.s-product .product_detail_img_wrap .swiper-button-next::after,
.s-product .product_detail_img_wrap .swiper-button-prev::after {
  content: "";
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 10px;
  height: 20px;
  display: block;
}

.s-product .product_detail_img_wrap .swiper-button-prev::after {
  transform: rotate(180deg);
}

/* スライダーコンテナにマウスオーバーしたときに矢印を表示 */
.s-product .product_detail_img_wrap .slider-main:hover .swiper-button-next,
.s-product .product_detail_img_wrap .slider-main:hover .swiper-button-prev {
  opacity: 1;
}

/* disabled状態の矢印は常に非表示 */
.s-product .product_detail_img_wrap .swiper-button-next.swiper-button-disabled,
.s-product .product_detail_img_wrap .swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}

.s-product .brand_wrap {
  padding-top: 52px;
}
@media (max-width: 768px) {
  .s-product .brand_wrap {
    padding-top: 24px;
  }
}

/* swiperモーダル内のスタイル */
.s-product .modal .modal_content .modal_main{
  width: 85%;
}

.s-product .modal .modal_content .modal_main .swiper,
.s-product .modal .modal_content .modal_thumbnail .swiper {
  width: 100%;
  height: 100%;
}

.s-product .modal .modal_content .modal_main .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}

.s-product .modal .modal_content .modal_main .swiper-slide img {
  width: 100%;
  height: 100%;
  display: block;
  border: 1px solid #EAEAEA;
  /* max-height: 80vh; */
  object-fit: contain;
}


.s-product .modal .modal_content .modal_thumbnail .swiper {
  /* height: 100%; */
  height: auto !important;
  /* max-height: 800px; */
}

.s-product .modal .modal_content .modal_thumbnail .swiper-wrapper {
  flex-direction: column; 
}

.s-product .modal .modal_content .modal_thumbnail .swiper-slide {
  cursor: pointer;
  width: 100% !important; 
  height: auto !important;
}

.s-product .modal .modal_content .modal_thumbnail .swiper-slide img {
  width: 9.125rem;
  height: auto;
  aspect-ratio: 146/102;
  object-fit: contain;
  cursor: pointer;
  transition: opacity 0.3s ease;
  border: 1px solid #EAEAEA;
}

.s-product .modal .modal_content .modal_thumbnail .swiper-slide.active img,
.s-product .modal .modal_content .modal_thumbnail .swiper-slide.swiper-slide-thumb-active img {
  opacity: 1;
  border: 1px solid #5A5A5A;
}

.s-product .modal .modal_content .modal_thumbnail .swiper-slide img:hover {
  opacity: 0.8;
}

/* モーダルメインスライダーの矢印スタイル */
.s-product .modal .modal_content .modal_main .swiper-button-next,
.s-product .modal .modal_content .modal_main .swiper-button-prev {
  width: 40px;
  height: 40px;
  margin-top: 0;
  top: 50%;
  transform: translateY(-50%);
  /* background-color: rgba(0, 0, 0, 0.6); */
  border-radius: 50%;
  transition: background-color 0.3s ease;
  opacity: 0;
}

.s-product .modal .modal_content .modal_main:hover .swiper-button-next,
.s-product .modal .modal_content .modal_main:hover .swiper-button-prev {
  /* background-color: rgba(0, 0, 0, 0.8); */
  opacity: 1;
  transition: opacity 0.3s ease;
}

.s-product .modal .modal_content .modal_main .swiper-button-next::after,
.s-product .modal .modal_content .modal_main .swiper-button-prev::after {
  content: '';
  background-image: url(../img/common/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 10px;
  height: 20px;
  display: block;
}

.s-product .modal .modal_content .modal_main .swiper-button-prev::after {
  transform: rotate(180deg);
}

.s-product .modal .modal_content .modal_main .swiper-button-next {
  right: 10px;
}

.s-product .modal .modal_content .modal_main .swiper-button-prev {
  left: 10px;
}

.s-product .modal .modal_content .modal_main .swiper-button-next.swiper-button-disabled,
.s-product .modal .modal_content .modal_main .swiper-button-prev.swiper-button-disabled {
  opacity: 0.3;
  cursor: not-allowed;
  opacity: 0;
}

@media (max-width: 768px) {
  .s-product .modal .modal_content .modal_thumbnail .swiper-vertical {
    touch-action: pan-y !important;
  }
  .s-product .modal .modal_content {
    max-width: 90%;
    height: 90vh;
  }
  .s-product .modal .modal_content .modal_thumbnail{
    display: block;
    width: 100%;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
    max-height: none;
  }
  .s-product .modal .modal_content .modal_thumbnail .swiper-wrapper {
    /* flex-direction: column;  */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
  }
  .s-product .modal .modal_content .modal_main {
    width: 100%;
}
  .s-product .modal .modal_content .modal_main .swiper-button-next,
  .s-product .modal .modal_content .modal_main .swiper-button-prev {
    width: 30px;
    height: 30px;
  }
  
  .s-product .modal .modal_content .modal_main .swiper-button-next {
    right: 5px;
  }
  
  .s-product .modal .modal_content .modal_main .swiper-button-prev {
    left: 5px;
  }
}
@media (max-width: 768px) {
  .modal-thumbnail-swiper {
    /* height: 100dvh; */
    max-height: calc(100dvh - 120px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }

  .modal-thumbnail-swiper {
    height: auto;
    overflow: visible;   /* ← 重要 */
  }

  .modal-thumbnail-swiper .swiper-wrapper {
    transform: none !important;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    height: auto;
  }
}
.cf7-recaptcha-info a{
  text-decoration:underline;
}
p.cf7-recaptcha-info{
  text-align:center;
}
@media (max-width: 768px) {
  p.cf7-recaptcha-info{
    text-align:left;
    font-size:12px;
  } 
}

#childPage{
  position: unset!important;
}

.wkcat_brn_wrap{
  display: flex;
  gap: 32px;
  justify-content: center;
  margin-top: 52px;
  position: relative;
  /* border-bottom: 1px solid #fafafa;
  padding-bottom: 11px; */
}
.wkcat_brn_wrap::after{
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ccc;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.wkcat_brn_wrap a{
  transition: all 0.3s ease;
  border-bottom: 2px solid transparent;
  padding-bottom: 11px;
}
.wkcat_brn_wrap a:hover{
  border-bottom: 2px solid #000;
}
