@charset "utf-8";
/* CSS Document */
/* --- 基本設定 --- */
.lp26-feature-wrapper {
    font-family: 'Noto Sans JP', 'Noto Serif JP', serif;
    color: #333; line-height: 1.6; overflow-x: hidden; margin-bottom: 100px;
}
/* .lp26-reveal { opacity: 0; transform: translateY(20px); transition: all 1s ease-out; } */
.lp26-reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 1s ease-out, transform 1s ease-out;
    will-change: opacity, transform;
}
.lp26-reveal.active { opacity: 1; transform: translateY(0); }
.lp26-divider { border: none; border-top: 2px solid #222; width: 80px; margin: 60px auto; }
.lp26-sp-only { display: none; }

/* --- [PC] レイアウト --- */
.lp26-main-visual { padding: 40px 5%; text-align: center; }
.lp26-mv-img { width: 100%; max-width: 1200px; height: auto; display: block; margin: 0 auto; }
.lp26-introduction { text-align: center; padding: 80px 5% 40px; }
.lp26-sub-title { display: block; font-size: 1.4rem; letter-spacing: 0.3em; margin-bottom: 20px; color: #666; }
.lp26-main-copy { font-size: 4.5rem; font-family: 'Noto Serif JP', serif; font-weight: 700; margin-bottom: 30px; line-height: 1.2; }
.lp26-intro-text { font-size: 1.6rem; color: #444; line-height: 2.0; }

.lp26-product-item { max-width: 1100px; margin: 0 auto 120px; padding: 0 5%; text-align: center; }
.lp26-tag { color: #888; font-size: 1.2rem; margin-right: 5px; }
.lp26-product-title { font-size: 3.5rem; font-family: 'Noto Serif JP', serif; font-weight: bold; margin: 15px 0; }
.lp26-product-price { font-size: 2.5rem; font-weight: normal; margin-bottom: 40px; }
.lp26-main-img { width: 60%; max-width: 700px; height: auto; margin-bottom: 50px; }
.lp26-catchphrase { font-size: 1.8rem; font-weight: bold; margin-bottom: 20px; }
.lp26-detail-text { font-size: 1.6rem; margin-bottom: 50px; }

.lp26-gallery-inner { display: flex; justify-content: center; gap: 20px; margin-bottom: 50px; }
.lp26-gallery-item { flex: 1; }
.lp26-gallery-item img { width: 100%; display: block; }

/* --- ボタン共通パーツ（矢印） --- */
.lp26-btn-icon {
    position: relative;
    display: inline-block;
    width: 30px; /* 矢印の長さ */
    height: 1px;
    background-color: currentColor; /* 文字の色に自動で合わせる */
    margin-left: 15px;
    vertical-align: middle;
    transition: transform 0.3s ease;
}
.lp26-btn-icon::after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 6px;
    height: 6px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
}

/* --- [PC] 黒ボタン --- */
.lp26-btn-primary {
    display: inline-flex; align-items: center; justify-content: center;
    background: #000; color: #fff !important;
    padding: 20px 50px; font-size: 1.8rem; font-weight: bold; text-decoration: none; transition: 0.3s;
}
.lp26-btn-primary:hover { background: #333; }
.lp26-btn-primary:hover .lp26-btn-icon { transform: translateX(8px); } /* 矢印が動く */

/* --- [PC] 白ボタン（ALL ITEM） --- */
.lp26-all-item-section { text-align: center; padding: 60px 5% 120px; }
.lp26-btn-outline {
    display: inline-flex; align-items: center; justify-content: center;
    background: #fff; color: #000 !important; border: 2px solid #000;
    padding: 22px 70px; font-size: 1.8rem; font-weight: bold; text-decoration: none;
    letter-spacing: 0.1em; transition: 0.3s;
}
.lp26-btn-outline:hover { background: #000; color: #fff !important; }
.lp26-btn-outline:hover .lp26-btn-icon { transform: translateX(8px); }

/* --- [SP] 767px以下 --- */
@media (max-width: 767px) {
    .lp26-sp-only { display: inline; }
    .lp26-introduction { padding: 60px 5% 30px; }
    .lp26-main-copy { font-size: 4.0rem; }
    .lp26-intro-text { font-size: 1.4rem; }
    
    .lp26-main-visual { aspect-ratio: 1080 / 1350; padding: 0; } 
	.lp26-mv-img {
        width: 100%;
        height: auto;
        display: block;
    }
    .lp26-product-main-visual { padding: 0 5% 40px; }
    .lp26-main-img { width: 100%; }
    .lp26-product-header, .lp26-product-description { padding: 0 5%; }
    .lp26-product-title { font-size: 2.6rem; font-weight: bold; }

    /* ギャラリースクロール */
    .lp26-gallery-container { margin: 0; padding: 0 0 10px 5%; overflow-x: auto; display: block; -webkit-overflow-scrolling: touch; }
    .lp26-gallery-container::-webkit-scrollbar { display: none; }
    .lp26-gallery-inner { display: flex; width: max-content; padding-right: 5%; gap: 15px; }
    .lp26-gallery-item { width: 80vw; flex: none; }

    /* SPボタン調整（中央揃え・サイズ） */
    .lp26-product-action, .lp26-all-item-section { padding: 0 5%; margin-top: 50px; text-align: center; box-sizing: border-box; }
    .lp26-all-item-section { margin-top: 30px; padding-bottom: 80px; }
    
    .lp26-btn-primary, .lp26-btn-outline { 
        display: flex; width: 100%; margin: 0 auto; padding: 18px; 
        font-size: 1.5rem; box-sizing: border-box; 
    }
    .lp26-btn-icon { width: 20px; margin-left: 10px; } /* SPでは少し矢印を短く */
}
