/* 施工事例専用：既存サイトの固定幅設定・ほかのページに影響させない */
#content-container .works-section, #content-container .works-section * { box-sizing:border-box; }
#content-container .works-section { width:100%; padding:28px 35px 65px; font-size:16px; line-height:1.7; color:#303844; }
#content-container .works-intro { padding:5px 0 28px; border-bottom:1px solid #d8dfe6; margin-bottom:42px; }
#content-container .works-intro-en { display:block; color:#647995; font-size:12px; letter-spacing:.20em; margin-bottom:8px; }
#content-container .works-intro h2 { margin:0 0 12px; font-size:29px; line-height:1.35; font-weight:600; letter-spacing:.07em; color:#00144d; }
#content-container .works-intro p { margin:0; font-size:14px; line-height:1.7; }
#content-container .works-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:54px 32px; }
#content-container .works-item { min-width:0; padding:0 0 30px; border-bottom:1px solid #d8dfe6; }
#content-container .works-heading { /*min-height:126px;*/ margin:0 0 15px; }
#content-container .works-number { display:block; font-size:11px; letter-spacing:.17em; color:#728397; margin-bottom:7px; }
#content-container .works-tag { margin:0 0 5px; font-size:12px; font-weight:600; color:#486482; letter-spacing:.04em; }
#content-container .works-title { margin:0; padding:0; color:#00144d; border:0; background:none; font-size:20px; line-height:1.45; font-weight:600; overflow-wrap:anywhere; }
#content-container .works-type { margin:7px 0 0; font-size:13px; color:#687681; }
#content-container .works-slider { position:relative; width:100%; max-width:100%; overflow:hidden; background:#f0f1f2; }
#content-container .works-slider .swiper-slide { height:350px; display:flex; align-items:center; justify-content:center; background:#f0f1f2; }
#content-container .works-slider .swiper-slide img { display:block; float:none!important; padding:0!important; max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
#content-container .works-slider .swiper-button-prev,#content-container .works-slider .swiper-button-next { width:34px; height:34px; margin-top:-17px; border-radius:50%; background:rgba(255,255,255,.91); color:#00144d; }
#content-container .works-slider .swiper-button-prev::after,#content-container .works-slider .swiper-button-next::after { font-size:14px; font-weight:bold; }
#content-container .works-slider .swiper-button-prev { left:9px; } #content-container .works-slider .swiper-button-next { right:9px; }
#content-container .works-slider .swiper-pagination-bullet { background:#fff; opacity:.65; box-shadow:0 1px 3px #555; }
#content-container .works-slider .swiper-pagination-bullet-active { background:#00144d; opacity:1; box-shadow:0 0 0 2px #fff; }
#content-container .works-image-count { margin:7px 0 13px; font-size:11px; color:#7b8792; text-align:right; }
#content-container .works-info { margin:0; padding:0 0 8px; border-bottom:1px solid #e3e7eb; }
#content-container .works-info-row { display:grid; grid-template-columns:95px minmax(0,1fr); gap:10px; padding:9px 0; }
#content-container .works-info dt { font-size:12px; color:#718092; font-weight:600; line-height:1.7; }
#content-container .works-info dd { margin:0; font-size:13px; line-height:1.7; overflow-wrap:anywhere; }
#content-container .works-description { padding:15px 0 0; }
#content-container .works-description h4 { margin:0 0 10px; padding:0; font-size:14px; border:0; color:#00144d; }
#content-container .works-description p { margin:0; font-size:13px; line-height:1.95; white-space:normal; }
/* サイト全体は固定幅1200px。全体をレスポンシブ化する際の補助設定 */
@media (max-width:767px) { #content-container .works-grid { grid-template-columns:1fr; } #content-container .works-section { padding:24px 15px 42px; } #content-container .works-heading { min-height:0; } #content-container .works-slider .swiper-slide { height:280px; } }
