/* 和粋庵 還暦祝いLP：ブランドカラー統一版（2026-10-20）
 * ベース：ユーザー提供 kanreki_samue_v8.css
 * ボタン・枠線・ホバー：#192E59
 * 文字：#333333 / #121212 / #666666
 * 面：#FFFFFF / #FAFAFA / #F5F5F5
 * 商品カラーチップの色と、レビューの星色は変更しない。
 * レイアウト・写真・アニメーションは元のCSSを保持。
 */
#kanreki_samue a{
    text-decoration: none !Important;
}
#kanreki_samue .container{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    text-decoration: none !important;
}
@media  screen and (max-width: 768px) {#kanreki_samue .container{
        text-align: left;
    }}
#kanreki_samue .hero-banner{
    padding: 2rem 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}
#kanreki_samue .hero-content{
    position: relative;
    z-index: 1;
}
#kanreki_samue .hero-text-content{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
    width: 100%;
}
#kanreki_samue .hero-title{
    background: transparent !important;
    font-size: 3rem;
    font-weight: bold;
    color: #192E59;
    margin-bottom: 1rem;
    opacity: 0;
    transform: translateY(20px);
    transition: all 1.5s ease;
    text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8);
}
#kanreki_samue .hero-subtitle{
    margin: 2rem 0;
    line-height: 160%;
    font-size: 1.6rem;
    color: #121212;
    letter-spacing: 0.1rem;
    opacity: 0;
    transform: translateY(20px);
    transition: all 1.5s ease;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
}
#kanreki_samue .hero-img{
    aspect-ratio: 16 / 9;
    width: 100%;
    object-fit: cover;
    opacity: 0;
    transform: translateY(20px);
    transition: all 1.5s ease;
}
#kanreki_samue .fade-in{
    opacity: 1 !important;
    transform: translateY(0) !important;
}
#kanreki_samue .fade-out{
    opacity: 0 !important;
    transform: translateY(-20px) !important;
}
@media  screen and (max-width: 768px) {#kanreki_samue .hero-banner{
        padding: 0;
    }
#kanreki_samue .hero-img{
        aspect-ratio: 3 / 4;
    }
#kanreki_samue .hero-title{
        font-size: 2.5rem;
    }}
#kanreki_samue .catchcopy{
    background: #fff;
    padding: 60px 0;
    text-align: center;
}
#kanreki_samue .catchcopy-text{
    display: block !important;
    font-size: 2.4rem !important;
    color: #192E59;
    font-weight: bold !important;
    margin-bottom: 2rem !important;
    height: auto !important;
    line-height: 160%;
}
#kanreki_samue .catchcopy-sub{
    font-size: 1.1rem;
    color: #333;
    max-width: 800px;
    margin: 0 auto 1rem;
    text-align: center;
    line-height: 200%;
    font-weight: normal;
}
@media  screen and (max-width: 768px) {#kanreki_samue .catchcopy{
        padding: 2rem 0rem !important;
    }
#kanreki_samue .catchcopy-sub{
        text-align: left;
        font-size: 1rem;
    }
#kanreki_samue .catchcopy-text{
        font-size: 1.4rem !important;
        text-align: left;
    }}
#kanreki_samue .brand-section{
    background: #fafafa;
    padding: 4rem 0;
}
#kanreki_samue .re-section-title{
    display: block !important;
    text-align: center;
    font-size: 2.2rem !important;
    color: #192E59;
    margin-bottom: 56px !important;
    position: relative;
    height: auto !important;
}
#kanreki_samue .re-section-title::after{
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 72px;
    height: 3px;
    background: #192E59;
}
#kanreki_samue .brand-content{
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
    font-size: 1.1rem;
    line-height: 2;
}
#kanreki_samue .brand-content p{
    margin-bottom: 2rem;
    color: #333;
    line-height: 200%;
    text-align: left;
}
#kanreki_samue .brand-images{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    margin: 2rem auto;
    max-width: 800px;
}
#kanreki_samue .brand-image{
    width: 100%;
    height: 250px;
    background: #F5F5F5;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 1rem;
    text-align: center;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease;
}
#kanreki_samue .brand-image img{
    width: 100%;
    height: 100%;
    border-radius: 16px;
    object-fit: cover;
}
#kanreki_samue .brand-image-caption{
    margin-top: 15px;
    font-size: 0.9rem;
    color: #666;
    font-weight: bold;
    text-align: center;
}
@media  screen and (max-width: 768px) {#kanreki_samue .brand-section{
        padding: 3rem 0 2rem !important;
    }
#kanreki_samue .brand-content p{
        width: 90%;
        margin: 0 auto;
    }
#kanreki_samue .brand-images{
        grid-template: none;
        gap: 1rem;
    }
#kanreki_samue .brand-image-caption{
        font-weight: normal;
    }
#kanreki_samue .re-section-title::after{
        bottom: -20px;
        width: 64px;
        height: 2px;
    }}
#kanreki_samue .featured-product{
    background: #fff;
    padding: 80px 0;
}
#kanreki_samue .product-card{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    max-width: 1000px;
    margin: 0 auto;
}
#kanreki_samue .product-image{
    width: 100%;
    height: 400px;
    background: #121212;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
#kanreki_samue .product-image img{
    width: 100%;
}
#kanreki_samue .product-info h3{
    font-size: 2rem;
    color: #121212;
    margin: 2rem 0;
    line-height: 120%;
}
#kanreki_samue .product-description{
    line-height: 1.8;
    margin-bottom: 1.2rem;
    color: #333;
}
#kanreki_samue .cta-button{
    display: inline-block;
    background: #192E59;
    color: white !important;
    padding: 15px 40px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(25, 46, 89, 0.22);
    text-decoration: none !important;
}
#kanreki_samue .cta-button:hover{
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(25, 46, 89, 0.30);
}
@media  screen and (max-width: 768px) {#kanreki_samue .featured-product{
        padding: 2rem 0 !important;
    }
#kanreki_samue .product-image{
        aspect-ratio: 3 / 4;
    }
#kanreki_samue .product-image img{
        height: 100%;
        object-fit: cover;
        object-position: left top;
    }
#kanreki_samue .product-description{
        text-align: left;
    }
#kanreki_samue .cta-button{
        width: 100%;
        padding: 1rem 0;
        margin: 1rem 0 2rem;
    }
#kanreki_samue .product-info{
        padding: 0 1rem;
    }
#kanreki_samue .product-info h3{
        font-size: 1.6rem;
    }
#kanreki_samue .product-card{
        grid-template-columns: 1fr;
        gap: 1rem;
        text-align: center;
    }}
#kanreki_samue .other-products{
    background:
        #f5f5f5;
    padding: 2rem;
}
#kanreki_samue .other-products h3{
    background: #fff;
    text-align: center;
    color: #333;
    margin: 1rem 0 2rem;
    font-size: 1.6rem;
    line-height: 120%;
}
#kanreki_samue .product-category{
    background: #fff;
    margin-bottom: 2rem;
    padding: 2rem 0;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}
#kanreki_samue .product-category02{
    background: #f5f5f5;
    margin-bottom: 0;
    padding: 2rem;
    border-radius: 0;
    box-shadow: unset;
}
#kanreki_samue .product-category02 h3{
    background: #f5f5f5;
    text-align: center;
    color: #333;
    margin: 1rem 0 2rem;
    font-size: 1.6rem;
    line-height: 120%;
}
#kanreki_samue .re-section-title{
    text-align: center;
    font-size: 2rem;
    margin-bottom: 3rem;
    color: #2c2c2c;
    position: relative;
}
#kanreki_samue .re-section-title::after{
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: #192E59;
}
#kanreki_samue .category-section{
    background: white;
    padding: 3rem 0;
    margin-bottom: 2rem;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
#kanreki_samue .category-title{
    text-align: center;
    font-size: 1.8rem;
    margin-bottom: 2rem;
    color: #4a4a4a;
    font-weight: 600;
}
#kanreki_samue .grade-title{
    font-weight: bold;
    font-size: 1rem;
    color: #333;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background-color: #e8e8e8;
    padding: 4px 20px;
    position: relative;
    background-repeat: no-repeat;
    background-position: 0px center;
    background-size: 100px auto;
}
#kanreki_samue .grade-title-komono{
    background: #192E59;
    color: #fff;
}
#kanreki_samue .grade-title img{
    height: 32px;
}
#kanreki_samue .grade01{
    background-image: url("https://wasuian.com/pic-labo/syou02.png");
    filter: grayscale(100%);
}
#kanreki_samue .grade02{
    background-image: url("https://wasuian.com/pic-labo/tiku02.png");
    filter: grayscale(100%);
}
#kanreki_samue .grade03{
    background-image: url("https://wasuian.com/pic-labo/bai02.png");
    filter: grayscale(100%);
}
#kanreki_samue .product-item:hover .grade01{
    filter: none;
    /* グレースケールを解除 */
}
#kanreki_samue .product-item:hover .grade02{
    filter: none;
    /* グレースケールを解除 */
}
#kanreki_samue .product-item:hover .grade03{
    filter: none;
    /* グレースケールを解除 */
}
#kanreki_samue .products-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
#kanreki_samue .product-item{
    position: relative;
}
#kanreki_samue .other-products-card{
    background: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-decoration: none;
    color: inherit;
    display: block;
}
#kanreki_samue .other-products-card:hover{
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
    text-decoration: none;
}
#kanreki_samue .product-item-image{
    width: 100%;
    height: 200px;
    background: linear-gradient(45deg, #ccc, #999);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
#kanreki_samue .product-item-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#kanreki_samue .product-item-info{
    padding: 20px 14px;
    text-align: center;
}
#kanreki_samue .product-item h4{
    color: #2c2c2c;
    margin: 0 0 10px 0;
    font-size: 1.1rem;
    font-weight: 600;
}
#kanreki_samue .product-item p{
    color: #666;
    font-size: 0.9rem;
    line-height: 1.4;
}
@media  screen and (max-width: 992px) {#kanreki_samue .products-grid{
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }}
@media  screen and (max-width: 768px) {#kanreki_samue .container{
        padding: 0 5px;
    }
#kanreki_samue .category-section{
        padding: 2rem 0;
        margin-bottom: 1.5rem;
    }
#kanreki_samue .products-grid{
        grid-template-columns: 1fr;
        gap: 15px;
    }
#kanreki_samue .re-section-title{
        font-size: 1.5rem;
        margin-bottom: 2rem;
    }
#kanreki_samue .category-title{
        font-size: 1.4rem;
    }}
#kanreki_samue .price-links{
    background: #fff;
    padding: 60px 0;
    text-align: center;
}
#kanreki_samue .price-buttons{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    max-width: 800px;
    margin: 40px auto 0;
}
#kanreki_samue .price-buttons a{
    line-height: 160%;
    text-decoration: none !important;
}
#kanreki_samue .price-01{
    font-size: 1.4rem;
    margin-bottom: 5px;
}
#kanreki_samue .price-02{
    font-size: 0.9rem;
    text-decoration: underline;
}
#kanreki_samue .price-button{
    background: white;
    border: 2px solid #192E59;
    color: #192E59;
    padding: 20px 20px 16px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: bold;
    transition: all 0.3s ease;
}
#kanreki_samue .price-button:hover{
    background: #192E59;
    color: white;
    transform: translateY(-5px) !important;
}
@media  screen and (max-width: 768px) {#kanreki_samue .price-links{
        padding: 2rem 0 !important;
    }}
#kanreki_samue .services{
    background: #f5f5f5;
    padding: 2rem;
}
#kanreki_samue .services-grid{
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 40px;
}
#kanreki_samue .service-card{
    background: white;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
}
#kanreki_samue .service-icon{
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #2a4d95, #192e59);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 2rem;
    font-weight: bold;
}
#kanreki_samue .service-text{
    margin: 0 auto;
    flex-grow: 1;
}
#kanreki_samue .service-text p{
    text-align: left;
    margin-bottom: 1rem;
    color: #333;
}
#kanreki_samue .service-card h4{
    color: #192E59;
    margin: 1rem auto;
    font-size: 1.3rem;
}
#kanreki_samue .services-row{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
}
#kanreki_samue .service-card--wide{
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 260px 1fr; /* 画像幅は好みで調整 */
  gap: 20px;
  align-items: center;
}
#kanreki_samue .service-card--wide .service-image img{
  width: 100%;
  height: auto;
  display: block;
}
#kanreki_samue .button-wrap{
    margin-top: auto;
    padding-top: 20px;
}
#kanreki_samue .service-detail-button{
    display: block;
    background: white;
    border: 2px solid #192E59;
    color: #192E59;
    padding: 10px 20px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: bold;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    text-align: center;
    text-decoration: none !important;
}
#kanreki_samue .service-detail-button:hover{
    background: #192E59;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(25, 46, 89, 0.20);
}
#kanreki_samue .embroidery-content{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    background: white;
    padding: 40px;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}
#kanreki_samue .embroidery-image{
    width: 100%;
    display: grid;
    gap: 24px;
}
#kanreki_samue .service-image{
    width: 100%;
    height: 240px;
    background: #F5F5F5;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
    font-weight: bold;
    text-align: center;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}
#kanreki_samue .service-image img{
    width: 100%;
}
#kanreki_samue .embroidery-info h4{
    color: #192E59;
    margin-bottom: 20px;
    font-size: 2rem;
    text-align: left;
}
#kanreki_samue .embroidery-info p{
    font-size: 1rem;
    line-height: 1.8;
    color: #333;
    margin-bottom: 25px;
}
@media  (max-width: 768px) {#kanreki_samue .services{
        padding: 2rem 1rem !important;
    }
#kanreki_samue .service-image{
        border-radius: unset;
        box-shadow: unset;
    width: 100%;
    height: auto;
    }
#kanreki_samue .embroidery-content{
        grid-template-columns: 1fr;
        gap: 20px;
        text-align: left;
        padding: 2rem;
    }
#kanreki_samue .embroidery-info h4{
        font-size: 1.5rem;
        text-align: center;
    }}
#kanreki_samue .testimonials{
    background: #fff;
    padding: 80px 0;
}
#kanreki_samue .testimonials-slider{
    margin-bottom: 50px;
    overflow: hidden;
    position: relative;
    border-radius: 15px;
}
#kanreki_samue .slider-img{
    display: flex;
    animation: slide 40s linear infinite;
    width: calc(240px * 24);
    /* 写真数 × 幅 */
}
#kanreki_samue .slider-item{
    flex: 0 0 240px;
    height: 320px;
    margin: 0 15px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease;
    position: relative;
}
#kanreki_samue .slider-item img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}
#kanreki_samue .slider-item:hover img{
    transform: scale(1.05);
}
#kanreki_samue .slider-item::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    transition: opacity 0.3s ease;
}
#kanreki_samue .slider-item:hover::after{
    opacity: 1;
}
@keyframes slide {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-240px * 12));
        /* 半分の位置まで移動 */
    }
}
#kanreki_samue .testimonials-grid{
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 40px;
    max-width: 1020px;
    margin-left: auto;
    margin-right: auto;
}
#kanreki_samue .testimonial{
    background: #f5f5f5;
    padding: 30px;
    border-radius: 15px;
    position: relative;
}
#kanreki_samue .testimonial::before{
    content: "★★★★★";
    font-size: 1.6rem;
    color: #D23F40;
    position: absolute;
    top: -14px;
    left: 20px;
    font-family: serif;
}
#kanreki_samue .testimonial-text{
    margin-bottom: 20px;
    font-style: italic;
    line-height: 1.8;
}
#kanreki_samue .testimonial-author{
    text-align: right;
    color: #666;
    font-weight: bold;
}
#kanreki_samue .testimonials-link{
    text-align: center;
    margin-top: 40px;
}
#kanreki_samue .testimonials-link a{
    text-decoration: none !important;
}
#kanreki_samue .testimonials-link-button{
    width: 40%;
    display: inline-block;
    background: white;
    border: 2px solid #192E59;
    color: #192E59;
    padding: 15px 30px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: bold;
    font-size: 1rem;
    transition: all 0.3s ease;
}
#kanreki_samue .testimonials-link-button:hover{
    background: #192E59;
    color: white;
}
@media  screen and (max-width: 768px) {#kanreki_samue .testimonials{
        padding: 2rem 0 !important;
    }
#kanreki_samue .testimonial{
        padding: 1.6rem 2rem;
    }
#kanreki_samue .testimonial::before{
        top: -20px;
    }
#kanreki_samue .testimonials-link{
        margin: 2rem 0 3rem;
    }
#kanreki_samue .testimonials-link-button{
        width: 100%;
        padding: 1rem 0;
        text-align: center;
    }
#kanreki_samue .slider-item{
        flex: 0 0 210px;
        height: 280px;
        margin: 0 12px;
        box-shadow: none;
    }}
@media  (max-width: 768px) {#kanreki_samue .hero-title{
        font-size: 2.5rem;
    }
#kanreki_samue .re-section-title{
        font-size: 1.6rem !important;
padding-top: 2em;
    }
#kanreki_samue .price-buttons{
        grid-template-columns: 1fr;
        text-align: center;
    }
#kanreki_samue .services-row{
        grid-template-columns: 1fr;
        gap: 20px;
    }
#kanreki_samue .service-card--wide{
    grid-column: auto;
    grid-template-columns: 1fr;
  }}
#kanreki_samue .media-section{
    background: #f5f5f5;
    padding: 2rem;
}
#kanreki_samue .media-grid{
    margin-top: 2rem;
}
#kanreki_samue .media-item{
    background: white;
    padding: 1.6rem;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    margin-bottom: 2rem;
    display: grid;
    grid-template-columns: 400px 1fr;
    gap: 20px;
    align-items: center;
}
#kanreki_samue .media-image{
    width: 100%;
    height: 80px;
    background: #F5F5F5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 0.9rem;
    text-align: center;
    overflow: hidden;
}
#kanreki_samue .media-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#kanreki_samue .media-content{
    width: 100%;
}
#kanreki_samue .media-content h4{
    color: #121212;
    font-size: 1rem;
    margin: 0.6rem 0 1rem;
    text-align: left;
    border-bottom: 1px solid #ccc;
    padding-bottom: 0.6rem;
}
#kanreki_samue .media-content p{
    color: #666;
    line-height: 1.6;
    margin: 0;
    font-size: 14px;
}
#kanreki_samue .media-link{
    text-align: center;
    margin-top: 40px;
}
#kanreki_samue .media-link a{
    text-decoration: none !important;
}
#kanreki_samue .media-image iframe{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#kanreki_samue .youtube-wrapper{
    position: relative;
    width: 100%;
    height: 100%;
    padding-bottom: 56.25%;
    /* 16:9のアスペクト比 */
    overflow: hidden;
}
#kanreki_samue .youtube-wrapper iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
#kanreki_samue .media-item .media-image{
    height: auto;
}
@media  screen and (max-width: 768px) {#kanreki_samue .media-section{
        padding: 2rem 1rem !important;
    }
#kanreki_samue .media-item{
        display: flex;
        flex-direction: column;
        padding: 20px;
    }
#kanreki_samue .media-content{
        width: 100%;
    }
#kanreki_samue .media-content h4{
        margin: 0 0 1rem 0;
        border-bottom: 1px solid #ccc;
        padding-bottom: 0.6rem;
        font-size: 1rem;
        display: flex;
        align-items: center;
        gap: 4px;
    }
#kanreki_samue .media-icon{
        display: none;
    }
#kanreki_samue .media-link{
        margin: 2rem 0 0;
    }
#kanreki_samue .media-item .media-image{
        height: auto;
    }}
#kanreki_samue .column-section{
    background: #fff;
    padding: 80px 0;
}
#kanreki_samue .column-intro{
    text-align: center;
    max-width: 600px;
    margin: 20px auto 50px;
}
#kanreki_samue .column-intro p{
    color: #666;
    font-size: 1.1rem;
    line-height: 1.8;
    text-align: center;
}
#kanreki_samue .column-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 40px;
    margin-top: 40px;
}
#kanreki_samue .column-item{
    background: #f5f5f5;
    padding: 40px 30px;
    border-radius: 15px;
    position: relative;
    border: 2px solid #192E59;
    transition: all 0.3s ease;
}
#kanreki_samue .column-item:hover{
    background: #f5f5f5;
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}
#kanreki_samue .column-number{
    position: absolute;
    top: -15px;
    left: 20px;
    background: #192E59;
    color: white;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.2rem;
}
#kanreki_samue .column-item h3{
    color: #192E59;
    font-size: 1.4rem;
    margin-bottom: 20px;
    margin-top: 10px;
}
#kanreki_samue .column-item p{
    color: #444;
    line-height: 1.8;
    margin-bottom: 15px;
}
#kanreki_samue .column-item p:last-child{
    margin-bottom: 0;
}
@media  screen and (max-width: 768px) {#kanreki_samue .column-section{
        padding: 2rem 0 !important;
    }
#kanreki_samue .column-grid{
        grid-template-columns: auto;
    }}
#kanreki_samue .column-footer{
    text-align: center;
    margin-top: 60px;
    border-radius: 10px;
}
#kanreki_samue .column-footer h4{
    font-size: 1.2rem;
    color: #192E59 !important;
    margin: 1rem 0 1.4rem;
}
#kanreki_samue .column-footer p{
    color: #121212;
    font-size: 1.2rem;
    line-height: 200%;
    margin: 0;
}
#kanreki_samue .column-footer02{
    background: #f5f5f5;
    padding: 2rem;
    border-radius: 12px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-top: 20px;
    font-size: 1rem;
    line-height: 1.8;
}
#kanreki_samue .column-footer02>div{
    border-right: 1px solid #ccc;
    padding-right: 40px;
}
#kanreki_samue .column-footer02>div:last-child{
    border-right: 0;
    padding-right: 0;
}
#kanreki_samue .column-footer02 p{
    font-size: 1.6rem;
    line-height: 120%;
    color: #333;
}
#kanreki_samue .column-footer02 span{
    font-size: 1rem;
    letter-spacing: normal;
}
#kanreki_samue .column-footer02 a{
    color: #192E59;
    text-decoration: none;
}
#kanreki_samue .column-footer02 a:hover{
    text-decoration: underline;
}
@media  (max-width: 768px) {#kanreki_samue .column-footer{
        margin-top: 40px;
    }
#kanreki_samue .column-footer h4{
        font-size: 1.2rem;
    }
#kanreki_samue .column-footer p{
        font-size: 1rem;
        line-height: 180%;
        padding: 0 1rem;
        text-align: left;
    }
#kanreki_samue .column-footer02{
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 1.5rem;
        text-align: center;
    }
#kanreki_samue .column-footer02>div{
        border-right: none;
        border-bottom: 1px solid #ccc;
        padding-right: 0;
        padding-bottom: 2rem;
    }
#kanreki_samue .column-footer02>div:last-child{
        border-bottom: 0;
        padding-bottom: 0.6rem;
    }
#kanreki_samue .column-footer02 h4{
        font-size: 1.1rem;
        margin: 0 0 15px;
    }
#kanreki_samue .column-footer02 p{
        font-size: 1.4rem !important;
        line-height: 140%;
        margin: 0;
        text-align: center;
        letter-spacing: 0.2rem !important;
    }
#kanreki_samue .column-footer02 p a{
        letter-spacing: normal !important;
    }
#kanreki_samue .column-footer02 span{
        font-size: 1rem;
        display: block;
        margin-top: 5px;
    }}
/* 還暦LP固有部分：退職祝いと共通するルールは上記を継承 */
#kanreki_samue { color:#333; }
#kanreki_samue * { box-sizing:border-box; }
#kanreki_samue img { max-width:100%; height:auto; }
#kanreki_samue .hero-img { opacity:0; transform:translateY(20px); }
#kanreki_samue .hero-subtitle { opacity:0; transform:translateY(20px); background:rgba(255,255,255,.82); padding:10px 20px; display:inline-block; }
#kanreki_samue .kan-note {text-align:center; font-size:13px; color:#777; margin:16px auto 0;}
#kanreki_samue .product-category {box-shadow:none;}
#kanreki_samue .product-item-image {height:290px;background:#f5f5f5;}
#kanreki_samue .product-item-image img {object-position:top center;}
#kanreki_samue .kan-photo-review {display:grid;grid-template-columns:280px 1fr;align-items:center;gap:30px;background:#f5f5f5;border-radius:15px;padding:28px;margin-bottom:30px;}
#kanreki_samue .kan-photo-review img {width:100%;max-height:440px;object-fit:contain;background:white;}
#kanreki_samue .kan-photo-review h3 {font-size:1.4rem;margin:0 0 15px;color:#192E59;}
#kanreki_samue .kan-photo-review p {font-size:1rem;line-height:1.9;margin:0 0 12px;}
#kanreki_samue .kan-photo-review .kan-small {font-size:.85rem;color:#666;}
#kanreki_samue .kan-real-review:before {content:none;}
#kanreki_samue .column-footer02 p { overflow-wrap:anywhere; }
#kanreki_samue .column-item a {color:#192E59;text-decoration:underline!important;}
@media(max-width:768px){
#kanreki_samue .hero-img {aspect-ratio: 4/3;object-position:55% center;}
#kanreki_samue .hero-subtitle {font-size:1.15rem;line-height:1.6;padding:6px 9px;}
#kanreki_samue .product-item-image {height:340px;}
#kanreki_samue .kan-photo-review {grid-template-columns:1fr;padding:18px;gap:18px;}
#kanreki_samue .column-item {padding:32px 20px;}
#kanreki_samue .column-grid {grid-template-columns:1fr;gap:28px;}
#kanreki_samue .brand-images {grid-template-columns:1fr;}
#kanreki_samue .services-row {grid-template-columns:1fr;}
#kanreki_samue .column-footer02 {grid-template-columns:1fr;}
}

#kanreki_samue .kan-review-product {font-size:1rem;font-weight:bold;color:#192E59;margin-bottom:14px;}
#kanreki_samue .kan-real-review .testimonial-author {font-size:.9rem;}

/* v5: 退職祝いLPのフェード演出・着用写真スライダー。すべて還暦LP内に限定 */
#kanreki_samue.kan-motion-ready .hero-subtitle { opacity:0; transform:translateY(20px); }
#kanreki_samue.kan-motion-ready .hero-img { opacity:0; transform:translateY(20px); }
#kanreki_samue .kan-reveal {opacity:0; transform:translateY(24px); transition:opacity .75s ease,transform .75s ease;}
#kanreki_samue .kan-reveal.kan-in-view {opacity:1;transform:translateY(0);}
#kanreki_samue .kan-photo-slider {margin:4px 0 8px;overflow:hidden;}
#kanreki_samue .kan-photo-slider .slider-img {width:max-content;animation:kanreki-slide 34s linear infinite;}
#kanreki_samue .kan-photo-slider .slider-item {flex:0 0 230px;width:230px;margin:0 10px;height:300px;}
#kanreki_samue .kan-photo-slider .slider-item img {width:100%;height:100%;object-fit:cover;object-position:top;}
#kanreki_samue .kan-photo-slider-caption {font-size:12px;color:#777;text-align:right;margin-bottom:24px;}
@keyframes kanreki-slide {from{transform:translateX(0)}to{transform:translateX(-1000px)}}
@media(max-width:768px){#kanreki_samue .kan-photo-slider .slider-item {flex-basis:200px;width:200px;height:260px;}}
@media(prefers-reduced-motion:reduce){
 #kanreki_samue .kan-photo-slider .slider-img {animation:none;}
 #kanreki_samue .kan-reveal {opacity:1;transform:none;transition:none;}
 #kanreki_samue .hero-img,#kanreki_samue .hero-subtitle {opacity:1!important;transform:none!important;}
}

@media(max-width:768px){@keyframes kanreki-slide {from{transform:translateX(0)}to{transform:translateX(-880px)}}}

/* v6: 袢纏のおすすめ（退職祝いLPと同じカード設計） */
#kanreki_samue .kan-hanten-section { padding-top: 3rem; }
#kanreki_samue .kan-hanten-section .kan-hanten-category-title {font-size:1.6rem; text-align:center; margin:0 0 2rem; color:#333; font-weight:500;;padding: 0.8rem; }
#kanreki_samue .kan-hanten-section .product-category {margin-bottom:2rem;}
#kanreki_samue .kan-hanten-section .product-item-image img {width:100%;height:100%;object-fit:cover;}
#kanreki_samue .kan-hanten-section .kan-image-error {background:#f5f5f5;}
#kanreki_samue .kan-hanten-section .kan-note {font-size:.85rem;color:#777;margin-top:1rem;}
@media(max-width:768px){#kanreki_samue .kan-hanten-section{padding-top:2rem;} #kanreki_samue .kan-hanten-section .kan-hanten-category-title {font-size:1.35rem;}}

/* v7：絣紬作務衣の8件着用事例。退職祝いLPの写真スライダーに準拠 */
#kanreki_samue .kan-kasuri-gallery{max-width:1020px;margin:48px auto 0;padding:0 4px;}
#kanreki_samue .kan-kasuri-heading{text-align:center;font-size:1.35rem;color:#192e59;margin:0 0 22px;}
#kanreki_samue .kan-kasuri-window{width:100%;overflow:hidden;outline-offset:4px;}
#kanreki_samue .kan-kasuri-track{display:flex;width:max-content;animation:kan-kasuri-marquee 48s linear infinite;}
#kanreki_samue .kan-kasuri-item{flex:0 0 200px;width:200px;margin:0 10px;display:block;text-decoration:none!important;color:#333;}
#kanreki_samue .kan-kasuri-item img{width:100%;height:260px;display:block;object-fit:cover;object-position:center top;border-radius:7px;}
#kanreki_samue .kan-kasuri-item span{display:block;margin-top:8px;font-size:.9rem;text-align:center;text-decoration:underline;text-underline-offset:3px;}
#kanreki_samue .kan-kasuri-footnote{text-align:center;color:#666;font-size:.9rem;margin:14px 0 0;}
#kanreki_samue .kan-kasuri-window:hover .kan-kasuri-track,
#kanreki_samue .kan-kasuri-window:focus-within .kan-kasuri-track{animation-play-state:paused;}
@keyframes kan-kasuri-marquee{from{transform:translateX(0)}to{transform:translateX(-1760px)}}
@media(max-width:768px){#kanreki_samue .kan-kasuri-gallery{margin-top:28px}#kanreki_samue .kan-kasuri-item{width:200px;flex-basis:200px}#kanreki_samue .kan-kasuri-heading{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){#kanreki_samue .kan-kasuri-track{animation:none}#kanreki_samue .kan-kasuri-window{overflow-x:auto}}

/* v8：おすすめ主商品画像のはみ出しと見出しへの重なりを修正 */
#kanreki_samue .featured-product .container { width:100%; max-width:1020px; }
#kanreki_samue .featured-product .re-section-title { position:relative; margin-bottom:56px !important; }
#kanreki_samue .featured-product .product-card {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center; gap:40px; max-width:1000px; margin:0 auto;
}
#kanreki_samue .featured-product .product-image {
  width:100%; height:400px; min-width:0; overflow:hidden;
  display:block; border-radius:15px; background:#f5f5f5;
}
#kanreki_samue .featured-product .product-image img {
  display:block; width:100%; height:100%; max-height:100%;
  object-fit:cover; object-position:center 28%;
}
#kanreki_samue .featured-product .product-info {min-width:0;}
/* ギャラリーは写真全体をクリック可能にし、写真下のリンク文言を出さない */
#kanreki_samue .kan-kasuri-item span {display:none !important;}
#kanreki_samue .kan-kasuri-item {line-height:0;}
#kanreki_samue .kan-kasuri-item img {display:block;}
@media(max-width:768px) {
  #kanreki_samue .featured-product .product-card {grid-template-columns:minmax(0,1fr);gap:20px;}
  #kanreki_samue .featured-product .product-image {height:auto; aspect-ratio:4/5;}
  #kanreki_samue .featured-product .product-image img {width:100%;height:100%;object-position:center 22%;}
  #kanreki_samue .featured-product .product-info {padding:0 12px;}
}
/* 色玉 */
.kanreki_colors {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    max-width: 170px;
    justify-self: center;
    padding-bottom: 15px;
}

.kanreki_colors .samue-cchip {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 0;
  border: 1px solid transparent;
  box-sizing: border-box;
}

.kanreki_colors .samue-cchip._color0001 {
  background: #fff;
  border-color: #999;
}

.kanreki_colors .samue-cchip._color0002 {
  background: #2b2b2b;
}

.kanreki_colors .samue-cchip._color0003 {
  background: #949495;
}

.kanreki_colors .samue-cchip._color0004 {
  background: #6f4b3e;
}

.kanreki_colors .samue-cchip._color0005 {
  background: #cbb994;
}

.kanreki_colors .samue-cchip._color0006 {
  background: #69821b;
}

.kanreki_colors .samue-cchip._color0007 {
  background: #2a83a2;
}

.kanreki_colors .samue-cchip._color0008 {
  background: #7a4171;
}

.kanreki_colors .samue-cchip._color0009 {
  background: #e6b422;
}

.kanreki_colors .samue-cchip._color0010 {
  background: #c97586;
}

.kanreki_colors .samue-cchip._color0011 {
  background: #c4353b;
}

.kanreki_colors .samue-cchip._color0012 {
  background: #e37c47;
}

.kanreki_colors .samue-cchip._color0016 {
  background: #393e4f;
}

/* レビュー */

.testimonial  {opacity: 1; transform: translateY(0px); transition: 0.6s;}


.testimonial::before {
    content: "★★★★★";
    font-size: 1.6rem;
    color: rgb(210, 63, 64);
    position: absolute;
    top: -14px;
    left: 20px;
    font-family: serif;
}

/* v9: 還暦祝いのギフト選び・SEO Q&A（既存の紺色デザインを継承） */
#kanreki_samue .kan-seo-cards .column-item {
  display: flex;
  flex-direction: column;
}
#kanreki_samue .kan-seo-cards .column-item .kan-seo-links {
  margin: auto 0 0;
  padding-top: 18px;
  font-size: 0.95rem;
  line-height: 1.65;
}
#kanreki_samue .kan-seo-cards .kan-seo-links a,
#kanreki_samue .kan-seo-related a {
  color: #192E59;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}
#kanreki_samue .kan-seo-cards .kan-seo-links a:hover,
#kanreki_samue .kan-seo-related a:hover {
  color: #121212;
}
#kanreki_samue .kan-seo-related {
  margin: 38px auto 0;
  padding: 20px 26px;
  background: #FAFAFA;
  border-left: 3px solid #192E59;
}
#kanreki_samue .kan-seo-related p {
  color: #333333;
  line-height: 1.85;
  margin: 0;
}
@media (max-width: 768px) {
  #kanreki_samue .kan-seo-related {margin-top: 28px; padding: 18px 16px;}
}

/* ルビ */
#kanreki_samue ruby rt {
    font-size: 0.3em;
    font-weight: normal;
    letter-spacing: 0;
    padding-bottom: 0.3em;
}


/* ========================================================================== 
   和粋庵 還暦祝いLP v10 $2014 吉川さんレビュー反映 (2026-10-21)
   - モバイル: 商品一覧外枠の白を解除し、左右余白・縦余白を均一に
   - 着用写真後: 作務衣／袢天／予算別のページ内リンク
   - 袢天: 商品シリーズで確認できた色のカラーチップを追加
   - 最下部: 補足の歳祝い説明を No.07 の横長カードに編入
   ブランド #192E59 を維持。元 v9 のCSSは削除せず上書きする。
   ========================================================================== */

/* 他のページには影響しないLP内限定の横幅・アンカー挙動 */
#kanreki_samue #kan-samue,
#kanreki_samue #kan-hanten,
#kanreki_samue #kan-price {scroll-margin-top:78px;}

/* 着用写真のすぐ下に置く、控えめなページ内ナビ */
#kanreki_samue .kan-quick-nav {
  width:min(100%, 860px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:28px auto 0;
  padding:0 18px;
}
#kanreki_samue .kan-quick-nav a {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.4em;
  min-height:52px;
  padding:12px 8px;
  border:1px solid #D9D9D9;
  background:#FAFAFA;
  border-radius:4px;
  font-weight:500;
  line-height:1.5;
  color:#192E59;
  text-align:center;
  text-decoration:none!important;
  transition:background .2s ease,border-color .2s ease;
}
#kanreki_samue .kan-quick-nav a:hover,
#kanreki_samue .kan-quick-nav a:focus-visible {
  background:#F5F5F5;
  border-color:#192E59;
}
#kanreki_samue .kan-quick-nav a span {font-size:.9em;}

/* 商品カードの外側の白い箱をなくし、ベース色と一体化 */
#kanreki_samue .other-products .product-category {
  background:transparent;
  border-radius:0;
  box-shadow:none;
  padding:0;
  margin:0 0 34px;
}
#kanreki_samue .other-products .product-category:last-child {margin-bottom:0;}
#kanreki_samue .other-products .other-products-card {background:#FFFFFF;}

/* 袢天: 色玉をほかの作務衣カードに合わせた見え方に */
#kanreki_samue .kan-hanten-section .product-item-info {
  display:flex;
  flex-direction:column;
  align-items:center;
  min-height:146px;
}
#kanreki_samue .kan-hanten-section .product-item-info h4 {
  min-height:2.8em;
  display:flex;
  align-items:center;
  justify-content:center;
}
#kanreki_samue .kanreki_colors {margin:0 auto;justify-content:center;}
#kanreki_samue .kan-hanten-colors {min-height:24px;padding-bottom:8px;}
#kanreki_samue .kan-hanten-section .product-item-info p {margin-top:auto;}
#kanreki_samue .kan-chip--navy {background:#192E59;}
#kanreki_samue .kan-chip--iron {background:#334B5E;}
#kanreki_samue .kan-chip--gray {background:#949495;}
#kanreki_samue .kan-chip--brown {background:#6F4B3E;}
#kanreki_samue .kan-chip--green {background:#69821B;}
#kanreki_samue .kan-chip--black {background:#2B2B2B;}
#kanreki_samue .kan-chip--wine {background:#963D50;}
#kanreki_samue .kan-chip--pink {background:#C97586;}
#kanreki_samue .kan-chip--blue {background:#375782;}

/* No.07 はPCで2列を横断。スマホでは他のカードと同じ幅・意匠 */
#kanreki_samue .kan-seo-cards .column-item--wide {grid-column:1 / -1;}
#kanreki_samue .kan-seo-cards .column-item--wide p {max-width:unset;}

@media screen and (max-width:768px) {
  /* 共通余白: 不要な上下の空白を減らし、左右24pxに統一 */
  #kanreki_samue .container {width:100%;padding-left:24px;padding-right:24px;}
  /* ヒーロー写真は既存どおりフル幅で表示 */
  #kanreki_samue .hero-banner .container {padding-left:0;padding-right:0;}
  #kanreki_samue .re-section-title {
    padding-top:0!important;
    margin-top:0!important;
    margin-bottom:32px!important;
    font-size:1.6rem!important;
    line-height:1.45;
  }
  #kanreki_samue .re-section-title::after {bottom:-11px;width:56px;height:2px;}

  /* ブランド紹介: テキストの両端と縦余白を見直す */
  #kanreki_samue .brand-section {padding:42px 0 38px!important;}
  #kanreki_samue .brand-content {width:100%;font-size:1rem;line-height:1.85;}
  #kanreki_samue .brand-content p {
    width:100%;
    margin:0 0 24px;
    padding:0;
    line-height:1.9;
  }
  #kanreki_samue .brand-images {margin:0 auto;gap:22px;}
  #kanreki_samue .brand-image {height:auto;aspect-ratio:4/3;box-shadow:none;border-radius:8px;}
  #kanreki_samue .brand-image img {border-radius:8px;}
  #kanreki_samue .brand-image-caption {margin-top:8px;}

  /* スマホ商品エリア: 背景は淡いグレー、カード間隔は一定 */
  #kanreki_samue .other-products {padding:42px 0 38px!important;background:#F5F5F5;}
  #kanreki_samue .other-products .container {padding-left:24px;padding-right:24px;}
  #kanreki_samue .other-products .product-category {padding:0;margin:0 0 36px;}
  #kanreki_samue .other-products .products-grid {grid-template-columns:minmax(0,1fr);gap:20px;}
  #kanreki_samue .other-products .other-products-card {
    border-radius:9px;
    box-shadow:0 3px 12px rgba(0,0,0,.07);
  }
  #kanreki_samue .other-products .product-item-image {
    height:auto;
    aspect-ratio:1/1;
    background:#F5F5F5;
  }
  #kanreki_samue .other-products .product-item-info {padding:17px 14px 15px;}
  #kanreki_samue .other-products .product-item h4 {font-size:1.03rem;line-height:1.5;}
  #kanreki_samue .kan-hanten-section .kan-hanten-category-title {
    font-size:1.25rem;
    font-weight:500;
    margin:0 0 18px;
    padding:8px 0;
    background:#E8E8E8;
  }
  #kanreki_samue .kan-hanten-section .product-item-info {min-height:138px;}

  /* 写真後のリンクはモバイルでも3分割、無理な幅詰めを防ぐ */
  #kanreki_samue .kan-quick-nav {
    padding:0 24px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    margin:23px auto 0;
  }
  #kanreki_samue .kan-quick-nav a {min-height:56px;padding:8px 4px;font-size:12px;gap:.15em;}

  /* 全体的に余白が大きく感じるSEO案内: 07を通常カードに揃える */
  #kanreki_samue .column-section {padding:45px 0 40px!important;}
  #kanreki_samue .column-grid {gap:22px;margin-top:30px;}
  #kanreki_samue .column-item {padding:30px 22px 24px;border-radius:8px;}
  #kanreki_samue .kan-seo-cards .column-item--wide {grid-column:auto;}
  #kanreki_samue .column-intro {margin:0 auto 25px;}
  #kanreki_samue .column-intro p {font-size:1rem;text-align:left;line-height:1.75;}
}
