/*==============================
recipe
==============================*/

.p-recipe img {
    height: auto;
}

.p-recipe {
}

@media (min-width: 769px) {
    .p-recipe {
        padding: 4.66667% 0 9.33333%;
        padding: calc(70 / var(--base-size) * 100%) 0
            calc(70 / var(--base-size) * 100%);
        background-image: url(../images/pc/recipe_sidebg_left.png),
            url(../images/pc/recipe_sidebg_right.png),
            url(../images/pc/recipe_bg_pattern.png);
        background-repeat: no-repeat, no-repeat, repeat;
        background-position: top left, bottom right, top;
    }
}

@media (max-width: 768px) {
    .p-recipe {
        padding: calc(35 / var(--base-size) * 100%) 0
            calc(45 / var(--base-size) * 100%);
        background-image: url(../images/pc/recipe_sidebg_left.png),
            url(../images/pc/recipe_sidebg_right.png),
            url(../images/pc/recipe_bg_pattern.png);
        background-repeat: no-repeat, no-repeat, repeat;
        background-position: top left, bottom right, top;
        background-size: 50%;
    }
}

.p-recipe__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    position: relative;
    background: #fff9d0;
}

@media (min-width: 769px) {
    .p-recipe__inner {
        width: 73.33333%;
        width: calc(1400 / var(--base-size) * 100%);
        padding: 70px 0 95px;
    }
}

@media (max-width: 768px) {
    .p-recipe__inner {
        margin: 0 auto;
        width: 47.33333%;
        width: calc(710 / var(--base-size) * 100%);
        padding: 50px 0 50px;
    }
}

.p-recipe__head {
    position: relative;
    width: 100%;
}

.p-recipe__title-wrap {
    position: relative;
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
        transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
    /*
  transition-delay: .3s;
  z-index: 3
  */
}

.p-recipe__title-wrap.is-active {
    opacity: 1;
    transform: translate(0);
}

@media (min-width: 769px) {
    .p-recipe__title-wrap {
    }
}

@media (max-width: 768px) {
    .p-recipe__title-wrap {
    }
}

.p-recipe__title {
    position: relative;
    margin: 0 auto;
    z-index: 3;
}

@media (min-width: 769px) {
    .p-recipe__title {
        width: 43.2857142857%;
    }
}

@media (max-width: 768px) {
    .p-recipe__title {
        width: 84.507042253%;
    }
}

.p-recipe__title-message {
    font-feature-settings: 'palt';
    color: #8a5c30;
    font-weight: 700;
    letter-spacing: 0.05rem;
    text-align: center;
    white-space: nowrap;
}

@media (min-width: 769px) {
    .p-recipe__title-message {
        line-height: 1.5;
        font-size: 16px;
        margin: 20px 0 0;
    }
}

@media (max-width: 768px) {
    .p-recipe__title-message {
        line-height: 1.6;
        font-size: 16px;
        margin: 20px 0 0;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-recipe__title-message {
        font-size: 1.6vw;
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-recipe__title-message {
        font-size: 1.6vw;
        font-size: calc(100 / var(--base-size) * 24 * 1vw);
    }
}

.p-recipe__product {
    opacity: 0;
    position: absolute;
    transform: translateY(40px);
    transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
        transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition-delay: 0.3s;
}

.p-recipe__product.is-active {
    opacity: 1;
    transform: translate(0);
}

@media (min-width: 769px) {
    .p-recipe__product {
    }

    .p-recipe__product--01 {
        width: 8.78571428571%;
        top: 0;
        left: 14.0714285714%;
    }

    .p-recipe__product--02 {
        width: 5%;
        top: 20%;
        right: 16%;
    }
}

@media (max-width: 768px) {
    .p-recipe__product {
        display: none;
    }
}

.p-recipe__product--01 img {
    -webkit-animation: step-end-left 3s step-end 1.2s infinite;
    animation: step-end-left 3s step-end 1.2s infinite;
}

.p-recipe__product--02 img {
    -webkit-animation: step-end-right 3s step-end 1.2s infinite;
    animation: step-end-right 3s step-end 1.2s infinite;
}

.p-recipe__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

@media (min-width: 769px) {
    .p-recipe__list {
        margin: 0.54545% 0 0;
    }
}

@media (max-width: 768px) {
    .p-recipe__list {
        margin: calc(5.91549% - 0.9rem) 0 0;
        padding: 0 10px;
    }
}

.p-recipe-item {
    opacity: 0;
    align-items: center;
    display: flex;
    flex-direction: column;
}

@media (min-width: 769px) {
    .p-recipe-item {
        margin-top: 50px;
        width: 34.8571428571%;
    }
    .p-recipe-item:not(:nth-of-type(2n)) {
        transform: translateY(40px);
        transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
            transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition-delay: 0.1s;
    }
    .p-recipe-item:nth-of-type(2n) {
        margin-left: 6.07142857143%;
        transform: translateY(40px);
        transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
            transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition-delay: 0.3s;
    }
}

@media (max-width: 768px) {
    .p-recipe-item {
        width: 47.32394%;
    }
    .p-recipe-item:not(:nth-of-type(2n)) {
        margin: 6.19718% 0 0;
        opacity: 0;
        transform: translateY(40px);
        transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
            transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition-delay: 0.1s;
    }
    .p-recipe-item:nth-of-type(2n) {
        margin: 6.19718% 0 0 5.35211%;
        opacity: 0;
        transform: translateY(40px);
        transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
            transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
        transition-delay: 0.3s;
    }
}

.p-recipe-item.is-active {
    opacity: 1;
    transform: translate(0);
}

.p-recipe-item__wrap {
    position: relative;
    width: 100%;
}

.p-recipe-item__image {
    width: 100%;
}

.p-recipe-item__image img {
    height: auto;
}

.p-recipe-item__detail {
    position: absolute;
}

@media (min-width: 769px) {
    .p-recipe-item__detail {
        bottom: -5.5102%;
        right: -10.20408%;
        width: 42.04082%;
    }
}

@media (max-width: 768px) {
    .p-recipe-item__detail {
        bottom: -7.7381%;
        right: -1.19048%;
        width: 38.69048%;
    }
}

.p-recipe-item__name {
    font-feature-settings: 'palt';
    color: #8c6239;
    display: inline-block;
    font-weight: 700;
    position: relative;
    text-align: center;
}

@media (min-width: 769px) {
    .p-recipe-item__name {
        line-height: 1;
    }
}

@media (max-width: 768px) {
    .p-recipe-item__name {
        line-height: 1.33;
    }
}

@media (min-width: 769px) {
    .p-recipe-item__name {
        font-size: 20px;
        margin: 25px 0 0;
        text-align: center;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-recipe-item__name {
        font-size: 2vw;
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-recipe-item__name {
        font-size: 2vw;
        font-size: calc(100 / var(--base-size) * 28 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-recipe-item__name {
        flex-grow: 1;
        font-size: 15px;
        margin: calc(8.7213% - 0.495rem) 0 calc(15.84524% - 0.495rem);
    }
}

@media (min-width: 769px) {
    .p-recipe-item__btn {
        height: 4.33333vw;
        height: calc(100 / var(--base-size) * 65 * 1vw);
        margin: 25px 0 0;
        width: 48.97959%;
    }
}

@media (max-width: 768px) {
    .p-recipe-item__btn {
        height: 5.26667vw;
        height: calc(100 / var(--base-size) * 79 * 1vw);
        margin: calc(6.84524% - 0.495rem) 0 0;
        width: 85.71429%;
    }
}

.p-recipe-item__btn:before {
    background-color: #62ae33;
}

.p-recipe-item__btn-text {
    color: #fff;
    font-weight: 500;
}

@media (min-width: 769px) {
    .p-recipe-item__btn-text {
        font-size: 12px;
        margin: 0 0 0 16.66667%;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-recipe-item__btn-text {
        font-size: 1.2vw;
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-recipe-item__btn-text {
        font-size: 1.2vw;
        font-size: calc(100 / var(--base-size) * 18 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-recipe-item__btn-text {
        font-size: 2.15rem;
        margin: 0 0 0 12%;
    }
}

.p-recipe-item__icon {
    background-color: #62ae33;
}

@media (min-width: 769px) {
    .p-recipe-item__icon {
        margin: 0 2.04082% 0 0;
    }
    .p-recipe-item__arrow-wrap {
        width: 61.22449%;
    }
}

@media (max-width: 768px) {
    .p-recipe-item__arrow-wrap {
        width: 61.22449%;
    }
}

.p-recipe__obj {
    position: absolute;
}

.p-recipe__obj--soy-beans1 {
    /*opacity: 0;*/
    transform: translateY(40px);
    transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
        transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition-delay: 0.3s;
    z-index: 3;
}

.p-recipe__obj--soy-beans1.is-active {
    opacity: 1;
    transform: translate(0);
}

@media (min-width: 769px) {
    .p-recipe__obj--soy-beans1 {
        right: -4.66667%;
        right: calc(-70 / var(--base-size) * 100%);
        top: -7.5%;
        width: 20.33333%;
        width: calc(305 / var(--base-size) * 100%);
    }
}

@media (max-width: 768px) {
    .p-recipe__obj--soy-beans1 {
        right: -5.2%;
        right: calc(-78 / var(--base-size) * 100%);
        top: -5.33333%;
        top: calc(-80 / var(--base-size) * 100%);
        width: 20.33333%;
        width: calc(305 / var(--base-size) * 100%);
    }
}

.p-recipe__obj--soy-beans2 {
    /*opacity: 0;*/
    transform: translateY(40px);
    transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
        transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition-delay: 0.3s;
    z-index: 3;
}

.p-recipe__obj--soy-beans2.is-active {
    opacity: 1;
    transform: translate(0);
}

@media (min-width: 769px) {
    .p-recipe__obj--soy-beans2 {
        bottom: 37.33333vw;
        bottom: calc(100 / var(--base-size) * 560 * 1vw);
        left: -2.33333%;
        left: calc(-35 / var(--base-size) * 100%);
        width: 14.8%;
        width: calc(222 / var(--base-size) * 100%);
    }
}

@media (max-width: 768px) {
    .p-recipe__obj--soy-beans2 {
        bottom: 15.13333vw;
        bottom: calc(100 / var(--base-size) * 227 * 1vw);
        left: -1.6%;
        left: calc(-24 / var(--base-size) * 100%);
        width: 14.8%;
        width: calc(222 / var(--base-size) * 100%);
    }
}

/*
modal
*/
.p-modal {
    opacity: 0;
    z-index: -1;
    display: flex;
    height: 100%;
    left: 0;
    bottom: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
}

.p-modal.is-open {
    display: block;
    z-index: 100;
}

.p-modal__bg {
    background: rgba(56, 52, 52, 0.5);
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.p-modal__inner {
    background-color: #faf8f1;
    left: 50%;
    position: relative;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 999;
}

@media (min-width: 769px) {
    .p-modal__inner {
        border-radius: 2vw;
        border-radius: calc(100 / var(--base-size) * 30 * 1vw);
        height: 67.575vw;
        max-height: 90vh;
        max-width: 53vw;
        min-width: 533px;
        width: 53.33333%;
        width: calc(800 / var(--base-size) * 100%);
    }
}

@media (max-width: 768px) {
    .p-modal__inner {
        border-radius: 2vw;
        border-radius: calc(100 / var(--base-size) * 30 * 1vw);
        height: 97vh;
        max-height: 97%;
        width: 46.66667%;
        width: calc(700 / var(--base-size) * 100%);
    }
}

.p-modal__wrap {
    height: 100%;
    position: absolute;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__wrap {
        padding: 8.75% 6.25% 5% 12.25%;
    }
}

@media (max-width: 768px) {
    .p-modal__wrap {
        padding: 12.14286% 0.71429% 6.85714% 1.42857%;
    }
}

.p-modal-trigger {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    position: absolute;
    transform: translate(0);
    transition: opacity 0.55s cubic-bezier(0.39, 0.575, 0.565, 1),
        transform 0.55s cubic-bezier(0.39, 0.575, 0.565, 1);
    transition-delay: 1s;
    z-index: 10;
}

.p-modal.is-open .p-modal-trigger {
    opacity: 1;
    transform: translate(0);
}

@media (min-width: 769px) {
    .p-modal-trigger {
        height: 6.66667vw;
        height: calc(100 / var(--base-size) * 100 * 1vw);
        right: -1.86667vw;
        right: calc(100 / var(--base-size) * -28 * 1vw);
        top: -1.86667vw;
        top: calc(100 / var(--base-size) * -28 * 1vw);
        width: 6.66667vw;
        width: calc(100 / var(--base-size) * 100 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal-trigger {
        height: 8vw;
        height: calc(100 / var(--base-size) * 120 * 1vw);
        right: -1.33333vw;
        right: calc(100 / var(--base-size) * -20 * 1vw);
        top: -1.33333vw;
        top: calc(100 / var(--base-size) * -20 * 1vw);
        width: 8vw;
        width: calc(100 / var(--base-size) * 120 * 1vw);
    }
}

.p-modal-trigger img {
    transition: transform 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
}

@media (hover: hover) and (min-width: 769px) {
    .p-modal-trigger img:hover {
        transform: scale(0.9);
        transition-delay: 0s;
    }
}

@media (-ms-high-contrast: none) {
    .p-modal-trigger img:hover {
        transform: scale(0.9);
        transition-delay: 0s;
    }
}

.p-modal__content {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    transform: translateY(15px);
}

@media (min-width: 769px) {
    .p-modal__content {
        height: 100%;
        padding: 0 6% 0 0;
        width: 100%;
    }
}

@media (max-width: 768px) {
    .p-modal__content {
        height: 100%;
        padding: 0 0.71429% 0 0;
        width: 100%;
    }
}

.p-modal__content::-webkit-scrollbar {
    -webkit-appearance: none;
}

@media (min-width: 769px) {
    .p-modal__content::-webkit-scrollbar {
        width: 0.53333vw;
        width: calc(100 / var(--base-size) * 8 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__content::-webkit-scrollbar {
        width: 0.33333vw;
        width: calc(100 / var(--base-size) * 5 * 1vw);
    }
}

.p-modal__content::-webkit-scrollbar-thumb {
    background: #b9b9b9;
    border-radius: 1rem;
    box-shadow: none;
}

.p-modal__content::-webkit-scrollbar-track {
    background: #e6e5e4;
    border: none;
    border-radius: 1rem;
}

.p-modal__text {
    color: #8c6239;
    display: inline-block;
    font-weight: 700;
    position: relative;
}

@media (min-width: 769px) {
    .p-modal__text {
        line-height: 1.25;
    }
}

@media (max-width: 768px) {
    .p-modal__text {
        line-height: 1.25;
    }
}

@media (min-width: 769px) {
    .p-modal__text {
        font-size: 9.3px;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__text {
        font-size: calc(-1.4px + 0.94vw);
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__text {
        font-size: 0.93333vw;
        font-size: calc(100 / var(--base-size) * 14 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__text {
        font-size: 2.8rem;
    }
}

.p-modal__title {
    color: #8c6239;
    display: inline-block;
    font-weight: 700;
    position: relative;
    text-align: center;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__title {
        line-height: 1;
    }
}

@media (max-width: 768px) {
    .p-modal__title {
        line-height: 1.2;
    }
}

@media (min-width: 769px) {
    .p-modal__title {
        font-size: 20.3px;
        padding: 0 0 2rem;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__title {
        font-size: calc(-0.1px + 2.04vw);
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__title {
        font-size: 2.03333vw;
        font-size: calc(100 / var(--base-size) * 30.5 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__title {
        font-size: 6.05rem;
        padding: 0 0 3rem;
    }
}

.p-modal__title:after {
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__title:after {
        border-bottom: 0.25rem solid #8c6239;
        border-top: 0.2rem solid #8c6239;
        height: 0.2rem;
    }
}

@media (max-width: 768px) {
    .p-modal__title:after {
        border-bottom: 0.3rem solid #8c6239;
        border-top: 0.2rem solid #8c6239;
        height: 0.5rem;
    }
}

.p-modal__list {
    display: flex;
}

@media (min-width: 769px) {
    .p-modal__list {
        justify-content: space-between;
        margin: 4.63576% 0 0;
        width: 100%;
    }
}

@media (max-width: 768px) {
    .p-modal__list {
        flex-direction: column;
        margin: 5.44118% auto 0;
        width: 85.29412%;
    }
}

@media (min-width: 769px) {
    .p-modal__item:not(:nth-of-type(2n)) {
        width: 47.68212%;
    }
    .p-modal__item:nth-of-type(2n) {
        width: 49.66887%;
    }
}

@media (max-width: 768px) {
    .p-modal__item {
        width: 100%;
    }
}

.p-modal__info {
    text-align: center;
}

.p-modal__info-wrap {
    align-items: center;
    background-color: #f1e2c9;
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__info-wrap {
        border-radius: 14px;
        height: 5.33333vw;
        height: calc(100 / var(--base-size) * 80 * 1vw);
        min-height: 42.67px;
    }
}

@media (max-width: 768px) {
    .p-modal__info-wrap {
        border-radius: 0.93333vw;
        border-radius: calc(100 / var(--base-size) * 14 * 1vw);
        margin: 2.75862% auto 0;
        padding: calc(6.72414% - 0.35rem) 0;
    }
}

.p-modal__detail-list {
    display: flex;
    justify-content: space-between;
}

@media (min-width: 769px) {
    .p-modal__detail-list {
        align-items: flex-end;
        margin: 3.33333% 0 0;
    }
}

@media (max-width: 768px) {
    .p-modal__detail-list {
        margin: 2.75862% 0 0;
    }
}

.p-modal__product {
    position: relative;
}

@media (min-width: 769px) {
    .p-modal__product {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .p-modal__product {
        width: 100%;
    }
}

@media (min-width: 769px) {
    .p-modal__carb {
        width: 44.66667%;
    }
}

@media (max-width: 768px) {
    .p-modal__carb {
        width: 41.72414%;
    }
}

.p-modal__ingredients {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__ingredients {
        border-radius: 14px;
        padding: 7.63889% 9.72222% 17.36111%;
    }
}

@media (max-width: 768px) {
    .p-modal__ingredients {
        border-radius: 0.93333vw;
        border-radius: calc(100 / var(--base-size) * 14 * 1vw);
        padding: 7.75862% 7.75862% 9.48276%;
    }
}

.p-modal__ingredients-head {
    color: #8c6239;
    display: inline-block;
    font-weight: 700;
}

@media (min-width: 769px) {
    .p-modal__ingredients-head {
        line-height: 1;
    }
}

@media (max-width: 768px) {
    .p-modal__ingredients-head {
        line-height: 1;
    }
}

@media (min-width: 769px) {
    .p-modal__ingredients-head {
        font-size: 12px;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__ingredients-head {
        font-size: 1.2vw;
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__ingredients-head {
        font-size: 1.2vw;
        font-size: calc(100 / var(--base-size) * 18 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__ingredients-head {
        font-size: 3.55rem;
    }
}

.p-modal__ingredients-list {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.p-modal__ingredients-item {
    display: flex;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__ingredients-item:first-child {
        margin: 6.25% 0 0;
    }
    .p-modal__ingredients-item:not(:first-child) {
        margin-top: 4px;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__ingredients-item:not(:first-child) {
        margin-top: calc(-0.6px + 0.46vw);
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__ingredients-item:not(:first-child) {
        margin-top: 0.42vw;
        margin-top: calc(100 / var(--base-size) * 6.3 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__ingredients-item:first-child {
        margin: 7.34694% 0 0;
    }
    .p-modal__ingredients-item:not(:first-child) {
        margin: 2.44898% 0 0;
    }
}

@media (min-width: 769px) {
    .p-modal__ingredients-name {
        width: 60%;
    }
    .p-modal__ingredients-name--recipe3 {
        width: 75%;
    }
}

@media (max-width: 768px) {
    .p-modal__ingredients-name {
        width: 64%;
    }
}

@media (min-width: 769px) {
    .p-modal__ingredients-amount {
        width: 40%;
    }
    .p-modal__ingredients-amount--recipe3 {
        width: 25%;
    }
}

@media (max-width: 768px) {
    .p-modal__ingredients-amount {
        width: 36%;
    }
}

.p-modal__howto {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__howto {
        border-radius: 0.93333vw;
        border-radius: calc(100 / var(--base-size) * 14 * 1vw);
        padding: 7.63889% 9.72222% 15.625%;
    }
}

@media (max-width: 768px) {
    .p-modal__howto {
        border-radius: 0.93333vw;
        border-radius: calc(100 / var(--base-size) * 14 * 1vw);
        margin: 4.89796% 0 0;
        padding: 6.03448% 6.89655% 7.75862% 3.44828%;
    }
}

.p-modal__howto-head {
    color: #8c6239;
    display: inline-block;
    font-weight: 700;
}

@media (min-width: 769px) {
    .p-modal__howto-head {
        line-height: 1;
    }
}

@media (max-width: 768px) {
    .p-modal__howto-head {
        line-height: 1;
    }
}

@media (min-width: 769px) {
    .p-modal__howto-head {
        font-size: 12px;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__howto-head {
        font-size: 1.2vw;
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__howto-head {
        font-size: 1.2vw;
        font-size: calc(100 / var(--base-size) * 18 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__howto-head {
        font-size: 3.55rem;
    }
}

.p-modal__howto-list {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.p-modal__howto-item {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal__howto-item {
        margin: 10.2459% 0 0;
    }
}

@media (max-width: 768px) {
    .p-modal__howto-item {
        margin: 10.2459% 0 0;
    }
}

.p-modal__howto-caption {
    align-items: center;
    background-color: #8c6239;
    border-radius: 50%;
    color: #f4f4f4;
    display: flex;
    font-weight: 700;
    justify-content: center;
    position: relative;
}

@media (min-width: 769px) {
    .p-modal__howto-caption {
        font-size: 9.3px;
        height: 22.67px;
        min-width: 22.67px;
        width: 13.93443%;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__howto-caption {
        height: calc(0.01px + 2.266vw);
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__howto-caption {
        height: 2.26667vw;
        height: calc(100 / var(--base-size) * 34 * 1vw);
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__howto-caption {
        font-size: calc(-0.1px + 0.94vw);
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__howto-caption {
        font-size: 0.93333vw;
        font-size: calc(100 / var(--base-size) * 14 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__howto-caption {
        font-size: 2.8rem;
        height: 6.9rem;
        width: 6.9rem;
    }
}

@media (min-width: 769px) {
    .p-modal__howto-value {
        width: 83.60656%;
    }
}

@media (max-width: 768px) {
    .p-modal__howto-value {
        width: 84.03846%;
    }
}

@media (min-width: 769px) {
    .p-modal__howto-note {
        line-height: 1.38;
    }
}

@media (max-width: 768px) {
    .p-modal__howto-note {
        line-height: 1.38;
    }
}

@media (min-width: 769px) {
    .p-modal__howto-note {
        font-size: 9px;
        margin: 9.42623% 0 0;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal__howto-note {
        font-size: calc(1px + 0.8vw);
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal__howto-note {
        font-size: 0.86667vw;
        font-size: calc(100 / var(--base-size) * 13 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal__howto-note {
        font-size: 2.6rem;
        margin: 3.84615% 0 0;
        padding: 0 0 0 1rem;
    }
}

@media (min-width: 769px) {
    .p-modal-btn {
        width: 43.04636%;
    }
    .p-modal-btn:not(:first-child) {
        margin: 0 0 0 1.49007%;
    }
}

@media (max-width: 768px) {
    .p-modal-btn {
        border-radius: 4.33333vw;
        border-radius: calc(100 / var(--base-size) * 65 * 1vw);
        height: 8.66667vw;
        height: calc(100 / var(--base-size) * 130 * 1vw);
        width: 76.47059%;
    }
    .p-modal-btn:not(:first-child) {
        margin: 3.38235% 0 0;
    }
}

.p-modal-btn:before {
    background-color: #62ae33;
}

.p-modal-btn__list {
    display: flex;
    width: 100%;
}

@media (min-width: 769px) {
    .p-modal-btn__list {
        justify-content: center;
        margin: 7.11921% 0 1.65563%;
    }
}

@media (max-width: 768px) {
    .p-modal-btn__list {
        align-items: center;
        flex-direction: column;
        margin: 5.29412% 0 1.47059%;
    }
}

.p-modal-btn__text {
    color: #fff;
    font-weight: 700;
}

@media (min-width: 769px) {
    .p-modal-btn__text {
        font-size: 12px;
        margin: 0 0 0 16.66667%;
    }
}

@media (min-width: 769px) and (min-width: 1000px) {
    .p-modal-btn__text {
        font-size: 1.2vw;
    }
}

@media (min-width: 769px) and (min-width: 1500px) {
    .p-modal-btn__text {
        font-size: 1.2vw;
        font-size: calc(100 / var(--base-size) * 18 * 1vw);
    }
}

@media (max-width: 768px) {
    .p-modal-btn__text {
        font-size: 3.6rem;
    }
    .p-modal-btn--share .p-modal-btn__text {
        margin: 0 0 0 18.65385%;
    }
    .p-modal-btn--download .p-modal-btn__text {
        margin: 0 0 0 17.11538%;
    }
}

.p-modal-btn__icon {
    background-color: #62ae33;
}

@media (max-width: 768px) {
    .p-modal-btn__icon {
        height: 6.53333vw;
        height: calc(100 / var(--base-size) * 98 * 1vw);
        width: 6.53333vw;
        width: calc(100 / var(--base-size) * 98 * 1vw);
    }
}

@media (min-width: 769px) {
    .p-modal-btn__arrow-wrap {
        width: 48.97959%;
    }
}

@media (max-width: 768px) {
    .p-modal-btn__arrow-wrap {
        width: 48.97959%;
    }
}

.p-modal.is_open {
    animation: works_modal_wrapper_open 0.5s ease forwards;
}
.p-modal.is_close {
    animation: works_modal_wrapper_close 0.5s ease forwards;
}

@keyframes works_modal_wrapper_open {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
        z-index: 300;
    }
}
@keyframes works_modal_window_open {
    0% {
        opacity: 0;
        transform: translateY(-30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes works_modal_wrapper_close {
    0% {
        z-index: 300;
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes works_modal_window_close {
    0% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        transform: translateY(-30px);
        opacity: 0;
    }
}
