@charset "utf-8";
/* #02のテキストを薄背景にする */
.itembox1 .titlebox3{
    justify-content: space-between;}
.itembox1 .titlebox3 .jp1 {
    font-family: "Zen Old Mincho", serif;
    letter-spacing: 0.2em;
}
.cate3 .title{
    gap:10px;
}
.cate4 .title{
    gap:10px;
}
.cate3.itembox1 .imgbox {
    width: 100%;
  aspect-ratio: 310 / 235;
    overflow: hidden;
}
.cate3.itembox1 .square-img{
    aspect-ratio: 310 / 235;
}
.cate3.itembox1 .boxwrap{
    gap: clamp(30px, 4vw, 40px) clamp(10px, 2.5vw, 20px);}

.cate4.itembox1 .boxwrap{

    grid-template-columns: repeat(4, minmax(0, 1fr));}
@media (max-width: 1080px){
        .cate3.itembox1 .boxwrap {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  .cate4.itembox1 .boxwrap{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 576px){
  .cate3.itembox1 .boxwrap{
    grid-template-columns: 1fr;
  }
}


.commitment_sec .commitment_grid .txtbox.commitment_txt_light{
  background:#E6E7E9;
}

.commitment_sec .commitment_grid .txtbox.commitment_txt_light p{
  color:#2f3437;
}

.commitment_sec{
  background:#fff;
}

/* 2カラム */
.commitment_sec .commitment_grid{
  display:flex;
  align-items:stretch;
}
.commitment_sec .commitment_grid:nth-of-type(even){
  flex-direction: row-reverse;
}

/* 左：画像 */
.commitment_sec .commitment_grid .imgbox{
  width:50%;
  flex: 0 0 50%;
}
.commitment_sec .commitment_grid .imgbox img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* 右：テキスト */
.commitment_sec .commitment_grid .txtbox{
  width:50%;
  flex: 0 0 50%;
  background:#5E6276;
  padding: clamp(80px, 20vw, 100px) clamp(40px, 8vw, 60px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  text-align:center;
}

/* 文字色（濃背景用） */
.commitment_sec .commitment_grid .txtbox p{
  color:#fff;
}

/* 余白など */
.commitment_sec .commitment_label{
  margin:0;
  letter-spacing:0.22em;
  opacity:0.9;
}
.commitment_sec .commitment_no{
  margin: 10px 0 22px;
  letter-spacing:0.18em;
  opacity:0.9;
}
.commitment_sec .commitment_title{
  margin: 0 0 22px;
  line-height: 2;
}
.commitment_sec .commitment_desc{
  margin:0;
  line-height: 2.2;
  opacity:0.92;
    text-align: left;
}

@media (max-width: 768px){
    
  .commitment_sec .commitment_grid{
    flex-direction:column;
  }
 .commitment_sec .commitment_grid:nth-of-type(even){
	  flex-direction: column;
	}
 .commitment_sec .commitment_grid .imgbox,
  .commitment_sec .commitment_grid .txtbox{
    width:80%;
    flex: 0 0 auto;
  }
	.commitment_sec .commitment_grid .imgbox{
		margin-left: 0;
	}
	.commitment_sec .commitment_grid .txtbox{
		margin-left: auto;
		margin-right: 0;
		transform: translateY(-10%);
	}
  .commitment_sec .commitment_grid .imgbox img{
    height:auto;
  }
  .commitment_sec .commitment_grid .txtbox{
    text-align:left;
      padding: clamp(36px, 10vw, 48px) clamp(16px, 4vw, 24px) clamp(48px, 12vw, 72px);
  }

  /* ✅ 追加：SPだけ画像を上にする */
  .commitment_sec .commitment_grid .imgbox{
    order: 1;
  }
  .commitment_sec .commitment_grid .txtbox{
    order: 2;
  }
}





.thoughts_sec{
  position: relative;     /* 絶対配置の基準 */
  overflow: hidden;       /* はみ出しカット（不要なら外してOK） */
}

/* 背景文字（後ろに固定） */
.thoughts_sec .thoughts_bgword{
  position: absolute;
  left: 50%;
  top: 23%; 
  transform: translate(-50%, -50%);
  z-index: 0;
  pointer-events: none;
  user-select: none;
  white-space: nowrap;
}

.thoughts_sec .thoughts_bgword p{
  margin: 0;
  color: rgba(173,170,170,0.2);
      letter-spacing: 0.28em;
font-size: clamp(50px, 12vw, 120px);
}

/* 本文側を前面に */
.thoughts_sec .thoughts_body_inner{
  position: relative;
  z-index: 1;
  text-align: center;
}


.thoughts_sec .thoughts_head{
  position: relative;
  text-align: center;
  padding: clamp(40px, 6vw, 90px) clamp(18px, 5vw, 60px);
}


.thoughts_sec .thoughts_body_inner{
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}



.thoughts_sec .thoughts_body_inner p + p{
  margin-top: 30px;
}
	.cate3 > .more1,.cate4 > .more1{
		display: none;
		margin-top: 50px;
	}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
        .thoughts_body_inner p{
        text-align: left;
    }
	.cate3 .titlebox3 .more1,.cate4 .titlebox3 .more1{
		display: none;
	}
	.cate3 > .more1,.cate4 > .more1{
		display: flex;
		justify-content: center;
	}
	
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
    .thoughts_sec .thoughts_bgword {
 
    top: 10%;
}
	.commitment_sec .commitment_grid .imgbox{
    width:100%;
		margin-left: 0;
	}
	.commitment_sec .commitment_grid .txtbox{
    width:90%;
		margin-left: auto;
		margin-right: auto;
		transform: translateY(-5%);
	}

}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

