@charset "UTF-8";
/* # =================================================================
# custom.css
# app.css（dev/dist/assets/css/app.css のビルド結果）との差分。app.css の後に読み込むこと
# 基準: ftp/assets/css/app_20251010.css
# ================================================================= */

/* app_20251010.css で削除されたルールの打ち消し */
.p-homeShopOnlineItem:nth-child(1) .p-homeShopOnlineLogo {
  margin-top: revert;
}

.p-homeShopOnlineItem:nth-child(2) .p-homeShopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem:nth-child(2) .p-homeShopOnlineLogo {
    width: 6.5rem;
  }
}

.p-homeShopOnlineItem:nth-child(3) .p-homeShopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem:nth-child(3) .p-homeShopOnlineLogo {
    width: 6.5rem;
  }
}

.p-homeShopOnlineItem:nth-child(4) .p-homeShopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem:nth-child(4) .p-homeShopOnlineLogo {
    width: 6.5rem;
  }
}

.p-homeShopOnlineItem:nth-child(5) .p-homeShopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem:nth-child(5) .p-homeShopOnlineLogo {
    width: 6.5rem;
  }
}

@media screen and (max-width: 768px) {
  .p-giftItem {
    width: revert;
  }
}

.p-giftItemNum {
  display: revert;
  align-items: revert;
  gap: revert;
  line-height: revert;
}

.p-giftItemNum span:first-of-type {
  font-size: revert;
}

.p-giftItemNum em {
  font-size: revert;
  font-family: revert;
  position: revert;
}

.p-giftItemNum em::before {
  content: revert;
  width: revert;
  height: revert;
  background-color: revert;
  position: revert;
  top: revert;
  left: revert;
  transform: revert;
}

.p-giftItemNum em span {
  font-size: revert;
  font-family: revert;
  font-weight: revert;
}

.p-giftItemPanelImage {
  width: revert;
  position: revert;
  top: revert;
  left: revert;
  transform: revert;
}

.p-giftItemPanelText .item {
  display: revert;
  flex-direction: revert;
  gap: revert;
}

@media screen and (max-width: 768px) {
  .p-giftItemPanelText .item {
    justify-content: revert;
    align-items: revert;
  }
}

.p-giftItemPanelText .item .name {
  font-size: revert;
}

.p-giftItemPanelText .item .type {
  font-size: revert;
}

.p-giftItemPanelFlex {
  display: revert;
  justify-content: revert;
  align-items: revert;
  margin-top: revert;
}

@media screen and (max-width: 768px) {
  .p-giftItemPanelFlex {
    flex-direction: revert;
    align-items: revert;
    margin-top: revert;
  }
}

.p-giftItemPanelFlex .num {
  line-height: revert;
}

.p-giftItemPanelFlex .num span:first-of-type {
  font-size: revert;
}

.p-giftItemPanelFlex .num span:first-of-type em {
  font-size: revert;
  font-family: revert;
}

.p-giftItemPanelFlex .num span:last-of-type {
  font-size: revert;
}

@media screen and (max-width: 768px) {
  .p-giftItemPanelFlex .c-button {
    margin-top: revert;
    width: revert;
  }
}

@media screen and (max-width: 768px) {
  .p-giftItemPanelFlex .c-button.--small {
    padding: 1.3rem 2.7rem;
  }
}

.p-giftItemPanelFlex .c-button.--cart .c-buttonCopy {
  font-size: clamp(14px, 1.6rem, 18px);
}

@media screen and (max-width: 768px) {
  .p-giftItemPanelFlex .c-button.--cart .c-buttonCopy {
    font-size: clamp(10px, 1.2rem, 14px);
  }
}

.p-shopOnlineItem:nth-child(1) .p-shopOnlineLogo {
  margin-top: revert;
}

.p-shopOnlineItem:nth-child(2) .p-shopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem:nth-child(2) .p-shopOnlineLogo {
    width: 6.5rem;
  }
}

.p-shopOnlineItem:nth-child(3) .p-shopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem:nth-child(3) .p-shopOnlineLogo {
    width: 6.5rem;
  }
}

.p-shopOnlineItem:nth-child(4) .p-shopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem:nth-child(4) .p-shopOnlineLogo {
    width: 6.5rem;
  }
}

.p-shopOnlineItem:nth-child(5) .p-shopOnlineLogo {
  width: 8.5rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem:nth-child(5) .p-shopOnlineLogo {
    width: 6.5rem;
  }
}

@media screen and (max-width: 768px) {
  small {
    font-size: clamp(8px, 1.0rem, 10px);
  }
}

:root {
  --c-theme: #D08E98;
  --c-background-primary: #F8EEF0;
  --c-background-secondary: #F2F2F2;
  --c-contact-section: #F2F2F2;
  --c-page-button-txt: #FFF;
  --c-page-button-background: #D08E98;
  --c-swiper-pagination-bullet: #FFF;
  --c-contact-form-background: var(--c-background-secondary);
  --c-icon-fill: var(--c-theme);
  --c-bullet-active: var(--c-theme);
  --c-bullet: var(--c-background-secondary);
  --c-change-grey-background: var(--c-background-secondary);
  --c-panel-hover-gradient: linear-gradient(125deg, var(--c-background-secondary) 25%, #EAEAEA 40%, #FFFFFF 75%, var(--c-background-secondary) 100%);
  --c-online-shop-head: #FFF;
  --border-radius-max: 0;
  --border-radius-lg: 0;
  --border-radius-md: 0;
  --border-radius-sm: 0;
  --border-radius-required: 0;
  --detail-point-img-scale: 1.025;
  --online-shop-background: url(../image/common/bg_onlineshop.webp) center/cover no-repeat;
  --online-shop-background-sp: url(../image/common/bg_onlineshop_sp.webp);
  --kv-text-line: none;
}

.c-button.--cart::before {
  background: var(--c-theme);
}

.c-button.--more {
  border-radius: var(--border-radius-max);
}

.c-button.--more::before {
  background: var(--c-theme);
}

.c-awardHead {
  position: relative;
}

.c-awardHead small {
  position: absolute;
  right: 5rem;
  bottom: 0.5rem;
  color: #9D9D9D;
  font-size: clamp(9px, 1.1rem, 13px);
}

@media screen and (max-width: 768px) {
  .c-awardHead small {
    right: 2rem;
  }
}

.c-awardLoopLink {
  position: absolute;
  right: 5px;
  bottom: 2px;
  font-size: 9px;
}

.c-pageBtnsList.--2col {
  justify-content: center;
}

.c-pageBtnsItem {
  color: var(--c-page-button-txt);
}

.c-pageBtnsItem:hover {
  color: var(--c-page-button-txt);
}

.c-pageBtnsItem::before {
  background-color: var(--c-page-button-background);
  border-radius: var(--border-radius-sm);
}

.c-pageBtnsList.--recruit {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

@media screen and (max-width: 768px) {
  .c-pageBtnsList.--recruit {
    grid-template-columns: repeat(2, 1fr);
    flex-wrap: nowrap;
  }
}

.c-pageBtnsList.--recruit .c-pageBtnsItem {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-pageBtnsList.--recruit .c-pageBtnsItem {
    width: 100%;
  }
}

.c-details__text.--multi-items {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

.u-sp-show {
  display: none;
}

@media screen and (max-width: 768px) {
  .u-sp-show {
    display: block;
  }
}

.u-titleH2.--large {
  font-size: clamp(20px, 2.2rem, 24px);
}

@media screen and (max-width: 768px) {
  .u-titleH2.--large {
    font-size: clamp(16px, 1.8rem, 20px);
  }
}

.u-titleH2.--weight-400 {
  font-weight: 400;
}

.u-titleH2.--pink {
  color: var(--c-theme);
}

.l-headerLogin,
.l-headerCart {
  position: relative;
}

.l-headerLogin:before,
.l-headerCart:before {
  content: "";
  position: absolute;
  top: -15px;
  right: -15px;
  bottom: -15px;
  left: -15px;
}

@media screen and (max-width: 768px) {
  .l-headerLogin:before,
  .l-headerCart:before {
    top: -10px;
    right: -10px;
    bottom: -10px;
    left: -10px;
  }
}

@media screen and (max-width: 768px) {
  .l-headerLogin:before {
    left: 0;
    top: -15px;
    bottom: -15px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .l-headerLogin:hover .l-headerLoginSvg {
    fill: var(--c-theme);
  }
}

@media screen and (max-width: 768px) {
  .l-headerLogin {
    position: absolute;
  }
}

@media (hover: hover) and (pointer: fine) {
  .l-headerCart:hover .l-headerCartSvg {
    fill: var(--c-theme);
  }
}

@media screen and (max-width: 768px) {
  .l-headerCart {
    position: absolute;
  }
}

@media screen and (min-width: 769px) and (hover: hover) and (pointer: fine) {
  .l-footerNavLoginLink:hover .l-footerNavLoginLinkSVG {
    fill: var(--c-theme);
  }
}

.l-pagecontainer .swiper-pagination .swiper-pagination-bullet {
  background-color: var(--c-bullet);
}

.l-pagecontainer .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--c-bullet-active);
}

.l-hambergerMenuBody {
  padding: 4rem 0;
  height: auto;
}

.p-homeKvSliderText .type::before {
  content: var(--kv-text-line);
}

.p-homeCampaign::before,
.p-homeCampaign::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #8E8E8E;
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: left;
  transform: scaleX(0);
  transition: transform 0.8s cubic-bezier(0.5, 1, 0.89, 1) 0.15s;
  z-index: 20;
}

.p-homeCampaign::after {
  top: auto;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .p-homeProductsImage {
    aspect-ratio: 390/260;
  }
}

.p-homeProductsArchiveTabBtn[aria-selected=true] {
  background-color: var(--c-theme);
  border: 1px solid var(--c-theme);
}

.p-homeProductsArchivePanelItem {
  background-color: var(--c-change-grey-background);
  border-radius: var(--border-radius-md);
}

@media (hover: hover) and (pointer: fine) {
  .p-homeProductsArchivePanelItem:hover {
    background-image: var(--c-panel-hover-gradient);
  }
}

@media screen and (max-width: 768px) {
  .p-homeProductsArchivePanelItem {
    border-radius: var(--border-radius-md);
  }
}

.p-homeTvCM__video {
  width: 100%;
  height: auto;
  aspect-ratio: 1920/1080;
}

.p-homeBg {
  aspect-ratio: 1440/679;
}

@media screen and (max-width: 768px) {
  .p-homeBg {
    aspect-ratio: 390/390;
  }
}

.p-homeAboutTitle {
  color: var(--c-theme);
}

.p-homeShop {
  background-color: revert;
  background: var(--online-shop-background);
}

@media screen and (max-width: 768px) {
  .p-homeShop {
    background-image: var(--online-shop-background-sp);
  }
}

@media screen and (min-width: 769px) {
  .p-homeShopList {
    border-radius: var(--border-radius-md);
  }
}

@media screen and (max-width: 768px) {
  .p-homeShopListHead .u-titleH2.--en {
    color: var(--c-online-shop-head);
  }
}

.p-homeShopListLogo {
  width: calc(16% - 2.5rem);
}

@media screen and (max-width: 768px) {
  .p-homeShopListLogo {
    width: calc(50% - 1.25rem);
  }
}

.p-homeShopOnlineHead {
  color: var(--c-online-shop-head);
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineUl {
    justify-content: revert;
  }
}

.p-homeShopOnlineItem.--yunth .p-homeShopOnlineLogo {
  margin-top: 0.5em;
}

.p-homeShopOnlineItem.--rakuten .p-homeShopOnlineLogo {
  width: 9.5rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem.--rakuten .p-homeShopOnlineLogo {
    width: 7.5rem;
  }
}

.p-homeShopOnlineItem.--amazon .p-homeShopOnlineLogo {
  width: 9.5rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem.--amazon .p-homeShopOnlineLogo {
    width: 7.5rem;
  }
}

.p-homeShopOnlineItem.--yahoo .p-homeShopOnlineLogo {
  width: 12rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem.--yahoo .p-homeShopOnlineLogo {
    width: 10.5rem;
  }
}

.p-homeShopOnlineItem.--qoo10 .p-homeShopOnlineLogo {
  width: 12rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem.--qoo10 .p-homeShopOnlineLogo {
    width: 10.5rem;
  }
}

.p-homeShopOnlineItem.--and-st .p-homeShopOnlineLogo {
  width: 14rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem.--and-st .p-homeShopOnlineLogo {
    width: 11.5rem;
  }
}

.p-homeShopOnlineItem.--atcosme .p-homeShopOnlineLogo {
  width: 12rem;
}

@media screen and (max-width: 768px) {
  .p-homeShopOnlineItem.--atcosme .p-homeShopOnlineLogo {
    width: 10.5rem;
  }
}

.p-homeShopOnline.--no-yunth .p-homeShopOnlineItem {
  width: calc((100% / 6) - (1.9rem - 0.317rem));
}

@media screen and (max-width: 768px) {
  .p-homeShopOnline.--no-yunth .p-homeShopOnlineItem {
    width: calc((100% / 3) - 1rem);
  }
}

.p-productsArchiveTabBtn.--current {
  background-color: var(--c-theme);
}

.p-productsArchivePanelItem {
  background-color: var(--c-change-grey-background);
  border-radius: var(--border-radius-md);
}

@media (hover: hover) and (pointer: fine) {
  .p-productsArchivePanelItem:hover {
    background-image: var(--c-panel-hover-gradient);
  }
}

@media screen and (max-width: 768px) {
  .p-productsArchivePanelItem {
    border-radius: var(--border-radius-md);
  }
}

.p-productsArchivePanelTags span {
  border-radius: var(--border-radius-max);
  background-color: var(--c-theme);
}

.p-productsArchivePanelTags span.new {
  color: var(--c-theme);
}

.p-productsDetailMainCategory {
  background-color: var(--c-background-primary);
  border-radius: var(--border-radius-max);
}

.p-productsDetailMainTabBtn svg path {
  fill: var(--c-background-primary);
}

.p-productsDetailMainPanelContent .p-productsDetailMainPanelContentHead,
.p-productsDetailMainPanelContent .p-productsDetailMainPanelContentBody {
  background-color: var(--c-background-primary);
}

.p-productsDetailMainPanelContentPrice .tag i {
  border-radius: var(--border-radius-max);
}

.p-productsDetailMainPanelContentPrice .tag i.pink {
  background-color: var(--c-theme);
}

.p-productsDetailDetailsTextBody .list li::before {
  background-color: var(--c-theme);
}

.p-productsDetailDetailsImage {
  border-radius: var(--border-radius-sm);
}

.p-productsDetailPointItem .thum {
  overflow: hidden;
}

.p-productsDetailPointItem .thum img {
  aspect-ratio: 499 / 250;
  object-fit: cover;
  transform: scale(var(--detail-point-img-scale));
}

@media screen and (max-width: 768px) {
  .p-productsDetailPointItem .note {
    font-size: clamp(10px, 1.0rem, 12px);
  }
}

.p-productsDetailFormulasItem {
  background-color: var(--c-background-primary);
  border-radius: var(--border-radius-max);
}

.p-productsDetailHowtouseIframe {
  height: auto;
}

.u-titleH2+.p-productsDetailHowtouseCol2 {
  margin-top: 3rem;
}

@media screen and (max-width: 768px) {
  .u-titleH2+.p-productsDetailHowtouseCol2 {
    margin-top: 3rem;
  }
}

.p-productsDetailFormulasList.--howtouse {
  margin-left: 0;
  margin-top: 2.2rem;
  gap: 3rem;
}

@media screen and (max-width: 768px) {
  .p-productsDetailFormulasList.--howtouse {
    gap: 1.5rem 1rem;
  }
}

.p-productsDetailFormulasList.--howtouse .p-productsDetailFormulasItem {
  width: auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

.p-productsDetailFormulasList.--howtouse .p-productsDetailFormulasItem:nth-child(2) {
  width: 24rem;
}

.p-productsDetailFormulasList.--howtouse.--120-01 {
  gap: 2rem;
}

@media screen and (max-width: 768px) {
  .p-productsDetailFormulasList.--howtouse.--120-01 {
    gap: 1.5rem 1rem;
  }
}

.p-productsDetailFormulasList.--howtouse.--120-01 .p-productsDetailFormulasItem {
  width: 16rem;
  text-align: center;
}

.p-productsDetailFormulasList.--howtouse.--120-01 .p-productsDetailFormulasItem:nth-child(2) {
  width: 28rem;
}

.p-productsDetailHowtouseBrush {
  margin-top: 5.7rem;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-productsDetailHowtouseBrush {
    margin-top: 4rem;
  }
}

.p-productsDetailHowtouseBrushThum {
  width: 14rem;
  position: absolute;
  top: 50%;
  left: -1rem;
  transform: translateY(-50%);
}

@media screen and (max-width: 1100px) {
  .p-productsDetailHowtouseBrushThum {
    width: 25%;
  }
}

@media screen and (max-width: 768px) {
  .p-productsDetailHowtouseBrushThum {
    width: 11rem;
    left: -1rem;
  }
}

.p-productsDetailHowtouseBrushBody {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 43.2rem;
  margin-left: 7.6rem;
  border: 1px solid #000;
  border-radius: 24px;
  padding: 0.8rem 3.5rem;
  padding-bottom: 1rem;
  padding-left: 7.1rem;
}

@media screen and (max-width: 1100px) {
  .p-productsDetailHowtouseBrushBody {
    width: 83%;
    padding: 1rem 3.5rem;
    padding-left: 9.1rem;
  }
}

@media screen and (max-width: 768px) {
  .p-productsDetailHowtouseBrushBody {
    padding: 1rem 1rem;
    width: 90%;
    padding-left: 7rem;
    margin-left: 10%;
  }
}

.p-productsDetailHowtouseBrushLead {
  font-size: clamp(18px, 2rem, 22px);
  font-weight: 400;
}

@media screen and (max-width: 768px) {
  .p-productsDetailHowtouseBrushLead {
    line-height: 1.3;
    font-size: clamp(13px, 1.5rem, 17px);
  }
}

.p-productsDetailHowtouseBrushCopy {
  font-size: clamp(12px, 1.4rem, 16px);
}

@media screen and (max-width: 768px) {
  .p-productsDetailHowtouseBrushCopy {
    margin-top: 0.4rem;
    font-size: 10px;
  }
}

.p-productsDetailHowtouseStep li:nth-child(n+2)::before {
  border-color: var(--c-icon-fill) transparent transparent transparent;
}

.p-productsDetailSeriesStepItem {
  border-radius: var(--border-radius-lg);
}

.p-productsDetailSeriesStepItem .tag {
  border-radius: var(--border-radius-max);
  background-color: var(--c-theme);
}

.p-productsDetailSeriesStepItem.--current {
  background-color: var(--c-background-primary);
}

.p-productsDetailSeriesStepItem .c-button {
  border-radius: 100vmax;
}

.p-productsDetailInfoList {
  background: #fff;
  padding-top: 11rem;
}

.p-productsDetailInfoListInner {
  display: flex;
  flex-direction: column;
  row-gap: 26px;
  padding-left: 22.7rem;
  padding-right: 22.7rem;
  width: 100%;
  margin-bottom: 0;
}

.p-productsDetailInfoItem {
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: clamp(14px, 1.6rem, 18px);
}

.p-productsDetailInfoItemTitle {
  font-size: clamp(14px, 1.6rem, 18px);
  font-weight: 400;
  line-height: 1.7;
  padding-top: 0.95rem;
  white-space: nowrap;
}

.p-productsDetailInfoItemBody {
  font-size: clamp(11px, 1.2rem, 13px);
  line-height: 2;
  background: var(--c-background-secondary);
  padding: clamp(12px, 1.4rem, 16px) clamp(33px, 3.5rem, 37px);
  border-radius: var(--border-radius-sm);
}

@media screen and (max-width: 768px) {
  .p-productsDetailInfoList {
    padding-top: 4rem;
  }
}

@media screen and (max-width: 768px) {
  .p-productsDetailInfoListInner {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

@media screen and (max-width: 768px) {
  .p-productsDetailInfoItem {
    grid-template-columns: auto;
    column-gap: 0;
    row-gap: 1rem;
  }
}

@media screen and (max-width: 768px) {
  .p-productsDetailInfoItemTitle {
    font-size: clamp(12px, 1.4rem, 16px);
    padding-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .p-productsDetailInfoItemBody {
    padding: 2rem;
  }
}

.p-aboutIntroPagination.swiper-pagination .swiper-pagination-bullet {
  background-color: var(--c-swiper-pagination-bullet);
}

.p-aboutDetail:not(:has(.p-aboutDetailMovie)) {
  padding: 15rem 0;
}

@media screen and (max-width: 768px) {
  .p-aboutDetail:not(:has(.p-aboutDetailMovie)) {
    padding: 9rem 0;
  }
}

.p-aboutDetail:not(:has(.p-aboutDetailMovie)) .p-aboutDetailOrigin {
  padding: 0;
}

.p-aboutDetailOriginName span {
  color: var(--c-theme);
}

.p-aboutPromisesItemTags li {
  border-radius: var(--border-radius-max);
  background-color: var(--c-theme);
}

.p-aboutProductList {
  background-color: var(--c-change-grey-background);
  border-radius: var(--border-radius-md);
}

.p-aboutProductItemImage {
  border-radius: var(--border-radius-sm);
}

.p-aboutBg {
  aspect-ratio: 1440/760;
}

@media screen and (max-width: 768px) {
  .p-aboutBg {
    aspect-ratio: 390/390;
  }
}

.p-informationCategoryBtn.c-button.--small.--current {
  background-color: var(--c-theme);
}

.p-informationPagination .c-button.--cercle {
  background-color: var(--c-background-primary);
}

.p-informationPagination .c-button.--cercle.--current {
  background-color: var(--c-theme);
}

@media (max-width: 768px) {
  .p-giftListOnlyPc {
    display: none;
  }
}

.p-giftListOnlySp {
  display: none;
}

@media (max-width: 768px) {
  .p-giftListOnlySp {
    display: block;
  }
}

.p-giftBudget {
  display: none;
}

@media (max-width: 768px) {
  .p-giftBudget {
    display: block;
    padding-top: 2rem;
  }
}

@media (max-width: 768px) {
  .p-giftBudgetSticky {
    position: sticky;
    z-index: 11;
    top: 70px;
    background: #fff;
    padding: 1rem 2rem;
  }
}

@media (max-width: 768px) {
  .p-giftBudgetTitle {
    font-weight: normal;
    text-align: center;
    line-height: 1;
    font-size: clamp(13px, 1.5rem, 17px);
  }
}

@media (max-width: 768px) {
  .p-giftSortList {
    display: flex;
    justify-content: center;
    column-gap: .6rem;
    margin-top: 1.5rem;
  }
}

@media (max-width: 768px) {
  .p-giftSortItem {
    display: flex;
    justify-content: center;
  }
}

@media (max-width: 768px) {
  .p-giftSortItemLink {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border: 1px solid currentColor;
    border-radius: 999em;
    padding: .6rem 1.65rem;
    cursor: pointer;
    font-size: clamp(10px, 1.2rem, 14px);
    line-height: 1;
    white-space: nowrap;
    width: 100%;
    text-align: center;
    transition: border 0.3s cubic-bezier(0.5, 1, 0.89, 1),
      color 0.3s cubic-bezier(0.5, 1, 0.89, 1);
  }
}

@media (max-width: 768px) {
  .p-giftSortItemLink::before {
    content: "";
    background: #EE9298;
    aspect-ratio: 1 / 1;
    width: 150%;
    height: auto;
    border-radius: 999px;
    transform: translate(-50%, 110%);
    transition: transform 1s cubic-bezier(0.22, 1, 0.36, 1);
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: -1;
  }
}

@media (max-width: 768px) {
  .p-giftSortItemLink.is-current {
    color: #fff;
    border: 1px solid transparent;
  }
}

@media (max-width: 768px) {
  .p-giftSortItemLink.is-current::before {
    transform: translate(-50%, 55%);
  }
}

@media (max-width: 768px) {
  .p-giftBudgetSectWrapper {
    padding-top: 2rem;
  }
}

@media (max-width: 768px) {
  .p-giftBudgetHead {
    background: #FDF3F2;
    padding: 2rem 2rem;
  }
}

@media (max-width: 768px) {
  .p-giftBudgetHeadTitle {
    font-size: clamp(15px, 1.6rem, 17px);
    font-weight: 500;
  }
}

@media (max-width: 768px) {
  .p-giftBudgetHeadText {
    font-size: clamp(10px, 1.2rem, 14px);
    line-height: 2;
    text-align: justify;
    margin-top: 1rem;
  }
}

@media (max-width: 768px) {
  .p-giftBudgetHeadGift {
    display: flex;
    flex-direction: column;
    row-gap: .5rem;
    font-size: clamp(10px, 1.2rem, 14px);
    line-height: 1.3;
    text-align: justify;
    border: 1px solid #000;
    margin-top: 1.7rem;
    padding: .7rem 1rem;
    font-feature-settings: "palt";
  }
}

.p-giftList {
  flex-wrap: revert;
  gap: revert;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 1.5rem;
}

@media (max-width: 1024px) {
  .p-giftList {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width: 768px) {
  .p-giftList {
    gap: revert;
    grid-template-columns: none;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    margin-bottom: 6rem;
    column-gap: 0;
  }
}

.p-giftItem {
  width: revert;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}

@media (max-width: 768px) {
  .p-giftItem {
    display: block;
  }
}

.p-giftItem:nth-child(n+4) {
  margin-top: 11rem;
}

@media (max-width: 1024px) {
  .p-giftItem:nth-child(n+1) {
    margin-top: 11rem;
  }
}

@media (max-width: 768px) {
  .p-giftItem:nth-child(n+1) {
    margin-top: 6rem;
  }
}

@media (max-width: 768px) {
  .p-giftItem:nth-child(1) {
    margin-top: 0;
  }
}

.p-giftItemPanel {
  margin-top: revert;
  aspect-ratio: revert;
  flex-direction: revert;
  justify-content: revert;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  row-gap: 0;
  border-radius: var(--border-radius-sm);
  padding: 1.5rem;
}

@media screen and (max-width: 768px) {
  .p-giftItemPanel {
    aspect-ratio: revert;
    display: block;
    grid-template-rows: none;
    grid-row: auto;
    padding: 1.5rem;
  }
}

.p-giftItemPanelTag {
  display: flex;
  align-items: flex-start;
  column-gap: 8px;
  margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
  .p-giftItemPanelTag {
    margin-bottom: 1.5rem;
  }
}

.p-giftItemPanelTagList {
  font-size: 1.1rem;
  line-height: 1;
  padding: .5rem 1rem;
  background: var(--c-theme);
  color: #fff;
  border-radius: var(--border-radius-max);
}

@media (min-width: 1921px) {
  .p-giftItemPanelTagList {
    font-size: clamp(10px, 1.1rem, 12px);
  }
}

@media (max-width: 768px) {
  .p-giftItemPanelTagList {
    font-size: clamp(8px, 1rem, 10px);
    padding: .4rem .6rem;
  }
}

.p-giftItemPanelText {
  display: flex;
  flex-direction: column;
}

.p-giftItemPanelText sup {
  font-size: 80%;
}

.p-giftItemPanelName {
  font-size: 1.91rem;
  line-height: 1.4;
  margin-top: 2.7rem;
  font-feature-settings: "palt";
  font-weight: 500;
}

@media (min-width: 1921px) {
  .p-giftItemPanelName {
    font-size: clamp(15px, 1.7rem, 19px);
  }
}

@media (max-width: 768px) {
  .p-giftItemPanelName {
    font-size: clamp(15px, 1.57rem, 17px);
    margin-top: 1.9rem;
  }
}

.p-giftItemPanelDesc {
  font-size: clamp(10px, 1.2rem, 14px);
  line-height: 2;
  margin: 2rem 0 1.5rem;
  text-align: justify;
}

@media (max-width: 768px) {
  .p-giftItemPanelDesc {
    margin: 1.2rem 0 1.2rem;
  }
}

.p-giftItemPanelSet {
  border-bottom: 1px solid #8e8e8e;
  padding-bottom: 1.4rem;
}

.p-giftItemPanelSetTitle {
  display: flex;
  align-items: center;
  font-size: clamp(10px, 1.2rem, 14px);
  font-weight: normal;
}

@media (max-width: 768px) {
  .p-giftItemPanelSetTitle {
    font-size: clamp(8px, 1rem, 12px);
  }
}

.p-giftItemPanelSetTitle:before,
.p-giftItemPanelSetTitle:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #8e8e8e;
}

.p-giftItemPanelSetTitle:before {
  margin-right: 2rem;
}

.p-giftItemPanelSetTitle:after {
  margin-left: 2rem;
}

.p-giftItemPanelSetDesc {
  font-size: clamp(10px, 1.2rem, 14px);
  line-height: 1.8;
  margin-top: .6rem;
  text-align: justify;
}

@media (max-width: 768px) {
  .p-giftItemPanelSetDesc {
    font-size: clamp(8px, 1rem, 12px);
    margin-top: .4rem;
  }
}

.p-giftItemPanelSetGift {
  font-size: clamp(10px, 1.2rem, 14px);
  line-height: 1.8;
  margin-top: .6rem;
}

@media (min-width: 1921px) {
  .p-giftItemPanelSetGift {
    font-size: clamp(8px, 1rem, 12px);
  }
}

.p-giftItemPanelSetGift span {
  font-weight: 500;
}

.p-giftItemPanelSetImg {
  margin-top: 1.1rem;
}

@media (max-width: 768px) {
  .p-giftItemPanelSetImg {
    margin-top: 1.2rem;
  }
}

.p-giftItemPanelBuy {
  margin-top: 1.4rem;
}

@media (max-width: 768px) {
  .p-giftItemPanelBuy {
    margin-top: .5rem;
  }
}

.p-giftItemPanelPrice span:first-of-type {
  font-size: 1.1rem;
}

@media (min-width: 1921px) {
  .p-giftItemPanelPrice span:first-of-type {
    font-size: clamp(9px, 1.1rem, 13px);
  }
}

.p-giftItemPanelPrice span:first-of-type em {
  font-size: 3.2rem;
  font-family: "Inria Serif", serif;
}

@media (min-width: 1921px) {
  .p-giftItemPanelPrice span:first-of-type em {
    font-size: clamp(30px, 3.2rem, 34px);
  }
}

@media (max-width: 768px) {
  .p-giftItemPanelPrice span:first-of-type em {
    font-size: clamp(26px, 2.8rem, 30px);
  }
}

.p-giftItemPanelPrice span:last-of-type {
  font-size: 1.1rem;
}

@media (min-width: 1921px) {
  .p-giftItemPanelPrice span:last-of-type {
    font-size: clamp(9px, 1.1rem, 13px);
  }
}

.p-giftItemPanelBuy .c-button.--cart {
  margin-top: 1.95rem;
  width: 100%;
  padding: 0;
}

@media (max-width: 768px) {
  .p-giftItemPanelBuy .c-button.--cart {
    margin-top: 0.75rem;
  }
}

.p-giftItemPanelBuy .c-button.--cart a {
  padding: 1.3rem 2.7rem;
  width: 100%;
  display: block;
  position: relative;
  z-index: 2;
}

.p-giftItemPanelBuy .c-button.--cart .c-buttonCopy {
  font-size: 1.3rem;
}

@media (min-width: 1921px) {
  .p-giftItemPanelBuy .c-button.--cart .c-buttonCopy {
    font-size: clamp(11px, 1.3rem, 15px);
  }
}

@media (max-width: 768px) {
  .p-giftItemPanelBuy .c-button.--cart .c-buttonCopy {
    font-size: clamp(11px, 1.3rem, 15px);
  }
}

.p-giftItemPanelNote {
  margin-top: 2.25rem;
  font-size: clamp(10px, 1.2rem, 14px);
  line-height: 1.3;
  text-align: right;
  color: #9D9D9D;
}

@media (max-width: 768px) {
  .p-giftItemPanelNote {
    margin-top: 1.82rem;
    font-size: clamp(8px, 1rem, 12px);
  }
}

.p-giftItemPanelNote sup {
  top: 0;
}

.p-giftListOnlySp {
  margin: -2rem 0 3rem;
  padding: 0 1.5rem;
  width: 100%;
}

.p-giftListOnlySp .p-giftItem.--motherday .p-giftItemPanel {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  aspect-ratio: 780 / 1170;
  background: url(https://d2w53g1q050m78.cloudfront.net/yunthjp/uploads/assets/image/products/common/gift_renewal/YS-0064_sp.webp) top center/cover no-repeat;
}

@media (max-width: 375px) and (max-height: 667px) {
  .p-giftListOnlySp .p-giftItem.--motherday .p-giftItemPanel {
    aspect-ratio: 780 / 1360;
  }
}

.p-giftListOnlySp .p-giftItem.--motherday .p-giftItemPanelEventDesc {
  font-size: clamp(10px, 1.2rem, 14px);
  font-feature-settings: "palt";
  text-align: justify;
}

.p-giftListOnlySp .p-giftItemPanelEventNote {
  font-size: clamp(8px, 1rem, 12px);
  font-feature-settings: "palt";
  text-align: justify;
  letter-spacing: -0.028em;
}

.p-shoplistArchiveLogo {
  width: calc(16.666% - 2.5rem);
}

@media screen and (max-width: 768px) {
  .p-shoplistArchiveLogo {
    width: calc(50% - 1.25rem);
  }
}

.p-shoplistArchiveName {
  background-color: var(--c-change-grey-background);
  border-radius: var(--border-radius-sm);
}

.p-shopOnline {
  background-color: revert;
  background: var(--online-shop-background);
}

@media screen and (max-width: 768px) {
  .p-shopOnline {
    background-image: var(--online-shop-background-sp);
  }
}

.p-shopOnlineHead {
  color: var(--c-online-shop-head);
}

.p-shopOnlineItem.--yunth .p-shopOnlineLogo {
  margin-top: 0.5em;
}

.p-shopOnlineItem.--rakuten .p-shopOnlineLogo {
  width: 9.5rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem.--rakuten .p-shopOnlineLogo {
    width: 7.5rem;
  }
}

.p-shopOnlineItem.--amazon .p-shopOnlineLogo {
  width: 9.5rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem.--amazon .p-shopOnlineLogo {
    width: 7.5rem;
  }
}

.p-shopOnlineItem.--yahoo .p-shopOnlineLogo {
  width: 12rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem.--yahoo .p-shopOnlineLogo {
    width: 10.5rem;
  }
}

.p-shopOnlineItem.--qoo10 .p-shopOnlineLogo {
  width: 12rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem.--qoo10 .p-shopOnlineLogo {
    width: 10.5rem;
  }
}

.p-shopOnlineItem.--and-st .p-shopOnlineLogo {
  width: 14rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem.--and-st .p-shopOnlineLogo {
    width: 11.5rem;
  }
}

.p-shopOnlineItem.--atcosme .p-shopOnlineLogo {
  width: 12rem;
}

@media screen and (max-width: 768px) {
  .p-shopOnlineItem.--atcosme .p-shopOnlineLogo {
    width: 10.5rem;
  }
}

.p-shopOnline.--no-yunth .p-shopOnlineItem {
  width: calc((100% / 6) - (1.9rem - 0.317rem));
}

@media screen and (max-width: 768px) {
  .p-shopOnline.--no-yunth .p-shopOnlineItem {
    width: calc((100% / 3) - 1rem);
  }
}

.p-contactAttentionSection:nth-child(1) .p-contactAttentionSectionBody {
  overflow-y: revert;
  max-height: revert;
}

@media screen and (max-width: 768px) {
  .p-contactAttentionSection:nth-child(1) .p-contactAttentionSectionBody {
    max-height: revert;
  }
}

.p-contactAttentionSectionBody {
  background-color: var(--c-background-secondary);
  border-radius: var(--border-radius-sm);
}

.p-contactAttentionLoading {
  margin-top: 8rem;
  font-size: clamp(10px, 1.2rem, 14px);
  text-align: center;
}

.js-contactAttention .p-contactAttentionSection {
  opacity: 0;
  transition: opacity .4s linear;
}

.js-contactAttention .p-contactAttentionSection.is-visible {
  opacity: 1;
}

.p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy *+* {
  margin-top: 2rem;
}

.p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy table {
  width: calc(100% - 25rem);
  margin-left: auto;
  margin-right: auto;
  border-collapse: collapse;
  border-spacing: 0;
}

@media screen and (max-width: 768px) {
  .p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy table {
    width: 100%;
  }
}

.p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy table th {
  background-color: var(--c-background-primary);
}

.p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy table td,
.p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy table th {
  border: 1px solid #ddd;
  font-size: clamp(9px, 1.1rem, 13px);
  text-align: center;
  width: 16.6666666667%;
  line-height: 2.9rem;
}

.p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy>.table-note {
  width: calc(100% - 25rem);
  margin-left: auto;
  margin-right: auto;
  font-size: clamp(10px, 1.2rem, 12px);
  line-height: 1.7;
}

@media screen and (max-width: 768px) {
  .p-contactAttentionSection.--microCMS .p-contactAttentionSectionCopy>.table-note {
    width: 100%;
    font-size: clamp(8px, 1.0rem, 10px);
  }
}

.p-contactAttentionSection.--microCMS .c-details__content {
  overflow: hidden;
  height: 0;
  opacity: 0;
  transition: height 0.4s ease, opacity 0.4s ease;
}

.p-contactAttentionSection.--microCMS details[open] .c-details__content {
  opacity: 1;
}

.p-contactForm {
  background-color: var(--c-background-primary);
}

.p-contactFormDd textarea {
  border-radius: var(--border-radius-sm);
}

.p-recruit .p-productsDetailDetails {
  padding-top: 5.6rem;
  padding-bottom: 0;
}

@media (max-width: 768px) {
  .p-recruit .p-productsDetailDetails {
    padding-top: 6rem;
  }
}

.p-recruit .p-productsDetailDetailsWrap {
  place-items: start;
}

@media (max-width: 1850px) {
  .p-recruit .hide-bp-1850px {
    display: none;
  }
}
