@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
html {
  font-size: 62.5%;
  overflow-y: scroll;
}

body {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.4rem;
  width: 100%;
  font-weight: 400;
  cursor: default;
}
@media (min-width: 897px) {
  body {
    min-width: 1280px;
  }
}

img {
  height: auto;
  vertical-align: bottom;
}

a {
  color: inherit;
  transition: 0.2s;
  text-decoration: none;
}

a:hover,
a:active {
  color: #e6ad37;
}

.l-footer {
  border-top: 1px solid #f7f7f7;
}
.l-footer__inner {
  margin: auto;
  padding: 49px 47px 37px;
}
@media (min-width: 897px) {
  .l-footer__inner {
    width: 1280px;
    padding: 102.5px 20px 76px;
  }
}

@media (min-width: 897px) {
  .footer-logo,
  .footer-sns,
  .footer-copyright {
    float: left;
    width: 300px;
  }
}

@media (min-width: 897px) {
  .footer-links {
    float: right;
    width: calc(100% - 300px);
  }
}

.footer-logo {
  margin-bottom: 40px;
}
.footer-logo > img {
  width: 120px;
}
@media (min-width: 897px) {
  .footer-logo {
    margin-bottom: 28px;
  }
  .footer-logo > img {
    width: 140px;
  }
}

.footer-links {
  margin-bottom: 20px;
  column-count: 2;
}
.footer-links__col {
  break-inside: avoid;
}
@media (min-width: 897px) {
  .footer-links {
    display: flex;
  }
  .footer-links__col {
    flex: 1;
  }
  .footer-links__col:has(.--pc-col2) {
    flex: 2;
  }
  .footer-links__col.--pc-last {
    order: 99;
  }
}

.footer-sub-links > .footer-links-item {
  margin-bottom: 15px;
}
.footer-sub-links > .footer-links-item::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 1px;
  background: #dddddd;
  vertical-align: middle;
  margin-right: 5px;
}
@media (min-width: 897px) {
  .footer-sub-links.--pc-col2 {
    column-count: 2;
  }
  .footer-sub-links > .footer-links-item {
    margin-bottom: 6px;
  }
}

.footer-links-item {
  display: block;
  font-size: 11px;
  line-height: 1.5;
  margin-bottom: 20px;
  letter-spacing: 0.15em;
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 300;
}
.footer-links-item.\--sub-title {
  margin-bottom: 12px;
  color: #808080;
}
@media (min-width: 897px) {
  .footer-links-item {
    font-size: 12px;
    margin-bottom: 12px;
  }
  .footer-links-item.\--sub-title {
    margin-bottom: 6px;
  }
}

.footer-sns {
  display: flex;
  margin-bottom: 15px;
}

.footer-sns-item {
  width: 17px;
  height: 17px;
  margin-right: 16px;
  text-align: center;
}
.footer-sns-item svg path {
  fill: currentColor;
}

.footer-copyright {
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 300;
}
@media (min-width: 897px) {
  .footer-copyright {
    font-size: 12px;
  }
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.7);
  z-index: 98;
}
.l-header__inner {
  margin: auto;
  padding: 20px 26px;
  position: relative;
}
@media (min-width: 897px) {
  .l-header {
    position: absolute;
    background: #fff;
  }
  .l-header__inner {
    min-width: 1280px;
    padding: 50px 0 11px;
  }
}
.l-header.\--reverse {
  color: #fff;
  background: transparent;
}
.l-header.\--no-alpha-bg {
  background: #fff;
}
.l-header.\--bg-gray {
  background: #f7f7f7;
}

.header-logo {
  font-size: 0;
  position: relative;
  height: 19.31px;
  transform: translateY(-5px);
}
.header-logo__img {
  width: 110px;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.header-logo__img.\--normal {
  opacity: 1;
}
.header-logo__img.\--reverse {
  opacity: 0;
}
@media (min-width: 897px) {
  .header-logo {
    height: 25.9px;
    margin-bottom: 14px;
    transform: translateY(-8px);
  }
  .header-logo__img {
    width: 147.5px;
    right: 0;
    margin: auto;
  }
}

.l-header.\--reverse .header-logo__img.\--normal {
  opacity: 0;
}
.l-header.\--reverse .header-logo__img.\--reverse {
  opacity: 1;
}

.header-burger-menu-icon {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 30px;
  right: 26px;
  transform: translateY(-50%);
  z-index: 100;
  cursor: pointer;
}
.header-burger-menu-icon::before, .header-burger-menu-icon::after {
  width: 100%;
  height: 1px;
  content: "";
  background: currentColor;
  position: absolute;
  top: 50%;
  left: 0;
  transition: 0.5s;
}
.header-burger-menu-icon::before {
  transform: translateY(-5px);
}
.header-burger-menu-icon::after {
  transform: translateY(5px);
}
.header-burger-menu-icon:hover {
  color: #e6ad37;
}
@media (min-width: 897px) {
  .header-burger-menu-icon {
    width: 30px;
    top: 36px;
    right: 40px;
    transform: rotateY(0);
  }
}

.header-burger-menu {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  background: #000;
  transition: transform 0.5s;
  transform: translateX(-100%);
  color: #333;
  background: #fff;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.header-burger-menu__inner {
  margin-left: 50px;
  width: calc(100% - 50px);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.header-burger-menu__section {
  padding-top: 77.5px;
  border-left: 1px solid #ebebeb;
}
.header-burger-menu__section.\--second {
  padding-top: 0;
  flex-grow: 1;
}
.header-burger-menu .header-sns {
  display: block;
  position: relative;
  top: 0;
  right: 0;
  margin-left: 10.5px;
  margin-top: 65px;
}
@media (min-width: 897px) {
  .header-burger-menu__inner {
    margin: auto;
    padding: 0 20px;
    flex-direction: row;
    justify-content: center;
  }
  .header-burger-menu__section {
    padding-top: 200px;
    width: 337px;
  }
  .header-burger-menu__section.\--second {
    padding-top: 200px;
    flex-grow: 0;
  }
}

.header-burger-menu-wrap.\--is-opened .header-burger-menu {
  transform: translateX(0);
}
.header-burger-menu-wrap.\--is-opened .header-burger-menu-icon.\--is-handler {
  color: #333;
  position: fixed;
}
.header-burger-menu-wrap.\--is-opened .header-burger-menu-icon.\--is-handler::before, .header-burger-menu-wrap.\--is-opened .header-burger-menu-icon.\--is-handler::after {
  transform: translateY(0);
}
.header-burger-menu-wrap.\--is-opened .header-burger-menu-icon.\--is-handler:hover {
  color: #e6ad37;
}

.header-burger-menu-item {
  list-style: none;
  font-size: 14px;
  line-height: 1.75;
  letter-spacing: 0.15em;
  padding-top: 11.5px;
  padding-bottom: 11.5px;
  padding-left: 25.5px;
  border-left: 1px solid transparent;
  transform: translateX(-1px);
}
.header-burger-menu-item__sub-label {
  display: inline-block;
  position: relative;
  padding-right: 24.5px;
  cursor: pointer;
}
.header-burger-menu-item__sub-label::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 1px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: currentColor;
}
.header-burger-menu-item__sub-label::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 11px;
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  background: currentColor;
  transition: background-color 0.5s;
}
.header-burger-menu-item.\--is-opened {
  border-left-color: #e6ad37;
}
.header-burger-menu-item.\--is-opened .header-burger-menu-item__sub-label::after {
  background-color: transparent;
}
.header-burger-menu-item .header-burger-menu-item-list {
  display: none;
}
.header-burger-menu-item .header-burger-menu-item {
  color: #808080;
  font-size: 12px;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 13.5px;
  padding-left: 0;
}
.header-burger-menu-item .header-burger-menu-item__flex-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.header-burger-menu-item .header-burger-menu-item__img {
  flex-shrink: 0;
  flex-grow: 0;
  width: 30px;
  height: auto;
  border: 1px solid #bababa;
}
@media (min-width: 897px) {
  .header-burger-menu-item {
    padding-left: 39px;
    font-size: 18px;
    padding-top: 21.5px;
    padding-bottom: 21.5px;
  }
  .header-burger-menu-item__sub-label {
    display: inline-block;
    position: relative;
    padding-right: 39.5px;
    cursor: pointer;
    transition: color 0.3s;
  }
  .header-burger-menu-item__sub-label:hover {
    color: #e6ad37;
  }
  .header-burger-menu-item__sub-label::before {
    width: 17.5px;
  }
  .header-burger-menu-item__sub-label::after {
    height: 17.5px;
    right: 8px;
  }
  .header-burger-menu-item .header-burger-menu-item {
    color: #808080;
    font-size: 16px;
    margin-top: 20px;
  }
}

.header-global-menu {
  display: none;
}
@media (min-width: 897px) {
  .header-global-menu {
    display: flex;
    width: 100%;
    justify-content: center;
  }
}

.header-global-menu-item {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 300;
  font-size: 12px;
  line-height: 1.75;
  letter-spacing: 0.15em;
}
.header-global-menu-item > * {
  display: block;
  padding: 1em 18px;
  cursor: pointer;
  transition: 0.3s;
}
.header-global-menu-item svg {
  width: 1.2em;
  height: 1.2em;
  vertical-align: sub;
  margin: 0 0.5em;
}
.header-global-menu-item svg .st0 {
  fill: currentColor;
}
.header-global-menu-item__sub {
  padding-right: 32px;
  position: relative;
}
.header-global-menu-item__sub::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  position: absolute;
  top: -4px;
  bottom: 0;
  right: 16px;
  margin: auto;
}
.header-global-menu-item:hover > *, .header-global-menu-item.\--is-active > * {
  color: #e6ad37;
}

.header-global-sub-menu-container {
  display: none;
  width: 100%;
}

.header-floating-global-menu-container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100px;
  z-index: 100;
  width: 100%;
  min-width: 1280px;
}
.header-floating-global-menu-container__inner {
  width: 100%;
  background: rgba(255, 255, 255, 0.7);
  position: relative;
}
.header-floating-global-menu-container .header-logo {
  position: absolute;
  top: 37.5px;
  left: 41px;
}
.header-floating-global-menu-container .header-logo__img {
  width: 147px;
}
.header-floating-global-menu-container .header-global-menu-wrap {
  padding: 30px 0;
}
.header-floating-global-menu-container .header-global-menu-item > * {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 40px;
}
.header-floating-global-menu-container .header-global-sub-menu .header-global-menu-item > * {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 40px;
}

.l-header.\--no-alpha-bg + .header-floating-global-menu-container {
  background: #fff;
}

.header-sns {
  display: none;
  overflow: hidden;
}
@media (min-width: 897px) {
  .header-sns {
    display: flex;
    position: absolute;
    top: 42px;
    right: 100px;
  }
}

.header-sns-item {
  width: 16px;
  height: 16px;
  margin-left: 16px;
  text-align: center;
  overflow: hidden;
}
.header-sns-item svg path {
  fill: currentColor;
}

.header-copyright {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.08em;
  margin-left: 24.5px;
  padding-bottom: 50px;
}

.header-switching-language {
  display: flex;
  position: absolute;
  top: 20px;
  right: 76px;
}
.header-switching-language .c-select__label {
  padding: 0.5em 2em;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.header-switching-language .c-select__label::after {
  display: none;
}
.header-switching-language .c-select__label img {
  flex-shrink: 0;
  flex-grow: 0;
  width: 30px;
  height: auto;
  border: 1px solid #bababa;
}
.header-switching-language .c-select__option {
  color: #333;
  display: flex;
  align-items: center;
  gap: 8px;
}
.header-switching-language .c-select__option img {
  flex-shrink: 0;
  flex-grow: 0;
  width: 20px;
  height: auto;
  border: 1px solid #bababa;
}
.header-switching-language__sp {
  font-size: 0;
}
.header-switching-language__sp-label img {
  width: 30px;
  height: auto;
  border: 1px solid #bababa;
}
@media (max-width: 896px) {
  .header-switching-language .c-select {
    display: none;
  }
}
@media (min-width: 897px) {
  .header-switching-language {
    top: 32px;
    right: 224px;
  }
  .header-switching-language__sp {
    display: none;
  }
}

.header-switching-language-modal__title {
  font-size: 16px;
  text-align: center;
  margin-bottom: 16px;
}
.header-switching-language-modal__lang-list {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
.header-switching-language-modal__lang {
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.header-switching-language-modal__lang img {
  flex-shrink: 0;
  flex-grow: 0;
  width: 30px;
  height: auto;
  border: 1px solid #bababa;
}
.header-switching-language-modal__close {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/icon-close.svg) center center no-repeat;
  background-size: 12px auto;
  opacity: 1;
  transition: opacity 0.3s;
  cursor: pointer;
}
.header-switching-language-modal__close:hover {
  opacity: 0.7;
}

.l-main {
  margin-top: 59.3px;
}
@media (min-width: 897px) {
  .l-main {
    margin-top: 146px;
  }
}
.l-main .c-main-visual {
  margin-top: -59.3px;
}
@media (min-width: 897px) {
  .l-main .c-main-visual {
    margin-top: -146px;
  }
}

.c-button {
  display: inline-block;
  font-size: 11px;
  line-height: 3.5;
  letter-spacing: 0.1em;
  text-align: center;
  background-color: #bababa;
  color: #fff;
  border-radius: 1.75em;
  padding: 0 0.5em;
  transition: 0.3s;
  cursor: pointer;
}
@media (min-width: 897px) {
  .c-button {
    font-size: 12px;
    line-height: 2.666;
    border-radius: 1.333em;
  }
}

a:hover .c-button,
.c-button:hover {
  background: #e6ad37;
}

.c-button-circle {
  display: inline-block;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  width: 100px;
  height: 100px;
}
.c-button-circle:hover {
  color: #333;
}
.c-button-circle__text {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 11px;
  line-height: 1.75;
  letter-spacing: 0.15em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
}
.c-button-circle__circle {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(-90deg);
  pointer-events: none;
}
.c-button-circle__hover, .c-button-circle__static {
  fill: transparent;
  stroke-width: 1;
  stroke-dashoffset: 0;
}
.c-button-circle__hover {
  stroke: #e6ad37;
}
.c-button-circle__static {
  stroke: #ebebeb;
}
@media (min-width: 897px) {
  .c-button-circle__text {
    font-size: 13px;
  }
  .c-button-circle__hover {
    transition: stroke-dashoffset 1s;
    -webkit-animation-play-state: running;
  }
  .c-button-circle:hover .c-button-circle__hover {
    stroke-dashoffset: 0 !important;
    -webkit-animation-play-state: paused;
  }
}
.c-button-circle__hover, .c-button-circle__static {
  stroke-dasharray: 314;
}
@media (min-width: 897px) {
  .c-button-circle {
    width: 120px;
    height: 120px;
  }
  .c-button-circle__hover, .c-button-circle__static {
    stroke-dasharray: 376.8;
  }
  .c-button-circle__hover {
    stroke-dashoffset: 329.7;
  }
}

.c-select {
  position: relative;
}
.c-select__label {
  display: block;
  font-size: 13px;
  line-height: 1.75;
  padding: 12px;
  padding-right: 20px;
  border-bottom: 1px solid #ebebeb;
  position: relative;
  cursor: pointer;
}
.c-select__label::after {
  content: "";
  width: 8.5px;
  height: 8.5px;
  border: 1px solid #e6ad37;
  border-left: 0;
  border-top: 0;
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%) rotate(45deg);
}
.c-select__select {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 1;
  cursor: pointer;
  font-size: 16px;
}
.c-select__option-wrap {
  display: none;
}
.c-select.\--is-disabled {
  color: #aaaaaa;
}
.c-select.\--is-disabled .c-select__label::after {
  border-color: #aaaaaa;
}
.c-select.\--is-disabled .c-select__select {
  cursor: default;
}
@media (min-width: 897px) {
  .c-select__label {
    font-size: 14px;
    letter-spacing: 0.1em;
    padding: 28px 16px;
    padding-right: 20px;
    transition: 0.3s;
  }
  .c-select__label::after {
    width: 11.5px;
    height: 11.5px;
    right: 10px;
  }
  .c-select__label.\--is-active {
    border-color: #e6ad37;
  }
  .c-select__select {
    display: none;
  }
  .c-select__option-wrap {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
    background: #fff;
    width: 100%;
    height: 0;
    max-height: 257.5px;
    overflow-y: auto;
    overflow-x: hidden;
    opacity: 0;
    transition: opacity 0.3s;
    box-shadow: 0px 3px 5px #dddddd;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .c-select__option-wrap::-webkit-scrollbar {
    display: none;
  }
  .c-select__option {
    font-size: 13px;
    line-height: 1.5;
    padding: 16px 16px;
    border-bottom: 1px solid #F2F2F2;
    cursor: pointer;
  }
  .c-select__label.\--is-active + .c-select__option-wrap {
    height: auto;
    opacity: 1;
  }
}

.c-page-title {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 31px;
  line-height: 1.612;
  letter-spacing: 0.2em;
  text-align: center;
  padding: 35px 1em 55px;
}
.c-page-title.\--bg-gray {
  background: #f7f7f7;
}
@media (min-width: 897px) {
  .c-page-title {
    font-size: 42px;
    line-height: 1.75;
    padding-top: 70px;
    padding-bottom: 85px;
  }
}

.c-main-visual {
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.c-main-visual::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(51, 51, 51, 0.2);
  z-index: 0;
}
.c-main-visual__main {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.c-main-visual__brand-name {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 33px;
  line-height: 1.333;
  letter-spacing: 0.15em;
  color: #fff;
  text-align: center;
}
.c-main-visual__brand-category {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1.466;
  letter-spacing: 0.1em;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  margin-top: 17.5px;
}
.c-main-visual__brand-category > strong {
  font-weight: normal;
  text-decoration: underline;
  display: inline-block;
  margin: 0 0.2em;
}
.c-main-visual__salon-link {
  display: inline-block;
  font-size: 11px;
  line-height: 2.9;
  letter-spacing: 0.05em;
  color: #fff;
  border: 1px solid currentColor;
  border-radius: 1.45em;
  padding: 0 15px;
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-main-visual__about-title {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 31px;
  line-height: 1.338;
  letter-spacing: 0.2em;
  color: #fff;
  text-align: center;
  padding-top: 76px;
  background: url(../images/logo-mark.png) top center no-repeat;
  background-size: 66px auto;
}
.c-main-visual__about-sub-title {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1.75;
  letter-spacing: 0.1em;
  color: #fff;
  text-align: center;
  white-space: nowrap;
}
.c-main-visual__scroll {
  width: 20%;
  height: 106px;
  background: url(../images/icon-arrow-down.png) center center no-repeat;
  background-size: 20px auto;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  cursor: pointer;
  transition: 0.5s;
}
.c-main-visual__scroll:hover {
  background-position-y: 80%;
}
.c-main-visual.\--bestool-herb {
  background-image: url(../images/brand/bestool-herb/main-visual@sp.jpg);
}
.c-main-visual.\--cheveux-belle {
  background-image: url(../images/brand/cheveux-belle/main-visual@sp.jpg);
}
.c-main-visual.\--cocuu {
  background-image: url(../images/brand/cocuu/main-visual@sp.jpg);
}
.c-main-visual.\--doux-curl {
  background-image: url(../images/brand/doux-curl/main-visual@sp.jpg);
}
.c-main-visual.\--forpris {
  background-image: url(../images/brand/forpris/main-visual@sp.jpg);
}
.c-main-visual.\--forpris-base-make {
  background-image: url(../images/brand/forpris-base-make/main-visual@sp.jpg);
}
.c-main-visual.\--grigio-hair-color {
  background-image: url(../images/brand/grigio-hair-color/main-visual@sp.jpg);
}
.c-main-visual.\--grigio-teint-play {
  background-image: url(../images/brand/grigio-teint-play/main-visual@sp.jpg);
}
.c-main-visual.\--hunt {
  background-image: url(../images/brand/hunt/main-visual@sp.jpg);
}
.c-main-visual.\--k-fix {
  background-image: url(../images/brand/k-fix/main-visual@sp.jpg);
}
.c-main-visual.\--line-couture {
  background-image: url(../images/brand/line-couture/main-visual@sp.jpg);
}
.c-main-visual.\--natsunoka {
  background-image: url(../images/brand/natsunoka/main-visual@sp.jpg?20210329);
}
.c-main-visual.\--reotto {
  background-image: url(../images/brand/reotto/main-visual@sp.jpg);
}
.c-main-visual.\--san-moni {
  background-image: url(../images/brand/san-moni/main-visual@sp.jpg);
}
.c-main-visual.\--toretoman {
  background-image: url(../images/brand/toretoman/main-visual@sp.jpg);
}
.c-main-visual.\--wave-labo-sp {
  background-image: url(../images/brand/wave-labo-sp/main-visual@sp.jpg);
  background-position: top right;
}
.c-main-visual.\--tlc {
  background-image: url(../images/brand/tlc/main-visual@sp.jpg);
}
.c-main-visual.\--sono {
  background-image: url(../images/brand/sono/main-visual@sp.jpg);
}
.c-main-visual.\--mowari {
  background-image: url(../images/brand/mowari/main-visual@sp.jpg);
}
.c-main-visual.\--mowari::before {
  background: rgba(51, 51, 51, 0.1);
}
.c-main-visual.\--about {
  background-image: url(../images/about/main-visual@sp.jpg);
}
@media (min-width: 897px) {
  .c-main-visual {
    height: 100vh;
  }
  .c-main-visual__inner {
    min-width: 1280px;
    height: 100%;
    margin: auto;
    position: relative;
  }
  .c-main-visual__main {
    top: 55%;
    transform: translate(-50%, -50%);
  }
  .c-main-visual__brand-name {
    font-size: 42px;
  }
  .c-main-visual__brand-category {
    font-size: 14px;
    line-height: 1.357;
    margin-top: 23px;
  }
  .c-main-visual__salon-link {
    font-size: 13px;
    line-height: 3.076;
    border-radius: 1.538em;
    padding: 0 20px;
    top: auto;
    bottom: 20px;
    left: auto;
    right: 20px;
    transform: translate(0, 0);
  }
  .c-main-visual__about-title {
    font-size: 42px;
    line-height: 1.333;
    padding-top: 182px;
    background-size: 156px auto;
  }
  .c-main-visual__about-sub-title {
    font-size: 14px;
    line-height: 1.71;
    letter-spacing: 0.2em;
  }
  .c-main-visual__scroll {
    height: 160px;
    background-size: 16px auto;
  }
  .c-main-visual.\--bestool-herb {
    background-image: url(../images/brand/bestool-herb/main-visual.jpg);
  }
  .c-main-visual.\--cheveux-belle {
    background-image: url(../images/brand/cheveux-belle/main-visual.jpg);
  }
  .c-main-visual.\--cocuu {
    background-image: url(../images/brand/cocuu/main-visual.jpg);
  }
  .c-main-visual.\--doux-curl {
    background-image: url(../images/brand/doux-curl/main-visual.jpg);
  }
  .c-main-visual.\--forpris {
    background-image: url(../images/brand/forpris/main-visual.jpg);
  }
  .c-main-visual.\--forpris-base-make {
    background-image: url(../images/brand/forpris-base-make/main-visual.jpg);
  }
  .c-main-visual.\--grigio-hair-color {
    background-image: url(../images/brand/grigio-hair-color/main-visual.jpg);
  }
  .c-main-visual.\--grigio-teint-play {
    background-image: url(../images/brand/grigio-teint-play/main-visual.jpg);
  }
  .c-main-visual.\--hunt {
    background-image: url(../images/brand/hunt/main-visual.jpg);
  }
  .c-main-visual.\--k-fix {
    background-image: url(../images/brand/k-fix/main-visual.jpg);
  }
  .c-main-visual.\--k-fix::before {
    background: rgba(51, 51, 51, 0.3);
  }
  .c-main-visual.\--line-couture {
    background-image: url(../images/brand/line-couture/main-visual.jpg);
  }
  .c-main-visual.\--natsunoka {
    background-image: url(../images/brand/natsunoka/main-visual.jpg?20210329);
  }
  .c-main-visual.\--reotto {
    background-image: url(../images/brand/reotto/main-visual.jpg);
  }
  .c-main-visual.\--san-moni {
    background-image: url(../images/brand/san-moni/main-visual.jpg);
  }
  .c-main-visual.\--toretoman {
    background-image: url(../images/brand/toretoman/main-visual.jpg);
  }
  .c-main-visual.\--wave-labo-sp {
    background-image: url(../images/brand/wave-labo-sp/main-visual.jpg);
  }
  .c-main-visual.\--tlc {
    background-image: url(../images/brand/tlc/main-visual.jpg);
  }
  .c-main-visual.\--mowari {
    background-image: url(../images/brand/mowari/main-visual.jpg);
  }
  .c-main-visual.\--sono {
    background-image: url(../images/brand/sono/main-visual.jpg?20240822);
  }
  .c-main-visual.\--about {
    background-image: url(../images/about/main-visual.jpg);
  }
}
@media only screen and (min-width: 897px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 897px) and (-o-min-device-pixel-ratio: 2/1), only screen and (min-width: 897px) and (min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min-resolution: 192dpi), only screen and (min-width: 897px) and (min-resolution: 2dppx) {
  .c-main-visual.\--bestool-herb {
    background-image: url(../images/brand/bestool-herb/main-visual@2x.jpg);
  }
  .c-main-visual.\--cheveux-belle {
    background-image: url(../images/brand/cheveux-belle/main-visual@2x.jpg);
  }
  .c-main-visual.\--cocuu {
    background-image: url(../images/brand/cocuu/main-visual@2x.jpg);
  }
  .c-main-visual.\--doux-curl {
    background-image: url(../images/brand/doux-curl/main-visual@2x.jpg);
  }
  .c-main-visual.\--forpris {
    background-image: url(../images/brand/forpris/main-visual@2x.jpg);
  }
  .c-main-visual.\--forpris-base-make {
    background-image: url(../images/brand/forpris-base-make/main-visual@2x.jpg);
  }
  .c-main-visual.\--grigio-hair-color {
    background-image: url(../images/brand/grigio-hair-color/main-visual@2x.jpg);
  }
  .c-main-visual.\--grigio-teint-play {
    background-image: url(../images/brand/grigio-teint-play/main-visual@2x.jpg);
  }
  .c-main-visual.\--hunt {
    background-image: url(../images/brand/hunt/main-visual@2x.jpg);
  }
  .c-main-visual.\--k-fix {
    background-image: url(../images/brand/k-fix/main-visual@2x.jpg);
  }
  .c-main-visual.\--line-couture {
    background-image: url(../images/brand/line-couture/main-visual@2x.jpg);
  }
  .c-main-visual.\--natsunoka {
    background-image: url(../images/brand/natsunoka/main-visual@2x.jpg?20210329);
  }
  .c-main-visual.\--reotto {
    background-image: url(../images/brand/reotto/main-visual@2x.jpg);
  }
  .c-main-visual.\--san-moni {
    background-image: url(../images/brand/san-moni/main-visual@2x.jpg);
  }
  .c-main-visual.\--toretoman {
    background-image: url(../images/brand/toretoman/main-visual@2x.jpg);
  }
  .c-main-visual.\--wave-labo-sp {
    background-image: url(../images/brand/wave-labo-sp/main-visual@2x.jpg);
  }
  .c-main-visual.\--tlc {
    background-image: url(../images/brand/tlc/main-visual@2x.jpg);
  }
  .c-main-visual.\--mowari {
    background-image: url(../images/brand/mowari/main-visual@2x.jpg);
  }
  .c-main-visual.\--sono {
    background-image: url(../images/brand/sono/main-visual@2x.jpg?20240822);
  }
  .c-main-visual.\--about {
    background-image: url(../images/about/main-visual@2x.jpg);
  }
}

.c-product-box {
  background-color: #fafafa;
  margin-bottom: 32.7px;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}
.c-product-box:hover .c-product-box__img img {
  transform: scale(1.1);
}
.c-product-box:hover .c-button {
  background: #e6ad37;
}
.c-product-box > a {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-product-box > a:hover {
  color: inherit;
}
.c-product-box__img {
  width: 100%;
  position: relative;
  margin-bottom: 7.5px;
  overflow: hidden;
}
.c-product-box__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.c-product-box__img picture {
  opacity: 0;
  transition: 1s;
}
.c-product-box__img picture.\--is-active {
  opacity: 1;
}
.c-product-box__img img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  transition: 0.3s;
}
.c-product-box__img .c-carousel-navigation {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
}
.c-product-box__name-brand {
  margin-bottom: 16.5px;
  padding: 0 11px;
}
.c-product-box__brand, .c-product-box__name {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.23;
  letter-spacing: 0.1em;
}
.c-product-box__volume-price-more {
  padding: 0 11px 11px;
  margin-top: auto;
}
.c-product-box__volume-price {
  margin-bottom: 11.5px;
}
.c-product-box__volume, .c-product-box__price {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 11px;
  line-height: 1.363;
  letter-spacing: 0.05em;
}
.c-product-box__more {
  width: 100%;
}
@media (min-width: 897px) {
  .c-product-box {
    margin-bottom: 39px;
  }
  .c-product-box__img {
    margin-bottom: 19.5px;
  }
  .c-product-box__name-brand {
    margin-bottom: 20px;
    padding: 0 14.5px;
  }
  .c-product-box__brand, .c-product-box__name {
    font-size: 15px;
    line-height: 1.466;
  }
  .c-product-box__volume-price-more {
    padding: 0 14.5px 12.5px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .c-product-box__volume-price {
    margin-bottom: 0;
    flex-grow: 1;
  }
  .c-product-box__volume, .c-product-box__price {
    font-size: 12px;
    line-height: 1.5;
  }
  .c-product-box__more {
    flex-grow: 0;
    flex-shrink: 0;
    width: 68px;
    margin-left: auto;
  }
}

.c-product-box-list {
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-wrap: wrap;
}
.c-product-box-list .c-product-box {
  width: calc((100% - 10px) / 2);
}
.c-product-box-list .c-product-box:nth-of-type(2n) {
  margin-left: 10px;
}
@media (min-width: 481px) and (max-width: 896px) {
  .c-product-box-list .c-product-box {
    width: calc((100% - 20px) / 3);
  }
  .c-product-box-list .c-product-box:nth-of-type(2n) {
    margin-left: 0;
  }
  .c-product-box-list .c-product-box:nth-of-type(3n+2), .c-product-box-list .c-product-box:nth-of-type(3n) {
    margin-left: 10px;
  }
}
@media (min-width: 897px) {
  .c-product-box-list {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-product-box-list .c-product-box {
    width: calc((100% - 120px) / 4);
  }
  .c-product-box-list .c-product-box:nth-of-type(2n) {
    margin-left: 0;
  }
  .c-product-box-list .c-product-box:not(:nth-of-type(4n+1)) {
    margin-left: 40px;
  }
}

.c-carousel {
  position: relative;
}
.c-carousel__navigation {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  color: #bababa;
  padding: 4px 8px;
}
.c-carousel__navigation-item {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin: 4px 0;
  border: 1px solid currentColor;
  background: transparent;
  transition: background-color 0.3s;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__navigation-item:hover {
  opacity: 0.7;
}
.c-carousel__navigation-item.\--is-active {
  color: #e6ad37;
  background: currentColor;
}
.c-news-box {
  width: 100%;
  padding: 15px;
  border-bottom: 1px solid #ebebeb;
  display: flex;
  flex-wrap: wrap;
}
.c-news-box__date {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 10px;
  line-height: 1.75;
  letter-spacing: 0.08em;
  color: #aaaaaa;
  margin-right: 17px;
}
.c-news-box__category {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 10px;
  line-height: 1.75;
  letter-spacing: 0.1em;
  text-decoration: underline;
  color: #aaaaaa;
}
.c-news-box__title {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.727;
  letter-spacing: 0.05em;
  margin-top: 4.5px;
  width: 100%;
}
@media (min-width: 897px) {
  .c-news-box {
    padding: 20px 14.5px;
    flex-wrap: nowrap;
    transition: background-color 0.3s;
  }
  .c-news-box:hover {
    background: #fefcf8;
  }
  .c-news-box__date {
    font-size: 12px;
    margin-right: 0;
    width: 114px;
    flex-grow: 0;
    flex-shrink: 0;
    margin-top: 2px;
  }
  .c-news-box__category {
    font-size: 12px;
    text-decoration: none;
    width: 129px;
    flex-grow: 0;
    flex-shrink: 0;
    margin-top: 2px;
  }
  .c-news-box__title {
    font-size: 14px;
    line-height: 1.75;
    width: auto;
    flex-grow: 1;
    margin-top: 0;
    color: #333;
  }
}

.c-news-box-list {
  padding: 0 20px;
  margin-bottom: 60px;
}
@media (min-width: 897px) {
  .c-news-box-list {
    width: 1000px;
    padding: 0;
    margin: auto;
    margin-bottom: 60px;
  }
}

.c-brand-box {
  color: #333;
}
.c-brand-box__img {
  position: relative;
}
.c-brand-box__img::before {
  content: "";
  display: block;
  padding-top: 76.25%;
}
.c-brand-box__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.c-brand-box__brand-category {
  padding: 0 10px;
  margin-top: 20px;
  margin-bottom: 18px;
}
.c-brand-box__brand {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 19px;
  line-height: 1.052;
  letter-spacing: 0.1em;
  margin-bottom: 2px;
}
.c-brand-box__brand-sub-name {
  display: block;
  font-size: 13px;
  margin-top: 3px;
}
.c-brand-box__category {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 10px;
  line-height: 1.35;
  letter-spacing: 0.15em;
  color: #aaaaaa;
}
.c-brand-box__category > strong {
  font-weight: inherit;
  text-decoration: underline;
  margin-right: 0.5em;
}
.c-brand-box__category > strong:nth-of-type(n+2) {
  margin-left: 0.5em;
}
.c-brand-box__brand-kana, .c-brand-box__description {
  padding: 0 10px;
  font-size: 11px;
  line-height: 1.72;
  letter-spacing: 0.05em;
}
@media (min-width: 897px) {
  .c-brand-box__img-brand {
    position: relative;
    margin-bottom: 16px;
  }
  .c-brand-box__img-brand::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 76.5027322404%;
  }
  .c-brand-box__img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.5s;
    width: calc(100% - 26px);
    height: calc(100% - 20px);
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  @supports (-ms-ime-align: auto) {
    .c-brand-box__img {
      width: 340px;
      height: 260px;
    }
  }
}
@media screen and (min-width: 897px) and (-ms-high-contrast: active), screen and (min-width: 897px) and (-ms-high-contrast: none) {
  .c-brand-box__img {
    width: 340px;
    height: 260px;
  }
}
@media (min-width: 897px) {
  .c-brand-box__img::before {
    position: relative;
    z-index: 1;
    transition: 0.5s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  @supports (-ms-ime-align: auto) {
    .c-brand-box__img::before {
      padding-top: 76.25%;
    }
  }
}
@media screen and (min-width: 897px) and (-ms-high-contrast: active), screen and (min-width: 897px) and (-ms-high-contrast: none) {
  .c-brand-box__img::before {
    padding-top: 76.25%;
  }
}
@media (min-width: 897px) {
  .c-brand-box__img::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: 69.0625%;
    background: linear-gradient(to bottom, transparent 40%, rgba(51, 51, 51, 0.63));
    opacity: 0.5;
  }
  .c-brand-box__img img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -100%;
    right: -100%;
    margin: auto;
    transition: 0.5s;
    width: calc(100% + 26px);
    height: calc(100% + 20px);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  @supports (-ms-ime-align: auto) {
    .c-brand-box__img img {
      width: 366px;
      height: 280px;
    }
  }
}
@media screen and (min-width: 897px) and (-ms-high-contrast: active), screen and (min-width: 897px) and (-ms-high-contrast: none) {
  .c-brand-box__img img {
    width: 366px;
    height: 280px;
  }
}
@media (min-width: 897px) {
  .c-brand-box__brand-category {
    padding: 0 34px;
    margin-bottom: 29px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
  }
  .c-brand-box__brand {
    font-size: 26px;
    line-height: 1.057;
    margin-bottom: 5px;
    color: #fff;
  }
  .c-brand-box__brand-sub-name {
    display: inline-block;
    margin-left: 0.5em;
    font-size: 14px;
  }
  .c-brand-box__category {
    font-size: 13px;
    line-height: 1.307;
    color: #fff;
  }
  .c-brand-box__brand-kana, .c-brand-box__description {
    padding: 0 27px;
    font-size: 13px;
    line-height: 1.769;
  }
  .c-brand-box:hover .c-brand-box__img {
    width: 100%;
    height: 100%;
  }
  .c-brand-box:hover .c-brand-box__img::before {
    padding-top: calc(76.25% + 1px);
  }
  @supports (-ms-ime-align: auto) {
    .c-brand-box:hover .c-brand-box__img::before {
      padding-top: 77%;
    }
  }
}
@media screen and (min-width: 897px) and (-ms-high-contrast: active), screen and (min-width: 897px) and (-ms-high-contrast: none) {
  .c-brand-box:hover .c-brand-box__img::before {
    padding-top: 77%;
  }
}
@media (min-width: 897px) {
  .c-brand-box:hover .c-brand-box__img img {
    width: 100%;
    height: 100%;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    filter: grayscale(100%);
  }
}

.c-brand-box-list {
  display: flex;
  flex-wrap: wrap;
}
.c-brand-box-list > * {
  width: 50%;
  margin-bottom: 22px;
}
.c-brand-box-list > *:nth-of-type(odd) .c-brand-box__brand-category,
.c-brand-box-list > *:nth-of-type(odd) .c-brand-box__brand-kana,
.c-brand-box-list > *:nth-of-type(odd) .c-brand-box__description {
  padding-left: 20px;
}
.c-brand-box-list > *:nth-of-type(even) .c-brand-box__brand-category,
.c-brand-box-list > *:nth-of-type(even) .c-brand-box__brand-kana,
.c-brand-box-list > *:nth-of-type(even) .c-brand-box__description {
  padding-right: 20px;
}
@media (min-width: 481px) and (max-width: 896px) {
  .c-brand-box-list > * {
    width: 33.3333333333%;
  }
  .c-brand-box-list > *:nth-of-type(odd) .c-brand-box__brand-category,
  .c-brand-box-list > *:nth-of-type(odd) .c-brand-box__brand-kana,
  .c-brand-box-list > *:nth-of-type(odd) .c-brand-box__description {
    padding-left: 10px;
  }
  .c-brand-box-list > *:nth-of-type(even) .c-brand-box__brand-category,
  .c-brand-box-list > *:nth-of-type(even) .c-brand-box__brand-kana,
  .c-brand-box-list > *:nth-of-type(even) .c-brand-box__description {
    padding-right: 10px;
  }
  .c-brand-box-list > *:nth-of-type(3n+1) .c-brand-box__brand-category,
  .c-brand-box-list > *:nth-of-type(3n+1) .c-brand-box__brand-kana,
  .c-brand-box-list > *:nth-of-type(3n+1) .c-brand-box__description {
    padding-left: 20px;
  }
  .c-brand-box-list > *:nth-of-type(3n) .c-brand-box__brand-category,
  .c-brand-box-list > *:nth-of-type(3n) .c-brand-box__brand-kana,
  .c-brand-box-list > *:nth-of-type(3n) .c-brand-box__description {
    padding-right: 20px;
  }
}
@media (min-width: 897px) {
  .c-brand-box-list {
    width: 1280px;
    padding-left: 91px;
    padding-right: 91px;
    margin: auto;
  }
}
@media (min-width: 897px) and (min-width: 1464px) {
  .c-brand-box-list {
    width: 1464px;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 897px) {
  .c-brand-box-list > * {
    width: 366px;
    margin-bottom: 68px;
  }
  .c-brand-box-list > *:nth-of-type(odd) .c-brand-box__brand-category, .c-brand-box-list > *:nth-of-type(even) .c-brand-box__brand-category {
    padding-left: 29px;
    padding-right: 29px;
  }
  .c-brand-box-list > *:nth-of-type(odd) .c-brand-box__brand-kana,
  .c-brand-box-list > *:nth-of-type(odd) .c-brand-box__description, .c-brand-box-list > *:nth-of-type(even) .c-brand-box__brand-kana,
  .c-brand-box-list > *:nth-of-type(even) .c-brand-box__description {
    padding-left: 27px;
    padding-right: 27px;
  }
}
@media (min-width: 897px) {
  .c-brand-box-list.\--top {
    width: 1280px;
    justify-content: space-around;
  }
  .c-brand-box-list.\--top > * {
    margin-bottom: 55px;
  }
  .c-brand-box-list.\--top > *:nth-of-type(3n+2) {
    transform: translateY(50px);
  }
  .c-brand-box-list.\--top > *:nth-of-type(3n) {
    transform: translateY(-30px);
  }
}
@media (min-width: 897px) {
  .c-brand-box-list.\--top.\--4items {
    padding-inline: 180px;
  }
  .c-brand-box-list.\--top.\--4items > *:nth-of-type(3n+2) {
    transform: none;
  }
  .c-brand-box-list.\--top.\--4items > *:nth-of-type(3n) {
    transform: none;
  }
  .c-brand-box-list.\--top.\--4items > *:nth-of-type(2n) {
    transform: translateY(50px);
  }
}

html {
  overflow-y: scroll !important;
}

body {
  padding-right: 0 !important;
}

.c-video-modal {
  width: calc(100% - 10px);
  padding: 0;
}
.c-video-modal__video {
  position: relative;
}
.c-video-modal__video::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.c-video-modal__video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-video-modal__close {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/icon-close.svg) center center no-repeat;
  background-size: 12px auto;
  opacity: 1;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-video-modal__close:hover {
  opacity: 0.7;
}
@media only screen and (min-width: 641px) {
  .c-video-modal {
    width: calc(100% - 10px);
    max-width: calc(100% - 10px);
    padding: 0;
  }
}
@media (min-width: 897px) {
  .c-video-modal {
    width: calc(100% - 60px);
    max-width: 1000px;
    padding: 0;
  }
}

.c-category-icon {
  position: relative;
}
.c-category-icon::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
  border-radius: 50%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-color: #fcf8f2;
  margin-bottom: 9px;
}
.c-category-icon > span {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 1.75;
  letter-spacing: 0.06em;
  text-align: center;
  display: block;
  text-align: center;
}
@media (min-width: 897px) {
  .c-category-icon::before {
    background-color: transparent;
    transition: 0.3s;
    width: 110px;
    height: 110px;
    padding-top: 0;
    margin: 0 auto 20px;
  }
  .c-category-icon > span {
    font-size: 14px;
    padding: 8px 0;
    border-radius: 20px;
    background: #f7f7f7;
    transition: 0.3s;
  }
  .c-category-icon:hover::before {
    background-color: #fcf8f2;
  }
  .c-category-icon:hover > span {
    background-color: #e6ad37;
    color: #fff;
  }
}
.c-category-icon.\--haircare::before {
  background-image: url(../images/icon-haircare.svg);
}
.c-category-icon.\--styling::before {
  background-image: url(../images/icon-styling.svg);
}
.c-category-icon.\--color::before {
  background-image: url(../images/icon-color.svg);
}
.c-category-icon.\--perm_curl::before {
  background-image: url(../images/icon-perm-curl.svg);
}
.c-category-icon.\--cosmetics::before {
  background-image: url(../images/icon-cosmetics.svg);
}

.c-category-icon-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 15px;
  max-width: 340px;
  margin: auto;
}
.c-category-icon-list > * {
  width: 80px;
  margin: 0 calc((100% - 240px) / 6) 36px;
}
@media (min-width: 481px) and (max-width: 896px) {
  .c-category-icon-list {
    max-width: 600px;
  }
  .c-category-icon-list > * {
    margin: 0 calc((100% - 400px) / 10);
  }
}
@media (min-width: 897px) {
  .c-category-icon-list {
    max-width: none;
  }
  .c-category-icon-list > * {
    width: 140px;
    margin: 0 31.5px;
  }
}

.c-category-select {
  margin: 8px 30px 34px;
}

.c-category-list {
  font-size: 14px;
  line-height: 3.5;
  letter-spacing: 0.06em;
}
.c-category-list__select {
  display: block;
  width: calc(100% - 32px);
  margin-left: auto;
  margin-right: auto;
}
.c-category-list__item {
  list-style: none;
}
@media (min-width: 897px) {
  .c-category-list {
    margin-left: auto;
    margin-right: auto;
    width: 1000px;
    font-size: 14px;
    line-height: 1.75;
    letter-spacing: 0.06em;
    display: flex;
    justify-content: space-between;
  }
  .c-category-list__item {
    width: 200px;
    height: 77.8px;
    line-height: 77.8px;
    text-align: center;
  }
  .c-category-list__item a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .c-category-list__item.--current {
    border-top: 1px solid #e6ad37;
    color: #e6ad37;
  }
}

html {
  overflow-y: scroll !important;
}

body {
  padding-right: 0 !important;
}

.c-product-modal {
  width: calc(100% - 10px);
  padding: 0;
}
.c-product-modal__inner {
  display: flex;
  flex-direction: column;
}
.c-product-modal__img {
  background: #f7f7f7;
  padding: 15px;
}
.c-product-modal__img-inner {
  position: relative;
  width: 200px;
  height: 200px;
  margin: auto;
}
.c-product-modal__img-inner picture {
  opacity: 0;
  transition: 1s;
}
.c-product-modal__img-inner picture.\--is-active {
  opacity: 1;
}
.c-product-modal__img-inner img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
}
.c-product-modal__info {
  padding: 20px 25px;
  text-align: left;
}
.c-product-modal__brand {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.333;
  letter-spacing: 0.1em;
  margin-bottom: 5px;
}
.c-product-modal__name {
  font-size: 14px;
  line-height: 1.321;
  letter-spacing: 0.1em;
  margin-bottom: 3px;
}
.c-product-modal__category-list {
  font-size: 0;
}
.c-product-modal__category, .c-product-modal__category-separator {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 10px;
  line-height: 1.35;
  letter-spacing: 0.15em;
  color: #aaaaaa;
}
.c-product-modal__category {
  text-decoration: underline;
}
.c-product-modal__volume-price {
  margin: 15px 0;
}
.c-product-modal__volume-price > *:not(:first-child)::before {
  content: "／";
  display: inline;
}
.c-product-modal__volume {
  font-size: 11px;
  line-height: 1.727;
  letter-spacing: 0.01em;
}
.c-product-modal__volume strong {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 1.461;
}
.c-product-modal__price {
  font-size: 11px;
  line-height: 1.727;
  letter-spacing: 0.01em;
}
.c-product-modal__price strong {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 1.461;
}
.c-product-modal__details {
  font-size: 11px;
  line-height: 1.727;
  letter-spacing: 0.01em;
  margin: 18px 0;
}
.c-product-modal__tag-list {
  font-size: 0;
  margin: 18px 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.c-product-modal__tag {
  font-size: 10px;
  line-height: 2.4;
  letter-spacing: 0.05em;
  white-space: nowrap;
  color: #808080;
  border: 1px solid #aaaaaa;
  border-radius: 1.2em;
  padding: 0 1.7em;
}
.c-product-modal__description {
  border-top: 1px solid rgba(51, 51, 51, 0.08);
  margin: 20px 0 0;
  padding-top: 17.5px;
  font-size: 12px;
  line-height: 1.75;
  letter-spacing: 0;
}
.c-product-modal__close {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/icon-close.svg) center center no-repeat;
  background-size: 12px auto;
  opacity: 1;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-product-modal__close:hover {
  opacity: 0.7;
}
@media only screen and (min-width: 641px) {
  .c-product-modal {
    width: calc(100% - 10px);
    padding: 0;
  }
}
@media (min-width: 897px) {
  .c-product-modal {
    width: calc(100% - 60px);
    max-width: 1000px;
    padding: 0;
  }
  .c-product-modal__inner {
    flex-direction: row;
  }
  .c-product-modal__img {
    padding: 60px 20px;
    width: 540%;
    display: flex;
  }
  .c-product-modal__img-inner {
    width: 100%;
    padding-top: 100%;
  }
  .c-product-modal__info {
    width: 460%;
    padding: 96.5px 79.5px 86px;
    align-self: center;
  }
  .c-product-modal__brand {
    font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-size: 20px;
    margin-bottom: 5px;
  }
  .c-product-modal__name {
    font-size: 18px;
    line-height: 1.333;
    margin-bottom: 9px;
  }
  .c-product-modal__category {
    font-size: 12px;
    line-height: 1.333;
  }
  .c-product-modal__volume-price {
    margin: 29px 0 18.5px;
  }
  .c-product-modal__volume {
    font-size: 12px;
    line-height: 1.583;
  }
  .c-product-modal__volume strong {
    font-size: 14px;
    line-height: 1.357;
  }
  .c-product-modal__price {
    font-size: 12px;
    line-height: 1.583;
  }
  .c-product-modal__price strong {
    font-size: 14px;
    line-height: 1.357;
  }
  .c-product-modal__details {
    font-size: 12px;
    line-height: 1.605;
    letter-spacing: 0.06em;
    margin: 18.5px 0 26.5px;
  }
  .c-product-modal__tag-list {
    margin: 26.5px 0 0;
    gap: 10px;
  }
  .c-product-modal__tag {
    font-size: 12px;
    line-height: 2;
    border-radius: 1em;
    padding: 0 1em;
  }
  .c-product-modal__description {
    margin: 30px 0 0;
    padding-top: 27.5px;
    font-size: 13px;
    line-height: 1.846;
    letter-spacing: 0.05em;
  }
  .c-product-modal__close {
    width: 52px;
    height: 52px;
  }
}

.c-pagination {
  border: 1px solid #F2F2F2;
  border-left: 0;
  border-right: 0;
}
.c-pagination__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 35px 20px;
}
.c-pagination__lasting {
  width: 30px;
  height: 30px;
  text-align: center;
  background: url(../images/icon-triple-dots.svg) center center no-repeat;
  background-size: 12px auto;
}
.c-pagination__lasting.\--hidden-sp {
  visibility: hidden;
}
.c-pagination__item {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 10px;
  line-height: 30px;
  text-align: center;
  margin: 0 5.5px;
}
.c-pagination__item.\--current {
  color: #fff;
  background: #e6ad37;
}
.c-pagination__item.\--prev, .c-pagination__item.\--next {
  width: 40px;
  height: 40px;
  margin: 0;
}
.c-pagination__item.\--prev {
  margin-right: auto;
}
.c-pagination__item.\--next {
  margin-left: auto;
}
.c-pagination__item.\--disabled {
  visibility: hidden;
}
.c-pagination__item.\--link:hover, .c-pagination__item.\--link:active {
  background: #f7f7f7;
  color: #333;
}
.c-pagination .c-button-circle::before {
  content: "";
  width: 4px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.c-pagination .c-button-circle.\--prev::before {
  background-image: url(../images/icon-arrow-left.svg);
}
.c-pagination .c-button-circle.\--next::before {
  background-image: url(../images/icon-arrow-right.svg);
}
.c-pagination .c-button-circle__text {
  visibility: hidden;
}
.c-pagination .c-button-circle__hover {
  visibility: hidden;
}
@media (min-width: 897px) {
  .c-pagination__inner {
    width: 1280px;
    padding: 44px 55px;
    margin: auto;
  }
  .c-pagination__lasting {
    width: 50px;
    height: 50px;
    background-size: 15px auto;
  }
  .c-pagination__lasting.\--hidden-sp {
    visibility: visible;
  }
  .c-pagination__lasting.\--hidden-pc {
    visibility: hidden;
  }
  .c-pagination__lasting.\--hidden-sp.\--hidden-pc {
    visibility: hidden;
  }
  .c-pagination__item {
    width: 50px;
    height: 50px;
    font-size: 15.5px;
    line-height: 50px;
    margin: 0 4.5px;
  }
  .c-pagination__item.\--prev, .c-pagination__item.\--next {
    width: 70px;
    height: 70px;
    margin: 0;
  }
  .c-pagination__item.\--prev {
    margin-right: auto;
  }
  .c-pagination__item.\--next {
    margin-left: auto;
  }
  .c-pagination .c-button-circle::before {
    width: 7px;
    height: 14px;
  }
  .c-pagination .c-button-circle__hover {
    visibility: visible;
  }
}

.c-shop-filter {
  display: flex;
  flex-wrap: wrap;
  padding: 0 20px 10px;
  justify-content: space-between;
  margin-bottom: 12.5px;
  position: sticky;
  top: 58px;
  left: 0;
  z-index: 1;
  background: #fff;
}
.c-shop-filter__prefectures, .c-shop-filter__cities {
  width: calc((100% - 10px) / 2);
}
.c-shop-filter__brands {
  width: 100%;
}
@media (min-width: 897px) {
  .c-shop-filter {
    width: 820px;
    margin: auto;
    padding: 0;
    margin-bottom: 100px;
    top: 100px;
  }
  .c-shop-filter__prefectures, .c-shop-filter__cities, .c-shop-filter__brands {
    width: 240px;
    flex-grow: 0;
    flex-shrink: 0;
  }
}

.c-shop-box {
  padding: 37px 30px 30px;
  border-bottom: 1px solid #F2F2F2;
}
.c-shop-box.\--template {
  display: none;
}
.c-shop-box__name {
  font-size: 15px;
  line-height: 1.466;
  margin-bottom: 17.5px;
}
.c-shop-box__name > a {
  text-decoration: underline;
}
.c-shop-box__name > a::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background-image: url(../images/icon-link.svg);
  background-size: contain;
  vertical-align: middle;
  margin-left: 15px;
}
.c-shop-box__zip, .c-shop-box__address, .c-shop-box__tel-main, .c-shop-box__tel-sub, .c-shop-box__note {
  font-size: 11px;
  line-height: 1.636;
  letter-spacing: 0.05em;
}
@media (min-width: 897px) {
  .c-shop-box {
    padding: 37.5px 19px 43px;
  }
  .c-shop-box__name {
    font-size: 20px;
    line-height: 2.05;
    margin-bottom: 13px;
  }
  .c-shop-box__name > a::after {
    width: 13px;
    height: 13px;
    margin-left: 16px;
  }
  .c-shop-box__zip, .c-shop-box__address, .c-shop-box__tel-main, .c-shop-box__tel-sub, .c-shop-box__note {
    font-size: 13px;
    line-height: 1.714;
  }
  .c-shop-box__zip-address, .c-shop-box__tel {
    display: flex;
    flex-wrap: wrap;
  }
  .c-shop-box__zip + .c-shop-box__address, .c-shop-box__tel-main + .c-shop-box__tel-sub {
    margin-left: 1em;
  }
}

.c-about-message {
  padding: 62px 20px 98px;
  border-bottom: 1px solid #ebebeb;
}
.c-about-message p {
  font-size: 12px;
  line-height: 1.91;
  letter-spacing: 0.05em;
}
.c-about-message p + p {
  margin-top: 1.91em;
}
@media (min-width: 897px) {
  .c-about-message {
    margin: auto;
    padding: 124px 0;
  }
  .c-about-message p {
    font-size: 14px;
    line-height: 2.71;
    text-align: center;
  }
  .c-about-message p + p {
    margin-top: 2.71em;
  }
}

.c-about-profile {
  padding: 98px 15px 85px;
}
.c-about-profile__title {
  font-size: 11px;
  line-height: 1.363;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-align: center;
  margin-bottom: 28.7px;
}
.c-about-profile__title strong {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 1.34;
  letter-spacing: 0.2em;
  display: block;
  margin-bottom: 3.5px;
  white-space: nowrap;
}
.c-about-profile__access {
  margin-top: 46.75px;
  text-align: center;
}
.c-about-profile__access-title {
  margin-bottom: 17px;
}
.c-about-profile__access-map {
  height: 0;
  overflow: hidden;
  padding-bottom: 90%;
  position: relative;
}
.c-about-profile__access-map iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
@media (min-width: 897px) {
  .c-about-profile {
    width: 800px;
    margin: auto;
    padding: 126px 0 130px;
  }
  .c-about-profile__title {
    font-size: 13px;
    line-height: 2.84;
    margin-bottom: 66.9px;
  }
  .c-about-profile__title strong {
    font-size: 28px;
    line-height: 1.321;
    margin-bottom: 10px;
  }
  .c-about-profile__access {
    margin-top: 76px;
    text-align: left;
  }
  .c-about-profile__access-title {
    padding-left: 20px;
    margin-bottom: 14px;
  }
  .c-about-profile__access-map {
    padding-bottom: 32.5%;
  }
}

.c-about-history {
  padding: 63px 30px 59px 47.5px;
  color: #fff;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../images/about/our-history@sp.jpg);
}
.c-about-history::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(51, 51, 51, 0.3);
  z-index: 0;
}
.c-about-history__title {
  font-size: 11px;
  line-height: 1.363;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-align: center;
  margin-bottom: 30px;
  position: relative;
  z-index: 1;
}
.c-about-history__title strong {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 1.34;
  letter-spacing: 0.2em;
  display: block;
}
.c-about-history__block {
  position: relative;
  z-index: 1;
}
.c-about-history__block dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.c-about-history__block dl dt,
.c-about-history__block dl dd {
  width: 100%;
  box-sizing: border-box;
}
.c-about-history__block dl dt {
  font-size: 21px;
  line-height: 1.07;
  letter-spacing: 0.1em;
  position: relative;
}
.c-about-history__block dl dt::before {
  content: "";
  width: 1px;
  height: calc(50% - 4px);
  background: #fff;
  position: absolute;
  top: 0;
  left: -21px;
}
.c-about-history__block dl dt::after {
  content: "";
  width: 8px;
  height: 8px;
  border: 0.8px solid #fff;
  border-radius: 50%;
  position: absolute;
  left: -25px;
  top: 50%;
  transform: translateY(-50%);
}
.c-about-history__block dl dt:first-of-type::before {
  display: none;
}
.c-about-history__block dl dd {
  font-size: 12px;
  line-height: 1.83;
  letter-spacing: 0.05em;
  padding-bottom: 23px;
  padding-top: 4px;
  position: relative;
}
.c-about-history__block dl dd::before {
  content: "";
  width: 1px;
  height: calc(100% + 7px);
  background: #fff;
  position: absolute;
  top: -7px;
  left: -21px;
}
.c-about-history__block dl dd:last-of-type {
  padding-bottom: 0;
}
.c-about-history__block dl dd:last-of-type::before {
  display: none;
}
@media (min-width: 897px) {
  .c-about-history {
    padding: 107px 0 110px;
    background-image: url(../images/about/our-history.jpg);
  }
}
@media only screen and (min-width: 897px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 897px) and (-o-min-device-pixel-ratio: 2/1), only screen and (min-width: 897px) and (min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min-resolution: 192dpi), only screen and (min-width: 897px) and (min-resolution: 2dppx) {
  .c-about-history {
    background-image: url(../images/about/our-history@2x.jpg);
  }
}
@media (min-width: 897px) {
  .c-about-history__inner {
    width: 1000px;
    margin: auto;
  }
  .c-about-history__title {
    font-size: 13px;
    line-height: 2.84;
    margin-bottom: 73px;
  }
  .c-about-history__title strong {
    font-size: 28px;
    letter-spacing: 0.2em;
  }
  .c-about-history__block {
    padding-left: 55px;
    width: 800px;
    margin: 0 auto;
  }
  .c-about-history__block dl dt {
    font-size: 24px;
    line-height: 1.25;
    letter-spacing: 0.1em;
    width: 90px;
  }
  .c-about-history__block dl dt::before {
    left: -27px;
  }
  .c-about-history__block dl dt::after {
    width: 10px;
    height: 10px;
    left: -32px;
  }
  .c-about-history__block dl dd {
    font-size: 14px;
    line-height: 1.71;
    letter-spacing: 0.1em;
    width: calc(100% - 90px);
  }
  .c-about-history__block dl dd::before {
    height: calc(100% - 11px);
    top: 19px;
    left: -117px;
  }
}

.c-movie-box {
  cursor: pointer;
}
.c-movie-box__image {
  margin-bottom: 19.65px;
  position: relative;
}
.c-movie-box__image img {
  width: 100%;
}
.c-movie-box__image::after {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  background-image: url(../images/movie/icon-play.svg);
  background-size: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-movie-box__brand {
  font-size: 16px;
  line-height: 1.62;
  letter-spacing: 0.12em;
  margin-bottom: 7px;
}
.c-movie-box__title {
  font-size: 14px;
  line-height: 1.53;
  letter-spacing: 0.12em;
}
@media (min-width: 897px) {
  .c-movie-box__image {
    margin-bottom: 30.9px;
  }
  .c-movie-box__image::after {
    width: 70px;
    height: 70px;
  }
  .c-movie-box__brand {
    font-size: 20px;
    line-height: 1.75;
    letter-spacing: 0.2em;
    margin-bottom: 9px;
  }
  .c-movie-box__title {
    font-size: 15px;
    line-height: 1.86;
  }
  .c-movie-box__brand, .c-movie-box__title {
    padding-left: 1em;
    padding-right: 1em;
  }
}

.c-movie-box-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.c-movie-box-list .c-movie-box {
  width: calc(100% - 60px);
  margin: 0 auto 52.35px;
}
.c-movie-box-list .c-movie-box:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 897px) {
  .c-movie-box-list {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-movie-box-list .c-movie-box {
    width: calc((100% - 20px) / 3);
    margin: 0 0 91.1px;
  }
}
@media (min-width: 897px) and (-ms-high-contrast: none) {
  .c-movie-box-list .c-movie-box {
    width: calc((100% - 20px) / 3 - 0.1px);
  }
}
@media (min-width: 897px) {
  .c-movie-box-list .c-movie-box:nth-of-type(2n) {
    margin-left: 0;
  }
  .c-movie-box-list .c-movie-box:not(:nth-of-type(3n+1)) {
    margin-left: 10px;
  }
}

html {
  overflow-y: scroll !important;
}

body {
  padding-right: 0 !important;
}

.c-movie-modal {
  width: calc(100% - 10px);
  padding: 0;
  background: rgba(43, 46, 56, 0.9);
}
.c-movie-modal__embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.c-movie-modal__embed-container iframe,
.c-movie-modal__embed-container object,
.c-movie-modal__embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-movie-modal__close {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/icon-close.svg) center center no-repeat;
  background-size: 12px auto;
  opacity: 1;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-movie-modal__close:hover {
  opacity: 0.7;
}
@media only screen and (min-width: 641px) {
  .c-movie-modal {
    width: calc(100% - 10px);
    max-width: calc(100% - 10px);
    padding: 0;
  }
}
@media (min-width: 897px) {
  .c-movie-modal {
    width: calc(100% - 60px);
    max-width: 1000px;
    padding: 0;
  }
}

.c-press-box__img {
  padding-bottom: 20px;
  text-align: center;
}
.c-press-box__title {
  font-size: 15px;
  line-height: 1;
  font-weight: 700;
  padding-bottom: 10px;
  margin: 10px;
}
.c-press-box__comment {
  font-size: 14px;
  line-height: 1.5;
  margin: 0 10px;
}
@media (min-width: 897px) {
  .c-press-box__title-comment {
    margin-left: 20px;
    margin-right: 20px;
  }
}

.c-press-box-list {
  padding-left: 15px;
  padding-right: 15px;
  margin: 0 auto;
}
.c-press-box-list__title {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 15px;
  line-height: 1;
  text-align: center;
  margin-bottom: 30px;
}
.c-press-box-list .c-press-box {
  padding-top: 20px;
  padding-bottom: 35px;
  margin-bottom: 15px;
  border-bottom: 1px dotted #7a7a7a;
}
.c-press-box-list .c-press-box:nth-last-of-type(1) {
  border-bottom: 0;
}
@media (min-width: 897px) {
  .c-press-box-list {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-press-box-list .c-press-box {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
  }
}

.c-news-detail {
  width: calc(100% - 60px);
  margin: 0 auto;
  padding-bottom: 123.45px;
}
.c-news-detail .c-page-title {
  font-size: 17px;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.c-news-detail__date-category {
  text-align: center;
  margin-bottom: 47.5px;
}
.c-news-detail__date, .c-news-detail__category {
  display: inline;
  font-size: 10px;
  line-height: 1.75;
  letter-spacing: 0.08em;
}
.c-news-detail__date {
  margin-right: 17.2px;
}
.c-news-detail__category {
  letter-spacing: 0.1em;
}
.c-news-detail__content {
  font-size: 12px;
  line-height: 1.83;
  letter-spacing: 0.03em;
}
.c-news-detail__content p {
  margin-bottom: 1em;
}
.c-news-detail__content p p:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 897px) {
  .c-news-detail {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-news-detail .c-page-title {
    font-size: 26px;
    line-height: 2;
    letter-spacing: 0.15em;
  }
  .c-news-detail__date-category {
    text-align: center;
    margin-bottom: 78.5px;
  }
  .c-news-detail__date, .c-news-detail__category {
    font-size: 12px;
  }
  .c-news-detail__date {
    margin-right: 40px;
  }
  .c-news-detail__content {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.05em;
  }
}

.c-news-link {
  margin: 0 auto;
  text-align: center;
  border-top: 1px solid #f7f7f7;
  padding: 42.9px 30px 44.15px;
}
.c-news-link__text {
  font-size: 17px;
  line-height: 1.75;
  letter-spacing: 0.15em;
  position: relative;
}
.c-news-link__text::before {
  content: "";
  position: absolute;
  width: 11px;
  height: 12px;
  background-image: url(../images/news/icon-all-news.svg);
  background-size: 100%;
  top: 50%;
  transform: translateY(-50%);
  left: -4.4px;
}
@media (min-width: 897px) {
  .c-news-link {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-news-link__text {
    font-size: 24px;
    padding: 20px;
  }
  .c-news-link__text::before {
    width: 13px;
    height: 14px;
    left: -6.5px;
  }
}

.c-catalog-box {
  padding: 10px;
}
.c-catalog-box__brand {
  text-align: center;
  font-size: 15px;
  line-height: 1.75;
  letter-spacing: 0.05em;
  padding-bottom: 10px;
}
.c-catalog-box__img {
  width: 100%;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}
.c-catalog-box__img img {
  width: 100%;
}

.c-catalog-box-list {
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 30px;
}
.c-catalog-box-list__title {
  padding: 10px;
}
.c-catalog-box-list__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.c-catalog-box-list .c-catalog-box {
  width: 50%;
}
@media (min-width: 897px) {
  .c-catalog-box-list {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-catalog-box-list__title {
    text-align: center;
    margin-bottom: 30px;
  }
  .c-catalog-box-list .c-catalog-box {
    width: 25%;
  }
  .c-catalog-box-list .c-catalog-box.\--wide {
    width: 50%;
  }
}

.c-pop-box {
  position: relative;
  background-color: #fafafa;
}
.c-pop-box__inner {
  opacity: 1;
  transition: opacity 0.3s;
  cursor: pointer;
  color: #808080;
  display: flex;
  align-items: center;
  height: 100%;
}
.c-pop-box__inner:hover {
  opacity: 0.7;
}
.c-pop-box__inner:hover {
  color: #e6ad37;
}
.c-pop-box__img {
  position: relative;
  width: 100%;
}
.c-pop-box__img img {
  width: 100%;
}
.c-pop-box__zoom {
  position: absolute;
  bottom: 0;
  right: 5px;
}
.c-pop-box__zoom svg {
  width: 16px;
  height: 16px;
}
.c-pop-box__zoom svg .st0 {
  transition: 0.2s;
  fill: currentColor;
}
.c-pop-box__download {
  display: block;
  font-size: 12px;
  line-height: 24px;
  position: absolute;
  top: 100%;
  left: 0;
}
.c-pop-box__download svg {
  width: 16px;
  height: 16px;
  vertical-align: middle;
  margin-right: 0.5em;
}
.c-pop-box__download svg .st0 {
  fill: currentColor;
}
@media (min-width: 897px) {
  .c-pop-box {
    width: 25%;
  }
}

.c-pop-box-list {
  padding: 0 20px;
  display: flex;
  flex-wrap: wrap;
}
.c-pop-box-list .c-pop-box {
  width: calc((100% - 20px) / 2);
  margin-bottom: 44px;
}
.c-pop-box-list .c-pop-box:nth-of-type(2n) {
  margin-left: 20px;
}
@media (min-width: 897px) {
  .c-pop-box-list {
    width: 1280px;
    margin: auto;
    padding-left: 140px;
    padding-right: 140px;
  }
  .c-pop-box-list .c-pop-box {
    width: calc((100% - 120px) / 4);
    margin-bottom: 64px;
  }
  .c-pop-box-list .c-pop-box:not(:nth-of-type(4n+1)) {
    margin-left: 40px;
  }
}

@media (min-width: 897px) {
  .c-pop-box-tab {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
    font-size: 14px;
    line-height: 1.75;
    letter-spacing: 0.06em;
    display: flex;
    justify-content: space-between;
  }
  .c-pop-box-tab__item {
    list-style: none;
    width: 200px;
    height: 77.8px;
    line-height: 77.8px;
    text-align: center;
  }
  .c-pop-box-tab__item a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .c-pop-box-tab__item.--current {
    border-top: 1px solid #e6ad37;
    color: #e6ad37;
  }
}

.c-pop-box-select {
  margin: 8px 20px 34px;
}

html.remodal-is-locked {
  overflow-y: scroll;
  touch-action: auto;
}

body {
  padding-right: 0 !important;
}

.c-pop-modal {
  max-width: calc(100% - 10px);
  padding: 0 0 35px;
  margin: 0;
  background: transparent;
  height: 100%;
  position: relative;
}
.c-pop-modal__img {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.c-pop-modal__img img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  font-family: "object-fit: contain;";
}
.c-pop-modal__buttons {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  height: 35px;
}
.c-pop-modal .c-pop-modal__close, .c-pop-modal .c-pop-modal__download {
  display: inline-block;
  color: #fff;
  line-height: 35px;
  font-size: 14px;
  cursor: pointer;
  transition: color 0.2s;
  width: 50%;
  position: relative;
  text-align: center;
}
.c-pop-modal .c-pop-modal__close:hover, .c-pop-modal .c-pop-modal__download:hover {
  color: #e6ad37;
}
.c-pop-modal .c-pop-modal__close span, .c-pop-modal .c-pop-modal__download span {
  vertical-align: middle;
}
.c-pop-modal .c-pop-modal__close svg, .c-pop-modal .c-pop-modal__download svg {
  vertical-align: middle;
  margin-right: 0.5em;
}
.c-pop-modal .c-pop-modal__close svg .st0, .c-pop-modal .c-pop-modal__download svg .st0 {
  stroke: currentColor;
  fill: currentColor;
}
.c-pop-modal__download svg {
  width: 21px;
  height: 21px;
}
.c-pop-modal__close::before {
  content: "";
  width: 1px;
  height: 50%;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.c-pop-modal__close svg {
  width: 16px;
  height: 16px;
}
@media only screen and (min-width: 641px) {
  .c-pop-modal {
    max-width: calc(100% - 10px);
    padding: 0 0 35px;
  }
}
@media (min-width: 897px) {
  .c-pop-modal {
    padding: 50px 0 0;
  }
  .c-pop-modal__buttons {
    bottom: auto;
    top: 0;
    justify-content: flex-end;
    height: 50px;
  }
  .c-pop-modal .c-pop-modal__close, .c-pop-modal .c-pop-modal__download {
    line-height: 50px;
    font-size: 16px;
    width: auto;
    margin: 0 1em;
  }
  .c-pop-modal__download svg {
    width: 24px;
    height: 24px;
  }
  .c-pop-modal__close::before {
    display: none;
  }
  .c-pop-modal__close svg {
    width: 18px;
    height: 18px;
  }
}

.c-privacy-policy {
  padding: 0 20px;
}
.c-privacy-policy .c-page-title {
  font-size: 17px;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.c-privacy-policy__content {
  font-size: 12px;
  line-height: 1.83;
  letter-spacing: 0.03em;
}
.c-privacy-policy__content h2 {
  margin: 3em 0 0.5em;
  font-weight: 400;
}
.c-privacy-policy__content h3 {
  font-weight: 400;
  text-decoration: underline;
}
.c-privacy-policy__content p {
  margin: 0.5em 0 1em;
}
.c-privacy-policy__content p + h3 {
  margin-top: 2em;
}
@media (min-width: 897px) {
  .c-privacy-policy {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-privacy-policy .c-page-title {
    font-size: 26px;
    line-height: 2;
    letter-spacing: 0.15em;
  }
  .c-privacy-policy__content {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.05em;
  }
  .c-privacy-policy__content p {
    padding-bottom: 1em;
  }
  .c-privacy-policy__content p p:last-of-type {
    padding-bottom: 0;
  }
}

.c-form {
  width: calc(100% - 60px);
  margin: 0 auto;
  padding-bottom: 35px;
}
.c-form p {
  margin-bottom: 1em;
}
.c-form input[type=text],
.c-form input[type=tel],
.c-form input[type=email],
.c-form input[type=date],
.c-form input[type=number],
.c-form textarea {
  padding: 0.5em 1em;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  width: 100%;
  min-height: 35px; /* type=dateの場合にiphoneだとfont-sizeが認識しない問題の対処 */
  vertical-align: bottom;
}
.c-form input[type=radio],
.c-form input[type=checkbox] {
  border-style: solid;
}
.c-form input[type=radio]:disabled + .wpcf7-list-item-label,
.c-form input[type=checkbox]:disabled + .wpcf7-list-item-label {
  color: #bababa;
}
.c-form input[type=radio] {
  border-radius: 50%;
}
.c-form input[type=checkbox] {
  border-radius: 5px;
}
.c-form input[type=file] {
  width: 0;
  height: 0;
}
.c-form__message {
  margin-bottom: 10px;
}
.c-form__message.\--thanks {
  font-size: 16px;
  margin: 40px 0;
}
.c-form__message.\--thanks p {
  margin-bottom: 1em;
}
.c-form__submit {
  width: 50%;
  margin: 30px auto;
}
.c-form__submit .c-button {
  font-size: 16px;
  width: 100%;
}
.c-form__submit .c-button:disabled {
  cursor: not-allowed;
  background-color: #bababa;
}
.c-form__submit .c-button:not(:disabled) {
  background: #e6ad37;
}
.c-form dl {
  display: flex;
  flex-direction: column;
}
.c-form dl dt {
  width: 100%;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.c-form dl dt.\--required::after {
  content: "※必須";
  display: inline-block;
  color: #e6ad37;
  margin-left: 1em;
}
.c-form dl dd {
  width: 100%;
  margin-bottom: 20px;
}
.c-form dl [data-class=wpcf7cf_group] {
  display: block;
  width: 100%;
}
.c-form__input-row {
  display: block;
  border: 1px solid #aaaaaa;
  padding: 0;
}
.c-form__input-row.\--choice {
  padding: 0.5em 1em 0.2em;
}
.c-form__input-row.\--choice.\--column .wpcf7-list-item {
  display: block;
}
.c-form__input-row.\--invalid {
  border-color: #FF0000;
  background: rgba(255, 0, 0, 0.1);
}
.c-form__input-row.\--with-unit {
  position: relative;
}
.c-form__input-row.\--with-unit::after {
  content: attr(data-unit);
  position: absolute;
  top: 50%;
  left: calc(100% + 1em);
  transform: translateY(-50%);
}
.c-form__input-row.\--age {
  width: 5em;
}
.c-form__input-row .wpcf7-list-item {
  margin: 0;
  display: block;
}
.c-form__input-row.\--choice .wpcf7-list-item {
  margin-bottom: 0.3em;
}
.c-form__input-row [data-class=wpcf7cf_group] input[type=text] {
  display: block;
  border: 1px solid #aaaaaa;
  margin-bottom: 0.5em;
}
.c-form__file-button {
  display: inline-block;
  background: #e6ad37;
  box-sizing: border-box;
  color: #fff;
  transition: 0.3s;
  padding: 0.5em 15px;
  font-size: 14px;
  line-height: 1.5;
  min-height: 35px;
  vertical-align: bottom;
}
.c-form__file-button:hover {
  cursor: pointer;
}
.c-form__file-button .wpcf7-form-control-wrap {
  font-size: 0;
}
.c-form__file-name {
  box-sizing: border-box;
  display: inline-block;
  padding: 0.5em 15px;
  font-size: 14px;
  line-height: 1.5;
  min-height: 35px;
  vertical-align: bottom;
}
@media (min-width: 897px) {
  .c-form {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin: 0 auto;
  }
  .c-form__message {
    text-align: center;
    margin-bottom: 30px;
  }
  .c-form__message.\--thanks {
    font-size: 18px;
    margin: 40px 0 100px;
  }
  .c-form dl {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .c-form dl dt {
    width: 250px;
    padding: 0.5em 0;
    margin-right: 20px;
    padding-right: 4em;
    position: relative;
  }
  .c-form dl dt.\--required::after {
    position: absolute;
    top: 0.5em;
    right: 0;
  }
  .c-form dl dd {
    width: calc(100% - 270px);
  }
  .c-form dl [data-class=wpcf7cf_group] {
    display: flex;
  }
  .c-form .wpcf7-list-item {
    display: inline-block;
    margin-right: 2em;
  }
}
.c-form .formError {
  display: inline-block !important;
}
.c-form .wpcf7-not-valid-tip {
  display: none;
}
.c-form .undefinedformError {
  display: none !important;
}
.c-form .wpcf7-form-control-wrap.acceptance {
  text-align: center;
  display: block;
}

.c-qa-box {
  padding: 16px 0;
  border-bottom: 1px solid #ebebeb;
  border-top: 1px solid #ebebeb;
  counter-increment: qa-box;
}
.c-qa-box + .c-qa-box {
  border-top: none;
}
.c-qa-box__q, .c-qa-box__a {
  position: relative;
  padding-left: 3em;
  padding-top: 0.325em;
  font-size: 13px;
  line-height: 1.5;
  min-height: 2em;
}
.c-qa-box__q::before, .c-qa-box__a::before {
  font-weight: 400;
  width: 2em;
  height: 2em;
  line-height: 2;
  text-align: center;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
}
.c-qa-box__q {
  font-weight: 700;
  margin-bottom: 10px;
}
.c-qa-box__q::before {
  content: counter(qa-box);
  background: #e6ad37;
  color: #fff;
}
.c-qa-box__a::before {
  content: "A";
  border: 1px solid #e6ad37;
  color: #e6ad37;
}
.c-qa-box__images {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
}
.c-qa-box__image img {
  max-width: 100%;
  height: auto;
}
.c-qa-box__figure {
  margin-top: 12px;
}
@media (min-width: 897px) {
  .c-qa-box {
    padding: 32px 24px;
  }
  .c-qa-box__q, .c-qa-box__a {
    font-size: 16px;
  }
  .c-qa-box__figure {
    margin-top: 24px;
  }
}

.c-qa-box-list {
  counter-reset: qa-box;
}
.c-qa-box-list__more {
  text-align: center;
  margin-top: 24px;
  position: sticky;
  bottom: 0;
  z-index: 3;
  background: rgba(255, 255, 255, 0.7);
}
.c-qa-box-list__more-btn {
  display: inline-block;
  width: 180px;
  border-bottom: 1px solid #e6ad37;
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 11px;
  line-height: 1.75;
  letter-spacing: 0.15em;
  padding: 14px 0;
  text-align: center;
}
.c-qa-box-list__hidden {
  display: none;
}
@media (min-width: 897px) {
  .c-qa-box-list__more {
    margin-top: 32px;
  }
  .c-qa-box-list__more-btn {
    width: 160px;
    font-size: 13px;
    padding: 18px 0;
    position: relative;
    border-bottom-color: #ebebeb;
  }
  .c-qa-box-list__more-btn::after {
    content: "";
    display: block;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -1px;
    left: 0;
    background: #e6ad37;
    transition: 0.5s;
  }
  .c-qa-box-list__more-btn:hover {
    color: #333;
    cursor: pointer;
  }
  .c-qa-box-list__more-btn:hover::after {
    width: 100%;
  }
}

.c-table {
  font-size: 12px;
  line-height: 1.583;
  letter-spacing: 0.05em;
}
.c-table__remarks {
  display: block;
  margin-top: 5px;
}
.c-table__remarks.\--kome {
  position: relative;
  padding-left: 15px;
}
.c-table__remarks.\--kome::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
.c-table dl {
  padding: 16px 15px;
  border-bottom: 1px solid #ebebeb;
  display: flex;
  width: 100%;
  align-items: center;
}
.c-table dl:first-of-type {
  border-top: 1px solid #ebebeb;
}
.c-table dl dt {
  flex-shrink: 0;
  flex-grow: 0;
  width: 93px;
}
.c-table dl dd div + div {
  margin-top: 1em;
}
.c-table__list {
  list-style: none;
}
.c-table__list li {
  position: relative;
  padding-left: 1em;
}
.c-table__list li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
@media (min-width: 897px) {
  .c-table {
    font-size: 14px;
    line-height: 1.857;
    letter-spacing: 0.06em;
  }
  .c-table dl {
    padding: 16px 20px;
  }
  .c-table dl dt {
    width: 180px;
  }
  .c-table dl dd div + div {
    margin-top: 0;
  }
}

.c-recruit {
  padding: 0 15px 85px;
}
.c-recruit__info {
  text-align: center;
  margin-bottom: 55px;
}
.c-recruit__title {
  font-size: 22px;
  line-height: 1.363;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-align: center;
  margin-bottom: 30px;
}
.c-recruit__table {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding-bottom: 40px;
}
.c-recruit__table-inner {
  padding: 0 15px;
}
.c-recruit__buttons {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  list-style: none;
  width: 100%;
  margin-bottom: 10px;
}
.c-recruit__button {
  font-size: 14px;
  text-align: center;
  min-height: 80px;
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-recruit__button.--sns {
  grid-column: 1/3;
}
.c-recruit__button.\--is-opened {
  background: #e6ad37;
  color: #fff;
}
.c-recruit__button:not(.\--is-opened) {
  background: #f7f7f7;
}
.c-recruit__body {
  display: none;
}
.c-recruit__body.\--is-opened {
  display: block;
}
.c-recruit__entry {
  display: block;
  text-align: center;
  padding-top: 40px;
}
.c-recruit__entry-title {
  font-size: 22px;
  line-height: 1.363;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 30px;
}
.c-recruit__entry-info {
  margin-bottom: 20px;
}
.c-recruit__entry-button {
  display: none;
  border-bottom: 1px solid #e6ad37;
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  width: 160px;
  padding: 20px 0;
}
.c-recruit__entry-button.\--is-opened {
  display: inline-block;
}
@media (min-width: 897px) {
  .c-recruit {
    min-width: 800px;
    padding: 0 0 130px;
  }
  .c-recruit__info {
    margin-bottom: 85px;
  }
  .c-recruit__title {
    font-size: 28px;
    line-height: 2.84;
    margin-bottom: 50px;
  }
  .c-recruit__table {
    width: auto;
    margin: 0;
  }
  .c-recruit__table-inner {
    max-width: 800px;
    margin: auto;
  }
  .c-recruit__buttons {
    grid-template-columns: repeat(4, 1fr);
    margin-bottom: 20px;
  }
  .c-recruit__button {
    transition: 0.3s;
  }
  .c-recruit__button.--sns {
    grid-column: 3/5;
  }
  .c-recruit__button:not(.--is-opened):hover {
    opacity: 0.3;
  }
  .c-recruit__button {
    font-size: 16px;
    cursor: pointer;
  }
  .c-recruit__entry {
    padding-top: 50px;
  }
  .c-recruit__entry-title {
    font-size: 28px;
    line-height: 2.84;
    margin-bottom: 50px;
  }
  .c-recruit__entry-info {
    margin-bottom: 40px;
  }
  .c-recruit__entry-button {
    border-bottom-color: #ebebeb;
    position: relative;
    cursor: pointer;
  }
  .c-recruit__entry-button::after {
    content: "";
    display: block;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -1px;
    left: 0;
    background: #e6ad37;
    transition: 0.5s;
  }
  .c-recruit__entry-button:hover {
    color: #333;
  }
  .c-recruit__entry-button:hover::after {
    width: 100%;
  }
}

.p-top-headline {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 20.5px;
  line-height: 1.75;
  letter-spacing: 0.2em;
  position: relative;
  padding-left: 38px;
  padding-top: 57px;
}
.p-top-headline::before {
  counter-increment: top-headline;
  content: "0" counter(top-headline);
  position: absolute;
  top: 0;
  left: 0;
}
.p-top-headline::after {
  content: "";
  width: 52px;
  height: 0;
  border-top: 1px solid currentColor;
  transform: rotate(-45deg);
  position: absolute;
  top: 53px;
  left: -4px;
}
@media (min-width: 897px) {
  .p-top-headline {
    font-size: 28px;
    padding-left: 53px;
    padding-top: 68px;
  }
  .p-top-headline::after {
    width: 71px;
    position: absolute;
    top: 67px;
    left: -7px;
  }
}

body {
  counter-reset: top-headline;
}

.p-top-carousel {
  position: relative;
  width: 100%;
  padding: 0 15px;
  margin-bottom: 64px;
}
@media (min-width: 897px) {
  .p-top-carousel {
    padding: 0 40px;
  }
}

.p-top-carousel-img-list {
  position: relative;
  width: 100%;
}

.p-top-carousel-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 0;
  opacity: 0;
  transition: 1s;
}
.p-top-carousel-img img {
  width: 100%;
  height: calc((100vw - 30px) * 1.681);
}
.p-top-carousel-img.\--is-active {
  position: static;
  opacity: 1;
  z-index: 1;
}
@media (min-width: 897px) {
  .p-top-carousel-img img {
    height: auto;
    max-height: calc(100vh - 146px - 40px);
    object-fit: cover;
    font-family: "object-fit: cover;";
  }
}

.p-top-carousel-controller {
  width: 57%;
  position: absolute;
  bottom: 0;
  z-index: 1;
  padding: 36.5px 11px 5px;
  background: #fff;
}
.p-top-carousel-controller__products-thumb {
  overflow: hidden;
  height: 300px;
  width: 100%;
  position: absolute;
  bottom: calc(100% - 36.5px);
  left: 0;
}
.p-top-carousel-controller__products-thumb img {
  position: absolute;
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: 1s ease-in-out;
}
.p-top-carousel-controller__products-thumb img.\--is-active {
  bottom: 0;
  opacity: 1;
}
.p-top-carousel-controller__products-thumb img.\--cocuu {
  width: 96.5px;
}
.p-top-carousel-controller__brand-name > * {
  display: none;
  font-size: 10px;
  line-height: 2;
  letter-spacing: 0.09em;
  padding-left: 6px;
}
.p-top-carousel-controller__brand-name > *.\--is-active {
  display: block;
}
.p-top-carousel-controller__brand-name > * strong {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.1em;
  font-size: 11px;
  margin-right: 1em;
}
.p-top-carousel-controller__progress-bar {
  margin: 19px 0 9px;
  height: 2px;
  background: #ebebeb;
  font-size: 0;
}
.p-top-carousel-controller__progress-bar > span {
  display: inline-block;
  width: 0;
  height: 100%;
  background: #e6ad37;
}
.p-top-carousel-controller__number {
  display: flex;
  list-style: none;
  justify-content: space-around;
}
.p-top-carousel-controller__number > li {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 10px;
  color: #aaaaaa;
  transition: 0.3s;
  cursor: pointer;
  width: 2em;
  text-align: center;
}
.p-top-carousel-controller__number > li.\--is-active {
  color: #333;
}
.p-top-carousel-controller__number > li:hover {
  color: #e6ad37;
}
@media (min-width: 897px) {
  .p-top-carousel-controller {
    width: 237px;
    padding: 44px 28.5px 8px;
  }
  .p-top-carousel-controller__products-thumb img.\--cocuu {
    width: 123px;
  }
  .p-top-carousel-controller__brand-name > * {
    font-size: 12px;
    line-height: 1.75;
    padding-left: 0;
  }
  .p-top-carousel-controller__brand-name > * strong {
    font-size: 14px;
  }
  .p-top-carousel-controller__number > li {
    font-size: 12px;
  }
}

.p-top-news {
  padding: 0 20px;
  margin-bottom: 118px;
}
.p-top-news .p-top-headline {
  margin-left: 23.5px;
}
.p-top-news__link {
  margin-top: 15px;
  text-align: center;
}
.p-top-news__link-btn {
  display: inline-block;
  width: 180px;
  border-bottom: 1px solid #e6ad37;
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 11px;
  line-height: 1.75;
  letter-spacing: 0.15em;
  padding: 14px 0;
  text-align: center;
}
@media (min-width: 897px) {
  .p-top-news {
    width: 1280px;
    margin: auto;
    margin-bottom: 144px;
    padding: 0 185.5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .p-top-news .p-top-headline {
    margin-top: 50px;
    margin-left: 0;
  }
  .p-top-news .c-news-box-list {
    width: 680px;
  }
  .p-top-news__link {
    width: 100%;
    text-align: right;
    margin-top: 20px;
  }
  .p-top-news__link-btn {
    width: 160px;
    font-size: 13px;
    padding: 18px 0;
    position: relative;
    border-bottom-color: #ebebeb;
  }
  .p-top-news__link-btn::after {
    content: "";
    display: block;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -1px;
    left: 0;
    background: #e6ad37;
    transition: 0.5s;
  }
  .p-top-news__link-btn:hover {
    color: #333;
  }
  .p-top-news__link-btn:hover::after {
    width: 100%;
  }
}

.p-top-about {
  background: url(../images/top/about@sp.jpg) top center no-repeat;
  background-size: auto 442px;
  background-position-x: calc(50% + 22px);
  position: relative;
  padding-top: 490px;
  z-index: 1;
}
.p-top-about__safety {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(calc(-50% - 83px));
}
.p-top-about__safety > img {
  width: 210px;
}
.p-top-about .p-top-headline {
  position: absolute;
  top: 285px;
  left: 50%;
  transform: translateX(calc(-50% + 46px));
}
.p-top-about__catch-copy {
  font-family: HiraMinProN-W3, "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 21px;
  line-height: 1.666;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: 42px;
  padding: 0 20px;
}
.p-top-about__catch-copy span {
  display: inline-block;
  white-space: nowrap;
}
.p-top-about__message {
  font-size: 11px;
  line-height: 2.454;
  letter-spacing: 0.05em;
  padding: 0 20px;
  text-align: center;
  margin-bottom: 32.5px;
}
.p-top-about__link {
  position: relative;
  z-index: 1;
  text-align: center;
}
@media (min-width: 897px) {
  .p-top-about {
    background-image: url(../images/top/about.jpg);
    background-size: auto 765px;
    background-position-x: calc(50% - 10px);
    padding-top: 755px;
  }
}
@media only screen and (min-width: 897px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 897px) and (-o-min-device-pixel-ratio: 2/1), only screen and (min-width: 897px) and (min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min-resolution: 192dpi), only screen and (min-width: 897px) and (min-resolution: 2dppx) {
  .p-top-about {
    background-image: url(../images/top/about@2x.jpg);
  }
}
@media (min-width: 897px) {
  .p-top-about__safety {
    top: 565px;
    transform: translateX(calc(-50% - 348px));
  }
  .p-top-about__safety > img {
    width: 368px;
  }
  .p-top-about .p-top-headline {
    top: 182px;
    transform: translateX(calc(-50% + 331px));
  }
  .p-top-about__catch-copy {
    font-size: 28px;
    line-height: 1.642;
    margin-bottom: 48px;
  }
  .p-top-about__message {
    font-size: 14px;
    line-height: 2.571;
    margin-bottom: 32.5px;
  }
  .p-top-about__link {
    text-align: right;
  }
  .p-top-about__link .c-button-circle {
    margin-right: 276px;
  }
}

.p-top-brand {
  margin-top: 147.5px;
  background: #fcf8f2;
  position: relative;
}
.p-top-brand::before {
  content: "";
  display: block;
  width: 100%;
  height: 221px;
  background: url(../images/top/brand-leaf@sp.png) left top no-repeat;
  background-size: auto 100%;
  position: absolute;
  top: -120px;
  left: 0;
  z-index: 0;
}
.p-top-brand::after {
  content: "";
  display: block;
  width: 100%;
  height: 233.5px;
  background: url(../images/top/brand-flower@sp.png) right bottom no-repeat;
  background-size: auto 100%;
  position: absolute;
  bottom: -69px;
  right: 0;
  z-index: 0;
}
.p-top-brand__inner {
  padding-top: 218.5px;
  padding-bottom: 60px;
  position: relative;
  z-index: 1;
}
.p-top-brand .p-top-headline {
  margin: auto;
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
  padding-left: 0;
  padding-top: 85px;
  font-size: 24px;
}
.p-top-brand .p-top-headline::before {
  left: 50%;
  transform: translateX(-50%);
}
.p-top-brand .p-top-headline::after {
  width: 56.5px;
  left: 22px;
  top: 58px;
}
.p-top-brand .c-brand-box-list {
  margin-bottom: 20px;
  position: relative;
  z-index: 1;
}
.p-top-brand__link {
  position: relative;
  text-align: center;
  z-index: 1;
}
@media (min-width: 897px) {
  .p-top-brand {
    margin-top: 147.5px;
  }
  .p-top-brand::before {
    height: 411px;
    background-image: url(../images/top/brand-leaf.png);
    top: -224px;
  }
}
@media only screen and (min-width: 897px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 897px) and (-o-min-device-pixel-ratio: 2/1), only screen and (min-width: 897px) and (min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min-resolution: 192dpi), only screen and (min-width: 897px) and (min-resolution: 2dppx) {
  .p-top-brand::before {
    background-image: url(../images/top/brand-leaf@2x.png);
  }
}
@media (min-width: 897px) {
  .p-top-brand::after {
    height: 582.5px;
    background-image: url(../images/top/brand-flower.png);
    bottom: -109px;
    background-position: right -29px center;
  }
}
@media only screen and (min-width: 897px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 897px) and (-o-min-device-pixel-ratio: 2/1), only screen and (min-width: 897px) and (min-device-pixel-ratio: 2), only screen and (min-width: 897px) and (min-resolution: 192dpi), only screen and (min-width: 897px) and (min-resolution: 2dppx) {
  .p-top-brand::after {
    background-image: url(../images/top/brand-flower@2x.png);
  }
}
@media (min-width: 897px) {
  .p-top-brand__inner {
    padding-top: 218.5px;
    padding-bottom: 77px;
  }
  .p-top-brand .p-top-headline {
    margin: auto;
    position: absolute;
    top: 50px;
    left: 50%;
    transform: translateX(-50%);
    padding-left: 0;
    padding-top: 85px;
    font-size: 24px;
  }
  .p-top-brand .p-top-headline::before {
    left: 50%;
    transform: translateX(-50%);
  }
  .p-top-brand .p-top-headline::after {
    width: 56.5px;
    left: 22px;
    top: 58px;
  }
  .p-top-brand .c-brand-box-list {
    margin-bottom: 40px;
  }
}

.p-top-category {
  padding-top: 64px;
  padding-bottom: 16px;
}
.p-top-category__title {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 1.75;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: 33.5px;
}
@media (min-width: 897px) {
  .p-top-category {
    padding-top: 72px;
    padding-bottom: 88.5px;
  }
  .p-top-category__title {
    font-size: 30px;
    margin-bottom: 37.5px;
  }
}

.p-brand-headline {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 1.75;
  letter-spacing: 0.2em;
  padding: 83px 0 47px;
  text-align: center;
}
@media (min-width: 897px) {
  .p-brand-headline {
    font-size: 30px;
  }
}

.p-brand-movie {
  width: 100%;
  position: relative;
  margin: 47px 0 30px;
}
.p-brand-movie::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(51, 51, 51, 0.3);
  z-index: 1;
}
.p-brand-movie::after {
  content: "";
  display: block;
  width: 61px;
  height: 61px;
  background: url(../images/brand/movie@sp.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.p-brand-movie img {
  width: 100%;
}
@media (min-width: 897px) {
  .p-brand-movie {
    max-height: 560px;
    overflow: hidden;
    cursor: pointer;
    margin: 73px 0 80px;
  }
  .p-brand-movie::before {
    transition: 1s;
  }
  .p-brand-movie::after {
    width: 98px;
    height: 98px;
    background-image: url(../images/brand/movie.png);
  }
  .p-brand-movie img {
    max-height: 560px;
    object-fit: cover;
    font-family: "object-fit: cover;";
    transition: 2s;
  }
  .p-brand-movie:hover::before {
    opacity: 0;
  }
  .p-brand-movie:hover img {
    transform: scale(1.1);
  }
}

.p-brand-profile {
  text-align: center;
  padding: 33px 20px;
}
.p-brand-profile__name {
  margin-bottom: 35px;
  font-weight: 400;
}
.p-brand-profile__logo {
  margin-bottom: 17.5px;
}
.p-brand-profile__logo img {
  max-width: 50%;
}
.p-brand-profile__kana {
  font-size: 11px;
  line-height: 1.363;
  letter-spacing: 0.1em;
}
.p-brand-profile__catch {
  font-family: HiraMinProN-W3, "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;
  font-size: 20px;
  line-height: 2;
  letter-spacing: 0.2em;
}
.p-brand-profile__catch-detail {
  font-size: 12px;
  line-height: 3.333;
  letter-spacing: 0.05em;
}
@media (min-width: 897px) {
  .p-brand-profile {
    width: 1000px;
    margin: auto;
    padding: 85px 0;
  }
  .p-brand-profile__name {
    margin-bottom: 35px;
    font-weight: 400;
  }
  .p-brand-profile__logo {
    margin-bottom: 17.5px;
  }
  .p-brand-profile__logo img {
    max-width: 250px;
  }
  .p-brand-profile__kana {
    font-size: 13px;
    line-height: 1.307;
  }
  .p-brand-profile__catch {
    font-size: 28px;
  }
  .p-brand-profile__catch-detail {
    font-size: 15px;
    line-height: 3.733;
  }
}

.p-brand-color-chart {
  padding: 0 20px 40px;
}
.p-brand-color-chart__img {
  width: 100%;
}
.p-brand-color-chart__zoom-in {
  text-align: right;
  margin: 10px 0;
}
.p-brand-color-chart__zoom-in svg {
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
}
.p-brand-color-chart__zoom-in svg .st0 {
  fill: currentColor;
}
.p-brand-color-chart__zoom-in span {
  vertical-align: middle;
}
@media (min-width: 897px) {
  .p-brand-color-chart {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
  }
}

.p-brand-detail {
  background: #f7f7f7;
  padding: 66px 20px;
}
.p-brand-detail__group + .p-brand-detail__group {
  margin-top: 32px;
}
.p-brand-detail__group.--multi {
  display: flex;
  flex-direction: column;
  gap: 25px 32px;
}
.p-brand-detail__group-title {
  font-family: Jost, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  font-size: 22px;
  line-height: 1.75;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: 20px;
  width: 100%;
}
@media (min-width: 897px) {
  .p-brand-detail {
    padding: 93px 160px;
    width: 1100px;
    margin: 0 auto 168px;
  }
  .p-brand-detail__group + .p-brand-detail__group {
    margin-top: 40px;
  }
  .p-brand-detail__group.--multi {
    flex-direction: row;
    justify-content: center;
    gap: 30px;
  }
  .p-brand-detail__group-title {
    font-size: 30px;
    margin-bottom: 24px;
  }
}

.p-brand-detail-box__img {
  position: relative;
  background: #fff;
}
.p-brand-detail-box__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.p-brand-detail-box__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.p-brand-detail-box__title {
  font-size: 13px;
  line-height: 1.538;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 0 10px;
  margin: 19px 0;
}
.p-brand-detail-box__text {
  font-size: 11px;
  line-height: 1.636;
  letter-spacing: 0.05em;
  padding: 0 10px;
}
@media (min-width: 897px) {
  .p-brand-detail-box__title {
    font-size: 16px;
    line-height: 1.5;
    padding: 0;
    margin: 16px 0;
    min-height: 3em;
    display: flex;
    align-items: center;
  }
  .p-brand-detail-box__title span {
    width: 100%;
  }
  .p-brand-detail-box__text {
    font-size: 13px;
    line-height: 1.769;
    padding: 0;
  }
}

.p-brand-detail-box-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px 10px;
}
.p-brand-detail-box-list .p-brand-detail-box {
  width: calc((100% - 10px) / 2);
}
@media (min-width: 897px) {
  .p-brand-detail-box-list {
    gap: 65px 30px;
  }
  .p-brand-detail-box-list .p-brand-detail-box {
    width: 240px;
  }
}

.p-brand-list {
  padding: 0 20px;
  background-color: #F2F2F2;
  padding-bottom: 61.8px;
}

.p-brand-logo {
  padding: 15px;
  background-color: #fff;
  position: relative;
}
.p-brand-logo::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(230, 173, 55, 0.1);
  z-index: 1;
  opacity: 0;
  transition: opacity 0.5s;
}
.p-brand-logo__img {
  position: relative;
}
.p-brand-logo__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.p-brand-logo__img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 100%;
  max-height: 100%;
  transition: transform 1s;
}
.p-brand-logo:hover::before {
  opacity: 1;
}
.p-brand-logo:hover img {
  transform: translate(-50%, -50%) scale(1.1);
}

.p-brand-logo-list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}
.p-brand-logo-list .p-brand-logo {
  width: calc((100% - 8px) / 3);
  margin-bottom: 4px;
  margin-right: 4px;
}
.p-brand-logo-list .p-brand-logo:nth-of-type(3n) {
  margin-right: 0;
}
@media (min-width: 897px) {
  .p-brand-logo-list {
    width: 1000px;
  }
  .p-brand-logo-list .p-brand-logo {
    width: calc((100% - 40px) / 5);
    margin-bottom: 10px;
    margin-right: 10px;
  }
  .p-brand-logo-list .p-brand-logo:nth-of-type(3n) {
    margin-right: 10px;
  }
  .p-brand-logo-list .p-brand-logo:nth-of-type(5n) {
    margin-right: 0;
  }
}

.p-brand-back-to {
  margin: 0 auto;
  text-align: center;
  border-top: 1px solid #f7f7f7;
  padding: 42.9px 30px 44.15px;
}
.p-brand-back-to__link {
  font-size: 0;
}
.p-brand-back-to__link svg {
  width: 11.2px;
  height: 11.2px;
  vertical-align: middle;
  margin-right: 23px;
}
.p-brand-back-to__link svg .st0 {
  fill: currentColor;
}
.p-brand-back-to__link span {
  font-size: 17px;
  line-height: 1.75;
  letter-spacing: 0.15em;
  vertical-align: middle;
}
@media (min-width: 897px) {
  .p-brand-back-to {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .p-brand-back-to__link svg {
    width: 14px;
    height: 14px;
    margin-right: 24.5px;
  }
  .p-brand-back-to__link span {
    font-size: 24px;
  }
}

.p-brand-qa {
  padding: 0 20px 64px;
}
.p-brand-qa__description {
  text-align: center;
  font-size: 14px;
  margin-bottom: 24px;
}
.p-brand-qa__description span {
  display: inline-block;
}
.p-brand-qa__description img {
  height: 0.8em;
  vertical-align: baseline;
}
@media (min-width: 897px) {
  .p-brand-qa {
    width: 1280px;
    padding-left: 140px;
    padding-right: 140px;
    padding-bottom: 125px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-brand-qa__description {
    font-size: 18px;
    margin-bottom: 32px;
  }
}

@media (min-width: 897px) {
  .p-brand-detail + .p-brand-qa {
    margin-top: -120px;
  }
}

.p-brand-k-fix-spec {
  width: calc(100% + 39px);
  margin-left: -39px;
  overflow: auto;
  padding-top: 12px;
}
.p-brand-k-fix-spec figcaption {
  display: none;
}
.p-brand-k-fix-spec table {
  width: 1000px;
  border-collapse: collapse;
}
.p-brand-k-fix-spec th,
.p-brand-k-fix-spec td {
  width: 9.0909090909%;
  font-size: 12px;
  text-align: center;
}
.p-brand-k-fix-spec th:first-child,
.p-brand-k-fix-spec td:first-child {
  position: sticky;
  left: 0;
  top: 0;
  height: 100%;
  background: #fff;
  z-index: 2;
}
.p-brand-k-fix-spec th:first-child::before,
.p-brand-k-fix-spec td:first-child::before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -1px;
  background: #dddddd;
}
.p-brand-k-fix-spec th:first-child span,
.p-brand-k-fix-spec td:first-child span {
  width: 100%;
}
.p-brand-k-fix-spec tbody td,
.p-brand-k-fix-spec thead tr:not(.\--type) th:nth-of-type(n+2) {
  border-left: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
}
.p-brand-k-fix-spec tbody th,
.p-brand-k-fix-spec tbody td {
  height: 60px;
  padding: 5px;
}
.p-brand-k-fix-spec tbody tr:nth-of-type(odd) th,
.p-brand-k-fix-spec tbody tr:nth-of-type(odd) td {
  background: #F2F2F2;
}
.p-brand-k-fix-spec .\--type th:not(:first-child) {
  position: relative;
  border: 1px solid #dddddd;
  border-bottom: 0;
}
.p-brand-k-fix-spec .\--type span {
  display: inline-block;
  padding: 0 1em;
  background: #fff;
  transform: translateY(-50%);
  position: relative;
  z-index: 1;
}
.p-brand-k-fix-spec .\--thumb th {
  padding: 5px 0 10px;
}
.p-brand-k-fix-spec .\--thumb img {
  width: 100%;
}
.p-brand-k-fix-spec .\--name th {
  padding: 8px 5px;
  color: #fff;
}
.p-brand-k-fix-spec .\--name .\--yellow {
  background: #f8b62c;
}
.p-brand-k-fix-spec .\--name .\--red {
  background: #e42f36;
}
.p-brand-k-fix-spec .\--name .\--black {
  background: #000;
}
.p-brand-k-fix-spec .\--name .\--liquid {
  background: #0f6db2;
}
.p-brand-k-fix-spec .\--name .\--emulsion {
  background: #159c6c;
}
.p-brand-k-fix-spec .\--name .\--white {
  color: inherit;
}
.p-brand-k-fix-spec .\--name .\--platinum {
  background: #bbbcbc;
}
.p-brand-k-fix-spec .\--name .\--direct {
  background: #9f937c;
}
.p-brand-k-fix-spec .\--name .\--bridge {
  background: #8b5c99;
}
.p-brand-k-fix-spec .\--name .\--keeper {
  background: #e4ebfa;
  color: inherit;
}
.p-brand-k-fix-spec .\--use th {
  padding: 5px 0;
  font-size: 12px;
}
.p-brand-k-fix-spec .\--use th.\--small {
  font-size: 11px;
}
@media (min-width: 897px) {
  .p-brand-k-fix-spec {
    margin-left: -72px;
    width: 1000px;
  }
  .p-brand-k-fix-spec table {
    width: 100%;
  }
}

.p-brand-k-fix-damage {
  width: calc(100% + 39px);
  margin-left: -39px;
  overflow: auto;
}
.p-brand-k-fix-damage figcaption {
  display: none;
}
.p-brand-k-fix-damage table {
  width: 1000px;
  border-collapse: collapse;
}
.p-brand-k-fix-damage th,
.p-brand-k-fix-damage td {
  font-size: 12px;
}
.p-brand-k-fix-damage th:nth-child(1),
.p-brand-k-fix-damage td:nth-child(1) {
  width: 100px;
  position: sticky;
  left: 0;
  top: 0;
  background: #fff;
  z-index: 2;
  height: 100%;
}
.p-brand-k-fix-damage th:nth-child(1)::before,
.p-brand-k-fix-damage td:nth-child(1)::before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -1px;
  background: #dddddd;
}
.p-brand-k-fix-damage th:nth-child(n+2),
.p-brand-k-fix-damage td:nth-child(n+2) {
  width: 150px;
}
.p-brand-k-fix-damage th {
  font-size: 14px;
}
.p-brand-k-fix-damage thead th {
  height: 40px;
}
.p-brand-k-fix-damage thead th:nth-of-type(3) {
  background-color: rgba(255, 0, 0, 0.1);
}
.p-brand-k-fix-damage thead th:nth-of-type(4) {
  background-color: rgba(255, 0, 0, 0.2);
}
.p-brand-k-fix-damage thead th:nth-of-type(5) {
  background-color: rgba(255, 0, 0, 0.3);
}
.p-brand-k-fix-damage thead th:nth-of-type(6) {
  background-color: rgba(255, 0, 0, 0.4);
}
.p-brand-k-fix-damage thead th:nth-of-type(7) {
  background-color: rgba(255, 0, 0, 0.5);
}
.p-brand-k-fix-damage tbody td,
.p-brand-k-fix-damage thead th:nth-of-type(n+2) {
  border-left: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
}
.p-brand-k-fix-damage tbody th,
.p-brand-k-fix-damage tbody td {
  height: 60px;
  padding: 10px;
}
.p-brand-k-fix-damage tbody tr:nth-of-type(odd) th,
.p-brand-k-fix-damage tbody tr:nth-of-type(odd) td {
  background: #F2F2F2;
}
.p-brand-k-fix-damage tbody strong {
  color: red;
  font-weight: 400;
}
@media (min-width: 897px) {
  .p-brand-k-fix-damage {
    margin-left: -72px;
    width: 1000px;
  }
  .p-brand-k-fix-damage table {
    width: 100%;
  }
}

.p-brand-supervisor {
  text-align: center;
  padding: 33px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 20px;
}
.p-brand-supervisor__info {
  order: 2;
}
.p-brand-supervisor__info-top {
  display: flex;
  justify-content: flex-end;
}
.p-brand-supervisor__katagaki {
  font-size: 14px;
  line-height: 1.2;
  text-align: right;
  margin-top: 18px;
}
.p-brand-supervisor__grico {
  margin-left: 10px;
}
.p-brand-supervisor__grico img {
  width: 120px;
  height: 60px;
  object-fit: cover;
}
.p-brand-supervisor__img {
  order: 1;
  flex-shrink: 0;
  width: 60%;
  max-width: 260px;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
}
.p-brand-supervisor__img::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.p-brand-supervisor__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-brand-supervisor__name {
  font-size: 22px;
  line-height: 1.5;
  font-weight: 700;
}
@media (min-width: 897px) {
  .p-brand-supervisor {
    width: 1000px;
    margin: auto;
    padding: 0 0 85px;
    flex-direction: row;
    gap: 100px;
  }
  .p-brand-supervisor__info {
    order: 1;
  }
  .p-brand-supervisor__katagaki {
    font-size: 18px;
    margin-top: 26px;
  }
  .p-brand-supervisor__grico img {
    width: 150px;
    height: 80px;
  }
  .p-brand-supervisor__img {
    order: 2;
    width: 260px;
    max-width: 260px;
  }
  .p-brand-supervisor__name {
    font-size: 36px;
  }
}

.p-brand-egao {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-block: -20px 50px;
  gap: 5px;
}
.p-brand-egao__text {
  font-size: 18px;
  display: inline-flex;
  align-items: center;
}
.p-brand-egao__logo {
  font-size: 0;
}
.p-brand-egao__logo-img {
  width: auto;
  height: 20px;
}
@media (min-width: 897px) {
  .p-brand-egao {
    margin-block: -70px 85px;
  }
  .p-brand-egao__text {
    font-size: 22px;
  }
  .p-brand-egao__logo-img {
    height: 28px;
  }
}

.p-brand-detail-notes {
  padding: 12px 20px;
  text-align: center;
}
@media (min-width: 897px) {
  .p-brand-detail-notes {
    width: 1100px;
    margin-inline: auto;
    margin-block: -120px 120px;
  }
}

@media (min-width: 897px) {
  .p-news-list-main {
    padding-left: 140px;
    padding-right: 140px;
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
  }
  .p-news-list-main .c-news-box-list {
    margin-bottom: 60px;
  }
}

.p-shop-list__not-found {
  text-align: center;
  font-size: 15px;
  line-height: 1.75;
  letter-spacing: 0.1em;
  padding: 3em 0;
  margin-bottom: 5em;
  display: none;
}
@media (min-width: 897px) {
  .p-shop-list {
    width: 820px;
    margin: auto;
  }
  .p-shop-list__not-found {
    font-size: 18px;
  }
}

.p-error {
  text-align: center;
  padding: 0 20px 50px;
}
.p-error__message {
  font-size: 14px;
  line-height: 2;
  margin-bottom: 2em;
}
.p-error__page-top {
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 897px) {
  .p-error {
    padding: 0 0 100px;
  }
  .p-error__message {
    font-size: 16px;
  }
  .p-error__page-top {
    font-size: 16px;
  }
}

.u-text-left {
  text-align: left;
}

.u-text-center {
  text-align: center;
}

.u-text-right {
  text-align: right;
}

.u-text-nowrap {
  white-space: nowrap;
}

@media (min-width: 897px) {
  .u-site-max-width {
    max-width: 1280px;
  }
}

.u-clearfix::after {
  content: "";
  display: block;
  clear: both;
}

@media (min-width: 897px) {
  .u-only-sp {
    display: none;
  }
}
@media (max-width: 896px) {
  .u-only-pc {
    display: none;
  }
}
.u-fadein {
  opacity: 0;
}

.u-fadein-done {
  animation: fadeIn 2s ease forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/*# sourceMappingURL=style.css.map */
