/**********************************
 *
 * Online Shop
 *
 **********************************/
#onlineshop {
    padding: 50px 0 60px;
    margin: 0 auto;
    border-top: solid #dcdcdc 1px;
}

#onlineshop h2 {
    text-align: center;
}

#onlineshop h2 b {
    font-family: 'Montserrat', sans-serif;
    font-size: 42px;
    letter-spacing: 8.4px;
    color: #8e6d5b;
}

#onlineshop h2 p {
    font-size: 12px;
    letter-spacing: 1.2px;
    color: #35312f;
}

#onlineshop .list {
    width: 700px;
    margin: 30px auto 0;
}

#onlineshop ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#onlineshop ul li {
    width: 200px;
}

/**********************************
 *
 * ソイトピ一覧 共通カテゴリー
 *
 **********************************/

/*レシピ検索*/
#search {
    margin:35px auto 0;
}
#search select{
    height: 50px;
    width: 226px;
    font-size: 14px;
    letter-spacing: 1.4px;
}
#search input#s{
    width: 504px;
    height: 50px;
    border: solid 1px #dcdcdc;
    font-size: 14px;
    letter-spacing: 1.4px;
    margin: 0 40px 0 10px;
    padding:0 0 0 10px;
}
#search input#submit{
    width: 181px;
    height: 50px;
    border-radius: 6px;
    border-color: #eb6120;
    background-color: #eb6120;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1.8px;
    color: #ffffff;
    cursor: pointer;
}

/*mainArea*/
#soytopics-recipe .mainArea {
    position: relative;
}

/*sidebar*/
#soytopics-recipe .menu {
    width: 260px;
    position: absolute;
    top: 40px;
    left: auto;
    right: -70px;
}
#soytopics-recipe .menu h4{
    background: #a3ca0f;
    color: #ffffff;
    width: 100%;
    height: 50px;
    line-height: 50px;
    padding: 0 0 0 14px;
    font-size: 16px;
    letter-spacing: 3.2px;
    font-weight: 700;
    border: none;
}
#soytopics-recipe .menu .catList{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
#soytopics-recipe .menu .catList > a {
    display: block;
    border-right: solid 1px rgba(128, 128, 128, 0.7);
    border-left: solid 1px rgba(128, 128, 128, 0.7);
    border-bottom: solid 1px rgba(128, 128, 128, 0.7);
    padding: .6em 0 .6em 30px;
}
#soytopics-recipe .menu .catList > a span {
    position: relative;
    font-size: 14px;
    color: #35312f;
}
#soytopics-recipe .menu .catList > a:hover span{
    opacity: 0.8;
}
#soytopics-recipe .menu .catList > a span::before {
    content: '';
    position: absolute;
    background: #a2ca0f;
    width: 10px;
    height: 1px;
    left: -19px;
    top: 50%;
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: translateY(50%);
}

/*none recipe sidebar*/
#soytopics-recipe .noneRecipeSidebar .menu {
    position: static;
    margin-left: 1020px;
    margin: -90px 0 40px 1020px;
}



#soytopics-recipe .list .flex {
    width:730px;
}


#soytopics-category .soytopics-category_head {
    font-family: inherit;
    font-size: 22px;
    font-weight: 700;
    padding: 0 0 18px;
    line-height: 1;
    letter-spacing: 2.2px;
    color: #35312f;
    border-bottom: 2px solid #a3ca0f;
    text-align: left;
}

#soytopics-category .soytopics-category_head img {
    display: inline-block;
    width: 41px;
    vertical-align: middle;
    padding-right: 10px;
}

#soytopics-category ul {
    padding: 40px 0;
}

#soytopics-category ul li {
    width:316px;
    border: solid 3px #dcdcdc;
    float: left;
    margin: 0 0 30px;
}

#soytopics-category ul li:nth-child(3n-1) {
    margin: 0 15px 30px;
}

#soytopics-category ul li figure {
    display: inline-block;
    width: 100px;
    vertical-align: middle;
}

#soytopics-category ul li p {
    display: inline-block;
    width: 205px;
    font-size: 18px;
    color: #35312f;
    padding: 0 0 0 20px;
    position: relative;
}

#soytopics-category ul li a:hover p {
    color: #669219;
}

#soytopics-category ul li p:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: 2px solid #669219;
    border-right: 2px solid #669219;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
}


/**********************************
 *
 * ソイトピ一覧 共通おすすめレシピ
 *
 **********************************/
#soytopics-recommend .soytopics-recommend_head {
    font-family: inherit;
    font-size: 22px;
    font-weight: 700;
    padding: 0 0 18px;
    line-height: 1;
    letter-spacing: 2.2px;
    color: #35312f;
    border-bottom: 2px solid #a3ca0f;
    text-align: left;
}

#soytopics-recommend .soytopics-recommend_head img {
    display: inline-block;
    width: 41px;
    vertical-align: middle;
    padding-right: 10px;
}

#soytopics-recommend ul {
    padding: 40px 0 80px;
}

#soytopics-recommend ul li {
    width:230px;
    float: left;
    margin: 0 0 0 20px;
}

#soytopics-recommend ul li a {
    width: 230px;
    height: 165px;
    overflow: hidden;
    border: solid 1px #dcdcdc;
}

#soytopics-recommend ul li a img {
    object-fit: contain;
    object-position: 50% 50%;
    font-family: 'object-fit: cover; object-position: 50% 50%;';
    width: 100%;
    height: 100%;
    margin: 0 auto;
}

#soytopics-recommend ul li:first-child {
    margin: 0;
}

#soytopics-recommend ul li p {
    padding:15px 0 0;
    font-size: 14px;
    color: #35312f;
}

#soytopics-category ul li a:hover p {
    color: #669219;
}


/**********************************
 *
 * ソイトピ一覧
 *
 **********************************/
#soytopics h4 {
    padding: 0 0 18px;
}

#soytopics h4 img {
    display: inline-block;
    width: 41px;
    vertical-align: middle;
    padding-right: 10px;
}

#soytopics .feature, #soytopics .pickup, #soytopics-category {
    padding: 40px 0;
}

#soytopics .feature ul {
    padding: 40px 0 0;
}

#soytopics .feature ul li {
    border: solid 3px #dcdcdc;
    float: left;
    width: 470px;
}

#soytopics .feature ul li:nth-child(2n-1) {
    margin: 0 0 21px;
}

#soytopics .feature ul li:nth-child(2n) {
    margin: 0 0 21px 38px;
}

#soytopics .feature ul li dl dt {
    float: left;
    width: 240px;
}

#soytopics .feature ul li dl dd {
    float: left;
    width: 224px;
    display: flex;
    flex-direction:row;
    justify-content:center;
    align-items:center;
}

#soytopics .feature ul li dl dd .str {
    margin: auto;
    padding: 50px 18px 0;
    width: 100%;
}

#soytopics .feature ul li dl dd b {
    font-size: 12px;
    letter-spacing: 2.4px;
    color: #eb6120;
    display: block;
    padding: 0 0 20px;
}

#soytopics .feature ul li dl dd h5 {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 2px;
    color: #35312f;
}

#soytopics .feature ul li dl dd h5 span {
    font-size: 18px;
}


/* ソイトピ */
#soytopics .pickup ul {
    padding: 40px 0;
}

#soytopics .pickup ul li {
    overflow: hidden;
    position: relative;
    float: left;
    width: 32.9%;
    margin: 0 0 0.5%;
}

#soytopics .pickup ul li:nth-child(2), #soytopics .pickup ul li:nth-child(5) {
    margin: 0 0.5% 0.5%;
}

#soytopics .pickup ul li .wrap {
    position: absolute;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    width: 100%;
    height: 100%;
    opacity: 0;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	flex-direction:row;
	align-items:center;
    background-color: rgba(000, 000, 000, 0.5);
}

#soytopics .pickup ul li .wrap .str {
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%);
    margin:auto;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    color: #fff;
    text-align: center;
}

#soytopics .pickup ul li .wrap .str p {
    font-size: 1.5vw;
    letter-spacing: 2.2px;
    padding: 0 0 10px;
    border-bottom: solid 1px #fff;
}

#soytopics .pickup ul li .wrap .str .more {
    padding: 10px 0 0;
    line-height: 1.71;
    letter-spacing: 2.8px;
    font-size: 1vw;
}

#soytopics .pickup ul li:hover .wrap {
    opacity: 1;
}

#soytopics .pickup ul li:hover .wrap .str {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
}

#soytopics .pickup ul li:hover .wrap {
    opacity: 1;
}

#soytopics .pickup ul li:hover .wrap .str {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
}


/**********************************
 *
 * ソイトピ一覧 > レシピ一覧
 *
 **********************************/
#soytopics-recipe .list {
    padding: 40px 0 60px 0;
}
#soytopics-recipe .list.noRecipe {
    height: 400px;
}
#soytopics-recipe .list ul li {
    width: 230px;
    float: left;
    margin: 0 0 40px 20px;
}

#soytopics-recipe .list ul li:first-child {
    margin: 0 0 30px 0;
}

#soytopics-recipe .list ul li:nth-child(3n + 1) {
    margin: 0 0 30px 0;
}

#soytopics-recipe .list ul li p {
    padding: 10px 0 0;
    font-size: 14px;
    font-weight: 700;
    color: #35312f;
    height:60px;
}
#soytopics-recipe .list ul li .time {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.6px;
    color: #669219;
    padding: 20px 0 0;
    display: block;
}


#soytopics-recipe .list ul li p span {
    display: block;
    padding: 15px 0 0 0;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 1.4px;
    color: #669219;
}

#soytopics-recipe .list ul li figure {
    width: 230px;
    height: 165px;
    overflow: hidden;
    border: solid 1px #dcdcdc;
}

#soytopics-recipe .list ul li img.ofi {
    object-fit: contain;
    object-position: 50% 50%;
    font-family: 'object-fit: cover; object-position: 50% 50%;';
    height: 100%;
    width: 100%;
    margin: 0 auto;
    background-size: contain!important;
}

/**********************************
 *
 * ソイトピ一覧 > レシピ一覧 > 詳細
 *
 **********************************/
#soytopics-recipe-detail ul.recipe {
    padding: 0 0 25px;
}

#soytopics-recipe-detail ul.recipe li {
    float: left;
    width: 530px;
}
/*カロリー、塩分*/
#soytopics-recipe-detail ul.recipe li .nutritionArea {
    position: absolute;
    bottom: -30px;
    width: 530px;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p {
    border:solid 1px #dcdcdc;
    font-size: 14px;
    float: left;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p:first-child {
    width: 50%;
    margin-right:5%;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p:last-child {
    width: 45%;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p span {
    padding: 5px 10px;
    display: inline-block;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p span:first-child {
    color:#fff;
    float: left;
    width: 40%;
    text-align: center;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p span:last-child {
    padding:5px;
    display: block;
    text-align: center;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p .kcal {
    background:#eb6120;
}
#soytopics-recipe-detail ul.recipe li .nutritionArea p .salt {
    background:#669219;
}

#soytopics-recipe-detail ul.recipe li .useTitle {
    position: absolute;
    bottom: -65px;
}


#soytopics-recipe-detail ul.recipe li:first-child {
    width: 410px;
    margin: 0 40px 0 0;
}

#soytopics-recipe-detail ul.recipe li:first-child figure {
    width: 360px;
    margin: 0 auto;
}

#soytopics-recipe-detail ul.recipe .recipe_ttl {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 2.2px;
    padding: 0 0 15px;
    border-bottom: 2px solid #a3ca0f;
    font-family: "Zen Maru Gothic", serif;
    color: #54bb00;
    text-align: center;
}

#soytopics-recipe-detail ul.recipe .recipe_comment {
    padding: 25px 0 45px;
    font: inherit;
    text-align: left;
    color: inherit;
}

#soytopics-recipe-detail ul.recipe dl dt {
    float: left;
    width: 62px;
    margin: 0 15px 0 0;
}
#soytopics-recipe-detail ul.recipe dl dt img{
    width: auto;
    max-height: 130px;
}

#soytopics-recipe-detail ul.recipe dl dd {
    float: left;
    width: 450px;
    background-color: #f7f4ee;
    padding: 15px;
    min-height: 130px;
}

#soytopics-recipe-detail ul.recipe .usedTounyu {
    border-radius: 13px;
    background-color: #a3ca0f;
    color: #fff;
    font-size: 12px;
    padding: 5px 10px;
    display: inline-block;
}

#soytopics-recipe-detail ul.recipe .usedComment {
    font-size: 14px;
    padding: 15px 0 0;
}

#soytopics-recipe-detail ul.recipe .usedComment b {
    font-size: 16px;
    font-weight: 700;
}
#soytopics-recipe-detail ul.recipe .usedComment span{
    display: block;
}

/*sns*/
#soytopics-recipe-detail .snsGroupArea {
    overflow: hidden;
}
#soytopics-recipe-detail .snsGroupArea .snsGroup{
    padding: 0 0 10px 25px;
    overflow: hidden;
}
#soytopics-recipe-detail .snsGroupArea .snsGroup.print{
    padding: 0 0 50px 25px;
}
#soytopics-recipe-detail .snsGroupArea .iconList{
    float: left;
    position: relative;
    width:40px;
}
#soytopics-recipe-detail .snsGroupArea .iconList:nth-child(2){
    margin: 0 30px 0 10px;
}
#soytopics-recipe-detail .snsGroupArea .fukidashi{
    display: inline-block;
    padding: 0 15px;
    margin:0 15px 0 0;
    width: auto;
    height: 40px;
    line-height: 34px;
    text-align: center;
    border: 1px solid #dcdcdc;
    z-index: 0;
    float: left;
    position: relative;
}
#soytopics-recipe-detail .snsGroupArea .print .fukidashi{
    margin:0 30px 0 0;
}
#soytopics-recipe-detail .snsGroupArea .fukidashi::before{
    content: "";
	position: absolute;
	top: 50%; right: -8px;
	margin-top: -9px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 0 9px 9px;
	border-color: transparent transparent transparent #fff;
	z-index: 0;
}
#soytopics-recipe-detail .snsGroupArea .fukidashi::after{
    content: "";
	position: absolute;
	top: 50%; right: -10px;
	margin-top: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #dcdcdc;
	z-index: -1;
}


#soytopics-recipe-detail ul.detail {
    padding: 0 0 120px;
}

#soytopics-recipe-detail ul.detail li {
    float: left;
    width: 490px;
}

#soytopics-recipe-detail ul.detail li:first-child {
    width: 410px;
    margin: 0 80px 0 0;
}

#soytopics-recipe-detail ul.detail li:first-child figure {
    width: 360px;
    padding: 0 0 80px;
}

#soytopics-recipe-detail ul.detail .detail_head {
    position: relative;
    text-align: left;
    font-family: inherit;
    font-weight: 400;
}

#soytopics-recipe-detail ul.detail .detail_head p {
    line-height: 1;
    font-size: 18px;
    color: #35312f;
    padding:5px 0 5px 10px;
    margin: 0 0 25px 0;
    border-left: solid 4px #a3ca0f;
}

#soytopics-recipe-detail ul.detail .detail_head span {
    font-size: 13px;
    font-weight: 700;
    color: #669219;
    display: block;
    position: absolute;
    left: max(75px, 22%);/* 75px */
    top: 5px;
    letter-spacing: 0.01em;
}
#soytopics-recipe-detail ul.detail .detail_head span.salt {
    right: auto;
    left: 140px;
}

#soytopics-recipe-detail ul.detail table {
    width: 100%;
}

#soytopics-recipe-detail ul.detail table tr {
    border-bottom: 1px solid #dcdcdc;
}

#soytopics-recipe-detail ul.detail table tr td {
    padding: 10px;
    vertical-align: middle;
}

#soytopics-recipe-detail ul.detail li:last-child table tr td {
    padding: 15px 10px;
}

#soytopics-recipe-detail ul.detail li:last-child table tr td:nth-child(1) img {
    width: 50px;
    margin: auto;
    height: auto !important;
}
#soytopics-recipe-detail ul.detail li:last-child table tr td:nth-child(2) img {
    width: 7%;
    display: inline;
    vertical-align: text-bottom;
}
#soytopics-recipe-detail ul.detail li:last-child table tr td p.asterisk {
    color: #a3ca0f;
    font-size: 24px;
    text-align: center;
}

#soytopics-recipe-detail ul.detail table tr td span {
    display: none;
}



/*------------------------------------------------------------*/
/* sp
 ------------------------------------------------------------*/
@media screen and (max-width: 768px) {

    /**********************************
    *
    * Online Shop
    *
    **********************************/
    #onlineshop {
        padding: 30px 0 40px;
        width: 100%;
    }

    #onlineshop h2 b {
        font-size: 9vw;
        letter-spacing: 4px;
    }

    #onlineshop h2 p {
        font-size: 3vw;
        letter-spacing: 1px;
    }

    #onlineshop .list {
        width: 100%;
    }

    #onlineshop ul {
        justify-content: center;
    }

    #onlineshop ul li {
        width: 60%;
    }

    #onlineshop ul li:first-child {
        margin-bottom: 30px;
    }

    /**********************************
    *
    * ソイトピ共通カテゴリー
    *
    **********************************/
    /*search sp*/
    #search select {
        height: 50px;
        width: 100%;
    }
    #search input{
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }
    #search input#s {
        width: 100%;
        height: 50px;
        border: solid 1px #dcdcdc;
        font-size: 14px;
        letter-spacing: 1.4px;
        margin: 15px 0;
        padding: 0 0 0 10px;
    }


    #soytopics-category .soytopics-category_head {
        font-size: 4.8vw;
        letter-spacing: 1.8px;
        line-height: 1.2;
    }
    #soytopics-category ul {
        padding: 30px 0 0;
    }

    #soytopics-category ul li {
        width: 48%;
        margin: 0 1% 2% 0;
        border: solid 1px #dcdcdc;
    }

    #soytopics-category ul li:nth-child(3n-1) {
        margin: 0 1% 2% 0;
    }

    #soytopics-category ul li:nth-child(2n) {
        margin: 0 0 2% 1%;
    }

    #soytopics-category ul li a {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
        display: -webkit-box;
        display: -moz-box;
        display: -o-box;
        display: box;
        -webkit-box-align: center;
        -moz-box-align: center;
        -o-box-align: center;
        box-align: center;
        height: 100%;
    }

    #soytopics-category ul li p {
        width: 60%;
        font-size: 3.2vw;
        padding: 0 0 0 5%;
        display: block;
    }

    #soytopics-category ul li figure {
        width: 40%;
        display: block;
    }

    #soytopics-category ul li p:before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 8px;
        margin: auto;
        width: 8px;
        height: 8px;
        border-top: 2px solid #669219;
        border-right: 2px solid #669219;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    }


    /**********************************
    *
    * ソイトピ一覧 共通おすすめレシピ
    *
    **********************************/
    #soytopics-recommend .soytopics-recommend_head {
        font-size: 4.8vw;
        letter-spacing: 1.8px;
        line-height: 1.2;
    }
    #soytopics-recommend ul {
        padding: 40px 0;
    }

    #soytopics-recommend ul li {
        width:48%;
        margin: 0 1% 25px 0;
    }

    #soytopics-recommend ul li a {
        width: 100%;
        height: 100px;
    }

    #soytopics-recommend ul li:first-child {
        width:48%;
        margin: 0 1% 25px 0;
    }

    #soytopics-recommend ul li:nth-child(2n) {
        width:48%;
        margin: 0 0 25px 1%;
    }

    #soytopics-recommend ul li p {
        font-size: 3.7333vw;
    }

    /**********************************
    *
    * ソイトピ一覧
    *
    **********************************/
    #soytopics h4 {
        padding: 0 0 10px;
    }

    #soytopics .feature, #soytopics .pickup, #soytopics-category {
        padding: 30px 0;
    }

    #soytopics .feature ul {
        padding: 30px 0 0;
    }

    #soytopics .feature ul li {
        float: none;
        width: 100%;
        margin: 0 0 15px 0;
    }

    #soytopics .feature ul li:nth-child(n) {
        margin: 0 0 15px ;
    }

    #soytopics .feature ul li:last-child {
        margin: 0;
    }

    #soytopics .feature ul li dl dt {
        width: 50%;
    }

    #soytopics .feature ul li dl dd {
        width: 50%;
        display: flex;
        flex-direction:row;
        justify-content:center;
        align-items:center;
    }

    #soytopics .feature ul li dl dd .str {
        margin: auto;
        padding: 20px 20px 0;
    }

    #soytopics .feature ul li dl dd b {
        font-size: 3.2vw;
        padding: 0 0 15px;
        letter-spacing: 1.4px;
    }

    #soytopics .feature ul li dl dd h5 {
        font-size: 3.7333vw;
        line-height: 1.8;
        letter-spacing: 1.5px;
    }

    #soytopics .feature ul li dl dd h5 span {
        font-size: 3.7333vw;
    }

    /* ソイトピ */
    #soytopics .pickup ul {
        padding: 30px 0;
    }

    #soytopics .pickup ul li {
        float: left;
        width: 48%;
        margin: 0 0.5% 0.5%;
    }

    #soytopics .pickup ul li:nth-child(2), #soytopics .pickup ul li:nth-child(5) {
        margin: 0 0.5% 0.5%;
    }

    #soytopics .pickup ul li .wrap .str p {
        font-size: 3.7333vw;
    }

    #soytopics .pickup ul li .wrap .str .more {
        font-size: 2.9333vw;
    }

    /**********************************
    *
    * ソイトピ一覧 > レシピ一覧
    *
    **********************************/

    /*sidebar sp*/
    #soytopics-recipe .menu {
        width: 100%;
        position: static;
        margin-left: 0;
    }
    #soytopics-recipe .noneRecipeSidebar .menu {
        position: static;
        margin: 0;
    }

    #soytopics-recipe .list {
        padding: 30px 0 0;
    }
    #soytopics-recipe .list.noRecipe p {
        padding: 30px 0;
    }
    #soytopics-recipe .list.noRecipe {
        height: auto;
        padding: 0 0 30px;
    }

    #soytopics-recipe .list .flex {
        width: 100%;
    }

    #soytopics-recipe .list ul li {
        width: 48%;
        margin: 0 0 30px 2%;
    }

    #soytopics-recipe .list ul li:first-child {
        margin: 0 0 30px 0;
    }

    #soytopics-recipe .list ul li:nth-child(4n + 1) {
        margin: 0 0 30px 2%;
    }
    #soytopics-recipe .list ul li:nth-child(3n + 1) {
        margin: 0 0 30px 2%;
    }

    #soytopics-recipe .list ul li:nth-child(2n + 1) {
        margin: 0 0 30px 0;
    }


    #soytopics-recipe .list ul li figure {
        width: 100%;
        height: 100px;
    }

    #soytopics-recipe .list ul li p {
        padding: 15px 0 0;
        font-size: 3.5vw;
    }
    #soytopics-recipe .list ul li .time {
        padding: 15px 0 0;
        font-size: 3.6vw;
    }

    #soytopics-recipe .list ul li p span {
        padding: 10px 0 0 0;
        font-size: 3.2vw;
    }

    /**********************************
    *
    * ソイトピ一覧 > レシピ一覧 > 詳細
    *
    **********************************/
    #soytopics-recipe-detail ul.recipe {
        padding: 0 0 20px;
    }

    #soytopics-recipe-detail ul.recipe li {
        float: none;
        width: 100%;
    }

    #soytopics-recipe-detail ul.recipe li:first-child {
        width: 100%;
        margin: 0 0 25px 0;
    }

    #soytopics-recipe-detail ul.recipe li:first-child figure {
        width: 100%;
    }

    #soytopics-recipe-detail ul.recipe .recipe_ttl {
        font-size: 5.3333vw;
        padding: 0 0 10px;
        border-bottom: 2px solid #a3ca0f;
    }

    #soytopics-recipe-detail ul.recipe .recipe_comment {
        padding: 25px 0 30px;
        letter-spacing: inherit;
    }

    #soytopics-recipe-detail ul.recipe dl dt {
        width: 50px;
        margin: 0 10px 0 0;
    }
    #soytopics-recipe-detail ul.recipe dl dt img {
        width: 100%;
        max-height: none;
    }

    #soytopics-recipe-detail ul.recipe dl dd {
        width: calc(100% - 60px);
        padding: 10px;
        min-height: 100px;
    }

    #soytopics-recipe-detail ul.recipe .usedTounyu {
        border-radius: 22px;
        font-size: 3.2vw;
        padding: 5px 15px;
    }

    #soytopics-recipe-detail ul.recipe .usedComment {
        font-size: 3.2vw;
        padding: 10px 0 0;
    }

    #soytopics-recipe-detail ul.recipe .usedComment b {
        font-size: 4vw;
    }

    /*栄養、塩分*/
    #soytopics-recipe-detail ul.recipe li .nutritionArea {
        position: static;
        width: 100%;
        padding: 15px 0 0;
        overflow: hidden;
    }
    #soytopics-recipe-detail ul.recipe li .nutritionArea p {
        font-size: 2vw;
    }
    #soytopics-recipe-detail ul.recipe li .useTitle {
        position: static;
        font-size: 3vw;
        padding: 5px 0 0;
    }

    /*sns*/
    #soytopics-recipe-detail .snsGroupArea .snsGroup {
        padding: 0 0 10px 0;
    }
    #soytopics-recipe-detail .snsGroupArea .snsGroup.print {
        padding: 0 0 50px 0;
    }

    #soytopics-recipe-detail ul.detail {
        padding: 0 0 100px;
    }

    #soytopics-recipe-detail ul.detail li {
        float: none;
        width: 100%;
    }

    #soytopics-recipe-detail ul.detail li:first-child {
        width: 100%;
        margin: 0 0 40px 0;
    }

    #soytopics-recipe-detail ul.detail .detail_head p {
        font-size: 4.8vw;
        margin: 0 0 10px 0;
        border-left: solid 3px #a3ca0f;
    }

    #soytopics-recipe-detail ul.detail .detail_head span {
        font-size: 3.2vw;
        position: absolute;
        right: 0;
        top: 4px;
        padding: 0;
    }
    #soytopics-recipe-detail ul.detail .detail_head span.salt {
        left: auto;
    }

    #soytopics-recipe-detail ul.detail li:last-child table tr td:nth-child(1) p {
        width: 40px;
        height: 40px;
        font-size: 6.4vw;
        line-height: 40px;
    }
    #soytopics-recipe-detail ul.detail li:last-child table tr td:nth-child(2) img {
        width: 9%;
    }



}





/* 2025 */
main::before {
	content:'';
	width:min(466px, 31vw);
	height:min(443px,29.5vw);
	background:url("../img/renewal/other_mame00.webp") no-repeat;
	background-size:100%;
	position:absolute;
	top:-190px;
	right:-35px;
}
@media screen and (max-width: 768px) {
	main::before {
		width:62.1vw;
		height:58.9vw;
		background:url("../img/renewal/other_mame00.webp") no-repeat;
		background-size:100%;
		top:-39vw;
		right:-23vw;
	}
}
main.soytopics::before {
	display:none;
}

@media screen and (max-width: 768px) {
	main.soytopics {
		padding-bottom:10vw;
	}
}


main::after {
	content:'';
	width:min(554px, 36.9vw);
	height:min(526px, 35vw);
	background:url("../img/renewal/other_mame03.webp") no-repeat;
	background-size:100%;
	position:absolute;
	bottom:-40px;
	left:-180px;	
}
@media screen and (max-width: 768px) {
	main::after {
		width:73.8vw;
		height:70vw;
		background:url("../img/renewal/other_mame03.webp") no-repeat;
		background-size:100%;
		bottom:11vw;
		left:-22.8vw;
	}
}

main.soytopics::after {
	width:31vw;
	height:29.5vw;
	background:url("../img/renewal/mame24.webp") no-repeat;
	background-size:100%;
	bottom:-7vw;
	left:-7vw;
}
@media screen and (max-width: 768px) {
	main.soytopics::after {
		width:62vw;
		height:58.9vw;
		bottom:-11vw;
		left:-22.8vw;
	}
}

ul.camps {
	width:min(1000px, 66.6vw);
	margin:min(130px,8.6vw) auto auto;
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	gap:min(57px,3.8vw);
	position: relative;
	z-index:2;
}
@media screen and (max-width: 768px) {
	ul.camps {
		margin:12.8vw auto auto;
		width:90.6vw;
		gap:6.9vw;
	}
}


ul.camps::before {
	content:'';
	width:min(116px, 7.7vw);
	height:min(110px,7.3vw);
	background:url("../img/renewal/other_mame01.webp") no-repeat;
	background-size:100%;
	position:absolute;
	top:-157px;
	left:-93px;
	z-index:2;
}
@media screen and (max-width: 1500px) {
	ul.camps::before {
		width:7.7vw;
		height:7.3vw;
		background:url("../img/renewal/other_mame01.webp") no-repeat;
		background-size:100%;
		top:-10.4vw;
		left:-6.2vw;
	}
}
@media screen and (max-width: 768px) {
	ul.camps::before {
		width:15.4vw;
		height:14.5vw;
		background:url("../img/renewal/other_mame01.webp") no-repeat;
		background-size:100%;
		top:-19vw;
		left:5vw;
	}
}

ul.camps::after  {
	content:'';
	width:min(156px, 10.4vw);
	height:min(120px, 8vw);
	background:url("../img/renewal/other_mame02.webp") no-repeat;
	background-size:100%;
	position:absolute;
	bottom:-150px;
	right:-80px;
	z-index:2;
}
@media screen and (max-width: 768px) {
	ul.camps::after {
		width:20.8vw;
		height:16vw;
		background:url("../img/renewal/other_mame02.webp") no-repeat;
		background-size:100%;
		bottom:-21vw;
		right:0;
	}
}

ul.camps li {
	width:47%;	
}
@media screen and (max-width: 768px) {
	ul.camps li {
		width:100%;
	}
}
ul.camps li a {
	position: relative;
	display: block;
}
ul.camps li a::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 3px solid #80ca2c;
    pointer-events: none;
}
ul.camps li.finished a {
	/*
	pointer-events: none;
	*/
}
/*
ul.camps li.finished a::after {
	content: "キャンペーンは終了しました。\Aたくさんのご応募\Aありがとうございました。";
	white-space: pre-line;
	display: flex;
	justify-content: center;
	align-items: center;
	color:#fff;
	font-size:1rem;
	line-height: 1.8;
	text-align:center;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.7);
	position:absolute;
	top:0;
	left:0;
}
*/


ul.camps li h3 {
	margin-top:min(22px,1.4vw);
	margin-bottom:min(13px,0.86vw);
	font-size:min(22px,1.4vw);
	font-weight:700;
	color:#2d2d2d;
	letter-spacing: -0.05rem;
}
@media screen and (max-width: 768px) {
	ul.camps li h3 {
		margin-top:4vw;
		margin-bottom:2vw;
		font-size:4.2vw;
	}
}

ul.camps li.finished h3 {
	padding-left:min(90px,6vw);
	position:relative;
}
@media screen and (max-width: 768px) {
	ul.camps li.finished h3 {
		padding-left:min(140px,18.6vw);
		position:relative;
	}
}

ul.camps li.finished h3::before {
	content: "終了しました";
	font-size:min(13px,0.86vw);
	color:#fff;
	background:#ea6121;
	padding:0 0.5em;
	display:flex;
	justify-content:center;
	align-items:center;
	position:absolute;
	top:50%;
	left:0;
	transform:translatey(-50%);
}
@media screen and (max-width: 768px) {
	ul.camps li.finished h3::before {
		font-size:min(20px,2.6vw);
	}
}



ul.camps li p {
	font-size:min(16px,1.06vw);
	font-weight:500;
	line-height:1.75;
	color:#2d2d2d;
}
@media screen and (max-width: 768px) {
	ul.camps li p {
		font-size:2.9vw;
		line-height:1.54;
	}
}
#search {
    margin: min(62px,4.1vw) auto 0;
	
}
#search form {
    display:flex;
	gap:min(19px,12.6vw);
	position:relative;
	justify-content: center;
}
@media screen and (max-width: 768px) {
	#search form {
		flex-wrap: wrap;
		gap:3vw;
		padding-top:5vw;
	}
}

main.soytopics #search form::before {
	content:'';
	width:min(136px,9vw);
	height:min(105px,7vw);
	position:absolute;
	top:min(-140px,9.3vw);
	left:min(-45px,-3vw);
	background:url("../img/renewal/mame21.webp") no-repeat;
	background-size:100%;
	z-index:2;
}


#search select {
    height: min(70px,9.3vw);
    width: min(489px,32.6vw);
    font-size: 14px;
    letter-spacing: 1.4px;
	outline: none;
	border:2.8px solid #80ca2c;
	border-radius:min(35px,4.65vw);
	appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
	background:url("../img/renewal/arrow_below.webp") no-repeat center right min(34px,2.2vw) #fff;
	background-size:min(12px,0.8vw);
	padding:0 min(34px,2.2vw);
	color:#80ca2c;
}
#search select:focus {
	appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
	border:2.8px solid #80ca2c;
}

@media screen and (max-width: 768px) {
	#search select {
		width: 90.6vw;
		height: 12vw;
		border:0.5vw solid #80ca2c;
		border-radius:6vw;
		background:url("../img/renewal/arrow_below.webp") no-repeat center right 6vw #fff;
		background-size:2vw;
		padding:0 4vw;
	}
}


#search input#s {
	width: min(399px,26.6vw);
    border:2.8px solid #80ca2c;
	border-radius:min(35px,4.65vw);
	appearance: none;
	outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
    height: min(70px,9.3vw);
    padding:0 min(34px,2.2vw);
	margin: 0 0 0 0;
	color: #80ca2c;
}
#search input#s:focus {
	appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
	border:2.8px solid #80ca2c;
}
#search input#s::placeholder {
  color:#80ca2c;
  opacity: 1;  /* 一部のブラウザで薄く表示されるのを防ぐ */
}

@media screen and (max-width: 768px) {
	#search input#s {
		width: 75.4vw;
		height: 12vw;
		border:0.5vw solid #80ca2c;
		border-radius:6vw;
		padding:4vw;
	}
}



#search input#submit {
    width: min(70px,4.66vw);
    height: min(70px,4.66vw);
    border-radius: 50%;
    border-color:transparent;
    background-color:none;
    cursor: pointer;
	background:url("../img/renewal/btn_search.webp") no-repeat;
	background-size:100%;
	text-indent:-9999px;
}
@media screen and (max-width: 768px) {
	#search input#submit {
		width: 13vw;
		height: 13vw;
	}
}

section h2 {
	font-family: "Zen Maru Gothic", serif;
	font-size:min(42px, 2.8vw);
	font-weight:700;
	color:#54bb00;
	text-align:center;
}
@media screen and (max-width: 768px) {
	section h2 {
		font-size:7.7vw;
		letter-spacing: -0.1rem;
	}
}

section.sectionRecomendSite {
	width:100%;
	padding-bottom:min(120px,8vw);
}
@media screen and (max-width: 768px) {
	section.sectionRecomendSite {
		padding-bottom:16vw;
	}
}

.sectionRecomendSite ul.camps {
	margin-top:min(48px,3.2vw);
}
.sectionRecomendSite ul.camps::before, .sectionRecomendSite ul.camps::after  {
	display:none;
}
section.sectionRecomendRecipe {
	width:100%;
	background: url(../img/renewal/bg_new_lineup.webp) repeat-y;
	position:relative;
	padding: 40px 0;
}
section.sectionRecomendRecipe::before {
    content: '';
    width: 100%;
    height: 54px;
    background: url(../img/renewal/bg_new_lineup_top2000.webp) no-repeat top center;
    background-size: 2000px;
    position: absolute;
    top: -2.6vw;
    left: 0;
}
@media screen and (max-width: 1500px) {
	section.sectionRecomendRecipe::before {
    	height: min(54px, 3.5vw);
    	background: url(../img/renewal/bg_new_lineup_top.webp) no-repeat bottom center;
    	background-size: 100%;
    	position: absolute;
    	top: -2.6vw;
    	left: 0;
	}
}
@media screen and (max-width: 768px) {
	section.sectionRecomendRecipe::before {
    	height: 3.6vw;
    	background: url(../img/renewal/bg_new_lineup_top_sp.webp) no-repeat top center;
    	background-size: 100%;
    	position: absolute;
    	top: -3.6vw;
    	left: 0;
	}
}

section.sectionRecomendRecipe::after {
    content: '';
    width: 100%;
    height:54px;
    background: url(../img/renewal/bg_new_lineup_bottom2000.webp) no-repeat top center;
    background-size:2000px;
    position: absolute;
    bottom: -2.6vw;
    left: 0;
}
@media screen and (max-width: 1500px) {
	section.sectionRecomendRecipe::after {
    	content: '';
    	width: 100%;
    	height: min(54px, 3.5vw);
    	background: url(../img/renewal/bg_new_lineup_bottom.webp) no-repeat top center;
    	background-size: 100%;
    	position: absolute;
    	bottom: -2.6vw;
    	left: 0;
	}
}
@media screen and (max-width: 768px) {
	section.sectionRecomendRecipe::after {
    	content: '';
    	width: 100%;
    	height:3.46vw;
    	background: url(../img/renewal/bg_new_lineup_bottom_sp.webp) no-repeat bottom center;
    	background-size: 100%;
    	position: absolute;
    	bottom: -3.46vw;
    	left: 0;
	}
}







section.sectionRecomendRecipe {
	position:relative;
	z-index:3;
	padding-bottom: 6vw;
}
@media screen and (max-width: 768px) {
	section.sectionRecomendRecipe {
		padding-bottom: 15vw;
	}
}

section.sectionRecomendRecipe h2 {
	margin-bottom:min(48px, 3.2vw);
}
@media screen and (max-width: 768px) {
	section.sectionRecomendRecipe h2 {
		margin-bottom:10vw;
	}
}

ul.recipes {
	width:min(1000px,66.6vw);
	margin:auto;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	row-gap:min(58px,3.8vw);
	position:relative;	
}
@media screen and (max-width: 768px) {
	ul.recipes {
		width:90.6vw;
		gap:8vw;
	}
}

ul.recipes::before, ul.recipes::after {
	display:none;
}
ul.recipes::before {
	display:block;
	content:'';
	width:min(125px, 8.3vw);
	height:min(96.5px, 6.4vw);
	background:url("../img/renewal/mame22.webp") no-repeat;
	background-size:100%;
	position:absolute;
	top:-14.5vw; /*min(-218px,-14.5vw)*/
	right:min(-55px,-3.6vw);
}
@media screen and (max-width: 768px) {
	ul.recipes::before {
		width:20.8vw;
		height:16vw;
		top:-35vw;
		right:-13vw;
	}
}

ul.recipes::after {
	display:block;
	content:'';
	width:min(116px, 7.7vw);
	height:110px;/*min(96.5px, 6.4vw)*/
	background:url("../img/renewal/mame23.webp") no-repeat;
	background-size:100%;
	position:absolute;
	bottom:-10vw; /*min(-218px,-14.5vw)*/
	left:min(-90px, -6vw);
	z-index:3;
}

ul.recipes li {
	width:47%;
	display:flex;
	flex-direction: column;
	gap:min(13px, 8.6vw);
}
@media screen and (max-width: 768px) {
	ul.recipes li {
		width:100%;
		gap:0;
	}
}

ul.recipes li a {
	display:block;
	border-radius:min(28px ,1.8vw);
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	ul.recipes li a {
		border-radius:5.4vw;
	}
}


ul.recipes li h3 {
	font-size:min(22px, 1.46vw);
	font-weight:700;
	line-height:1.54;
	color:#2d2d2d;
	margin:min(28.5px, 1.9vw) 0 auto;
}
@media screen and (max-width: 768px) {
	ul.recipes li h3 {
		font-size:4.2vw;
		margin:3vw 0 2vw;
	}
}

ul.recipes li p {
	font-size:min(16px, 1.06vw);
	font-weight:500;
	line-height:1.54;
	color:#66a000;
	background:url("../img/renewal/bg_time.webp") no-repeat center left;
	background-size:min(18px, 1.2vw);
	padding-left:min(22.5px, 1.5vw);
}
@media screen and (max-width: 768px) {
	ul.recipes li p {
		font-size:2.9vw;
		background:url("../img/renewal/bg_time.webp") no-repeat center left;
		background-size:3.4vw;
		padding-left:4.5vw;
	}
}


section.sectionRecipeSum {
	padding:100px 0 0;
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum {
		padding:16vw 0 0;
	}
}

section.sectionRecipeSum::before {
	content: '';
	width:min(466px,31vw);
	height:min(443px,30vw);
	background:url("../img/renewal/mame26.webp") no-repeat;
	background-size:100%;
	position:absolute;
	top:min(-255px,-17vw);
	right:min(-125px,-8.3vw);
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum::before {
		width:62.1vw;
		height:59vw;
		top:-40vw;
		right:-25vw;
	}
}

section.sectionRecipeSum.result::before {
	display:none;
}


section.sectionRecipeSum ul {
	width:min(1000px,66.6vw);
	margin:min(48px,3.2vw) auto auto;
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
	gap:2%;
	row-gap: 3vw;
	position:relative;
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum ul {
		width:90.6vw;
		margin:8vw auto auto;
		row-gap: 9vw;
	}
}


section.sectionRecipeSum ul::after {
	display:none;
}
section.sectionRecipeSum ul::before {
	display:block;
	content:'';
	width:min(116px, 7.7vw);
	height:110px;/*min(96.5px, 6.4vw)*/
	background:url("../img/renewal/mame25.webp") no-repeat;
	background-size:100%;
	position:absolute;
	top:-15vw;
	left:min(-90px, -6vw);
	z-index:3;
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum ul::before {
		width:19.4vw;
		height:18vw;
		top:-35vw;
		left:-12vw;
	}
}
section.sectionRecipeSum.result ul::before {
	display:none;
}


section.sectionRecipeSum ul li {
	width:23.5%;	
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum ul li {
		width:48.5%;
	}
}

section.sectionRecipeSum ul li a {
	width:100%;
	display: flex;
	flex-direction: column;	
}
section.sectionRecipeSum ul li figure {
	width:100%;
}
section.sectionRecipeSum ul li p {
	width:100%;
	height: min(60px, 4vw);
	font-size:min(18px,1.2vw);
	font-weight:700;
	line-height:1.6;
	color:#2d2d2d;
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum ul li p {
		font-size:3.4vw;
		font-weight:700;
		line-height:5vw;
		height: 11.7vw;
	}
}

section.sectionRecipeSum ul li figure img {
	width:100%;
	aspect-ratio: 235 / 169;
    border-radius: 0.89rem;
    margin-bottom: 1.37rem;
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum ul li figure img {
		border-radius: 2.6vw;
		margin-bottom: 4vw;
	}
}

section.sectionRecipeSum ul li span {
	width:100%;
	height:auto;
	font-size:min(16px,1.1vw);
	font-weight:500;
	color:#66a000;
	background: url(../img/renewal/bg_time.webp) no-repeat top 0.1vw left;
    background-size: min(18px, 1.2vw);
	padding-left:min(27px,1.8vw);
	line-height:1.3;
	display:flex;
	align-items: center;
	margin-top:0.5vw;
}
@media screen and (max-width: 768px) {
	section.sectionRecipeSum ul li span {
		height:4.8vw;
		font-size:2.9vw;
		background: url(../img/renewal/bg_time.webp) no-repeat center left;
    	background-size: 3.4vw;
		padding-left:4.8vw;
	}
}


nav.pagination {
    margin:5vw auto;
}

section.sectionRecipeRelate {
	
}
section.sectionRecipeRelate h2 {
	margin-bottom:min(48px, 3.2vw);
}
ul.sites {
	width:min(1000px,66.6vw);
	margin:auto;
	display:flex;
	flex-wrap: wrap;
	/* justify-content: space-between; */
	gap:2%;
	row-gap:min(35px,2.3vw);
	position:relative;
	z-index:2;
}
@media screen and (max-width: 768px) {
	ul.sites {
		width:90.6vw;
		row-gap:4.8vw;
		margin-top:6vw;
	}
}

ul.sites::before, ul.recipes::after {
	display:none;
}
ul.sites li {
	width:23.5%;
	border:2px solid #80ca2c;
}
@media screen and (max-width: 768px) {
	ul.sites li {
		width:48.5%;
	}
}

p.btn_more {
	width:min(285px,19vw);
	margin:min(114px,7.6vw) auto min(60px,4vw);
}
@media screen and (max-width: 768px) {
	p.btn_more {
		width:50.6vw;
		margin:9.7vw auto auto;
	}
}
















