.elementor-569 .elementor-element.elementor-element-cb05827{--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;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-569 .elementor-element.elementor-element-8de87a7{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#3C7CBE;--border-color:#3C7CBE;--border-radius:20px 20px 20px 20px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-569 .elementor-element.elementor-element-8de87a7:not(.elementor-motion-effects-element-type-background), .elementor-569 .elementor-element.elementor-element-8de87a7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-569 .elementor-element.elementor-element-bb8638c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-569 .elementor-element.elementor-element-0f1c4b7{color:#818181;}.elementor-569 .elementor-element.elementor-element-0f1c4b7 a{color:#2357C0;}.elementor-569 .elementor-element.elementor-element-0f1c4b7 a:hover{color:#54C1C5;}.elementor-569 .elementor-element.elementor-element-a2f3844 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-weight:500;line-height:34px;letter-spacing:2px;color:#333333;}.elementor-569 .elementor-element.elementor-element-7479f45{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-569 .elementor-element.elementor-element-6f28d21{--divider-border-style:solid;--divider-color:#203CAC;--divider-border-width:4px;width:var( --container-widget-width, 12% );max-width:12%;--container-widget-width:12%;--container-widget-flex-grow:0;}.elementor-569 .elementor-element.elementor-element-6f28d21 .elementor-divider-separator{width:100%;}.elementor-569 .elementor-element.elementor-element-6f28d21 .elementor-divider{padding-block-start:0px;padding-block-end:0px;}.elementor-569 .elementor-element.elementor-element-a432f21{--divider-border-style:solid;--divider-color:#C2C2C2;--divider-border-width:1px;width:var( --container-widget-width, 90% );max-width:90%;--container-widget-width:90%;--container-widget-flex-grow:0;}.elementor-569 .elementor-element.elementor-element-a432f21.elementor-element{--align-self:flex-end;}.elementor-569 .elementor-element.elementor-element-a432f21 .elementor-divider-separator{width:100%;}.elementor-569 .elementor-element.elementor-element-a432f21 .elementor-divider{padding-block-start:0px;padding-block-end:0px;}.elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-icon i{color:#000000;font-size:14px;}.elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-icon svg{fill:#000000;--e-icon-list-icon-size:14px;}.elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-icon{width:14px;}.elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-text, .elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-text a{color:#838383;}.elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-item{font-family:"Helvetica", Sans-serif;font-size:14px;font-weight:300;line-height:16px;letter-spacing:2px;}.elementor-569 .elementor-element.elementor-element-7474991{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -30px) 0px;padding:0px 0px 0px 0px;color:#333333;font-family:"Noto Sans JP", Sans-serif;font-weight:400;line-height:30px;letter-spacing:2px;}.elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__prev--label{color:#6C6C6C;}.elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__next--label{color:#6C6C6C;}.elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__prev--label:hover{color:#CFCFCF;}.elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__next--label:hover{color:#CFCFCF;}.elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__prev--title, .elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__next--title{color:#6C6C6C;}.elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__prev--title:hover, .elementor-569 .elementor-element.elementor-element-2885608 span.post-navigation__next--title:hover{color:#CFCFCF;}.elementor-569 .elementor-element.elementor-element-2885608 .post-navigation__arrow-wrapper{color:#2D68A5;fill:#2D68A5;font-size:18px;}.elementor-569 .elementor-element.elementor-element-2885608 .elementor-post-navigation__link a {gap:18px;}.elementor-569 .elementor-element.elementor-element-2885608 .elementor-post-navigation__separator{width:1px;}.elementor-569 .elementor-element.elementor-element-2885608 .elementor-post-navigation{border-block-width:1px;}.elementor-569 .elementor-element.elementor-element-2885608 .elementor-post-navigation__next.elementor-post-navigation__link{width:calc(50% - (1px / 2));}.elementor-569 .elementor-element.elementor-element-2885608 .elementor-post-navigation__prev.elementor-post-navigation__link{width:calc(50% - (1px / 2));}.elementor-569 .elementor-element.elementor-element-c8a1ad2{--display:flex;}.elementor-569 .elementor-element.elementor-element-dce54bf{--display:flex;}@media(max-width:767px){.elementor-569 .elementor-element.elementor-element-cb05827{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-569 .elementor-element.elementor-element-8de87a7{--gap:40px 40px;--row-gap:40px;--column-gap:40px;--border-radius:8px 8px 8px 8px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-569 .elementor-element.elementor-element-0f1c4b7{padding:10px 20px 10px 20px;font-size:12px;}.elementor-569 .elementor-element.elementor-element-a2f3844 .elementor-heading-title{font-size:18px;line-height:1.8em;}.elementor-569 .elementor-element.elementor-element-a432f21{--container-widget-width:88%;--container-widget-flex-grow:0;width:var( --container-widget-width, 88% );max-width:88%;}.elementor-569 .elementor-element.elementor-element-8cb5086 .elementor-icon-list-item{font-size:14px;line-height:10px;}.elementor-569 .elementor-element.elementor-element-7474991{font-size:16px;line-height:30px;}.elementor-569 .elementor-element.elementor-element-2885608{padding:0px 0px 20px 0px;}}@media(min-width:768px){.elementor-569 .elementor-element.elementor-element-cb05827{--content-width:1000px;}.elementor-569 .elementor-element.elementor-element-c8a1ad2{--content-width:900px;}}/* Start custom CSS for shortcode, class: .elementor-element-327871a *//* ==========================================
   Before/After 施工事例 シングルページ専用CSS（完全版）
   ========================================== */

/* 全体のコンテナ */
.works-ba-container {
    width: 100%;
    margin: 30px 0;
}

/* Before/Afterを横並びにする行 */
.works-ba-row {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
}

/* 2組目がある場合の上の余白 */
.works-ba-row.second-row {
    margin-top: 40px;
    border-top: 1px dashed #ccc;
    padding-top: 40px;
}

/* 各画像＋テキストのボックス */
.works-ba-box {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* ★画像エリア：4:3の枠を維持しつつ、縦長・横長どんな写真も切らずに全体表示 */
.works-ba-img {
    width: 100%;
    aspect-ratio: 4 / 3;             /* 左右の「枠（高さ）」をこれで完璧に統一します */
    background-size: contain;        /* ★重要：写真を切らずに、全体が収まるように縮小 */
    background-position: center;     /* 写真を中央に配置 */
    background-repeat: no-repeat;    /* 写真の繰り返しを禁止 */
    background-color: #f3f3f3;       /* ★重要：写真の隙間（余白）を埋める薄グレー（白がよければ #ffffff に変更してください） */
    position: relative;
    border-radius: 6px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

/* BEFORE/AFTERのバッジ（画像左上に固定） */
.ba-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 12px;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 1px;
    color: #fff;
    border-radius: 4px;
    z-index: 2; /* 写真の上に必ず乗るように設定 */
}

/* 最新PHPのクラス名と、ご希望の色分けを統合 */
.before-badge,
.before-box .ba-badge { 
    background: #777777; /* Beforeはグレー */
}
.after-badge,
.after-box .ba-badge { 
    background: #0073aa; /* Afterはブルー */
}

/* 解説テキストのスタイル */
.works-ba-text {
    margin-top: 12px;
    font-size: 15px;
    color: #333;
    line-height: 1.6;
    background: #f9f9f9;
    padding: 12px;
    border-left: 3px solid #ddd;
    border-radius: 0 4px 4px 0;
    margin-bottom: 0;
    flex-grow: 1; /* 左右のテキストの高さも自動で揃えます */
}

/* アフターのテキストは左線を青に */
.after-box .works-ba-text {
    border-left-color: #0073aa; 
}

/* スマホ対応（横並びだと狭いので縦並びに切り替え） */
@media (max-width: 767px) {
    .works-ba-row {
        flex-direction: column;
        gap: 30px;
    }
    /* スマホで4:3だと写真が小さく見えすぎる場合は、ここを解除してもOKです */
    .works-ba-img {
        aspect-ratio: 4 / 3; 
    }
}/* End custom CSS */