.elementor-2 .elementor-element.elementor-element-273594a{--display:flex;--min-height:826px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.5;}.elementor-2 .elementor-element.elementor-element-273594a:not(.elementor-motion-effects-element-type-background), .elementor-2 .elementor-element.elementor-element-273594a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://store.roadrunner.jp/wp-content/uploads/2025/11/45464512312332-scaled.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2 .elementor-element.elementor-element-273594a::before, .elementor-2 .elementor-element.elementor-element-273594a > .elementor-background-video-container::before, .elementor-2 .elementor-element.elementor-element-273594a > .e-con-inner > .elementor-background-video-container::before, .elementor-2 .elementor-element.elementor-element-273594a > .elementor-background-slideshow::before, .elementor-2 .elementor-element.elementor-element-273594a > .e-con-inner > .elementor-background-slideshow::before, .elementor-2 .elementor-element.elementor-element-273594a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-2 .elementor-element.elementor-element-7ae35d1{--display:flex;--justify-content:center;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2 .elementor-element.elementor-element-75ff885{text-align:center;}.elementor-2 .elementor-element.elementor-element-e77bdee{--display:flex;--min-height:826px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.5;}.elementor-2 .elementor-element.elementor-element-e77bdee:not(.elementor-motion-effects-element-type-background), .elementor-2 .elementor-element.elementor-element-e77bdee > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://store.roadrunner.jp/wp-content/uploads/2025/11/45464512312332-scaled.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2 .elementor-element.elementor-element-e77bdee::before, .elementor-2 .elementor-element.elementor-element-e77bdee > .elementor-background-video-container::before, .elementor-2 .elementor-element.elementor-element-e77bdee > .e-con-inner > .elementor-background-video-container::before, .elementor-2 .elementor-element.elementor-element-e77bdee > .elementor-background-slideshow::before, .elementor-2 .elementor-element.elementor-element-e77bdee > .e-con-inner > .elementor-background-slideshow::before, .elementor-2 .elementor-element.elementor-element-e77bdee > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-2 .elementor-element.elementor-element-95b58ff{--display:flex;--justify-content:center;}.elementor-2 .elementor-element.elementor-element-5330d1e{text-align:center;}.elementor-2 .elementor-element.elementor-element-a2bdd9e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-a2bdd9e:not(.elementor-motion-effects-element-type-background), .elementor-2 .elementor-element.elementor-element-a2bdd9e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;}.elementor-2 .elementor-element.elementor-element-cfa1730{--display:flex;}.elementor-2 .elementor-element.elementor-element-f055829{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-f055829:not(.elementor-motion-effects-element-type-background), .elementor-2 .elementor-element.elementor-element-f055829 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;}.elementor-2 .elementor-element.elementor-element-2b5617c{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2 .elementor-element.elementor-element-cdeb29d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-cdeb29d:not(.elementor-motion-effects-element-type-background), .elementor-2 .elementor-element.elementor-element-cdeb29d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;}.elementor-2 .elementor-element.elementor-element-dc7647a{--display:flex;}.elementor-2 .elementor-element.elementor-element-e6c542a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-e6c542a:not(.elementor-motion-effects-element-type-background), .elementor-2 .elementor-element.elementor-element-e6c542a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;}.elementor-2 .elementor-element.elementor-element-dd43527{--display:flex;}.elementor-2 .elementor-element.elementor-element-4be3e1c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-bbf7c05{--display:flex;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-2 .elementor-element.elementor-element-e77bdee{--min-height:424px;}}@media(min-width:768px){.elementor-2 .elementor-element.elementor-element-7ae35d1{--width:100%;}.elementor-2 .elementor-element.elementor-element-95b58ff{--width:100%;}}/* Start custom CSS for text-editor, class: .elementor-element-75ff885 *//* ベースのリセットと設定 */
    .rr-hero-container {
        font-family: 'Montserrat', sans-serif;
        text-align: center;
        padding: 0 1rem;
        position: relative;
        z-index: 10;
        /* 背景画像の上に文字が見えるように影をつける */
        text-shadow: 0 2px 10px rgba(0,0,0,0.3);
        width: 100%;
        box-sizing: border-box;
    }

    /* サブタイトル (The Spirit of Japan) */
    .rr-hero-subtitle {
        color: #C5A05B; /* brand-gold */
        letter-spacing: 0.2em; /* スマホでは少し詰める */
        text-transform: uppercase;
        font-size: 0.75rem; /* 12px */
        margin-bottom: 1rem;
        display: block;
        /* パルスアニメーション */
        animation: rr-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    }

    /* メインタイトル (日本語キャッチコピー) */
    .rr-hero-title {
        color: #ffffff;
        font-family: 'Noto Serif JP', serif;
        font-weight: 700;
        
        /* --- 修正: スマホでのサイズ調整 --- */
        font-size: 2rem; /* 32px: 画面幅に収まるように縮小 */
        line-height: 1.5;
        margin-bottom: 1.5rem;
        
        /* 文節の途中で改行されないようにする設定 */
        word-break: keep-all; 
        overflow-wrap: break-word;
        
        /* ドロップシャドウ */
        filter: drop-shadow(0 10px 8px rgb(0 0 0 / 0.2));
    }

    /* 説明文 */
    .rr-hero-desc {
        color: #d1d5db; /* gray-300 */
        font-weight: 300;
        line-height: 1.8;
        margin-bottom: 2.5rem;
        max-width: 32rem;
        margin-left: auto;
        margin-right: auto;
        font-size: 0.875rem; /* 14px */
    }

    /* ボタン (COLLECTION) */
    .rr-hero-btn {
        display: inline-block;
        background-color: #B22222; /* brand-red */
        color: #ffffff;
        padding: 0.8rem 2rem; /* スマホでは少し小さめに */
        font-size: 0.75rem;
        letter-spacing: 0.2em;
        text-decoration: none;
        transition: all 0.3s ease;
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    }

    /* ボタンのホバー効果 */
    .rr-hero-btn:hover {
        background-color: #b91c1c;
        transform: translateY(-2px);
        color: #ffffff;
    }

    /* アニメーション定義 */
    @keyframes rr-pulse {
        0%, 100% { opacity: 1; }
        50% { opacity: .5; }
    }

    /* --- PC・タブレット用 (画面幅 768px以上) の設定 --- */
    @media (min-width: 768px) {
        .rr-hero-subtitle {
            font-size: 1rem;
            letter-spacing: 0.3em;
        }
        
        .rr-hero-title {
            font-size: 4.5rem; /* PCでは大きく戻す */
            line-height: 1.2;
        }

        .rr-hero-desc {
            font-size: 1rem;
        }

        .rr-hero-btn {
            padding: 1rem 2rem;
            font-size: 0.875rem;
        }
    }/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-5330d1e *//* ベースのリセットと設定 */
    .rr-hero-container {
        font-family: 'Montserrat', sans-serif;
        text-align: center;
        padding: 0 1rem;
        position: relative;
        z-index: 10;
        /* 背景画像の上に文字が見えるように影をつける */
        text-shadow: 0 2px 10px rgba(0,0,0,0.3);
        width: 100%;
        box-sizing: border-box;
    }

    /* サブタイトル (The Spirit of Japan) */
    .rr-hero-subtitle {
        color: #C5A05B; /* brand-gold */
        letter-spacing: 0.2em; /* スマホでは少し詰める */
        text-transform: uppercase;
        font-size: 0.75rem; /* 12px */
        margin-bottom: 1rem;
        display: block;
        /* パルスアニメーション */
        animation: rr-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    }

    /* メインタイトル (日本語キャッチコピー) */
    .rr-hero-title {
        color: #ffffff;
        font-family: 'Noto Serif JP', serif;
        font-weight: 700;
        
        /* --- 修正: スマホでのサイズ調整 --- */
        font-size: 2rem; /* 32px: 画面幅に収まるように縮小 */
        line-height: 1.5;
        margin-bottom: 1.5rem;
        
        /* 文節の途中で改行されないようにする設定 */
        word-break: keep-all; 
        overflow-wrap: break-word;
        
        /* ドロップシャドウ */
        filter: drop-shadow(0 10px 8px rgb(0 0 0 / 0.2));
    }

    /* 説明文 */
    .rr-hero-desc {
        color: #d1d5db; /* gray-300 */
        font-weight: 300;
        line-height: 1.8;
        margin-bottom: 2.5rem;
        max-width: 32rem;
        margin-left: auto;
        margin-right: auto;
        font-size: 0.875rem; /* 14px */
    }

    /* ボタン (COLLECTION) */
    .rr-hero-btn {
        display: inline-block;
        background-color: #B22222; /* brand-red */
        color: #ffffff;
        padding: 0.8rem 2rem; /* スマホでは少し小さめに */
        font-size: 0.75rem;
        letter-spacing: 0.2em;
        text-decoration: none;
        transition: all 0.3s ease;
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    }

    /* ボタンのホバー効果 */
    .rr-hero-btn:hover {
        background-color: #b91c1c;
        transform: translateY(-2px);
        color: #ffffff;
    }

    /* アニメーション定義 */
    @keyframes rr-pulse {
        0%, 100% { opacity: 1; }
        50% { opacity: .5; }
    }

    /* --- PC・タブレット用 (画面幅 768px以上) の設定 --- */
    @media (min-width: 768px) {
        .rr-hero-subtitle {
            font-size: 1rem;
            letter-spacing: 0.3em;
        }
        
        .rr-hero-title {
            font-size: 4.5rem; /* PCでは大きく戻す */
            line-height: 1.2;
        }

        .rr-hero-desc {
            font-size: 1rem;
        }

        .rr-hero-btn {
            padding: 1rem 2rem;
            font-size: 0.875rem;
        }
    }/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-805bb97 *//* セクション全体のコンテナ */
    .rr-concept-section {
        background-color: #111111; /* brand-black */
        
        /* --- 修正: スマホでの上下余白を縮小 (6rem -> 3rem) --- */
        padding: 3rem 1.5rem;
        
        color: #ffffff;
        font-family: 'Montserrat', sans-serif;
        position: relative;
    }

    .rr-container {
        max-width: 1200px;
        margin: 0 auto;
    }

    /* フレックスボックス（PCで横並び、スマホで縦並び） */
    .rr-flex-wrapper {
        display: flex;
        flex-direction: column;
        
        /* --- 修正: スマホでの要素間隔を縮小 (3rem -> 2rem) --- */
        gap: 2rem;
        
        align-items: center;
    }

    /* --- 左側：画像エリア --- */
    .rr-image-area {
        width: 100%;
        position: relative;
        
        /* --- 修正: スマホでは画像の高さを少し抑える (500px -> 300px程度) --- */
        height: 300px;
        
        /* ホバー時の効果用 */
        overflow: hidden; 
    }

    .rr-concept-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 2px;
        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
        filter: brightness(0.75); /* 少し暗くする */
        transition: all 0.7s ease;
    }
    
    /* ホバー時に画像を明るく */
    .rr-image-area:hover .rr-concept-img {
        filter: brightness(1);
    }

    /* 装飾：右下の枠線 */
    .rr-deco-frame {
        position: absolute;
        bottom: -1.5rem;
        right: -1.5rem;
        width: 12rem;
        height: 12rem;
        border: 1px solid rgba(197, 160, 91, 0.3); /* brand-goldの30% */
        z-index: 0;
        display: none; /* スマホでは非表示 */
    }

    /* 装飾：背景文字「源」 */
    .rr-bg-text {
        position: absolute;
        top: 1rem;      /* スマホ用に位置調整 */
        left: 1rem;     /* スマホ用に位置調整 */
        font-family: 'Noto Serif JP', serif;
        font-size: 6rem; /* スマホ用にサイズ縮小 */
        color: rgba(197, 160, 91, 0.1); /* brand-goldの10% */
        z-index: 2;
        pointer-events: none;
        user-select: none;
        line-height: 1;
    }

    /* --- 右側：テキストエリア --- */
    .rr-text-area {
        width: 100%;
    }

    /* 見出し */
    .rr-concept-title {
        font-family: 'Noto Serif JP', serif;
        
        /* --- 修正: スマホでのフォントサイズを縮小 (1.875rem -> 1.5rem) --- */
        font-size: 1.5rem; 
        
        line-height: 1.5;
        margin-bottom: 1.5rem;
        padding-left: 1rem;
        border-left: 3px solid #C5A05B; /* brand-gold */
        color: #ffffff;
        
        /* --- 修正: 変な位置での改行を防ぐ設定 --- */
        word-break: keep-all;
        overflow-wrap: break-word;
    }

    /* 本文 */
    .rr-concept-desc {
        color: #9ca3af; /* gray-400 */
        font-weight: 300;
        line-height: 1.8; /* 少し詰める */
        text-align: justify;
        margin-bottom: 1.5rem;
        font-size: 0.875rem; /* スマホでは少し小さく */
    }

    /* 強調メッセージ */
    .rr-highlight-msg {
        color: #ffffff;
        display: inline-block;
        border-bottom: 1px solid #C5A05B;
        padding-bottom: 0.25rem;
        margin-top: 1rem;
    }

    /* 素材アイコンエリア */
    .rr-material-box {
        margin-top: 2rem;
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .rr-icon-circle {
        width: 3.5rem; /* スマホ用に少し縮小 */
        height: 3.5rem;
        border-radius: 50%;
        background-color: rgba(255, 255, 255, 0.1);
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(197, 160, 91, 0.3);
        font-size: 1.25rem;
    }

    .rr-material-label {
        font-size: 0.7rem;
        color: #C5A05B;
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }

    /* --- レスポンシブ対応 (PC画面: 768px以上) --- */
    @media (min-width: 768px) {
        .rr-concept-section {
            padding: 6rem 1.5rem; /* PCでは元の広さに戻す */
        }

        .rr-flex-wrapper {
            flex-direction: row; /* 横並びにする */
            gap: 3rem; /* PCでは広めに */
        }
        
        .rr-image-area {
            width: 50%;
            height: 500px; /* PCでは高さを戻す */
        }
        
        .rr-text-area {
            width: 50%;
            padding-left: 2.5rem;
        }

        .rr-concept-title {
            font-size: 2rem; /* PCでは大きく */
            padding-left: 1.5rem;
            border-left-width: 4px;
        }

        .rr-concept-desc {
            line-height: 2;
            font-size: 1rem;
        }

        .rr-deco-frame {
            display: block; /* PCでは枠線を表示 */
        }
        
        .rr-bg-text {
            top: 2.5rem;
            left: 2.5rem;
            font-size: 8rem;
        }

        .rr-icon-circle {
            width: 4rem;
            height: 4rem;
            font-size: 1.5rem;
        }
        
        .rr-material-label {
            font-size: 0.75rem;
        }
    }/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-76d59cd *//* モバイル専用コンテナ */
    .rr-mobile-text-container {
        font-family: 'Montserrat', 'Noto Serif JP', sans-serif;
        color: #ffffff;
        background-color: #111111; /* 背景色（必要に応じて変更可） */
        padding: 2rem 1rem; /* 上下左右の余白を適切に確保 */
        text-align: left;
    }

    /* 見出しエリア */
    .rr-mobile-title {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.5rem; /* スマホで見やすい24px相当 */
        font-weight: 600;
        line-height: 1.4;
        color: #ffffff;
        
        /* 左側のゴールドライン */
        border-left: 3px solid #C5A05B;
        padding-left: 1rem;
        margin-bottom: 1.5rem;
        
        /* 単語の途中での改行を防ぐ */
        word-break: keep-all;
        overflow-wrap: break-word;
    }

    /* 本文エリア */
    .rr-mobile-desc {
        font-size: 0.875rem; /* 14px相当 */
        color: #d1d5db; /* 少しグレーにして読みやすく */
        line-height: 1.8; /* 行間は少しゆったり */
        margin-bottom: 2rem;
        font-weight: 300;
    }

    /* 段落間の余白 */
    .rr-mobile-desc p {
        margin-bottom: 1rem;
    }

    /* 強調メッセージ（アンダーライン） */
    .rr-mobile-highlight {
        display: inline-block;
        color: #ffffff;
        border-bottom: 1px solid #C5A05B;
        padding-bottom: 0.25rem;
        margin-top: 0.5rem;
    }

    /* Material Japanese Rice エリア */
    .rr-mobile-material {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        margin-top: 1rem;
        padding-top: 1.5rem;
        border-top: 1px solid rgba(255, 255, 255, 0.1); /* 区切り線 */
    }

    /* アイコンの円 */
    .rr-mobile-icon-circle {
        width: 3rem;
        height: 3rem;
        border-radius: 50%;
        background-color: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(197, 160, 91, 0.3);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.25rem;
    }

    /* テキスト */
    .rr-mobile-material-label {
        font-size: 0.75rem;
        color: #C5A05B; /* ゴールド */
        letter-spacing: 0.1em;
        text-transform: uppercase;
        font-weight: 500;
    }/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-c5d9998 *//* セクション全体のコンテナ */
    .rr-featured-section {
        /* --- 変更点: 背景をグレー単色から、黒ベースのグラデーションに変更して馴染ませる --- */
        background-color: #111111; /* サイト背景と同じ黒にする */
        /* 全体にうっすら中心が明るいグラデーションをかける（お好みで） */
        background-image: radial-gradient(circle at 70% 50%, #1F1F1F 0%, #111111 80%);
        
        padding: 1rem 1.5rem;
        color: #ffffff;
        font-family: 'Montserrat', sans-serif;
        position: relative;
        overflow: hidden; /* はみ出した装飾を隠す */
    }

    /* 背景の和柄パターン（青海波） */
    .rr-bg-pattern {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%; /* スマホでは全体 */
        height: 100%;
        opacity: 0.05; /* うっすら表示 */
        pointer-events: none;
        background-image: url('https://www.transparenttextures.com/patterns/seigaiha.png');
        background-repeat: repeat;
        z-index: 0;
    }

    .rr-container {
        max-width: 1200px;
        margin: 0 auto;
        position: relative;
        z-index: 10;
    }

    /* フレックスボックス */
    .rr-featured-wrapper {
        display: flex;
        flex-direction: column-reverse; /* スマホ: 画像を上にしたい場合は column ではなく column-reverse に調整可能。今回は説明を上にしています */
        gap: 4rem;
        align-items: center;
    }

    /* --- 左側（PC）：テキストエリア --- */
    .rr-featured-text {
        width: 100%;
    }

    /* ラベル */
    .rr-label {
        color: #B22222; /* brand-red */
        font-weight: 700;
        letter-spacing: 0.1em;
        font-size: 0.875rem;
        margin-bottom: 0.5rem;
        display: block;
        text-transform: uppercase;
        animation: rr-pulse 2s infinite;
    }

    /* 商品名 */
    .rr-product-title {
        font-family: 'Noto Serif JP', serif;
        font-size: 2.5rem; /* 40px */
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: 0.5rem;
        color: #ffffff;
    }

    .rr-product-subtitle {
        font-family: 'Montserrat', sans-serif;
        font-size: 1.5rem;
        font-weight: 300;
        color: #C5A05B; /* brand-gold */
        margin-left: 1rem;
    }

    .rr-product-type {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.25rem;
        font-style: italic;
        color: #9ca3af; /* gray-400 */
        margin-bottom: 2rem;
    }

    /* 説明文 */
    .rr-product-desc {
        color: #d1d5db; /* gray-300 */
        line-height: 1.8;
        margin-bottom: 2rem;
        text-align: justify;
    }

    /* 3つの特徴アイコン */
    .rr-features-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
        padding: 1.5rem 0;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        margin-bottom: 2rem;
    }

    .rr-feature-item {
        text-align: center;
    }

    .rr-feature-icon {
        font-size: 1.5rem;
        color: #C5A05B;
        margin-bottom: 0.5rem;
    }

    .rr-feature-label {
        font-size: 0.65rem; /* 小さめ */
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #9ca3af;
    }

    /* ボタン */
    .rr-btn-gold {
        background-color: #C5A05B;
        color: #111111;
        padding: 1rem 2.5rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        border: none;
        cursor: pointer;
        transition: all 0.3s ease;
        display: inline-block;
        text-decoration: none;
    }

    .rr-btn-gold:hover {
        background-color: #ffffff;
        color: #111111;
        transform: translateY(-2px);
    }

    /* --- 右側（PC）：画像エリア --- */
    .rr-featured-image {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
    }

    /* --- 変更点: 背景の赤い太陽エフェクトをグラデーションに変更 --- */
    .rr-sun-effect {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 150%; /* 少し大きめに広げる */
        height: 150%;
        
        /* 旧設定（四角くなる原因）を削除 */
        /* background-color: #B22222; border-radius: 50%; filter: blur(60px); */

        /* 新設定：円形グラデーション */
        /* 中心（赤・不透明度20%） → 外側（透明） */
        background: radial-gradient(circle closest-side, rgba(178, 34, 34, 0.3) 0%, rgba(178, 34, 34, 0) 100%);
        
        z-index: 1;
        pointer-events: none; /* クリックを邪魔しない */
    }

    /* ボトル画像 */
    .rr-bottle-img {
        position: relative;
        z-index: 10;
        height: 400px; /* スマホでの高さ */
        width: auto;
        object-fit: contain;
        filter: drop-shadow(0 20px 30px rgba(0,0,0,0.5));
        
        /* もし画像の背景が黒で透過されていない場合、これを有効にすると馴染みます */
        /* mix-blend-mode: lighten; */ 
    }

    /* アニメーション */
    @keyframes rr-pulse {
        0%, 100% { opacity: 1; }
        50% { opacity: .6; }
    }

    /* --- レスポンシブ対応 (PC画面: 768px以上) --- */
    @media (min-width: 768px) {
        .rr-bg-pattern {
            width: 50%; /* PCでは右半分だけ */
        }
        
        .rr-featured-wrapper {
            flex-direction: row; /* 横並び */
            justify-content: space-between;
        }

        .rr-featured-text, .rr-featured-image {
            width: 48%; /* 左右に分割 */
        }

        .rr-bottle-img {
            height: 500px; /* PCでの高さ */
        }

        /* PCでは光をさらに大きく */
        .rr-sun-effect {
            width: 200%;
            height: 200%;
        }
        
        .rr-feature-label {
            font-size: 0.75rem;
        }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bcc08ac *//* セクション全体 */
    .rr-collection-section {
        background-color: #111111; /* brand-black */
        padding: 1rem 1.5rem;
        color: #ffffff;
        font-family: 'Montserrat', sans-serif;
    }

    .rr-container {
        max-width: 1200px;
        margin: 0 auto;
    }

    /* --- 見出しエリア --- */
    .rr-section-header {
        text-align: center;
        margin-bottom: 4rem;
    }

    .rr-section-title {
        font-family: 'Noto Serif JP', serif;
        font-size: 2rem;
        color: #ffffff;
        margin-bottom: 1rem;
    }

    /* ゴールドのアンダーライン */
    .rr-title-underline {
        width: 4rem;
        height: 2px;
        background-color: #C5A05B; /* brand-gold */
        margin: 0 auto;
    }

    /* --- グリッドレイアウト --- */
    .rr-collection-grid {
        display: grid;
        grid-template-columns: 1fr; /* スマホ: 1列 */
        gap: 2rem;
    }

    /* ★修正ポイント: WordPressが自動挿入する不要なタグ（brやp）を無視する設定を追加 */
    .rr-collection-grid > *:not(.rr-collection-card) {
        display: none !important;
    }

    /* --- カードスタイル --- */
    .rr-collection-card {
        position: relative;
        display: block; /* リンクとして機能させる */
        height: 24rem; /* 384px */
        overflow: hidden; /* 画像拡大時のはみ出し防止 */
        border: 1px solid rgba(255, 255, 255, 0.1);
        text-decoration: none; /* リンクの下線を消す */
        cursor: pointer;
    }

    /* 背景画像 */
    .rr-card-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0.7;
        transition: transform 0.7s ease, opacity 0.3s ease;
    }

    /* グラデーションオーバーレイ */
    .rr-card-overlay {
        position: absolute;
        inset: 0; /* top, right, bottom, left: 0 */
        background: linear-gradient(to top, #111111 0%, transparent 50%, transparent 100%);
        opacity: 0.9;
        transition: opacity 0.3s ease;
    }

    /* コンテンツエリア（文字） */
    .rr-card-content {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        padding: 2rem;
        box-sizing: border-box;
    }

    /* カテゴリ名 */
    .rr-card-title {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.25rem; /* 20px */
        color: #ffffff;
        margin-bottom: 0.5rem;
        transition: color 0.3s ease;
    }

    /* 説明文 */
    .rr-card-desc {
        font-size: 0.75rem; /* 12px */
        color: #9ca3af; /* gray-400 */
        line-height: 1.6;
        margin-bottom: 1rem;
    }

    /* "View Products" ラベル */
    .rr-view-link {
        font-size: 0.75rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #C5A05B; /* brand-gold */
        border-bottom: 1px solid #C5A05B;
        padding-bottom: 0.25rem;
        display: inline-block;
    }

    /* --- ホバーエフェクト --- */
    .rr-collection-card:hover .rr-card-img {
        transform: scale(1.1); /* 画像拡大 */
        opacity: 1; /* 少し明るく */
    }

    .rr-collection-card:hover .rr-card-title {
        color: #C5A05B; /* タイトルをゴールドに */
    }

    /* --- レスポンシブ対応 (PC画面: 768px以上) --- */
    @media (min-width: 768px) {
        .rr-collection-grid {
            grid-template-columns: repeat(3, 1fr); /* PC: 3列 */
        }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-76a26d6 *//* セクション全体 */
    .rr-future-section {
        background-color: #ffffff; /* 背景を白に */
        color: #111111; /* 文字を黒に */
        padding: 6rem 1.5rem;
        font-family: 'Montserrat', sans-serif;
    }

    .rr-container {
        max-width: 1200px;
        margin: 0 auto;
    }

    /* フレックスボックス */
    .rr-future-wrapper {
        display: flex;
        flex-direction: column;
        gap: 4rem;
        align-items: center;
    }

    /* --- 左側（PC）：画像エリア --- */
    .rr-future-images {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr; /* 2列 */
        gap: 1rem;
    }

    .rr-future-img {
        width: 100%;
        height: 16rem; /* 256px */
        object-fit: cover;
        border-radius: 2px;
        /* filter: grayscale(100%);  <-- モノクロフィルタを削除 */
        /* transition: filter 0.5s ease; <-- トランジションも不要なので削除 */
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    }

    /* ホバー時にカラーにする設定も削除 */
    /* .rr-future-images:hover .rr-future-img {
        filter: grayscale(0%);
    } */

    /* 2枚目の画像を少しずらす（デザイン的アクセント） */
    .rr-img-offset {
        margin-top: 2rem;
    }

    /* --- 右側（PC）：テキストエリア --- */
    .rr-future-text {
        width: 100%;
    }

    .rr-future-label {
        color: #B22222; /* brand-red */
        font-weight: 700;
        letter-spacing: 0.1em;
        font-size: 0.75rem;
        margin-bottom: 0.5rem;
        display: block;
        text-transform: uppercase;
    }

    .rr-future-title {
        font-family: 'Noto Serif JP', serif;
        font-size: 2rem; /* 32px */
        font-weight: 700;
        line-height: 1.4;
        margin-bottom: 1.5rem;
        color: #111111;
    }

    .rr-future-desc {
        color: #4b5563; /* gray-600 */
        line-height: 1.8;
        font-weight: 300;
        margin-bottom: 2rem;
        text-align: justify;
    }

    /* Coming Soon バッジ */
    .rr-badge {
        display: inline-block;
        border: 1px solid #111111;
        padding: 0.5rem 1.5rem;
        font-size: 0.75rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #111111;
        background-color: transparent;
        cursor: default;
        transition: all 0.3s ease;
    }

    .rr-badge:hover {
        background-color: #111111;
        color: #ffffff;
    }

    /* --- レスポンシブ対応 (PC画面: 768px以上) --- */
    @media (min-width: 768px) {
        .rr-future-wrapper {
            flex-direction: row; /* 横並び */
            align-items: center;
        }

        .rr-future-images, .rr-future-text {
            width: 48%; /* 半分ずつ */
        }
        
        .rr-future-title {
            font-size: 2.5rem; /* PCでは文字を大きく */
        }
    }/* End custom CSS */