﻿@charset "UTF-8";


/* ===============================================
  * Foundation *f
=============================================== */

:root {
  /*
   * Color
   */

  --color-jk-main: #333;
  --color-jk-sub-1: #e5e5e5;
  --color-jk-sub-2:#707070;
  --color-jk-sub-3: #666;
  --color-jk-bg: #f8eee4;
  --color-jk-text: #333;
  --color-jk-error: #e53232;

  --color-jk-border-gray: #EEEEEE;

  --color-danger: var(--color-jk-error);
  --color-red: var(--color-jk-error);
  --color-primary: var(--color-jk-main);


  /*
   * Font
   */

  --ff-noto: "Noto Sans JP";
  --ff-lato: "Lato";

  --font-ja: var(--ff-noto), "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS PGothic, sans-serif;
  --font-en: var(--ff-lato), "Poppins", sans-serif;
  --font-main: var(--ff-lato), var(--ff-noto), "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS PGothic, sans-serif;

  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;


  /*
   * z-index
   */

  --zindex-header: 1000;
  --zindex-header-bg: 900;


  /*
   * Block
   */

  --width-jk-content: 120rem;
  --padding-jk-horizontal: 1.5rem;
  --width-jk-general: min(100%, calc(var(--width-jk-content) + (var(--padding-jk-horizontal) * 2)));

  --header-height: 5.6rem;


  /*
   * Animation
   */

  --transition-duration-default: 300ms;


  /*
   * Background Image
   */

  --link-arrow-w: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229.899%22%20height%3D%229.899%22%20viewBox%3D%220%200%209.899%209.899%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4301%22%20data-name%3D%22%E3%83%91%E3%82%B9%204301%22%20d%3D%22M5%2C6H-1V0A1%2C1%2C0%2C0%2C1%2C0-1%2C1%2C1%2C0%2C0%2C1%2C1%2C0V4H5A1%2C1%2C0%2C0%2C1%2C5%2C6Z%22%20transform%3D%22translate(4.95%208.485)%20rotate(-135)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
  --link-arrow-b: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2211.314%22%20height%3D%2211.314%22%20viewBox%3D%220%200%2011.314%2011.314%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4265%22%20data-name%3D%22%E3%83%91%E3%82%B9%204265%22%20d%3D%22M6%2C7H-1V0A1%2C1%2C0%2C0%2C1%2C0-1%2C1%2C1%2C0%2C0%2C1%2C1%2C0V5H6A1%2C1%2C0%2C0%2C1%2C6%2C7Z%22%20transform%3D%22translate(5.657%209.899)%20rotate(-135)%22%20fill%3D%22%23231814%22%2F%3E%3C%2Fsvg%3E');
}

@media (min-width: 992px) {
  :root {
    --header-height: 12.5rem;

    --padding-jk-horizontal: 2rem;
  }
}


html {
  color: var(--color-jk-text);
  font-family: var(--font-main);
  font-optical-sizing: auto;
  font-style: normal;
}




/* ===============================================
  * Header *
=============================================== */

[data-item-name="logo"] {
  grid-area: logo;
}

[data-item-name="hamburger-menu"] {
  grid-area: hamburger-menu;
}

[data-item-name="search"] {
  grid-area: search;
}

[data-item-name="help"] {
  grid-area: help;
}

[data-item-name="user"] {
  grid-area: user;
}

[data-item-name="favorite"] {
  grid-area: favorite;
}

[data-item-name="cart"] {
  grid-area: cart;
}

[data-item-name="search-box"] {
  grid-area: search-box;
}

.jk-header {
  --jk-header-transition-default: 500ms ease;

  height: var(--header-height);
}

.jk-header:has(.s-header-categoryNav:hover)::after {
  content: "";

  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--zindex-header-bg);
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .6);

  pointer-events: none;
}

.jk-header-wrap__container {
  position: relative;
  top: 0;
  left: 0;
  z-index: var(--zindex-header);

  width: 100%;
  height: var(--header-height);
  background-color: var(--color-white);
}

.jk-header-wrap {
  position: relative;
}

.jk-header__main-wrapper .jk-header-wrap__inner {
    display: grid;
    grid-template-areas: var(--grid-template-areas);
    grid-template-columns: var(--grid-template-columns);
    gap: 0.5rem; 
    align-items:center;
    height: 100%;
}

.jk-header-wrap__inner {
   width: var(--width-jk-general);
   margin: 0 auto;
   padding-inline: 1rem;
  
}

.jk-header-wrap__logo {
  width: 12.7rem;
  margin: auto; /* 中央揃え */
  display: block;
}
 

.jk-header .s-header-utilityList__item {
  width: auto;
}

.jk-header .s-header__cartCnt {
  background-color: var(--color-jk-sub-3);
}

.jk-header .c-freeWordSearchBox,
.jk-header__search-box-wrapper .c-freeWordSearchBox {
  column-gap: 1rem;

  padding-block: 1rem;
  padding-inline: 1.5rem;
  border: none;
  box-shadow: inset 0 0 4px rgba(0, 0, 0, .16);

  cursor: initial;
}

@media (min-width: 992px) {
  .jk-header .c-freeWordSearchBox {
    flex-direction: row-reverse;
  }
}

.jk-header .c-freeWordSearchBox__form,
.jk-header__search-box-wrapper .c-freeWordSearchBox__form {
  line-height: normal;
}

_::-webkit-full-page-media, _:future, :root .jk-header .c-freeWordSearchBox .c-freeWordSearchBox__form::placeholder,
_::-webkit-full-page-media, _:future, :root .jk-header__search-box-wrapper .c-freeWordSearchBox .c-freeWordSearchBox__form::placeholder {
  position: relative;
  top: .1em;
}

.jk-header .c-freeWordSearchBox__form,
.jk-header__search-box-wrapper .c-freeWordSearchBox__form {
  line-height: normal;
}

.jk-header .c-freeWordSearchBox .c-freeWordSearchBox__submit,
.jk-header__search-box-wrapper .c-freeWordSearchBox .c-freeWordSearchBox__submit {
  display: block;

  padding: 0;
  border: none;
  background-color: transparent;

  cursor: pointer;
}


@media (max-width: 991px) {
  .jk-header {
    --grid-template-areas: "hamburger-menu logo search user cart";
    --grid-template-columns: auto 1fr auto auto auto;
    --gap: 1.3rem;
    padding: 0 1rem;
  }

  .js-variableHeader .jk-header-wrap__inner {
    justify-items: center;

    transition: box-shadow var(--transition-duration-default) ease;
  }

  .js-variableHeader[data-stick-state=active] .jk-header-wrap__inner {
    box-shadow: 0 0 .4rem rgba(0, 0, 0, .16);
  }

  .jk-header__main-wrapper {
    height: var(--header-height);
  }

  .jk-header-utilityList__text {
    font-size: 0.9rem;
    white-space: nowrap;
    text-align: center;
  }

 /.jk-header-wrap__logo {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 12.7rem;
    margin: auto;
  }

  [data-item-name="hamburger-menu"] .s-header-navBlok__openBtn {
    position: relative;

    width: 2.4rem;
    aspect-ratio: 24 / 20;
  }

  [data-item-name="hamburger-menu"] .s-header-navBlok__openBtn > span {
    width: 75%;
  }

  [data-item-name="search"] .s-header-utilityList__icon,
  [data-item-name="user"] .s-header-utilityList__icon,
  [data-item-name="cart"] .s-header-utilityList__icon {
    width: 2.8rem;
  }

  .jk-header .s-header-navBlok__nav {
    top: var(--header-height);
  }

  .jk-header .s-header__cartCnt {
    top: -.4rem;
    right: -.5rem;

    font-size: 1rem;
  }


  /*
   * ハンバーガーメニュー
   */

  .jk-header {
    --details-icon-width: 1rem;
    --link-padding: var(--link-padding-vertical) var(--link-padding-horizontal);
    --link-padding-vertical: 1.5rem;
    --link-padding-horizontal: 1.6rem;
    --link-arrow-width: 1rem;
    --hamburger-border-style: solid 1px #eee;
  }

  .jk-header-hamburger__wrapper {
    height: calc(100dvh - var(--header-height));
    padding-top: 0;

    overscroll-behavior: contain;
  }

  .jk-header-hamburger__content-title-wrapper {
    padding: var(--link-padding);
    padding-block: 1.4rem;
    background-color: #aaa;

    color: var(--color-white);
    font-size: 1.6rem;
    font-weight: var(--fw-medium);
    letter-spacing: .05em;
    line-height: 1;
  }

  .js-header-hamburger__content-wrapper {
    display: grid;
  }

  @media (max-width: 991px) {
    .jk-header-hamburger__content-wrapper > *:not(:last-child) {
      border-bottom: var(--hamburger-border-style);
    }
  }

  .js-header-hamburger__content-wrapper > *:not(:last-child) {
    border-bottom: var(--hamburger-border-style);
  }

  .jk-header-hamburger__summary,
  .js-header-hamburger__content-wrapper > *:not(details) {
    display: grid;
    grid-template-columns: 1fr var(--details-icon-width);
    align-items: center;
    column-gap: var(--details-icon-width);

    padding: var(--link-padding);

    font-size: 1.4rem;
    font-weight: var(--fw-regular);
    letter-spacing: .05em;
  }

  .jk-header-hamburger__summary::-webkit-details-marker {
    display: none;
  }

  .jk-header-hamburger__accordion-icon-wrapper {
    position: relative;

    display: block;

    width: var(--details-icon-width);
    aspect-ratio: 1;
  }

  .jk-header-hamburger__accordion-icon-wrapper::before,
  .jk-header-hamburger__accordion-icon-wrapper::after {
    content: "";

    position: absolute;
    top: 0;
    bottom: 0;

    width: 100%;
    height: 2px;
    margin: auto;
    background-color: var(--color-jk-text);
  }

  .jk-header-hamburger__accordion-icon-wrapper::after {
    rotate: 90deg;
  }

  .jk-header-hamburger__details[open] .jk-header-hamburger__accordion-icon-wrapper::after {
    rotate: 0deg;
  }

  .jk-header-hamburger__link-list {
    display: grid;
  }

  .jk-header-hamburger__link-list[data-hierarchy="parent"] > *:not(:last-child) {
    border-bottom: var(--hamburger-border-style);
  }

  .jk-header-hamburger__link-list[data-hierarchy="child"] {
    grid-template-columns: repeat(2, 1fr);
    background-color: #fafafa;
  }

  .jk-header-hamburger__link-list[data-hierarchy="child"] > *:nth-child(odd) {
    border-right: var(--hamburger-border-style);
  }

  .jk-header-hamburger__link-list[data-hierarchy="child"] > li {
    border-bottom: var(--hamburger-border-style);
  }

  .jk-header-hamburger__link-list[data-hierarchy="child"]:has(> *:last-child:nth-child(even)) > li:nth-last-of-type(-n+2),
  .jk-header-hamburger__link-list[data-hierarchy="child"]:has(> *:last-child:nth-child(odd)) > li:last-of-type {
    border-bottom: none;
  }

  .jk-header-hamburger__text--link {
    display: grid;
    grid-template-columns: 1fr var(--link-arrow-width);
    column-gap: var(--link-arrow-width);
    align-items: center;

    padding: var(--link-padding);
  }

  .jk-header-hamburger__text--link::after {
    content: "";

    width: var(--link-arrow-width);
    aspect-ratio: 1;
    background-image: var(--link-arrow-b);
    background-repeat: no-repeat;
    background-size: contain;
  }


  /*
   * 最近チェックした商品
   */

  .jk-header-hamburger__history-list {
    --visible-item-count: 3.5;

    display: grid;
    grid-auto-flow: column;
    grid-template-columns: repeat(auto-fill, calc(100% / var(--visible-item-count)));
    grid-auto-columns: minmax(calc(100% / var(--visible-item-count)), 1fr);
    column-gap: 1rem;

    padding-inline: var(--link-padding-horizontal);
    padding-block: var(--link-padding-vertical) 2.5rem;

    overflow-x: auto;
  }

  .jk-header-hamburger__history-list .c-product-body__title-name {
    font-size: 1.3rem;
    font-weight: var(--fw-regular);
    letter-spacing: .05em;
    line-height: 1.34;
  }


  /*
   * ユーザーコンテンツ
   */

  .jk-header-hamburger__user-content-inner {
    position: relative;
    z-index: var(--zindex-header);

    display: grid;
    grid-template-areas: "user favorite help";
    grid-template-columns: repeat(3, 1fr);
  }

  .jk-header-hamburger__user-item-wrapper {
    background-color: #f8f8f8;
  }

  .jk-header-hamburger__user-content-inner > *:nth-child(2) {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
  }

  .jk-header-hamburger__user-content-inner > *:nth-child(2)::before,
  .jk-header-hamburger__user-content-inner > *:nth-child(2)::after {
    content: "";

    display: block;

    width: 1px;
    height: 62.5%;
    background-color: #ddd;

    pointer-events: none;
  }

  .jk-header-hamburger__user-link-wrapper {
    display: grid;
    place-content: center;
    align-items: center;
    justify-items: center;
    row-gap: .5rem;

    padding-block: 1.5rem;
  }

  .jk-header-hamburger__user-text {
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 1.42;
  }

  .jk-header-hamburger__user-details {
    position: relative;
  }

  .jk-header-hamburger__user-summary {
    position: relative;
  }

  .jk-header-hamburger__user-summary::after {
    content: "";

    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    width: 1.6rem;
    aspect-ratio: 16 / 10;
    margin: auto;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2210%22%20viewBox%3D%220%200%2016%2010%22%3E%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_1%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%201%22%20d%3D%22M8%2C0l8%2C10H0Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-size: contain;

    opacity: 0;

    filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.16));
  }

  .jk-header-hamburger__user-details[open] .jk-header-hamburger__user-summary::after {
    opacity: 1;
  }

  .jk-header-hamburger__user-summary::-webkit-details-marker {
    display: none;
  }

  .jk-header-hamburger__user-details-content {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 2;

    width: 100vw;
    padding: 2rem 2.6rem;
    background-color: var(--color-white);
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
  }

  .jk-header-hamburger__user-details-content .jk-help-menu__link-list {
    display: flex;
    justify-content: space-between;
  }

  .jk-header-hamburger__user-details-content .jk-help-menu__text--link {
    font-size: 1.4rem;
    font-weight: var(--fw-regular);
    letter-spacing: .05em;
    line-height: 1.5;
  }

  .jk-header-hamburger__wrapper:has(.jk-header-hamburger__user-details[open]) {
    overflow-y: hidden;
  }

  .jk-header-hamburger__user-content-wrapper:has(.jk-header-hamburger__user-details[open])::after {
    content: "";

    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--zindex-header-bg);

    width: 100%;
    height: calc(100dvh - var(--header-height));
    background-color: rgba(255, 255, 255, .9);
  }


  /*
   * ヘッダー下検索ボックスのスタイル
   */

  .jk-header__search-box-wrapper {
    padding: 1rem 1.5rem 1.5rem;
  }

  .jk-header__search-box-wrapper .c-freeWordSearchBox__form {
    padding: 0;

    font-size: 1.4rem;
    /* line-height: 1; */
  }

  .jk-header__search-box-wrapper .c-freeWordSearchBox__icon {
    width: 2rem;
  }


  /*
   * Animation
   */

  .jk-header-wrap__container {
    transition: translate var(--jk-header-transition-default), box-shadow var(--jk-header-transition-default);
  }

  /* .jk-header-wrap__container[data-scroll-direction="down"] {
    translate: 0 -100%;
  } */

  .jk-header-wrap__container[data-state-sticky="active"] {
    box-shadow: 0 0 .6rem rgba(0, 0, 0, .16);
  }
}


@media (min-width: 992px) {
  .jk-header {
    --grid-template-areas: "logo search-box search help user favorite cart";
    --grid-template-columns: 1fr auto auto auto auto auto auto;
  }

  .jk-header-utilityList__text {
    color: var(--color-jk-sub-3);
    font-size: 1.3rem;
    font-weight: var(--fw-regular);
    letter-spacing: normal;
    line-height: 1;
    word-break: keep-all;
  }

  .jk-header-wrap__container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .jk-header__main-wrapper {
    position: initial;

    display: block;

    height: auto;
    padding: 0;
    border-bottom: 0;
  }

  .jk-header__main-wrapper .jk-header-wrap__inner {
    padding-top: 1rem;
  }

  .jk-header-wrap__logo {
    width: 23.4rem;
    margin-inline: 0 auto; /* 水平方向の中央揃え */
    display: block; /* 必要に応じて追加 */
}
  }

  [data-item-name="search-box"] {
    margin-right: 3.4rem;
  }

  .jk-header .s-header-freeWordSearch {
    width: 25rem;
    max-width: none;
  }

  .jk-header .c-freeWordSearchBox__icon {
    width: 2rem;
  }

  .jk-header .c-freeWordSearchBox input {
    padding: 0;

    font-size: 1.5rem;
  }

  [data-item-name="search"] {
    margin-right: 1rem;
  }

  [data-item-name="help"] {
    margin-right: 2.4rem;
  }

  [data-item-name="user"] {
    margin-right: 1rem;
  }

  [data-item-name="favorite"] {
    margin-right: 2.3rem;
  }

  .jk-header .s-header-utilityList__icon {
    display: grid;
    row-gap: .2rem;
    align-content: center;
    justify-items: center;
  }

  .jk-header .s-header-utilityList__icon > img {
    width: 3rem;
  }

  .jk-header__navigation-wrapper .jk-header-wrap__inner {
    display: flex;
    justify-content: center;
    column-gap: 5rem;
　　margin-block: 0;
  　padding: 0;
  }

  .jk-header__navigation-wrapper .jk-header-wrap__inner > * {
/*    position: relative;*/
    width: fit-content;
    margin: 0;
    padding-block: 0;
/*    border-bottom: none !important;*/
  }
  .jk-header__navigation-wrapper .jk-header-wrap__inner .s-header-categoryNav {
    width: auto;
  }
  .jk-header__navigation-wrapper .s-header-categoryNav::after {
    content: none;
  }

  .jk-header__navigation-wrapper .s-header-categoryNav__navlist {
    width: 100%;
    max-width: none;
  }

 .jk-header__navigation-wrapper .s-header-categoryNav__head {
    display: block;
    padding-block: 1.5rem;
    font-size: 1.6rem;
    font-weight: var(--fw-medium);
    line-height: 1;
    letter-spacing: .1em;
    word-break: keep-all;
    white-space: nowrap;
  }

  .jk-header__navigation-wrapper .s-header-categoryNav:hover {
    border-bottom: 3px solid black;
  }

  .jk-header__navigation-wrapper .s-header-categoryNav__head::after {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;

    width: 100%;
    height: .1rem;
    margin: 0;
    background-color: #E0E0E0;
    background-image: none;

    pointer-events: none;
  }

  .jk-header__navigation-wrapper .s-header-categoryNav:hover .s-header-categoryNav__head::after {
    background-color: var(--color-black);
  }

  .jk-header__navigation-wrapper .s-header-categoryNav__body {
    position: absolute;
    top: var(--header-height);

    padding-block: 2rem 6rem;
    padding-inline: 0;
    background-color: var(--color-white);

    overscroll-behavior: contain;
  }


  /*
   * 「ヘルプ」ホバー時コンテンツのスタイル調整.
   */

  .jk-header-utilityList__item--help {
    position: relative;
  }

  .jk-help-menu__wrapper {
    position: absolute;
    top: 100%;
    z-index: 2;

    display: none;
    padding-top: 1rem;

    translate: -35% 0;
  }

  .jk-help-menu__wrapper-inner {
    padding: 2rem 2.5rem;
    background-color: var(--color-white);
    border: 1px solid #f5f5f5;
    border-radius: 1rem;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  }

  .jk-header-utilityList__item--help:hover .jk-help-menu__wrapper {
    display: block;
  }

  .jk-help-menu__link-list {
    display: grid;
    row-gap: 1.2rem;
  }

  .jk-help-menu__text--link {
    font-size: 1.5rem;
    font-weight: var(--fw-regular);
    letter-spacing: .05em;
    line-height: 1.5;
    word-break: keep-all;
  }


  /*
   * Animation
   */

  .jk-header-wrap__container {
    transition: translate var(--jk-header-transition-default), box-shadow var(--jk-header-transition-default);
  }

  .jk-header-wrap__container[data-scroll-direction="down"] {
    translate: 0 -100%;
  }

  .jk-header-wrap__container[data-state-sticky="active"] {
    box-shadow: 0 0 .6rem rgba(0, 0, 0, .16);
  }
}




/* ===============================================
  * Footer *
=============================================== */

.jk-footer {
  padding: 0;
  background-color: #707070;

  color: var(--color-white);
}

.jk-footer [class*="jk-footer__nav--"] {
  max-width: none;
}

[class*="jk-footer__text--link"] {
  font-size: 1.3rem;
  font-weight: var(--fw-regular);
  letter-spacing: .03em;
  line-height: 1.5;
}

.jk-footer__text--link-arrow {
  display: grid;
  grid-template-columns: 1rem 1fr;
  align-items: center;
  column-gap: .6rem;

  font-size: 1.4rem;
  font-weight: var(--fw-medium);
}

@media (min-width: 992px) {
  .jk-footer__text--link-arrow {
    display: block;

    font-size: 1.6rem;
  }
}

.jk-footer__text--link-arrow::before {
  content: "";

  width: 100%;
  aspect-ratio: 1;
  background-image: var(--link-arrow-w);
  background-repeat: no-repeat;
  background-size: contain;
}

@media (min-width: 992px) {
  .jk-footer__text--link-arrow::before {
    content: none;
  }
}

.jk-footer__text--copy {
  font-size: 1.1rem;
  font-weight: var(--fw-regular);
  letter-spacing: .03em;
  line-height: 1;
}

.jk-footer__button--mail-magazine {
  display: grid;
  grid-template-columns: 1.75rem 1fr;
  align-items: center;
  column-gap: .55rem;

  width: fit-content;
  margin: auto;
  padding: 1.6rem 2.15rem;
  background-color: var(--color-white);
  border-radius: .5rem;

  color: var(--color-jk-text) !important;
  font-size: 1.4rem;
  font-weight: var(--fw-medium);
  letter-spacing: .03em;
  line-height: 1;
}

.jk-footer__button--mail-magazine::before {
  content: "";

  width: 100%;
  aspect-ratio: 17.5 / 14;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.5%22%20height%3D%2214%22%20viewBox%3D%220%200%2017.5%2014%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4229%22%20data-name%3D%22%E3%83%91%E3%82%B9%204229%22%20d%3D%22M17.75%2C4h-14A1.752%2C1.752%2C0%2C0%2C0%2C2%2C5.75v10.5A1.752%2C1.752%2C0%2C0%2C0%2C3.75%2C18h14a1.752%2C1.752%2C0%2C0%2C0%2C1.75-1.75V5.75A1.752%2C1.752%2C0%2C0%2C0%2C17.75%2C4Zm0%2C1.75V6.2l-7%2C5.445L3.75%2C6.2V5.75Zm-14%2C10.5V8.413l6.463%2C5.027a.87.87%2C0%2C0%2C0%2C1.075%2C0L17.75%2C8.413l0%2C7.836Z%22%20transform%3D%22translate(-2%20-4)%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: contain;
}

.s-footer__nav-inner {
  display: grid;
  row-gap: 3rem;
  justify-items: center;

  padding-inline: var(--padding-jk-horizontal);
}

@media (min-width: 992px) {
  .s-footer__nav-inner {
    --width-jk-content: 100rem;
    --width-jk-general: min(100%, calc(var(--width-jk-content) + (var(--padding-jk-horizontal) * 2)));

    width: var(--width-jk-general);
    margin: auto;
    padding-inline: var(--padding-jk-horizontal);
  }
}

.jk-footer__nav--primary {
  border-bottom: solid 1px #aaa;
}

.jk-footer__nav--primary .s-footer__nav-inner  {
  padding-block: 2.5rem 3rem;
}

@media (min-width: 992px) {
  .jk-footer__nav--primary .s-footer__nav-inner {
    grid-template-columns: auto 1fr auto;
    align-items: center;
    justify-items: flex-start;
    column-gap: 5rem;

    padding-block: 5.25rem;
  }
}

.jk-footer__nav--secondary .s-footer__nav-inner {
  padding-block: 3rem 2.5rem;
}

@media (min-width: 992px) {
  .jk-footer__nav--secondary .s-footer__nav-inner {
    grid-template-columns: 1fr auto;
    align-items: center;
    justify-items: flex-start;
  }
}

.jk-footer__brand-logo-wrapper {
  width: 15rem;
}

@media (min-width: 992px) {
  .jk-footer__brand-logo-wrapper {
    width: 17rem;
  }
}

.jk-footer__nav--primary .jk-footer__link-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem 5rem;
}

@media (min-width: 992px) {
  .jk-footer__nav--primary .jk-footer__link-list {
    grid-auto-flow: column;
    grid-template-columns: initial;
    column-gap: 3rem;
  }
}

.jk-footer__nav--secondary .jk-footer__link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 3rem;
  justify-content: center;
}

@media (min-width: 992px) {
  .jk-footer__nav--secondary .jk-footer__link-list .jk-footer__text--link {
    font-size: 1.4rem;
  }

  .jk-footer__nav--secondary .jk-footer__text--copy {
    font-size: 1.2rem;
  }
}




/* ===============================================
  * Others *
=============================================== */

/*
 * 「ブランド」のスタイル調整.
 */

.jk-category-brand__list {
  --grid-columns: 3;
  --gap: .8rem;

  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  gap: var(--gap);
}

@media (min-width: 992px) {
  .jk-category-brand__list {
    --grid-columns: 6;
    --gap: 1.2rem;
  }
}

.jk-category-brand__list .jk-category-product__link-wrapper {
  display: grid;
  justify-content: center;
  justify-items: center;
  row-gap: 1rem;

  padding: 1.5rem .5rem;
  border: solid 1px #efefef;
  border-radius: .5rem;

  text-align: center;
}

@media (min-width: 992px) {
  .jk-category-brand__list .jk-category-product__link-wrapper {
    padding-inline: 1.5rem;
  }
}

.jk-category-brand__list .jk-category-brand__image-wrapper {
  height: 3.6rem;
}

.jk-category-brand__list .jk-category-brand__image-wrapper img {
  width: auto;
  height: 100%;
}

.jk-category-brand__list .jk-category-brand__text--name {
  font-size: 1.2rem;
  font-weight: var(--fw-regular);
  letter-spacing: .02em;
  line-height: 1.2;
}

@media (min-width: 992px) {
  .jk-category-brand__list .jk-category-brand__text--name {
    font-size: 1.6rem;
    letter-spacing: .05em;
  }
}


/*
 * 「スキンタイプ別」のスタイル調整
 */

.jk-category-skin__list {
  --grid-columns: 3;
  --gap: .8rem;

  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  gap: var(--gap);
}

@media (min-width: 992px) {
  .jk-category-skin__list {
    --grid-columns: 5;
    --gap: 1.2rem;
  }
}

.jk-category-skin__list .jk-category-skin__list-item,
.jk-category-skin__list .jk-category-skin__link-wrapper {
  width: 100%;
  height: 100%;
}

.jk-category-skin__list .jk-category-skin__link-wrapper {
  display: grid;
  grid-template-columns: var(--grid-template-columns, auto);
  justify-items: center;
  align-items: center;
  row-gap: .8rem;

  padding: 1rem;
  border: solid 1px #efefef;
  border-radius: .5rem;

  height: 5.5rem;
}

@media (min-width: 992px) {
  .jk-category-skin__list .jk-category-skin__link-wrapper {
    --grid-template-columns: auto 1fr;

    align-items: center;
    justify-items: initial;
    column-gap: 3rem;

    padding: 1.2rem 2.3rem;
    height: 6rem;
  }
}

.jk-category-skin__list .jk-category-skin__text--name {
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
  letter-spacing: .02em;
  line-height: 1.2;
}

@media (min-width: 992px) {
  .jk-category-skin__list .jk-category-skin__text--name {
    font-size: 1.6rem;
    letter-spacing: .03em;
  }
}


/*
 * カテゴリのスタイル調整.
 */

.jk-category-product__list {
  --grid-columns: 2;
  --gap: .7rem;

  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
  gap: var(--gap);
}

@media (min-width: 992px) {
  .jk-category-product__list {
    --grid-columns: 5;
    --gap: 1.2rem;
  }
}

.jk-category-product__list .jk-category-product__list-item,
.jk-category-product__list .jk-category-product__link-wrapper {
  width: 100%;
  height: 100%;
}

.jk-category-product__list .jk-category-product__link-wrapper {
  --grid-template-columns: 6rem 1fr;

  display: grid;
  grid-template-columns: var(--grid-template-columns);
  align-items: center;
  column-gap: .5rem;

  padding: .5rem;
  border: solid 1px #efefef;
  border-radius: .5rem;
  min-height: 6rem;
}
.jk-header-wrap__inner > *:nth-child(3) .jk-category-product__list .jk-category-product__link-wrapper, 
.jk-header-wrap__inner > *:nth-child(5) .jk-category-product__list .jk-category-product__link-wrapper {
  grid-template-columns: 1fr;
}
.jk-header-wrap__inner > *:nth-child(5) .jk-category-product__list .jk-category-product__link-wrapper {
  text-align: center;
}
.jk-header-wrap__inner > *:nth-child(3) .jk-category-product__list .jk-category-product__link-wrapper img {
  height: 5rem;
  width: auto;
  margin-inline: auto;
}
@media (min-width: 992px) {
  .jk-category-product__list .jk-category-product__link-wrapper {
    --grid-template-columns: 7rem 1fr;
  }
}

.jk-category-product__list .jk-category-product__text--name {
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
  letter-spacing: .03em;
  line-height: 1.42;
}

@media (min-width: 992px) {
  .jk-category-product__list .jk-category-product__text--name {
    font-size: 1.6rem;
  }
}


/* =============================================================
    Module
============================================================= */
/**
 * #m-breadCrumb
 */
 .m-breadcrumb {
  margin-top: 0.6rem;
  margin-bottom: 0.7rem;
}
@media screen and (min-width: 768px) {
  .m-breadcrumb {
    display: block;
    margin-top: 2.5rem;
    margin-bottom: 3.5rem;
    overflow-x: visible;
    white-space: normal;
  }
}

/* =============================================================
    Components
============================================================= */
/**
 * #c-breadcrumb-list
 */
.c-breadcrumb-list {
  font-size: 1.2rem;
}
.c-breadcrumb-item:last-child {
  color: inherit;
}

.c-breadcrumb-item:not(:last-child):after {
  padding-right: 2rem;
  background-image: url(../../assets/img/common/icon/icon-arrow-breadcrumb_original.svg);
  width: 1rem;
  background-size: 1rem 1rem;
}
@media screen and (min-width: 768px) {
  .c-breadcrumb-list {
    font-size: 1.3rem;
  }
}

/**
* #Hidden Responsive
*/
/* =============================================================
    Layout
============================================================= */
.l-container-wrap__head[data-page="product-detail"] {
  border-top: 1px solid var(--color-jk-border-gray);
}
@media (max-width: 767px) {
  .l-container-wrap__head[data-page="product-detail"]  {
    border-block: 1px solid var(--color-jk-border-gray);
  }
}

/**
 * #container-wrap
 */
 .l-container-wrap {
  flex-direction: column;
}


/* ===============================================
  * ユーザー系・オーダー系調整 *
=============================================== */
.c-btn-progress,
.c-btn-fluid {
  border-radius: 0.4rem;
  letter-spacing: 0.05em;
}
.c-btn-progress {
  border: 0;
  padding: 2.2rem 1rem;
  font-weight: bold;
}
.c-btn-progress--white {
  color: var(--color-primary) !important;
  background-color: #efefef;
}

/* ===============================================
  * ユーザー系調整 *
=============================================== */
.m-userNav__title {
  background-color: #fff;
  color: unset;
  border: 1px solid var(--color-gray);
  border-radius: 0.5rem 0.5rem 0 0;
}
.m-userNav-section__title {
  border-bottom: 1px solid var(--color-gray);
}
.m-userNav__sections {
  border-left: 1px solid var(--color-gray);
  border-right: 1px solid var(--color-gray);
  border-bottom:1px solid var(--color-gray);
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}

/* ===============================================
  * オーダー型調整 *
=============================================== */


/* ===============================================
  * 詳細検索 && 履歴・レコメンドエリア調整 *
=============================================== */
.m-productRecommend-wrap .c-product {
  border-radius: 0.5rem;
  background-color: #FCFCFC;
  border: 1px solid #EFEFEF;
  overflow: hidden;
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
}
.m-productRecommend-wrap .c-product-head {
  background-color: var(--color-white);
}
.m-productRecommend-wrap .c-product-head__picture::before {
  padding-top: 100%;
}
.m-productRecommend-wrap .c-product-head__image {
  object-fit: cover;
}
.m-productRecommend-wrap .c-product-body__price-subsc-icon {
  border: unset;
  font-weight: 400;
  color: var(--color-jk-text);
}
.m-productRecommend-wrap .c-product-body__price-subsc-icon::after {
  content: '：';
  display: inline;
}
.m-productRecommend-wrap .c-product-body__price,
.m-productRecommend-wrap .c-product-body__price-subsc-price {
  font-family: var(--font-en);
  font-weight: 400;
  letter-spacing: 0.05em;
}
.m-productRecommend-wrap .c-product-body__price-subsc {
  align-items: baseline;
  gap: 0;
}
.m-productRecommend-wrap .c-product-body {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.m-productRecommend-wrap .c-product-head__favorite {
  cursor: pointer;
}
.m-productRecommend-wrap .c-product-body__title-name {
  letter-spacing: 0.05em;
}
.m-productRecommend-wrap .c-product-body__price-tax {
  color: var(--color-jk-sub-3);
  display: inline-block;
  padding-left: 0.5rem;
}
#js-headRefinedSearch input[type=text],
#js-headRefinedSearch input[type=password],
#js-headRefinedSearch input[type=tel],
#js-headRefinedSearch input[type=email],
#js-headRefinedSearch input[type=text],
#js-headRefinedSearch input[type=number] {
  background-color: var(--color-white);
}
.s-headerProductNavList-checkList__item__label {
  display: flex;
  align-items: center;
  gap: 0 0.8rem;
}

.m-productRecommend-wrap__title {
  display: grid;
  row-gap: .8rem;

  margin-bottom: 2.5rem;

  font-family: var(--font-en);
  font-size: 2.8rem;
  font-weight: var(--fw-regular);
  letter-spacing: .1em;
  line-height: 1;

  text-align: center;
}
@media (min-width: 992px) {
  .m-productRecommend-wrap__title {
    font-size: 4.2rem;
    margin-bottom: 4rem;
  }
}
.m-productRecommend-wrap__title--sub {
  font-family: var(--font-ja);
  font-size: .5em;
  font-weight: var(--fw-medium);
  line-height: 2.14;
}
@media (min-width: 992px) {
  .m-productRecommend-wrap__title--sub {
    font-size: .42em;
  }
}


@media screen and (max-width: 767px) {
  .m-productRecommend-wrap {
    padding-bottom: 5rem;
  }
  .m-productRecommend-wrap .m-productLine-col3-md6 {
    flex-wrap: nowrap;
    overflow: hidden;
    overflow-x: auto;
  }
  .m-productRecommend-wrap .m-productLine-col3-md6__item {
    width: 15rem;
    flex-shrink: 0;
  }
  .m-productRecommend-wrap .m-productLine-col3-md6__item:first-child {
    padding-left: 1.5rem;
  }
  .m-productRecommend-wrap .m-productLine-col3-md6__item:last-child {
    padding-right: 1.5rem;
  }
  .m-productRecommend-wrap .c-product-body {
    row-gap: .6rem;
    padding: .8rem .8rem 1rem;
    margin-top: 0;
  }
  .m-productRecommend-wrap .c-product-body__title-name {
    font-size: 1.4rem;
    font-weight: var(--fw-regular);
    letter-spacing: .05em;
    line-height: 1.57;
  }
  .m-productRecommend-wrap .c-product-body__price,
  .m-productRecommend-wrap .c-product-body__price-subsc-price {
    font-size: 1.6rem;
  }
  .m-productRecommend-wrap .c-product-body__price-subsc-icon {
    padding-left: 0;
    padding-right: 0;
    font-size: 1.2rem;
  }
  .m-productRecommend-wrap .c-product-body__price-tax {
    font-size: 1rem;
  }
}
@media screen and (min-width: 768px) {
  .m-productRecommend-wrap {
    padding-bottom: 10rem;
  }
  .m-productRecommend-wrap .c-product-body {
    margin-top: 0;
    padding: 1.2rem 1.2rem 1.8rem;
  }
  .m-productRecommend-wrap .c-product-body__title-name {
    font-size: 1.5rem;
  }
  .m-productRecommend-wrap .c-product-body__price-subsc-icon {
    font-size: 1.3rem;
    padding: 0;
  }
  .m-productRecommend-wrap .c-product-body__price-subsc-icon::after {
    content: '：';
    display: inline;
  }
  .m-productRecommend-wrap .c-product-body__price,
  .m-productRecommend-wrap .c-product-body__price-subsc-price {
    font-size: 2rem;
  }
  .m-productRecommend-wrap .c-product-body__price-tax {
    font-size: 1.1rem;
  }
  .s-headerModalBox.active {
    padding-top: 0;
  }
  .jk-header-wrap__container[data-state-sticky="active"][data-scroll-direction="down"] .s-headerModalBox.active {
    transition: translate var(--transition-default);
    translate: 0 var(--header-height);
  }
  .s-headerModalBox__outer {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
  }
}

@media screen and (max-width: 991px) {
  .jk-header-wrap__logo {
    width: 17.2rem;
  }
  .jk-header .s-header-utilityList__icon {
    row-gap: 0.3rem;
  }
  .jk-header .s-header-utilityList__icon > img {
    width: 2.4rem;
  }
  .jk-header__main-wrapper {
    padding-block: 0.6rem;
  }
  .s-header-navBlok__openBtn {
    translate: 0 -0.65rem;
  }
  .s-header-navBlok__openBtn .jk-header-utilityList__text {
    position: absolute;
    bottom: -1.2rem;
  }
}