@charset "utf-8";

/***************************************************
共通
***************************************************/
/* body {
    font-family: 'Noto Sans JP', sans-serif;
} */

.contents-main {
    font-family: 'Noto Sans JP', sans-serif;
}

.no-wrap {
    display: inline-block;
}

.br-only-sp {
    display: none;
}

@media screen and (max-width: 640px) {
    .br-only-sp {
        display: block;
    }
}

.br-none-w500 {
    display: none;
}

@media screen and (min-width:500.1px) and (max-width:640px) {
    .br-none-w500 {
        display: block;
    }
}

@media screen and (max-width: 500px) {
    .br-none-w500 {
        display: none;
    }
}

@media screen and (max-width: 430px) {
    .br-none {
        display: none;
    }
}

.br-sp {
    display: none;
}

@media screen and (max-width: 430px) {
    .br-sp {
        display: block;
    }
}

.asaduke {
    padding-bottom: 7%;
}

@media screen and (max-width: 640px) {
    .asaduke {
        padding-bottom: 15%;
    }
}

.asaduke a {
    text-decoration: none;
}

.asaduke a:hover {
    opacity: 0.7;
}

/***************************************************
パンくず
***************************************************/
#breadcrumb {
    margin-bottom: 0;
    padding-bottom: 15px;
    background-color: #e7e7e7;
}

/***************************************************
メインビジュアル
***************************************************/
.mainvisual {
    position: relative;
    padding-top: 38.7096774%;
    background-image: url(/sp/asaduke/kazarigiri/images/mainvisual-asaduke-pc.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .mainvisual {
        padding-top: 115.9375%;
        background-image: url(/sp/asaduke/kazarigiri/images/mainvisual-asaduke-sp.jpg);
    }
}

@media screen and (max-width: 480px) {
    .mainvisual {
        padding-top: 120%;
        background-image: url(/sp/asaduke/kazarigiri/images/mainvisual-asaduke-sp.jpg);
    }
}

.mainvisual-text {
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: clamp(0.688rem, 0.186rem + 1.25vw, 1.125rem);
    line-height: 1.8;
    position: absolute;
    bottom: 4%;
    letter-spacing: -0.05em;
}

@media screen and (max-width: 640px) {
    .mainvisual-text {
        font-size: clamp(0.938rem, 0.672rem + 1.13vw, 1.125rem);
        bottom: 2%;
    }
}

@media screen and (max-width: 535px) {
    .mainvisual-text {
        line-height: 1.7;
        bottom: 1%;
    }
}

@media screen and (max-width: 480px) {
    .mainvisual-text {
        line-height: 1.55;
    }
}

@media screen and (max-width: 395px) {
    .mainvisual-text {
        font-size: 14px;
    }
}

/***************************************************
h2タイトル
***************************************************/
.sec-title-01 {
    position: relative;
    max-width: 766px;
    width: 67%;
    height: auto;
    margin: 0 auto;
    margin-bottom: 4.8%;
}

.sec-title-01 img {
    display: block;
    aspect-ratio: 1532/382;
}

@media screen and (max-width: 640px) {
    .sec-title-01 {
        position: relative;
        max-width: 349px;
        margin: 0 auto;
        margin-bottom: 10%;
    }

    .sec-title-01 img {
        display: block;
        aspect-ratio: 698/490;
    }
}

.sec-title-01::before {
    position: absolute;
    content: "";
    max-width: 146px;
    width: 19%;
    height: 57%;
    top: 13%;
    left: -4%;
    background-image: url(/sp/asaduke/kazarigiri/images/ttl_asaduke_menu.png);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .sec-title-01::before {
        width: 42%;
        height: 45%;
        top: 19%;
        left: -27%;
    }
}

.sec-title-wrap {
    position: relative;
    margin-top: 15.833%;
    margin-bottom: 4.5%;
}

@media screen and (max-width: 640px) {
    .sec-title-wrap {
        margin-top: 23.833%;
        margin-bottom: 5%;
    }
}

.sec-title-wrap::before {
    position: absolute;
    content: "";
    width: 17%;
    max-width: 214px;
    height: 159%;
    top: -90%;
    left: 50%;
    transform: translateX(-50%);
    max-height: 132px;
    background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_01.png);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .sec-title-wrap::before {
        width: 37%;
        max-width: 225px;
        height: 235%;
        top: -135%;
    }
}

.sec-title-wrap.sec-title-wrap-carrot::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_02.png);
}

.sec-title-wrap.sec-title-wrap-daikon::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_03.png);
}

.sec-title-wrap.sec-title-wrap-renkon::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_04.png);
}

.sec-title-wrap.sec-title-wrap-tomato::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_05.png);
}

@media screen and (max-width: 640px) {
    .sec-title-wrap.sec-title-wrap-carrot::before {
        background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_02.png);
    }

    .sec-title-wrap.sec-title-wrap-daikon::before {
        background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_03.png);
    }

    .sec-title-wrap.sec-title-wrap-renkon::before {
        background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_04.png);
    }

    .sec-title-wrap.sec-title-wrap-tomato::before {
        background-image: url(/sp/asaduke/kazarigiri/images/icon_cutting_05.png);
    }
}

.sec-title-02 {
    display: block;
    max-width: 562px;
    width: 49%;
    margin: 0 auto;
}

.sec-title-02 img {
    display: block;
    aspect-ratio: 1124/232;
}

@media screen and (max-width: 640px) {
    .sec-title-02 {
        max-width: 393px;
        width: 74%;
    }

    .sec-title-02 img {
        display: block;
        aspect-ratio: 392/81;
    }
}

.sec-title-02::before,
.sec-title-02::after {
    content: "";
    position: absolute;
    width: 24%;
    height: 12px;
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_01.svg);
    background-repeat: repeat-x;
    background-size: auto 12px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
}

@media screen and (max-width: 640px) {

    .sec-title-02::before,
    .sec-title-02::after {
        width: 14%;
        height: 12px;
        background-size: auto 12px;
    }
}

.sec-title-02::before {
    left: 0;
}

.sec-title-02::after {
    right: 0;
}

.sec-title-02.sec-title-02-carrot::before,
.sec-title-02.sec-title-02-carrot::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_02.svg);
}

.sec-title-02.sec-title-02-daikon::before,
.sec-title-02.sec-title-02-daikon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_03.svg);
}

.sec-title-02.sec-title-02-renkon::before,
.sec-title-02.sec-title-02-renkon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_04.svg);
}

.sec-title-02.sec-title-02-tomato::before,
.sec-title-02.sec-title-02-tomato::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_05.svg);
}

@media screen and (max-width: 640px) {

    .sec-title-02::before,
    .sec-title-02::after {
        width: 12%;
        height: 12px;
        background-size: auto 12px;
    }
}

/***************************************************
飾り切りメニュー
***************************************************/
.sec-accordion-menu {
    padding-top: 6.3%;
    padding-bottom: 3.5%;
    background-image: url(/sp/asaduke/kazarigiri/images/bg_sec_01.jpg);
    background-position: 0 0;
    background-repeat: repeat-y;
    background-size: 100%;
    position: relative;
    overflow: hidden;
}

@media screen and (max-width: 640px) {
    .sec-accordion-menu {
        padding-top: 9%;
        padding-bottom: 0;
    }
}

.deco_menu_l {
    position: absolute;
    width: 49%;
    max-width: 633px;
    top: 0;
    left: 50%;
    transform: translateX(-121%);
}

@media screen and (max-width: 640px) {
    .deco_menu_l_sp {
        position: absolute;
        width: 41%;
        top: 0;
        left: -14%;
        margin-top: -13%;
    }
}

.deco_menu_r {
    position: absolute;
    width: 40%;
    max-width: 600px;
    top: 0;
    right: 50%;
    transform: translateX(137%);
    margin-top: 3%;
}

@media screen and (max-width: 640px) {
    .deco_menu_r_sp {
        position: absolute;
        width: 44%;
        top: 0;
        right: -12%;
        margin-top: 2.5%;
    }
}

button {
    border: none;
    padding: 0;
    background-color: initial;
}

.mod-accordion-item {
    margin-bottom: 6.2%;
}

@media screen and (max-width: 640px) {
    .mod-accordion-item {
        margin-bottom: 13.5%;
    }
}

.accordion-btn {
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 1.7%;
}

@media screen and (max-width: 640px) {
    .accordion-btn {
        position: relative;
        display: block;
        width: 100%;
        margin-bottom: 1.5%;
    }
}

.accordion-btn::before,
.accordion-btn::after {
    content: "";
    position: absolute;
    width: 30%;
    height: 12px;
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_01.svg);
    background-repeat: repeat-x;
    background-size: auto 12px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
}

.accordion-btn::before {
    left: 0;
}

.accordion-btn::after {
    right: 0;
}

@media screen and (max-width: 640px) {

    .accordion-btn::before,
    .accordion-btn::after {
        width: 14.5%;
        height: 12px;
        background-size: auto 12px;
    }
}

.accordion-btn.accordion-btn-carrot::before {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_02.svg);
}

.accordion-btn.accordion-btn-daikon::before {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_03.svg);
}

.accordion-btn.accordion-btn-renkon::before {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_04.svg);
}

.accordion-btn.accordion-btn-tomato::before {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_05.svg);
}

.accordion-btn.accordion-btn-carrot::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_02.svg);
}

.accordion-btn.accordion-btn-daikon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_03.svg);
}

.accordion-btn.accordion-btn-renkon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_04.svg);
}

.accordion-btn.accordion-btn-tomato::after {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_05.svg);
}

.deco_menu_01 {
    width: 15%;
    max-width: 185px;
    position: absolute;
    top: -12%;
    left: -6%;
}

.deco_menu_02 {
    width: 13%;
    max-width: 155px;
    position: absolute;
    top: -26%;
    right: -7%;
}

.deco_menu_03 {
    width: 20%;
    max-width: 228px;
    position: absolute;
    top: -30%;
    left: -10%;
}

.deco_menu_04 {
    width: 13%;
    max-width: 153px;
    position: absolute;
    top: -15%;
    right: -7.8%;
}

.deco_menu_05 {
    width: 17%;
    max-width: 203px;
    position: absolute;
    top: -46%;
    left: -8.8%;
}

.accordion-img {
    display: block;
    max-width: 480px;
    width: 42%;
    margin: 0 auto;
    position: relative;
}

.accordion-img img {
    display: block;
    aspect-ratio: 960/276;
}

.accordion-img img:hover {
    opacity: 0.7;
}

@media screen and (max-width: 640px) {
    .accordion-img {
        max-width: 435px;
        width: 72.5%;
        margin: 0 auto;
        position: relative;
    }
}

.accordion-img::after {
    content: "";
    max-width: 66px;
    width: 13%;
    max-height: 89px;
    height: 70%;
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_01.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: -4px;
    right: 8%;
}

.accordion-img:hover::after {
    opacity: 0.7;
}

@media screen and (max-width: 640px) {
    .accordion-img::after {
        width: 13%;
        height: 70%;
        top: -5px;
        right: 8%;
    }
}

.accordion-btn.open .accordion-img:hover:after {
    opacity: 0.7;
}

.accordion-btn.open .accordion-img::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_01_close.svg);
}

.accordion-img.accordion-img-carrot::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_02.svg);
}

.accordion-img.accordion-img-daikon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_03.svg);
}

.accordion-img.accordion-img-renkon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_04.svg);
}

.accordion-img.accordion-img-tomato::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_05.svg);
}

.accordion-btn.open .accordion-img.accordion-img-carrot::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_02_close.svg);
}

.accordion-btn.open .accordion-img.accordion-img-daikon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_03_close.svg);
}

.accordion-btn.open .accordion-img.accordion-img-renkon::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_04_close.svg);
}

.accordion-btn.open .accordion-img.accordion-img-tomato::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn_accordion_05_close.svg);
}

.accordion__content {
    display: none;
    background-color: rgba(255, 255, 255, 0.69);
    border-radius: 36px;
    padding: 2% 2.5%;
}

@media screen and (max-width: 640px) {
    .accordion__content {
        border-radius: 20px;
        padding: 7% 6%;
    }
}

.accordion-content-items {
    display: grid;
    place-items: center;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 2%;
}

@media screen and (max-width: 640px) {
    .accordion-content-items {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 6%;
        row-gap: 2.5em;
    }
}

.accordion-content-items-2cmn {
    display: flex;
    justify-content: center;
}

.accordion-content-items-1cmn {
    display: flex;
    justify-content: center;
    align-items: center;
}

.accordion-content-item {
    max-width: 240px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.accordion-content-item a {
    margin-top: auto;
}

.accordion-content-items-2cmn .accordion-content-item {
    height: inherit;
}

.accordion-content-item.mr {
    margin-right: min(4%, 43px);
}

@media screen and (max-width: 640px) {
    .accordion-content-item.mr {
        margin-right: min(6%, 40px);
    }
}

.accordion-content-title {
    font-weight: 700;
    font-size: 1.125rem;
    color: #255D00;
    line-height: 1.5555;
    margin-bottom: 6%;
}

@media screen and (max-width: 640px) {
    .accordion-content-title {
        margin-bottom: 6%;
    }
}

.accordion-content-title.accordion-content-title-carrot {
    color: #F16307;
}

.accordion-content-title.accordion-content-title-daikon {
    color: #588640;
}

.accordion-content-title.accordion-content-title-renkon {
    color: #9B7F59;
}

.accordion-content-title.accordion-content-title-tomato {
    color: #F02715;
}

.accordion-content-img {
    margin-bottom: 5.4%;
    overflow: hidden;
    border-radius: 15px;
}

.accordion-content-img img {
    height: auto;
    transition: transform .6s ease;
}

.accordion-content-img:hover img {
    transform: scale(1.1);
}

@media screen and (max-width: 640px) {
    .accordion-content-img {
        margin-bottom: 5%;
    }
}

/***************************************************
飾り切り
***************************************************/
.mod-cutting {
    padding-bottom: 7%;
}

@media screen and (max-width: 640px) {
    .mod-cutting {
        padding-bottom: 10%;
    }
}

.sec-cutting {
    padding-top: 3.7%;
    background-image: url(/sp/asaduke/kazarigiri/images/bg_sec_02.jpg);
    background-position: 0 0;
    background-repeat: repeat-y;
    background-size: 100%;
}

@media screen and (max-width: 640px) {
    .sec-cutting {
        padding-top: 5%;
    }
}

.cutting-title-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.cutting-title {
    text-align: center;
    color: #255D00;
    font-weight: 700;
    font-size: clamp(19px, 3vw, 33px);
    line-height: 1.5;
    display: inline-block;
    padding: 0 2.5% 0 3%;
}

@media screen and (max-width: 640px) {
    .cutting-title {
        flex: 1.1875rem;
        flex: 1;
        min-width: 33.3333%;
        line-height: 1.68;
        padding: 0 2.1% 0 2%;
    }
}

.cutting-title.cutting-title-carrot {
    color: #F16307;
}

.cutting-title.cutting-title-daikon {
    color: #588640;
}

.cutting-title.cutting-title-renkon {
    color: #9B7F59;
}

.cutting-title.cutting-title-tomato {
    color: #F02715;
}

.cutting-title-wrap .cutting-deco {
    display: inline-block;
    max-width: 150px;
    width: 15%;
}

@media screen and (max-width: 640px) {
    .cutting-title-wrap .cutting-deco {
        max-width: 100px;
        width: 17.3%;
    }
}

.cutting-title-wrap .cutting-deco-2 {
    display: inline-block;
    max-width: 100px;
    width: 8%;
}

@media screen and (max-width: 640px) {
    .cutting-title-wrap .cutting-deco-2 {
        display: inline-block;
        max-width: 70px;
        width: 9.5%;
    }
}

.cutting-deco-2.deco-left {
    padding-left: 3%;
}

@media screen and (max-width: 640px) {
    .cutting-deco-2.deco-left {
        padding-left: 1%;
    }
}

.cutting-deco-2.deco-right {
    padding-right: 3%;
}

@media screen and (max-width: 640px) {
    .cutting-deco-2.deco-right {
        padding-right: 1%;
        margin-right: 1%;
    }
}

/* スライダー */
/* ============================ */
.slick-track {
    display: flex;
}

.slick-slide {
    height: auto !important;
}

/*slick setting*/

.mask .slick-slide:not(.slick-center) {
    -webkit-filter: opacity(40%);
    -moz-filter: opacity(40%);
    -o-filter: opacity(40%);
    -ms-filter: opacity(40%);
    filter: opacity(40%);
    transition: 0.2s linear;
}

@media screen and (max-width: 640px) {
    .mask .slick-slide:not(.slick-center) {
        -webkit-filter: opacity(100%);
        -moz-filter: opacity(100%);
        -o-filter: opacity(100%);
        -ms-filter: opacity(100%);
        filter: opacity(100%);
        transition: 0.2s linear;
    }
}

/* ==================================== */
.text-slider {
    text-align: center;
    width: 80%;
    max-width: 1200px;
    margin: 0 auto;
}

@media screen and (max-width: 640px) {
    .text-slider {
        width: 95%;
    }
}

.text-slider .slick-slide:not(.slick-center) {
    opacity: 0;
    transition: 0.2s linear;
}

.text-slider .slick-slide.slick-center {
    opacity: 1;
    transition: 0.2s linear;
}

.txt {
    display: block;
    text-align: center;
    font-size: 1.0625rem;
    line-height: 1.76;
    letter-spacing: 0.05em;
    margin: 0 30px;
}

@media screen and (max-width: 640px) {
    .txt {
        margin: 0 23px;
    }
}

/* ==================================== */

.slider-container {
    margin-top: 0;
}

@media screen and (max-width: 640px) {
    .slider-container {
        margin-top: 5.5%;
    }
}

.slider .slider-wrap {
    position: relative;
    margin: 0 23px;
}


.slider-wrap img {
    height: auto;
    width: 100%;
    aspect-ratio: 181/107;
    object-fit: cover;
}

@media screen and (max-width: 640px) {
    .slider .slider-wrap {
        position: relative;
    }
}

.slider {
    margin: 0 auto;
    max-width: 1200px;
    width: 80%;
}

@media screen and (max-width: 640px) {
    .slider {
        width: 96%;
        margin: 0 auto;
    }
}

.slider .slider-wrap .slider-contents {
    background-color: #fff;
    box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.24);
    padding: 5.3% 3.3% 3.8%;
    margin: 6.8% 1.5% 3.8%;
    position: relative;
}

@media screen and (max-width: 640px) {
    .slider .slider-wrap .slider-contents {
        padding: 7% 2.7% 3.8%;
        margin: 8.8% 1.5% 3.8%;
    }
}

.slider .slider-wrap .slider-contents::after {
    position: absolute;
    z-index: 1;
    content: "";
    top: -10.5%;
    left: 50%;
    transform: translateX(-50%);
    width: 10%;
    height: 16%;
    background-image: url(/sp/asaduke/kazarigiri/images/icon-flow-clip.png);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .slider .slider-wrap .slider-contents::after {
        top: -11%;
        width: 11%;
        height: 17%;
    }
}

.slider .slider-wrap .slider-contents.slider-step::before {
    position: absolute;
    z-index: 5;
    content: "";
    top: -1.5%;
    left: -1.1%;
    width: 15%;
    height: 21%;
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step1_img_01.png);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .slider .slider-wrap .slider-contents.slider-step::before {
        top: -14%;
        left: 0;
        width: 22%;
        height: 34%;
    }
}

.slider .slider-wrap .slider-contents.slider-step.slider-step2-01::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step2_img_01.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step3-01::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step3_img_01.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step4-01::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step4_img_01.png);
}

/* にんじん */
.slider .slider-wrap .slider-contents.slider-step.slider-step1-02::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step1_img_02.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step2-02::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step2_img_02.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step3-02::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step3_img_02.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step4-02::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step4_img_02.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step5-02::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step5_img_02.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step6-02::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step6_img_02.png);
}

/* 大根 */
.slider .slider-wrap .slider-contents.slider-step.slider-step1-03::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step1_img_03.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step2-03::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step2_img_03.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step3-03::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step3_img_03.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step4-03::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step4_img_03.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step5-03::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step5_img_03.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step6-03::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step6_img_03.png);
}

/* れんこん */
.slider .slider-wrap .slider-contents.slider-step.slider-step1-04::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step1_img_04.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step2-04::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step2_img_04.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step3-04::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step3_img_04.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step4-04::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step4_img_04.png);
}

/* トマト */
.slider .slider-wrap .slider-contents.slider-step.slider-step1-05::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step1_img_05.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step2-05::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step2_img_05.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step3-05::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step3_img_05.png);
}

.slider .slider-wrap .slider-contents.slider-step.slider-step4-05::before {
    background-image: url(/sp/asaduke/kazarigiri/images/icon_step4_img_05.png);
}

.slide-arrow {
    bottom: 0;
    margin: auto;
    position: absolute;
    z-index: 1;
    top: 0;
}

.prev-arrow {
    width: 42px;
    height: 42px;
    border-top: 2px solid #919191;
    border-left: 2px solid #919191;
    transform: rotate(-45deg);
    left: 14.4%;
}

.prev-arrow:hover,
.next-arrow:hover {
    opacity: 0.7;
}

@media screen and (max-width: 640px) {
    .prev-arrow {
        width: 32px;
        height: 32px;
        left: 0
    }
}

.next-arrow {
    width: 42px;
    height: 42px;
    border-top: 2px solid #919191;
    border-right: 2px solid #919191;
    transform: rotate(45deg);
    right: 14.4%;
}

@media screen and (max-width: 640px) {
    .next-arrow {
        width: 32px;
        height: 32px;
        right: 0;
    }
}

button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
}

.slick-disabled {
    display: none !important;
}


/***************************************************
インスタグラム
***************************************************/
.mod-instagram {
    position: relative;
    background-image: url(/sp/asaduke/kazarigiri/images/bg_instagram_pc.jpg);
    background-position: 0 0;
    background-repeat: repeat-y;
    background-size: 100%;
    padding-top: 4%;
    padding-bottom: 4.3%;
    overflow: hidden;
}

@media screen and (max-width: 640px) {
    .mod-instagram {
        background-image: url(/sp/asaduke/kazarigiri/images/bg_instagram_sp.jpg);
        padding-top: 12%;
        padding-bottom: 11%;
    }
}

.mod-instagram::before {
    content: "";
    position: absolute;
    top: 13.31%;
    left: 1%;
    width: 28.67%;
    max-width: 460px;
    height: 64.46%;
    background-image: url(/sp/asaduke/kazarigiri/images/instagram_bg_img_03.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .mod-instagram::before {
        top: 11%;
        left: -19%;
        width: 45%;
        max-width: 460px;
        height: 86%;
        background-image: url(/sp/asaduke/kazarigiri/images/bg_instagram_img_03_sp.png);
    }
}

.mod-instagram::after {
    content: "";
    position: absolute;
    top: 13%;
    right: 2.58%;
    width: 28%;
    max-width: 460px;
    height: 26%;
    background-image: url(/sp/asaduke/kazarigiri/images/instagram_bg_img_05.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .mod-instagram::after {
        top: 11.3%;
        right: -7%;
        width: 53%;
        max-width: 460px;
        height: 93%;
        background-image: url(/sp/asaduke/kazarigiri/images/bg_instagram_img_04_sp.png);
    }
}

.instagram-contents {
    position: relative;
}

.instagram-contents::before {
    content: "";
    position: absolute;
    bottom: -7%;
    left: -12%;
    width: 15%;
    max-width: 460px;
    height: 36%;
    background-image: url(/sp/asaduke/kazarigiri/images/instagram_bg_img_04.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

.instagram-contents::after {
    content: "";
    position: absolute;
    bottom: -22%;
    right: -13%;
    width: 26%;
    max-width: 460px;
    height: 65%;
    background-image: url(/sp/asaduke/kazarigiri/images/instagram_bg_img_06.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {

    .instagram-contents::before,
    .instagram-contents::after {
        background-image: none;
    }
}

.instagram_bg_01 {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 29.22%;
    max-width: 435px;
}

@media screen and (max-width: 640px) {
    .instagram_bg_01 {
        width: 33.22%;
    }
}

.instagram_bg_02 {
    position: absolute;
    top: 0;
    right: 0;
    width: 29.22%;
    max-width: 435px;
}

@media screen and (max-width: 640px) {
    .instagram_bg_02 {
        width: 33.22%;
    }
}

.instagram-title-wrap {
    position: relative;
    z-index: 3;
}

.instagram-logo {
    max-width: 209px;
    width: 19%;
    margin: 0 auto;
    margin-bottom: 2%;
}

.instagram-logo img {
    display: block;
    aspect-ratio: 418/94;
}

@media screen and (max-width: 640px) {
    .instagram-logo {
        max-width: 209px;
        width: 100%;
        margin: 0 auto;
        margin-bottom: 7%;
    }
}

.instagram-title {
    max-width: 496px;
    width: 44%;
    margin: 0 auto;
    margin-bottom: 2.5%;
}

.instagram-title img {
    aspect-ratio: 496/132;
}

@media screen and (max-width: 640px) {
    .instagram-title {
        max-width: 372px;
        width: 95%;
        margin: 0 auto;
        margin-bottom: 5%;
    }
}

.instagram-text {
    max-width: 571px;
    width: 50%;
    margin: 0 auto 3.1%;
}

.instagram-text img {
    aspect-ratio: 1142/76;
}

@media screen and (max-width: 640px) {
    .instagram-text {
        max-width: 571px;
        width: 100%;
        margin: 0 auto;
        margin-bottom: 8.8%;
    }
}

.instagram-post-wrap {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 3;
}

@media screen and (max-width: 640px) {
    .instagram-post-wrap {
        flex-wrap: wrap;
    }
}

.instagram-post {
    width: 17.5%
}

@media screen and (max-width: 640px) {
    .instagram-post {
        width: 30.6666%;
    }
}

.instagram-post:not(:last-child) {
    margin-right: 2.5%;
}

@media screen and (max-width: 640px) {
    .instagram-post:not(:last-child) {
        margin-right: 3.5%;
    }

    .instagram-post:nth-of-type(3) {
        margin-right: 0;
    }

    .instagram-post:nth-child(n + 4) {
        margin-top: 3.5%;
    }
}

.instagram-post img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
}

.instagram-btn-wrap {
    display: none;
    background-color: #643317;
    border-radius: 15px;
    width: 330px;
    height: 70px;
    margin: 0 auto;
}

.instagram-btn-wrap a {
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 6%;
    color: #ffffff;
    font-size: 21px;
    font-weight: 500;
    padding: 5% 0 6%;
}

@media screen and (max-width: 640px) {
    .instagram-btn-wrap a {
        column-gap: 6%;
        padding: 6% 0;
    }
}

.instagram-btn-wrap a::before {
    content: "";
    width: 12%;
    height: 28px;
    background-image: url(/sp/asaduke/kazarigiri/images/icon_instagram.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}


/***************************************************
おいしいレシピ
***************************************************/

.mod-recipe {
    background-image: url(/sp/asaduke/kazarigiri/images/bg_recipe_01.jpg);
    background-position: 0 0;
    background-size: 100%;
    background-repeat: repeat-y;
    padding-top: 6%;
    padding-bottom: 6%;
}

.mod-recipe.mod-recipe-carrot {
    background-image: url(/sp/asaduke/kazarigiri/images/bg_recipe_02.jpg);
}

.mod-recipe.mod-recipe-daikon {
    background-image: url(/sp/asaduke/kazarigiri/images/bg_recipe_03.jpg);
}

.mod-recipe.mod-recipe-renkon {
    background-image: url(/sp/asaduke/kazarigiri/images/bg_recipe_04.jpg);
}

.mod-recipe.mod-recipe-tomato {
    background-image: url(/sp/asaduke/kazarigiri/images/bg_recipe_05.jpg);
}




.recipe-contents {
    border-radius: 36px;
    background-color: #ffffff;
    padding: 3% 4% 5%;
}

@media screen and (max-width: 640px) {
    .recipe-contents {
        border-radius: 20px;
        padding: 3% 4% 14%;
    }
}

.recipe-contents .recipe-title {
    max-width: 852px;
    width: 81%;
    margin: 0 auto;
    background-image: url(/sp/asaduke/kazarigiri/images/ttl_top_recipe_img_01.png);
    background-position: center bottom 67%;
    background-repeat: no-repeat;
    background-size: 18% auto;
    padding-top: 15%;
}

.recipe-contents .recipe-title img {
    aspect-ratio: 852/70;
}

.recipe-contents .recipe-title.recipe-title-carrot {
    background-image: url(/sp/asaduke/kazarigiri/images/ttl_top_recipe_img_02.png);
}

.recipe-contents .recipe-title.recipe-title-daikon {
    background-image: url(/sp/asaduke/kazarigiri/images/ttl_top_recipe_img_03.png);
}

.recipe-contents .recipe-title.recipe-title-renkon {
    background-image: url(/sp/asaduke/kazarigiri/images/ttl_top_recipe_img_04.png);
}

.recipe-contents .recipe-title.recipe-title-tomato {
    background-image: url(/sp/asaduke/kazarigiri/images/ttl_top_recipe_img_05.png);
}

@media screen and (max-width: 640px) {
    .recipe-contents .recipe-title {
        max-width: 485px;
        width: 100%;
        background-position: center bottom 78%;
        background-size: 26% auto;
        padding-top: 25%;
    }
}

.recipe-title-subtext {
    color: #255D00;
    font-weight: 700;
    font-size: clamp(17px, 3vw, 22px);
    line-height: 1.8;
    margin-top: 1.6%;
}

@media screen and (max-width: 640px) {
    .recipe-title-subtext {
        font-size: clamp(0.938rem, 0.813rem + 0.63vw, 1.063rem);
        margin-top: 3.6%;
    }
}

.color-carrot {
    color: #F16307;
    margin-bottom: 1%;
}

@media screen and (max-width: 640px) {
    .color-carrot {
        margin-bottom: 0;
    }
}

.recipe-title-subtext.recipe-title-subtext-daikon {
    color: #588640;
}

.recipe-title-subtext.recipe-title-subtext-renkon {
    color: #9B7F59;
}

.recipe-title-subtext.recipe-title-subtext-tomato {
    color: #F02715;
}

.recipe-info-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 4%;
}

@media screen and (max-width: 640px) {
    .recipe-info-wrap {
        display: block;
        width: 100%;
        margin: 1.6% auto 11%;
    }
}

.recipe-info-img {
    max-width: 329px;
    width: 30%;
    margin-right: 9%;
}

@media screen and (max-width: 640px) {
    .recipe-info-img {
        max-width: 329px;
        width: 96%;
        margin-right: 0;
        margin: 0 auto;
    }
}

.recipe-info-contents {
    flex: 1;
}

@media screen and (max-width: 640px) {
    .recipe-info-contents {
        text-align: center;
        margin-top: 7%;
    }
}

.recipe-info-text {
    color: #255D00;
    font-weight: 500;
    font-size: clamp(17px, 3vw, 22px);
    line-height: 1.76;
    margin-bottom: 2%;
}

@media screen and (max-width: 640px) {
    .recipe-info-text {
        font-size: 1.0625rem;
        line-height: 1.76;
        margin-bottom: 2%;
    }
}

.recipe-info-text.color-carrot {
    color: #F16307;
}

.recipe-info-text.recipe-info-text-daikon {
    color: #588640;
}

.recipe-info-text.recipe-info-text-renkon {
    color: #9B7F59;
}

.recipe-info-text.recipe-info-text-tomato {
    color: #F02715;
}

.recipe-info-name {
    color: #000;
    font-weight: 700;
    font-size: clamp(22px, 3vw, 27px);
    line-height: 1.45;
    margin-bottom: 2%;
}

.recipe-info-name .no-wrap {
    color: #000;
    font-weight: 700;
    font-size: clamp(22px, 3vw, 27px);
    line-height: 1.45;
    margin-bottom: 2%;
}

@media screen and (max-width: 640px) {
    .recipe-info-name {
        font-size: 1.375rem;
        margin-bottom: 2.5%;
    }
}

.recipe-info-name .amount {
    font-weight: 700;
    color: #000;
    font-size: clamp(17px, 3vw, 20px);
}

@media screen and (max-width: 640px) {
    .recipe-info-name span {
        font-size: 1.0625rem;
    }
}

.recipe-info-desc {
    font-size: clamp(15px, 3vw, 15px);
    line-height: 1.66;
    margin-bottom: 6%;
}

@media screen and (max-width: 640px) {
    .recipe-info-desc {
        font-size: 0.9375rem;
        margin-bottom: 5%;
    }
}

.btn-recipe {
    width: 280px;
    height: 58px;
}

@media screen and (max-width: 640px) {
    .btn-recipe {
        margin: 0 auto;
    }
}

.btn-recipe a {
    text-align: center;
    width: 100%;
    height: 100%;
    display: block;
    color: #ffffff;
    font-weight: 500;
    font-size: clamp(17px, 3vw, 21px);
    line-height: 1.6;
    border-radius: 9px;
    background-color: #388D35;
    padding: 4% 6% 5%;
    position: relative;
}

.btn-recipe.carrot a {
    background-color: #F16307;
}

.btn-recipe.daikon a {
    background-color: #588640;
}

.btn-recipe.renkon a {
    background-color: #9B7F59;
}

.btn-recipe.tomato a {
    background-color: #F02715;
}

@media screen and (max-width: 640px) {
    .btn-recipe a {
        font-size: 1.0625rem;
        line-height: 2;
    }
}

.btn-recipe a::after {
    position: absolute;
    content: "";
    width: 19px;
    height: 19px;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-green.svg);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: contain;
}

.btn-recipe.carrot a::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-carrot.svg);
}

.btn-recipe.daikon a::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-daikon.svg);
}

.btn-recipe.renkon a::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-renkon.svg);
}

.btn-recipe.tomato a::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-tomato.svg);
}

.btn-recipe.btn-recipe-recommend {
    margin: auto auto 0;
}

.btn-recipe.btn-recipe-recommend a {
    background-color: #000;
}

.btn-recipe.btn-recipe-recommend a::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-black.svg);
}

.btn-recipe.btn-recipe-pagetop a::after {
    background-image: url(/sp/asaduke/kazarigiri/images/btn-arrow-pagetop.svg);
}

.btn-recipe.btn-recipe-pagetop {
    margin-bottom: 8%;
}

@media screen and (max-width: 640px) {
    .btn-recipe.btn-recipe-pagetop {
        margin-bottom: 25%;
    }
}

.recipe-line {
    width: 100%;
    height: 12px;
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_01.svg);
    background-repeat: repeat-x;
    background-size: auto 12px;
}

.recipe-line.carrot {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_02.svg);
}

.recipe-line.daikon {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_03.svg);
}

.recipe-line.renkon {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_04.svg);
}

.recipe-line.tomato {
    background-image: url(/sp/asaduke/kazarigiri/images/accordion_line_img_05.svg);
}

.recipe-recommend {
    padding-top: 6%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend {
        padding-top: 8.5%;
    }
}

.recipe-recommend-subtitle {
    color: #643317;
    font-weight: 500;
    font-size: clamp(17px, 3vw, 23px);
    line-height: 1.45;
    margin-bottom: 1%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-subtitle {
        font-size: clamp(0.875rem, 0.688rem + 0.94vw, 1.063rem);
        line-height: 1.45;
        margin-bottom: 2%;
    }
}

.recipe-recommend-title-wrap {
    text-align: center;
    margin-bottom: 4%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-title-wrap {
        text-align: center;
        margin-bottom: 7%;
    }
}

.recipe-recommend-title {
    color: #643317;
    font-weight: 700;
    font-size: clamp(22px, 3vw, 38px);
    line-height: 1.5;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-title {
        font-size: clamp(1.125rem, 0.875rem + 1.25vw, 1.375rem);
    }

    .recipe-recommend-title.recipe-recommend-title-tomato {
        font-size: clamp(1.125rem, 0.735rem + 1.6vw, 1.375rem);
    }
}

.recipe-recommend-title-container {
    position: relative;
    padding: 0 6%;
    display: inline-block;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-title-container {
        padding: 0 5%;
    }
}

.recipe-recommend-title-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    max-width: 25px;
    width: 4%;
    height: 88px;
    background-image: url(/sp/asaduke/kazarigiri/images/icon_recipe_01.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-title-container::before {
        height: 45px;
        top: 50%;
        transform: translateY(-50%);
    }
}

.recipe-recommend-title-container::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    max-width: 12px;
    width: 1.9%;
    height: 88px;
    background-image: url(/sp/asaduke/kazarigiri/images/icon_recipe_02.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-title-container::after {
        width: 2%;
        height: 50px;
        top: 50%;
        transform: translateY(-50%);
    }
}

.recipe-recommend-wrap {
    max-width: 880px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-wrap {
        max-width: 460px;
        display: block;
    }
}

.recipe-recommend-item {
    display: flex;
    flex-direction: column;
    height: inherit;
}

.recipe-recommend-item:first-child {
    margin-right: 6.8%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-item:first-child {
        margin-right: 0;
        margin-bottom: 11%;
    }
}

.recipe-recommend-image {
    margin-bottom: 4%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-image {
        margin-bottom: 5%;
    }
}

.recipe-recommend-item-ttl {
    font-weight: 500;
    line-height: 1.5;
    font-size: 1.125rem;
    margin-bottom: 3%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-item-ttl {
        margin-bottom: 2%;
    }
}

.recipe-recommend-item-text {
    font-size: 0.9375rem;
    line-height: 1.5;
    letter-spacing: 0.081em;
    text-align: center;
    margin-bottom: 6%;
}

@media screen and (max-width: 640px) {
    .recipe-recommend-item-text {
        margin-bottom: 5.1%;
    }
}

.recommend-recipe-more {
    text-align: center;
    margin-top: 6%;
}

@media screen and (max-width: 640px) {
    .recommend-recipe-more {
        margin-top: 11%;
    }
}

.recommend-recipe-more a {
    display: inline-block;
    max-width: 360px;
}

@media screen and (max-width: 640px) {
    .recommend-recipe-more a {
        width: 96%;
    }
}