@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap";
@import "https://fonts.googleapis.com/css2?family=Arsenal:ital,wght@1,700&display=swap";
section.recommend .common-inner .img-wrap {
    width: calc(180 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.recommend .common-inner .img-wrap {
        width: calc(420 / 1440 * 100vw);
    }
}
section.recommend .common-inner .labels {
    top: calc(110 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.recommend .common-inner .labels {
        top: calc(200 / 1440 * 100vw);
    }
}
section.recommend .common-inner > .price {
    top: calc(148 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.recommend .common-inner > .price {
        top: calc(250 / 1440 * 100vw);
    }
}
section.recommend .common-inner .annotation {
    margin-top: calc(-10 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.recommend .common-inner .annotation {
        margin-top: calc(10 / 1440 * 100vw);
    }
}
@media (min-width: 768px) {
    section.recommend .common-inner .btns {
        margin-top: 0;
    }
}
section.foods-with-function-claims {
    padding-top: calc(40 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims {
        padding-top: calc(40 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .section-title {
    position: relative;
    display: block;
    font-size: calc(24 / 390 * 100vw);
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .section-title {
        font-size: calc(36 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .section-title::before {
    position: absolute;
    bottom: calc(4 / 390 * 100vw);
    left: calc(36 / 390 * 100vw);
    z-index: -1;
    display: block;
    width: calc(330 / 390 * 100vw);
    height: calc(10 / 390 * 100vw);
    margin: 0 auto;
    content: "";
    background-color: #3bc6f7;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .section-title::before {
        bottom: calc(6 / 1440 * 100vw);
        left: calc(487 / 1440 * 100vw);
        width: calc(495 / 1440 * 100vw);
        height: calc(10 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content {
    position: relative;
    padding: calc(20 / 390 * 100vw) 0;
    margin-top: calc(25 / 390 * 100vw);
    background-color: #e3f5ff;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content {
        padding: calc(40 / 1440 * 100vw) 0;
        margin-top: calc(50 / 1440 * 100vw);
    }
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .common-inner {
        max-width: calc(800 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) {
    background-color: #fff;
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .img-wrap {
    width: calc(194 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .img-wrap {
        width: calc(250 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .balloon {
    top: calc(70 / 390 * 100vw);
    padding: calc(20 / 390 * 100vw) 0;
    font-size: calc(10 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .balloon {
        top: calc(100 / 1440 * 100vw);
        width: calc(150 / 1440 * 100vw);
        height: calc(100 / 1440 * 100vw);
        padding: calc(20 / 1440 * 100vw) 0;
        font-size: calc(10 / 1440 * 100vw);
    }
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .balloon::before {
        top: calc(100 / 1440 * 100vw);
    }
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .balloon .emphasis {
        font-size: calc(19 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description {
    width: 100%;
    padding: calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
    margin-top: calc(40 / 390 * 100vw);
    background-color: #e8ecf0;
    border-radius: calc(4 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description {
        padding: calc(40 / 1440 * 100vw);
        margin-top: calc(40 / 1440 * 100vw);
        border-radius: calc(8 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description.open .toggle::after {
    background-image: url("../new-img/basic/basic-top/production-info/minus-icon.svg");
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description.open .toggle-inner {
    display: block;
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: calc(18 / 390 * 100vw);
    font-weight: bold;
    cursor: pointer;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle {
        font-size: calc(18 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle::after {
    display: inline-block;
    width: calc(40 / 390 * 100vw);
    aspect-ratio: 1/1;
    content: "";
    background-image: url("../new-img/basic/basic-top/production-info/plus-icon.svg");
    background-repeat: no-repeat;
    background-size: contain;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle::after {
        width: calc(40 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner {
    display: none;
    margin-top: calc(20 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner {
        margin-top: calc(36 / 1440 * 100vw);
        font-size: calc(14 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner h4:not(:first-child) {
    margin-top: calc(14 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner h4:not(:first-child) {
        margin-top: calc(14 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner .notification {
    margin-top: calc(20 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
    text-align: center;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner .notification {
        margin-top: calc(36 / 1440 * 100vw);
        font-size: calc(12 / 1440 * 100vw);
        text-align: left;
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner .notification .link {
    display: inline;
    text-decoration: underline;
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner ul {
    margin-top: calc(20 / 390 * 100vw);
    font-size: calc(10 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner ul {
        margin-top: calc(20 / 1440 * 100vw);
        font-size: calc(12 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner ul li {
    position: relative;
    padding-left: calc(10 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner ul li {
        padding-left: calc(10 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner ul li::before {
    position: absolute;
    top: calc(8 / 390 * 100vw);
    left: calc(2 / 390 * 100vw);
    display: inline-block;
    width: calc(2 / 390 * 100vw);
    aspect-ratio: 1/1;
    margin-right: calc(10 / 390 * 100vw);
    content: "";
    background-color: #424242;
    border-radius: 50%;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content:nth-of-type(2) .description .toggle-inner ul li::before {
        top: calc(8 / 1440 * 100vw);
        left: calc(1 / 1440 * 100vw);
        width: calc(2 / 1440 * 100vw);
        margin-right: calc(10 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content h3 {
    font-size: calc(18 / 390 * 100vw);
    font-weight: bold;
    text-align: center;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content h3 {
        font-size: calc(24 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .img-wrap {
    width: calc(275 / 390 * 100vw);
    margin-top: calc(20 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .img-wrap {
        width: calc(540 / 1440 * 100vw);
        margin: calc(40 / 1440 * 100vw) auto 0;
    }
}
section.foods-with-function-claims .foods-content .balloon {
    position: absolute;
    top: calc(38 / 390 * 100vw);
    right: 0;
    width: calc(150 / 390 * 100vw);
    height: calc(100 / 390 * 100vw);
    padding: calc(26 / 390 * 100vw) calc(10 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    font-weight: bold;
    line-height: 1.4;
    color: #fff;
    text-align: center;
    background-color: #0062e0;
    border-radius: calc(12 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .balloon {
        top: calc(144 / 1440 * 100vw);
        right: unset;
        left: calc(540 / 1440 * 100vw);
        width: calc(200 / 1440 * 100vw);
        height: calc(133 / 1440 * 100vw);
        padding: calc(38 / 1440 * 100vw) calc(14 / 1440 * 100vw);
        font-size: calc(18 / 1440 * 100vw);
        border-radius: calc(12 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .balloon .emphasis {
    font-size: calc(19 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .balloon .emphasis {
        font-size: calc(24 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .balloon .symbol {
    font-size: calc(16 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .balloon .symbol {
        font-size: calc(24 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .balloon::before {
    position: absolute;
    top: 100%;
    left: calc(20 / 390 * 100vw);
    display: block;
    width: calc(20 / 390 * 100vw);
    aspect-ratio: 1/1;
    content: "";
    background-image: url("../new-img/basic/foods-with-function-claims/balloon-triangle.svg");
    background-repeat: no-repeat;
    background-size: contain;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .balloon::before {
        top: calc(130 / 1440 * 100vw);
        left: calc(26 / 1440 * 100vw);
        width: calc(26 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .text {
    font-size: calc(16 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .text {
        font-size: calc(18 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .text:first-of-type {
    margin-top: calc(18 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .text:first-of-type {
        margin-top: calc(40 / 1440 * 100vw);
    }
}
section.foods-with-function-claims .foods-content .annotation {
    font-size: calc(12 / 390 * 100vw);
    color: #b8b8b8;
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .annotation {
        font-size: calc(14 / 1440 * 100vw);
    }
}
@media (min-width: 768px) {
    section.foods-with-function-claims .foods-content .annotation:nth-of-type(3) {
        margin-top: calc(10 / 1440 * 100vw);
    }
}
section.key {
    position: relative;
    padding-top: calc(34 / 390 * 100vw);
    padding-bottom: calc(12 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.key {
        padding-bottom: calc(20 / 1440 * 100vw);
    }
}
section.key .section-title {
    position: relative;
    font-size: calc(32 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.key .section-title {
        font-size: calc(70 / 1440 * 100vw);
    }
}
section.key .production-name .dec-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.2;
}
@media (min-width: 768px) {
    section.key .production-name .dec-text {
        font-size: calc(32 / 1440 * 100vw);
    }
}
section.key .production-img {
    position: relative;
    margin-top: calc(8 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.key .production-img {
        position: absolute;
        top: calc(280 / 1440 * 100vw);
        left: calc(470 / 1440 * 100vw);
        width: calc(200 / 1440 * 100vw);
        margin-top: calc(30 / 1440 * 100vw);
    }
}
section.key .production-img .round-badge {
    position: absolute;
    top: 0;
    left: calc(98 / 390 * 100vw);
    width: calc(90 / 390 * 100vw);
    aspect-ratio: 1/1;
    padding-top: calc(16 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    font-weight: bold;
    line-height: 1.25;
    color: #fff;
    text-align: center;
    background-color: #19afff;
    border-radius: 50%;
}
@media (min-width: 768px) {
    section.key .production-img .round-badge {
        top: calc(-106 / 1440 * 100vw);
        left: calc(140 / 1440 * 100vw);
        width: calc(180 / 1440 * 100vw);
        padding-top: calc(30 / 1440 * 100vw);
        font-size: calc(32 / 1440 * 100vw);
        line-height: 1.25;
    }
}
section.key .production-img .round-badge::before {
    position: absolute;
    top: calc(60 / 390 * 100vw);
    left: calc(64 / 390 * 100vw);
    font-size: calc(8 / 390 * 100vw);
    font-weight: normal;
    content: "※2";
}
@media (min-width: 768px) {
    section.key .production-img .round-badge::before {
        top: calc(120 / 1440 * 100vw);
        left: calc(120 / 1440 * 100vw);
        font-size: calc(12 / 1440 * 100vw);
    }
}
section.key .production-img .round-badge .small {
    font-size: calc(12 / 390 * 100vw);
}
@media (min-width: 768px) {
    section.key .production-img .round-badge .small {
        font-size: calc(28 / 1440 * 100vw);
    }
}
section.key .annotation {
    margin-top: calc(20 / 390 * 100vw);
    font-size: calc(8 / 390 * 100vw);
    line-height: 1.2;
}
@media (min-width: 768px) {
    section.key .annotation {
        margin-top: calc(230 / 1440 * 100vw);
        font-size: calc(12 / 1440 * 100vw);
        text-shadow: none;
    }
}
