body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
}

.container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
}

hr {
    margin: 20px 0;
}

/* コンテンツ・ヘッダー */
.header {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    max-width: 100%;
    flex-wrap: wrap;
    margin: 0 auto;
}
.header, .title_head p {font-size:16px; }
.layout-1, .layout-2 {
    padding: 20px;
    box-sizing: border-box;
 　 text-align: left;

}

.layout-1 {
    flex: 6; /* 6:4の割合の6に相当 */
    /*background-color: #f9f9f9;  バックグラウンド色を追加 */
 　 text-align: left;
}

.layout-2 {
    flex: 4; /* 6:4の割合の4に相当 */
     /*background-color: #e9e9e9; バックグラウンド色を追加 */
 　 text-align: left;
}

.title-icon {
    display: flex;
    align-items: center;
	margin: 0px;
}

.title-icon h1 {
    margin: 0;
    margin-right: 10px;
    font-family: 'BIZ UDゴシック', sans-serif; /* BIZ UDゴシックフォントを適用 */
    color: #716246; /* フォントカラーを#716246に設定 */
 　 text-align: left;
}

.layout-1 h2 {
    margin-top: -15px;
    font-family: '游明朝 Demibold', serif;
    color: #d3d3d3; 
    text-align: left;
}

.layout-1 p {
    margin-top: 3px;
	text-align: left;
}

.layout-2 p {
	margin-top: 5px;
    font-size: 12px; /* フォントサイズを変更 */
	text-align: left;
}




.layout-1 .category-title {
    background-color: #d3d3d3; /* ライトグレー */
    padding: 1px 10px;
 
    color: #000;
    font-size: 14px; /* iconのフォントサイズ */
    border-radius: 10px; /* 4つ角を丸める */
    color: white; /* フォントカラーを白に変更 */
 　 text-align: left;
}


.layout-2 .category-title {
    background-color: #d3d3d3; /* ライトグレー */
    padding: 5px 10px;
    font-size: 1.5em; /* icon-2のフォントサイズ（h2相当） */
    text-align: center; /* テキストを中央寄せ */
    width: 100%; /* エリア内一杯に表示 */
    box-sizing: border-box; /* パディングを含めて幅を計算 */
    margin: 0; /* エリア内一杯に表示するために余白をなくす */
    color: white; /* フォントカラーを白に変更 */
}

.main-image img {
    width: 100%;
    max-width: 600px;
    height: auto;
    display: block;
    margin: 0 auto;
}

.main-text {
    margin: 20px 0;
}

.main-text p {
    text-align: center;
    font-size: 14px;
}

.sub-images {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px; /* 小さい余白 */
    margin: 30px 0; /* 中くらいの余白 */
}

.sub-image {
    text-align: center;
}

.sub-image img {
    width: 150px; /* サブ画像の横幅を設定 */
    height: auto;
    cursor: pointer;
}

.sub-image p {
    margin-top: 5px;
}

/* Case Image 下部スライダー（事例画像） */
.image-slider {
    position: relative;
    overflow: hidden;
    width: 940px; /* 全体幅を1100pxに設定 */
    margin: 0 auto;
}

.slides-wrapper {
    position: relative;
    width: 860px; /* 表示エリアを1000pxに制限 */
    margin: 0 0 0 40px; /* 中央寄せ */
    overflow: hidden;
}

.slides {
    display: flex;
    transition: transform 0.5s ease;
}

.slide {
    min-width: 25%;
    box-sizing: border-box;
    text-align: center;
}

.slide img {
    width: 200px;
    height: 150px;
    border: 1px solid #c0c0c0;
}

/* スライダー内のテキストサイズを10pxに設定 */
.slide p {
    margin: 5px 0; /* 上下の余白を調整 */
    font-size: 14px; /* テキストサイズを10pxに設定 */
}

.prev, .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.9);
    color: white;
    border: none;
    padding: 100px 15px;
    cursor: pointer;
    z-index: 1; /* ボタンをスライダーの上に表示 */
}

.prev {
    left: 0; /* 左に配置 */
}

.next {
    right: 0; /* 右に配置 */
}


/* =====================================
   メディアクエリ
===================================== */




@media (max-width: 768px) {
    body {
        font-size: 12px;
    }
	
.menu,
  .contact-btn { display: none; }
  .box-grid { grid-template-columns: 1fr; }
	
  .title_head h2 { font-size: 1.2rem; }
  .header, .title_head p {font-size:0.8em; }
	
	.layout-1 {
		padding-right: 2px;
	}
	
    .layout-1 .title-icon h1 {
		font-size: 1.0rem;

		margin: 0 0 2 0;
    }
	.title-icon {margin: 0; padding:0; }
    .layout-1 h2 {
        font-size: 16px;
		text-align: left;
    }
	
	.layout-1 p { font-size: 12px; }

    .layout-1 .category-title {
       font-size: 9px;
	   padding: 1px 3px;
		margin: 11px 0;
    }
   .layout-2 {padding-left: 2px;}
   .layout-2 .category-title {
        font-size: 1.2em;
    }


　　.layout-2 p { font-size: 8px; }


    .main-text p {
        font-size: 0.85em;
    }


    .sub-images {
        grid-template-columns: repeat(2, 1fr);
        gap: 5px;
        padding: 0 5px;
    }

    .sub-image img {
        max-width: 120px;
    }



　.image-slider {

    width: 400px; /* 全体幅を1100pxに設定 */

　}


　.slide img {
	 
    width: 150px;
  
  }  

/* スライダー内のテキストサイズを10pxに設定 */
  .slide p {
    margin: 5px 0; /* 上下の余白を調整 */
    font-size: 10px; /* テキストサイズを10pxに設定 */
  }
  
  
	.slides-wrapper {
    position: relative;
    width: 860px; /* 表示エリアを1000pxに制限 */
    margin: 0 0 0 40px; /* 中央寄せ */
    overflow: hidden;
   }
  .image-slider {
    position: relative;
    overflow: hidden;
    width: 400px; /* 全体幅を設定 */
    margin: 0 auto;
  }

}