@charset "UTF-8";

/* ===============================================
  * Header - ヘッダーのスタイル *
=============================================== */
.global-header {
  --header-color-border: #efefef;
  --header-color-section-title-bg: #efefef;
  --border-style: solid 1px var(--header-color-border);
  --brand-logo-width: 6.6rem;
  --link-arrow: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%225.604%22%20height%3D%229.061%22%20viewBox%3D%220%200%205.604%209.061%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_3384%22%20data-name%3D%22%E3%83%91%E3%82%B9%203384%22%20d%3D%22M538.692%2C543.294l-1.033-1.088%2C3.455-3.283-3.482-3.656%2C1.086-1.034%2C4.518%2C4.744Z%22%20transform%3D%22translate(-537.632%20-534.233)%22%20fill%3D%22%237c7c7c%22%2F%3E%3C%2Fsvg%3E");
  --link-arrow-offset: .75px;
}

.global-header summary {
  cursor: pointer;
}

.global-header summary::marker,
.global-header summary::-webkit-details-marker {
  display: none;
}

.global-header__text--link {
  color: var(--color-text-default);
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  line-height: 1.6;
  text-decoration: none;
}

.global-header__search-container {
  --search-button-width: 1.6rem;
  --padding-horizontal: 1.5rem;
  position: relative;
}

.global-header__search-form input {
  width: 100%;
  padding-right: calc(var(--padding-horizontal) * 2 + var(--search-button-width));
  padding-left: var(--padding-horizontal);
  border: none;
  box-sizing: border-box;
  font-size: 1.6rem;
}

.global-header__search-form input::placeholder {
  font-size: 1.2rem;
}

.global-header__search-button {
  position: absolute;
  top: 0;
  right: var(--padding-horizontal);
  bottom: 0;
  display: grid;
  place-content: center;
  width: var(--search-button-width);
  aspect-ratio: 1;
  margin: auto;
  color: var(--color-text-default);
}

.global-header__search-button a {
  color: var(--color-text-default);
}

.global-header .header__content-wrapper--ticker {
  background-color: var(--color-global-nav);
}

.global-header .header__content-wrapper--primary {
  background-color: var(--color-white);
  border-bottom: var(--border-style);
}

.global-header .header__content-wrapper--primary .header__content-inner {
  display: grid;
  align-items: center;
  grid-template-columns: 1fr auto 1fr;
  /* padding: 1rem 1.7rem; */
}

.global-header .header__content-wrapper--global-nav {
  position: relative;
  background-color: var(--color-white);
}

.global-header .header__content-wrapper--global-nav::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  border-bottom: var(--border-style);
  pointer-events: none;
}

.global-header .header__content-wrapper--global-nav .header__content-inner {
  display: grid;
  place-content: center;
}

.global-header .ticker__list-item {
  --color-text: var(--color-white);
  --color-bg: var(--color-gray-500);
}

.global-header .ticker__list-item>* {
  display: -webkit-box;
  text-overflow: ellipsis;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  padding: 0 2rem;
  background-color: var(--color-bg);
  color: var(--color-text);
  font-size: 1rem;
  letter-spacing: 0.03em;
  line-height: var(--height-ticker);
  text-align: center;
  text-decoration: none;
}

.global-header .header-primary__hamburger-menu-container {
  justify-self: flex-start;
}

.global-header .header-primary__hamburger-menu-container button {
  font-size: 3rem;
}

.global-header .header-primary__brand-logo-wrapper {
  width: var(--brand-logo-width);
}

.global-header .header-primary__navigation-container .header-primary__navigation-contents-wrapper {
  display: flex;
  gap: 1rem;
  justify-content: flex-end;
}

.global-header .header-primary__navigation-container .header-primary__navigation-contents-wrapper [class*=header-primary__navigation-item-wrapper] {
  width: 3rem;
  aspect-ratio: 1;
}

.global-header .header-primary__navigation-item-wrapper--cart {
  --count-num-width: 1.8rem;
  --indicator-width: .8rem;
  position: relative;
}

.global-header .header-primary__navigation-item-wrapper--cart[data-cart-indicator=count] .cart-state--dot {
  display: none !important;
}

.global-header .header-primary__navigation-item-wrapper--cart[data-cart-indicator=dot] .cart-state--count {
  display: none !important;
}

.global-header .header-primary__navigation-item-wrapper--cart .cart-state--count {
  position: absolute;
  top: calc(var(--count-num-width) / 4 * -1);
  right: calc(var(--count-num-width) / 4 * -1);
  z-index: 2;
  display: grid;
  place-items: center;
  width: var(--count-num-width);
  aspect-ratio: 1;
  background-color: var(--color-emphasis);
  border-radius: 50%;
  overflow: hidden;
  color: var(--color-white);
  font-family: var(--font-en);
  font-size: 0.9rem;
  letter-spacing: 0.03em;
  line-height: 1;
  pointer-events: none;
}

.global-header .header-primary__navigation-item-wrapper--cart .cart-state--count>span {
  margin: var(--adjust-position-top, 0px) var(--adjust-position-right, 0px) var(--adjust-position-bottom, 0px) var(--adjust-position-left, 0px);
}

.global-header .header-primary__navigation-item-wrapper--cart .cart-state--dot {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  width: var(--indicator-width);
  aspect-ratio: 1;
  background-color: var(--color-emphasis);
  border-radius: 50%;
  overflow: hidden;
  pointer-events: none;
}

/* ===============================================
  * ヘッダーの固定方式 *
=============================================== */
.global-header {
  position: relative;
  z-index: var(--zindex-header);
}

.global-header[data-stick-header] {
  position: sticky;
  top: calc(var(--height-ticker) * -1);
}

.global-header[data-variable-header] {
  position: sticky;
  top: calc(var(--height-ticker) * -1);
}

.global-header[data-variable-header] [data-header-area=primary] {
  position: relative;
  z-index: 2;
}

.global-header[data-variable-header] [data-header-area=global-nav] {
  transition: translate var(--transition-default);
}

.global-header[data-variable-header][data-scroll-direction=down] [data-header-area=global-nav] {
  z-index: -1;
  translate: 0 -100%;
}

.hamburger-menu__text--section-title {
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
}

.hamburger-menu__text--section-title[data-title-bg=active] {
  background-color: var(--header-color-section-title-bg);
  padding: var(--padding-content);
  text-align: left;
}

.hamburger-menu__text--link {
  display: grid;
  align-items: center;
  column-gap: 1ch;
  grid-template-columns: 1fr 0.56rem;
  padding: var(--padding-content);
  color: var(--color-black);
  font-size: 1.4rem;
  letter-spacing: 0.03em;
  line-height: 1.5;
  text-decoration: none;
}

.hamburger-menu__text--link::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: var(--link-arrow);
  background-position-y: calc(50% + var(--link-arrow-offset));
  background-repeat: no-repeat;
  background-size: contain;
}

.hamburger-menu__button--mail {
  --mail-icon-width: 2.7rem;
  display: grid;
  align-items: center;
  column-gap: 1rem;
  justify-content: center;
  grid-template-columns: var(--mail-icon-width) auto;
  width: calc(100% - 3rem);
  margin: auto;
  padding: 1.6rem 1.8rem;
  background-color: #efefef;
  color: var(--color-gray-500);
  text-align: center;
  text-decoration: none;
}

.hamburger-menu__button--mail::before {
  content: "";
  aspect-ratio: 25/17;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2225.074%22%20height%3D%2217.63%22%20viewBox%3D%220%200%2025.074%2017.63%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_325%22%20data-name%3D%22%E3%83%91%E3%82%B9%20325%22%20d%3D%22M359.815%2C101.721l-7.6%2C7.555%2C7.6%2C7.556a2.179%2C2.179%2C0%2C0%2C0%2C.221-.944V102.665A2.178%2C2.178%2C0%2C0%2C0%2C359.815%2C101.721Z%22%20transform%3D%22translate(-334.962%20-100.461)%22%20fill%3D%22%23afb0b1%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_326%22%20data-name%3D%22%E3%83%91%E3%82%B9%20326%22%20d%3D%22M47.332%2C76H26.665a2.178%2C2.178%2C0%2C0%2C0-.944.221l9.719%2C9.67a2.206%2C2.206%2C0%2C0%2C0%2C3.116%2C0l9.719-9.67A2.178%2C2.178%2C0%2C0%2C0%2C47.332%2C76Z%22%20transform%3D%22translate(-24.461%20-76)%22%20fill%3D%22%23afb0b1%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_327%22%20data-name%3D%22%E3%83%91%E3%82%B9%20327%22%20d%3D%22M.221%2C101.721a2.178%2C2.178%2C0%2C0%2C0-.221.944v13.223a2.178%2C2.178%2C0%2C0%2C0%2C.221.944l7.6-7.556Z%22%20transform%3D%22translate(0%20-100.461)%22%20fill%3D%22%23afb0b1%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_328%22%20data-name%3D%22%E3%83%91%E3%82%B9%20328%22%20d%3D%22M40.671%2C277.211%2C39.6%2C278.287a3.677%2C3.677%2C0%2C0%2C1-5.194%2C0l-1.076-1.076-7.6%2C7.555a2.178%2C2.178%2C0%2C0%2C0%2C.944.221H47.332a2.178%2C2.178%2C0%2C0%2C0%2C.944-.221Z%22%20transform%3D%22translate(-24.461%20-267.357)%22%20fill%3D%22%23afb0b1%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.hamburger-menu__button--mail>span {
  display: flex;
  align-items: center;
  column-gap: 1ch;
  font-size: 1.3rem;
  font-weight: bold;
}

.hamburger-menu__button--mail>span>small {
  font-size: 0.6em;
  font-weight: normal;
}

.hamburger-menu__wrapper {
  --hamburger-icon-width: 1.5rem;
  --hamburger-icon-position: 2rem;
  --padding-content: 1.2rem 1.6rem;
}

.hamburger-menu__toggle-button {
  --hamburger-transition-duration: 300ms;
  --hamburger-transition-default: var(--hamburger-transition-duration) ease;
  --hamburger-transition-delay: var(--hamburger-transition-duration);
  --icon-width: 2.4rem;
  --icon-height: 15px;
  --icon-border-height: 2px;
  display: grid;
  place-content: center;
  width: 3rem;
  aspect-ratio: 1;
  padding: 0;
  background-color: transparent;
  border-radius: 50%;
  overflow: hidden;
  transition: translate var(--hamburger-menu-transition);
}

.hamburger-menu__toggle-button-inner {
  position: relative;
  display: block;
  width: var(--icon-width);
  height: var(--icon-height);
}

.hamburger-menu__toggle-button-inner>span {
  position: absolute;
  display: block;
  width: 100%;
  height: var(--icon-border-height);
  background-color: var(--color-text-default);
  transform-origin: center;
  scale: 1 0.5;
}

.hamburger-menu__toggle-button-inner>span:first-of-type {
  top: 0;
  transition: rotate var(--hamburger-transition-default), translate var(--hamburger-transition-default) var(--hamburger-transition-delay);
}

[aria-expanded=true] .hamburger-menu__toggle-button-inner>span:first-of-type {
  top: calc(var(--icon-border-height) / 2 * -1);
  translate: 0 calc(var(--icon-height) / 2);
  rotate: 45deg;
  transition: translate var(--hamburger-transition-default), rotate var(--hamburger-transition-default) var(--hamburger-transition-delay);
}

.hamburger-menu__toggle-button-inner>span:nth-of-type(2) {
  top: 0;
  bottom: 0;
  margin: auto;
  transition: opacity 0ms ease var(--hamburger-transition-delay);
}

[aria-expanded=true] .hamburger-menu__toggle-button-inner>span:nth-of-type(2) {
  opacity: 0;
}

.hamburger-menu__toggle-button-inner>span:last-of-type {
  bottom: 0;
  transition: rotate var(--hamburger-transition-default), translate var(--hamburger-transition-default) var(--hamburger-transition-delay);
}

[aria-expanded=true] .hamburger-menu__toggle-button-inner>span:last-of-type {
  bottom: calc(var(--icon-border-height) / 2 * -1);
  translate: 0 calc(var(--icon-height) / 2 * -1);
  rotate: -45deg;
  transition: translate var(--hamburger-transition-default), rotate var(--hamburger-transition-default) var(--hamburger-transition-delay);
}

.hamburger-menu__contents-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--zindex-hamburgermenu-contents);
  width: calc(100% - (var(--hamburger-icon-width) + var(--hamburger-icon-position) * 3));
  height: 100dvh;
  padding-bottom: 4rem;
  background-color: var(--color-white);
  overflow-y: auto;
}

.hamburger-menu__contents-wrapper .global-header__search-container {
  border: var(--border-style);
  border-radius: 0.5rem;
  overflow: hidden;
}

.hamburger-menu__contents-wrapper .global-header__search-container input {
  border-radius: 0.5rem;
  line-height: 5rem;
}

.hamburger-menu__section[data-section-name=hamburger-mail-magazine] {
  margin-top: 1.6rem;
}

.hamburger-menu__section[data-section-name=hamburger-sns-area] {
  margin-top: 3.6rem;
}

.hamburger-menu__section[data-section-name=hamburger-sns-area] .brand-sns__link-list {
  --gap: 2.8rem;
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--gap) / 2) var(--gap);
  justify-content: center;
  margin-top: 1.8rem;
}

.hamburger-menu__section[data-section-name=hamburger-sns-area] .brand-sns__link-list-item {
  width: 3rem;
  aspect-ratio: 1;
}

.hamburger-menu__section[data-section-name=hamburger-sns-area] .brand-sns__link-list-item a {
  color: var(--color-gray-500);
}

.hamburger-menu__content-wrapper {
  padding: var(--padding-content);
}

.hamburger-menu__content-list[data-structure="parent"] > li > a,
.hamburger-menu__content-list summary {
  font-weight: var(--fw-bold);
}

.hamburger-menu__content-list>li:not(:last-of-type) {
  border-bottom: var(--border-style);
}

.hamburger-menu__bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--zindex-hamburgermenu-bg);
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 200ms ease-in;
}

/* ===============================================
  * ハンバーガーメニューのアニメーション *
=============================================== */
/* アニメーションの基本設定 */
[data-animation-type] {
  --hamburger-menu-transition: 500ms ease-in-out;
}

/* ハンバーガーメニューが有効になった時の設定 */
#hamburger-menu[data-state=active] .hamburger-menu__contents-wrapper {
  opacity: 1;
  translate: 0 0;
}

#hamburger-menu[data-state=active] .hamburger-menu__bg {
  opacity: 1;
}

/* フェードして表示 */
[data-animation-type=fade] .hamburger-menu__contents-wrapper {
  opacity: 0;
  transition: opacity var(--hamburger-menu-transition);
}

/* 横方向にスライドして表示 */
[data-animation-type=horizontal-slide] .hamburger-menu__contents-wrapper {
  translate: -100% 0;
  transition: translate var(--hamburger-menu-transition);
  will-change: translate;
}

/* 縦方向にスライドして表示 */
[data-animation-type=vertical-slide] .hamburger-menu__contents-wrapper {
  translate: 0 -120%;
  transition: translate var(--hamburger-menu-transition);
  will-change: translate;
}

[data-animation-type=vertical-slide][data-hamburgermenu-type=same-level] .hamburger-menu__contents-wrapper {
  z-index: -1;
}

[data-animation-type=vertical-slide][data-hamburgermenu-type=same-level] .hamburger-menu__bg {
  z-index: -2;
}

/* ハンバーガーメニューが画面全体にオーバーレイする形式 */
[data-hamburgermenu-type=overlay] .hamburger-menu__toggle-button[aria-expanded=true] {
  position: fixed;
  top: var(--hamburger-icon-position);
  right: calc((var(--hamburger-icon-width) + var(--hamburger-icon-position)) * -1);
  z-index: var(--zindex-hamburgermenu-contents);
  translate: calc((var(--hamburger-icon-width) + var(--hamburger-icon-position) * 2) * -1) 0;
}

[data-hamburgermenu-type=overlay] .hamburger-menu__toggle-button[aria-expanded=true]>span {
  filter: invert(1);
}

[data-hamburgermenu-type=overlay] .hamburger-menu__contents-wrapper {
  top: 0;
  width: calc(100% - (var(--hamburger-icon-width) + var(--hamburger-icon-position) * 3));
  height: 100dvh;
}

/* ハンバーガーメニューがヘッダーの下に表示される形式 */
[data-hamburgermenu-type=same-level] .hamburger-menu__contents-wrapper {
  top: var(--height-header);
  width: calc(100% - (var(--hamburger-icon-width) + var(--hamburger-icon-position) * 3));
  height: calc(100dvh - var(--height-header));
}

[data-hamburgermenu-type=same-level] .hamburger-menu__bg {
  top: var(--height-header);
  height: calc(100dvh - var(--height-header));
}

[data-state-sticky=active] [data-hamburgermenu-type=same-level] {
  --height-header: calc(var(--height-header-primary) + var(--height-header-global-nav));
}

.accordion__details {
  --accordion-icon-width: 1.4rem;
}

.accordion__summary {
  grid-template-columns: 1fr var(--accordion-icon-width);
  background-color: var(--color-white);
  transition: background var(--transition-default);
}

[data-state-accordion=opened]>.accordion__summary {
  background-color: #FAFAFA;
}

.accordion__summary::after {
  content: none;
}

.accordion__icon-wrapper {
  position: relative;
  display: block;
  width: var(--accordion-icon-width);
  aspect-ratio: 1;
}

.accordion__icon-wrapper::before,
.accordion__icon-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background-color: var(--color-text-default);
}

.accordion__icon-wrapper::before {
  rotate: 90deg;
  transition: rotate var(--transition-default);
}

[data-state-accordion=opened]>.accordion__summary .accordion__icon-wrapper::before {
  rotate: 180deg;
}

.accordion__content {
  border-top: var(--border-style);
}

.global-nav__text--link {
  position: relative;
  display: grid;
  place-content: center;
  padding: 2rem 0;
  color: var(--color-text-default);
  font-size: 1.2rem;
  font-weight: var(--fw-semibold);
  letter-spacing: 0.03em;
  line-height: 1;
  text-decoration: none;
  overflow: hidden;
}

.global-nav__text--link::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3px;
  background-color: var(--color-text-default);
  translate: 0 100%;
  transition: translate var(--transition-default);
  pointer-events: none;
}

.global-nav__wrapper .mega-menu__text--link {
  display: grid;
  align-items: center;
  column-gap: var(--megamenu-spacer, 2ch);
  grid-template-columns: 1fr 0.56rem;
  width: fit-content;
  color: var(--color-text-default);
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}

.global-nav__wrapper .mega-menu__text--link::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: var(--link-arrow);
  background-position-y: calc(50% + var(--link-arrow-offset));
  background-repeat: no-repeat;
  background-size: contain;
  transition: translate var(--animation-hover), scale var(--animation-hover);
  transform-origin: left center;
  transition-timing-function: linear;
  pointer-events: none;
}

.global-nav__wrapper .mega-menu__wrapper[data-state=active] .mega-menu__content-inner {
  translate: 0 0;
}

.global-nav__wrapper .mega-menu__wrapper[data-state=active] .mega-menu__bg {
  opacity: 1;
}

.global-nav__wrapper .mega-menu__content {
  --megamenu-escape-area: 5svh;
  --megamenu-spacer: 1.6rem;
  position: absolute;
  /* MEMO: global-nav__wrapperにrelativeを設定しているため、親要素にpositionを付与しないように注意してください。 */
  top: 100%;
  left: 0;
  z-index: -1;
  width: 100%;
}

.global-nav__wrapper .mega-menu__content-inner {
  max-height: calc(100svh - var(--megamenu-escape-area) - var(--height-header));
  padding-top: 5svh;
  padding-bottom: 5svh;
  background-color: var(--color-white);
  overflow-y: auto;
  overscroll-behavior: contain;
  translate: 0 -100%;
  transition: translate var(--transition-default);
}

.global-nav__wrapper .mega-menu__content-list[data-structure=parent] {
  display: grid;
  row-gap: calc(var(--megamenu-spacer) * 3);
}

.global-nav__wrapper .mega-menu__content-list[data-structure=parent]>li {
  display: grid;
  align-items: flex-start;
  column-gap: 3%;
  grid-template-columns: 30% 1fr;
}

.global-nav__wrapper .mega-menu__content-list[data-structure=parent]>li>a {
  font-weight: bold;
}

.global-nav__wrapper .mega-menu__content-list[data-structure=child] {
  display: flex;
  flex-wrap: wrap;
  row-gap: var(--megamenu-spacer);
  padding: 2ch;
  background-color: var(--color-gray-100);
  border-radius: 8px;
}

.global-nav__wrapper .mega-menu__content-list[data-structure=child]>li>* {
  padding: 0 var(--megamenu-spacer);
}

.global-nav__wrapper .mega-menu__content-list[data-structure=child]>li:not(:last-of-type) {
  border-right: var(--border-style);
}

.global-nav__wrapper .mega-menu__bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100dvh;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 200ms ease-in;
  pointer-events: none;
}

.global-nav__content-list {
  display: flex;
  justify-content: center;
  column-gap: 8rem;
}

/* ===============================================
  * Footer - フッターのスタイル *
=============================================== */
.global-footer {
  --spacer-regular: 5rem;
  --spacer-medium: 4rem;
  --spacer-small: 3rem;
  --border-style: solid 1px var(--color-gray-300);
  --color-default-text: var(--color-white);
  --sns-icon-width: 3rem;
  --brand-logo-width: 15rem;
  background-color: var(--color-primary);
}

.global-footer a {
  color: var(--color-default-text);
  text-decoration: none;
}

.global-footer__inner {
  display: grid;
  row-gap: var(--spacer-regular);
  padding-top: var(--spacer-medium);
  padding-bottom: var(--spacer-medium);
}

.global-footer__inner--bottom {
  display: grid;
  row-gap: var(--spacer-medium);
}

.global-footer .static-page__link-list>li {
  border-bottom: var(--border-style);
}

.global-footer .static-page__link-text {
  --padding-vertical: 1.7rem;
  --padding-horizontal: .8rem;
  --arrow-width: 1.2rem;
  display: grid;
  align-items: center;
  column-gap: var(--arrow-width);
  grid-template-columns: 1fr var(--arrow-width);
  padding: var(--padding-vertical) var(--padding-horizontal) var(--padding-vertical) 0;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.global-footer .static-page__link-text::after {
  content: "";
  width: var(--arrow-width);
  aspect-ratio: 1;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212.021%22%20height%3D%2212.021%22%20viewBox%3D%220%200%2012.021%2012.021%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_66359%22%20data-name%3D%22%E3%83%91%E3%82%B9%2066359%22%20d%3D%22M4753.778%2C638.215h-8.5v-8.5h1v7.5h7.5Z%22%20transform%3D%22translate(2916.153%203812.715)%20rotate(-135)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.global-footer .brand-sns__wrapper {
  display: grid;
  align-items: center;
  justify-items: center;
  row-gap: var(--spacer-medium);
}

.global-footer .brand-sns__link-list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--sns-icon-width) / 2) var(--sns-icon-width);
  justify-content: center;
}

.global-footer .brand-sns__link-list-item {
  width: var(--sns-icon-width);
  aspect-ratio: 1;
}

.global-footer .law-page__link-wrapper {
  display: grid;
  row-gap: 2.6rem;
  letter-spacing: 0.03em;
  text-align: center;
}

.global-footer .law-page__link-text {
  font-size: 1.3rem;
  line-height: 2;
}

.global-footer .law-page__copyright-text {
  color: var(--color-white);
  font-size: 1.2rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .global-header {
    --brand-logo-width: 11.7rem;
  }

  .global-header .header__content-wrapper--primary .header__content-inner {
    display: flex;
    justify-content: space-between;
    padding-top: 3.6rem;
    padding-bottom: 3.6rem;
  }

  .global-header .header__content-wrapper--primary .header__content-inner .global-header__search-container {
    --padding-horizontal: 0;
    min-width: 22rem;
    padding: 0.4rem 0;
    border-bottom: solid 1px var(--color-gray-600);
  }

  .global-header .header__content-wrapper--primary .header__content-inner .global-header__search-container input {
    width: calc(100% - (var(--search-button-width) + 1ch));
    line-height: 2;
  }

  .global-header .header-primary__navigation-container {
    display: flex;
    align-items: center;
    column-gap: 3rem;
    flex-shrink: 0;
  }

  .global-header .header-primary__navigation-container .header-primary__navigation-contents-wrapper .global-header__text--link {
    font-weight: bold;
  }

  .global-footer {
    display: grid;
    place-items: center;
  }

  .global-footer__inner {
    padding-top: var(--spacer-regular);
    padding-bottom: var(--spacer-regular);
  }

  .global-footer__inner--bottom {
    align-items: flex-start;
    column-gap: 5%;
    grid-template-columns: 1fr auto;
    padding-top: 3.5rem;
    border-top: var(--border-style);
  }

  .global-footer .static-page__link-list {
    display: flex;
    flex-wrap: wrap;
  }

  .global-footer .static-page__link-list>li {
    display: flex;
    align-items: center;
    border-bottom: none;
  }

  .global-footer .static-page__link-list>li:not(:last-of-type)::after {
    content: "|";
    margin: 0 3rem;
    color: var(--color-default-text);
  }

  .global-footer .static-page__link-text {
    display: inline;
    padding: 0;
  }

  .global-footer .static-page__link-text::after {
    content: none;
  }

  .global-footer .brand-sns__wrapper {
    column-gap: 6rem;
    justify-items: flex-start;
    grid-template-columns: var(--brand-logo-width) 1fr;
  }

  .global-footer .law-page__link-wrapper {
    row-gap: 1rem;
    text-align: right;
  }

  .global-footer .law-page__link-list {
    display: flex;
    gap: 2rem;
  }
}

@media (hover: none) {
  .global-nav__wrapper .mega-menu__text--link {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }

  .global-nav__wrapper .mega-menu__text--link:active::after {
    scale: 1.3;
    translate: 50%;
  }

  .global-nav__content-list-item {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }

  .global-nav__content-list-item:active .global-nav__text--link::after {
    translate: 0 0;
  }
}

@media (-ms-high-contrast: none),
(-ms-high-contrast: active),
(-moz-touch-enabled: 0),
(hover: hover) {
  .global-nav__wrapper .mega-menu__text--link:hover::after {
    scale: 1.3;
    translate: 50%;
  }

  .global-nav__content-list-item:hover .global-nav__text--link::after {
    translate: 0 0;
  }
}




/* ===============================================
  * Override Style *
=============================================== */

/*
 * Header
 */

.global-header {
  --brand-logo-width: 16.8rem;
  --spacer-header: 1rem;
  --link-arrow: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%226.894%22%20height%3D%2212.373%22%20viewBox%3D%220%200%206.894%2012.373%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68818%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068818%22%20d%3D%22M0%2C0%2C5.833%2C5.833%2C0%2C11.666%22%20transform%3D%22translate(0.354%200.354)%22%20fill%3D%22none%22%20stroke%3D%22%2300a7e1%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E');
  --link-arrow-size: 1.167rem;
  --border-style: solid 2px var(--color-project-bg);
}

@media (max-width: 767px) {
  .global-header[data-stick-header]:has([data-header-type="default"]) {
    transition: top var(--transition-default);
  }

  .global-header[data-stick-header][data-scroll-direction="down"]:has([data-header-type="default"]) {
    top: calc((var(--height-ticker) + var(--variable-header-value, 0)) * -1);
  }
}

.global-header .header__content-wrapper--primary {
  height: var(--height-header-primary);
}

.global-header .header__content-wrapper--primary .header__content-inner {
  grid-template-columns: auto auto 1fr;
  row-gap: .8rem;

  transition: box-shadow var(--transition-default);
}

@media (max-width: 767px) {
  .global-header .header__content-wrapper--primary .header__content-inner {
    grid-template-areas:
      "hamburger-menu brand-logo navigation"
      "product-search product-search product-search";

    padding: var(--spacer-header);
  }
}

@media (min-width: 768px) {
  .global-header .header__content-wrapper--primary .header__content-inner {
    display: grid;
    grid-template-columns: 1fr auto auto auto auto;
    grid-template-areas: "brand-logo product-search navigation hamburger-menu";

    height: 100%;
    padding-block: 0;
  }
}

.header-primary__hamburger-menu-container {
  grid-area: hamburger-menu;
}

.header-primary__brand-logo-wrapper {
  grid-area: brand-logo;
}

.header-primary__navigation-container {
  grid-area: navigation;
}

.header-primary__product-search-container {
  grid-area: product-search;
}


/* Hamburger Menu */

.global-header .hamburger-menu__toggle-button {
  --icon-width: 2.2rem;
  --icon-height: 1.8rem;

  width: 3.6rem;
}

@media (max-width: 767px) {
  .global-header .hamburger-menu__toggle-button {
    margin-right: 1.6rem;
  }
}

@media (max-width: 767px) {
  .global-header .header__content-wrapper--primary .header__content-inner:has(.hamburger-menu__toggle-button[aria-expanded="true"]) {
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  }
}

@media (min-width: 768px) {
  [data-animation-type=vertical-slide]  .hamburger-menu__contents-wrapper {
    right: 0;
    left: auto;

    translate: 100% 0;
  }
}

[data-hamburgermenu-type=same-level]  .hamburger-menu__contents-wrapper {
  width: 100%;
  background-color: var(--color-project-bg);
  padding-bottom: env(safe-area-inset-bottom);
}

@media (min-width: 768px) {
  [data-hamburgermenu-type=same-level]  .hamburger-menu__contents-wrapper {
    left: auto;
    right: 0;

    width: 40rem;
    padding: 2rem 2.3rem;
  }
}

.hamburger-menu__section-inner {
  padding-block: var(--spacer-header);
}

@media (max-width: 767px) {
  .hamburger-menu__section-inner {
    padding-inline: var(--spacer-header);
  }
}

.hamburger-menu__section-inner .hamburger-menu__content-list {
  background-color: var(--color-white);
}

.hamburger-menu__text--section-title[data-title-bg=active] {
  padding: 1.8rem 2rem;
  background-color: #D8D8D8;

  font-size: 1.4rem;
  letter-spacing: .03em;
}

.hamburger-menu__text--link {
  grid-template-columns: 1fr var(--link-arrow-size);
}

.hamburger-menu__text--link::after {
  height: auto;
  aspect-ratio: 1;
  background-position: center;
}

.accordion__details {
  --accordion-icon-width: var(--link-arrow-size);
}

.accordion__summary {
  font-weight: var(--fw-bold);
}

[data-state-accordion=opened] > .accordion__summary {
  background-color: transparent;
}

.accordion__icon-wrapper {
  aspect-ratio: 1;

  rotate: 90deg;

  background-image: var(--link-arrow);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;

  transition: rotate var(--transition-default);
}

[data-state-accordion=opened] > .accordion__summary .accordion__icon-wrapper {
  rotate: 270deg;
}

.accordion__icon-wrapper::before,
.accordion__icon-wrapper::after {
  content: none;
}

.accordion__content > *:first-child:not(:last-child) {
  border-bottom: var(--border-style);
}


/* Hamburger Menu - User Menu */

.hamburger-menu__user-menu-container {
  display: grid;
  row-gap: 1rem;
}

.hamburger-menu__user-information {
  padding: 2rem 1rem;
  background-color: var(--color-white);
  border-radius: .4rem;
}

.hamburger-menu__text--user-name {
  font-weight: var(--fw-bold);
  letter-spacing: .03em;
  line-height: 1.3;
}

.hamburger-menu__text--user-name > small {
  margin-left: .25rem;
}

.hamburger-menu__user-information[data-state-logged-in="false"] {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  align-items: center;
}

.hamburger-menu__user-information[data-state-logged-in="false"] .hamburger-menu__text--user-name {
  font-size: 1.3rem;
}

.hamburger-menu__user-information[data-state-logged-in="false"] .hamburger-menu__text--user-name > small {
  font-size: 1.1rem;
}

.hamburger-menu__user-button-container {
  display: flex;
  column-gap: 1rem;
}

.hamburger-menu__user-button-container .c-button__primary,
.hamburger-menu__user-button-container .c-button__secondary {
  display: grid;
  place-content: center;

  min-width: 0;
  height: 4.8rem;
  padding: 0;

  font-size: 1.4rem;
  line-height: 1;
  word-break: keep-all;
}

.hamburger-menu__button--user-registration {
  width: 14rem;
}

.hamburger-menu__button--user-login {
  width: 10.9rem;
}

.hamburger-menu__user-information[data-state-logged-in="true"] {
  display: grid;
  row-gap: 1rem;
}

.hamburger-menu__user-information--top {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: var(--spacer-header);
}

.hamburger-menu__user-information[data-state-logged-in="true"] .hamburger-menu__text--user-name {
  padding-left: var(--spacer-header);

  font-size: 1.8rem;
}

.hamburger-menu__user-information[data-state-logged-in="true"] .hamburger-menu__text--user-name > small {
  font-size: 1.2rem;
}

.hamburger-menu__text--user-rank {
  display: flex;
  align-items: baseline;

  padding: .8rem 2rem;
  background-color: var(--color-rank-bg, var(--color-primary));
  border-radius: 5.2rem;

  color: var(--color-rank-txt, var(--color-white));
  font-size: 1.4rem;
  letter-spacing: .08em;
  line-height: 1;
}

.hamburger-menu__text--user-rank[data-user-rank="platinum"] {
  background-color: #8BAFD3;
}

.hamburger-menu__text--user-rank > small {
  font-size: 1.1rem;
}

.hamburger-menu__user-information--bottom {
  display: grid;
  grid-template-columns: repeat(2, auto);
  column-gap: var(--spacer-header);
}

.hamburger-menu__user-point-coupon-wrapper {
  display: grid;
  row-gap: 1rem;

  padding-left: var(--spacer-header);
}

.hamburger-menu__text--user-point {
  display: flex;
  align-items: baseline;
  column-gap: .4rem;

  color: var(--color-secondary);
  font-size: 2.8rem;
  font-weight: var(--fw-bold);
  letter-spacing: .03em;
  line-height: 1;
}

.hamburger-menu__text--user-point > small {
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
}

.hamburger-menu__button--user-coupon {
  display: grid;
  place-content: center;

  width: 13rem;
  height: 3rem;
  min-width: 0;
  padding: 0;

  font-size: 1.2rem;
}

.hamburger-menu__user-navigation-container {
  --navigation-width: 8rem;

  display: grid;
  grid-template-columns: repeat(2, var(--navigation-width));
  justify-content: flex-end;
  column-gap: .7rem;
}

.hamburger-menu__button--user-navigation {
  display: grid;
  place-content: center;
  row-gap: .2rem;
  justify-items: center;

  width: 100%;
  height: 7rem;
  padding: .8rem .7rem;

  color: var(--color-project-text);
  font-size: 1.3rem;
  font-weight: var(--fw-bold);
  letter-spacing: normal;
  line-height: 1;
  text-decoration: none;
}

.hamburger-menu__button--user-navigation > svg {
  width: 4rem;
  aspect-ratio: 1;
}


/* Brand Logo */

.global-header .header-primary__brand-logo-wrapper {
  margin-top: .4rem;
}


/* Navigation */

@media (min-width: 768px) {
  .global-header .header-primary__navigation-container {
    margin-right: 3rem;
  }
}

.global-header .header-primary__navigation-container .header-primary__navigation-contents-wrapper {
  gap: .6rem;
}

.global-header .header-primary__navigation-container .header-primary__navigation-contents-wrapper [class*=header-primary__navigation-item-wrapper] {
  width: 3.6rem;
}


/* Cart */

.global-header .header-primary__navigation-item-wrapper--cart .cart-state--count {
  --count-num-width: 2rem;

  top: .3rem;
  right: .2rem;

  background-color: var(--color-primary);

  font-size: 1.2rem;
}


/* Search Content */

.global-header .header-primary__product-search-container {
  display: grid;
  column-gap: var(--spacer-header);
  grid-auto-flow: column;
}

@media (max-width: 767px) {
  .global-header .header-primary__product-search-container {
    grid-template-columns: repeat(2, 1fr);
    grid-column: 1 / -1;
    grid-row: 2 / 3;
  }
}

@media (min-width: 768px) {
  .global-header .header-primary__product-search-container {
    margin-right: 6rem;
  }
}

[class*="header-primary__button--search-"] {
  display: grid;
  grid-template-columns: 1fr var(--icon-size, auto);
  align-items: center;
  column-gap: 1em;

  width: 100%;
  height: 3.5rem;
  padding-inline: 1.1rem;
  border: solid 1px #DEDEDE;
  border-radius: .4rem;

  color: var(--color-project-text);
  font-size: 1.2rem;
  letter-spacing: .03em;
  line-height: 1;
}

[class*="header-primary__button--search-"]::after {
  content: "";

  width: var(--icon-size, 0);
  aspect-ratio: 1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

[class*="header-primary__button--search-"] > span {
  text-align: left;
}

.header-primary__button--search-all {
  --icon-size: 1.873rem;
}

@media (min-width: 768px) {
  .header-primary__button--search-all {
    width: 26rem;
  }
}

.header-primary__button--search-all::after {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22search%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218.727%22%20height%3D%2218.727%22%20viewBox%3D%220%200%2018.727%2018.727%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1%22%20data-name%3D%22%E3%83%91%E3%82%B9%201%22%20d%3D%22M14.144%2C14.144l5.462%2C5.462ZM9.852%2C15.7A5.852%2C5.852%2C0%2C1%2C0%2C4%2C9.852%2C5.854%2C5.854%2C0%2C0%2C0%2C9.852%2C15.7Z%22%20transform%3D%22translate(-2.439%20-2.439)%22%20fill%3D%22none%22%20stroke%3D%22%23acacac%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.6%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_2%22%20data-name%3D%22%E3%83%91%E3%82%B9%202%22%20d%3D%22M0%2C0H18.727V18.727H0Z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E');
}

.header-primary__button--search-category {
  --icon-size: 1.167rem;
}

@media (min-width: 768px) {
  .header-primary__button--search-category {
    width: 20rem;
  }
}

.header-primary__button--search-category::after {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.363%22%20height%3D%227.282%22%20viewBox%3D%220%200%2013.363%207.282%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1569%22%20data-name%3D%22%E3%83%91%E3%82%B9%201569%22%20d%3D%22M0%2C0%2C5.833%2C5.833%2C0%2C11.666%22%20transform%3D%22translate(12.515%200.849)%20rotate(90)%22%20fill%3D%22none%22%20stroke%3D%22%23acacac%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.2%22%2F%3E%3C%2Fsvg%3E');
}


/*
 * Header - Simple
 */

html:has([data-header-type="simple"]) {
  --height-header-primary: 5.5rem;
}

@media (min-width: 768px) {
  html:has([data-header-type="simple"]) {
    --height-header-primary: 7rem;
  }
}

[data-header-type="simple"] .header__content-wrapper--primary .header__content-inner {
  grid-template-columns: initial;
  justify-content: center;
}




/*
 * Header - Store
 */

html:has([data-header-type="store"]) {
  --height-header-primary: 5.5rem;
}

html:has([data-header-type="store"]) .global-header {
  --brand-logo-width: 13.5rem;
}

[data-header-type="store"] .header__content-wrapper--primary .header__content-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

[data-header-type="store"] .header-primary__brand-logo-wrapper {
  margin-top: 0;
}

.header-primary__online-shop-link {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;

  color: var(--color-project-text);
  font-size: 1rem;
  font-weight: var(--fw-bold);
  letter-spacing: .05em;
  text-decoration: none;
}

.header-primary__online-shop-link::before {
  content: "";

  width: 3.6rem;
  aspect-ratio: 1;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_21187%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2021187%22%20transform%3D%22translate(-255%20-37)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_5527%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%205527%22%20width%3D%2236%22%20height%3D%2236%22%20transform%3D%22translate(255%2037)%22%20fill%3D%22none%22%2F%3E%20%3Cg%20id%3D%22Icon_ionic-ios-cart%22%20data-name%3D%22Icon%20ionic-ios-cart%22%20transform%3D%22translate(260.618%2042.507)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68703%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068703%22%20d%3D%22M11.546%2C29.117a.992.992%2C0%2C1%2C1-.992-.992A.992.992%2C0%2C0%2C1%2C11.546%2C29.117Z%22%20transform%3D%22translate(-2.549%20-9.747)%22%20fill%3D%22%23121212%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68704%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068704%22%20d%3D%22M27.331%2C29.117a.992.992%2C0%2C1%2C1-.992-.992.992.992%2C0%2C0%2C1%2C.992.992Z%22%20transform%3D%22translate(-9.059%20-9.747)%22%20fill%3D%22%23121212%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68705%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068705%22%20d%3D%22M20.556%2C7.315a.243.243%2C0%2C0%2C0-.215-.174L6.885%2C5.84a.414.414%2C0%2C0%2C1-.31-.194%2C4.207%2C4.207%2C0%2C0%2C0-.5-.768c-.318-.388-.917-.376-2.016-.384a.6.6%2C0%2C0%2C0-.673.583.591.591%2C0%2C0%2C0%2C.644.583A5.489%2C5.489%2C0%2C0%2C1%2C5.1%2C5.736c.194.058.351.376.409.653a.015.015%2C0%2C0%2C0%2C0%2C.012c.008.05.083.421.083.426l1.653%2C8.742a3.213%2C3.213%2C0%2C0%2C0%2C.6%2C1.475%2C1.649%2C1.649%2C0%2C0%2C0%2C1.359.669h9.775a.587.587%2C0%2C0%2C0%2C.595-.554.576.576%2C0%2C0%2C0-.578-.6H9.2a.48.48%2C0%2C0%2C1-.343-.116%2C1.854%2C1.854%2C0%2C0%2C1-.475-1.074L8.2%2C14.387a.023.023%2C0%2C0%2C1%2C.017-.025l11.473-1.942a.241.241%2C0%2C0%2C0%2C.2-.215l.661-4.784A.236.236%2C0%2C0%2C0%2C20.556%2C7.315Z%22%20transform%3D%22translate(0%200)%22%20fill%3D%22%23121212%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
}




/*
 * Header - Magazine
 */

html:has([data-header-type="magazine"]) {
  --height-header-primary: 6rem;
}

@media (min-width: 768px) {
  html:has([data-header-type="magazine"]) {
    --height-header-primary: 8rem;
  }
}

html:has([data-header-type="magazine"]) .global-header {
  --brand-logo-width: 7.74rem;
}

@media (min-width: 768px) {
  html:has([data-header-type="magazine"]) .global-header {
    --brand-logo-width: 9.413rem;
  }
}

[data-header-type="magazine"] .header__content-wrapper--primary .header__content-inner {
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "brand-logo magazine-content hamburger-menu";

  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.16);
}

@media (max-width: 767px) {
  [data-header-type="magazine"] .header__content-wrapper--primary .header__content-inner {
    padding: 0 0 0 var(--padding-horizontal-global);
  }
}

@media (min-width: 768px) {
  [data-header-type="magazine"] .header__content-wrapper--primary .header__content-inner {
    column-gap: 4rem;
  }
}

[data-header-type="magazine"] .header-primary__brand-logo-wrapper {
  grid-area: brand-logo;
}

[data-header-type="magazine"] .header-primary__hamburger-menu-container {
  grid-area: hamburger-menu;
}

.header-primary__magazine-content-container {
  grid-area: magazine-content;
}

[data-header-type="magazine"] .header__content-wrapper--primary {
  background-color: #000;
  border-bottom: none;

  color: var(--color-white);
}

[data-header-type="magazine"] .header-primary__brand-logo-wrapper {
  margin: 0;
}

[data-header-type="magazine"] .hamburger-menu__toggle-button {
  width: auto;
  height: var(--height-header-primary);
  aspect-ratio: 1;
  margin: 0;
  background-color: var(--color-white);
  border-radius: 0;
}

.header-primary__magazine-content-container {
  display: flex;
  justify-content: space-between;
  align-items: center;

  padding-left: 3rem;
}

@media (min-width: 768px) {
  .header-primary__magazine-content-container {
    padding-left: 6rem;
  }
}

.header-primary__magazine-content--mega-menu {
  display: flex;
  align-items: center;
  column-gap: 6rem;
}

.header-primary__magazine-content--link {
  display: flex;
  align-items: center;
  column-gap: 2rem;
}

@media (min-width: 768px) {
  .header-primary__magazine-content--link {
    column-gap: 3rem;
  }
}

[class*="header-primary__magazine-text--"] {
  color: var(--color-white);
  font-weight: var(--fw-bold);
  text-decoration: none;
}

.header-primary__magazine-text--mega-menu {
  font-size: 1.3rem;
}

.header-primary__magazine-text--link {
  display: grid;
  grid-template-columns: repeat(2, auto);
  align-items: center;

  font-size: 1rem;
}

@media (min-width: 768px) {
  .header-primary__magazine-text--link {
    font-size: 1.2rem;
  }
}

.header-primary__magazine-text--link::before {
  content: "";

  width: 3.6rem;
  aspect-ratio: 1;
  background-repeat: no-repeat;
  background-size: contain;
}

.header-primary__magazine-text--link[data-link-name="online-store"]::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_21187%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2021187%22%20transform%3D%22translate(-255%20-37)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_5527%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%205527%22%20width%3D%2236%22%20height%3D%2236%22%20transform%3D%22translate(255%2037)%22%20fill%3D%22none%22%2F%3E%20%3Cg%20id%3D%22Icon_ionic-ios-cart%22%20data-name%3D%22Icon%20ionic-ios-cart%22%20transform%3D%22translate(260.618%2042.507)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68703%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068703%22%20d%3D%22M11.546%2C29.117a.992.992%2C0%2C1%2C1-.992-.992A.992.992%2C0%2C0%2C1%2C11.546%2C29.117Z%22%20transform%3D%22translate(-2.549%20-9.747)%22%20fill%3D%22%23fff%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68704%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068704%22%20d%3D%22M27.331%2C29.117a.992.992%2C0%2C1%2C1-.992-.992.992.992%2C0%2C0%2C1%2C.992.992Z%22%20transform%3D%22translate(-9.059%20-9.747)%22%20fill%3D%22%23fff%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68705%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068705%22%20d%3D%22M20.556%2C7.315a.243.243%2C0%2C0%2C0-.215-.174L6.885%2C5.84a.414.414%2C0%2C0%2C1-.31-.194%2C4.207%2C4.207%2C0%2C0%2C0-.5-.768c-.318-.388-.917-.376-2.016-.384a.6.6%2C0%2C0%2C0-.673.583.591.591%2C0%2C0%2C0%2C.644.583A5.489%2C5.489%2C0%2C0%2C1%2C5.1%2C5.736c.194.058.351.376.409.653a.015.015%2C0%2C0%2C0%2C0%2C.012c.008.05.083.421.083.426l1.653%2C8.742a3.213%2C3.213%2C0%2C0%2C0%2C.6%2C1.475%2C1.649%2C1.649%2C0%2C0%2C0%2C1.359.669h9.775a.587.587%2C0%2C0%2C0%2C.595-.554.576.576%2C0%2C0%2C0-.578-.6H9.2a.48.48%2C0%2C0%2C1-.343-.116%2C1.854%2C1.854%2C0%2C0%2C1-.475-1.074L8.2%2C14.387a.023.023%2C0%2C0%2C1%2C.017-.025l11.473-1.942a.241.241%2C0%2C0%2C0%2C.2-.215l.661-4.784A.236.236%2C0%2C0%2C0%2C20.556%2C7.315Z%22%20transform%3D%22translate(0%200)%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
}

.header-primary__magazine-text--link[data-link-name="store"]::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_21187%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2021187%22%20transform%3D%22translate(-255%20-37)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_5527%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%205527%22%20width%3D%2236%22%20height%3D%2236%22%20transform%3D%22translate(255%2037)%22%20fill%3D%22none%22%2F%3E%20%3Cpath%20id%3D%22Icon_material-home%22%20data-name%3D%22Icon%20material-home%22%20d%3D%22M9.872%2C19.1V13.949h3.436V19.1H17.6V12.231H20.18L11.59%2C4.5%2C3%2C12.231H5.577V19.1Z%22%20transform%3D%22translate(261%2043.5)%22%20fill%3D%22%23fff%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
}

.header-primary__magazine-text--link[data-link-name="search"]::before {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_16266%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2016266%22%20transform%3D%22translate(-17%20-17)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_24891%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2024891%22%20width%3D%2236%22%20height%3D%2236%22%20transform%3D%22translate(17%2017)%22%20fill%3D%22none%22%2F%3E%20%3Cg%20id%3D%22search%22%20transform%3D%22translate(26.543%2026.517)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1%22%20data-name%3D%22%E3%83%91%E3%82%B9%201%22%20d%3D%22M13.19%2C13.19l4.949%2C4.949ZM9.3%2C14.6A5.3%2C5.3%2C0%2C1%2C0%2C4%2C9.3%2C5.3%2C5.3%2C0%2C0%2C0%2C9.3%2C14.6Z%22%20transform%3D%22translate(-2.586%20-2.586)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_2%22%20data-name%3D%22%E3%83%91%E3%82%B9%202%22%20d%3D%22M0%2C0H16.967V16.967H0Z%22%20transform%3D%22translate(0%200)%22%20fill%3D%22none%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
}





/*
 * Footer
 */

.global-footer {
  background-color: transparent;

  color: var(--color-project-text);
}

.global-footer a {
  color: inherit;
}


/* Category Page Contents */

.global-footer__category-page-content {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;

  padding-block: 4rem;
  border-top: solid .5rem var(--color-project-bg);
}

@media (min-width: 768px) {
  .global-footer__category-page-content {
    align-items: center;

    padding-block: 6rem 8rem;
  }
}

.global-footer__category-page-content > .c-button {
  margin-block: 0;
}

@media (min-width: 768px) {
  .global-footer__category-page-content > * {
    max-width: 63rem;
  }
}

.global-footer__banner-container {
  display: grid;
  row-gap: 1rem;
}

@media (max-width: 767px) {
  .global-footer__banner-container {
    max-width: 30rem;
    margin-inline: auto;
  }
}

@media (min-width: 768px) {
  .global-footer__banner-container {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 3rem;
  }
}

.global-footer__banner-link {
  border-radius: .4rem;
  overflow: hidden;
}

@media (min-width: 768px) {
  .global-footer__category-page-content .global-footer__application-inner {
    padding: 1.5rem 3rem;
  }
}


/* Shop search */

.global-footer .global-footer__shop-search-wrapper {
  --zindex-shadow: 1;
  --zindex-content: 2;
  position: relative;
  display: grid;
  align-items: center;
  width: 100%;
  aspect-ratio: 1.875;
  padding-block: 5.5rem;
  background-image: var(--bg-url);
  background-repeat: no-repeat;
  background-size: cover;
}

@media (min-width: 768px) {
  .global-footer .global-footer__shop-search-wrapper {
    padding-block: 6.2rem 5.8rem;
    aspect-ratio: 6.6666666667;
  }
}

.global-footer .global-footer__shop-search-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: var(--zindex-shadow);
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}

.global-footer .global-footer__shop-search-inner {
  position: relative;
  z-index: var(--zindex-content);
  display: grid;
  justify-items: center;
  row-gap: 2.6rem;
}

@media (min-width: 768px) {
  .global-footer .global-footer__shop-search-inner {
    row-gap: 2rem;
  }
}

.global-footer .global-footer__shop-search-image {
  width: 35.5rem;
}

@media (min-width: 768px) {
  .global-footer .global-footer__shop-search-image {
    width: 52.5rem;
  }
}

.global-footer .global-footer__link--shop-search {
  display: flex;
  align-items: center;
  column-gap: 1rem;
  width: fit-content;
  min-width: 0;
  margin: 0;
  padding: 1.2rem 3rem;
  color: var(--color-white);
  font-size: 1.3rem;
}

.global-footer .global-footer__link--shop-search::before {
  content: "";
  width: 1.231rem;
  aspect-ratio: 0.8184840426;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.308%22%20height%3D%2216.043%22%20viewBox%3D%220%200%2013.308%2016.043%22%3E%20%3Cg%20id%3D%22Icon_feather-map-pin%22%20data-name%3D%22Icon%20feather-map-pin%22%20transform%3D%22translate(-4%200.5)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68644%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068644%22%20d%3D%22M16.808%2C7.654c0%2C4.786-6.154%2C8.889-6.154%2C8.889S4.5%2C12.44%2C4.5%2C7.654a6.154%2C6.154%2C0%2C1%2C1%2C12.308%2C0Z%22%20transform%3D%22translate(0%20-1.5)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_68645%22%20data-name%3D%22%E3%83%91%E3%82%B9%2068645%22%20d%3D%22M17.6%2C12.551A2.051%2C2.051%2C0%2C1%2C1%2C15.551%2C10.5%2C2.051%2C2.051%2C0%2C0%2C1%2C17.6%2C12.551Z%22%20transform%3D%22translate(-4.897%20-6.397)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}


/* Footer Application & Sustainable */

.global-footer__application-sustainable-wrapper {
  width: 100%;
}

.global-footer__application-sustainable-inner {
  display: grid;
}

@media (min-width: 768px) {
  .global-footer__application-sustainable-inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

.global-footer__application-wrapper {
  position: relative;
  display: grid;
  align-items: center;
  background-color: var(--color-project-bg);
}

.global-footer__application-inner {
  display: grid;
  align-items: center;
  grid-template-columns: calc(111.47 / (375 - (20 + 7.5)) * 100%) 1fr;
  column-gap: calc(20 / 375 * 100%);
  padding: 3.5rem 2rem 3.5rem 0.75rem;
}

@media (min-width: 768px) {
  .global-footer__application-inner {
    grid-template-columns: calc(111.76 / (700 - (56.8 * 2)) * 100%) 1fr;
    column-gap: calc(20 / 700 * 100%);
    max-width: 70rem;
    margin-inline: auto;
    padding: 1.5rem 5.68rem;
  }
}

.global-footer__application-content-container {
  display: grid;
  align-items: center;
}

@media (min-width: 768px) {
  .global-footer__application-content-container {
    grid-template-columns: 1fr calc(220 / (700 - (56.8 * 2) - 111.76) * 100%);
    column-gap: calc(20 / (700 - (56.8 * 2) - 111.76) * 100%);
  }
}

.global-footer__application-text--title {
  margin-bottom: 1.6rem;
  font-size: 1.8rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.03em;
  line-height: 1;
}

.global-footer__application--text--paragraph {
  margin-bottom: 2rem;
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
  letter-spacing: 0.03em;
  line-height: calc(22 / 14);
}

@media (min-width: 768px) {
  .global-footer__application--text--paragraph {
    margin-bottom: 0;
  }
}

.global-footer__application-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2rem;
}

@media (min-width: 768px) {
  .global-footer__application-list {
    column-gap: 1.4rem;
  }
}

.global-footer__application-link {
  display: grid;
  width: 100%;
  padding: 0;
  border: none;
}

.global-footer__application-link[tabindex="-1"] {
  pointer-events: none;
}

.global-footer__sustainable-wrapper {
  width: 100%;
}


/* Footer Main Content */

.global-footer .global-footer__content {
  width: 100%;
  background-color: #FDFDFD;
  border-top: solid 2px var(--color-project-bg);
}


/* Footer Inner */

.global-footer .global-footer__inner {
  justify-items: center;
  row-gap: 3rem;
  padding-block: 4rem;
}

@media (min-width: 768px) {
  .global-footer .global-footer__inner {
    justify-items: initial;
    padding-block: 5rem;
  }
}


/* Footer Inner - Top */

.global-footer .global-footer__brand-logo-image {
  display: block;
  width: 15.885rem;
}


/* Footer Inner - Bottom */

.global-footer .global-footer__inner--bottom {
  row-gap: 4rem;
}

@media (min-width: 768px) {
  .global-footer .global-footer__inner--bottom {
    align-items: flex-end;
    padding-top: 0;
    border: none;
  }
}

.global-footer .global-footer__link-container {
  display: grid;
  row-gap: 2rem;
  justify-items: center;
}

@media (min-width: 768px) {
  .global-footer .global-footer__link-container {
    justify-items: flex-start;
  }
}

.global-footer .global-footer__text--customer-support {
  display: flex;
  align-items: center;
  column-gap: 0.6rem;
  font-size: 1.2rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.03em;
  line-height: 2;
}

.global-footer .global-footer__text--customer-support::before {
  content: "";
  width: 1.8rem;
  aspect-ratio: 1;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_17969%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2017969%22%20transform%3D%22translate(-51%20-6855)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_511%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%20511%22%20cx%3D%229%22%20cy%3D%229%22%20r%3D%229%22%20transform%3D%22translate(51%206855)%22%20fill%3D%22%23121212%22%2F%3E%20%3Ctext%20id%3D%22_%22%20data-name%3D%22%EF%BC%9F%22%20transform%3D%22translate(54%206868)%22%20fill%3D%22%23fff%22%20font-size%3D%2212%22%20font-family%3D%22HiraginoSans-W6%2C%20Hiragino%20Sans%22%20letter-spacing%3D%220.03em%22%3E%3Ctspan%20x%3D%220%22%20y%3D%220%22%3E%EF%BC%9F%3C%2Ftspan%3E%3C%2Ftext%3E%20%3C%2Fg%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.global-footer .global-footer__link-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 1em;
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  line-height: calc(28 / 12);
}

.global-footer .global-footer__link-list>li {
  display: flex;
  align-items: center;
  column-gap: 1em;
}

.global-footer .global-footer__link-list>li:not(:last-of-type)::after {
  content: "｜";
}

/* @media (max-width: 767px) {
  .global-footer .global-footer__link-list>li:nth-of-type(4),
  .global-footer .global-footer__link-list>li:nth-of-type(5) {
    width: 100%;
    justify-content: center;
  }

  .global-footer .global-footer__link-list>li:nth-of-type(4)::after,
  .global-footer .global-footer__link-list>li:nth-of-type(5)::after {
    content: none;
  }
} */

.global-footer .global-footer__text--page-link {
  display: flex;
  font-size: 1.2rem;
  font-weight: var(--fw-regular);
  letter-spacing: 0.03em;
  line-height: calc(28 / 12);
}

.global-footer .global-footer__copyright-wrapper {
  display: grid;
  row-gap: 1rem;
  justify-items: center;
}

@media (min-width: 768px) {
  .global-footer .global-footer__copyright-wrapper {
    justify-items: flex-end;
  }
}

.global-footer .global-footer__text--copyright {
  font-size: 1rem;
  font-weight: var(--fw-regular);
  letter-spacing: 0.03em;
  line-height: calc(12 / 10);
}




/*
 * Footer - Simple
 */

[data-footer-type="simple"] {}




/*
 * Footer - Store
 */

[data-footer-type="store"] .global-footer__inner {
  row-gap: var(--spacer-small);

  padding-block: 6rem;
}

@media (min-width: 768px) {
  [data-footer-type="store"] .global-footer__inner {
    grid-template-areas:
      "logo store-link-list"
      "link-list ."
      "copyright ."
    ;
  }

  [data-footer-type="store"] .global-footer__brand-logo-image {
    grid-area: logo;
  }

  [data-footer-type="store"] .global-footer__link-list {
    grid-area: link-list;
  }

  [data-footer-type="store"] .global-footer__store-link-list {
    grid-area: store-link-list;
  }

  [data-footer-type="store"] .global-footer__copyright-wrapper {
    grid-area: copyright;
  }
}

[data-footer-type="store"] .global-footer__brand-logo-image {
  width: 13.5rem;
}

@media (min-width: 768px) {
  [data-footer-type="store"] .global-footer__link-list {
    justify-content: flex-start;
  }
}

.global-footer__store-link-list {
  display: flex;
  align-items: center;
  justify-content: space-around;

  width: 100%;
  margin-top: 1rem;
}

@media (min-width: 768px) {
  .global-footer__store-link-list {
    justify-content: flex-end;
    column-gap: 3rem;
  }
}

.global-footer__store-link-list [data-name="depo"] {
  width: 9.985rem;
}

.global-footer__store-link-list [data-name="alpen"] {
  width: 10.344rem;
}

.global-footer__store-link-list [data-name="golf5"] {
  width: 6.675rem;
}

@media (min-width: 768px) {
  [data-footer-type="store"] .global-footer__copyright-wrapper {
    justify-items: flex-start;
  }
}




/*
 * Footer - Magazine
 */

[data-footer-type="magazine"] {}
