@charset "UTF-8";

body {
    margin: auto;
}

/* store */
/*position:stickey;を適用するために必須*/
.page-layout-1column,
.page-layout-2columns-left,
.page-layout-2columns-right,
.page-layout-1column-fullwidth {
    overflow-x: visible !important;
}

/* △▼△ kafun-feature26 △▼△ */

/* === lp all === */
.lp__wrap--para {
    text-align: center;
    padding-bottom: 50px;
    color: #5a524c;
    font-size: clamp(16px, 1.35vw, 22px);
}

.lp__wrap--para::before {
    background: url("../../../../img/event/kafun-feature/2025/bg.jpg");
    background-color: #fcf1d6;
    background-size: cover;
    background-position: top center;
    background-repeat: repeat;
}

.lp__wrap--para a,
.lp__wrap--para a:hover,
.lp__wrap--para a:visited {
    color: #5a524c;
}

@media screen and (max-width:768px) {

    .lp__wrap--para::before {
        background: url("../../../../img/event/kafun-feature/2025/sp_bg.jpg");
        background-color: #fcf1d6;
        background-size: contain;
        background-position: top center;
        background-repeat: repeat;
    }

}


/* === mv&feature-intro === */
.kafun-feature__wrap .mv--area {
    padding: 0 0 25px;
    text-align: center;
}

.kafun-feature__wrap .mv--area img {
    width: 100%;
}

.kafun-feature__wrap .feature__intro {
    padding: 0 20px 35px;
    margin: 0 auto 30px;
}

.kafun-feature__wrap .feature__intro p {
    color: #454545;
    text-align: center;
    padding-top: 25px;
}

@media screen and (max-width:768px) {

    .kafun-feature__mv--area {
        padding: 0 0 50px;
    }

    .kafun-feature__wrap .feature__intro {
        margin: auto;
        padding: 0 15px 35px;
    }

}

/* == navigation == */
.t-header {
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: auto;
    position: sticky;
    top: 0;
    padding: 10px 0px;
    width: 100%;
    background-color: #42c41e;
    margin: auto;
    z-index: 9;
}

.t-header .inner {
    margin: auto;
    max-width: 100%;
}

.t-header .flexbox {
    -ms-flex-align: center;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -webkit-box-pack: justify;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
}

.link-current {
    font-weight: bold;
    border-bottom: 4px solid #ffe500;
}

.nav-global div:last-child {
    margin-right: 0;
    border-right: none;
}

.nav-gloval-list {
    padding: 20px 35px;
    border-right: 5px dotted #fff;
}

.anchor-box::before {
    display: block;
    height: 61px;
    margin-top: -111px;
    content: "";
}

.flexbox a {
    color: #fff;
    text-decoration: none;
    background-color: #42c41e;
    font-size: clamp(20px, 1vw, 25px);
}

.flexbox a:hover,
.flexbox a:visited {
    color: #fff;
}

@media screen and (max-width:768px) {
    .t-header {
        flex-wrap: wrap;
        overflow: scroll;
        padding: 5px 0;
    }

    .t-header .flexbox {
        display: -webkit-inline-box !important;
    }

    .flexbox a {
        font-size: clamp(16px, 1vw, 25px);
    }

    .nav-gloval-list {
        padding: 10px 20px;
    }
}


/* === section all === */
.kafun-feature__wrap section {
    margin: 50px auto;
    padding: 50px 0;
}

@media screen and (max-width:768px) {

    .kafun-feature__wrap section {
        margin: 20px auto;
        scroll-margin-top: 65px;
    }

}


/* === ctg-All === */
#ichioshi .ctg__box,
#indoor .ctg__box {
    border: solid 5px #A0E15F;
    outline: solid 5px #A0E15F;
}

#outing .ctg__box,
#laundry .ctg__box {
    border: solid 5px #EDD537;
    outline: solid 5px #EDD537;
}

#outing .ctg__other .ttl::before,
#laundry .ctg__other .ttl::before,
#outing .ctg__other .ttl::after,
#laundry .ctg__other .ttl::after,
#indoor .ctg__other .ttl::before,
#indoor .ctg__other .ttl::after {
    display: block;
    width: calc(100% / 3);
    height: 50px;
    padding-top: 10px;
}

#outing .ctg__other .ttl::before,
#laundry .ctg__other .ttl::before,
#outing .ctg__other .ttl::after,
#laundry .ctg__other .ttl::after {
    content: url("../../../../img/event/kafun-feature/2026/title_line_yellow.png");
}

.ctg__box {
    max-width: 1200px;
    margin: auto;
    padding: 50px 30px;
    background-color: rgba(255, 255, 255, .85);
    outline-offset: 12px;
}

.ctg__ttl {
    max-width: 100%;
    margin: auto;
}

.ctg__intro {
    padding: 30px 0 0;
}

.ctg__intro p span {
    /* font-size: small; */
}

.ctg__pickup,
.ctg__other {
    margin: auto;
}

.ctg__other .ttl.dotted-line {
    display: flex;
    text-align: center;
    margin: 50px auto 25px;
}

.ctg__other .ttl p {
    font-size: clamp(22px, 1.65vw, 28px);
    font-weight: bold;
    min-width: calc(100% / 3);
    margin: auto;
}

.ctg__other .intro-txt p span {
    font-size: clamp(12px, 1.075vw, 18px);
}

.ctg__other .intro-txt p span {
    font-size: clamp(12px, 1.075vw, 18px);
}

.cp_cashback .ttl {
    font-size: clamp(15px, 3.0vw, 22px);
    color: #42c41e;
    margin: 1.5rem auto .25rem;
    font-weight: bold;
}

@media screen and (max-width:820px) {

    #outing .ctg__other .ttl::before,
    #laundry .ctg__other .ttl::before,
    #outing .ctg__other .ttl::after,
    #laundry .ctg__other .ttl::after {
        content: url("../../../../img/event/kafun-feature/2026/sp_title_line_yellow.png");
        margin: auto;
        width: calc(100% / 4.5);
    }

}

@media screen and (max-width:820px) {

    #ichioshi .ctg__box,
    #indoor .ctg__box {
        border: solid 3px #A0E15F;
        outline: solid 3px #A0E15F;
        outline-offset: 3px;
    }

    .ctg__other .ttl p {
        /* min-width: 100%; */
    }

    .ctg__other .ttl.dotted-line {
        margin: 25px auto 15px;
    }
}

@media screen and (max-width:768px) {

    .ctg__intro {
        padding: 15px 0 0;
    }

}

@media screen and (max-width:767px) {

    .pickup__item--btn {
        margin: auto;
        margin-top: 10px;
    }

    .ctg__box {
        padding: 20px 12px;
    }

    .ctg__ttl p {
        /* font-size: x-large; */
    }

    .ctg__pickup,
    .ctg__other {
        width: 100%;
    }

    .item__area {
        padding: 15px 0 0 0 !important;
    }

}

@media screen and (max-width:375px) {

    #outing .ctg__other .ttl::before,
    #laundry .ctg__other .ttl::before,
    #outing .ctg__other .ttl::after,
    #laundry .ctg__other .ttl::after,
    #indoor .ctg__other .ttl::before,
    #indoor .ctg__other .ttl::after {
        display: none;
    }
}


/* ichioshi */
#ichioshi .ctg__pickup .ttl img {
    width: 40%;
}

#ichioshi .ctg__pickup .pickup-detail {
    padding: 20px 0;
    /* margin-bottom: 30px; */
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_img {
    text-align: center;
    margin: auto;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_img img {
    box-shadow: 10px 10px 0 #a0e15f;
    width: 85%;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt {
    text-align: left;
    padding: 30px 20px 0 20px;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .name,
#ichioshi .ctg__pickup .pickup-detail .name {
    color: #42c41e;
    margin-bottom: .5rem;
}

#ichioshi .ctg__pickup .pickup-detail .name span,
#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .name span {
    font-size: clamp(22px, 1.95vw, 28px);
    font-weight: bold;
    letter-spacing: 1px;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .value {
    font-size: clamp(13px, 1.075vw, 18px);
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .value span {
    color: #f65e34;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .value span span {
    font-size: clamp(24px, 1.95vw, 28px);
    font-weight: bold;
    letter-spacing: 1px;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt ul.review>li {
    margin-bottom: .5rem;
}

#ichioshi .ctg__pickup .line {
    margin: 25px auto;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .allergyUK {
    margin: 25px auto;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .allergyUK img {
    width: 35%;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .allergyUK p {
    font-size: 13px;
    margin-top: .5rem;
}

/* Blocks */
#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn {
    position: relative;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn:has(#apBtn.is-show-copy)::before {
    content: '＼今なら2,500円キャッシュバック／';
    font-size: clamp(15px, 3.0vw, 22px);
    pointer-events: none;
    font-weight: bold;
    color: #f65e34;
    position: absolute;
    top: -10%;
    left: 7%;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn .is-show-copy img {
    margin: 17px auto auto;
}

#ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn img {
    margin: auto;
}


@media screen and (max-width:820px) {

    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt {
        text-align: center;
        padding: 15px 10px 0;
    }

    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .review {
        text-align: left;
    }

    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn a {
        width: 85%;
        margin: auto;
    }

    /* Blocks */
    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn:has(#apBtn.is-show-copy)::before {
        position: relative;
        top: 0;
        left: 0;
    }

    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .detailBtn .is-show-copy img {
        margin: auto;
    }

}

@media screen and (max-width:767px) {

    #ichioshi .ctg__pickup .ttl img {
        width: 100%;
    }

    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_img img {
        box-shadow: 4px 4px 0 #a0e15f;
        margin: auto auto 10px auto;
    }

    #ichioshi .ctg__pickup .pickup-detail .pickup-detail_txt .allergyUK img {
        width: 65%;
    }

}


/* outing & laundry */
#outing .ctg__other .ttl p,
#laundry .ctg__other .ttl p {
    color: #efab17;
}

@media screen and (max-width:820px) {

    #outing .ctg__box,
    #laundry .ctg__box {
        border: solid 3px #EDD537;
        outline: solid 3px #EDD537;
        outline-offset: 3px;
    }

}


/* indoor */
#indoor .ctg__other .ttl p {
    color: #42c41e;
}

#indoor .ctg__other .ttl::before,
#indoor .ctg__other .ttl::after {
    content: url("../../../../img/event/kafun-feature/2026/title_line_green.png");
}

#indoor .ctg__other .intro-txt.option {
    margin: 50px auto 25px;
}

#indoor .pickup-detail {
    padding: 20px 0;
    margin-bottom: 30px;
}

#indoor .pickup-detail .name {
    font-size: clamp(22px, 1.95vw, 28px);
    font-weight: bold;
    letter-spacing: 1px;
    color: #42c41e;
    margin-bottom: .5rem;
}

@media screen and (max-width:820px) {

    #indoor .ctg__other .ttl::before,
    #indoor .ctg__other .ttl::after {
        content: url("../../../../img/event/kafun-feature/2026/sp_title_line_green.png");
        margin: auto;
        width: calc(100% / 4.5);
    }

}


/* === column === */

.ctg-column {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
}

.ctg-column .ctg__box {
    max-width: none;
    padding: 0;
}

.ctg-column .ctg__ttl {
    margin: auto auto 15px;
    max-width: none;
    background: url("../../../../img/event/kafun-feature/2025/column_title_bg.jpg") repeat top center;
    text-align: center;
}

.ctg-column .ctg__ttl img {
    padding: 15px 0;
}

.ctg-column .item__area {
    display: flex;
}

.ctg-column .articles {
    border: 1px solid #ccc;
    border-radius: 1px;
    background: #fff;
    margin: 30px auto;
    /* height: 430px !important; */
}

.ctg-column .articles .detail {
    padding: 10px;
}

.ctg-column .articles.shampoo-review .detail {
    padding: 10px 10px 20px;
}

.ctg-column .articles .detail .ttl {
    font-weight: bold;
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: initial;
    white-space: unset;
    font-size: clamp(13px, 1.3vw, 17px);
}

@media screen and (max-width:768px) {

    .ctg-column .ctg__ttl {
        background: url("../../../../img/event/kafun-feature/2025/sp_column_title_bg.jpg") repeat top center;
    }

    .ctg-column .ctg__ttl img {
        width: 95%;
        padding: 0;
    }

}

@media screen and (max-width:767px) {

    .ctg-column .articles .detail {
        padding: 5px;
    }

    .ctg-column .articles.shampoo-review .detail {
        padding: 5px 5px 20px;
    }
}

@media screen and (max-width:541px) {

    .ctg-column .articles.shampoo-review .detail {
        padding: 5px;
    }
}


/*==================================================
スライダーのためのcss
===================================*/
.slider {
    max-width: 1080px;
    margin: 0 auto;
}

.slider img {
    width: 100%;
    height: auto;
}

.slider .slick-slide {
    margin: 0 10px;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
/* .slick-prev,
.slick-next {
    position: absolute;
    絶対配置にする
    top: 42%;
    cursor: pointer;
    マウスカーソルを指マークに
    outline: none;
    クリックをしたら出てくる枠線を消す
    border-top: 2px solid #666;
    矢印の色
    border-right: 2px solid #666;
    矢印の色
    height: 15px;
    width: 15px;
} */

.slick-prev {
    /* 戻る矢印の位置と形状 */
    left: -3.0%;
    transform: rotate(0deg);
    background: #ddd !important;
}

.slick-next {
    /* 次へ矢印の位置と形状 */
    right: -5.0%;
    transform: rotate(0deg);
    background: #ddd !important;
}

/*ドットナビゲーションの設定*/

.slick-dots {
    margin: -25px 0 0;
}

.slick-dots li {
    display: inline-block;
    margin: 0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width: 8px;
    /*ドットボタンのサイズ*/
    height: 8px;
    /*ドットボタンのサイズ*/
    display: block;
    border-radius: 50%;
    background: #ccc;
    /*ドットボタンの色*/
}

.slick-dots .slick-active button {
    background: #333;
    /*ドットボタンの現在地表示の色*/
}

@media screen and (max-width:1200px) {

    .slider {
        max-width: 90%;
    }

    .slider .slick-slide {
        margin: 0 5px 0 0;
    }

    .slick-list.draggable {
        width: 75%;
        margin: 0 auto -25px;
    }

    .slick-prev {
        /* 戻る矢印の位置と形状 */
        left: 5.0%;
    }

    .slick-next {
        /* 次へ矢印の位置と形状 */
        right: 6.0%;
    }

    .slick-dots {
        padding: 0 0 15px 0;
    }

}

@media screen and (max-width:769px) {

    .slider {
        max-width: 100%;
    }

    .slider .slick-slide {
        margin: 0 5px 0 0;
    }

    .slick-list.draggable {
        width: 75%;
        margin: 0 auto -25px;
    }

    .slick-prev {
        /* 戻る矢印の位置と形状 */
        left: 0.25%;
    }

    .slick-next {
        /* 次へ矢印の位置と形状 */
        right: 1.0%;
    }

    .slick-dots {
        padding: 0 0 15px 0;
    }

}



/* SKU */
/* 商品 */
@media screen and (max-width:1024px) {
    .item__area {
        max-width: 95%;
        margin: auto;
    }
}

@media screen and (max-width: 768px) {
    .item__area {
        max-width: 100%;
    }
}

.product-items {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center;
}

.page-layout-1column .block.widget .products-grid .product-item {
    background: #fff;
    margin: 10px;
    padding: 10px;
}

#ichioshi li.product-item,
#indoor li.product-item {
    border: 3px solid #C8EE9C;
    padding: 5px;
    border-radius: 2px;
    box-shadow: 0 0 5px #bbb;
    /* margin-bottom: 10px; */
}

#outing li.product-item,
#laundry li.product-item {
    border: 3px solid #EEDE9C;
    padding: 5px;
    border-radius: 2px;
    box-shadow: 0 0 5px #ddd;
    /* margin-bottom: 10px; */
}


.product-items .product-item .product-item-details a {
    font-size: clamp(13px, 1.3vw, 17px);
    font-weight: 700;
    color: #454545;
    line-height: 1.35;
}

.products-grid .price-box .price-wrapper .price {
    color: #e84c25;
}

#creative-area-lp .action.primary,
#creative-area-lp .action-primary {
    display: none;
}

.widget-product-grid .product-reviews-summary {
    display: none !important;
}

[data-content-type=row] li.product-item .action.primary,
[data-content-type=row] li.product-item .action-primary {
    text-align: center;
}

.product-items .product-item .product-item-details a {
    text-decoration: none;
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: initial;
    white-space: unset;
    margin-bottom: 0;
}


.products-grid .price-box .price-wrapper .price {
    font-size: clamp(19px, 1.75vw, 23px);
}

/* 2025/09/10 */
.products-grid .price-box .tax-label {
    font-size: clamp(13px, 1.15vw, 15px);
    color: #454545;
}

.product-items .product-item-info span.rewards__product-points,
.product-item-actions .actions-secondary,
.product-item-actions .actions-primary>form {
    display: none;
}

@media screen and (max-width: 768px) {

    .anchor-box::before {
        height: 9.2rem;
        margin-top: -9.2rem;
    }

    #creative-area-lp .action.primary,
    #creative-area-lp .action-primary {
        width: auto;
    }

    .product-items .product-item .product-item-details a {
        -webkit-line-clamp: 4;
    }

}

@media (min-width: 640px) {
    .products-grid .product-item-actions {
        margin: 0;
    }

}

/* 4列表示 */

.page-layout-1column .block.widget .products-grid .product-item {
    width: calc((100% - 8%) / 4);
}

@media (min-width: 769px),
print {

    .page-layout-1column .block.widget .products-grid .product-item:nth-child(3n+1) {
        margin-left: 0;
    }

}

@media (min-width: 1024px),
print {

    .page-layout-1column .block.widget .products-grid .product-item,
    .page-layout-1column .block.widget .products-grid .product-item:nth-child(4n+1) {
        margin-left: 0;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
    }

    /* .page-layout-1column .block.widget .products-grid .product-item {
        } */
}

@media screen and (max-width:1180px) {

    .page-layout-1column .block.widget .products-grid .product-item {
        width: calc((100% - 9.65%) / 4);
    }
}

@media screen and (max-width:1024px) {

    .page-layout-1column .block.widget .products-grid .product-item {
        /* height: 270px; */
    }
}

@media screen and (max-width:1023px) {
    .page-layout-1column .block.widget .products-grid .product-item {
        width: calc((100% - 8.5%) / 4);
        margin: 0 7px 15px !important;
        /* height: 250px; */
    }
}

@media screen and (max-width:767px) {
    .page-layout-1column .block.widget .products-grid .product-item {
        width: calc(100% / 2 - 10px);
        margin: 0 5px 10px !important;
    }

}

@media screen and (max-width:375px) {

    .page-layout-1column .block.widget .products-grid .product-item {
        /* height: 230px; */
    }
}

/* off % */
.discount-label {
    display: none;
}