/* ================================================================================
               base.css
      ============================================================================= */
   img {
    width: 100%;
    height: 100%;
    display: block;
   }

   /* ===============================================================================
               Layout.css
      =============================================================================== */
   .l-gift-main {
    max-width: 1050px;
    width: 100%;
    font-family: "Hiragino Mincho Pro";
    font-weight: 600;
    font-style: normal;
    color: #4F6B53;
    box-sizing: border-box;
    margin-bottom: 200px;
   }

    /* responsive =============================================== */
    @media (max-width: 950px) {
        .l-gift-main {
            width: 90%;
            margin: 0 auto 200px;
        }
    }






      /* ===============================================================================
               component.css
      =============================================================================== */

    /* btn-------------------------------------------------------------- */
   .c-btn {
       position: relative;
       background: linear-gradient(108deg, #197B70 35.13%, #E3FF42 101.42%);
       box-shadow: 0px 8px 5px 0px rgba(0, 0, 0, 0.55);
       display: inline-block;
       border-radius: 50px;
       text-decoration: none;
       transition: filter 0.5s ease;
   }
   .c-btn:hover {
    filter: hue-rotate(180deg);
   }
   .c-btn__cart {
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 0.2rem;
    transform: translate(0,-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    
   }
   .c-btn__flex__cart__img {
    width: 60%;
    height: auto; /* 高さは自動調整 */
    display: block; /* 画像の余計な隙間を消す */
   }
   .c-btn__text {
    font-family: "Hiragino Kaku Gothic StdN";
    color: #ffffff;
    letter-spacing: 0.1rem;
    line-height: 2.5rem;
   }


    /* arrow-------------------------------------------------------------- */
   .c-arrow {
    display: inline-block;
    width: 1em;
    height: 1em;
    position: relative;
   }
   .c-arrow__left,.c-arrow__light {
    display: block;
    width: 0.2rem;
    background-color: currentColor;
    position: absolute;
    bottom: 0;
    transform-origin: bottom center;
    left: 50%;
   }
   .c-arrow__left {
    transform: rotate(-60deg) translateX(1px);
   }
   .c-arrow__light {
    transform: rotate(60deg) translateX(-1px);
   }




    /* ===============================================================================
            Project.css
    =============================================================================== */
    .p-gift-fv__contents__img {
        display: block;
        box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.25);     
        line-height: 0;
    }
    @media (max-width: 950px) {
        .p-gift-fv {
            width: 100vw;
            margin-left: calc(50% - 50vw);     
        }
    }
    @media (max-width: 660px) {
        .p-gift-fv__contents {
            position: relative;
        } 
         .p-gift-fv__contents__img > img {
            object-fit: cover;
            height: 100vh;
        } 
        .p-gift-fv__contents__subcatch,
        .p-gift-fv__contents__catch {
            position: absolute;
        }

        .p-gift-fv__contents__subcatch {
            width: 15%;
            right: 5vw;
            top: 0;
        }
        .p-gift-fv__contents__catch {
            width: 48vw;
            max-width: 200px;
            right: 18vw;
            top: 20px;
        }
        .p-gift-fv__contents__name {
            position: absolute;
            bottom: 0;
            width: 100%;
        }
        .p-gift-fv__contents__meishi {
            position: absolute;
            width: 60vw;
            max-width: 300px;
            bottom: 26vw;
        }
    }

    /* p-gift-fv__links-------------------------------------------------------------- */
    .p-gift-fv__links {
    color: #666666;
    margin-top: 1.2rem;
    }
    .p-gift-fv__links__reverse {
    color: #666666;
    }
    .p-gift-fv__links__arrow {
    color: #ccc;
    }
    @media (max-width: 660px) {
        .p-gift-fv__links {
            margin-top: 0.8rem;
            }
        .p-gift-fv__links__reverse {
        font-size: 12px;
        }
        .p-gift-fv__links_current {
        font-size: 12px;
        }
    }

    /* p-gift-letter-------------------------------------------------------------- */
    .p-gift-letter {
    margin-top: 10vw;
    }


    /* p-gift-problem-------------------------------------------------------------- */
    .p-gift-problem {
    margin-top: 5vw;
    text-align: center;
    }
    .p-gift-proble__box {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    }
    .p-gift-proble__box__line {
    flex: 1;
    height: 2px;
    background-color: currentColor;
    }
    .p-gift-proble__box__contents__lead {
    font-size: clamp(18px, 3.2vw, 32px);
    }
    .p-gift-proble__box__contents__title {
    display: inline-block;
    margin-top: 1vw;
    }
    .p-gift-problem__question {
     font-size: clamp(20px, 3.4vw, 36px);
    margin-top: 10vw;
    }
    .p-gift-problem__flexbox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    }
    .p-gift-problem__flexbox__bubble {
    position: relative;
    width: 20vw;
    height: 20vw;

    }
    .p-gift-problem__flexbox__bubble__back {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -1;
    }
    .p-gift-problem__flexbox__bubble__content {
        width: 100%;
        max-width: 80%; /* 必要に応じて調整可能 */
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-48%, -50%);
        color: #ffffff;
        display: block; /* または省略してもOK */
        text-align: center;
        font-size: 18px;
        line-height: clamp(1rem, 3.5vw, 2.2rem);
        padding: 10px;
        box-sizing: border-box;
    }
    .p-gift-problem__person {
    width: clamp(90px, 16vw, 160px);
    margin: 0 auto;
    transform: translateX(10%);
    }
    .p-gift-proble__arrow__left {
    width: 0.2em;
    height: clamp(50px, 14.5vw, 150px);
    }
    .p-gift-proble__arrow__light {
    width: 0.2em;
    height: clamp(50px, 14.5vw, 150px);
    }

    /* responsive =============================================== */
    @media (max-width: 950px) {
            .p-gift-problem__flexbox__bubble__content {
            font-size: clamp(12px, 1.8vw, 16px);
            }
        .p-gift-proble__box {
            justify-content: center;
            gap: 0.5rem;
            }

    }
    @media (max-width: 660px) {
        .p-gift-problem__flexbox {
            justify-content: center;
            gap: 4vw;
            }
        .p-gift-problem__flexbox__bubble {
            width: 40vw;
            height: 40vw;
            }
        .p-gift-problem__flexbox__bubble__content {
            font-size: clamp(14px, 3.5vw, 22px);
            line-height: clamp(1.5rem, 5vw, 2rem);
        }
        .p-gift-problem__person {
            width: clamp(90px, 20.4vw, 130px);
            }
    }
    @media (max-width: 450px) {
        .p-gift-proble__box__line {
            display: none;
            }
            .p-gift-proble__box__contents__lead {
                display: inline-block;
                border-bottom: solid 1.5px #654559;
                padding-bottom: 5px;
                }
    }
    


    /* p-gift-introduction-------------------------------------------------------------- */
    .p-gift-introduction {
        width: 100%;
        position: relative;
    }
    .p-gift-introduction__product {
        position: absolute;
        z-index: -1;
        width: 80%;
        right: 0;
        top: 50%;
        transform: translateY(-55%);
    }
    .p-gift-introduction__flexbox {
        display: flex;
        justify-content: space-between;
    }
    .p-gift-introduction__flexbox__contents {
        box-sizing: border-box;
        width: 45%;
        background: rgba(79, 107, 83, 0.4);
        border-radius: 10px;
        padding:2rem 2rem 5rem;
    }
    .p-gift-introduction__flexbox__contents__title {
        transform: translate(-3%, -130%);
        color: #B77979;
    }
    .p-gift-introduction__flexbox__contents__desc {
        text-align: justify;
        color: #181316;
    }
    .p-gift-introduction__flexbox__contents__btn {
        padding: 1rem 2rem 1rem 5rem;
        outline : 0.2rem solid #FFFFFF; 
        outline-offset : -0.4rem;
    }
    .p-gift-introduction__flexbox__contents__btn__cart {
        border: 0.2rem solid #ffffff;
        width: 3.6rem;
        height: 3.6rem;
    }
    .p-gift-introduction__flexbox__contents__btn__text {
        font-size: clamp(12px, 1.5vw, 16px);
    }
    .p-gift-introduction__flexbox__price {
        width: 50%;
        align-self: flex-end; 
        /* transform: translateY(-20%) */
    }
    .p-gift-introduction__flexbox__price__mainly__wrap__yen {
        font-size: clamp(24px, 7.62vw, 80px);
    }
    .p-gift-introduction__flexbox__price__mainly__wrap__number {
        font-size: clamp(36px, 11.43vw, 100px);
        color: #B8A178;
        text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.50);
    }
    .p-gift-introduction__flexbox__price__mainly__wrap__tax {
        font-size: clamp(14px, 3.43vw, 36px);
        margin-left: -3vw;
    }
    .p-gift-introduction__flexbox__price__note {
        text-align: right;
        margin-top: 1rem;
        font-size: clamp(10px, 1.52vw, 14px);
        line-height: clamp(1rem, 2.5vw ,1.5rem);
    }


        /* responsive =============================================== */
        @media (max-width: 950px) {
            .p-gift-introduction__product {
                position: static;
                width: 100%;
                margin: 0 auto;
                transform: translateY(0);
            }
            .p-gift-introduction__flexbox {
                flex-direction: column-reverse;
              }
              .p-gift-introduction__flexbox__contents {
                width: 100%;
                padding:10px 2rem 8vw;
            }
            .p-gift-introduction__flexbox__contents__title {
                transform: translate(-3%, -80%);
            }
            .p-gift-introduction__flexbox__price {
                width: 100%;
                transform: translateY(-40%);
            }
            .p-gift-introduction__flexbox__price__mainly {
                width: 55%;
                margin-left: auto;

            }
            .p-gift-introduction__flexbox__price__title {
                text-align: left;
        }
    }
    @media (max-width: 660px) {
        .p-gift-introduction__flexbox__contents__btn {
            padding: 0.3rem 1.3rem 0.3rem 3.5rem;
            outline : 0.15rem solid #FFFFFF; 
        }
        .p-gift-introduction__flexbox__contents__btn__cart {
            border: 0.15rem solid #ffffff;
            width: 2.3rem;
            height: 2.3rem;
        }
        .p-gift-introduction__flexbox__price {
            width: 100%;
            transform: translateY(-30%);
        }
    }
    @media (min-width: 660px) and (max-width: 950px) {
        .p-gift-introduction__flexbox__contents__btn {
            padding: 0.7rem 2rem 0.7rem 5rem;
            outline : 0.2rem solid #FFFFFF; 
            outline-offset : -0.4rem;
            margin-top: 3vw;
        }
        .p-gift-introduction__flexbox__contents__btn__cart {
            border: 0.2rem solid #ffffff;
            width: 3rem;
            height: 3rem;
        }
    }

    

    /* p-gift-point-------------------------------------------------------------- */
    .p-gift-point__title {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .p-gift-point__title__intro {
        font-size: clamp(18px, 5vw, 64px);
        color: #B8A178;
    }
    .p-gift-point__title__feature {
        display: flex;
        font-family: "Hiragino Mincho Pro";
        font-weight: bold;
        align-items: center;
        justify-content: center;
        background-color: #4F6B53;
        font-size: clamp(22px, 7.85vw, 75px);
        color: #ffffff;
        margin-left: clamp(0.2rem, 0.8vw, 2rem);
        border-radius: 50%;
        width: clamp(35px, 10vw, 110px);
        height: clamp(35px, 10vw, 110px);
        border-radius: 50%; 
    }
    .p-gift-point__desc {
        width: 65%;
        margin: 5vw auto;
        text-align: center;
    }
    .p-gift-point__primary {
        display: flex;
        justify-content: space-between;
    }
    .p-gift-point__primary__container {
        position: relative;
        width: 30%;
    }
    .p-gift-point__primary__container__number {
        position: absolute;
        width: 50%;
        transform: translateY(-50%);
    }
    .p-gift-point__primary__container__sidebar {
        position: absolute;
        padding: 5px;
        background-color: #1F7F6F;
        color: #ffffff;
        writing-mode: vertical-rl;
        font-size: 24px;
        top: 8vw;
    }
    .p-gift-point__primary__container__image {
        width: 100%;
    }
    .p-gift-point__primary__container__text {
        font-size: 20px;
        line-height: 1.8rem;
        margin-top: 1vw;
    }
    .p-gift-point__catch {
        color: #ffffff;
        text-align: center;

    }
    .p-gift-point__catch__title {
        background-color: #B8A178;
        font-size: clamp(16px, 3.9vw, 40px);
        padding: 1rem;
        filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    }
    .p-gift-point__catch__desc {
        margin-top: 0.5vw;
        font-weight: 400;
        background-color: #B8A178;
        padding: clamp(1rem, 3.1vw, 2rem) clamp(1rem, 7.8vw, 5rem);
        filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    }
    .p-gift-point__catch__bottom-line {
        display: block;
        background-color: #B8A178;
        width: 100%;
        height: 4vw;
        margin-top: 0.5vw;
        filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    }

    /* responsive =============================================== */
    @media (min-width: 661px) {
        .p-gift-point__primary__container__sidebar {
            font-size: clamp(14px, 2.1vw, 24px);
            top: clamp(20px, 8vw, 100px);
        }
        .p-gift-point__primary__container__text {
            font-size: clamp(12px, 1.7vw, 20px);
            line-height: clamp(1.3rem, 3vw ,2rem);
            margin-top: clamp(0.8rem, 1.9vw, 1.5rem);
        }
    }
    @media (max-width: 660px) {
        .p-gift-point__primary {
            display: block;
        }
        .p-gift-point__primary__container__sidebar {
            font-size: clamp(16px, 4vw, 28px);
            top: clamp(70px, 18.5vw, 100px);
        }
        .p-gift-point__primary__container__text {
            font-size: clamp(11px, 2.5vw, 16px);
            line-height: clamp(1.3rem, 6vw ,2.5rem);
            margin-top: clamp(0.8rem, 3.5vw, 1.5rem);
        }
        .p-gift-point__primary__container {
            width: 65%;
            margin: 25vw auto 0;
        }
    }


    /* p-gift-howto-------------------------------------------------------------- */
    .p-gift-howto {
        text-align: center;
        position: relative;
    }
    .p-gift-howto__person {
        position: relative;
        width: 20%;
        margin: 0 auto;
        transform: translateY(1vw);
        z-index: -1;
    }
    .p-gift-howto__back {
        position: relative;
        top: 2px;
        width: 80%;
        margin: 0 auto;
    }
    .p-gift-howto__back__title {
        font-size: clamp(16px, 4vw, 48px);
        position: absolute;
        width: 80%;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -35%);
        border-bottom: solid 2px #4F6B53;
    }
    .p-gift-howto__container {
        background-color: #E8E1D9;
        border-radius: 20px;
        padding: clamp(1.5rem, 6.2vw, 4rem) 2rem clamp(4rem, 15.5vw, 10rem);
    }
    .p-gift-howto__container__desc {
        width: 80%;
        margin: 0 auto;
    }
    .p-gift-howto__container__steps {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .p-gift-howto__container__steps__contents {
        width: 30%;
    }
    .p-gift-howto__container__steps__contents__circle {
        background-color: #ffffff;
        width: 120px;
        height: 120px;
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        align-items: center;    
        margin: 0 auto;
        position: relative;
        top: 65px;
    }
    .p-gift-howto__container__steps__contents__circle__star {
        width: 12%;
        height: 12%;
        margin-top: 1vw;
        display: flex;
        justify-content: center;
        gap: 5%;
    }
    .p-gift-howto__container__steps__contents__circle__step {
        display: block;
        color: #654559;
        font-family: "Hiragino Maru Gothic Pro";
        font-size: 20px;
        margin-top: 0.5vw
    }
    .p-gift-howto__container__steps__contents__circle__number {
        display: block;
        color: #BE6670;
        font-size: 48px;
    }
    .p-gift-howto__container__steps__contents__primary {
        background-color: #ffffff;
        border-radius: 20px;
        width: 100%;
        height: 500px;
    }
    .p-gift-howto__container__steps__contents__primary__title {
        position: relative;
        padding-top: 70px;
        font-size: 24px;
    }
    .p-gift-howto__container__steps__contents__primary__title::before,
    .p-gift-howto__container__steps__contents__primary__title::after {
        content: '';
        position: absolute;
        left: 50%;
        width: 215px;
        background-color: #BE6670;
      }
      .p-gift-howto__container__steps__contents__primary__title::before {
        height: 1px;    
        bottom: 5%;
        transform: translate(-50%, 0.5rem);
      }
    .p-gift-howto__container__steps__contents__primary__title::after {
        bottom: 0;
        height: 4px;        
        transform: translate(-50%, 0.5rem);
      }
    .p-gift-howto__container__steps__contents__primary__text {
        padding: 2vw 2rem;
        line-height: 1.5rem;
        text-align: justify;

    }  
    .p-gift-howto__container__steps__arrow {
        margin-top: 5vw;
        left: 1rem;
    }
    .p-gift-howto__container__steps__arrow__left,
    .p-gift-howto__container__steps__arrow__light {
        height: 300%;
        background-color: #ffffff;
    }
    .p-gift-howto__container__steps__arrow__left {
    bottom: 1px;
    transform: rotate(-135deg);
    }
    .p-gift-howto__container__steps__arrow__light {
    bottom: -1px;
    transform: rotate(-45deg);
    }
    .p-gift-howto__container__order__promotion {
        font-size: clamp(12px, 2.96vw, 32px);
        line-height: clamp(1.2rem, 6.3vw ,4rem);
        font-weight: 1000;
    }
    .p-gift-howto__container__order__arrow {
        width: 100%;
    }
    .p-gift-howto__container__order__arrow:first-of-type {
        margin-top: clamp(2rem, 12.5vw, 8rem);
    }
    .p-gift-howto__container__order__arrow__left,
    .p-gift-howto__container__order__arrow__light {
        height: clamp(50px, 14.5vw, 150px);
    }
    .p-gift-howto__container__order__btn {
        padding: 1.2rem 3rem 1.2rem 5.5rem;
        outline : 0.2rem solid #FFFFFF; 
        outline-offset : -0.4rem;
        margin-top: 3vw;
    }
    .p-gift-howto__container__order__btn__cart {
        border: 0.2rem solid #ffffff;
        width: 4rem;
        height: 4rem;
    }
    .p-gift-howto__container__order__btn__text {
        font-size: clamp(12px, 2.4vw, 25px);
    }
    /* responsive =============================================== */
    @media (max-width: 950px) {
            .p-gift-howto__container {
        border-radius: 10px;
    }
        .p-gift-howto__container__desc {
        width: 90%;
    }
        .p-gift-howto__container__steps__contents__primary {
            height: 100%;
        }
        .p-gift-howto__container__steps {
            display: block;
        }
        .p-gift-howto__container__steps__contents {
            width: 80%;
            margin: 0 auto;
        }
        .p-gift-howto__container__steps__contents__circle__star {
            margin-top: 2vw;
        }
        .p-gift-howto__container__steps__contents__circle__step {
            font-size: clamp(14px, 2.2vw, 20px);
            margin-top: 0.5vw;
        }
        .p-gift-howto__container__steps__contents__circle__number {
            font-size: clamp(40px, 7.5vw, 70px);
        }
        .p-gift-howto__container__steps__contents__primary__title {
            font-size: clamp(20px, 4vw, 48px);
            padding-top: clamp(45px, 9.8vw, 90px);
        }
        .p-gift-howto__container__steps__contents__circle {
            width: clamp(100px, 16vw, 150px);
            height: clamp(100px, 16vw, 150px);
            top: clamp(55px, 10vw, 80px);
        }
        .p-gift-howto__container__steps__contents__primary__text {
            /* padding: clamp(1.5rem, 2vw, 4rem) 2rem 2rem; */
            padding: clamp(1rem, 7vw, 4rem) clamp(2rem, 7vw, 4rem) clamp(4rem, 9vw, 5rem);
            font-size: clamp(11px, 1.90vw, 20px);
            line-height: clamp(1.2rem, 4.3vw ,2rem);
        }
        .p-gift-howto__container__order__btn {
            padding: 1rem 3rem 1rem 5rem;
            outline : 0.2rem solid #FFFFFF; 
            outline-offset : -0.4rem;
            margin-top: 3vw;
        }
        .p-gift-howto__container__order__btn__cart {
            border: 0.2rem solid #ffffff;
            width: 3.5rem;
            height: 3.5rem;
        }
        .p-gift-howto__container__steps__contents__primary__title::before,
        .p-gift-howto__container__steps__contents__primary__title::after {
            width:clamp(180px, 38vw, 350px);
          }
        .p-gift-howto__container__steps__arrow {
            transform: translateY(180%);
            left: 0;
        }
        .p-gift-howto__container__steps__arrow__left,
        .p-gift-howto__container__steps__arrow__light {
            height: clamp(50px, 8vw, 110px);
            bottom: 0;
        }
        .p-gift-howto__container__steps__arrow__left {
        transform: rotate(-60deg) translateX(1px);
        }
        .p-gift-howto__container__steps__arrow__light {
        transform: rotate(60deg) translateX(-1px);
        }
    }
    @media (max-width: 660px) {
        .p-gift-howto__container__steps__contents {
            width: 100%;
        }
        
        .p-gift-howto__container__order__btn {
            padding: 0.3rem 1.3rem 0.3rem 3.5rem;
            outline : 0.15rem solid #FFFFFF; 
        }
        .p-gift-howto__container__order__btn__cart {
            border: 0.15rem solid #ffffff;
            width: 2.3rem;
            height: 2.3rem;
        }
     }


    /* p-gift-list-------------------------------------------------------------- */
    .p-gift-list {
        text-align: center;
    }
    .p-gift-list__title__dot {
        display: inline-block;
        width: clamp(7px, 2vw, 12px);
        height: clamp(7px, 2vw, 12px);
        background-color: #654559;
        border-radius: 50%;
    }
    .p-gift-list__title__dot:not(:last-child) {
        margin-right: 1vw;
    }
    .p-gift-list__desc {
        width: 80%;
        margin: 5vw auto 0;
    }
    .p-gift-list_container {
        position: relative;
    }
    .p-gift-list__swiper {
        width: 100%;
      }
    .p-gift-list__swiper_wrapper {
        overflow: visible
    }
    .p-gift-list__swiper_wrapper__slides {
        width: 80%;
        padding: 0 5px 10px;
        box-sizing: border-box;
    }
    .p-gift-list__swiper_wrapper__slides__img {
        box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.55);
    }
    .p-gift-list__swiper__prev::after,
    .p-gift-list__swiper__next::after {
        color: #654559;
    }
    .p-gift-list__container__pagination {
        bottom: -20px !important;
    }
        /* responsive =============================================== */
        @media (max-width: 950px) {
        }
        @media (max-width: 660px) {
        .p-gift-list__desc__br {
            display: none;
        }
      }
  


    /* p-gift-others-------------------------------------------------------------- */
    .p-gift-others__title {
        display: flex;
        justify-content: space-between;
    }
    .p-gift-others__title__box {
        background-color: #4F6B53;
        width: 90%;
    }
    .p-gift-others__title__box__text {
        color: #ffffff;
        padding: 2%;
    }
    .p-gift-others__title__square {
        background-color: #4F6B53;
        width: 5%;
    }
    .p-gift-others__desc {
        width: 80%;
        margin: 0 auto;
        text-align: center;
    }
    .p-gift-others__flex {
        display: flex;
        justify-content: space-between;
    }
    .p-gift-others__flex__card {
        background: rgba(184, 161, 120, 0.40);
        border-radius: 3%;
        width: 30%;
        text-align: center;
        box-sizing: border-box;
        padding: 20px;
    }
    .p-gift-others__flex__card__summary {
        font-size: 18px;

    }
    .p-gift-others__flex__card__image {
        margin-top: 1vw
    }
    .p-gift-others__flex__card__text {
        text-align: left;
        font-size: 16px;
        line-height: 2rem;
        margin-top: 1rem;
    }


    /* responsive =============================================== */
    @media (min-width: 660px) and (max-width: 950px) {
        .p-gift-others__flex__card__summary {
            font-size: clamp(12px, 1.9vw, 18px);
        }
        .p-gift-others__flex__card__text {
            font-size: clamp(11px,1.65vw, 16px);
            line-height: clamp(1.2rem, 3.5vw ,2rem);
            margin-top: 1vw;
        }
    }
    @media (max-width: 660px) {
    .p-gift-others__flex {
        display: block;
    }
    .p-gift-others__flex__card {
        width: 80%;
        margin: 5vw auto;
        padding: clamp(25px, 6vw, 80px);
    }
    .p-gift-others__flex__card__summary {
        font-size: clamp(16px, 4.5vw, 28px);
    }
    .p-gift-others__flex__card__image {
        margin-top: clamp(0.8rem, 3.8vw, 1.5rem);
    }
    .p-gift-others__flex__card__text {
        font-size: clamp(12px,3.2vw, 20px);
        line-height: clamp(1.4rem, 6.4vw, 2.5rem);
        margin-top: clamp(0.8rem, 3.8vw, 1.5rem);
    }
    }
      
    
    



     /* p-gift-interest-------------------------------------------------------------- */
    .p-gift-interest_title {
        display: flex;
        align-items: center;
        gap: 1rem;
    }
    .p-gift-interest_title__br {
        display: none;
    }
    .p-gift-interest_title::after {
        content: '';
        flex-grow: 1;
        height: 2px;
        background-color: #654559;
    }
    .p-gift-interest__container {
        display: flex;
        align-items: center;
        width: 80%;
        margin: 0 auto;
        justify-content: space-between;
    }
    .p-gift-interest__container__contents {
        width: 52%;
    }
    .p-gift-interest__container__contents__price {
        margin-top: 2vw;
        margin-left: 2rem;
    }
    .p-gift-interest__container__contents__price__number {
        font-size: clamp(36px, 6.48vw,70px);
    }
    .p-gift-interest__container__contents__price__tax {
        font-size: clamp(20px, 2.37vw, 36px);
    }
    .p-gift-interest__container__note {
        display: inline-block;
        margin-top: 1rem;
        margin-left: 2rem;
        font-size: clamp(10px, 2.3vw, 14px);
        line-height: clamp(1rem, 2.5vw ,1.5rem);
    }
    .p-gift-interest__container__image {
        width: 45%;
    }
    .p-gift-interest__card {
        box-sizing: border-box;
        width: 80%;
        margin: 5vw auto 0;
        background: rgba(79, 107, 83, 0.30);
        border-radius: 20px;
        padding: 4vw;
    }
    .p-gift-interest__card__annotation {
        font-size: 24px;
    }
    .p-gift-interest__card__responsive {
        display: none;
    }
    .p-gift-interest__card__flexbox {
        margin-top: 5vw;
        display: flex;
        justify-content: space-between;
    }
    .p-gift-interest__card__flexbox__wrap {
        width: 100%;
        text-align: center;
        max-width: 200px;
    }
    .p-gift-interest__order {
        margin-top: 5vw;
    }
    .p-gift-interest__order___promotion {
        position: relative;
        width: clamp(180px, 37vw, 400px);
        margin: 0 auto;
    }
    .p-gift-interest__order___promotion::before,
    .p-gift-interest__order___promotion::after {
        content: "";
        position: absolute;
        top: 50%;
        width: 20%;
        height: 3px;
        background-color: #654559;
    }
    .p-gift-interest__order___promotion::before {
        left: -20%;
        transform: translateY(-50%) rotate(45deg);
    }
    .p-gift-interest__order___promotion::after {
        right: -20%;
        transform: translateY(-50%) rotate(-45deg);
    }
    .p-gift-interest__wrap {
        display: flex;
        justify-content: center;
    }
    .p-gift-interest__card__flexbox__wrap__caption {
        display: block;
        margin-top: 1vw;
        font-size: clamp(11px, 1.6vw, 16px);
    }
    .p-gift-interest__wrap__btn {
        padding: 1.3rem 3rem 1.3rem 6rem;
        outline : 0.2rem solid #FFFFFF; 
        outline-offset : -0.4rem;
        margin-top: 3vw;
    }
    .p-gift-interest__wrap__btn__cart {
        border: 0.2rem solid #ffffff;
        width: 4.2rem;
        height: 4.2rem;
    }
    .p-gift-interest__wrap__btn__text {
        font-size: clamp(12px, 2.4vw, 25px);
    }

    /* responsive =============================================== */
    @media (max-width: 950px) {
        .p-gift-interest__container {
            width: 90%;
        }
        .p-gift-interest__card {
            width: 90%;
        }
        .p-gift-interest__wrap__btn {
            padding: 1rem 3rem 1rem 5rem;
            outline : 0.2rem solid #FFFFFF; 
            outline-offset : -0.4rem;
            margin-top: 3vw;
        }
        .p-gift-interest__wrap__btn__cart {
            border: 0.2rem solid #ffffff;
            width: 3.5rem;
            height: 3.5rem;
        }
    }
    @media (max-width: 660px) {
        .p-gift-interest_title__br {
            display: block;
        }
        .p-gift-interest__container {
            flex-direction: column-reverse;
        }
        .p-gift-interest__container__contents {
            width: 100%;
            margin-top: 1vw;
        }
        .p-gift-interest__container__image {
            width: 80%;
        }
        .p-gift-interest__card__responsive {
            display: block;
            list-style-position: inside;
        }
        .p-gift-interest__card__flexbox__wrap__caption {
            display: none;
        }
        .p-gift-interest__wrap__btn {
            padding: 0.5rem 2rem 0.5rem 4rem;
        }
        .p-gift-interest__wrap__btn__cart {
            width: 2.7rem;
            height: 2.7rem;
        }
    }
        


          /* ===============================================================================
               Utility.css
      =============================================================================== */

    /* font-size line-hight-------------------------------------------------------------- */


    /* 推奨値の計算式[vw = (最大サイズ - 最小サイズ) / (最大幅 - 最小幅) × 100] */
    
    /* large-size(title) */
    .u-fontsize-large {
        font-size: clamp(25px, 4.8vw, 48px);
        line-height: clamp(2rem, 8vw ,3rem);
    }

    /* middle(desc) */
    .u-fontsize-middle {
        font-size: clamp(13px, 2.29vw, 24px);
        line-height: clamp(1.2rem, 4.3vw ,2rem);
    }

    /* small(text) */
    .u-fontsize-small {
        font-size: clamp(11px, 1.90vw, 20px);
        line-height: clamp(1.2rem, 4.3vw ,2rem);
    }



    /* margin-top-------------------------------------------------------------- */

    /* large-size(section) */
    .u-margin-large {
       margin-top: clamp(6rem, 22vw, 14rem);
    }

    /* middle(contents) */
    .u-margin-middle {
        margin-top: clamp(4rem, 15.5vw, 10rem);
    }

    /* small(desc) */
    .u-margin-small {
        margin-top: clamp(1.5rem, 6.2vw, 4rem);
    }

    /* tiny(text) */
    .u-margin-tiny {
        margin-top: clamp(0.5rem, 2vw, 1rem);
    }
    


    .u-fv-sp {
        display: none;
    }
    @media (max-width: 660px) {
        .u-fv-sp {
            display: block;
        }
    }