/* 共通 */
.singleProduct_underlineHead{
    font-size: 6.4vw;
    font-weight: 700;
    text-align: center;
}
.singleProduct_underlineHead::after{
    content: "";
    aspect-ratio: 240 / 8;
    background-color: #3A7961;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4%;
    width: 32vw;
}

.singleProduct_head{
    color: #3A7961;
    font-family: "Inknut Antiqua", serif;
    font-size: 8.5vw;
    font-weight: 700;
    text-align: center;
}

.linkWithImage_item{
    display: block;
    border: .6vw solid #3A7961;
    border-radius: 4vw;
    overflow: hidden;
}

.linkWithImage_item_btn{
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 5.3vw;
    font-weight: 700;
    line-height: 1.5;
    padding: 3% 6%;
}
.linkWithImage_item_btn::after{
    content: "";
    aspect-ratio: 15/18;
    background-image: url(../images/common/arrow_right_green.svg);
    background-size: cover;
    display: block;
    flex-shrink: 0;
    margin-left: 7%;
    width: 3.5%;
}

/* firstView */
.section_firstView{
    padding-top: 8%;
}

.firstView_wrap{
    margin-left: auto;
    margin-right: auto;
    width: 80%;
}

.firstView_thumb_box{
    border: .6vw solid #F5F5F5;
    border-radius: 2.7vw;
    overflow: hidden;
}

.firstView_title{
    font-size: 6.4vw;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 10%;
}

.firstView_readtext{
    font-size: 3.7vw;
    line-height: 1.6;
    margin-top: 4%;
    text-align: justify;
}

/* feature */
.section_feature{
    padding-top: 11%;
}

.feature_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.feature_icon_wrap{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4.5vw;
    margin-top: 9%;
}

.feature_icon{
    aspect-ratio: 1 / 1;
    border: .6vw solid #3A7961;
    border-radius: 4vw;
    color: #3A7961;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 1%;
    padding-right: 1%;
    text-align: center;
    width: 30%;
}

.feature_icon_text{
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4; /* 行数 */
    font-size: 3.2vw;
    font-weight: 700;
    line-height: 1.5;
}

.feature_wrap{
    margin-top: 22%;
}
.feature_item:nth-child(n+2){
    margin-top: 12%;
}

.feature_inner{
    border: .6vw solid #3A7961;
    border-radius: 4vw;
    display: flex;
    justify-content: space-between;
    overflow: hidden;
}

.feature_info_box{
    align-self: center;
    padding: 6% 5% 6% 6%;
}

.feature_title{
    font-size: 5.3vw;
    font-weight: 700;
    line-height: 1.3;
}

.feature_text{
    font-size: 3.7vw;
    line-height: 1.6;
    margin-top: 6%;
    text-align: justify;
}

.feature_img_box{
    flex-shrink: 0;
    width: 45%;
}

.feature_img{
    object-fit: cover;
    height: 100%;
}

.feature_notice{
    font-size: 2.7vw;
    line-height: 1.5;
    margin-top: 2%;
    text-align: justify;
}

/* productVideo */
.section_productVideo{
    padding-top: 33%;
}

.productVideo_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.productVideo_wrap{
    display: flex;
    flex-direction: column;
    gap: 10.6vw;
}

.productVideo_inner{
    aspect-ratio: 16/9;
    width: 100%;
}

.productVideo_inner iframe{
    width: 100%;
    height: 100%;
}

/* recipe */
.section_recipe{
    padding-top: 33%;
}

.recipe_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.recipe_wrap{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 11vw;
    margin-top: 14%;
}

.recipe_inner{
    width: 48%;
}

.recipe_img_box{
    aspect-ratio: 320/220;
    border-radius: 4vw;
    width: 100%;
    overflow: hidden;
}

.recipe_img{
    object-fit: cover;
    height: 100%;
}

.recipe_text{
    font-size: 3.2vw;
    font-weight: 700;
    line-height: 1.6;
    margin-top: 4%;
    text-align: justify;

    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3; /* 行数 */
}

.recipe_btn{
    margin-left: auto;
    margin-right: auto;
    margin-top: 12%;
    width: 89%;
}

/* info */
.section_info{
    padding-top: 33%;
}

.info_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.info_wrap{
    background-color: #F5F5F5;
    border-radius: 4vw;
    padding-left: 6%;
    padding-right: 6%;
}

.info_title_inner{
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 9%;
    padding-bottom: 8%;
}

.info_title{
    font-size: 6.4vw;
    font-weight: 700;
}

.info_title_plus{
    --rotate: 0deg;
    aspect-ratio: 1/1;
    display: block;
    width: 8%;
    position: relative;
}
.info_title_plus::before,
.info_title_plus::after{
    content: "";
    aspect-ratio: 50/4;
    background-color: #000;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.info_title_plus::after{
    transform: translate(-50%, -50%) rotate(var(--rotate));
}

.info_content_inner{
    overflow: hidden;
}

.info_content_box{
    padding-bottom: 15%;
}

.info_content_head{
    font-size: 3.7vw;
    line-height: 1.8;
    margin-bottom: 3%;
    margin-top: 7%;
}
.info_content_head::after{
    content: "";
    border: 1px dotted #C0C0C0;
    /* background-color: #C0C0C0; */
    display: block;
    margin-top: 2%;
    text-align: justify;
    width: 100%;
    /* height: 1px; */
}

.info_content_text{
    font-size: 3.7vw;
    line-height: 1.8;
    margin-bottom: 4%;
    text-align: justify;
}

.info_content_notice{
    font-size: 3.2vw;
    line-height: 1.8;
    margin-bottom: 4%;
    text-align: justify;
}

/* brandsite */
.section_brandsite{
    padding-top: 33%;
}

.brandsite_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.brandsite_wrap{
    display: flex;
    flex-direction: column;
    gap: 10.6vw;
}

/* check */
.section_check{
    padding-top: 33%;
}

.check_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.check_wrap{
    margin-top: 14%;
}

.check_inner:nth-child(n+2){
    margin-top: 19%;
}

.check_head{
    font-size: 5.3vw;
    font-weight: 700;
    line-height: 1.8;
    margin-bottom: 2%;
    text-align: justify;
}

.check_img{
    border-radius: 4vw;
    margin-bottom: 3%;
}

.check_text{
    font-size: 3.7vw;
    line-height: 1.8;
    text-align: justify;
}

/* goodTaste */
.section_goodTaste{
    overflow: hidden;
    padding-top: 33%;
    padding-bottom: 16%;
}

.goodTaste_title{
    color: #3A7961;
    font-family: "Inknut Antiqua", serif;
    font-size: 8.5vw;
    font-weight: 700;
    text-align: center;
}

.goodTaste_wrap{
    margin-top: 19%;
    position: relative;
}
.goodTaste_wrap::before{
    content: "";
    aspect-ratio: 1/1;
    background-color: #F5F5F5;
    border-radius: 50%;
    display: block;
    width: 94%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.goodTaste_text{
    color: #3A7961;
    font-size: 5.3vw;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    position: relative;
}

.goodTaste_icon{
    margin-left: auto;
    margin-right: auto;
    margin-top: 3%;
    width: 30%;
    position: relative;
}

.goodTaste_btn{
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
    width: 80%;
    position: relative;
}

/* relatedArticle */
.section_relatedArticle{
    padding-top: 7%;
}

.relatedArticle_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.relatedArticle_wrap{
    margin-left: auto;
    margin-right: auto;
    width: 88%;
}

.relatedArticle_title{
    font-size: 6.4vw;
    font-weight: 700;
    text-align: center;
}

.relatedArticle_inner{
    margin-top: 6%;
}

.relatedArticle_link{
    display: block;
    font-size: 3.7vw;
    font-weight: 700;
    text-align: center;
    text-decoration: underline;
    text-underline-offset: .2em;
}
.relatedArticle_link:nth-child(n+2){
    margin-top: 5%;
}

/* relatedProduct */
.section_relatedProduct{
    padding-top: 36%;
}

.relatedProduct_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.relatedProduct_inner{
    display: flex;
    flex-direction: column;
    gap: 8vw;
    margin-top: 9%;
}

.relatedProduct_btn{
    margin-left: auto;
    margin-right: auto;
    margin-top: 15%;
    width: 89%;
}

/* contact */
.section_contact{
    background-color: #F5F5F5;
    padding-top: 16%;
    padding-bottom: 22%;
    margin-top: 46%;
}

.contact_container{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

.contact_title{
    font-size: 6.4vw;
    font-weight: 700;
    text-align: center;
}

.contact_text{
    font-size: 4.2vw;
    font-weight: 700;
    line-height: 1.8;
    margin-top: 5%;
    text-align: center;
}

.contact_btn{
    margin-left: auto;
    margin-right: auto;
    margin-top: 10%;
    width: 89%;
}




@media screen and (min-width: 768px){
    /* 共通 */
    .firstView_container,
    .feature_container,
    .productVideo_container,
    .recipe_container,
    .info_container,
    .brandsite_container,
    .check_container,
    .goodTaste_container,
    .relatedArticle_container,
    .relatedProduct_container,
    .contact_container{
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        max-width: 2200px;
    }

    .singleProduct_underlineHead{
        font-size: min(2.2vw, 48px);
    }
    .singleProduct_underlineHead::after{
        margin-top: 1.3%;
        width: min(11vw, 240px);
    }

    .singleProduct_head{
        font-size: min(2.9vw, 64px);
    }

    .linkWithImage_item{
        border: min(.2vw, 4px) solid #3A7961;
        border-radius: min(1.4vw, 30px);
        width: 46.4%;
    }
    .linkWithImage_item:nth-child(n+2){
        margin-top: 0%;
    }

    .linkWithImage_item_img_box{
        overflow: hidden;
    }

    .linkWithImage_item_img_box img{
        transition: all .3s ease-out;
    }
    .linkWithImage_item:hover .linkWithImage_item_img_box img{
        transform: scale(1.1);
    } 

    .linkWithImage_item_btn{
        font-size: min(1.8vw, 40px);
        padding: 4% 6%;

        transition: all .3s ease-out;
    }
    .linkWithImage_item:hover .linkWithImage_item_btn{
        color: #3A7961;
    } 


    /* firstView */
    .section_firstView{
        padding-top: min(5%, 107px);
    }

    .firstView_wrap{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: min(5vw, 110px);
        width: 100%;
    }

    .firstView_thumb_box{
        border: min(.2vw, 4px) solid #F5F5F5;
        border-radius: min(1.4vw, 30px);
        width: 23%;
    }

    .firstView_info {
        width: 31%;
    }

    .firstView_title{
        font-size: min(2.2vw, 48px);
        margin-top: 0;
    }

    .firstView_readtext{
        font-size: min(1.3vw, 28px);
        margin-top: 4%;
    }

    /* feature */
    .section_feature{
        padding-top: min(5.2%, 115px);
    }

    .feature_icon_wrap{
        gap: min(2.4vw, 52px);
        margin-top: 2.8%;
        margin-left: auto;
        margin-right: auto;
        width: 46%;
    }

    .feature_icon{
        border: min(.2vw, 4px) solid #3A7961;
        border-radius: min(1.4vw, 30px);
        width: 29%;
    }

    .feature_icon_text{
        font-size: min(1.5vw, 32px);
    }

    .feature_wrap{
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: min(5.5vw, 120px);
        margin-left: auto;
        margin-right: auto;
        margin-top: 9.5%;
        width: 76.4%;
    }

    .feature_item{
        width: 46.4%;
    }
    .feature_item:nth-child(n+2){
        margin-top: 0;
    }

    .feature_inner{
        border: min(.2vw, 4px) solid #3A7961;
        border-radius: min(1.4vw, 30px);
    }
    .feature_inner:nth-child(n+2){
        margin-top: 0%;
    }

    .feature_info_box{
        padding: 6%;
    }

    .feature_title{
        font-size: min(1.8vw, 40px);
    }

    .feature_text{
        font-size: min(1.3vw, 28px);
    }

    .feature_img_box{
        width: 45.3%;
    }
    
    .feature_notice{
        font-size: min(.9vw, 20px);
    }

    /* productVideo */
    .section_productVideo{
        padding-top: min(16.3%, 360px);
    }

    .productVideo_wrap{
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-wrap: wrap;
        flex-direction: row;
        gap: min(5.5vw, 120px);
        margin-left: auto;
        margin-right: auto;
        width: 76.4%;
    }

    .productVideo_inner{
        width: 46.4%;
    }

    /* recipe */
    .section_recipe{
        padding-top: min(16.3%, 360px);
    }

    .recipe_wrap{
        justify-content: center;
        gap: min(5vw, 110px) min(3.1vw, 70px);
        margin-left: auto;
        margin-right: auto;
        margin-top: 5.5%;
        width: 91%;
    }

    .recipe_inner{
        width: 31%;
    }

    .recipe_img_box{
        border-radius: min(1.4vw, 30px);
    }
    .recipe_img_box img{
        transition: all .3s ease-out;
    }
    .recipe_inner:hover .recipe_img_box img{
        transform: scale(1.1);
    }

    .recipe_text{
        font-size: min(1.5vw, 32px);

        transition: all .3s ease-out;
    }
    .recipe_inner:hover .recipe_text{
        color: #3A7961;
    }

    .recipe_btn{
        margin-top: 5.5%;
        width: 27.5%;
    }

    /* info */
    .section_info{
        padding-top: min(16.3%, 360px);
    }

    .info_wrap{
        border-radius: min(1.4vw, 30px);
        padding-left: 3%;
        padding-right: 3%;
        margin-left: auto;
        margin-right: auto;
        width: 63.4%;
    }

    .info_title_inner{
        padding-top: 4%;
        padding-bottom: 3.5%;
    }

    .info_title{
        font-size: min(2.2vw, 48px);
    }

    .info_title_plus{
        width: 6%;
    }
    .info_title_plus::before,
    .info_title_plus::after{
        aspect-ratio: 77/4;
    }

    .info_content_box{
        padding-bottom: 13%;
    }

    .info_content_head{
        font-size: min(1.3vw, 28px);
        margin-bottom: 2%;
        margin-top: 5%;
    }
    .info_content_head::after{
        margin-top: 1.5%;
    }

    .info_content_text{
        font-size: min(1.3vw, 28px);
        margin-bottom: 1.5%;
    }

    .info_content_notice{
        font-size: min(1.3vw, 28px);
        margin-bottom: 1.5%;
    }

    /* brandsite */
    .section_brandsite{
        padding-top: min(16.3%, 360px);
    }

    .brandsite_wrap{
        align-items: flex-start;
        justify-content: center;
        flex-wrap: wrap;
        flex-direction: row;
        gap: min(5.4vw, 120px);
        margin-left: auto;
        margin-right: auto;
        width: 76.4%;
    }

    /* check */
    .section_check{
        padding-top: min(16.3%, 360px);
    }

    .check_wrap{
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: min(5.5vw, 120px) min(4.5vw, 100px);
        margin-left: auto;
        margin-right: auto;
        margin-top: 5%;
        width: 76.4%;
    }

    .check_inner{
        width: 46.4%;
    }
    .check_inner:nth-child(n+2){
        margin-top: 0;
    }

    .check_head{
        font-size: min(1.8vw, 40px);
        margin-bottom: 3%;
    }

    .check_img{
        border-radius: min(1.4vw, 30px);
    }

    .check_text{
        font-size: min(1.3vw, 28px);
    }

    /* goodTaste */
    .section_goodTaste{
        padding-top: min(16.3%, 360px);
        padding-bottom: min(5%, 110px);
    }

    .goodTaste_wrap{
        margin-left: auto;
        margin-right: auto;
        margin-top: 6%;
        width: 32.2%;
    }
    .goodTaste_wrap::before{
        width: 100%;
    }

    .goodTaste_text{
        font-size: min(1.8vw, 40px);
    }

    .goodTaste_icon{
        margin-top: 4%;
        width: 31%;
    }

    .goodTaste_btn{
        margin-top: 5%;
        width: 85%;
    }

    /* relatedArticle */
    .section_relatedArticle{
        padding-top: min(2.3%, 50px);
    }

    .relatedArticle_wrap{
        width: 32.2%;
    }

    .relatedArticle_title{
        font-size: min(1.8vw, 40px);
    }

    .relatedArticle_inner{
        margin-top: 5%;
    }

    .relatedArticle_link{
        font-size: min(1.3vw, 28px);
    }
    .relatedArticle_link:nth-child(n+2){
        margin-top: 3%;
    }
    .relatedArticle_link:hover{
        text-decoration: none;
    }

    /* relatedProduct */
    .section_relatedProduct{
        padding-top: min(17.4%, 382px);
    }

    .relatedProduct_wrap{
        margin-left: auto;
        margin-right: auto;
        margin-top: 3%;
        width: 82%;
    }

    .relatedProduct_inner{
        flex-wrap: wrap;
        flex-direction: row;
        justify-content: center;
        gap: min(1.4vw, 32px);
        margin-top: 0;
    }

    .relatedProduct_btn{
        margin-top: 5%;
        width: 33.3%;
    }

    /* contact */
    .section_contact{
        padding-top: min(7%, 156px);
        padding-bottom: min(6.5%, 146px);
        margin-top: min(16.3%, 360px);
    }

    .contact_title{
        font-size: min(1.8vw, 40px);
    }

    .contact_text{
        font-size: min(1.5vw, 32px);
        margin-top: 1.5%;
    }

    .contact_btn{
        margin-top: 3.5%;
        width: 27.5%;
    }
}