/** Shopify CDN: Minification failed

Line 8:0 Unexpected "{"
Line 8:1 Expected identifier but found "%"
Line 10:0 "@charset" must be the first rule in the file

**/
{%- # Relation added file 24.09.25
-%}
@charset "UTF-8";

/*商品詳細ページカスタム用css*/
.product_dtlcont{
  margin-top: 35px;
}
.product_dtlcont h2{
  color:var(--color-btn-primary);
}
.product_dtlcont p > span{
  font-size: 80%;
}
.product_dtlcont.rte p a{
  text-decoration: underline;
  color:var(--color-btn-primary);
}
.swatch label{
 background-color: var(--color-text-field) !important;
}
.qty{
 background-color: var(--color-text-field);
 border: 1px solid #d7dbdb;
}


.product-single__meta.enabled_mobile_sticky_btns .product-form .product-form__item--submit {
  z-index: 9999 !important;
  display: flex;
  justify-content: flex-end;
  position: fixed;
  bottom: 0;
  z-index: 2;
  width: 100%;
  flex-direction: row;
  background: var(--white-color);
  left: 0;
  right: 0;
  margin: 0;
  align-items: flex-start;
  padding: 10px 6px;
}
.product-single__meta.enabled_mobile_sticky_btns .product-form .product-form__item--submit .product-form__cart-submit{
  margin: 0;
}
.product-single__meta.enabled_mobile_sticky_btns .product-form .product__price {
  position: fixed;
  bottom: 0;
  left: 1em;
  height: 67px;
  z-index: 10000 !important;
  display: flex;
  align-items: center;
}
.product-single__meta.enabled_mobile_sticky_btns .product-form .product__price .price{
  font-size: 19px;
}
.product-single__meta.enabled_mobile_sticky_btns .product-form .price__badges{
  display: none;
}
.btn span+svg {
  margin-left: 0;
}
@media screen and (max-width: 749px) {
  .product-single__meta.enabled_mobile_sticky_btns .product-form .product-form__item--submit {
    padding: 10px 6px 15px 6px;
  }
  .product-single__meta.enabled_mobile_sticky_btns .product-form .product__price{
    bottom: 5px;
  }
}
@media screen and (min-width: 750px) {  
  .product-single__meta.enabled_mobile_sticky_btns .product-form .product-form__item--submit .product-form__cart-submit{
    width: 200px;
  }
  .product-single__meta.enabled_mobile_sticky_btns .product-form .product__price {
    left: auto;
    right: 220px;
  }
}
.back-to-top {
  bottom: 80px;
}

@media screen and (min-width:750px) {
  .product-single__media__carousel .flickity-prev-next-button{
    width: 40px;
    height: 40px;
  }
  .product-single__media__carousel .flickity-prev-next-button.next{
    right: -20px;
  }
  .product-single__media__carousel .flickity-prev-next-button.previous{
    left: -20px;
  }
}
@media screen and (max-width:645px) {
  .product-single__media__carousel .flickity-prev-next-button{
    display: none !important;
  }
}


/*関連商品*/
.complementary-products{
  margin-top: 35px;
}
.complementary-products-slider_custom_arrows{
  display:none;  
}
.complementary-products .btn{
  max-width: 200px !important;
  height: 44px;
  padding: 0 1em !important;
  line-height: 1 !important;
  font-size: 13px;
}
@media screen and (max-width: 749px) {
  .product-single{
    min-height: auto !important;
  }
}
@media screen and (min-width: 750px) {
  .product-single{
    position: relative;
  }
  .complementary-products{
    position: absolute;
    left: 11px;
    width: calc(50% - 11px);
  }
}


/* 商品詳細ページ-商品詳細セクション */
.rte ul {
  padding: 0;
}
.rte ul>li {
  padding: 0;
  list-style: none;
  text-indent: 0;
}
.rte ul>li:before {
  display: none;
}
figure {
  margin: 0;
  overflow: hidden;
}

figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sp {
  display: none;
}
.section:not(:last-child) {
  margin-bottom: 50px;
}
.section > p {
  margin: 20px 0 0;
  font-size: 14px;
  font-weight: 500;
}
.section > p.description {
  margin-bottom: 20px;
}
.rte h2.body-title {
  margin-bottom: 30px;
  padding-left: 25px;
  position: relative;
  font-size: 24px;
}
.rte h2.body-title::before {
  content: '';
  display: block;
  width: 5px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.banner {
  width: 100%;
}
.rte a.inline-link {
  color: #1298BD;
  text-decoration: underline;
  cursor: pointer;
}


/*アコーディオン*/
@media screen and (max-width: 1199px) {
  .product_description_accrordion .product_accordion__block{
    padding-top: 0;
    padding-bottom: 0;
  }
  .product_description_accrordion .product_accordion__block .product_accordion__heading{
    min-height: 48px;
  }
  .product_description_accrordion .product_accordion__block .product_accordion__content{
    margin-top: 5px;
    margin-bottom: 20px;
  }
}
.product_description_accrordion .product_accordion__block .rte p{
  margin-bottom: 0;  
}



/* feature */
.feature_list {
  padding: 0;
}
.rte ul>li.feature_list_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
  min-height: 150px;
  padding: 15px;
  padding-left: 185px;
  position: relative;
  z-index: 2;
}
.feature_list_item:not(:last-child) {
  margin-bottom: 30px;
}
.rte ul > li.feature_list_item::before {
  content: '';
  display: block;
  width: calc(100% - 67px);
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  border-radius: 4px;
  background-color: #fff;
}
.feature_list_item .number,
.feature_list_item p,
.feature_list_item figure {
  z-index: 2;
}
.feature_list_item img.number {
  width: 135px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.feature_list_item p {
  flex: 1;
  margin: 0;
  font-size: 16px;
}
.feature_list_item span {
  font-size: 24px;
  font-weight: 700;
}
.feature_list_item figure {
  margin: 0;
  text-align: center;
}
.feature_list_item figure img {
  width: 180px;
}

/* point */
.point .banner {
  margin-bottom: 20px;
}
.rte ul > li.point_list_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-bottom: 20px;
  
}
.point_list_item:not(:last-child) {
  margin-bottom: 20px;
}
.point_list_item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  margin-right: 1em;
  border-radius: 50%;
  background-color: #ef858c;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  color: #fff;
}
.rte ul > li.point_list_item p {
  flex: 1;
  margin: 0;
  font-size: 24px;
  font-weight: 700;
}

/* card */
.card_list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.card_list_item {
  width: 32%;
}
.card_list_item figure {
  margin: 0;
  margin-bottom: 30px;
}
.card_list_item h3 {
  margin-bottom: 20px;
  font-size: 24px;
  color: #ef858c;
}
.card_list_item p {
  margin: 0;
}
@media only screen and (max-width: 749px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .section:not(:last-child) {
    margin-bottom: 30px;
  }
  .rte h2.body-title {
    margin-bottom: 20px;
    padding-left: 15px;
    font-size: 18px;
  }
  .section > p {
    font-weight: 500;
  }
  .rte ul>li.feature_list_item {
    align-items: flex-start;
    flex-direction: column;
    min-height: auto;
    padding: 20px;
    padding-left: 120px;
  }
  .feature_list_item:not(:last-child) {
    margin-bottom: 20px;
  }
  .rte ul > li.feature_list_item::before {
    width: calc(100% - 50px);
  }
  .rte ul>li.feature_list_item img.number {
    width: 100px;
  }
  .rte ul>li.feature_list_item p {
    font-size: 14px;
  }
  .rte ul>li.feature_list_item span {
    font-size: 18px;
  }
  .rte ul > li.point_list_item p{
    font-size: 15px;
    font-weight: 700;
  }
  .point_list_item span {
    font-size: 15px;
  }
  .card_list{
    flex-direction: column;
    gap:30px;
  }
  .card_list_item{
    width: 100%;
  }
  .card_list_item figure {
    margin-bottom: 20px;
  }
  .card_list_item h3 {
    margin-bottom: 10px;
    font-size: 18px;
  }
}

/*関連商品*/
@media screen and (max-width: 749px) {
  .complementary-products .complementary-products-heading{
    font-size: 15px;
  }
}


/*詳細動画*/
.product-single__description .video-wrapper{
  margin-top: 30px;
  width: 100%;
  height: auto;
  max-width: 560px;
  aspect-ratio: 1 / .563;
  padding-bottom: 0;
}

/* ホワイトクイーン */
.whitequeen .body-title::before {
  background-color: #750c10;
}
.whitequeen .feature_list_item p span {
  color: #c6131b;
}

@media only screen and (max-width: 749px) {
  .whitequeen .feature_list_item img.number {
    top: 0;
    transform: translateY(0);
  }
}

/* ペーパー歯磨き */
.toothpolish .body-title::before {
  background-color: #0033a0;
}
.toothpolish .feature_list_item p span {
  color: #0033a0;
}

/* クラスプ */
.clasp .body-title::before {
  background-color: #00a7d1;
}
.clasp .feature_list_item p span {
  color: #00a7d1;
}

/* ハニックDC */
.dc .body-title::before {
  background-color: #ef858c;
}
.dc .feature_list_item p span {
  color: #ef858c;
}
.dc .card_list_item h3 {
  color: #ef858c;
}
.dc .card_list_item p:first-of-type {
  font-size: 18px;
  margin-bottom: 1em;
}
.dc ul > li.point_list_item {
  border-bottom: 3px dashed #ef858c;
}

@media only screen and (max-width: 749px) {
  .dc .card_list_item p:first-of-type {
    font-size: 16px;
  }
}

/* ブルーローズ */
.br .card_list_item h3 {
  color: #67afdc;
}
.br .body-title::before {
  background-color: #0106ae;
}

.br .feature_list_item p span {
  color: #67afdc;
}

@media only screen and (max-width: 749px) {
  .br .feature_list_item img.number {
    top: 0;
    transform: translateY(0);
  }
}


/* shimac */
.shimac .body-title::before {
  background-color: #0054a7;
}
.shimac .feature_list_item p span {
  color: #67afdc;
}
p.shimac-title {
  display: block;
  margin: 70px auto 90px;
  padding: 10px 0;
  background-color: #ea5283;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  color: #fff;
}
.shimac .card_list_item h3 {
  color: #ea5283;
  font-weight: 700;
}
ul.voice_list {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 30px;
  flex-wrap: wrap;
}
ul>li.voice_list_item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
  width: 48%;
  padding: 25px 20px;
  border: 1px solid #707070;
  border-radius: 10px;
  background-color: #fff;
}
ul>li.voice_list_item figure {
  width: 120px;
}
.voice_textarea {
  flex: 1;
}
.voice_textarea h3 {
  margin: 0;
  margin-bottom: 10px;
  font-size: 24px;
}
.voice_textarea p {
  margin: 0;
  font-size: 12px;
}

@media only screen and (max-width: 749px) {
  ul.voice_list {
    flex-direction: column;
    gap: 10px;
  }
  ul>li.voice_list_item {
    align-items: flex-start;
    width: 100%;
    padding: 20px;
  }
  ul>li.voice_list_item figure {
    width: 60px;
  }
  .voice_textarea h3 {
    font-size: 16px;
  }
  p.shimac-title {
    margin: 30px autox;
    font-size: 20px;
  }
}

/* shimac ステインブロック */
.stain .body-title::before {
  background-color: #0054a7;
}
.stain ul > li.point_list_item {
  border-bottom: 3px dashed #67afdc;
}
.stain ul > li.point_list_item span {
  background-color: #67afdc;
}
.stain .feature_list_item p span {
  color: #67afdc;
}

/* フィトンチッド(歯磨き・マニキュア) */
.fitontsid .body-title::before {
  background-color: #3ca539;
}
.fitontsid .card_list_item h3 {
  color: #89c11b;
}
.fitontsid .card_list_item p:first-of-type {
  font-size: 18px;
  margin-bottom: 1em;
}
.fitontsid .feature_list_item p span {
  color: #3ca539;
}

@media only screen and (max-width: 749px) {
  .fitontsid .card_list_item p:first-of-type {
    font-size: 16px;
  }
  .fitontsid ul>li.feature_list_item img.number {
    top: 0;
    transform: translateY(0);
  }
}

/* Shimac クリーンパック */
.clean .body-title::before {
  background-color: #e16b9f;
}
.clean ul > li.point_list_item {
  border-bottom:3px dashed #e16b9f;
}
.clean .point_list_item span {
  background-color: #e16b9f;
}
.clean .feature_list_item p span {
  color: #e16b9f;
}

@media only screen and (max-width: 749px) {
  .clean ul>li.feature_list_item img.number {
    top: 0;
    transform: translateY(0);
  }
}

/* ペーパー歯磨きW 動物柄デザイン */
.tpw .body-title::before {
  background-color: #b7272d;
}
.tpw ul>li.feature_list_item p span {
  color: #3a3a3a;
}

/* 重曹ハミガキ */
.soda .body-title::before {
  background-color: #e96006;
}
.soda ul>li.feature_list_item p span {
  color: #fa7d2b;
}

@media only screen and (max-width: 749px) {
  .soda ul>li.feature_list_item img.number {
    top: 0;
    transform: translateY(0);
  }
}

/* ハニッククリーム ノンステイン */
.nonstain .body-title::before {
  background-color: #dc428e;
}
.nonstain ul>li.feature_list_item p span {
  color: #f89ac2;
}

@media only screen and (max-width: 749px) {
  .nonstain ul>li.feature_list_item img.number {
    top: 0;
    transform: translateY(0);
  }
}

/* shimac クリーンパック BLack */
.black .body-title::before {
  background-color: #333333;
}
.black .feature_list_item p span {
  color: #333333;
}
.black .point_list_item span {
  background-color: #DADF00;
}
.black .point_list_item {
  border-bottom: 3px dashed #DADF00;
}
.black .point_list_item p span.notice {
  display: inline;
  margin: 0;
  border-radius: unset;
  background-color: transparent;
  color: unset;
  font-size: 12px;
}





/*ギフトラッピング*/
.giftwrap{
  display: flex;
  gap: .5em;
  align-items: center;
}




/*カートボタン色変更*/
.product-form__item .btn{
  background-color: #BC3612;
}
.product-form__item .btn--primary:not([disabled]):hover{
  background-color: #BC3612;
}
.product-form__item .btn--primary:after{
  background-color: #89280E;
}

/*この商品を買った方はこんな商品も見ていますのボタン*/
.complementary-products .btn{
  color: var(--color-btn-primary);
  background-color: var(--color-btn-primary-text);
  box-shadow: inset 0 0 0 1px var(--color-btn-primary);
}


/*ポジショニングマップ*/
.poimap_area{
  margin-top: 50px;
  margin-bottom: 50px;
}
.poimap_area .body-title{
  text-align: center;
  margin-bottom: 0;
}
.poimap_area-img{
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: 1fr;
}
.poimap_area-img,
.poimap_area-img >*{
  aspect-ratio: 1/9.487;
}
.poimap_area-img >*{
  grid-column: 1;
  grid-row: 1;
}
.poimap_area-img picture{
  pointer-events: none;
}
.poimap_area-img img{
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 749px) {
  .poimap_area-pc{
    display: none;
  }
}
@media only screen and (min-width: 750px) {
  .poimap_area .body-title{
    margin-bottom:1.5em;
  }
  .poimap_area{
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .poimap_area-img,
  .poimap_area-img >*{
    aspect-ratio: 1/.708;
  }
  .poimap_area-sp{
    display: none;
  }

  .poimap_area-img svg a{
    transition: all 0.3s;
  }
  .poimap_area-img svg a:hover{
    opacity: .6;
  }
}