/* 共通 */
* {
    box-sizing: border-box;
}

body {
    font-family: 'Zen Maru Gothic,游ゴシック体,Yu Gothic,YuGothic,ヒラギノ角ゴ ProN W3,Hiragino Kaku Gothic ProN,MS Pゴシック,MS PGothic,sans-serif';
}

a {
    text-decoration: none;
}

a:hover {
    opacity: 0.8;
}

img {
    display: block;
    width: 100%;
}

section {
    padding: 100px 0;
}

.wrap {
    max-width: 1250px;
    padding: 0 104px;
    margin: 0 auto;
    background-color: #fff;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

sup {
    vertical-align: super;
    font-size: smaller;
}

.palt {
    font-feature-settings: "palt";
}

.bg_sky {
    background-color: #e9f5fc;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .bg_sky {
        background-size: contain;
    }

    section {
        padding: 7.46vw 0;
    }
}

@media screen and (max-width: 767px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    .wrap {
        width: 100%;
        padding: 0;
    }


    section {
        padding: 11.33vw 0;
    }
}

/* フォント */
@font-face {
    font-family: 'A P-OTF A1ゴシック StdN';
    src: url('../fonts/AP-OTF-A1GothicStdN-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.A1GothicStdN-font {
    font-family: 'A P-OTF A1ゴシック StdN';
}

@font-face {
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
    src: url('../fonts/AP-OTF-ShueiNMGoStd-B.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.Nijimi-font {
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
}

@font-face {
    font-family: '小塚ゴシック Pr6N L';
    src: url('../fonts/KozGoPr6N-Light.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.koz-font {
    font-family: '小塚ゴシック Pr6N L';
}

/* ヘッダー */
header {
    position: relative;
    z-index: 10;
    background-image: url(../img/logo-back.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 60px 0 290px;
}

.logo {
    display: block;
    width: 204px;
}

.logo-wrap {
    width: 900px;
    margin: 0 auto;
}

.top-trigger {
    position: relative;
    display: flex;
    width: 1180px;
    justify-content: space-between;
    align-items: center;
    margin: -35px auto 0;
    z-index: 10;
}

.top-trigger li {
    border: 3px solid #66acda;
    border-radius: 2em;
    width: 27.2%;
}

.top-trigger li:hover {
    scale: 1.05;
    transition: 0.2s ease-in-out;
}

.top-trigger li:hover a {
    opacity: 1;
}

.top-trigger li.thanks-border {
    border: 3px solid #d9e367;
    background-color: #f6f8d9;
}

.top-trigger li.border-brown {
    border: 3px solid #a0948c;
}

.top-trigger p,
.top-trigger a {
    display: block;
    font-size: 20px;
    text-align: center;
    padding: 0.75em;
    color: #674e3f;
}

.top-trigger li.active {
    position: relative;
    width: 37.4%;
    border-radius: 3em;
}

.top-trigger li.active p {
    font-size: 24px;
    color: #40220f;
    padding: 1em;
    cursor: pointer;
}

.top-trigger li.active::before {
    position: absolute;
    content: '';
    background-image: url(../img/question-01-cow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 77px;
    height: 98px;
    top: -55%;
    left: -4%;
    z-index: 10;
}

@media (min-width: 768px) and (max-width: 1410px) {
    header {
        padding: 3.8vw 0 18.5vw;
    }

    .logo {
        width: 13vw;
    }

    .logo-wrap {
        width: 55%;
    }

    .wrap {
        padding: 0 5vw;
        width: 90%;
    }

    .top-trigger {
        width: 75vw;
        margin: -2.2vw auto 0;
    }

    .top-trigger p,
    .top-trigger a {
        font-size: 1.27vw;
    }

    .top-trigger li.active p {
        font-size: 1.53vw;
    }

    .top-trigger li.active::before {
        width: 4.9vw;
        height: 6.25vw;
    }
}

@media screen and (max-width: 767px) {
    .logo-wrap {
        width: 100%;
        padding: 0 5%;
    }

    /* ヘッダー */
    header {
        padding: 5vw 0 46vw;
    }

    .logo {
        width: 32.53vw;
    }

    /* top-trigger */
    .top-trigger {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: space-between;
    }

    .top-trigger li {
        width: 100%;
        margin: 10vw;
    }

    .top-trigger {
        width: 90vw;
        margin: -12vw auto 0;
    }

    .top-trigger p,
    .top-trigger a,
    .top-trigger li.active p {
        font-size: 3.47vw;
    }

    .top-trigger li.active::before {
        width: 11.07vw;
        height: 13.76vw;
        left: -1%;
    }

    .slick-arrow {
        color: transparent;
    }

}


/* フッター */
footer {
    text-align: center;
    padding-bottom: 75px;
}

.blue {
    color: #0665a7;
}


.copyright {
    font-size: 18px;
    font-family: 'A P-OTF A1ゴシック StdN';
    color: #40220f;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .copyright {
        font-size: 1.34vw;
    }
}

@media screen and (max-width: 767px) {
    footer {
        padding-bottom: 7.73vw;
    }

    .copyright {
        font-size: 2.67vw;
    }
}

/* top */
#sec01 {
    position: relative;
    padding: 50px 0 80px;
    margin-top: -400px;
    z-index: 99;
}

#content01 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    transition: opacity 1s ease-out;
}

#content01.fade-out {
    opacity: 0;
}

.content {
    position: relative;
    height: 628px;
}

.kv_message {
    font-size: 24px;
    line-height: 1.47;
    color: #0075c2;
    text-align: center;
    margin-top: 0.6em;
    font-weight: 700;
    font-family: 'Zen Maru Gothic';
}

.kv_cow {
    width: 361px;
    margin: 0 auto;
}

.content-inner {
    position: relative;
    width: 100%;
}

#content02 {
    position: absolute;
    width: 100%;
    background-image: url(../img/bg_main.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top;
}


.content02-subtit {
    font-size: 22.5px;
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
    color: #0075c2;
    text-align: center;
    font-weight: bold;
    margin-top: 12.4em;
}

.content02-title {
    font-size: 63px;
    line-height: 1.1;
    color: #0075c2;
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
    text-align: center;
    margin: 0.2em auto 0.6em;
}

.content02-title .orange {
    color: #ea5532;
}

.content02-title .small {
    font-size: 83.33%;
}

.content02-text {
    font-size: 16.5px;
    line-height: 1.8;
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
    text-align: center;
    color: #40220f;
}

.content02-text.small {
    position: relative;
    font-size: 14px;
    letter-spacing: 1.25px;
    margin-top: 2em;
}

.content02-text.after::after {
    position: absolute;
    content: '';
    background-image: url(../img/top-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 12.8px;
    height: 8.2px;
    bottom: -2.5em;
    left: 50%;
    transform: translateX(-50%);
}


@media (min-width: 768px) and (max-width: 1410px) {
    #sec01 {
        padding: 3.18vw 0 5.1vw;
        margin-top: -25.5vw;
    }

    .content {
        height: 40vw;
    }

    .kv_message {
        font-size: 1.53vw;
    }

    .kv_cow {
        width: 23vw;
    }

    .kv_message {
        font-size: 1.6vw;
    }

    .content02-subtit {
        font-size: 1.43vw;
    }

    .content02-title {
        font-size: 4vw;
    }

    .content02-text {
        font-size: 1.05vw;
    }

    .content02-text.small {
        font-size: 0.9vw;
    }

    .content02-text.after::after {
        width: 0.79vw;
        height: 0.52vw;
    }

}

@media screen and (max-width: 767px) {
    #sec01 {
        padding: 8.53vw 0 12vw;
        margin-top: -58.78vw;
    }

    .content {
        height: 140.8vw;
    }

    .kv_message {
        font-size: 4.85vw;
    }

    .kv_cow {
        width: 69.7vw;
    }

    #content02 {
        background-image: url(../img/bg_main_sp.png);
    }

    .content02-subtit {
        font-size: 4.53vw;
        margin-top: 9.5em;
    }

    .content02-title {
        font-size: 12.69vw;
        margin-bottom: 2vw;
    }

    .content02-text {
        font-size: 3.47vw;
    }

    .content02-text.sp-margin {
        margin-bottom: 45vw;
    }

    .content02-text.small {
        font-size: 2.93vw;
        letter-spacing: 0;
    }

    .content02-text.after::after {
        width: 3.68vw;
        height: 2.9vw;
        bottom: -1.25em;
    }
}

/* Enquete page*/
.enquete .top-trigger li.thanks {
    border: 3px solid #d9e367;

}

.enquete .question-title span {
    color: #0a6eb4;
    font-size: 150%;
}

.common-sec {
    padding-left: 70px;
}

.top-trigger li.enquete-border {
    border: 3px solid #0075c2;
    background-color: #f4fbfe;
}

#sec02 {
    position: relative;
    margin-bottom: 70px;

}

.backgrond_box {
    position: absolute;
    z-index: 0;
    width: 113%;
    height: 223px;
    left: 50%;
    bottom: 13%;
    transform: translateX(-50%);
}


h2.question {
    width: 85px;

}

.with-cow {
    position: relative;
}

.with-cow::before {
    content: '';
    position: absolute;
    background-image: url(../img/question-01-cow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.5em;
    height: 2em;
    top: -0.6em;
    left: 0;

}

.question-title {
    font-size: 30px;
    color: #40220f;
    line-height: 1.2;
}

.to-enquete .question-title span {
    font-size: 150%;
    color: #0a6eb4;
}


#bottle {
    position: relative;
    width: 254px;
    height: 607px;
    margin: -170px auto 0;
    z-index: 0;
    background-image: url(../img/bottle_bg.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;

}

#bottle li {
    position: absolute;
    left: 0;
    top: 0;

}

.img-wrap {
    opacity: 0;
}

.img-animation {
    animation: img-opacity 1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    /*2s*/
    overflow: hidden;
    position: relative;
}

.img-animation::before {
    animation: img-animation 1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    /*2s*/
    background: #fff;
    content: '';
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

#bottle li.step03 {
    z-index: 2;
}

#bottle li.step02 {
    z-index: 1;
}

#bottle li.step01 {
    z-index: 3;

}

.step02 .img-wrap {
    animation-delay: 0.5s;
    /*1s*/
}

.step02 .img-wrap::before {
    animation-delay: 0.5s;
    /*1s*/
}

.step03 .img-wrap {
    animation-delay: 1s;
    /*2s*/
}

.step03 .img-wrap::before {
    animation-delay: 1s;
    /*2s*/
}

@keyframes img-opacity {
    100% {
        opacity: 1;
    }
}

@keyframes img-animation {
    100% {
        transform: translateY(-100%);
    }
}


.bottom-cow {
    bottom: 11%;
    right: 0;
}

.cow_photo_box {
    width: 338px;
    position: relative;
}

.sec2_photo {
    position: absolute;
    width: 100%;
    max-width: 139px;
    bottom: 15%;
    left: 0;
    /* 表示順番3-1 */
    opacity: 0;
    animation: fadeIn 0.5s ease 3s forwards;
}

.sec2_cow {
    position: relative;
    width: 100%;
    max-width: 233px;
    right: -28%;
    /* 表示順番２ */
    opacity: 0;
    animation: fadeIn 0.5s ease 2s forwards;

}

.bottom-cow p {
    font-size: 13.5px;
    line-height: 1.5;
    color: #221714;
    margin-top: 1em;
    /* 表示順番 3-2*/
    opacity: 0;
    animation: fadeIn 0.5s ease 3s forwards;
}

.bottle_fukidasi-box li {
    position: absolute;
    z-index: 1;

}

.bottle_fukidasi-box li:first-child {
    top: 47%;
    left: 0;
    /* 表示順番4 */
    opacity: 0;
    animation: fadeIn 0.5s ease 4s forwards;
}


.bottle_fukidasi-box li:nth-child(2) {
    bottom: 2%;
    left: 8%;
    /* 表示順番4 */
    opacity: 0;
    animation: fadeIn 0.5s ease 5s forwards;
}

.bottle_fukidasi-box li:nth-child(3) {
    top: 13%;
    right: -7%;
    /* 表示順番4 */
    opacity: 0;
    animation: fadeIn 0.5s ease 6s forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.bottle_fukidasi-box li p.fukidasi {
    position: relative;
    font-size: 20px;
    text-align: center;
    color: #40220f;
    line-height: 1.5;
    border: 1px solid #40220f;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 0.8em 2.5em;
    border-radius: 2em;
    /* z-index: 5; */
}


.bottle_fukidasi-box span {
    font-size: 162.5%;
    color: #dd5433;
}

.bottle_fukidasi-box span.name {
    font-family: '小塚ゴシック Pr6N L';
    color: #40220f;
    font-size: 20px;
}

.bottle_fukidasi-box li p.fukidasi::after {
    content: "";
    position: absolute;
    bottom: -6.8%;
    right: 18%;
    width: 24.5px;
    height: 13px;
    background-image: url(../img/bottle_fukidasi-arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 4;
}

.bottle_fukidasi-box li:nth-child(2) p::after {
    top: -6.8%;
    right: 18%;
    transform: scaleY(-1);
}

.bottle_fukidasi-box li:nth-child(3) p::after {
    bottom: -6.8%;
    left: 18%;
    transform: scaleY(-1);
    rotate: 180deg;
}

/* scroll to fadein animation */
.fadeInTrigger {
    opacity: 0;
}

.fadeInTrigger.fadeIn {
    animation-name: fadeInAnime;
    animation-duration: 0.5s;
    /*0.5s*/
    animation-fill-mode: forwards;
    opacity: 0;
}

.fadeInTrigger.fadeIn.bottle_fukidasi-box {
    animation-delay: 2s;
    /*2s*/
}


@keyframes fadeInAnime {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@media (min-width: 768px) and (max-width: 1410px) {
    .common-sec {
        padding-left: 5.22vw;
    }

    #sec02 {
        margin-bottom: 5.22vw;
    }

    #sec02::after {
        height: 16.64vw;
    }

    h2.question {
        width: 7.5vw;
    }

    .question-title {
        font-size: 2.24vw;
    }

    #bottle {
        width: 18.96vw;
        height: 45.3vw;
        margin: -12.69vw auto 0;
    }

    .cow_photo_box {
        width: 25.22vw;
    }

    .sec2_photo {

        max-width: 10.37vw;
        bottom: 15%;
        left: 0;

    }

    .sec2_cow {

        max-width: 17.39vw;
        right: -28%;

    }

    .bottom-cow p {
        font-size: 1.01vw;
    }

    .bottle_fukidasi-box li p.fukidasi {
        font-size: 1.49vw;
        padding: 0.8em 2em;
    }

    .bottle_fukidasi-box li:nth-child(3) {
        right: -5%;

    }

    .bottle_fukidasi-box li p.fukidasi::after {
        width: 1.83vw;
        height: 1vw;
    }

    .bottle_fukidasi-box span.name {
        font-size: 1.49vw
    }
}

@media screen and (max-width: 767px) {
    h2.question {
        margin-right: 20px;
    }

    #sec02 {
        padding-top: 25vw;
        margin-top: -10vw;
        margin-bottom: 0;
    }

    .q_titlebox {
        display: flex;
        padding-left: 10px;
    }

    #sec02 h2.question {
        position: relative;
        width: 95px;

    }

    .title_cow {
        position: absolute;
        width: 100%;
        max-width: 68px;
        top: 48px;
        left: -33px;
    }



    .common-sec {
        padding-left: 0;
        width: 90%;
        margin: 0 auto;
    }

    .question-title {
        font-size: 6vw;
        letter-spacing: -0.05em;
    }

    .question-title span {
        font-size: 9vw;
    }

    .backgrond_box {

        width: 113%;
        height: 223px;
        left: 50%;
        bottom: unset;
        top: 39%;
        transform: translateX(-50%);
    }

    .sec2_cow {
        width: 81%;
        max-width: 90%;
        transform: translateX(-50%);
        right: -50%;
        /* 表示順番２ */
        opacity: 0;
        animation: fadeIn 0.5s ease 4s forwards;

    }

    #bottle {
        width: 138px;
        height: 330px;
        margin-top: 10vw;
    }

    .pc.bottle_fukidasi-box {
        display: none;
    }

    .bottle_fukidasi-box {
        display: flex;
        margin-bottom: 5vw;
    }

    .bottle_fukidasi-box li {
        position: static;
        width: 100%;
        list-style-type: none;
        padding: 0 15px;
        height: 13em;
    }

    .center-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 11em;
        margin-top: 1em;
        border: 1px solid #40220f;
        border-radius: 2em;
        position: relative;
    }

    .center-content::after {
        content: "";
        position: absolute;
        right: 20%;
        top: -3.8vw;
        width: 7vw;
        height: 4vw;
        background-image: url(../img/bottle_fukidasi-arrow_sp.png);
        background-repeat: no-repeat;
        background-size: contain;
        z-index: 4;
    }

    .bottle_fukidasi-box li p.fukidasi::after {
        display: none;
    }

    .bottle_fukidasi-box li:nth-child(3) p::after {
        display: none;
    }

    .bottle_fukidasi-box li p.fukidasi {
        font-size: 3.45vw;
        padding: 0 0.8em;
        border: none;

    }

    .bottle_fukidasi-box span.name {
        font-size: 3.5vw;
    }

    .slick-arrow {
        position: absolute;
        z-index: 1;
        width: 30px;
        height: 30px;
        top: 50%;
        border: none;
        transform: translateY(-50%);
        background: url(../img/left-arrow.svg) no-repeat center;
    }

    .slick-prev {
        left: -5%;
    }

    .slick-next {
        right: -5%;
        transform: translateY(-50%) scaleX(-1);
    }

    .bottom-cow.pc {
        display: none !important;
        /* position: static;
        width: fit-content;
        margin: 0 auto; */
    }
}

/* sec04 */
.bgcolor {
    position: relative;
}

#sec04 {
    max-width: 1250px;
    margin: 0 auto;
    padding-top: 100px;
    padding-left: 174px;
    padding-right: 104px;
    padding-bottom: 50px;
    position: relative;
    z-index: 1;
}

.bgcolor::after {
    content: "";
    position: absolute;
    top: -20%;
    left: 0%;
    width: 100%;
    height: 100%;
    background-image: url(../img/bg.png);
    background-repeat: repeat-x;
    background-position: center;
    background-size: 50% 50%;
    z-index: 0;

}

.product-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-top: 100px;
}

.product-inner {
    margin: 0 50px 20px 0;
}

.product-base {
    position: relative;
    width: 587.5px;
    height: 203px;
    background-image: url(../img/product_base.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 25px 45px 0;
}

.product-list {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.product-list li:nth-child(2) {
    margin-left: 2em;
}

.product-link {
    display: flex;
    flex-direction: column;
    font-size: 15px;
    line-height: 1.5;
    text-align: center;
    color: #0075c2;
    cursor: pointer;
}

.product-link:hover {
    scale: 1.1;
}

.product-link.scaleup {
    scale: 1.1;
}

.product-champion {
    font-size: 133%;
}

.product-number {
    font-size: 191%;
}

.link-black {
    font-size: 90%;
    color: #000;
}

.product-arrow {
    width: 0.55em;
    transform: scaleX(-1);
    margin: 15px auto 0;
}

.product-list li:first-child .product-arrow {
    margin-top: 20px;
}

.product-linkbox {
    display: flex;
    justify-content: space-between;
    width: 587.5px;
    padding: 1em;
    border-top: 2px solid #0075c2;
    border-bottom: 2px solid #0075c2;
    margin-top: 80px;
}

.product-linkbox .product-link {
    flex-direction: row;
    align-items: center;
}

.product-linkbox .product-arrow {
    margin: 0 0 0 1.3em;
}

.product-caption {
    font-size: 13.5px;
    text-align: right;
}

.product-cow {
    position: absolute;
    left: 20%;
    bottom: 27%;
    width: 200px;
}

.product-img-list li {
    position: absolute;
}

.product-img {
    position: relative;
    width: 118.5px;
}

.product-img:hover {
    transform: scale(1.1);
    cursor: pointer;
}

.product-img:hover::after {
    opacity: 1;
}

.product-img::after {
    opacity: 0;
    content: '';
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    height: 221px;
    transition: 0.5s ease-in-out;
}

.product-img-list li:first-child {
    left: 5%;
    top: -88%;
}

.product-img-list li:nth-child(2) {
    left: 39%;
    top: -150%;
}

.product-img-list li:last-child {
    right: 7%;
    top: -64%;
}

.product-img.img01::after {
    top: -75%;
    left: -73%;
    width: 312.5px;
    background-image: url(../img/product-fuki01.png);
}

.product-img.img02::after {
    top: -95%;
    left: -150%;
    width: 355px;
    background-image: url(../img/product-fuki02.png);
}

.product-img.img03::after {
    top: -112%;
    left: -80%;
    width: 355px;
    background-image: url(../img/product-fuki03.png);
}

.product-linkbox.sp {
    display: none;
}

@media (min-width: 768px) and (max-width: 1410px) {

    #sec04 {
        padding-bottom: 3vw;
        padding-top: 1vw;
        padding-left: 10.2vw;
        width: 90%;
    }

    .product-wrap {
        margin-top: 7.46vw;
    }

    .product-inner {
        margin: 0 3.73vw 1.49vw 0;
    }

    .product-base {
        width: 43.84vw;
        height: 15.15vw;
        padding: 1.87vw 3.36vw 0;
    }

    .product-link {
        font-size: 1.12vw;
    }

    .product-arrow {
        margin: 1.12vw auto 0;
    }

    .product-list li:first-child .product-arrow {
        margin-top: 1.49vw;
    }

    .product-linkbox {
        width: 43.84vw;
        margin-top: 5.97vw;
    }

    .product-caption {
        font-size: 1.01vw;
    }

    .product-cow {
        width: 14.93vw;
    }

    .product-img {
        width: 8.84vw;
    }

    .product-img::after {
        height: 16.49vw;
    }

    .product-img.img01::after {
        width: 23.32vw;
    }

    .product-img.img02::after {
        width: 26.49vw;
    }

    .product-img.img03::after {
        width: 26.49vw;
    }

    .product-list li:nth-child(2) {
        margin-left: 1vw;
    }

}

@media screen and (max-width: 767px) {
    #sec04 {
        width: 100%;
        max-width: 100%;
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;


    }

    #sec04 .q_titlebox {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
    }

    .product-wrap.pc {
        display: none
    }

    .bgcolor::after {
        display: none;
    }

    .sp_product-wrap {
        position: relative;
        margin-top: 20px;

    }

    .sp_product_slick_box {
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

    .slick_li {
        width: 100%;
        padding-top: 10px;
    }

    .slick_relative {
        width: 100%;
        position: relative;
        top: 10px;

    }

    #sec04 .slick-next {
        right: 17%;
    }

    #sec04 .slick-prev {
        left: 17%;
    }

    #slick_1 .slick_fukidashi {
        position: relative;
        left: 20%;
    }

    #slick_2 .slick_fukidashi {
        position: relative;
        top: 5vw;
    }

    #slick_3 .slick_fukidashi {
        position: relative;
        top: 0vw;
    }

    .slick_rank {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 6.5vw;
        width: 13vw;
        height: 13vw;
        margin-right: 2vw;
        background-color: #0075c2;
        border-radius: 100%;
        color: #fff;

    }

    .slick_rank span {
        font-size: 62.5%;
    }

    #slick_1 .slick_rank {
        left: -5%;
        top: -8vw;
    }

    #slick_2 .slick_rank {
        left: -5%;
        top: 3vw;
    }

    #slick_3 .slick_rank {
        left: -5%;
        top: -3vw;
    }

    .slick_product {
        position: relative;
        max-width: 50%;
        width: 100%;
        margin: 0 auto;
    }

    .slick_li.slick-active #slick_1 .slick_product {
        top: -10vw;
    }

    .slick_li.slick-active #slick_2 .slick_product {
        top: -15vw;
    }

    .slick_li.slick-active #slick_3 .slick_product {
        top: -16vw;
    }

    .slick_note {
        position: relative;
    }

    .slick_note .product-link {
        color: #40220f;
        font-size: 4vw;
        line-height: 1.5;
        width: 100%;
    }

    .slick_li.slick-active #slick_1 .slick_note {
        top: -8vw;
        transition: 2s ease-in-out;
    }

    .slick_li.slick-active #slick_2 .slick_note {
        top: -13vw;
        transition: 2s ease-in-out;
    }

    .slick_li.slick-active #slick_3 .slick_note {
        top: -14vw;
        transition: 2s ease-in-out;
    }

    /* 手動スライドでの順位が見れる動き */
    .slick_fukidashi,
    .slick_rank,
    .slick_note {
        opacity: 0;
    }

    .slick_li.slick-active .slick_fukidashi,
    .slick_li.slick-active .slick_rank,
    .slick_li.slick-active .slick_note {
        opacity: 1;
        transition: 2s ease-in-out;
    }

    .slick_li.slick-active .slick_relative {
        top: -10px;
        transition: 2s ease-in-out;
    }

    .slick_li.slick-active .slick_product {
        scale: 1.1;
        transition: 2s ease-in-out;
    }


    .product-cow {
        position: relative;
        width: 58%;
        left: 25%;
        padding-bottom: 5vw;
    }

    .product-linkbox.sp {
        display: block;
        width: 90%;
        margin: 0 auto;
    }

    .product-linkbox.sp .product-link {
        color: #40220f;
    }

    .product-linkbox.sp .product-link span {
        color: #0665a7;
    }

    .product-caption {
        text-align: left;
        padding-top: 1em;
        padding-left: 5%;
    }
}

/* sec05 */
#sec05.common-sec {
    padding-left: 0;
}

#sec05 .with-cow::before {
    background-image: url(../img/question-04-cow.png);
    width: 3em;
    height: 2em;
}

#sec05 .q_titlebox {
    display: flex;
    padding-bottom: 98px;
    max-width: 1250px;
    padding: 0 104px 100px 164px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}

.title_cow04 {
    max-width: 150px;
    width: 100%;
    padding-right: 20px;
}

.flex_direction {
    display: flex;
    flex-direction: column;
}

.scroll-infinity__wrap {
    width: 100%;
    overflow: hidden;
    margin: 0px 0 80px 0px;
}

.scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0;
    animation: scroll-infinity 12s linear infinite;
}

.scroll-infinity__list li {
    flex: 0 0 100%;
    width: 100%;
}


.bg_farm {
    width: 100%;
    background-image: url(../img/bg_farm.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: top;
}

.trigger_box {
    display: flex;
    width: 100%;
    padding: 0 5%;
    justify-content: space-between;
    margin: 0 auto;
    overflow: hidden;
}

.trigger_box li {
    width: 25%;
    cursor: pointer;
    padding: 1em 1em;
    color: #9e9e9f;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-image: url(../img/btn_inactive.png);

}

.trigger_box li.active {
    background-image: url(../img/btn_active.png);
    position: relative;
    color: #1094c6;
    ;

}

.trigger_box li.active::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: -349%;
    width: 350%;
    height: 2px;
    background-color: #1094c6;
}

.trigger_box li.active::after {
    content: "";
    position: absolute;
    bottom: 0px;
    right: -349%;
    width: 350%;
    height: 2px;
    background-color: #1094c6;
}

.trigger_box h3 {
    width: fit-content;
    font-size: 25px;
    margin: 0 auto;
}

.theme-list li {
    position: relative;
    height: 940px;
    display: none;
}

.theme-list li.active {
    display: block;
}

.theme-cow {
    position: absolute;
}

.theme-cow :hover {
    transform: scale(1.2);
}

.theme-1-01 {
    width: 336px;
    top: 23%;
    left: 30%;
}

.theme-1-02 {
    width: 385px;
    top: 20%;
    left: 53%;
}

.theme-1-03 {
    width: 341px;
    top: 43%;
    left: 19%;
}

.theme-1-04 {
    width: 400.5px;
    top: 47%;
    right: 31%;
}

.theme-1-05 {
    width: 344px;
    top: 47%;
    right: 9%;
}

.theme-arrow {
    position: absolute;
    top: 1.5%;
    width: 12px;
    height: 24px;
    background-image: url(../img/left-arrow.svg);
    background-color: transparent;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 5;
    border: none;
    cursor: pointer;
}

.theme-prev {
    left: 34%;
}

.theme-next {
    right: 34%;
    transform: scaleX(-1);
}

#sec05 .modal_wrap {
    display: none;
}

#sec05 .sp_trigger {
    display: none;
}

@media (min-width: 768px) and (max-width: 1410px) {
    #sec05 .q_titlebox {
        width: 90%;
        padding-left: 10.2vw;
    }

    .title_cow04 {
        max-width: 13vw;
        padding-right: 2vw;
    }

    .scroll-infinity__wrap {
        width: 100%;
        margin: 3vw 0 6vw 0;
    }

    .trigger_box li {
        padding: 1em .5em;

    }


    .trigger_box h3 {
        font-size: 2vw;
    }

    .theme-list li {
        height: 70.15vw;
    }

    .theme-1-01 {
        width: 25.07vw;
    }

    .theme-1-02 {
        width: 28.73vw;
    }

    .theme-1-03 {
        width: 25.45vw;
        left: 14%;
    }

    .theme-1-04 {
        width: 29.89vw;
    }

    .theme-1-05 {
        width: 25.67vw;
        right: 6%;
    }

    .theme-arrow {
        width: 0.9vw;
        height: 1.8vw;
    }
}

@media screen and (max-width: 767px) {
    #sec05.common-sec {
        width: 100%;
        max-width: 100%;

    }

    #sec05 .q_titlebox {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 30px;
        flex-direction: row-reverse;
        justify-content: space-between;
    }

    .title_cow04 {

        padding-right: 0;
    }

    .flex_direction {
        flex-direction: column-reverse;
    }

    #sec05 .bg_farm {
        width: 100%;
        margin-left: 0;
        background-image: url(../img/bg_farm_sp.png);
        background-size: 100% 100%;
    }

    .trigger_box li {
        display: none;
        background-image: none;

    }

    #sec05 .sp_trigger {
        display: block;
        position: absolute;
        width: 80%;
        left: 10%;
        padding: 1em 0;
    }

    .sp_trigger .trigger_flex {
        display: flex;
        justify-content: space-between;
    }

    .sp_trigger .prev img {
        cursor: pointer;
        width: 30px;
        height: 30px;

    }

    .sp_trigger .next img {
        cursor: pointer;
        width: 30px;
        height: 30px;
        transform: rotate(180deg);
    }

    .trigger_box li.active {
        display: block;
        color: #0075c2;
        background-image: none;
        width: 80%;
        margin: 0 auto;
        background-image: none;


    }

    .trigger_box li.active::before,
    .trigger_box li.active::after {
        display: none;
    }

    .trigger_box .slick-next {
        right: 5%;
        transform: translateY(-50%) scaleX(-1);
    }

    .trigger_box .slick-prev {
        left: 5%;

    }

    .theme-list li {
        height: 100vh;
        margin-top: 50px;
        margin-bottom: 0;
    }


    .lb-outerContainer,
    .lb-image {
        width: 90vw !important;
        height: auto !important;
    }

    body.lightbox-open {
        overflow: hidden !important;
    }

    .scroll-infinity__wrap {
        width: 100%;
        margin: 0px 0 40px 0px;
    }

    .bg_farm {
        width: 100%;
        margin-left: 0
    }

    .theme-cow :hover {
        transform: scale(1);
        opacity: 1;
    }

    .theme-1-01,
    .theme-1-02,
    .theme-1-03,
    .theme-1-04,
    .theme-1-05 {
        width: 45%;
    }

    .theme-1-01 {
        left: 0%;
        top: 22%;
    }

    .theme-1-02 {
        left: unset;
        right: 5%;
        top: 10%;
    }

    .theme-1-03 {
        right: 5%;
        left: unset;
        top: unset;
        bottom: 20%;
    }

    .theme-1-04 {
        left: 0%;
        top: 45%;
    }

    .theme-1-05 {
        right: 5%;
        top: 35%;
    }

    .flex_direction {
        flex-wrap: wrap-reverse;
    }

    /* .no-scroll {
        overflow: hidden;
    } */
    .lb-outerContainer {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

@media screen and (max-width: 767px)and (max-width: 500px) {

    .theme-1-01,
    .theme-1-02,
    .theme-1-03,
    .theme-1-04,
    .theme-1-05 {
        width: 55%;
    }

    .theme-1-02,
    .theme-1-03,
    .theme-1-05 {
        right: 0;
    }
}

@media screen and (max-width: 376px) {
    .theme-list li {
        height: 70vh;
    }

    .theme-1-01,
    .theme-1-02,
    .theme-1-03,
    .theme-1-04,
    .theme-1-05 {
        width: 50%;
    }

    .theme-1-01 {
        top: 15%;
    }

    .theme-1-03 {
        bottom: 12%;
    }
}



/* sec03 */
#sec03 {
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
    background-image: url(../img/q2_bg.png);
    background-repeat: no-repeat;
    background-size: 48%;
    background-position: 100% 20%;
    padding-top: 0;
    position: relative;
    /* margin-bottom: 112px; */
}

.sec3-bottom-cow {
    /* position: absolute; */
    position: relative;
    left: 0;
    margin-bottom: 30px;
}

.sec3-bottom-cow.bottom-cow p {
    opacity: 1;
    animation: none;
}

.sec3-bottom-cow img {
    max-width: 244px;
    display: block;
    margin-left: 10%;
}

.ranking_wrap {
    display: flex;
    margin-top: 33px;
    max-width: 770px;
    height: 380px;
    margin-bottom: 60px;
}

.ranking_dots {
    margin-top: 2em;
}

.ranking_dots li {
    cursor: pointer;
    color: #c9caca;
    width: 7%;
    font-size: 17px;
    margin-bottom: 1.15em;
    margin-right: 2.4em;
}

.ranking_ul {
    width: 92%;
    /* display: flex;
    flex-direction: row-reverse; */
    margin-bottom: 150px;

}

.ranking_flex {
    width: 100%;
    border: 2px solid #0075c2;
    border-radius: 6px;
    background-color: #fff;
    padding: 3%;
    padding-right: 2%;
    display: flex;
    align-items: center;
    position: relative;
    margin-bottom: .5em;
}


.ranking_dl {
    display: flex;
    align-items: center;
    width: 100%;
}

#rank1 .ranking_dl {
    justify-content: left;
}

#rank1 .ranking_dl dd:first-of-type {
    width: 65%;
}

.ranking_dl dt {
    font-size: 28.6px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #0075c2;
    color: #fff;
    width: 57px;
    height: 57px;
    border-radius: 100%;
    margin-right: 17px;

}

.ranking_dl dt div {
    display: flex;
    align-items: center;


}

.ranking_dl dt span {
    font-size: 64%;
}

.ranking_dl dd {
    color: #604c3f;
    font-size: 30px;
    line-height: 1.2;
}

.ranking_dl dd span {
    font-size: 148%;
    color: #0075c2;
}

.ranking_note {
    position: absolute;
    font-size: 20px;
    bottom: 5%;
    right: 1%;
    color: #40220f;
}

.ranking_note span {
    font-size: 16px;

}

.rank_fukidasi.active {
    display: block;
}

.first_cow {
    width: 100%;
    max-width: 125px;
}

.ranking_flex.after_rank3 {
    border: 2px solid #604c3f;
    padding-top: 1%;
    padding-bottom: 1%;
}

.after_rank3 .ranking_dl dt {
    border: 2px solid #604c3f;
    background-color: #fff;
    color: #604c3f;
    font-size: 24px;
    width: 45px;
    height: 45px;
}

.after_rank3 .ranking_dl dt span {
    font-size: 62.5%;
}

.after_rank3 .ranking_dl dd {
    font-size: 25px;
}

.after_rank3 .ranking_dl dd span {
    font-size: 104%;
}

.after_rank3 .ranking_note {
    font-size: 18px;

}

.after_rank3 .ranking_note span {
    font-size: 77%;
}

.rank_fukidasi {
    position: absolute;
    width: 100%;
    display: none;
    z-index: 2;
}

#rank1 .rank_fukidasi {
    max-width: 50%;
    top: -63%;
    right: -28%;
}

#rank2 .rank_fukidasi {
    max-width: 45%;
    top: -79%;
    right: -29%;
}

#rank3 .rank_fukidasi {
    max-width: 42%;
    top: 83%;
    right: -29%;
}

#rank4 .rank_fukidasi {
    max-width: 58%;
    top: -192%;
    right: -19%;
}

#rank5 .rank_fukidasi {
    max-width: 55%;
    top: -140%;
    right: -19%;
}

#rank6 .rank_fukidasi {
    max-width: 60%;
    top: -69%;
    right: -19%;
}

#rank7 .rank_fukidasi {
    max-width: 52%;
    top: -9%;
    right: -19%;
}

#rank8 .rank_fukidasi {
    max-width: 58%;
    top: 80%;
    right: -36%;
}

#rank9 .rank_fukidasi {
    max-width: 42%;
    top: 62%;
    right: -16%;
}

#sec03 .modal_wrap {
    display: none;
}

@media (min-width: 768px) and (max-width: 1410px) {
    #sec03 {
        margin-bottom: 10vw;
    }

    .ranking_wrap {
        height: 31vw;

    }

    .ranking_dots li {
        font-size: 1.27vw;
    }

    .ranking_dl dt {
        font-size: 2vw;
        width: 4.25vw;
        height: 4.25vw;

    }

    .ranking_dl dd {
        font-size: 2.2vw;
    }

    #rank1 .ranking_dl dd:first-of-type {
        width: 74%;
    }

    .first_cow {
        max-width: 9.3vw;
    }

    .ranking_note {
        font-size: 1.5vw;
    }

    .after_rank3 .ranking_dl dt {
        font-size: 1.7vw;
        width: 3.5vw;
        height: 3.5vw;
        border: 1px solid #604c3f;
    }

    .after_rank3 .ranking_dl dd {
        font-size: 1.87vw;
    }

    #rank1 .rank_fukidasi {
        top: -78%;
        right: -20%;
    }

    #rank2 .rank_fukidasi {
        right: -19%;
    }

    #rank3 .rank_fukidasi {
        right: -19%;
    }

    #rank4 .rank_fukidasi {
        top: -203%;
    }

    #rank5 .rank_fukidasi {
        top: -160%;
    }

    #rank6 .rank_fukidasi {
        top: -100%;
    }

    #rank8 .rank_fukidasi {
        top: 77%;
        right: -20%;
    }

    #rank9 .rank_fukidasi {
        right: -11%;
    }

    .sec3-bottom-cow {
        bottom: -10px;
    }

    .sec3-bottom-cow img {
        max-width: 22vw;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    .ranking_ul {
        width: 80%;
    }
}

@media screen and (max-width: 767px) {
    #sec03 {
        background-image: none;
    }

    #sec03 .q_titlebox {
        position: relative;
        flex-direction: column;
    }

    .title_cow03 {
        position: absolute;
        top: 0%;
        right: 0%;
        width: 50%;
    }

    .ranking_wrap {
        margin-top: 33px;
        max-width: 100%;
        height: fit-content;

    }

    .ranking_flex {
        flex-direction: column;

    }

    .rank_fukidasi.active {
        display: none;
    }

    .ranking_ul {
        width: 100%;
        margin-bottom: 20vw;
    }

    .first_cow {
        display: none;
        /* position: absolute;
    top: -53%;
    max-width: 20vw;
    left: 73%; */
    }

    .ranking_flex.after_rank3 {
        padding-top: 3%;
        padding-bottom: 3%;
    }

    #rank1 .ranking_dl,
    .ranking_dl {
        width: 100%;
    }

    /* .ranking_dl{
align-items: flex-start;
} */
    .ranking_dl dt {
        display: flex;
        align-items: center;
        font-size: 6.5vw;
        width: 13vw;
        height: 13vw;
        margin-right: 2vw;

    }


    #rank1 .ranking_dl dd:first-of-type {
        width: 65%;
    }

    .ranking_dl dd {
        font-size: 5.3vw;
    }

    .ranking_dl dd span {
        font-size: 110%;
    }

    .rank_fukidasi {
        display: none;
    }

    .ranking_note {
        position: relative;
        right: 0;
        bottom: 0;
        width: 100%;
        display: flex;
        justify-content: flex-end;
        font-size: 16px;
        align-items: center;
        margin-top: 0.5em;
    }

    .ranking_note span {
        font-size: 80%;
    }

    .sp_comment {
        width: 65px;
        height: 23px;
        background-image: url(../img/sp_coment.png);
        background-position: top;
        background-repeat: no-repeat;
        background-size: contain;

    }

    .sp_comment.active {
        background-image: url(../img/sp_coment_ac.png);

    }

    .sp_comment_txt {
        position: relative;
        top: -20px;
        left: 8%;
        width: 92%;
    }

    .after_rank3 .ranking_dl dt {
        font-size: 6.5vw;
        width: 13vw;
        height: 13vw;
    }

    .after_rank3 .ranking_dl dd {
        font-size: 5.3vw;
    }

    .after_rank3 .ranking_note {
        font-size: 3.84vw;

    }

    .sec3-bottom-cow img {
        margin-left: 25%;
    }
}


/* thanks */
.thanks-farm {
    margin-top: 30px;
}

.bg-light-yellow {
    background-color: #fcf6e0;
    background-image: url(../img/thanks-paper-snow.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    margin-top: -50px;
    padding: 50px 0;
}

.thanks-farm .thanks-wrap {
    padding: 50px 0;
}

.thanks-farm .thanks-first {
    margin-bottom: 0;
}

.thanks-farm .thanks-h2 {
    font-size: 48px;
}

.thanks-wrap {
    max-width: 1040px;
    margin: 0 auto;
}

.thanks-first {
    position: relative;
    padding: 0 50px 50px 50px;
    margin-bottom: 240px;
}

.thanks-textbox {
    position: relative;
    width: fit-content;
}

.thanks-h2 {
    font-size: 68.78px;
    line-height: 1.2;
    text-align: left;
    font-weight: normal;
    color: #ec6d34;
    margin-bottom: 0.5em;
}

.thanks-maintext {
    font-size: 20px;
    line-height: 2;
    text-align: left;
    color: #40220f;
}

.thanks-map {
    position: absolute;
    right: 0;
    top: -20px;
    width: 728px;
}

.thanks-kaisai {
    padding-bottom: 55px;
}

.thanks-kaisai dt {
    position: relative;
    font-size: 24px;
    color: #40220f;
    text-align: center;
    width: fit-content;
    margin: 0 auto 1.25em;
}

.thanks-kaisai dt::before,
.thanks-kaisai dt::after {
    content: '';
    position: absolute;
    top: 0;
    width: 2.8px;
    height: 30px;
    background-color: #40220f;
}

.thanks-kaisai dt::before {
    left: -15%;
    transform: rotate(-25deg);
}

.thanks-kaisai dt::after {
    right: -15%;
    transform: rotate(25deg);
}

.thanks-kaisai ul {
    display: flex;
    justify-content: space-between;
}

.thanks-kaisai ul a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    text-decoration: none;
    font-size: 20px;
    color: #fff;
    line-height: 1.6;
    border-radius: 3em;
    border: 5.7px solid #fff;
    padding: 1em 0;
    width: 328px;
}

.thanks-kaisai ul a:hover {
    background-color: #fff !important;
    color: #40220f;
}

.thanks-kaisai ul a.th-pink {
    background-color: #ffaaa0;
}

.thanks-kaisai ul a.th-pink:hover {
    border: 5.7px solid #ffaaa0;
}

.thanks-kaisai ul a.th-blue {
    background-color: #82c8e6;
}

.thanks-kaisai ul a.th-blue:hover {
    border: 5.7px solid #82c8e6;
}

.thanks-kaisai ul a.th-yellow {
    background-color: #ffd56a;
}

.thanks-kaisai ul a.th-yellow:hover {
    border: 5.7px solid #ffd56a;
}
.thanks-kaisai ul a.th-green {
    background-color: #a5d4ad;
}

.thanks-kaisai ul a.th-green:hover {
    border: 5.7px solid #a5d4ad;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .thanks-farm {
        margin-top: 1.88vw;
    }

    .thanks-wrap {
        max-width: 66.3vw;
    }

    .thanks-first {
        padding: 3.2vw;
        margin-bottom: 0;
    }

    .thanks-h2 {
        font-size: 4.38vw;
    }

    .thanks-maintext {
        font-size: 1.27vw;
    }

    .thanks-map {
        top: -1.27vw;
        width: 30.4vw;
    }

    .thanks-kaisai {
        padding-bottom: 3vw;
    }

    .thanks-kaisai dt {
        font-size: 1.53vw;
    }

    .thanks-kaisai dt::before,
    .thanks-kaisai dt::after {
        height: 1.88vw;
    }

    .thanks-kaisai ul a {
        font-size: 1.27vw;
        width: 20.9vw;
    }

}

@media screen and (max-width: 767px) {
    .top-trigger .slick-next {
        right: 0;
    }

    .top-trigger .slick-prev {
        left: 0;
    }

    .bg-light-yellow {
        background-image: url(../img/thanks-paper-snow_sp.png);
    }

    .thanks-farm {
        margin-top: 9.33vw;
    }

    .thanks-wrap {
        max-width: 90%;
    }

    .thanks-first {
        padding: 0;
        margin-bottom: 10.67vw;
    }

    .thanks-textbox {
        width: 100%;
    }

    .thanks-h2 {
        font-size: 14vw;
        text-align: center;
    }

    .thanks-maintext {
        font-size: 4.5vw;
        margin-bottom: 1.8em;
        text-align: center;
    }

    .thanks-map {
        position: static;
        width: 100%;
    }

    .thanks-kaisai {
        padding-bottom: 5.2vw;
    }

    .thanks-kaisai dt {
        font-size: 6.4vw;
    }

    .thanks-kaisai dt::before,
    .thanks-kaisai dt::after {
        height: 8vw;
    }

    .thanks-kaisai ul {
        display: block;
    }

    .thanks-kaisai li:nth-child(2) {
        margin: 6vw 0;
    }

    .thanks-kaisai ul a {
        font-size: 5.33vw;
        width: 100%;
    }

    .thanks-kaisai ul a.th-yellow {
        padding: 1.8em 0;
    }
}

/* ThanksPink */
.thanks-content {
    position: relative;
    padding: 60px 0;
    margin-bottom: 50px;
    overflow: hidden;
}

.bg-light-pink {
    background-color: #f7beb9;
    background-image: url(../img/thanks-paper-snow-2.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
}

.bg-light-blue {
    background-color: #82c8e6;
    background-image: url(../img/thanks-paper-snow-3.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
}

.bg-dark-yellow {
    background-color: #ffd56a;
    background-image: url(../img/thanks-paper-snow-4.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
}

.bg-dark-pink {
    background-color: #ffaaa0;
    background-image: url(../img/thanks-paper-snow-5.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100%;
}

.thanks-h3 {
    font-size: 30px;
    color: #fff;
    font-weight: normal;
    text-align: center;
    margin-bottom: 2em;
}

.thanks-slider {
    position: relative;
    height: 780px;
}

.slider-for li {
    position: absolute;
}

#pink-slider li:first-child {
    width: 48.3%;
    top: 0;
    left: -5%;
}

#pink-slider li:nth-child(2) {
    width: 33.2%;
    top: 7.7%;
    right: -2%;
}

#pink-slider li:nth-child(3) {
    width: 34.9%;
    top: 50%;
    left: 16.5%;
}

#pink-slider li:last-child {
    width: 40.7%;
    bottom: 18%;
    right: 3.2%;
}

.thanks-cow {
    position: absolute;
}

.th-cow-1 {
    width: 19%;
    top: 12%;
    right: 34%;
}

.th-cow-2 {
    width: 19%;
    bottom: 9%;
    left: -4%;
}

#blue-slider li:first-child {
    width: 40.7%;
    top: 8%;
    left: 0;
}

#blue-slider li:nth-child(2) {
    width: 33.3%;
    top: 0;
    right: 19%;
}

#blue-slider li:nth-child(3) {
    width: 34.8%;
    bottom: 0;
    left: 11.5%;
}

#blue-slider li:last-child {
    width: 48.3%;
    bottom: 13%;
    right: 0;
}

.th-cow-3 {
    width: 20.9%;
    top: 3.8%;
    right: -4%;
}

.th-cow-4 {
    width: 19.4%;
    bottom: 8.7%;
    left: 0;
}

#yellow-slider li:first-child {
    width: 48.3%;
    top: 0;
    left: 13%;
}

#yellow-slider li:nth-child(2) {
    width: 33.2%;
    top: 21.5%;
    right: 0;
}

#yellow-slider li:nth-child(3) {
    width: 34.9%;
    bottom: 0;
    left: 0;
}

#yellow-slider li:last-child {
    width: 40%;
    right: 14.5%;
    bottom: 0;
}

.th-cow-5 {
    width: 26.5%;
    top: -13.5%;
    right: 7%;
}

.th-cow-6 {
    width: 29.5%;
    bottom: 33%;
    left: 5.4%;
}

.th-cow-7 {
    width: 15.1%;
    bottom: 0;
    right: -4.5%;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .thanks-content {
        padding: 3.8vw 0;
        margin-bottom: 3.18vw;
    }

    .thanks-h3 {
        font-size: 1.9vw;
    }

    .thanks-slider {
        height: 49.7vw;
    }
}

@media screen and (max-width: 767px) {
    .thanks-content {
        padding: 10.93vw 0;
        margin-bottom: 5.33vw;
    }

    .bg-light-pink {
        background-image: url(../img/thanks-paper-snow-2_sp.png);
    }

    .bg-light-blue {
        background-image: url(../img/thanks-paper-snow-3_sp.png);
    }

    .bg-dark-yellow {
        background-image: url(../img/thanks-paper-snow-4_sp.png);
    }

    .bg-dark-pink {
        background-image: url(../img/thanks-paper-snow-2_sp.png);
    }

    .thanks-h3 {
        font-size: 6.4vw;
        line-height: 1.3;
    }

    .thanks-slider {
        height: auto;
    }

    #pink-slider li,
    .thanks-cow {
        position: static;
    }

    #pink-slider .slider-for li,
    #blue-slider .slider-for li,
    #yellow-slider .slider-for li,
    #green-slider .slider-for li {
        width: 100%;
    }

    .slider-nav {
        position: relative;
    }

    .slider-nav-item {
        padding: 3px;
    }

    .slider-for img,
    .slider-nav img {
        width: 100%;
        object-fit: cover;
    }

    .th-cow-1 {
        width: 51vw;
        margin-left: 9.33vw;
    }

    .th-cow-2 {
        width: 67.2vw;
        margin: 18.67vw auto 0;
    }

    .th-cow-3 {
        width: 78.4vw;
        margin-left: 5.28vw;
    }

    .th-cow-4 {
        width: 55.73vw;
        margin: 21.33vw auto 0;
    }

    .th-cow-5 {
        width: 67.47vw;
        margin: 13.87vw auto 0;
    }

    .th-cow-6 {
        width: 54.93vw;
        margin: 9.6vw 0 0 9.6vw;
    }

    .th-cow-7 {
        position: absolute;
        width: 24.53vw;
        bottom: -9vw;
        right: 0;
    }

    .slick-pause-button,
    .thanks-content .slick-prev,
    .thanks-content .slick-next {
        position: absolute;
        bottom: -44%;
        background-repeat: no-repeat;
        background-size: contain;
        width: 8vw;
        height: 8vw;
    }

    .slick-pause-button {
        right: 0;
        border: none;
        background-color: transparent;
        background-image: url(../img/thanks-play.png);
    }

    .slick-pause-button.play {
        background-image: url(../img/thanks-pause.png);
    }

    .thanks-content .slick-prev {
        right: 22.5%;
        top: auto;
        left: auto;
        transform: none;
        background-image: url(../img/thanks-arrow.png);
    }

    .thanks-content .slick-next {
        right: 11.3%;
        top: auto;
        transform: scaleX(-1);
        background-image: url(../img/thanks-arrow.png);
    }

    .thanks-content .slick-next::before,
    .thanks-content .slick-prev::before {
        content: none;
    }

}

/* TOP */
.to-inner {
    position: relative;
    padding: 50px;
    border-radius: 20px;
}

.to-inner.to-enquete {
    border: 3px solid #0075c2;
    height: 610px;
    background-color: #f4fbfe;
}

.cow-title {
    position: relative;
    display: block;
    font-size: 24px;
    text-align: center;
    padding: 1em;
    color: #fff;
    border-radius: 3em;
    letter-spacing: 1px;
    width: 441px;
    margin: 0 auto;
    background-color: #0075c2;
    border: 3px solid #0075c2;
    z-index: 5;
}

.cow-title:hover {
    position: relative;
    color: #40220f;
    background-color: rgb(244, 251, 254);
    opacity: 1;
}

.cow-title::before {
    position: absolute;
    content: '';
    background-image: url(../img/question-01-cow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 77px;
    height: 98px;
    top: -36%;
    left: -4%;
    z-index: 10;
}

.cow-title::after {
    position: absolute;
    content: '';
    color: #fff;
    right: 1.5em;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../img/top-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 8.5px;
    height: 12px;
}

.cow-title:hover::after {
    background-image: url(../img/top-arrow-hover.svg);
}

.cow-detail {
    position: relative;
    font-size: 20px;
    text-align: center;
    width: fit-content;
    margin: 0 auto 1em;
    letter-spacing: 0.1em;
}

.cow-detail::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -1.5em;
    transform: translateY(-50%) rotate(-35deg);
    width: 2px;
    height: 1.2em;
    background-color: #000;
}

.cow-detail::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -1.5em;
    transform: translateY(-50%) rotate(35deg);
    width: 2px;
    height: 1.2em;
    background-color: #000;
}

.top-img {
    position: absolute;
}

.top-img01 {
    width: 15%;
    bottom: 10%;
    left: 5.5%;
}

.top-img02 {
    width: 15.5%;
    top: 40%;
    right: 31%;
}

.top-img03 {
    width: 24.3%;
    bottom: 10%;
    right: 7%;
}

.to-enquete .question-title {
    position: absolute;
}

.to-enquete .question-title.enquete-tit01 {
    max-width: 330px;
    width: 100%;
    top: 38%;
    left: 5%;
    z-index: 1;

}

.enquete-tit02 {
    max-width: 355px;
    width: 100%;
    top: 46%;
    left: 23%;
    z-index: 0;
}

.enquete-tit03 {
    max-width: 450px;
    width: 100%;
    top: 72%;
    left: 15%;
}

.enquete-tit04 {
    max-width: 298px;
    width: 100%;
    top: 34%;
    left: 64%;

}

.better-service {
    font-size: 23px;
    text-align: center;
    color: #0075c2;
    font-family: 'Zen Maru Gothic';
    font-weight: bold;
    margin: 2.5em auto;
}

.confetti {
    position: relative;
}

.confetti::before {
    content: "";
    position: absolute;
    background: url(../img/top-img05.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 1192px;
    height: 1543px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.to-thanks {
    position: relative;
    border: 3px solid #d9e367;
    background-color: #f6f8d9;
    margin-top: 35px;
}

.top-vedio iframe.to-thanks-video {
    border: 3px solid #d9e367;
}

.top-img04 {
    width: 16%;
    top: 4%;
    right: 4%;
    z-index: 5;
}

.cow-title.thanks {
    color: #40220f;
    background-color: #d9e367;
    border: 3px solid #d9e367;
}

.cow-title.thanks::after {
    background-image: url(../img/top-arrow-hover.svg);
}

.cow-title.thanks:hover {
    background-color: #f6f8d9;
}

.top-vedio {
    width: 78.4%;
    margin: 30px auto 0;
    position: relative;
    padding-top: 44.1%;
    z-index: 2;
    border-radius: 1.5em;
    overflow: hidden;
}

.top-vedio iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.customer-memory {
    position: relative;
    background: url(../img/customer-memory-bg.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    margin-top: 115px;
    padding-bottom: 90px;
}

.customer-memory .cow-title {
    background-color: #EB6D56;
    border: 3px solid #EB6D56;
    color: #fff;
    text-indent: 1.5em;
    margin-top: -4.25em;
}

.customer-memory .cow-title::after {
    content: none;
}

.customer-memory-title {
    font-size: 24px;
    text-align: center;
    color: #40220f;
    margin-top: 1.67em;
}

.top-vedio iframe.customer-memory-video {
    border: 3px solid #ea5532;
}

.customer-memory-video-box::before,
.customer-memory-video-box::after {
    position: absolute;
    content: "";
    background-image: url(../img/customer-memory-02.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 95.5px;
    height: 394px;
    top: -3%;
    z-index: 2;
}

.customer-memory-video-box::before {
    left: -10%;
}

.customer-memory-video-box::after {
    transform: scaleX(-1);
    left: auto;
    right: -10%;
}

.customer-memory-01 {
    width: 16%;
    top: -6%;
    right: 4%;
    z-index: 5;
}

.customer-memory-03 {
    width: 12.7%;
    bottom: 15%;
    right: -1.5%;
    z-index: 3;
}

.customer-memory-04 {
    width: 8%;
    bottom: -10%;
    right: 16%;
    z-index: 3;
}

.customer-memory-05 {
    width: 45.2%;
    bottom: -23%;
    transform: translateX(-50%);
    left: 50%;
}
.customer-memory-06 {
    width: 16.3%;
    top: -8%;
    left: 5%;
}
@media (min-width: 768px) and (max-width: 1410px) {
    .to-inner {
        padding: 3.18vw;
        border-radius: 1.28vw;
    }

    .to-inner.to-enquete {
        height: 41vw;
    }

    .cow-title {
        font-size: 1.4vw;
        width: 28.1vw;
    }

    .cow-title::before {
        width: 4.9vw;
        height: 6.2vw;
    }

    .cow-title::after {
        width: 0.54vw;
        height: 0.76vw;
    }

    .cow-detail {
        font-size: 1.5vw;
    }

    .top-img {
        position: absolute;
    }

    .top-img01 {
        width: 15%;
        bottom: 10%;
        left: 5.5%;
    }

    .top-img02 {
        width: 15.5%;
        top: 40%;
        right: 31%;
    }

    .top-img03 {
        width: 24.3%;
        bottom: 10%;
        right: 7%;
    }

    .better-service {
        font-size: 1.46vw;
    }

    .to-enquete .question-title.enquete-tit01 {
        max-width: 19.89vw;
    }

    .enquete-tit02 {
        max-width: 21.25vw;
    }

    .enquete-tit03 {
        max-width: 26vw;
        left: 18%;
    }

    .enquete-tit04 {
        max-width: 18vw;
    }

    .confetti::before {
        width: 84.54vw;
        height: 109.43vw;
    }

    .customer-memory-video-box::before,
    .customer-memory-video-box::after {
        width: 5.57vw;
        height: 23vw;
    }

    .customer-memory-video-box::before {
        left: -8%;
    }

    .customer-memory-video-box::after {
        right: -8%;
    }

    .customer-memory-title {
        font-size: 1.7vw;
    }
}

@media screen and (max-width: 767px) {
    .logo-wrap.Nijimi-font {
        width: 96%;
    }

    .to-inner {
        padding: 8vw;
        border-radius: 5.33vw;
    }

    .to-inner.to-enquete {
        height: 125vw;
    }

    .cow-title {
        font-size: 4.1vw;
        width: 75.2vw;
    }

    .cow-title::before {
        width: 13.12vw;
        height: 16.77vw;
    }

    .cow-title::after {
        width: 1.39vw;
        height: 2.19vw;
    }

    .cow-detail {
        font-size: 4vw;
    }

    .to-enquete .question-title {
        font-size: 4.21vw;
    }

    .top-img01 {
        width: 23.33vw;
        bottom: 37.2vw;
        left: 4vw;
        z-index: 3;
    }

    .top-img02 {
        width: 24.1vw;
        top: 41vw;
        right: 4.76vw;
    }

    .top-img03 {
        width: 37.39vw;
        bottom: 8vw;
        right: 6vw;
    }


    .to-enquete .question-title.enquete-tit01 {
        max-width: 54vw;
        z-index: 2;
        left: 2%;
        top: 38%;
    }

    .enquete-tit02 {
        max-width: 60vw;
        top: 52%;
        left: 4%;
        z-index: 1;
    }

    .enquete-tit03 {
        max-width: 38vw;
        left: 7%;
        top: 77%;
        z-index: 3;
    }

    .enquete-tit04 {
        max-width: 53vw;
        left: 43%;
        top: 44%;
    }

    .better-service {
        font-size: 3.93vw;
        line-height: 1.56;
    }

    .confetti::before {
        content: none;
    }

    .customer-memory .cow-title {
        font-size: 3.8vw;
    }

    .customer-memory-title {
        font-size: 4.1vw;
    }

    .top-img04 {
        width: 20%;
        top: 2%;
        right: 2%;
    }

    .customer-memory-01 {
        width: 20%;
        top: 27%;
        right: 0;
    }

    .customer-memory {
        margin-top: 15vw;
    }

    .customer-memory-video-box::before,
    .customer-memory-video-box::after {
        width: 9vw;
        height: 37vw;
    }

    .customer-memory-video-box::before {
        left: -7%;
    }

    .customer-memory-video-box::after {
        right: -7%;
    }

    .customer-memory-03 {
        right: 1.5%;
    }
    .customer-memory-06 {
        top: 28%;
        left: -1%;
    }
}

@media screen and (max-width: 319px) {
    .to-enquete .question-title.enquete-tit01 {
        max-width: 49vw;
        left: 4%;
        top: 28%;
    }

    .enquete-tit02 {
        max-width: 55vw;
        top: 40%;
        left: 4%;
    }

    .enquete-tit03 {
        max-width: 34vw;
        left: 7%;
    }

    .enquete-tit04 {
        max-width: 49vw;
        left: 43%;
        top: 37%;
    }

}


/*スクロールバーのスタイル*/
.ranking_scrollbar {
    width: 20px;
    height: 380px;
    /* ランキング3件表示で調整（見た目で調整OK） 210px*/
    position: relative;
    margin: 0 30px 0 0;
    /* お好みで */
    display: flex;
    align-items: start;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .ranking_scrollbar {
        height: 31vw;
    }
}

.scrollbar-track {
    width: 20px;
    height: 100%;
    background: #e0e0e0;
    border-radius: 10px;
    margin: 0 auto;
    position: relative;
}

.scrollbar-thumb {
    width: 20px;
    /* 210px÷9*3（3件表示なら1/3） 70px*/
    /* height: 126px;  */
    background: #0075c2;
    border-radius: 10px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.07);
    transition: background 0.2s;
}

/*0822調整*/
@media screen and (max-width: 767px) {
    div.bottom-cow.palt div.cow_photo_box {
        margin: 0 auto;
    }

    div.sec3-bottom-cow img {
        margin: 0 auto;
    }

    div.bottom-cow.palt P {
        text-align: center;
    }

    .backgrond_box {
        width: 111% !important;
    }
}


/* 吹き出し変更20250825 */
.pc.bottle_fukidasi-box li p.fukidasi {
    border: none !important;
    background-color: inherit;
    width: 100%;
    padding: 0 0 16px 0 !important;
}

.pc.bottle_fukidasi-box li:nth-child(2) p.fukidasi {
    padding: 16px 0 0 0 !important;
}

.bottle_fukidasi-box li:nth-child(3) {
    right: 5% !important;
}

.pc.bottle_fukidasi-box li p.fukidasi::after {
    content: none !important;
}

.pc.bottle_fukidasi-box li.fukibox img {
    width: 100%;
    position: relative;
}

.pc.bottle_fukidasi-box li.fukibox div {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
}

.pc.bottle_fukidasi-box li.fukibox {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.pc.bottle_fukidasi-box li:nth-child(1) {
    max-width: 465px;
}

.pc.bottle_fukidasi-box li:nth-child(2) {
    max-width: 421px;
}

.pc.bottle_fukidasi-box li:nth-child(3) {
    max-width: 298px;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .pc.bottle_fukidasi-box li:nth-child(1) {
        width: 32.98vw;
    }

    .pc.bottle_fukidasi-box li:nth-child(2) {
        width: 29.86vw;
    }

    .pc.bottle_fukidasi-box li:nth-child(3) {
        width: 21.13vw;
    }

}

@media screen and (max-width: 767px) {
    .bottle_fukidasi-box li {
        height: inherit !important;
        ;
    }

    .center-content {
        height: inherit !important;
        ;
        border: none !important;
    }

    .center-content::after {
        content: none !important;
    }

    .sp.bottle_fukidasi-box .slick-slide img {
        position: relative;
    }

    .sp.bottle_fukidasi-box li p.fukidasi {
        position: absolute;
        padding: 1em 0.8em 0 !important;
        background-color: inherit;
    }

    .cow_photo_box {
        max-width: 338px;
        width: 100%;
    }

    /* .slick-arrow {
        top: 57% !important;
    } */
}

/*TOPページ　ロゴ選択対策*/
#top header {
    z-index: inherit;
    padding: 60px 0 340px !important;
}

#top .logo {
    position: absolute !important;
    z-index: 100 !important;
}

@media screen and (max-width: 767px) {
    #top header {
        padding: 5vw 0 54vw !important;
    }
}

/* 0909 追加対応　*/
@media (min-width: 768px) {
    .wrap {
        margin-bottom: 50px;
    }
}

.ranking_area {
    position: relative;
}

.ranking_wrap {
    overflow-y: auto;
    /* max-height: 380px; */
    /* スクロールバーを左に */
    /* direction: rtl; */
    scrollbar-width: none;
    scrollbar-color: #0075c2 #e0e0e0;
}

.ranking_ul {
    direction: ltr;
    /* テキストは通常向きに戻す */
    margin: 0;
    padding: 0;
}

.rank_fukidasi {
    position: absolute;
    left: 65%;
    /* .ranking_wrapの右側に出すなら100% */
    margin-left: 10px;
    /* 必要に応じて調整 */
    width: 220px;
    /* 画像サイズに合わせて調整 */
    z-index: 10;
    display: none;
    pointer-events: none;
    /* 吹き出しをクリック透過（必要なら） */
}

/* スクロールバー色（Chrome用） */
.ranking_wrap::-webkit-scrollbar {
    width: 20px;
    background: #e0e0e0;
    border-radius: 10px;
}

.ranking_wrap::-webkit-scrollbar-thumb {
    background: #0075c2;
    border-radius: 10px;
    min-height: 30px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.07);
}

/* SP時は標準レイアウト */
@media (max-width: 767px) {
    .rank_fukidasi {
        display: none !important;
    }

    .ranking_wrap {
        direction: ltr;
    }
}

@media (min-width: 768px) {
    .sp_comment_txt img {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .ranking_wrap {
        overflow-y: hidden;
        touch-action: none;
        overscroll-behavior: contain;
    }
}

@media (min-width: 768px) {
    .ranking_area {
        overscroll-behavior: contain;
    }
}

@media (min-width: 768px) {
    .trigger_box li {
        display: block !important;
        background-image: url(../img/btn_inactive.png);
    }

    .trigger_box li.active {
        display: block !important;
        background-image: url(../img/btn_active.png);
    }
}

@media (min-width: 768px) {
    .trigger_box li {
        display: block !important;
    }
}


/* SP時 ranking_scrollbarを非表示 */
@media (max-width: 767px) {
    .ranking_scrollbar {
        display: none !important;
    }
}

/* .trigger_box li（PC時は必ず表示） */
@media (min-width: 768px) {
    .trigger_box li {
        display: block !important;
    }
}

/* スクロールバーのマウス、タッチ操作 */
.scrollbar-thumb {
    cursor: grab;
}


.coming_soon {
    width: 100%;
    height: 320px;
    background-color: gray;
    color: #fff;
    font-size: 40px;
    text-align: center;
    line-height: 320px;
    border-radius: 10px;
}

@media (min-width: 768px) and (max-width: 1410px) {
    .coming_soon {
        height: 23vw;
        font-size: 3vw;
        line-height: 23vw;
    }
}

@media screen and (max-width: 767px) {
    .coming_soon {
        height: 30vw;
        font-size: 5vw;
        line-height: 30vw;
    }
}

/* 20260127改修 */
.cow-title.mosikomi {
    margin-top: 7vw;
    width: 90%;
}

@media screen and (max-width: 767px) {
    .cow-title.mosikomi {
        margin-top: 10vw;
        width: 100%;
    }
}

/* タブコンテナ */

/* ボタンコンテナ */
.tab-buttons {
    display: flex;
    gap: 40px;
    border-bottom: none;
    padding-left: 20px;
    justify-content: center;
    background-color: #fcf6e0;
}

/* ボタンの基本スタイル */
.tab-btn {
    font-size: 36px;
    padding: 0.5em 3em;
    cursor: pointer;
    background-color: #fff;
    border: 2.8px solid #40220f;
    border-radius: 15px 15px 0 0;
    border-bottom: none;
    position: relative;
    transition: background-color 0.2s;
    outline: none;
    font-family: 'A P-OTF 秀英にじみ丸ゴ Std B';
    line-height: 1;
    color: #40220f;
}

/* ボタン1のデフォルト背景色 */
.tab-btn[data-tab="1"] {
    background-color: #ffd200;
}

/* ボタン2のデフォルト背景色 */
.tab-btn[data-tab="2"] {
    background-color: #ffaaa0;
}

/* ボタンがクリックされた（アクティブ）状態 */
.tab-btn.active {
    position: relative;
    top: 2.8px;
    z-index: 2;
}

/* パネルコンテナ */
.tab-content {
    border-top: 2.8px solid #40220f;
    overflow: hidden;
    background-color: #fff;
}

/* 個別パネルはデフォルトで非表示 */
.tab-panel {
    display: none;
}

/* 現在表示されているパネル */
.tab-panel.active {
    display: block;
}

/* パネルの最初のサブセクション */
.sub-section {
    background-image: url(../img/thanks-paper-snow-2.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    padding-top: 70px;
    margin-bottom: 50px;
}

/* パネル1の最初のサブセクションの背景色 */
#panel1 .sub-section {
    background-color: #ffd200;
}

/* パネル2の最初のサブセクションの背景色 */
#panel2 .sub-section {
    background-color: #ffaaa0;
}

.sub-section .top-vedio {
    margin: 0 auto 35px;
}

.thanks-kaisai ul.panel01 {
    flex-wrap: wrap;
}

.thanks-kaisai ul.panel01 li {
    margin-bottom: 1.5em;
}

.flex-wrap-01 {
    width: 940px;
    margin: 0 auto;
}

.flex-wrap-01 ul a {
    width: 450px;
}

#group-talk2026 .scroll-img {
    overflow: hidden;
    width: 100%;
}

#group-talk2026 .scroll-track {
    display: flex;
    width: max-content;
    animation: scrollLeft 50s linear infinite;
}

#group-talk2026 .scroll-item {
    flex-shrink: 0;
    height: 545px;
}

#group-talk2026 .scroll-item img {
    height: 100%;
    width: auto;
    display: block;
}

.th-cow-8 {
    position: relative;
    width: 7%;
    margin: -9% 0 2% 24%;
    z-index: 5;
}

.recipe-title {
    position: relative;
}

.recipe-title::before {
    content: "";
    position: absolute;
    background-image: url(../img/thanks-cheese.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 222px;
    height: 146px;
    top: -180%;
    left: -2%;
}

.recipe-title::after {
    content: "";
    position: absolute;
    background-image: url(../img/thanks-milk.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 186px;
    height: 105px;
    top: -66%;
    right: -5%;
}

.recipe-wrap {
    position: relative;
    width: 1235px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.recipe-wrap dt {
    padding-top: 100px;
    width: 44%;
}

.recipe-wrap dd {
    width: 54%;
}

.chef-profile {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.chef {
    width: 24.8%;
}

.chef-profile-txt {
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
    color: #40220f;
    letter-spacing: 2px;
    padding-top: 1em;
}
.chef-profile-txt span {
    display: inline-block;
    margin-bottom: 0.25em;
}
.chef-profile::before,
.chef-profile::after {
    position: absolute;
    content: "";
    width: 3px;
    height: 6em;
    background-color: #40220f;
    bottom: 0;
}

.chef-profile::before {
    transform: rotate(-15deg);
    left: 7%;
}

.chef-profile::after {
    transform: rotate(15deg);
    right: 7%;
}

.recipe-title-2 {
    position: relative;
    padding-top: 0;
    margin-top: 0.5em;
}

.recipe-title-2::before,
.recipe-title-2::after {
    position: absolute;
    content: '';
    width: 6em;
    height: 3px;
    background-color: #40220f;
    top: 50%;
}

.recipe-title-2::before {
    left: 15%;
}

.recipe-title-2::after {
    right: 15%;
}

.recipe-list {
    margin-top: 30px;
}

.recipe-item {
    position: relative;
    margin-bottom: 50px;
    background-color: #82c8e6;
    border-radius: 1.5em;
    border: 5px solid #fff;
}

.recipe-list .recipe-btn {
    font-size: 22px;
    color: #fff;
    padding: 1.35em 1.7em;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    user-select: none;
}

.recipe-list .number {
    font-size: 132%;
}

.toggle-icon {
    position: relative;
    width: 1.6em;
    height: 1.6em;
    flex-shrink: 0;
}

.toggle-icon::before,
.toggle-icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.6em;
    height: 2px;
    background-color: #fff;
    cursor: pointer;
    transition: transform 0.4s ease;
}

.toggle-icon::before {
    transform: translate(-50%, -50%) rotate(0);
}

.toggle-icon::after {
    transform: translate(-50%, -50%) rotate(-90deg);
}

.toggle-icon.active::before {
    transform: translate(-50%, -50%) rotate(405deg);
}

.toggle-icon.active::after {
    transform: translate(-50%, -50%) rotate(315deg);
}

.recipe-content {
    position: relative;
    max-height: 0;
    overflow: hidden;
    transition: 0.4s ease-in-out;
    background-color: #fff;
    border-radius: 1.5em;
    width: 94%;
    margin: 0 auto;
    color: #704a1e;
}

.recipe-content.active {
    max-height: 9999px;
    margin: 0 auto 20px;
    padding: 40px 20px;
}

.recipe-sub-title {
    position: relative;
    font-size: 37px;
    line-height: 1.4;
    text-align: center;
    margin-bottom: 1.5em;
    font-weight: bold;
}

.recipe-sub-title::after {
    content: "";
    position: absolute;
    width: 85%;
    height: 1px;
    background-color: #704a1e;
    left: 50%;
    bottom: -0.5em;
    transform: translateX(-50%);
}

.shrimp {
    position: absolute;
    width: 27%;
    right: -3%;
    top: 9%;
}

.recipe-flexbox {
    display: flex;
    align-items: flex-start;
}

.recipe-left {
    width: 50%;
}

.recipe-brown-flex {
    display: flex;
    align-items: center;
}

.recipe-brown-box {
    font-size: 17.5px;
    width: 5em;
    background-color: #704a1e;
    color: #fff;
    text-align: center;
    border-radius: 0.5em;
    padding: 6px;
    margin-right: 0.8em;
}
.mgt1em{
    margin-top: 1em;
}
.recipe-serves {
    font-size: 17.5px;
}

.recipe-ingredients {
    margin-top: 0.8em;
    flex-grow: 1;
}
.ul_mgt0 .recipe-ingredients {
    margin-top: 0;
}
.recipe-ingredients li {
    display: flex;
    align-items: center;
    font-size: 20px;
    margin-bottom: 0.45em;
}
.ul_mgt0 .recipe-ingredients li:last-child  {
    margin-bottom: 0;
}

.recipe-ingredients .nakaguro {
    font-size: 50%;
    margin-right: 0.5em;
    flex-shrink: 0;
}

.recipe-ingredients-txt {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-grow: 1;
}

.toc-title {
    flex-shrink: 0;
    padding-right: 0.24em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.toc-dots {
    flex-grow: 1;
    border-bottom: 0.2em dotted #704a1e;
    margin: 0 0.24em;
    position: relative;
    bottom: 0.4em;
}

.toc-page {
    flex-shrink: 0;
    padding-left: 0.24em;
    font-variant-numeric: tabular-nums;
}

.recipe-products {
    display: block;
    width: 32%;
    color: #704a1e;
    margin-left: 8%;
    z-index: 9;
}
.recipe-products.pro-2nd {
    width: 30%;
    margin-left: 2%;
}
.recipe-products p {
    font-size: 15.5px;
    text-align: center;
    margin-top: 0.3em;
}

.recipe-steps {
    margin-top: 0.8em;
}

.recipe-steps li {
    font-size: 20px;
    text-indent: -1.3em;
    margin-left: 1.3em;
    line-height: 1.4;
}

.shrimp-tempura {
    width: 100%;
}

.recipe-note {
    font-size: 16px;
    text-align: right;
}
.recipe-note.left{
    text-align: left;
    margin-left: 1em;
    margin-top: 1.5em;
    text-indent: -1em;
    line-height: 1.5;
}
.recipe-note.mgt68{
    margin-top: 6.875em;
}
.recipe-product2{
    position: absolute;
    width: 52%;
    bottom: 4%;
    right: -4%;
}
.vertical-flex{
    display: flex;
    margin: 20px 0;
}
.vertical-box-wrapper {
    display: flex; 
    justify-content: center; 
    margin-right: 0.6em; 
    flex-shrink: 0;
}

.vertical-box{
    font-size: 13px;
    text-align: center;
    writing-mode: vertical-lr;
    border: 1.3px solid #704a1e;
    padding: 0.4em;
}
.recipe-ingredients.last{
    height: fit-content;
    transform: translateY(25%);
}
.recipe-left.pro-3rd{
    width: 58%;
}
.recipe-brown-title{
    position: relative;
    font-size: 20px;
    margin-top: 0.85em;
}
.recipe-brown-title::after {
     position: absolute;
    content: "";
    width: 71%;
    height: 6px; 
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background-color: transparent; 
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 100% 100%;
    background-image:url(../img/recipe-brown-title.svg);
}
.recipe-brown-title.line-2nd::after {
    width: 77%;
}
.recipe-fruit{
    position: absolute;
    width: 34.5%;
    bottom: 0;
    right: 0;
}
.recipe-pcoduct03{
    position: absolute;
    width: 41%;
    right: 0;
    top: 30%;
}
.bg-light-green {
    background-color: #a5d4ad;
    background-image: url(../img/thanks-paper-snow-6.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100%;
    padding: 50px 0;
}
#green-slider li:first-child {
    width: 39.3%;
    top: 0;
    left: 0;
}

#green-slider li:nth-child(2) {
    width: 35.7%;
    top: 0;
    right: 0;
}

#green-slider li:nth-child(3) {
    width: 35.7%;
    left: 13%;
    top: 42%;
}

#green-slider li:last-child {
    width: 35.7%;
    bottom: 21%;
    right: 11%;
}
.bg-light-green .thanks-wrap{
    max-width: 1280px;
}
.recreation2026-sub{
    position: absolute;
    width: 19.2%;
    left: 42%;
    top: -3%;
}
.th-cow-9 {
    position: relative;
    width: 101.5px;
    margin: -125px 0 0 16%;
    transform: translateY(105px);
    z-index: 2;
}
.staff-talk2026-sub{
    width: 557px;
    margin: 0 auto 23px 37%;
}
#staff-talk2026 .thanks-slider{
    height: 300px;
}
#blue-slider-2 li:first-child {
    width: 42%;
    top: 0;
    left: 6.5%;
}

#blue-slider-2 li:nth-child(2) {
    width: 40.9%;
    top: 0;
    right: 6.5%;
}


@keyframes scrollLeft {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}


@media (min-width: 768px) and (max-width: 1410px) {

    /* ボタンコンテナ */
    .tab-buttons {
        gap: 2.84vw;
        padding-left: 1.42vw;
    }

    /* ボタンの基本スタイル */
    .tab-btn {
        font-size: 2.55vw;
    }

    /* パネルの最初のサブセクション */
    .sub-section {
        padding-top: 4.96vw;
        margin-bottom: 3.55vw;
    }

    .sub-section .top-vedio {
        margin: 0 auto 2.5vw;
    }

    .flex-wrap-01 {
        width: 66.67vw;
    }

    .flex-wrap-01 ul a {
        width: 31.91vw;
    }

    #group-talk2026 .scroll-item {
        height: 38.65vw;
    }

    .recipe-title::before {
        width: 15.74vw;
        height: 10.35vw;
    }

    .recipe-title::after {
        width: 13.19vw;
        height: 7.45vw;
    }

    .recipe-wrap {
        width: 87.59vw;
    }

    .recipe-wrap dt {
        padding-top: 7.09vw;
    }

    .chef-profile-txt {
        font-size: 1.7vw;
    }

    .recipe-list {
        margin-top: 2.13vw;
    }

    .recipe-item {
        margin-bottom: 3.55vw;
    }

    .recipe-list .recipe-btn {
        font-size: 1.56vw;
    }

    .recipe-content.active {
        margin: 0 auto 1.42vw;
        padding: 2.84vw 1.42vw;
    }

    .recipe-sub-title {
        font-size: 2.62vw;
    }

    .recipe-brown-box {
        font-size: 1.24vw;
        padding: 0.43vw;
    }

    .recipe-serves {
        font-size: 1.24vw;
    }

    .recipe-ingredients li {
        font-size: 1.45vw;
    }

    .recipe-products p {
        font-size: 1.1vw;
    }

    .recipe-steps li {
        font-size: 1.45vw;
    }

    .recipe-note {
        font-size: 1.13vw;
    }
    .vertical-flex{
        margin: 1.42vw 0;
    }
    .vertical-box{
        font-size: 0.92vw;
    }
    .recipe-brown-title{
        font-size: 1.42vw;
    }
    .recipe-brown-title::after {
        height: 0.43vw; 
    }
    .bg-light-green {
        padding: 3.55vw 0;
    }
    .bg-light-green .thanks-wrap{
        max-width: 90%;
    }
    .th-cow-9 {
        width: 7.2vw;
        margin: -8.87vw 0 0 16%;
        transform: translateY(7.45vw);
    }
    .staff-talk2026-sub{
        width: 39.5vw;
        margin: 0 auto 1.63vw 37%;
    }
    #staff-talk2026 .thanks-slider{
        height: 21.28vw;
    }
}

@media screen and (max-width: 767px) {

    /* ボタンコンテナ */
    .tab-buttons {
        gap: 3vw;
        padding-left: 2vw;
    }

    /* ボタンの基本スタイル */
    .tab-btn {
        font-size: 4vw;
    }

    /* パネルの最初のサブセクション */
    .sub-section {
        padding-top: 10.33vw;
        margin-bottom: 5.33vw;
    }

    .sub-section .top-vedio {
        margin: 0 auto 8vw;
    }

    .flex-wrap-01 {
        width: 90%;
    }

    .flex-wrap-01 ul a {
        width: 100%;
    }

    #group-talk2026 .scroll-item {
        height: 75vw;
    }

    .th-cow-8 {
        width: 15%;
        margin: -15% 0 0% 24%;
        z-index: 5;
    }

    .recipe-title {
        line-height: 1.4;
    }

    .recipe-title::before {
        width: 33vw;
        height: 21.7vw;
        top: 100%;
        left: 10%;
    }

    .recipe-title::after {
        width: 27.5vw;
        height: 15.5vw;
        top: 150%;
        right: 10%;
    }

    .recipe-wrap {
        width: 90%;
        display: block;
    }

    .recipe-wrap dt {
        padding-top: 15vw;
        width: 100%;
        margin-bottom: 5vw;
    }

    .recipe-wrap dd {
        width: 100%;
    }

    .chef-profile {
        margin-bottom: 7vw;
    }

    .chef-profile-txt {
        font-size: 4.5vw;
        letter-spacing: 0;
    }

    .chef-profile::before {
        left: 2%;
    }

    .chef-profile::after {
        right: 2%;
    }

    .recipe-title-2 {
        position: relative;
    }


    .recipe-title-2::before {
        left: 5%;
    }

    .recipe-title-2::after {
        right: 5%;
    }

    .recipe-list {
        margin-top: 6.4vw;
    }

    .recipe-item {
        margin-bottom: 11vw;
    }

    .recipe-list .recipe-btn {
        font-size: 4.8vw;
    }

    .recipe-content.active {
        margin: 0 auto 4.4vw;
        padding: 8.8vw 4.4vw;
    }

    .recipe-sub-title {
        font-size: 6vw;
    }

    .recipe-sub-title::after {
        width: 100%;
    }

    .shrimp {
        top: 0;
        right: -5%;
    }

    .recipe-brown-box {
        font-size: 3.5vw;
        padding: 1.32vw;
    }

    .recipe-serves {
        font-size: 3.5vw;
    }

    .recipe-ingredients li {
        font-size: 3.5vw;
    }
    .recipe-products,
    .recipe-products.pro-2nd{
        width: 60%;
        margin: 5vw auto;
    }
    .recipe-products p {
        font-size: 4.5vw;
    }

    .recipe-steps li {
        font-size: 3.5vw;
    }
    .recipe-ingredients.last{
        transform: translateY(50%);
    }
    .recipe-note {
        font-size: 3.5vw;
        text-align: left;
        line-height: 1.4;
        margin-left: 1em;
        text-indent: -1em;
    }
    .recipe-flexbox{
        display: block;
    }
    .recipe-left,
    .recipe-left.pro-3rd{
        width: 100%;
    }
    .recipe-note.mgt68{
        margin-top: 19vw;
    }
    .recipe-product2{
        bottom: 6%;
        right: -6%;
    }
    .recipe-pcoduct03{
        position: relative;
        width: 60%;
    }
    .recipe-brown-title::after {
        width: 47%;
    }
    .recipe-brown-title.line-2nd::after {
        width: 58%;
    }
    .bg-light-green{
        background-image: url(../img/thanks-paper-snow-4_sp.png);
    }
    .bg-light-green .thanks-wrap{
        max-width: 90%;
    }
    .recreation2026-sub{
        position: relative;
        width: 36%;
        left: 50%;
        transform: translateX(-50%);
    }
    #recreation2026 .thanks-h3{
        margin-bottom: 5vw;
    }
    .th-cow-9 {
        width: 15%;
        margin: -11% 0 -7% 8%;
    }
    .staff-talk2026-sub{
        width: 75vw;
        margin: 5vw auto;
    }
    
    #staff-talk2026 .thanks-slider{
        height: auto;
    }
    #staff-talk2026 .thanks-h3 {
        margin-bottom: 2vw;
    }
    .recipe-fruit{
        width: 45%;
    }
    .vertical-flex{
        justify-content: space-between;
        width: 100%;
    }
    .vertical-box-wrapper{
        width: 8%;
        margin-right: 3%;
    }
    .recipe-ingredients{
        width: 89%;
    }
    .thanks-kaisai ul a.th-green {
        line-height: 3.2;
    }
    .thanks-content.pd-bottom{
        padding: 10.93vw 0 13vw;
    }
}