@charset "UTF-8";
.main-container {
    --lp-c-main: var(--lp-c-accent);
    --lp-c-main-sub: var(--lp-c-accent-sub);
}
/* --------------------------------------------------------------------------
SECTION
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .l-section__header + .l-section__content {
        margin-top: calc(80 / var(--lp-font) * 1em);
    }
    .section-heading-lv2__inner {
        gap: min(24px, calc(24 / 1366 * 100vw));
    }
    .section-heading-lv2-text__label {
        font-size: clamp(30px, calc(44 / 1366 * 100vw), 44px);
    }
    .l-section:last-child .l-section__body {
        padding-bottom: calc(64 / var(--lp-font) * 1em);
    }
}
@media all and (max-width: 767px) {
    .section-heading-lv2__inner {
        gap: calc(16 / 750 * 100vw);
    }
    .section-heading-lv2-text__label {
        font-size: calc(56 / 750 * 100vw);
    }
    .l-section:last-child .l-section__body {
        padding-bottom: calc(64 / var(--lp-font) * 1em);
    }
    .mc-breadcrumb {
        margin-top: 5px;
    }
}

/* --------------------------------------------------------------------------
MV
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .mv-section {
        height: min(576px, calc(576 / 1366 * 100vw));
        padding-right: min(87px, calc(87 / 1366 * 100vw));
        padding-right: calc(87 / var(--lp-font) * 1em);
    }
    .mv-section__inner {
        max-width: calc(1320 / var(--lp-font) * 1em);
        padding: 0 min(76px, calc(76 / 1366 * 100vw));
        height: 100%;
        position: relative;
    }
    .mv-section__inner::before {
        content: "";
        display: block;
        background: url("../img/top/mv_bg.png") no-repeat center / cover;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
    }
    .mv-section__body {
        padding-top: min(32px, calc(32 / 1366 * 100vw));
        padding-bottom: min(32px, calc(32 / 1366 * 100vw));
        height: 100%;
        position: relative;
    }
    .mv-logo {
        width: min(355px, calc(355 / 1366 * 100vw));
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
    }
}
@media all and (max-width: 767px) {
    .mv-section {
        height: calc(1000 / 750 * 100vw);
    }
    .mv-section__inner {
        height: 100%;
        position: relative;
        background: url("../img/top/mv_bg_sp.png") no-repeat center / contain;
    }
    .mv-section__body {
        padding-top: calc(32 / 750 * 100vw);
        padding-bottom: calc(32 / 750 * 100vw);
        height: 100%;
        position: relative;
    }
    .mv-logo {
        width: calc(430 / 750 * 100vw);
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        margin-top: calc(46 / 750 * 100vw);
    }
    
}

/* --------------------------------------------------------------------------
LINK
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .link-section {
    }
    .link-section__inner {
        max-width: calc(1064 / var(--lp-font) * 1em);
        max-width: min(1064px, calc(1064 / 1366 * 100vw));
    }
    .link-section__body {
        padding-top: calc(37 / var(--lp-font) * 1em);
        padding-bottom: calc(40 / var(--lp-font) * 1em);
    }
    .link-list {
        display: flex;
        gap: min(24px, calc(24 / 1366 * 100vw));
        position: relative;
    }
    .link-list-item {
        width: calc((100% - min(24px, calc(24 / 1366 * 100vw)) * 3) / 4);
    }
    .link-list-item--about {
    }
    .link-list-item--lineup {
    }
    .link-list-item--recipe {
    }
    .link-list-item--whats {
    }
    .link-list-card {
        display: flex;
        background: var(--lp-c-black);
        height: 100%;
    }
    .link-list-card-img {
        width: calc(96 / var(--lp-font) * 1em);
        width: min(96px, calc(96 / 1366 * 100vw));
        aspect-ratio: 1 / 1;
        overflow: hidden;
        flex-shrink: 0;
    }
    .link-list-card-img img {
        transition: var(--lp-transition);
        height: 100%;
    }
    .link-list-card:hover .link-list-card-img img {
        transform: var(--hover-animation-A);
    }
    .link-list-card-read {
        flex-grow: 1;
    }
    .link-list-card-read__inner {
        height: 100%;
        padding: min(10px, calc(10 / 1366 * 100vw)) min(11px, calc(11 / 1366 * 100vw));
        padding-right: min(28px, calc(28 / 1366 * 100vw));
        display: flex;
        align-items: start;
        justify-content: center;
        flex-direction: column;
        position: relative;
    }
    .link-list-card-read-heading {
        margin-bottom: calc(8 / var(--lp-font) * 1em);
    }
    .link-list-card-read-heading__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-en);
        font-size: calc(10 / var(--lp-font) * 1em);
        font-feature-settings: "palt";
        font-weight: 500;
        letter-spacing: calc(80 / 1000 * 1em);
        line-height: 1;
    }
    .link-list-card-read-text {
    }
    .link-list-card-read-text__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-mincho);
        font-size: min(16px, calc(16 / 1366 * 100vw));
        font-weight: 600;
        font-feature-settings: "palt";
        letter-spacing: calc(90 / 1000 * 1em);
        line-height: 1.25;
        white-space: nowrap;
    }
    .link-list-card-read-ico {
    }
    .link-list-card-read-ico::before {
        content: "";
        display: block;
        mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        -webkit-mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        background: var(--lp-c-white);
        width: min(15px, calc(15 / 1366 * 100vw));
        padding-top: min(8px, calc(8 / 1366 * 100vw));
        margin-right: min(12px, calc(12 / 1366 * 100vw));
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
    }
    /* hover時 */
    .link-list-item--lineup .link-list-card-read-ico {
        width: min(14px, calc(14 / 1366 * 100vw));
        height: min(14px, calc(14 / 1366 * 100vw));
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        margin-right: calc(12 / var(--lp-font) * 1em);
    }
    .link-list-item--lineup .link-list-card-read-ico::before,
    .link-list-item--lineup .link-list-card-read-ico::after {
        content: "";
        display: block;
        background: var(--lp-c-white);
        mask: none;
        -webkit-mask: none;
        width: 100%;
        padding-top: 1px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50% , -50%);
        transition: var(--lp-transition);
    }
    .link-list-item--lineup .link-list-card-read-ico::after {
        transform: translate(-50% , -50%) rotate(90deg);
    }
    .js-lp-hover-trigger--active.link-list-item--lineup .link-list-card-read-ico::after {
        transform: translate(-50% , -50%) rotate(0);
    }

    /* lineupホバー時 */
    .link-list-item--lineup {
    }
    .link-lineup-content {
        visibility: hidden;
        opacity: 0;
        transition: var(--lp-transition);
        width: 100%;
        left: 0;
        bottom: 0;
        transform: translateY(100%);
        margin-bottom: min(-20px, calc(-20 / 1366 * 100vw));
        background: var(--lp-c-black);
        position: absolute;
        z-index: 1;
    }
    .link-lineup-content__inner {
        max-width: calc(970 / var(--lp-font) * 1em);
        padding: 0 min(20px, calc(20 / 1366 * 100vw));
        margin: auto;
    }
    .link-lineup-content__body {
        padding: calc(30 / var(--lp-font) * 1em) 0;
    }
    .link-lineup-content-list {
        display: flex;
        justify-content: space-between;
        gap: min(20px, calc(20 / 1366 * 100vw));
    }
    .link-lineup-content-list-item {
        max-width: calc(212 / var(--lp-font) * 1em);
        width: 100%;
        padding-right: min(20px, calc(20 / 1366 * 100vw));
    }
    .link-lineup-content-list-item:last-child {
        max-width: calc(192 / var(--lp-font) * 1em);
        padding-right: 0;
    }
    .link-lineup-card {
    }
    .link-lineup-card__inner {
        padding-right: min(24px, calc(24 / 1366 * 100vw));
        position: relative;
    }
    .link-lineup-card__inner::before {
        content: "";
        display: block;
        mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        -webkit-mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        background: var(--lp-c-white);
        width: min(15px, calc(15 / 1366 * 100vw));
        height: min(8px, calc(8 / 1366 * 100vw));
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto 0;
        transition: var(--lp-transition);
    }
    .link-lineup-card:hover .link-lineup-card__inner::before {
        transform: var(--hover-animation-B);
    }
    .link-lineup-card-text {
    }
    .link-lineup-card-text__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-shippori);
        font-size: calc(16 / var(--lp-font) * 1em);
        font-size: clamp(11px, calc(16 / 1366 * 100vw), 16px);
        font-weight: 500;
        font-feature-settings: "palt";
        line-height: 1.3;
        letter-spacing: calc(20 / 1000 * 1em)
    }
    .link-lineup-card-text-ico {
    }
    .js-lp-hover-trigger--active .link-lineup-content {
        visibility: visible;
        opacity: 1;
    }
}
@media all and (max-width: 767px) {
    .link-section {
    }
    .link-section__inner {
    }
    .link-section__body {
        padding-top: calc(70 / 750 * 100vw);
        padding-bottom: calc(60 / 750 * 100vw);
    }
    .link-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(24 / 750 * 100vw);
        position: relative;
    }
    .link-list-item {
        width: calc((100% - (24 / 750 * 100vw)) / 2);
    }
    .link-list-item--about {
    }
    .link-list-item--lineup {
    }
    .link-list-item--recipe {
    }
    .link-list-item--whats {
    }
    .link-list-card {
        display: flex;
        background: var(--lp-c-black);
        height: 100%;
    }
    .link-list-card-img {
        width: calc(136 / 750 * 100vw);
        aspect-ratio: 1 / 1;
        overflow: hidden;
        flex-shrink: 0;
    }
    .link-list-card-read {
        flex-grow: 1;
    }
    .link-list-card-read__inner {
        height: 100%;
        padding: calc(10 / 750 * 100vw) calc(18 / 750 * 100vw);
        padding-right: calc(32 / 750 * 100vw);
        display: flex;
        align-items: start;
        justify-content: center;
        flex-direction: column;
        position: relative;
    }
    .link-list-card-read-heading {
        margin-bottom: calc(8 / 750 * 100vw);
    }
    .link-list-card-read-heading__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-en);
        font-size: calc(20 / 750 * 100vw);
        font-feature-settings: "palt";
        font-weight: 500;
        letter-spacing: calc(80 / 1000 * 1em);
        line-height: 1;
    }
    .link-list-card-read-text {
    }
    .link-list-card-read-text__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-mincho);
        font-size: calc(26 / 750 * 100vw);
        font-weight: 600;
        font-feature-settings: "palt";
        letter-spacing: calc(30 / 1000 * 1em);
        line-height: 1.25;
        white-space: nowrap;
    }
    .link-list-card-read-ico {
    }
    .link-list-card-read-ico::before {
        content: "";
        display: block;
        mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        -webkit-mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        background: var(--lp-c-white);
        width: calc(19 / 750 * 100vw);
        padding-top: calc(15 / 750 * 100vw);
        margin-right: calc(14 / 750 * 100vw);
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
    }
    /* hover時 */
    .link-list-item--lineup .link-list-card-read-ico {
        width: calc(16 / 750 * 100vw);
        height: calc(16 / 750 * 100vw);
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        margin-right: calc(14 / 750 * 100vw);
    }
    .link-list-item--lineup .link-list-card-read-ico::before,
    .link-list-item--lineup .link-list-card-read-ico::after {
        content: "";
        display: block;
        background: var(--lp-c-white);
        mask: none;
        -webkit-mask: none;
        width: 100%;
        padding-top: calc(2 / 750 * 100vw);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50% , -50%);
        transition: var(--lp-transition);
    }
    .link-list-item--lineup .link-list-card-read-ico::after {
        transform: translate(-50% , -50%) rotate(90deg);
    }
    .is-accordion-active.link-list-item--lineup .link-list-card-read-ico::after {
        transform: translate(-50% , -50%) rotate(0);
    }

    /* lineupクリック */
    .link-list-item--lineup {
    }
    .link-lineup-content {
        visibility: hidden;
        opacity: 0;
        transition: var(--lp-transition);
        width: 100%;
        left: 0;
        top: 0;
        margin-top: calc(160 / 750 * 100vw);
        background: var(--lp-c-black);
        position: absolute;
        z-index: 1;
    }
    .link-lineup-content__inner {
        padding: 0 calc(42 / 750 * 100vw);
        margin: auto;
    }
    .link-lineup-content__body {
        padding: calc(30 / 750 * 100vw) 0;
    }
    .link-lineup-content-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(50 / 750 * 100vw);
    }
    .link-lineup-content-list-item {
        width: calc((100% - (50 / 750 * 100vw)) / 2);
    }
    .link-lineup-card {
    }
    .link-lineup-card__inner {
        padding-right: calc(24 / 750 * 100vw);
        position: relative;
    }
    .link-lineup-card__inner::before {
        content: "";
        display: block;
        mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        -webkit-mask: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        background: var(--lp-c-white);
        width: calc(19 / 750 * 100vw);
        height: calc(15 / 750 * 100vw);
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto 0;
        transition: var(--lp-transition);
    }
    .link-lineup-card-text {
    }
    .link-lineup-card-text__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-shippori);
        font-size: calc(26 / 750 * 100vw);
        font-weight: 500;
        font-feature-settings: "palt";
        line-height: 1.2;
    }
    .link-lineup-card-text-ico {
    }
    .js-lp-hover-trigger--active .link-lineup-content {
        visibility: visible;
        opacity: 1;
    }
}

/* --------------------------------------------------------------------------
ABOUT
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .about-section {
    }
    .about-section__inner {
        max-width: calc(1406 / var(--lp-font) * 1em);
    }
    .about-section__body {
        padding-top: calc(40 / var(--lp-font) * 1em);
        padding-bottom: calc(70 / var(--lp-font) * 1em);
    }
    .about-section .section-heading-read-text__label {
        line-height: 2;
    }
    .about-section .l-section__column {
        justify-content: start;
        gap: min(64px, calc(64 / 1366 * 100vw));
    }
    .about-section .l-section__header {
        justify-content: start;
        position: relative;
    }
    .about-section .l-section__content {
        margin-left: calc(-20 / var(--lp-font) * 1em);
    }
    .about-slide__container {
        width: min(760px, calc(760 / 1366 * 100vw));
        position: relative;
    }
    .about-slide {
    }
    .about-slide-list {
    }
    .about-slide-list-item {
    }
    .about-card {
    }
    .about-card-img {
    }
    .about-detail-btn {
        position: absolute;
        bottom: 0;
        right: 0;
        margin-bottom: min(-30px, calc(-30 / 1366 * 100vw));
    }
}
@media all and (max-width: 767px) {
    .about-section {
    }
    .about-section__inner {
    }
    .about-section__body {
        padding-top: calc(60 / 750 * 100vw);
        padding-bottom: calc(80 / 750 * 100vw);
    }
    .about-section .section-heading-read-text {
        height: calc(452 / 750 * 100vw);
    }
    .about-section .section-heading-read-text__label {
        line-height: 2;
        font-feature-settings: "palt";
    }
    .about-section .l-section__column {
        display: block;
    }
    .about-section .l-section__header {
        position: relative;
        padding-bottom: calc(154 / 750 * 100vw);
    }
    .about-section .l-section__content {
        margin-top: calc(72 / 750 * 100vw);
    }
    .about-slide__container {
        width: calc(710 / 750 * 100vw);
        position: relative;
        margin-left: calc(-40 / 750 * 100vw);
    }
    .about-slide {
    }
    .about-slide-list {
    }
    .about-slide-list-item {
    }
    .about-card {
    }
    .about-card-img {
    }
    .about-detail-btn {
        position: absolute;
        bottom: 0;
        left: 0;
    }
}

/* --------------------------------------------------------------------------
LINEUP
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .lineup-section {
    }
    .lineup-section__inner {
    }
    .lineup-section__body {
        padding-top: calc(70 / var(--lp-font) * 1em);
        padding-bottom: calc(100 / var(--lp-font) * 1em);
    }
    .lineup-section .section-heading-read {
        margin-top: 0;
    }
    .lineup-section .l-section__column {
        flex-direction: row;
    }
    .lineup-section .l-section__header {
        margin-right: calc(20 / var(--lp-font) * 1em);
    }
    .lineup-list__container {
        max-width: calc(804 / var(--lp-font) * 1em);
        width: 100%;
    }
    .lineup-list {
        display: flex;
        flex-wrap: wrap;
        gap: min(64px, calc(64 / 1366 * 100vw)) min(48px, calc(48 / 1366 * 100vw));
    }
    .lineup-list-item {
        width: calc((100% - (48 / var(--lp-font) * 1em)) / 2);
    }
    .lineup-list-item--koji {
        --lp-thema-color: var(--lp-c-koji);
    }
    .lineup-list-item--kyoen {
        --lp-thema-color: var(--lp-c-kyoen);
    }
    .lineup-list-item--takumi-koji {
        --lp-thema-color: var(--lp-c-takumi-koji);
    }
    .lineup-list-item--takumi-shiro {
        --lp-thema-color: var(--lp-c-takumi-shiro);
    }
    .lineup-card {
    }
    .lineup-card__inner {
    }
    .lineup-card-content {
        position: relative;
        z-index: 0;
        min-height: calc(320 / var(--lp-font) * 1em);
        height: 0;
        box-shadow: rgba(0, 0, 0, 0.14) 0 0 calc(20 / var(--lp-font) * 1em);
    }
    .lineup-card-content::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: var(--lp-c-white);
        opacity: .5;
        z-index: -1;
    }
    .lineup-card-content__inner {
        padding-left: calc(20 / var(--lp-font) * 1em);
        padding-right: calc(120 / var(--lp-font) * 1em);
        height: 100%;
    }
    .lineup-card-content__body {
        padding: calc(40 / var(--lp-font) * 1em) 0;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }
    .lineup-card-content-heading {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1;
        width: calc(100 / var(--lp-font) * 1em);
    }
    .lineup-card-content-heading::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: var(--lp-thema-color);
        opacity: 0.8;
        z-index: -1;
    }
    .lineup-card-content-heading__inner {
        padding: calc(24 / var(--lp-font) * 1em) calc(18.5 / var(--lp-font) * 1em);
    }
    .lineup-card-content-heading-text {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }
    .lineup-card-content-heading-text__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-shippori);
        font-size: calc(24 / var(--lp-font) * 1em);
        font-feature-settings: "palt";
        letter-spacing: calc(50 / 1000 * 1em);
        line-height: 1.5;
        font-weight: 500;
        margin: 0;
    }
    .lineup-card-content-heading-text__sub {
        color: var(--lp-c-white);
        font-family: var(--lp-f-shippori);
        font-size: calc(18 / var(--lp-font) * 1em);
        font-weight: 500;
        letter-spacing: calc(60 / 1000 * 1em);
        line-height: 1.5;
        text-align: end;
        margin: 0;
    }
    .lineup-card-content-heading-text__sub .u-horizontal {
        line-height: 1;
    }
    .lineup-card-content-img {
        width: calc(196 / var(--lp-font) * 1em);
    }
    .lineup-card-read {
    }
    .lineup-card-read-text {
        margin-top: calc(8 / var(--lp-font) * 1em);
    }
    .lineup-card-read-detail {
        margin-top: calc(20 / var(--lp-font) * 1em);
    }
    .lineup-card-read-detail__inner {
        display: flex;
        align-items: center;
        justify-content: end;
    }
    .lineup-card-read-detail-text {
        position: relative;
        display: flex;
        padding-bottom: calc(6 / var(--lp-font) * 1em);
    }
    .lineup-card-read-detail-text::before {
        content: "";
        display: block;
        background: var(--lp-c-black);
        width: 100%;
        height: 1px;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .lineup-card-read-detail-text::after {
        content: "";
        display: block;
        background: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        width: calc(12 / var(--lp-font) * 1em);
        padding-top: calc(10 / var(--lp-font) * 1em);
        margin-left: calc(16 / var(--lp-font) * 1em);
    }
    .lineup-card-read-detail-text__label {
        font-family: var(--lp-f-mincho);
        font-size: calc(14 / var(--lp-font) * 1em);
        font-weight: 600;
        line-height: 1.5;
    }
    /* hover時 */
    .lineup-card-content-img img,
    .lineup-card-read-detail-text::after {
        transition: var(--lp-transition);
    }
    .lineup-card:hover .lineup-card-content-img img {
        transform: var(--hover-animation-A);
    }
    .lineup-card:hover .lineup-card-read-detail-text::after {
        transform: var(--hover-animation-B);
    }
}
@media all and (max-width: 767px) {
    .lineup-section {
    }
    .lineup-section__inner {
    }
    .lineup-section__body {
        padding-top: calc(80 / 750 * 100vw);
        padding-bottom: calc(120 / 750 * 100vw);
    }
    .lineup-section .section-heading-read {
        margin-top: calc(110 / 750 * 100vw);
        width: calc(458 / 750 * 100vw);
    }
    .lineup-section .l-section__column {
        display: block;
    }
    .lineup-section .l-section__header {
        flex-direction: row;
    }
    .lineup-list__container {
        margin-top: calc(64 / 750 * 100vw);
        max-width: calc(804 / 750 * 100vw);
        width: 100%;
    }
    .lineup-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(80 / 750 * 100vw) calc(30 / 750 * 100vw);
    }
    .lineup-list-item {
        width: calc((100% - (30 / 750 * 100vw)) / 2);
    }
    .lineup-list-item--koji {
        --lp-thema-color: var(--lp-c-koji);
    }
    .lineup-list-item--kyoen {
        --lp-thema-color: var(--lp-c-kyoen);
    }
    .lineup-list-item--takumi-koji {
        --lp-thema-color: var(--lp-c-takumi-koji);
    }
    .lineup-list-item--takumi-shiro {
        --lp-thema-color: var(--lp-c-takumi-shiro);
    }
    .lineup-card {
    }
    .lineup-card__inner {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
    .lineup-card-content {
        position: relative;
        z-index: 0;
        min-height: calc(320 / 750 * 100vw);
        height: 0;
        box-shadow: rgba(0, 0, 0, 0.14) 0 0 calc(20 / 750 * 100vw);
    }
    .lineup-card-content::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: var(--lp-c-white);
        opacity: .5;
        z-index: -1;
    }
    .lineup-card-content__inner {
        padding-left: calc(20 / 750 * 100vw);
        padding-right: calc(120 / 750 * 100vw);
        height: 100%;
    }
    .lineup-card-content__body {
        padding: calc(40 / 750 * 100vw) 0;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }
    .lineup-card-content-heading {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1;
        width: calc(100 / 750 * 100vw);
    }
    .lineup-card-content-heading::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: var(--lp-thema-color);
        opacity: 0.8;
        z-index: -1;
    }
    .lineup-card-content-heading__inner {
        padding: calc(24 / 750 * 100vw) calc(18.5 / 750 * 100vw);
    }
    .lineup-card-content-heading-text {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }
    .lineup-card-content-heading-text__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-shippori);
        font-size: calc(26 / 750 * 100vw);
        font-feature-settings: "palt";
        letter-spacing: calc(50 / 1000 * 1em);
        line-height: 1.5;
        font-weight: 500;
        margin: 0;
    }
    .lineup-card-content-heading-text__sub {
        color: var(--lp-c-white);
        font-family: var(--lp-f-shippori);
        font-size: calc(22 / 750 * 100vw);
        font-weight: 500;
        letter-spacing: calc(60 / 1000 * 1em);
        line-height: 1.5;
        text-align: end;
        margin: 0;
    }
    .lineup-card-content-heading-text__sub .u-horizontal {
        line-height: 1;
    }
    .lineup-card-content-img {
        width: calc(183 / 750 * 100vw);
    }
    .lineup-card-read {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
    .lineup-card-read-text {
        margin-top: calc(16 / 750 * 100vw);
    }
    .lineup-card-read-text .c-txt {
        font-feature-settings: normal;
    }
    .lineup-card-read-detail {
        margin-top: calc(20 / 750 * 100vw);
    }
    .lineup-card-read-detail__inner {
        display: flex;
        align-items: center;
    }
    .lineup-card-read-detail-text {
        position: relative;
        display: flex;
        padding-bottom: calc(6 / 750 * 100vw);
    }
    .lineup-card-read-detail-text::before {
        content: "";
        display: block;
        background: var(--lp-c-black);
        width: 100%;
        height: 1px;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .lineup-card-read-detail-text::after {
        content: "";
        display: block;
        background: url("../img/common/ico_arrow.svg") no-repeat center / contain;
        width: calc(24 / 750 * 100vw);
        padding-top: calc(24 / 750 * 100vw);
        margin-left: calc(16 / 750 * 100vw);
    }
    .lineup-card-read-detail-text__label {
        font-family: var(--lp-f-mincho);
        font-size: calc(24 / 750 * 100vw);
        font-weight: 600;
        line-height: 1.5;
    }
}

/* --------------------------------------------------------------------------
RECIPE
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .recipe-section {
        background: var(--lp-sec-bg);
    }
    .recipe-section__inner {
        max-width: calc(1066 / var(--lp-font) * 1em);
    }
    .recipe-section__body {
        padding-top: calc(105 / var(--lp-font) * 1em);
        padding-bottom: calc(180 / var(--lp-font) * 1em);
        position: relative;
    }
    .recipe-section .l-section__column {
        justify-content: end;
        gap: min(80px, calc(80 / 1366 * 100vw));
    }
    .recipe-section .section-heading-read-text__label {
        line-height: 2;
    }
    /* pickup */
    .recipe-pickup {
    }
    .recipe-pickup-img {
        width: min(717px, calc(717 / 1366 * 100vw));
        position: relative;
        z-index: 0;
    }
    .recipe-pickup-img__inner {
        overflow: hidden;
    }
    .recipe-pickup-img__inner::before {
        content: "";
        display: block;
        background: url("../img/top/recipe_deco_img.png") no-repeat center / contain;
        width: min(361px, calc(361 / 1366 * 100vw));
        aspect-ratio: 361 / 263;
        position: absolute;
        left: 0;
        bottom: 0;
        margin-left: calc(-112 / var(--lp-font) * 1em);
        margin-bottom: calc(-42 / var(--lp-font) * 1em);
        z-index: -1;
    }
    .recipe-pickup-img img {
        transition: var(--lp-transition);
    }
    .recipe-pickup:hover .recipe-pickup-img img {
        transform: var(--hover-animation-A);
    }
    /* 季節アイコン切り替え */
    .recipe-pickup-img__inner::after {
        content: "";
        display: block;
        width: min(129px, calc(129 / 1366 * 100vw));
        aspect-ratio: 1 / 1;
        position: absolute;
        top: 0;
        left: 0;
        margin-top: calc(-48 / var(--lp-font) * 1em);
        margin-left: calc(-48 / var(--lp-font) * 1em);
    }
    .recipe-pickup.recipe-pickup--spring .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_spring.png") no-repeat center / contain;
    }
    .recipe-pickup.recipe-pickup--summer .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_summer.png") no-repeat center / contain;
    }
    .recipe-pickup.recipe-pickup--autumn .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_autumn.png") no-repeat center / contain;
    }
    .recipe-pickup.recipe-pickup--winter .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_winter.png") no-repeat center / contain;
    }
    .recipe-pickup-text {
        text-align: right;
        margin-top: calc(18 / var(--lp-font) * 1em);
        padding-left: min(270px, calc(270 / 1366 * 100vw));
    }
    .recipe-pickup-text__label {
        font-family: var(--lp-f-mincho);
        font-size: calc(14 / var(--lp-font) * 1em);
        font-weight: 600;
        line-height: 1.4;
    }
    /* その他の季節 */
    .other-recipe__container {
        margin-top: min(64px, calc(64 / 1366 * 100vw));
        position: relative;
        margin-left: -50vw;
        padding-left: 50vw;
        margin-right: max(-80px, calc(-80 / 1366 * 100vw));
        padding-right: min(80px, calc(80 / 1366 * 100vw));
    }
    .other-recipe {
    }
    .other-recipe-bg {
        background: var(--lp-c-accent-sub);
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0.8;
        mix-blend-mode: multiply;
    }
    .other-recipe__inner {
        max-width: calc(1024 / var(--lp-font) * 1em);
        position: relative;
    }
    .other-recipe__body {
        padding: min(36px, calc(36 / 1366 * 100vw)) 0 min(48px, calc(48 / 1366 * 100vw));
    }
    .other-recipe-heading {
        margin-bottom: calc(12 / var(--lp-font) * 1em);
    }
    .other-recipe-heading__inner {
        display: flex;
        align-items: center;
    }
    .other-recipe-heading__inner::before {
        content: "";
        display: block;
        background: var(--lp-c-white);
        width: calc(30 / var(--lp-font) * 1em);
        height: 1px;
        margin-right: calc(15 / var(--lp-font) * 1em);
    }
    .other-recipe-heading__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-mincho);
        font-size: calc(24 / var(--lp-font) * 1em);
        font-weight: 500;
        font-feature-settings: "palt";
        letter-spacing: calc(120 / 1000 * 1em);
        line-height: 1.5;
    }
    .other-recipe-list {
        display: flex;
        gap: min(24px, calc(24 / 1366 * 100vw));
    }
    .other-recipe-list-item {
        width: calc((100% - min(24px, calc(24 / 1366 * 100vw)) * 2) / 3);
    }
    .other-recipe-card {
    }
    .other-recipe-card__inner {
    }
    .other-recipe-card-img {
        overflow: hidden;
    }
    .other-recipe-card-img img {
        transition: var(--lp-transition);
    }
    .other-recipe-card:hover .other-recipe-card-img img {
        transform: var(--hover-animation-A);
    }
    .other-recipe-card-text__container {
        margin-top: calc(10 / var(--lp-font) * 1em);
    }
    .other-recipe-card-text {
        display: flex;
        align-items: start;
    }
    .other-recipe-card-text-heading {
        color: var(--lp-c-white);
        font-family: var(--lp-f-mincho);
        font-size: calc(14 / var(--lp-font) * 1em);
        font-weight: 600;
        font-feature-settings: "palt";
        line-height: 1;
        display: inline-block;
        border: solid 1px var(--lp-c-white);
        padding: calc(5.5 / var(--lp-font) * 1em) calc(8 / var(--lp-font) * 1em);
        flex-shrink: 0;
        margin-right: calc(12 / var(--lp-font) * 1em);
    }
    .other-recipe-card-text__label {
        font-family: var(--lp-f-mincho);
        font-size: calc(14 / var(--lp-font) * 1em);
        font-weight: 600;
        font-feature-settings: "palt";
        line-height: 1.4;
        margin-top: calc(4 / var(--lp-font) * 1em);
    }
    .other-recipe-btn {
        position: absolute;
        bottom: 0;
        right: 0;
        margin-bottom: calc(88 / var(--lp-font) * 1em);
    }
}
@media all and (max-width: 767px) {
    .recipe-section {
        background: var(--lp-sec-bg);
    }
    .recipe-section__inner {
    }
    .recipe-section__body {
        padding-top: calc(120 / 750 * 100vw);
        padding-bottom: calc(120 / 750 * 100vw);
    }
    .recipe-section .l-section__header {
        align-items: start;
    }
    .recipe-section .l-section__column {
        display: block;
    }
    .recipe-section .section-heading-read {
        width: calc(485 / 750 * 100vw);
    }
    /* pickup */
    .recipe-pickup {
        display: block;
        margin-top: calc(100 / 750 * 100vw);
    }
    .recipe-pickup-img {
        position: relative;
        z-index: 0;
    }
    .recipe-pickup-img__inner {
        overflow: hidden;
    }
    .recipe-pickup-img__inner::before {
        content: "";
        display: block;
        background: url("../img/top/recipe_deco_img_sp.png") no-repeat center / contain;
        width: calc(200 / 750 * 100vw);
        aspect-ratio: 200 / 145;
        position: absolute;
        left: 0;
        bottom: 0;
        margin-left: calc(-40 / 750 * 100vw);
        margin-bottom: calc(-74 / 750 * 100vw);
        z-index: -1;
    }
    /* 季節アイコン切り替え */
    .recipe-pickup-img__inner::after {
        content: "";
        display: block;
        width: calc(122 / 750 * 100vw);
        aspect-ratio: 1 / 1;
        position: absolute;
        top: 0;
        left: 0;
        margin-top: calc(-33 / 750 * 100vw);
        margin-left: calc(-23 / 750 * 100vw);
    }
    .recipe-pickup.recipe-pickup--spring .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_spring.png") no-repeat center / contain;
    }
    .recipe-pickup.recipe-pickup--summer .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_summer.png") no-repeat center / contain;
    }
    .recipe-pickup.recipe-pickup--autumn .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_autumn.png") no-repeat center / contain;
    }
    .recipe-pickup.recipe-pickup--winter .recipe-pickup-img__inner::after {
        background: url("../img/miso-soup/ico_winter.png") no-repeat center / contain;
    }
    .recipe-pickup-text {
        text-align: right;
        margin-top: calc(18 / 750 * 100vw);
        padding-left: calc(180 / 750 * 100vw);
    }
    .recipe-pickup-text__label {
        font-family: var(--lp-f-mincho);
        font-size: calc(26 / 750 * 100vw);
        font-weight: 600;
        line-height: 1.4;
    }
    /* その他の季節 */
    .other-recipe__container {
        position: relative;
        margin: 0 calc(-20 / 750 * 100vw);
        padding: 0 calc(20 / 750 * 100vw);
        margin-top: calc(72 / 750 * 100vw);
    }
    .other-recipe {
    }
    .other-recipe-bg {
        background: var(--lp-c-accent-sub);
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0.8;
        mix-blend-mode: multiply;
    }
    .other-recipe__inner {
        position: relative;
    }
    .other-recipe__body {
        padding: calc(70 / 750 * 100vw) 0;
    }
    .other-recipe-heading {
        margin-bottom: calc(38 / 750 * 100vw);
    }
    .other-recipe-heading__inner {
        display: flex;
        align-items: center;
    }
    .other-recipe-heading__inner::before {
        content: "";
        display: block;
        background: var(--lp-c-white);
        width: calc(30 / 750 * 100vw);
        height: 1px;
        margin-right: calc(15 / 750 * 100vw);
    }
    .other-recipe-heading__label {
        color: var(--lp-c-white);
        font-family: var(--lp-f-mincho);
        font-size: calc(36 / 750 * 100vw);
        font-weight: 500;
        font-feature-settings: "palt";
        letter-spacing: calc(120 / 1000 * 1em);
        line-height: 1.5;
    }
    .other-recipe-list {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: calc(30 / 750 * 100vw);
    }
    .other-recipe-list-item {
        width: calc((100% - (30 / 750 * 100vw)) / 2);
    }
    .other-recipe-card {
    }
    .other-recipe-card__inner {
    }
    .other-recipe-card-text__container {
        margin-top: calc(16 / 750 * 100vw);
    }
    .other-recipe-card-text {
    }
    .other-recipe-card-text-heading {
        color: var(--lp-c-white);
        font-family: var(--lp-f-mincho);
        font-size: calc(26 / 750 * 100vw);
        font-weight: 600;
        font-feature-settings: "palt";
        line-height: 1;
        display: inline-block;
        border: solid 1px var(--lp-c-white);
        padding: calc(3 / 750 * 100vw) calc(5 / 750 * 100vw);
    }
    .other-recipe-card-text__label {
        font-family: var(--lp-f-mincho);
        font-size: calc(26 / 750 * 100vw);
        font-weight: 600;
        font-feature-settings: "palt";
        line-height: calc(32 / 26);
        letter-spacing: calc(15 / 1000 * 1em);
        margin-top: calc(10 / 750 * 100vw);
    }
    .other-recipe-btn {
        display: flex;
        margin-top: calc(36 / 750 * 100vw);
    }
}

/* --------------------------------------------------------------------------
WHATS
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .whats-section {
    }
    .whats-section__inner {
        max-width: calc(1406 / var(--lp-font) * 1em);
    }
    .whats-section__body {
        padding-top: min(105px, calc(105 / 1366 * 100vw));
        padding-bottom: min(140px, calc(140 / 1366 * 100vw));
    }
    .whats-section .l-section__column {
        gap: min(73px, calc(73 / 1366 * 100vw));
        flex-direction: row;
        align-items: stretch;
        justify-content: center;
    }
    .whats-section-header__container {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: end;
        flex-grow: 1;
    }
    .whats-section .l-section__content {
        margin-right: calc(-20 / var(--lp-font) * 1em);
    }
    .whats-section .section-heading-lv2 {
        margin-right: calc(42 / var(--lp-font) * 1em);
    }
    .whats-section .section-heading-read-text__label {
        line-height: 1.8;
    }
    .whats-img {
        width: min(878px, calc(878 / 1366 * 100vw));
        position: relative;
        right: 0;
    }
    .whats-section-btn {
        margin-top: calc(20 / var(--lp-font) * 1em);
    }
}
@media all and (max-width: 767px) {
    .whats-section {
    }
    .whats-section__inner {
        max-width: calc(1406 / 750 * 100vw);
    }
    .whats-section__body {
        padding-top: calc(123 / 750 * 100vw);
        padding-bottom: calc(120 / 750 * 100vw);
    }
    .whats-section .section-heading-lv2--reverse .section-heading-lv2__inner {
        justify-content: start;
    }
    .whats-section .section-heading-read {
        margin-top: calc(108 / 750 * 100vw);
    }
    .whats-section .l-section__column {
        display: block;
        position: relative;
    }
    .whats-section .l-section__header {
        display: block;
        width: 100%;
    }
    .whats-section .section-heading-read-text__label {
        letter-spacing: calc(20 / 1000 * 1em);
        line-height: calc(64 / 30);
    }
    .whats-section-header__container {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        flex-grow: 1;
    }
    .whats-section .l-section__content {
    }
    .whats-section .section-heading-lv2 {
        margin-right: calc(42 / 750 * 100vw);
    }
    .whats-img {
        width: calc(562 / 750 * 100vw);
        position: absolute;
        top: 0;
        right: 0;
        margin-top: calc(120 / 750 * 100vw);
        margin-right: calc(-40 / 750 * 100vw);
    }
    .whats-section-btn {
        margin-top: calc(36 / 750 * 100vw);
    }
}

/* --------------------------------------------------------------------------
PRODUCTS
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .products-section {
        min-height: calc(477 / var(--lp-font) * 1em);
        height: 0;
        background: url("../img/top/products_bg.png") no-repeat center / cover;
        padding-bottom: calc(96 / var(--lp-font) * 1em);
    }
    .products-section__inner {
        height: 100%;
        max-width: calc(1170 / var(--lp-font) * 1em);
        padding-right: calc(324 / var(--lp-font) * 1em);
    }
    .products-section__body {
        height: 100%;
        position: relative;
        padding: calc(32 / var(--lp-font) * 1em) 0;
    }
    .products-section .l-section__column {
        justify-content: start;
        flex-direction: row;
        align-items: end;
        height: 100%;
    }
    .products-section .l-section__header {
        width: calc(283 / var(--lp-font) * 1em);
        position: absolute;
        top: 50%;
        right: 0;
        margin-right: calc(-304 / var(--lp-font) * 1em);
        transform: translateY(-50%);
    }
    .products-section .l-section__content {
        margin-top: 0;
        margin-bottom: calc(14 / var(--lp-font) * 1em);
    }
    .products-list__container {
        width: calc(620 / var(--lp-font) * 1em);
    }
    .products-list {
        display: flex;
        gap: calc(14 / var(--lp-font) * 1em);
    }
    .products-list-item {
    }
    .products-img {
    }
}
@media all and (max-width: 767px) {
    .products-section {
        min-height: calc(550 / 750 * 100vw);
        min-height: calc(600 / 750 * 100vw);
        height: 0;
        background: url("../img/top/products_bg_sp.png") no-repeat center / cover;
    }
    .products-section__inner {
        height: 100%;
        padding-right: calc(335 / 750 * 100vw);
    }
    .products-section__body {
        height: 100%;
        position: relative;
        padding: calc(32 / 750 * 100vw) 0;
    }
    .products-section .l-section__column {
        justify-content: start;
        flex-direction: row;
        align-items: end;
        height: 100%;
    }
    .products-section .l-section__header {
        width: calc(307 / 750 * 100vw);
        position: absolute;
        top: 50%;
        right: 0;
        margin-right: calc(-304 / 750 * 100vw);
        transform: translateY(-50%);
    }
    .products-section .l-section__content {
        margin-top: 0;
        margin-bottom: calc(14 / 750 * 100vw);
    }
    .products-list__container {
        width: calc(335 / 750 * 100vw);
    }
    .products-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(15 / 750 * 100vw);
    }
    .products-list-item {
        width: calc((100% - (15 / 750 * 100vw)) / 2);
        display: flex;
        justify-content: center;
        align-items: end;
    }
    .products-img {
        height: calc(150 / 750 * 100vw);
    }
    .products-img img {
        width: auto;
        height: 100%;
    }
}