.elementor-14150 .elementor-element.elementor-element-55f0464{--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;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-14150 .elementor-element.elementor-element-55f0464:not(.elementor-motion-effects-element-type-background), .elementor-14150 .elementor-element.elementor-element-55f0464 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 16%, #E7E7E7 0%);}.elementor-14150 .elementor-element.elementor-element-5ab393f{--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-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-14150 .elementor-element.elementor-element-4751994{width:100%;max-width:100%;}.elementor-14150 .elementor-element.elementor-element-4751994 img{width:100%;}.elementor-14150 .elementor-element.elementor-element-d83845c{width:100%;max-width:100%;}.elementor-14150 .elementor-element.elementor-element-d83845c img{width:100%;}.elementor-14150 .elementor-element.elementor-element-c976b66{--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;--justify-content:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-14150 .elementor-element.elementor-element-1744224{text-align:center;}.elementor-14150 .elementor-element.elementor-element-1744224 .elementor-heading-title{font-family:"Montserrat-VariableFont_wght", Sans-serif;font-size:30px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#333333;}.elementor-14150 .elementor-element.elementor-element-ecb3e13{text-align:center;}.elementor-14150 .elementor-element.elementor-element-ecb3e13 .elementor-heading-title{font-family:"IBMPlexSansJP-SemiBold", Sans-serif;font-size:20px;font-weight:400;line-height:20px;letter-spacing:2px;color:#333333;}.elementor-14150 .elementor-element.elementor-element-9acbd9b{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14150 .elementor-element.elementor-element-38af26a{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14150 .elementor-element.elementor-element-38af26a.e-con{--align-self:center;}.elementor-14150 .elementor-element.elementor-element-c746258{width:100%;max-width:100%;}@media(min-width:768px){.elementor-14150 .elementor-element.elementor-element-38af26a{--width:300px;}}@media(max-width:767px){.elementor-14150 .elementor-element.elementor-element-55f0464:not(.elementor-motion-effects-element-type-background), .elementor-14150 .elementor-element.elementor-element-55f0464 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 10%, #E7E7E7 10%);}.elementor-14150 .elementor-element.elementor-element-55f0464{--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-14150 .elementor-element.elementor-element-c976b66{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14150 .elementor-element.elementor-element-1744224 .elementor-heading-title{font-size:28px;}.elementor-14150 .elementor-element.elementor-element-ecb3e13 .elementor-heading-title{font-size:16px;}.elementor-14150 .elementor-element.elementor-element-9acbd9b{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-14150 .elementor-element.elementor-element-38af26a{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}}/* Start custom CSS for shortcode, class: .elementor-element-2de998f *//* --- レイアウト --- */
.ae-works-sub-nav { display: flex; gap: 15px; margin-bottom: 40px; flex-wrap: wrap; }
.ae-sub-btn { padding: 10px 20px; background: #f4f4f4; color: #333; text-decoration: none; border-radius: 25px; font-size: 14px; border: 1px solid #ddd; transition: 0.3s; }
.ae-sub-btn:hover { background: #00856A; color: #fff; border-color: #00856A; }

.ae-works-archive-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.ae-works-card { display: block; background: #fff; border: 1px solid #eef0f2; border-radius: 12px; overflow: hidden; transition: 0.3s; box-shadow: 0 4px 15px rgba(0,0,0,0.04); text-decoration: none !important; }
.ae-works-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.1); }

.ae-works-card__img-wrap { position: relative; aspect-ratio: 3/2; overflow: hidden; }
.ae-works-card__img { width: 100%; height: 100%; object-fit: cover; }
.ae-works-card__new { position: absolute; top: 10px; left: 10px; background: #ff4757; color: #fff; padding: 3px 10px; font-size: 10px; font-weight: bold; border-radius: 4px; z-index: 5; }
.ae-works-card__area-badge { position: absolute; top: 10px; right: 10px; background: rgba(0, 133, 106, 0.9); color: #fff; padding: 4px 10px; font-size: 11px; border-radius: 4px; z-index: 5; }

.ae-works-card__content { padding: 15px; }
.ae-works-card__title { font-size: 15px; font-weight: 700; color: #333; margin: 0; }

.ae-works-no-result { text-align: center; padding: 50px; color: #666; border: 1px dashed #ccc; border-radius: 8px; }

@media (max-width: 1024px) { .ae-works-archive-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px) { .ae-works-archive-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; } }
.ae-sub-btn.is-active {
    background: #00856A;
    color: #fff;
    border-color: #00856A;
}


/* ナビゲーション全体の調整 */
.ae-works-sub-nav {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

/* タグの共通デザイン */
.ae-sub-tag {
    display: inline-block;
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 14px;
    text-decoration: none;
    transition: 0.3s;
}

/* 親カテゴリ：目立たせる */
.ae-sub-tag.parent { background: #008765; color: #fff; font-weight: bold; }
/* 子カテゴリ：少し控えめ */
.ae-sub-tag.child { background: #f4f4f4; color: #555; }
.ae-sub-tag:hover { background: #333; color: #fff; }

/* グリッドレイアウト（4カラム） */
.top-works-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* レスポンシブ */
@media screen and (max-width: 1024px) {
    .top-works-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
}
@media screen and (max-width: 480px) {
    .top-works-grid { grid-template-columns: 1fr; }
}

/* --- ナビゲーション（タグ風） --- */
.ae-works-sub-nav { 
    display: flex; 
    justify-content: center; 
    gap: 10px; 
    margin-bottom: 40px; 
    flex-wrap: wrap; 
}

.ae-sub-tag { 
    display: inline-block; 
    padding: 6px 18px; 
    text-decoration: none; 
    border-radius: 20px; 
    font-size: 14px; 
    transition: 0.3s; 
    border: 1px solid #ddd;
}

.ae-sub-tag.parent { background: #008765; color: #fff; border-color: #008765; font-weight: bold; }
.ae-sub-tag.child { background: #f4f4f4; color: #555; }
.ae-sub-tag:hover { background: #333; color: #fff; border-color: #333; }

/* --- グリッドレイアウト（4カラム固定） --- */
.ae-works-archive-grid, 
.top-works-grid { 
    display: grid; 
    grid-template-columns: repeat(4, 1fr); 
    gap: 24px; 
}

/* --- カードデザイン --- */
.ae-works-card { 
    display: block; background: #fff; border: 1px solid #eef0f2; 
    border-radius: 12px; overflow: hidden; transition: 0.3s; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.04); text-decoration: none !important; 
}
.ae-works-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.1); }

.ae-works-card__img-wrap { position: relative; aspect-ratio: 3/2; overflow: hidden; }
.ae-works-card__img { width: 100%; height: 100%; object-fit: cover; }
.ae-works-card__area-badge { 
    position: absolute; top: 10px; right: 10px; 
    background: rgba(0, 133, 106, 0.9); color: #fff; 
    padding: 4px 10px; font-size: 11px; border-radius: 4px; z-index: 5; 
}

.ae-works-card__content { padding: 15px; }
.ae-works-card__title { font-size: 15px; font-weight: 700; color: #333; margin: 0; }

/* --- レスポンシブ切り替え --- */
/* タブレット：3カラム */
@media (max-width: 1024px) { 
    .ae-works-archive-grid, .top-works-grid { grid-template-columns: repeat(3, 1fr); } 
}

/* スマホ：2カラム（コンパクトに）または1カラム（大きく） */
@media (max-width: 768px) { 
    .ae-works-archive-grid, .top-works-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; } 
}

@media (max-width: 480px) { 
    .ae-works-archive-grid, .top-works-grid { grid-template-columns: 1fr; } 
}


/* 住宅事業版グリッド設定 */
.house-works-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

/* レスポンシブ対応 */
@media (max-width: 1024px) { 
    .house-works-grid { grid-template-columns: repeat(3, 1fr); } 
}
@media (max-width: 768px) { 
    .house-works-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; } 
}
@media (max-width: 480px) { 
    .house-works-grid { grid-template-columns: 1fr; } 
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'IBMPlexSansJP-SemiBold';
	font-display: auto;
	src: url('https://interesting-poincare.163-43-30-20.plesk.page/wp-content/uploads/2025/09/IBMPlexSansJP-SemiBold.ttf') format('truetype');
}
/* End Custom Fonts CSS */