﻿@charset "UTF-8";

@media screen and (max-width: 767.98px) {
  body {
    width: 100%;
    overflow-x: hidden;
  }

  body.fixed {
    overflow: hidden;
  }

  .contents {
    overflow: hidden;
    color: #000;
    font-family: "Noto Sans JP", "Yu Gothic", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }

  .contents *:before,
  .contents *:after {
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  .contents table {
    border-collapse: collapse;
  }

  .pc-only,
  .pc_only,
  .only-pc {
    display: none !important;
  }

  img {
    height: auto;
  }
}

/*--------------------------
 kv
----------------------------*/
@media screen and (max-width: 767.98px) {
  .kv_wrapper {
    max-width: 100%;
    margin: auto;
  }

  .kv_wrapper img {
    width: 100%;
  }

  .kv_line_coupon img {
    width: 100%;
  }

  .kv_head img {
    width: 98%;
  }

  img.kv_im {
    max-width: none;
    width: 100%;
    top: 8%;
    bottom: 0;
    left: 0;
  }

  .kv_line_coupon a {
    background-color: #08aa7f;
    color: #fff;
    text-align: center;
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    width: 100%;
    text-decoration: none;
    font-size: 0.875rem;
    line-height: calc(39.2 / 14);
    letter-spacing: 0.08em;
  }

  .kv_line_coupon a:after {
    content: "";
    background-image: url("../../img/ic-arrow-white.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    display: block;
    margin-left: 13px;
    position: relative;
  }

  .kv_line_coupon a span {
    position: relative;
    left: 12px;
  }

  .kv_line_coupon img {
    width: 100%;
  }

  .kv_wrapper {
    position: relative;
    height: calc(531 / 375 * 100vw);
    width: 100vw;
    overflow: hidden;
  }
}

/*--------------------------
 offer
----------------------------*/
@media screen and (max-width: 767.98px) {
  .offer {
    position: relative;
    z-index: 10;
  }
  .offer_wrapper {
    padding: calc(40 / 375 * 100vw) 0 calc(170 / 375 * 100vw);
  }
  .offer .offer__txt {
    font-size: 0.75rem;
    line-height: calc(40 / 24);
    letter-spacing: 0.08em;
    color: #5c656b;
    text-align: left;
    padding: 10px calc(15 / 375 * 100vw) 0 calc(15 / 375 * 100vw);
    margin-bottom: calc(40 / 750 * 100vw);
  }

  .offer_txt .en {
    font-size: 1rem;
    line-height: calc(22.4 / 16);
    letter-spacing: 0.08em;
    margin-bottom: 24px;
    display: block;
  }

  .offer_txt .ja {
    font-size: 1.375rem;
    line-height: calc(30.8 / 22);
    letter-spacing: 0.08em;
    margin-bottom: 6px;
    display: block;
  }

  .offer_txt .price {
    font-size: 1.75rem;
    line-height: calc(33.6 / 28);
    letter-spacing: 0.08em;
    margin-bottom: 8px;
  }

  .offer_txt .yen {
    font-size: 1.4375rem;
    line-height: calc(33.6 / 23);
    letter-spacing: 0.08em;
  }

  .offer_txt .tax {
    font-size: 0.825rem;
    line-height: calc(33.6 / 13.2);
    letter-spacing: 0.08em;
  }

  .offer_btn {
    max-width: none;
    margin-top: 10px;
  }

  .offer_button_text {
    font-size: 15px;
    font-size: 4vw;
    margin: 4% 0;
  }

  .offer_button_text1 {
    background-size: 4.329004329%;
    margin: 4% 0;
  }

  .offer .block-inner .img-wrapper {
    display: block;
    text-align: center;
    margin: 0 calc(15 / 375 * 100vw) 33px calc(15 / 375 * 100vw);
  }
  .offer .block-inner .img-wrapper img {
    width: calc(257 / 375 * 100vw);
  }

  .offer .block-inner .block-right {
    margin: 0 calc(15 / 375 * 100vw) 41px calc(15 / 375 * 100vw);
  }

  .offer_btn1 a {
    background-color: #010000;
    color: #fff;
    display: flex;
    height: 64px;
    align-items: center;
    justify-content: center;
    padding: 10px 30px;
    font-size: 1rem;
    font-weight: bold;
    line-height: calc(28.8 / 16);
    letter-spacing: 0.08em;
    text-decoration: none;
    position: relative;
  }

  .display_soldout a,
  section.buy-now .block-line .cart.display_soldout {
    background-color: #bfbfbf;
    pointer-events: none;
  }
  .display_soldout a::after {
    display: none !important;
  }

  .offer_btn1 a:before {
    content: "";
    background-image: url("../../img/ic-cart.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 22px;
    height: 22px;
    display: block;
    margin-right: 8px;
  }

  .offer_btn1 a:after {
    content: "";
    background-image: url("../../img/ic-arrow-down-white.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    display: block;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
  }

  .offer .block-split,
  .offer .block-line {
    margin-top: 14px;
  }

  .offer .block-line a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    width: 100%;
    height: 54px;
    border: 1px solid #afb7bc;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    position: relative;
    text-align: center;
  }

  .offer .block-line a:after {
    content: "";
    background-image: url("../../img/ic-arrow-right-gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
  }

  .vertical_movie {
    margin: 0 calc(15 / 375 * 100vw) 41px calc(15 / 375 * 100vw);
  }
}

/*--------------------------
 award
----------------------------*/

@media (max-width: 767.98px) {
  .award_wrapper {
    /* padding: 8vw 4vw 10.67vw;*/
    padding: 8vw 4vw 0;
  }

  .award_img {
    text-align: center;
    width: 57.066667vw;
    height: auto;
    /* height: 40.712vw; */
    margin: 0 auto 2.67vw;
  }

  .award_wrapper .offer__txt {
    font-size: 12px;
    width: 92%;
    margin: 0 auto;
    padding: 0;
  }
  .award_wrapper .offer__txt p {
    display: flex;
    margin-left: -1.07vw;
  }
  .award_wrapper .offer__txt p + p {
    margin-top: 1.33vw;
  }

  .award_wrapper .offer__txt p > span {
    flex-shrink: 0;
    margin-right: 1.07vw;
  }
}

/*--------------------------
 promotion
----------------------------*/
@media (max-width: 767.98px) {
  .promotion {
    margin-bottom: 57px;
  }

  .promotion .block-inner {
    background-color: #dce3e9;
  }

  .promotion .block-inner .block-left {
    width: 100vw;
    flex-shrink: 0;
    position: relative;
    height: calc(373 / 375 * 100vw);
    overflow: hidden;
    background-image: url("../../straight_iron/img/im-reduces-bg-sp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
  }

  .promotion .block-inner .block-right {
    margin: 0 calc(30 / 375 * 100vw);
    padding: 0 0 50px 0;
  }

  .promotion .large-text {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(44.8 / 28);
    letter-spacing: 0.08em;
    margin-bottom: 14px;
  }

  .promotion .small-text {
    font-size: 1rem;
    line-height: calc(38 / 16);
    letter-spacing: 0.08em;
  }

  .promotion .block-right .small-text .n-2,
  .promotion .block-right .small-text .n-1 {
    margin-bottom: 13px;
    display: block;
  }
}

/*--------------------------
 共同開発
----------------------------*/
@media (max-width: 767.98px) {
  .joint {
    padding: 0 4vw 55px;
  }

  .joint .block-img {
    display: flex;
    justify-content: center;
    margin-bottom: 61px;
  }

  .joint .block-title {
    margin-bottom: 38.7px;
    text-align: center;
  }

  .joint .block-title:after {
    content: "";
    width: 44px;
    height: 1px;
    background-color: #3c4249;
    margin: 29px auto 0 auto;
    display: block;
  }

  .joint .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.25rem;
    line-height: calc(28 / 20);
    letter-spacing: 0.08em;
    display: block;
  }

  .joint .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    position: relative;
    top: 7px;
    display: block;
  }

  .joint .reason {
    text-align: center;
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.375rem;
    line-height: calc(30.8 / 22);
    letter-spacing: 0.08em;
    padding-bottom: 13px;
    border-bottom: 1px solid #d8dee5;
    margin: auto calc(15 / 375 * 100vw);
  }

  .joint .salon {
    padding: 30px 0 60px 0;
    margin: auto calc(15 / 375 * 100vw);
  }

  .joint .salon .block-left {
    margin-bottom: 20px;
  }

  .joint .salon .block-right .name {
    font-size: 0.875rem;
    line-height: calc(25.2 / 14);
    letter-spacing: 0.08em;
  }

  .joint .salon .block-right .block-top {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
  }

  .joint .salon .block-right .block-top .img-wrapper {
    display: flex;
    width: 66px;
    flex-shrink: 0;
    margin-right: 12px;
  }

  .joint .salon .block-right .block-bottom .comment,
  .joint .salon .block-right .block-bottom .catch {
    font-size: 0.875rem;
    line-height: calc(25.2 / 14);
    letter-spacing: 0.08em;
    margin-bottom: 7px;
    color: #5c656b;
  }

  .joint .salon .block-right .block-bottom .catch {
    font-weight: bold;
  }

  .joint .salon .block-right .aster-wrapper {
    display: flex;
    font-size: 0.75rem;
    line-height: calc(19.2 / 12);
    letter-spacing: 0.08em;
    margin-bottom: 19px;
    color: #5c656b;
  }

  .joint .salon .block-right .aster-wrapper > *:first-of-type {
    flex-shrink: 0;
  }

  .joint .salon .block-right .movie-link {
    font-weight: bold;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  .joint .salon .block-right .movie-link a {
    text-decoration: none;
  }

  .joint .salon .block-right .movie-link:after {
    content: "";
    background-image: url("../../img/im-arrow-link.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    display: block;
    margin-left: 6px;
  }

  .joint .joint__box {
    border: 3px solid #d1d5d8;
    padding: 37px calc(15 / 375 * 100vw) 40px calc(15 / 375 * 100vw);
  }
  .joint .joint__box .block-title {
    margin-bottom: 35px;
  }
  .joint .joint__box .block-title .main {
    font-size: 1.375rem;
    line-height: calc(61.6 / 44);
    letter-spacing: 0.08em;
  }

  .joint .joint__box .block-title .sub {
    font-size: 0.875rem;
    line-height: calc(38.4 / 28);
    letter-spacing: 0.08em;
    margin-bottom: 2px;
  }

  .joint .joint__box .joint__box__title {
    text-align: center;
    margin-bottom: 0;
    padding-bottom: calc(35 / 750 * 100vw);
    border-bottom: 1px solid #d8dee5;
  }

  .joint .joint__box .joint__box__cols {
    display: flex;
    gap: calc(15 / 375 * 100vw);
    align-items: flex-start;
    margin-top: 36px;
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__img {
    min-width: auto;
    width: calc(200 / 750 * 100vw);
    height: calc(182 / 750 * 100vw);
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__detail {
    width: 53.5vw;
    font-size: calc(28 / 750 * 100vw);
  }

  .joint .joint__box .joint__box__cols:nth-child(odd) .joint__box__cols__img {
    display: flex;
    order: 1;
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__detail .name {
    display: flex;
    align-items: center;
    margin-bottom: 2vw;
    gap: calc(10 / 375 * 100vw);
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__detail .name span {
    margin-right: 0;
    font-size: 0.875rem;
    line-height: calc(44.8 / 28);
    letter-spacing: 0.08em;
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__detail .name span:last-child {
    width: 80px;
    word-break: keep-all;
  }

  .joint .joint__box .joint__box__cols .joint__box__cols__detail .detail {
    font-size: 0.875rem;
    line-height: calc(44.8 / 28);
    letter-spacing: 0.08em;
  }

  .joint .joint__box .joint__box__note {
    font-size: calc(24 / 750 * 100vw);
    color: #5c656b;
    margin-top: calc(20 / 750 * 100vw);
  }

  .joint .joint__box .block-title:after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #d8dee5;
    display: block;
    margin: 20px auto auto auto;
  }
}

/*--------------------------
 user's voice
----------------------------*/
@media (max-width: 767.98px) {
  .voice {
    background-color: #f2f2f4;
    padding: 54px 0 60px 0;
  }

  .voice .block-title {
    margin-bottom: 40px;
    text-align: center;
  }

  .voice .block-title:after {
    content: "";
    width: 22px;
    height: 1px;
    margin: 21px auto auto auto;
    background-color: #000000;
    display: block;
  }

  .voice .block-title .sub {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    display: block;
  }

  .voice .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.1875rem;
    line-height: calc(26.6 / 19);
    letter-spacing: 0.08em;
    position: relative;
    top: 7px;
    display: block;
  }

  .voice .swiper-target {
    margin: auto calc(15 / 375 * 100vw) 15px calc(15 / 375 * 100vw);
    overflow: hidden;
  }

  .voice .swiper-target a {
    text-decoration: none;
  }

  .voice .list > li {
    max-width: calc((100% - 14px) / 3);
    margin-right: 8px;
    max-height: calc(211 / 375 * 100vw);
    overflow: hidden;
    position: relative;
  }

  .voice .list > li:last-of-type {
    margin-right: 0;
  }

  .voice .list > li:after {
    content: "";
    height: 60px;
    width: 100%;
    display: block;
    position: absolute;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(242, 242, 244, 0), rgba(242, 242, 244, 1));
  }

  .voice .aster-wrapper {
    margin: auto calc(15 / 375 * 100vw);
    font-size: 0.75rem;
    line-height: calc(19.2 / 12);
    letter-spacing: 0.96px;
    color: #5c656b;
  }

  .voice .button-next,
  .voice .button-prev {
    position: absolute;
    top: calc(91 / 375 * 100vw);
    z-index: 1;
    cursor: pointer;
  }

  .voice .button-next[aria-disabled="true"],
  .voice .button-prev[aria-disabled="true"] {
    display: none;
  }

  .voice .button-prev {
    left: 8px;
  }

  .voice .button-next {
    right: 8px;
  }

  .voice .button-next::after {
    content: "";
    display: block;
    background-image: url("../../../common/img/im-carousel-right.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
  }

  .voice .button-prev::after {
    content: "";
    display: block;
    background-image: url("../../../common/img/im-carousel-left.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
  }

  .voice #dryer_s_plus-slider {
    position: relative;
    margin: auto;
  }

  .voice #dryer_s_plus-slider .img-wrapper {
    margin-bottom: 11px;
  }
  .voice #dryer_s_plus-slider .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .voice #dryer_s_plus-slider .name {
    margin-bottom: 6px;
    font-size: 0.75rem;
    line-height: calc(19.2 / 12);
    letter-spacing: 0.96px;
  }

  .voice #dryer_s_plus-slider .comment {
    font-size: 0.6875rem;
    line-height: calc(17.58 / 11);
    letter-spacing: 0.88px;
  }
}

/*--------------------------
 offer-2
----------------------------*/
@media (max-width: 767.98px) {
  .offer-2 {
    margin: auto calc(15 / 375 * 100vw);
    padding: 63px 0 40px 0;
  }

  .offer-2 .title {
    font-size: 1.125rem;
    color: #739fb9;
    line-height: calc(25 / 18);
    letter-spacing: 0.08em;
    text-align: center;
    background-color: #fff;
    top: -24px;
    width: calc(248 / 375 * 100vw);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
  }

  .offer-2 .inner {
    position: relative;
    border: 1px solid #739fb8;
    padding: 46px calc(15 / 375 * 100vw) 20px calc(15 / 375 * 100vw);
  }

  .offer-2 .inner-2 {
    display: flex;
  }

  .offer-2 .inner-2 > .block-left {
    margin-right: calc(15 / 375 * 100vw);
    position: relative;
    width: calc(110 / 375 * 100vw);
    flex-shrink: 0;
  }

  .offer-2 .inner-2 > .block-right {
    position: relative;
  }

  .offer-2 .inner-2 > .block-right .offer_txt {
    margin-top: 10px;
  }

  .offer-2 .inner-2 img {
    width: 100%;
    height: auto;
  }

  .offer-2 .offer_button_area {
    width: calc(315 / 375 * 100vw);
  }

  .offer-2 .offer_txt .ja {
    font-size: 1rem;
    line-height: calc(22.4 / 16);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 4px;
  }

  .offer-2 .offer_txt .en {
    font-size: calc(32 / 750 * 100vw);
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 31px;
  }

  .offer-2 .offer_btn1 a {
    height: 56px;
    margin-bottom: 12px;
  }

  .offer-2 .block-line {
    margin-top: 12px;
    width: calc(315 / 375 * 100vw);
    left: calc(-120 / 375 * 100vw);
    bottom: 0;
    text-align: center;
  }

  .offer-2 .block-line a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    width: 100%;
    height: 56px;
    padding: 8px 10px;
    border: 1px solid #afb7bc;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    position: relative;
  }

  .offer-2 .block-line a:after {
    content: "";
    background-image: url("../../img/ic-arrow-right-gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
  }

  .offer-2 .offer_button_text {
    font-size: 0.875rem;
  }
}

/*--------------------------
 buy now
----------------------------*/
@media (max-width: 767.98px) {
  section.association {
    background-color: #f4f4f6;
    padding: 40px calc(15 / 375 * 100vw) 40px calc(15 / 375 * 100vw);
  }

  section.association .head {
    text-align: center;
    font-size: 1.1875rem;
    line-height: calc(26.6 / 19);
    letter-spacing: 0.08em;
    margin-bottom: 40px;
  }

  section.association .inner {
    margin: auto;
  }

  section.association .inner-2 {
    padding: 20px calc(15 / 375 * 100vw);
    align-items: stretch;
    display: flex;
  }

  section.association .inner .block-right,
  section.association .inner .block-left {
    background-color: #fff;
    position: relative;
  }

  section.association .inner .block-left {
    margin-bottom: 20px;
  }

  section.association .text-1 {
    font-size: 1.0625rem;
    line-height: calc(25.6 / 17);
    letter-spacing: 0.08em;
    margin-bottom: 6px;
    display: block;
  }

  section.association .text-2 {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    margin-bottom: 17px;
    display: block;
  }

  section.association .text-3 {
    font-size: 0.875rem;
    line-height: calc(25.2 / 14);
    letter-spacing: 0.08em;
    color: #5c656b;
    display: block;
  }

  section.association .img-wrapper {
    width: 126px;
  }

  section.association .b-left {
    margin-right: 16px;
  }

  section.association .b-left .img-wrapper {
    margin-bottom: 36px;
  }

  section.association .b-right .img-wrapper {
    margin-bottom: 37px;
  }

  section.association .inner .block-right .b-right .img-wrapper {
    margin-bottom: 56px;
  }

  section.association .link {
    text-decoration: none;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
  }

  section.association .link:after {
    content: "";
    background-image: url("../../img/im-arrow-link.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    display: block;
    margin-left: 6px;
  }

  section.support {
    background-color: #fff;
    margin: 60px calc(15 / 375 * 100vw);
  }

  section.support .inner {
    margin: auto;
    padding: 27px calc(15 / 375 * 100vw) 30px calc(15 / 375 * 100vw);
    border: 1px solid #8f999f;
  }

  section.support .inner .block-right {
    display: flex;
    align-items: center;
  }

  section.support .text-1 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.125rem;
    line-height: calc(25.2 / 18);
    letter-spacing: 0.08em;
    margin-bottom: 6px;
  }

  section.support .text-2 {
    font-size: 0.875rem;
    line-height: calc(25.2 / 14);
    letter-spacing: 0.08em;
    color: #5c656b;
  }

  section.support .link {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    color: #fff;
    background-color: #010000;
    position: relative;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    width: 100%;
    margin-top: 8px;
  }

  section.support .link:before {
    content: "";
    background-image: url("../../img/ic-support-wh.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 22px;
    height: 22px;
    display: block;
    position: relative;
    left: -13px;
  }

  section.support .link:after {
    content: "";
    background-image: url("../../img/ic-arrow-white.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 12px;
  }

  section.dryer {
    margin: auto calc(15 / 375 * 100vw) 40px calc(15 / 375 * 100vw);
  }

  section.dryer .block-title {
    text-align: center;
    margin-bottom: 40px;
  }

  section.dryer .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.25rem;
    line-height: calc(28 / 20);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 6px;
  }

  section.dryer .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    display: block;
  }

  section.dryer .block-title:after {
    content: "";
    width: 44px;
    height: 1px;
    background-color: #3c4249;
    margin: 22px auto 0 auto;
    display: block;
  }

  section.dryer img {
    width: 100%;
    height: auto;
  }

  section.comparison {
    margin: auto calc(15 / 375 * 100vw) 60px calc(15 / 375 * 100vw);
  }

  section.comparison .block-title {
    text-align: center;
  }

  section.comparison .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.375rem;
    line-height: calc(30.8 / 22);
    letter-spacing: 0.08em;
    display: block;
  }

  section.comparison .block-title:after {
    content: "";
    width: 22px;
    height: 1px;
    background-color: #3c4249;
    margin: 16px auto 0 auto;
    display: block;
  }

  section.comparison .d-table {
    margin-bottom: 20px;
  }

  section.comparison .d-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }

  section.comparison .d-cell {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    padding: 21px calc(15 / 375 * 100vw) 23px calc(15 / 375 * 100vw);
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid #d8dee5;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  section.comparison .d-flex {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    align-items: center;
  }

  section.comparison .d-row:nth-of-type(1) .d-cell:nth-of-type(3n + 1) {
    border-bottom: none;
  }

  section.comparison .d-row:nth-of-type(n + 2) .d-cell:nth-of-type(3n + 1) {
    background-color: #f5f8fc;
  }

  section.comparison .d-cell:nth-of-type(3n + 1) {
    width: 100%;
    padding: 10px 0;
  }

  section.comparison .d-cell:nth-of-type(3n + 2) {
    width: 50%;
  }

  section.comparison .d-cell:nth-of-type(3n) {
    width: 50%;
  }

  section.comparison .d-cell .product-wrapper {
    width: calc(130 / 375 * 100vw);
    margin: auto auto 10px auto;
  }

  section.comparison .d-cell .color {
    width: 52px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }

  section.comparison .d-row:nth-of-type(2) .d-cell {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  section.comparison .d-cell .color-name {
    font-size: 0.75rem;
    line-height: calc(19.2 / 12);
    letter-spacing: 0.08em;
    margin-top: 4px;
  }

  section.comparison .d-cell .color:nth-of-type(1) {
    margin-right: 15px;
  }

  section.comparison .d-cell .color:nth-of-type(3) {
    width: 100%;
    margin-top: 10px;
  }

  section.comparison .d-cell .color-wrapper {
    width: 26px;
  }

  section.comparison .note {
    font-size: 0.625rem;
    position: relative;
    top: -5px;
  }

  section.comparison .circle {
    margin: auto;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: block;
    background-color: #000000;
  }

  section.comparison .note-list > li {
    margin-bottom: 7px;
    font-size: 0.75rem;
    line-height: calc(19.2 / 12);
    letter-spacing: 0.08em;
  }

  section.comparison .note-list > li span:first-of-type {
    margin-right: 4px;
  }

  section.dryer-pro {
    background-color: #f4f4f6;
    padding: 40px calc(15 / 375 * 100vw);
  }

  section.dryer-pro .inner {
    display: flex;
    background-color: #fff;
    margin: auto;
    padding: 20px calc(15 / 375 * 100vw);
    min-height: 242px;
  }

  section.dryer-pro .inner .block-left {
    margin-right: calc(15 / 375 * 100vw);
  }

  section.dryer-pro .inner .block-right {
    position: relative;
  }

  section.dryer-pro .img-wrapper {
    width: 126px;
  }

  section.dryer-pro .text-1 {
    font-size: 1.0625rem;
    line-height: calc(25.6 / 17);
    letter-spacing: 0.08em;
    margin-bottom: 6px;
    display: block;
  }

  section.dryer-pro .text-2 {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    margin-bottom: 20px;
    display: block;
  }

  section.dryer-pro .text-3 {
    font-size: 0.875rem;
    line-height: calc(25.2 / 14);
    letter-spacing: 0.08em;
    color: #5c656b;
    display: block;
  }

  section.dryer-pro .link {
    text-decoration: none;
    display: flex;
    position: absolute;
    right: 0;
    bottom: 0;
  }

  section.dryer-pro .link:after {
    content: "";
    background-image: url("../../img/im-arrow-link.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    display: block;
    margin-left: 6px;
  }

  #refaHairTips {
    background-color: #f4f4f6;
    padding: 52px calc(15 / 375 * 100vw) 60px calc(15 / 375 * 100vw);
  }

  #refaHairTips .block-inner {
    margin: auto;
  }

  #refaHairTips .block-inner .caption {
    font-size: 1rem;
    color: #000000;
    line-height: calc(28.8 / 16);
    letter-spacing: 0.083em;
    margin-bottom: 18px;
  }

  #refaHairTips .block-inner .picture-wrapper {
    text-align: center;
    margin-bottom: 27px;
  }

  #refaHairTips .block-inner .picture-wrapper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  #refaHairTips .block-title {
    text-align: center;
    margin-bottom: 34px;
  }

  #refaHairTips .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.25rem;
    line-height: calc(28 / 20);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 7px;
  }

  #refaHairTips .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    display: block;
  }

  #refaHairTips .block-title:after {
    content: "";
    width: 44px;
    height: 1px;
    background-color: #3c4249;
    margin: 21px auto 0 auto;
    display: block;
  }

  #refaHairTips .btn-link {
    border: 1px solid #8f999f;
    width: 315px;
    margin: 0 auto 0 auto;
  }

  #refaHairTips .btn-link a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    width: 100%;
    min-height: 56px;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 1.12px;
    color: #000000;
    padding: 10px 40px 10px 34px;
    position: relative;
  }

  #refaHairTips .btn-link a:after {
    content: "";
    background-image: url("../../../common/img/ic-arrow-gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    display: block;
    position: absolute;
    right: 12px;
  }
}

@media screen and (max-width: 767px) {
  .awards {
    max-width: 100%;
    margin: 0 auto 40px auto;
    text-align: center;
    border-top: 1px solid #d8dee5;
    padding-top: 50px;
  }

  .awards .is_pc {
    display: none !important;
  }

  .awards .is_sp {
    display: initial !important;
  }

  section.awards .block-title {
    text-align: center;
    margin: auto;
    margin-bottom: 40px;
  }

  section.awards .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.25rem;
    line-height: calc(28 / 20);
    letter-spacing: 0.08em;
    display: block;
  }

  section.awards .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    position: relative;
    top: 7px;
    display: block;
  }

  section.awards .block-title:after {
    content: "";
    width: 22px;
    height: 1px;
    background-color: #000000;
    margin: 14px auto 0 auto;
    display: block;
  }

  .awards h2 img {
    height: calc((100 / 750) * 100vw);
  }

  .awards_logo {
    margin-bottom: calc((40 / 750) * 100vw);
    text-align: center;
  }

  .awards_logo img {
    width: calc((310 / 750) * 100vw);
    margin: auto;
  }

  .awards_note {
    padding-left: calc((30 / 750) * 100vw);
    padding-right: calc((30 / 750) * 100vw);
  }
  .awards_note p.txt {
    font-size: 0.75rem;
    text-align: left;
    color: #5c656b;
    line-height: calc(40 / 24);
    letter-spacing: 0.08em;
    display: flex;
  }
  .awards_note p.txt > span:first-of-type {
    flex-shrink: 0;
    margin-right: 2px;
  }
}

@media screen and (max-width: 767px) {
  .user_voice {
    padding: calc((110 / 750) * 100vw) 0;
  }

  .user_voice .is_sp {
    display: initial !important;
  }

  .user_voice .is_pc {
    display: none !important;
  }

  .user_voice_content {
    max-width: 100%;
  }

  section.user_voice .block-title {
    text-align: center;
    margin: auto;
    margin-bottom: 40px;
  }

  .user_voice .block-title .sub {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    display: block;
  }

  .user_voice .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.1875rem;
    line-height: calc(26.6 / 19);
    letter-spacing: 0.08em;
    position: relative;
    top: 7px;
    display: block;
  }

  section.awards .block-title .sub {
    font-size: 0.875rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    display: block;
  }
  section.awards .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.375rem;
    line-height: calc(67.2 / 44);
    letter-spacing: 0.08em;
    position: relative;
    top: 7px;
    display: block;
  }

  section.user_voice .block-title:after {
    content: "";
    width: 22px;
    height: 1px;
    background-color: #000000;
    margin: 14px auto 0 auto;
    display: block;
  }

  .user_voice_main {
    flex-wrap: wrap;
  }

  .user_voice_load {
    width: 100%;
    text-align: center;
  }

  .user_voice_load img {
    width: calc((405 / 750) * 100vw);
    margin: auto;
  }

  .user_voice_detail {
    width: 100%;
  }

  .user_voice_detail ul {
    padding-left: calc((30 / 750) * 100vw);
    padding-right: calc((30 / 750) * 100vw);
  }

  .user_voice_detail ul li {
    padding: calc((60 / 750) * 100vw) 0;
  }

  .user_voice_detail ul li p.txt01 {
    padding-bottom: calc((30 / 750) * 100vw);
    font-size: calc((28 / 750) * 100vw);
  }

  .user_voice_note {
    padding-left: calc((30 / 750) * 100vw);
    padding-right: calc((30 / 750) * 100vw);
  }

  .user_voice_note p.txt {
    padding-left: calc((30 / 750) * 100vw);
    text-indent: calc((-20 / 750) * 100vw);
    font-size: calc((24 / 750) * 100vw);
  }

  .user_voice_detail ul li p.txt02 {
    font-size: calc((28 / 750) * 100vw);
  }
}

/*--------------------------
 guarantee SP
----------------------------*/
@media (max-width: 767.98px) {
  section.guarantee {
    padding-top: 40px;
    padding-bottom: 60px;
  }
  section.guarantee .head {
    text-align: center;
    margin: auto;
    margin-bottom: 36px;
    font-size: 1.1875rem;
    line-height: calc(26.6 / 19);
    letter-spacing: 0.08em;
  }
  section.guarantee .block-1 {
    margin-inline: calc(15 / 375 * 100vw);
    padding: 25px 0;
    background: #f4f4f6;
    text-align: center;
  }
  section.guarantee .block-1 .title {
    margin-bottom: 20px;
    line-height: 1;
    font-size: 1rem;
  }
  section.guarantee .block-1 .text {
    margin-bottom: 20px;
    line-height: 1.8;
  }
  section.guarantee .block-1 .note {
    font-size: 0.625rem;
    line-height: 1.6;
  }
}

/*--------------------------
 banner SP
----------------------------*/
@media (max-width: 767.98px) {
  section.banner {
    padding: 40px calc(15 / 375 * 100vw);
  }

  section.banner .img-wrapper {
    margin: auto;
  }
}

/*--------------------------
 buy now SP
----------------------------*/
@media (max-width: 767.98px) {
  section.buy-now .block-title {
    text-align: center;
    margin: auto;
    margin-bottom: 40px;
  }

  section.buy-now .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.25rem;
    line-height: calc(28 / 20);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 7px;
  }

  section.buy-now .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    display: block;
  }

  section.buy-now .block-title:after {
    content: "";
    width: 44px;
    height: 1px;
    background-color: #3c4249;
    margin: 21px auto 0 auto;
    display: block;
  }

  section.buy-now #dryer_s_plus-buy-now-2.inner,
  section.buy-now #dryer_s_plus-buy-now.inner {
    margin: auto calc(15 / 375 * 100vw) 30px calc(15 / 375 * 100vw);
  }

  section.buy-now #dryer_s_plus-buy-now-2 .offer_txt .ja,
  section.buy-now #dryer_s_plus-buy-now .offer_txt .ja {
    font-size: 1.375rem;
    line-height: calc(30.8 / 22);
    letter-spacing: 0.08em;
    display: block;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .offer_txt .en,
  section.buy-now #dryer_s_plus-buy-now .offer_txt .en {
    font-size: 1rem;
    line-height: calc(22.4 / 16);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 25px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .offer_txt,
  section.buy-now #dryer_s_plus-buy-now .offer_txt {
    margin-bottom: 19px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-left,
  section.buy-now #dryer_s_plus-buy-now .block-left {
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-left .slide-target,
  section.buy-now #dryer_s_plus-buy-now .block-left .slide-target {
    overflow: hidden;
    position: relative;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-left .img-wrapper,
  section.buy-now #dryer_s_plus-buy-now .block-left .img-wrapper {
    position: relative;
    margin-bottom: 20px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-left .zoom:after,
  section.buy-now #dryer_s_plus-buy-now .block-left .zoom:after {
    content: "";
    display: block;
    background-image: url("../../img/ic-zoom.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
    position: absolute;
    bottom: 10px;
    right: 10px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-right .variation,
  section.buy-now #dryer_s_plus-buy-now .block-right .variation {
    display: flex;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-right .variation > li,
  section.buy-now #dryer_s_plus-buy-now .block-right .variation > li {
    border: 1px solid #d8dee5;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-right .variation > li:nth-of-type(n + 2),
  section.buy-now #dryer_s_plus-buy-now .block-right .variation > li:nth-of-type(n + 2) {
    margin-left: 7px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-right .variation > li.active,
  section.buy-now #dryer_s_plus-buy-now .block-right .variation > li.active {
    border: 1px solid #8f999f;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .block-right .variation .img-wrapper,
  section.buy-now #dryer_s_plus-buy-now .block-right .variation .img-wrapper {
    width: calc(63 / 375 * 100vw);
    height: calc(63 / 375 * 100vw);
  }

  section.buy-now #dryer_s_plus-buy-now-2 .button-next,
  section.buy-now #dryer_s_plus-buy-now-2 .button-prev,
  section.buy-now #dryer_s_plus-buy-now .button-next,
  section.buy-now #dryer_s_plus-buy-now .button-prev {
    position: absolute;
    top: calc(50% - 10px);
    transform: translateY(-50%);
    z-index: 1;
    cursor: pointer;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .button-next[aria-disabled="true"],
  section.buy-now #dryer_s_plus-buy-now-2 .button-prev[aria-disabled="true"],
  section.buy-now #dryer_s_plus-buy-now .button-next[aria-disabled="true"],
  section.buy-now #dryer_s_plus-buy-now .button-prev[aria-disabled="true"] {
    display: none;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .button-prev,
  section.buy-now #dryer_s_plus-buy-now .button-prev {
    left: 10px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .button-next,
  section.buy-now #dryer_s_plus-buy-now .button-next {
    right: 10px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .button-next::after,
  section.buy-now #dryer_s_plus-buy-now .button-next::after {
    content: "";
    display: block;
    background-image: url("../../../common/img/im-carousel-right.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
  }

  section.buy-now #dryer_s_plus-buy-now-2 .button-prev::after,
  section.buy-now #dryer_s_plus-buy-now .button-prev::after {
    content: "";
    display: block;
    background-image: url("../../../common/img/im-carousel-left.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
  }

  section.buy-now .block-split {
    background-color: #f4f4f6;
    margin: auto;
    margin-bottom: 40px;
  }

  section.buy-now .block-split .inner {
    padding: 14px calc(15 / 375 * 100vw) 0 calc(15 / 375 * 100vw);
    align-items: center;
  }

  section.buy-now .block-split .inner-2 {
    padding: 0 calc(15 / 375 * 100vw) 18px calc(15 / 375 * 100vw);
  }

  section.buy-now .block-split .inner .block-left {
    width: 98px;
    margin: auto auto 8px auto;
  }

  section.buy-now .block-split .inner .block-right {
    text-align: center;
  }

  section.buy-now .block-split .inner-2 .block-left {
  }

  section.buy-now .block-split .btn-link {
    border: 1px solid #8f999f;
    width: 315px;
    margin: 14px auto 0 auto;
    background-color: #fff;
  }

  section.buy-now .block-split .block-right .btn-link {
    margin-top: 12px;
  }

  section.buy-now .block-split .btn-link a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    width: 100%;
    min-height: 50px;
    font-size: 0.75rem;
    line-height: calc(16.8 / 12);
    letter-spacing: 1.12px;
    color: #000000;
    padding: 9px 10px 9px 11px;
    position: relative;
    text-align: center;
  }

  section.buy-now .block-split .btn-link a:after {
    content: "";
    background-image: url("../../../common/img/ic-arrow-gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    right: 12px;
  }

  section.buy-now .block-split .text-5,
  section.buy-now .block-split .text-1 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.0625rem;
    line-height: calc(23.8 / 17);
    letter-spacing: 0.08em;
  }

  section.buy-now .block-split .text-2 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.575rem;
    line-height: 1;
    letter-spacing: 0.08em;
  }

  section.buy-now .block-split .text-3 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 0.675rem;
    line-height: calc(25.2 / 10.8);
    letter-spacing: 0.08em;
  }

  section.buy-now .block-split .text-4 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.0625rem;
    line-height: calc(23.8 / 17);
    letter-spacing: 0.08em;
  }

  section.buy-now .block-purchase {
    margin: auto calc(15 / 375 * 100vw) 34px calc(15 / 375 * 100vw);
    border: 3px solid #d8dee5;
    padding: 24px 0 24px 0;
  }

  section.buy-now .block-purchase .inner {
    padding: 0 calc(15 / 375 * 100vw);
  }

  section.buy-now .block-purchase .head {
    font-size: 1.0625rem;
    line-height: calc(23.8 / 17);
    letter-spacing: 0.08em;
    text-align: center;
    padding-bottom: 15px;
    margin: auto;
    border-bottom: 1px solid #d8dee5;
  }

  section.buy-now .block-purchase .list {
    display: flex;
    flex-wrap: wrap;
    padding: 20px calc(15 / 375 * 100vw) 0 calc(15 / 375 * 100vw);
  }

  section.buy-now .block-purchase .list > li {
    display: flex;
    align-items: stretch;
    width: 310px;
  }

  section.buy-now .block-purchase .list > li:nth-of-type(n + 2) {
    margin-top: 9px;
  }

  section.buy-now .block-purchase .list > li:before {
    content: "";
    background-image: url("../../img/ic-checkbox.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    display: block;
    margin-right: 8px;
  }

  section.buy-now .block-purchase .list > li span {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    position: relative;
    top: -2px;
  }

  section.buy-now .block-choice {
    margin: auto calc(15 / 375 * 100vw) 30px calc(15 / 375 * 100vw);
  }

  section.buy-now .block-choice .title {
    font-size: 1rem;
    font-weight: bold;
    line-height: calc(23.8 / 16);
    letter-spacing: 0.08em;
    margin-bottom: 16px;
  }

  section.buy-now .block-choice .list > a {
    display: block;
    border-radius: 6px;
    border: 1px solid #8f999f;
    text-decoration: none;
  }

  section.buy-now .block-choice .list > a:nth-of-type(n + 2) {
    margin-top: 10px;
  }

  section.buy-now .block-choice .list > a.active {
    border: 1px solid #000000;
  }

  section.buy-now .block-choice .list > a .inner {
    display: flex;
    align-items: center;
    padding: 12px;
  }

  section.buy-now .block-choice .list > a .inner .block-left {
    width: 50px;
    margin-right: 12px;
    flex-shrink: 0;
  }

  section.buy-now .block-choice .list > a .inner .block-left img {
    height: 50px;
    object-fit: contain;
  }

  section.buy-now .block-guarantee {
    margin: auto calc(15 / 375 * 100vw) 35px calc(15 / 375 * 100vw);
    border: 3px solid #d8dee5;
  }

  section.buy-now .block-guarantee .inner {
    padding: 17px;
    position: relative;
  }

  section.buy-now .block-guarantee .inner .block-left {
    width: 45px;
    margin-bottom: 6px;
  }

  section.buy-now .block-guarantee .inner .block-right .text {
    margin-bottom: 3px;
  }

  section.buy-now .block-guarantee .inner .text-1 {
    font-size: 1.0625rem;
    line-height: calc(23.8 / 17);
    letter-spacing: 0.08em;
    font-weight: bold;
    margin-bottom: 2px;
    position: absolute;
    top: 27px;
    left: 73px;
  }

  section.buy-now .block-guarantee .inner .text-2 {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    font-weight: bold;
    margin-bottom: 13px;
  }

  section.buy-now .block-guarantee .inner .external {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    color: #3980d3;
    display: inline-flex;
    align-items: center;
  }

  section.buy-now .block-guarantee .inner .external:after {
    content: "";
    background-image: url("../../img/ic-openwindow-blue.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    display: block;
    margin-left: 3px;
  }

  section.buy-now .block-guarantee .aster-wrapper {
    display: inline-block;
    font-size: 0.75rem;
    line-height: calc(19.2 / 12);
    letter-spacing: 0.08em;
    color: #5c656b;
  }

  section.buy-now .block-guarantee .aster-wrapper span {
    margin-right: 4px;
  }

  section.buy-now .block-line {
    margin: auto 15px 23px;
    text-align: center;
  }

  section.buy-now .block-line .block-line {
    margin: 14px 0;
  }

  section.buy-now .block-line .text-1 {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    color: #08aa7f;
    margin-bottom: 5px;
  }

  section.buy-now .block-line .link {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    color: #5c656b;
    margin-bottom: 19px;
    display: block;
    text-decoration: none;
  }

  section.buy-now .block-line .link:after {
    content: "";
    background-image: url("../../../common/img/ic-arrow-gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    display: block;
    margin-left: 4px;
    display: inline-block;
  }

  section.buy-now #cart-lock-light {
    display: none;
  }

  section.buy-now .block-line .cart {
    background-color: #010000;
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    line-height: calc(28.8 / 16);
    letter-spacing: 0.08em;
    /* width: 315px; */
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    height: 84px;
    margin: 2.61vw auto;
  }

  section.buy-now .block-line #goodsspec_body {
    margin: 20px 0;
  }

  section.buy-now .cart-arrival-text {
    font-size: 0.875rem;
    line-height: 1.4;
    letter-spacing: 0.08em;
    /* margin-bottom: 20px; */
  }

  section.buy-now .block-line .cart:before {
    content: "";
    background-image: url("../../img/ic-cart.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 22px;
    height: 22px;
    display: block;
    margin-right: 8px;
    position: relative;
    top: -1px;
  }

  section.spec-table {
    margin: auto calc(15 / 375 * 100vw) 0 calc(15 / 375 * 100vw);
  }

  section.spec-table .txt-b {
    font-weight: bold;
    margin-bottom: 50px;
  }

  section.spec-table .d-table {
    display: table;
  }

  section.spec-table .d-row {
    display: table-row;
  }

  section.spec-table .d-cell {
    display: table-cell;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    padding-bottom: 40px;
  }

  section.spec-table .d-cell:nth-of-type(2n + 1) {
    min-width: calc(92 / 375 * 100vw);
  }

  section.spec-table .d-cell:nth-of-type(2n) {
    width: calc(100% - 92 / 375 * 100vw);
    color: #5c656b;
    padding-left: 38px;
  }

  section.spec-table .text:nth-of-type(n + 2) {
    margin-top: 8px;
  }

  section.spec-table .title {
    display: block;
    border-top: 1px solid #d8dee5;
    padding: 20px 0 21px 0;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    position: relative;
    text-decoration: none;
  }

  section.spec-table .bullet-list > li {
    margin-bottom: 20px;
    font-size: 0.875rem;
    line-height: calc(25.2 / 14);
    letter-spacing: 0.08em;
  }

  section.spec-table .bullet-list > li:last-of-type {
    margin-bottom: 40px;
  }
  section.spec-table .bullet-wrapper {
    display: flex;
  }

  section.spec-table .bullet-wrapper > span:first-of-type {
    flex-shrink: 0;
  }
  section.spec-table .title[aria-expanded="true"] {
    border-bottom: 1px solid #d8dee5;
    margin-bottom: 35px;
  }

  section.spec-table .title[aria-expanded="false"]:after {
    content: "";
    background-image: url("../../img/ic-plus-black.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    display: block;
    margin-left: 14px;
    flex-shrink: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 12px;
  }

  section.spec-table .title[aria-expanded="true"]:after {
    content: "";
    background-image: url("../../img/ic-minus-black.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 11px;
    height: 11px;
    display: block;
    margin-left: 14px;
    flex-shrink: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 12px;
  }

  section.spec-table .table-wrapper {
    display: none;
  }

  section.spec-table .table-wrapper.border {
    border-top: 1px solid #dbe0e7;
    padding-top: 25px;
  }

  section.spec-table .link-wrapper {
    margin-bottom: 40px;
  }

  section.spec-table .external {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 20px 0;
    border-top: 1px solid #d8dee5;
    border-bottom: 1px solid #d8dee5;
    text-decoration: none;
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
  }

  section.spec-table .external:before {
    content: "";
    background-image: url("../../img/ic-openwindow_gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    display: block;
    position: relative;
    order: 2;
    margin-left: 4px;
  }

  section.spec-table .external:after {
    content: "";
    background-image: url("../../../common/img/ic-arrow-gray.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
  }

  section.spec-table .bullet-wrapper {
    display: flex;
  }

  section.spec-table .bullet-wrapper > span:first-of-type {
    flex-shrink: 0;
  }

  .offer_txt .en {
    font-size: calc(1.6rem * 10 / 16);
    line-height: calc(22.4 / 16);
    letter-spacing: 0.08em;
    margin-bottom: 24px;
    display: block;
  }

  .offer_txt .ja {
    font-size: calc(2.2rem * 10 / 16);
    line-height: calc(30.8 / 22);
    letter-spacing: 0.08em;
    margin-bottom: 6px;
    display: block;
  }

  .offer_txt .ja .size {
    font-size: 0.75em;
  }

  .offer_txt .price {
    font-size: calc(2.8rem * 10 / 16);
    line-height: calc(33.6 / 28);
    letter-spacing: 0.08em;
    margin-bottom: 8px;
  }

  .offer_txt .yen {
    font-size: calc(2.3rem * 10 / 16);
    line-height: calc(33.6 / 23);
    letter-spacing: 0.08em;
  }

  .offer_txt .tax {
    font-size: calc(1.3rem * 10 / 16);
    line-height: calc(33.6 / 13.2);
    letter-spacing: 0.08em;
  }
}

@media screen and (max-width: 767px) {
  .hair_banner {
    height: 98.7vw;
    background: url(../img/bg-hair1_sp.png) no-repeat top center;
    background-size: contain;
  }

  .hair_banner__title {
    width: 64.26vw;
    max-width: 100%;
    top: 8vw;
    right: 2vw;
    transform: translateY(0);
  }

  .hair-device2 .hair_banner {
    height: calc(37.8rem * 10 / 16);
    background: url(../img/bg-hair2_sp.png) no-repeat top center;
  }

  .hair-device2 .hair_banner__title {
    width: 52.6vw;
    top: 8vw;
  }
}

@media screen and (max-width: 767px) {
  .hair_content {
    padding: calc((40 / 750) * 100vw) calc((30 / 750) * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .hair_inner {
    padding: calc((80 / 750) * 100vw) calc((30 / 750) * 100vw);
  }

  .hair_inner .user_recommend .hair_inner__box-list {
    flex-wrap: wrap;
  }
  .user_recommend .hair_inner__box-list__des-title {
    color: #5c656b;
    font-size: 0.875rem;
    line-height: calc(50.4 / 28);
    font-weight: bold;
    color: #5c656b;
    letter-spacing: 0.08em;
    margin-bottom: 15px;
  }
  .user_recommend .hair_inner__box-list__des-txt {
    font-size: 0.875rem;
    line-height: calc(50.4 / 28);
    letter-spacing: 0.08em;
    color: #5c656b;
  }
  .user_recommend .hair_inner__box-list__des-txt.note {
    font-size: 0.75rem;
    line-height: 1;
    letter-spacing: 0.08em;
    margin-top: 10px;
    color: #8f999f;
  }
}

@media screen and (max-width: 767px) {
  .hair_inner__media {
    margin-bottom: calc(6rem * 10 / 16);
  }

  .hair_inner img {
    width: 100%;
    height: auto;
  }
  .hair-device1 .hair_inner__media {
    width: auto;
  }
  .hair_inner__method {
    margin-bottom: calc(5rem * 10 / 16);
  }

  .hair_inner__method-item {
    width: 100%;
    max-width: 100%;
  }

  .hair_inner__method .hair_inner__method-item:not(:last-child) {
    padding-bottom: calc((110 / 750) * 100vw);
  }

  .hair_inner__method .hair_inner__method-item:first-child::before {
    top: 81%;
    right: 50%;
    transform: rotate(90deg) translateY(-50%);
  }
}

/* end hair inner method */
@media screen and (max-width: 767px) {
  .hair_inner__box .hair_inner__title {
    font-size: calc(2rem * 10 / 16);
    line-height: calc(2.8rem * 10 / 16);
    padding-bottom: calc(2rem * 10 / 16);
    margin-bottom: calc(2rem * 10 / 16);
  }

  .hair_inner__box {
    padding: calc((50 / 750) * 100vw) calc((25 / 750) * 100vw);
  }

  .hair_inner .hair_inner__box:not(:last-child) {
    margin-bottom: calc((40 / 750) * 100vw);
  }

  .hair_inner__box .hair_inner__title {
    margin-bottom: calc(4rem * 10 / 16);
  }

  .hair_inner__box-lists .hair_inner__box-list:not(:last-child) {
    margin-bottom: calc(4rem * 10 / 16);
  }

  .hair_inner__box .hair_inner__box-list__media {
    width: 100%;
    max-width: 100%;
    text-align: center;
    margin-bottom: calc((20 / 750) * 100vw);
  }

  .hair_inner__box .hair_inner__box-list__des {
    width: 100%;
    max-width: 100%;
  }

  .hair_inner__box .hair_inner__box-list__des-title {
    margin-bottom: calc((20 / 750) * 100vw);
  }

  .hair_inner__box .hair_inner__box-list__des-txt {
    color: #5c656b;
  }

  .hair_inner__box .hair_inner__box-list__note-txt {
    line-height: calc(2rem * 10 / 16);
    padding-left: calc(2rem * 10 / 16);
  }
}

/* end hair inner box */
@media screen and (max-width: 767px) {
  .hair_cart {
    max-width: 100%;
    padding: calc((20 / 750) * 100vw) calc((30 / 750) * 100vw) calc((40 / 750) * 100vw);
    margin: calc((110 / 750) * 100vw) calc((30 / 750) * 100vw) calc((80 / 750) * 100vw);
  }

  .cart__head {
    text-align: center;
    padding: 0 calc(1rem * 10 / 16);
    top: calc(-1 * 2.6rem * 10 / 16);
  }

  .cart__photo {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: center;
    padding: calc((80 / 750) * 100vw) 0 0;
    margin-bottom: calc((60 / 750) * 100vw);
  }

  .cart__photo > div {
    width: 25vw;
  }

  .cart__photo > div.sp-only {
    width: 32vw;
    margin-left: calc((60 / 750) * 100vw);
  }

  .cart__detail {
    width: 100%;
    max-width: 100%;
  }

  .cart__name-jp {
    margin-bottom: calc(1rem * 10 / 16);
  }

  .cart__name-en {
    line-height: calc(2.2rem * 10 / 16);
    margin-bottom: 0;
  }
}

/* end hair cart */

@media screen and (max-width: 767px) {
  .cart__button,
  .cart__line {
    height: 15vw;
    max-width: 100%;
  }

  .cart-button:before {
    content: none;
  }

  .cart-button span {
    position: relative;
  }

  .cart-button span:before {
    display: block;
    width: calc(2.2rem * 10 / 16);
    height: calc(2.1rem * 10 / 16);
    content: "";
    position: absolute;
    background: url(../img/ic-cart.png) center/100% auto no-repeat;
    top: 0;
    left: calc(-1 * 3rem * 10 / 16);
    z-index: 1;
  }

  .cart-button--arrow:after {
    top: 50%;
    margin-top: calc(-0.8rem * 10 / 16);
  }
}

/* end button */
@media screen and (max-width: 767px) {
  .kv-4 .hair_banner {
    height: 98.7vw;
    background: url(../img/bg-hair2_sp.png) no-repeat top center;
    background-size: contain;
  }

  .kv-4 .hair_banner__title {
    width: 52.6vw;
    top: 8vw;
  }
}

/*--------------------------
 kv-2
----------------------------*/
@media (max-width: 767.98px) {
  section.kv-2 .inner {
    position: relative;
    background-image: none;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: auto;
    height: calc(740 / 750 * 100vw);
  }

  section.kv-2 .text-wrapper {
  }

  section.kv-2 .text-1 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.375rem;
    line-height: calc(61.6 / 44);
    letter-spacing: 0.08em;
    position: absolute;
    right: calc(-1 / 375 * 100vw);
    top: calc(36 / 375 * 100vw);
  }

  section.kv-2 .note {
    font-size: 0.75rem;
    position: relative;
    top: -9px;
  }

  section.kv-2 .text-2 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
    top: calc(81 / 375 * 100vw);
    position: absolute;
    right: calc(14 / 375 * 100vw);
    text-align: right;
  }

  section.kv-2 .text-2-1 {
    display: block;
  }

  section.kv-2 .text-2-2 {
    display: block;
    position: relative;
    left: calc(20 / 375 * 100vw);
  }
}

/*--------------------------
 kv-4
----------------------------*/
@media (max-width: 767.98px) {
  section.kv-4 .inner {
    position: relative;
    background-image: none;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: auto;
    height: calc(740 / 750 * 100vw);
  }

  section.kv-4 .text-wrapper {
    position: absolute;
    text-align: right;
    right: 0;
    top: calc(36 / 375 * 100vw);
  }

  section.kv-4 .text-1 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.375rem;
    line-height: calc(61.6 / 44);
    letter-spacing: 0.08em;
    display: block;
    margin-bottom: 15px;
  }

  section.kv-4 .text-2 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.75rem;
    line-height: calc(39.2 / 28);
    letter-spacing: 0.08em;
  }

  section.kv-4 .n-1 {
    display: block;
    position: relative;
    right: calc(15 / 375 * 100vw);
  }

  section.kv-4 .n-2 {
    display: block;
    position: relative;
    right: calc(15 / 375 * 100vw);
  }

  section.kv-4 .n-3 {
    display: block;
    position: relative;
  }
}

@media screen and (max-width: 767px) {
  .to_movie {
    margin-top: calc((100 / 750) * 100vw);
  }

  .to_movie .video-wrapper {
    max-width: 100%;
    margin-bottom: calc((60 / 750) * 100vw);
    width: calc(100% - 15 / 375 * 100vw);
    margin-left: auto;
    margin-right: auto;
  }

  .to_movie .video-wrapper img {
    width: 100%;
    height: auto;
  }

  .to_movie .cart__line {
    max-width: 100%;
    height: calc(5.5rem * 10 / 16);
  }

  .to_movie .cart__line span {
    font-size: 0.875rem;
    line-height: calc(29.2 / 28);
    letter-spacing: 0.08em;
  }

  .to_movie .block-title .sub {
    font-size: 0.875rem;
    line-height: calc(19.6 / 14);
    letter-spacing: 0.08em;
    display: block;
  }

  .to_movie .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;
    font-size: 1.1875rem;
    line-height: calc(26.6 / 19);
    letter-spacing: 0.08em;
    position: relative;
    top: 7px;
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .user_manual {
    margin-bottom: calc((80 / 750) * 100vw);
  }

  .user_manual-item {
    width: 100%;
    max-width: 100%;
    margin: 0;
  }

  .user_manual .user_manual-item:not(:last-child) {
    margin-bottom: calc((80 / 750) * 100vw);
  }

  .user_manual-photo {
    text-align: center;
    margin: auto auto 13px auto;
    width: calc(74 / 375 * 100vw);
    height: calc(74 / 375 * 100vw);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #333333;
    border-radius: 50%;
    position: relative;
    margin-bottom: 10px;
  }

  .user_manual-photo.n-1 img {
    width: calc(52 / 375 * 100vw);
  }

  .user_manual-photo.n-2 img {
    width: calc(53 / 375 * 100vw);
  }

  .user_manual-photo.n-3 img {
    width: calc(52 / 375 * 100vw);
  }

  .user_manual-title {
    margin-bottom: calc((20 / 750) * 100vw);
  }

  .user_manual__temp .user_manual__temp-hight {
    width: calc((202 / 750) * 100vw);
  }
}

/* end user manual */
@media screen and (max-width: 767px) {
  .user_recommend {
    padding: calc((60 / 750) * 100vw) calc((30 / 750) * 100vw);
  }

  .user_recommend .hair_inner__box-list__media {
    width: 100%;
    max-width: 100%;
    margin-bottom: calc((60 / 750) * 100vw);
  }

  .user_recommend .hair_inner__box-list__des {
    width: 100%;
    max-width: 100%;
  }

  .user_recommend .hair_inner__box-list__des-photo {
    margin-bottom: calc((60 / 750) * 100vw);
  }
}

/* end user recommend */

/* -----------------------------------------------
cp bnr
------------------------------------------------*/
@media screen and (max-width: 767.98px) {
  .gwp_wrapper {
    margin: 0 calc(15 / 375 * 100vw) 0 calc(15 / 375 * 100vw);
    width: inherit;
    max-width: initial;
  }
  .gwp_top {
    margin-top: 1.5rem;
  }
  .gwp_cart {
    margin-bottom: 1.5rem;
  }
}

@media screen and (max-width: 767.98px) {
  /* 20230829追加アコーディオン */
  .accordion-head {
    column-gap: calc(10 / 375 * 100vw);
  }
  .accordion-head__text .head {
    margin-bottom: 10px;
  }
  .accordion-head__text .head .sub {
    font-size: 0.6875rem;
    margin-bottom: 0;
    line-height: 1.5;
  }
  .accordion-head__text .head .main {
    font-size: 1.1875rem;
  }
  .accordion-head__text {
    padding-right: calc(20 / 375 * 100vw);
  }
  .accordion-btn {
    width: calc(130 / 375 * 100vw);
    height: calc(30 / 375 * 100vw);
  }
  .accordion-btn::before {
    width: calc(12 / 375 * 100vw);
    right: calc(8 / 375 * 100vw);
  }
  .accordion-btn::after {
    height: calc(12 / 375 * 100vw);
    right: calc(13 / 375 * 100vw);
  }
  .hair_inner__box {
    padding: calc((25 / 750) * 100vw);
  }
  .accordion-content {
    padding: calc((50 / 750) * 100vw) 0 calc((25 / 750) * 100vw);
  }

  /* 20231107追加 */
  .youtube-slider {
    margin: calc(-1.5rem * 10 / 16) 0 20px;
  }
  .youtube-slider__inner {
    padding: 0 35px;
  }
  .youtube-slider .swiper-button-prev,
  .youtube-slider .swiper-button-next {
    display: block;
  }
  .youtube-slider .swiper-button-prev {
    left: -10px;
  }
  .youtube-slider .swiper-button-next {
    right: -10px;
  }
  .youtube-slider__ttl {
    font-size: calc((32 / 414) * 100vw);
    margin-bottom: calc((30 / 750) * 100vw);
  }
}

/* 20231117追加 */
@media screen and (max-width: 767.98px) {
  .gift {
    margin: 16vw 0;
    padding: 0;
  }
  .gift__box {
    max-width: 92vw;
    padding: 10.4vw 5.6vw 5.6vw;
    flex-direction: column;
    row-gap: 5vw;
  }
  .gift__box::after {
    width: 87.333333vw;
    height: 97%;
  }
  .gift__box__text img {
    width: 7.2vw;
    height: 7.2vw;
  }
  .gift__box__text .ttl {
    margin: 4vw 0;
  }
  .gift__box__text .ttl span {
    font-size: calc(38 / 750 * 100vw);
  }
  .gift__box__text .text {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1.86;
  }
  .gift__box__img {
    width: 100%;
  }
}
