/* リセットCSS */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

div#outer {
    max-width: unset;
}

html {
    scroll-behavior: smooth;
}

/* 基本設定 */
body {.
    font-family: 'Noto Sans JP', sans-serif;
    color: #0A3051;
    line-height: 1.8;
    overflow-x: hidden;
}

img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contents {
    width: 100vw;
    overflow-x: hidden;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

/* セクション共通 */
section {
    width: 100%;
}

/* ヒーローセクション */
.hero {
    width: 100vw;
    height: 50vw;
    background-image: url('../images/fv.png');
    background-size: cover;
    background-position: center;
    padding-top: 7.431vw;
    position: relative;
    overflow: hidden;
}

.hero::after {
    content: '';
    width: 35vw;
    height: 35vw;
    position: absolute;
    top: 8.403vw;
    left: 10.486vw;
    background-image: url('../images/fv-bg.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
}

.hero__flower01 {
    width: 25.486vw;
    height: 19.236vw;
    position: absolute;
    top: -2.014vw;
    right: -2.014vw;
    background-image: url('../images/fv-flower01.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.hero__flower02 {
    width: 16.875vw;
    height: 12.778vw;
    position: absolute;
    bottom: -0.278vw;
    left: -1.181vw;
    background-image: url('../images/fv-flower02.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.hero__container {
    width: 87.78vw;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1;
    position: relative;
}

.hero__text-wrap {
    width: 46vw;
}

.hero__entitle {
    color: white;
    font-family: 'Shippori Mincho', serif;
    font-size: 0.972vw;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.08em;
    padding-bottom: 1.111vw;
    border-bottom: 1px solid white;
    width: fit-content;
}

.hero__title {
    margin: 0;
    padding: 0;
    font-family: 'Shippori Mincho', serif;
    font-size: 3.472vw;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.04em;
    color: white;
    margin-top: 1.111vw;
}

.hero__sub-title {
    margin-top: 0.556vw;
    font-family: 'Shippori Mincho', serif;
    font-size: 1.667vw;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.04em;
    color: white;
}

.hero__sub-title span {
    display: inline-block;
    padding: 0 0.139vw;
    background-color: white;
    color: #62ADC3;
    font-size: 1.944vw;
    margin: 0 0.556vw;
}

.hero__sub-title span:first-child {
    margin-left: 0;
}

.hero__text {
    font-size: 1.389vw;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 0.08em;
    color: white;
    margin: 0;
    padding: 0;
    margin-top: 1.111vw;
    margin-top: 2.778vw;
}

.hero__button {
    display: inline-block;
    width: 37.639vw;
    height: 4.722vw;
    background-color: #E2A220;
    color: white;
    border-radius: 694.375vw;
    text-decoration: none;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.389vw;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.1em;
    padding-top: 1.389vw;
    padding-left: 10.139vw;
    position: relative;
    margin-top: 2.778vw;
}

.hero__button::after {
    content: '';
    width: 1.667vw;
    height: 1.667vw;
    position: absolute;
    top: 1.528vw;
    right: 8vw;
    background-image: url('../images/white-arrow.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.hero__image {
    width: 37.5vw;
    height: 35.208vw;
    border-radius: 1.667vw;
    overflow: hidden;
}

/* アバウトセクション */
.about {
    width: 100vw;
    padding: 6.944vw 0;
    position: relative;
    z-index: 0;
    overflow: hidden;
    background-image: url('../images/about.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.about__bg01 {
    width: 28.333vw;
    height: 15.764vw;
    position: absolute;
    top: 3.264vw;
    left: -5.417vw;
    background-image: url('../images/about-bg01.png');
    background-size: cover;
    background-position: center;
}

.about__bg02 {
    width: 28.333vw;
    height: 15.764vw;
    position: absolute;
    bottom: 0.278vw;
    right: -9.097vw;
    background-image: url('../images/about-bg02.png');
    background-size: cover;
    background-position: center;
}

.about__flower {
    width: 16.944vw;
    height: 10.278vw;
    position: absolute;
    top: 61.736vw;
    left: 12.778vw;
    background-image: url('../images/about-flower.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.about__container {
    width: 57.5vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.556vw;
}

.about__entitle {
    font-family: 'Shippori Mincho', serif;
    font-size: 0.833vw;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.08em;
    text-align: center;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    padding-bottom: 1.111vw;
    position: relative;
}

.about__entitle::after {
    content: '';
    width: 4.444vw;
    height: 0.069vw;
    background-color: #0A3051;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.about__text-wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.778vw;
}

.about__title {
    font-family: 'Shippori Mincho', serif;
    font-size: 2.778vw;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0.16em;
    color: #0A3051;
    text-align: center;
    margin: 0;
    padding: 0;
}

.about__text {
    font-size: 1.389vw;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 0.1em;
    color: #0A3051;
    text-align: center;
}

.about__box {
    width: 100%;
    background-color: white;
    border-radius: 2.778vw;
    padding: 1.667vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.about__box-image {
    width: 31.25vw;
    height: 26.458vw;
    position: relative;
}

.about__line01 {
    position: absolute;
    top: 3.576vw;
    right: -0.278vw;
    width: 7.014vw;
    height: 0.729vw;
    background-image: url('../images/line01.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.about__line02 {
    position: absolute;
    top: 14.097vw;
    right: -0.243vw;
    width: 6.076vw;
    height: 1.736vw;
    background-image: url('../images/line02.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.about__line03 {
    position: absolute;
    top: 20.833vw;
    right: -0.694vw;
    width: 7.431vw;
    height: 0.069vw;
    background-image: url('../images/line03.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.about__box-content {
    width: 21.319vw;
    display: flex;
    flex-direction: column;
    gap: 2.778vw;
}

.about__box-text-wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.556vw;
}

.about__box-title {
    font-family: 'Shippori Mincho', serif;
    font-size: 1.389vw;
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: 0.1em;
    margin: 0;
    padding: 0;
}

.about__box-text {
    font-family: 'Shippori Mincho', serif;
    font-size: 1.111vw;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0.1em;
    margin: 0;
    padding: 0;
}

.about__button {
    width: 37.639vw;
    height: 4.722vw;
    background-color: #E2A220;
    color: white;
    font-size: 1.389vw;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-decoration: none;
    padding-top: 1.389vw;
    padding-left: 10.139vw;
    position: relative;
    border-radius: 69.375vw;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.08);
}

.about__button::after {
    content: '';
    width: 1.667vw;
    height: 1.667vw;
    position: absolute;
    top: 1.528vw;
    right: 10.139vw;
    background-image: url('../images/white-arrow.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.point {
    width: 100vw;
    padding: 6.944vw 0;
    position: relative;
    z-index: 1;
    background-image: url('../images/point.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.point__bg01 {
    width: 28.333vw;
    height: 15.764vw;
    position: absolute;
    top: 7.986vw;
    left: -4.792vw;
    background-image: url('../images/point-bg01.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.point__bg02 {
    width: 20.625vw;
    height: 15.764vw;
    position: absolute;
    bottom: 3.889vw;
    right: 0;
    background-image: url('../images/point-bg02.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
}

.point__flower {
    width: 11.25vw;
    height: 8.472vw;
    position: absolute;
    top: 15.833vw;
    left: 70vw;
    background-image: url('../images/point-flower.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.point__container {
    width: 83.056vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.556vw;
    position: relative;
    z-index: 1;
}

.point__title-wrap {
    width: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.667vw;
}

.point__entitle {
    color: white;
    font-family: 'Shippori Mincho', serif;
    font-size: 0.833vw;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.08em;
    text-align: center;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    padding: 0 0.972vw 1.111vw;
    border-bottom: 1px solid white;
}

.point__title {
    font-family: 'Shippori Mincho', serif;
    font-size: 2.778vw;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.04em;
    color: white;
    margin: 0;
    padding: 0;
    text-align: center;
}

.point__row {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 4.444vw;
}

.point__item {
    width: 37.5vw;
    position: relative;
}

.point__item-number {
    font-family: 'Shippori Mincho', serif;
    font-size: 1.667vw;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0;
    color: #E2A220;
}

.point__item-title {
    color: white;
    font-family: 'Shippori Mincho', serif;
    font-size: 2.222vw;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.08em;
    margin: 0;
    margin-top: 1.111vw;
    padding: 0;
}

.point__item-text {
    color: white;
    margin-top: 0.278vw;
    font-size: 1.389vw;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
}

.point__item-image {
    width: 37.5vw;
    height: 20.972vw;
    margin-top: 2.222vw;
}

.story {
    width: 100vw;
    padding: 8.333vw 0;
    background-color: #EAF0F2;
    position: relative;
    overflow: hidden;
}

.story__container {
    width: 77.85vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.story__content {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 5.556vw;
    margin-top: 1.667vw;
}

.story__content-text {
    color: #0A3051;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.389vw;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0.12em;
    text-align: center;
}

.story__title {
    color: #0A3051;
    font-family: "Shippori Mincho", serif;
    font-size: 2.778vw;
    font-style: normal;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.01em;
    padding: 1.11vw 0;
    margin-top: 5.556vw;
}

.story__info {
    width: 56.944vw;
    margin: 0 auto;
    background-color: white;
    padding: 1.111vw 5.556vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.story__info-image {
    width: 10.903vw;
    height: 12.431vw;
}

.story__info-text {
    width: 30.417vw;
    color: #333;
    font-family: "Shippori Mincho", serif;
    font-size: 1.389vw;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0.1em;
}

.story__info-text span {
    font-size: 1.667vw;
    font-weight: 700;
}

.product {
    width: 100vw;
    padding: 6.944vw 0;
    position: relative;
    background-image: url('../images/product.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.product__bg01 {
    width: 28.333vw;
    height: 15.764vw;
    position: absolute;
    top: 4.792vw;
    left: -5.833vw;
    background-image: url('../images/product-bg01.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.product__bg02 {
    width: 28.333vw;
    height: 15.764vw;
    position: absolute;
    bottom: -5.903vw;
    right: -2.292vw;
    background-image: url('../images/product-bg02.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.product__flower {
    width: 16.944vw;
    height: 12.778vw;
    position: absolute;
    bottom: 1.806vw;
    right: -1.458vw;
    background-image: url('../images/product-flower.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.product__container {
    width: 71.875vw;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.556vw;
}

.product__title-wrap {
    width: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.667vw;
}

.product__entitle {
    font-family: 'Shippori Mincho', serif;
    font-size: 0.833vw;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.08em;
    text-align: center;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    padding-bottom: 1.111vw;
    border-bottom: 1px solid #0A3051;
}

.product__title {
    margin: 0;
    padding: 0;
    font-family: 'Shippori Mincho', serif;
    font-size: 2.778vw;
    font-weight: 500;
    letter-spacing: 0.04em;
}

.product__row {
    width: 58.333vw;
    width: fit-content;
    display: flex;
    justify-content: space-between;
}

.product__item {
    width: 27.778vw;
    background-color: white;
    padding: 1.667vw;
    position: relative;
}

.product__item.selected {
    border: 4px solid #499FB5;
}

.product__item-tag {
    font-family: 'Shippori Mincho', serif;
    font-size: 1.111vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    color: white;
    background-color: #499FB5;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.278vw 0.556vw;
}

.product__item-label {
    font-family: 'Shippori Mincho', serif;
    font-size: 0.972vw;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
    color: #0A3051;
    padding: 0.278vw 0.556vw;
    border: 1px solid #0A3051;
    width: fit-content;
    border-radius: 0.139vw;
}

.product__item-image {
    width: 24.444vw;
    height: 12.292vw;
    overflow: hidden;
    margin-top: 1.111vw;
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.12);
}

.product__item-name {
    font-family: 'Shippori Mincho', serif;
    font-size: 1.667vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    color: #0A3051;
    margin-top: 2.778vw;
}

.product__item-sub {
    font-family: 'Shippori Mincho', serif;
    font-size: 1.389vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0;
    color: #0A3051;
    margin-top: 0.556vw;
}

.product__item-price {
    font-family: 'Shippori Mincho', serif;
    font-size: 2.778vw;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0;
    color: #0A3051;
    margin-top: 0.556vw;
}

.product__item-price span {
    font-size: 1.667vw;
}

.product__item-text {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 0.833vw;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
    color: #0A3051;
    margin-top: 1.111vw;
}

.product__item-button {
    display: inline-block;
    width: 24.444vw;
    height: 4.722vw;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.389vw;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    background-color: #E2A220;
    color: white;
    padding-top: 1.389vw;
    padding-left: 5.833vw;
    margin-top: 1.667vw;
    border-radius: 69.375vw;
    text-decoration: none;
    position: relative;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.08);
}

.product__item-button::after {
    content: '';
    width: 1.667vw;
    height: 1.667vw;
    position: absolute;
    top: 1.528vw;
    right: 5.833vw;
    background-image: url('../images/white-arrow.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* レスポンシブデザイン */
@media (max-width: 780px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    .contents {
        width: 100vw;
    }

    /* セクション共通 */
    section {
        width: 100%;
        overflow-x: hidden;
    }

    /* ヒーローセクション */
    .hero {
        width: 100vw;
        height: 196.8vw;
        background-image: url('../images/sp-fv.png');
        background-size: cover;
        background-position: center center;
        padding-top: 10.933vw;
        padding-left: 4.267vw;
    }

    .hero::after {
        content: '';
        width: 64vw;
        height: 64vw;
        position: absolute;
        top: 16.8vw;
        left: 17.87vw;
        z-index: 0;
    }

    .hero__flower01 {
        width: 41.067vw;
        height: 31.2vw;
        position: absolute;
        top: 0;
        right: -4.267vw;
    }

    .hero__flower02 {
        width: 52.533vw;
        height: 39.733vw;
        position: absolute;
        bottom: 19.733vw;
        left: -8.267vw;
        z-index: 1;
    }

    .hero__container {
        width: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        z-index: 1;
        position: relative;
    }

    .hero__text-wrap {
        width: 100%;
    }

    .hero__entitle {
        font-size: 3.733vw;
        padding-bottom: 4.267vw;
    }

    .hero__title {
        font-size: 8.267vw;
        letter-spacing: 0.04em;
        margin-top: 4.267vw;
    }

    .hero__sub-title {
        margin-top: 2.133vw;
        font-size: 5.333vw;
    }

    .hero__sub-title span {
        display: inline-block;
        padding: 0 0.533vw;
        font-size: 5.6vw;
        margin: 0 2vw;
        margin-bottom: 2.133vw;
    }

    .hero__sub-title span:first-child {
        margin-left: 0;
    }

    .hero__text {
        font-size: 3.733vw;
        margin-top: 6.4vw;
    }

    .hero__button {
        display: inline-block;
        width: 91.467vw;
        height: 14.933vw;
        border-radius: 2666.4vw;
        font-size: 3.733vw;
        font-weight: bold;
        padding-top: 4.8vw;
        padding-left: 21.067vw;
        position: relative;
        margin-top: 98.667vw;
    }

    .hero__button::after {
        content: '';
        width: 6.4vw;
        height: 6.4vw;
        position: absolute;
        top: 4.267vw;
        right: 21.067vw;
    }

    .hero__image {
        position: absolute;
        top: 72vw;
        left: 0;
        width: 91.467vw;
        height: 85.867vw;
        border-radius: 6.4vw;
        overflow: hidden;
    }
    
    /* アバウトセクション */
    .about {
        width: 100vw;
        padding: 10.667vw 0;
    }

    .about__bg01 {
        width: 53.867vw;
        height: 30.133vw;
        position: absolute;
        top: 3.733vw;
        left: -24.8vw;
    }

    .about__bg02 {
        width: 50.4vw;
        height: 28vw;
        position: absolute;
        bottom: -17.867vw;
        right: -8.533vw;
    }

    .about__flower {
        width: 26.933vw;
        height: 20.267vw;
        position: absolute;
        top: 282vw;
        left: 0;
    }

    .about__container {
        width: 89.333vw;
        margin: 0 auto;
        height: unset;
        display: flex;
        gap: 10.667vw;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
    }

    .about__entitle {
        font-size: 3.2vw;
        padding-bottom: 4.267vw;
    }

    .about__entitle::after {
        width: 17.067vw;
        height: 0.267vw;
    }

    .about__text-wrap {
        width: 100%;
        gap: 4.267vw;
    }

    .about__title {
        font-size: 6.4vw;
    }

    .about__text {
        font-size: 3.733vw;
    }

    .about__box {
        border-radius: 10.667vw;
        padding: 6.4vw;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        gap: 5.333vw;
    }

    .about__box-image {
        width: 73.6vw;
        height: 62.133vw;
        position: relative;
    }

    .about__line01 {
        display: none;
    }

    .about__line02 {
        display: none;
    }

    .about__line03 {
        display: none;
    }

    .about__box-content {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 6.4vw;
    }

    .about__box-text-wrap {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 2.133vw;
    }

    .about__box-title {
        font-size: 4.8vw;
    }

    .about__box-text {
        font-size: 3.733vw;
    }

    .about__button {
        width: 86.933vw;
        height: 18.133vw;
        font-size: 5.333vw;
        padding-top: 5.333vw;
        padding-left: 10.267vw;
        position: relative;
        border-radius: 266.4vw;
    }

    .about__button::after {
        content: '';
        width: 6.4vw;
        height: 6.4vw;
        position: absolute;
        top: 5.867vw;
        right: 10.267vw;
    }   

    .point {
        width: 100vw;
        padding: 21.333vw 0;
    }

    .point__bg01 {
        display: none;
    }

    .point__bg02 {
        display: none;
    }

    .point__flower {
        position: absolute;
        top: 60.8vw;
        left: 69.333vw;
        width: 21.333vw;
        height: 16.067vw;
    }

    .point__container {
        width: 89.333vw;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10.667vw;
    }

    .point__title-wrap {
        gap: 6.4vw;
    }

    .point__entitle {
        font-size: 3.2vw;
        padding: 0 3.733vw 4.267vw;
    }

    .point__title {
        font-size: 6.4vw;
    }

    .point__row {
        width: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10.667vw;
    }

    .point__item {
        width: 100%;
    }

    .point__item-tag {
        font-size: 4.267vw;
    }
    
    .point__item-number {
        font-size: 6.4vw;
    }

    .point__item-title {
        font-size: 6.4vw;
        margin-top: 1vw;
    }

    .point__item-text {
        font-size: 4.8vw;
        margin-top: 6.4vw;
    }

    .point__item-image {
        width: 89.333vw;
        height: 60.131vw;
        margin-top: 4.267vw;
    }

    .story {
        width: 100vw;
        padding: 21.333vw 0;
    }

    .story__container {
        width: 91.2vw;
        margin: 0 auto;
    }

    .story__content {
        width: 100%;
        margin-left: 0;
        gap: 16vw;
        margin-top: 5.333vw;
    }

    .story__content-text {
        font-size: 4.267vw;
    }

    .story__title {
        font-size: 8.533vw;
        position: relative;
        left: 0;
        top: 0;
        padding: 0;
        margin-top: 10.667vw;
    }

    .story__info {
width: 100%;
        padding: 4.267vw;
        flex-direction: column;
        gap: 30px;
    }

    .story__info-image {
        width: 41.867vw;
        height: 47.733vw;
    }

    .story__info-text {
        width: 100%;
        font-size: 4.267vw;
    }

    .story__info-text span {
        font-size: 5.333vw;
    }

    .product {
        width: 100vw;
        padding: 21.333vw 0;
    }

    .product__bg01 {
        width: 53.867vw;
        height: 30.133vw;
        position: absolute;
        top: 3.733vw;
        left: -24.8vw;
    }

    .product__bg02 {
        width: 50.4vw;
        height: 28vw;
        position: absolute;
        bottom: -17.867vw;
        right: -8.533vw;
    }

    .product__flower {
        width: 26.933vw;
        height: 20.267vw;
        position: absolute;
        top: unset;
        left: unset;
        bottom: 0;
       right: 0;
    }

    .product__container {
        width: 89.333vw;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5.333vw;
    }

    .product__title-wrap {
        gap: 6.4vw;
    }

    .product__entitle {
        font-size: 3.2vw;
        padding-bottom: 4.267vw;
    }

    .product__title {
        font-size: 6.4vw;
        margin: 0;
        padding: 0;
    }

    .product__row {
        width: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10.667vw;
    }

    .product__item {
        width: 100%;
        gap: 6.4vw;
        padding: 4.267vw;
    }
  
.product__item-tag {
    font-size: 4.267vw;
    padding: 1.067vw 2.1333vw;
}

    .product__item-label {
        font-size: 3.733vw;
        padding: 1.067vw 2.133vw;
        border-radius: 0.533vw;
    }

    .product__item-image {
        width: 100%;
        height: 44.92vw;
        margin-top: 4.267vw;
    }

    .product__item-name {
        font-size: 5.333vw;
        margin-top: 10.667vw;
    }

    .product__item-sub {
    font-size: 4.267vw;
    margin-top: 2.133vw;
}

    .product__item-price {
        font-size: 7.467vw;
        margin-top: 1.067vw;
    }

    .product__item-price span {
        font-size: 5.333vw;
    }

    .product__item-text {
        font-size: 3.2vw;
        margin-top: 4.267vw;
    }

    .product__item-button {
        width: 77.333vw;
        height: 18.133vw;
        font-size: 4.8vw;
        padding-top: 5.333vw;
        padding-left: 16vw;
        position: relative;
        border-radius: 266.4vw;
        margin-top: 6.4vw;
    }

    .product__item-button::after {
        content: '';
        width: 6.4vw;
        height: 6.4vw;
        position: absolute;
        top: 5.867vw;
        right: 16vw;
    }
}
