@charset "utf-8";
/* CSS Document */
.title-style1 {
    position: relative;
    text-align: center;
    justify-content: center;
    align-items: center;
}
.title-style1 .bg-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: 600;
    color: rgba(25, 97, 16, 0.1);
    font-size: 90px;
    letter-spacing: 0.1em;
    z-index: 1;
    pointer-events: none;
}
.more2 a{
	min-width: 260px;
	border-radius: 200px;
	justify-content: space-between;
	padding: 13px 30px;
	background-color: #000;
}
.more2 a > div{
	gap: 15px;
	justify-content: space-between;
    width: 100%;
}
.more2 a > div p,.more a > div i{
	color: #fff;
}
.more2 a > div p{
	font-weight: 500;
}
.more2 a > div i{
	transition: ease 0.4s;
	color: #fff;
    font-size: 12px;
}
.more2 a:hover > div i{
	transform: translateX(3px);
}

body{
    background-color: #E9E5D7;
}
.cate_wrap{
    position: relative;
}
.link_wrap {
  background-color: #d94926;
  color: #fff;
  padding: 10px 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(10px, 2.2vw, 28px);
}

.link_wrap .link-item a {
  display: inline-flex;
  align-items: center;
  gap: .55em;
  padding: .55em 1em;
  text-decoration: none;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  transition: transform .12s ease, background-color .12s ease, border-color .12s ease, opacity .12s ease;
}

.link_wrap .link-item a p {
  color: #fff;
  margin: 0;
}

.link_wrap .link-item a i {
  font-size: 0.8em;
  color: #829953;
  background-color: #fff;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding-top: 4px;
  transition: transform 0.4s ease;
}

.link_wrap .link-item a:hover i {
  transform: translateY(3px);
}

.cate1 {
  position: relative;
    z-index: 3;
}


.cate1  .imgbox{ transform: scale(0.9); 
  position: relative;
  width: 691.019px; 
  height: 598.235px; 
}

.cate1 .imgbox .clip-item1{
  display:block;
  width:100%;
  height:100%;
  object-fit: cover;
  clip-path: path("M56.397,95.947l140.978-32.947L408.054,11.2,599.672,0l66.188,205.953,24.14,144.131-37.533,201.357-209.075,45.769-399.864-20.312L0,285.572,56.397,95.947Z");
  -webkit-clip-path: path("M56.397,95.947l140.978-32.947L408.054,11.2,599.672,0l66.188,205.953,24.14,144.131-37.533,201.357-209.075,45.769-399.864-20.312L0,285.572,56.397,95.947Z");
}



.cate1 .imgbox .vertical-label {
  position: absolute;
  left: -20px;
  top: 30%;
  transform: translateY(-50%);
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-weight: 600;
  font-size: 24px;
  line-height: 2;
  color: #222;
  letter-spacing: 0.1em;
}

.cate1 .imgbox .vertical-label span {
  background: #fff;
  padding: 20px 0px;
margin-right: 10px;
  display: inline-block;
}

.cate1 .txtbox,.cate3 .txtbox{
width: 50%;
}
.cate2 {
    position: relative;}



.cate2 .imgbox1 {
  position: absolute;
  top: 0;
  right: 0;
width: 600px;
  height: 430px;
}


.cate2 .imgbox2{
  position: absolute;
  bottom: -100px;
  right: 5%;
width: 250px;
  height: 231px;
}

.cate2 .imgbox .clip-item2 {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
object-position: 140% 20%;
  clip-path: path("M458.561,68.222l-102.031-23.427L204.053,7.963,65.371,0,17.471,146.437,0,248.918l27.164,143.17,151.316,32.543,289.4-14.442,31.5-207.14-40.82-134.827Z");
  -webkit-clip-path: path("M458.561,68.222l-102.031-23.427L204.053,7.963,65.371,0,17.471,146.437,0,248.918l27.164,143.17,151.316,32.543,289.4-14.442,31.5-207.14-40.82-134.827Z");
}
.cate2 .imgbox .clip-item3 {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 100% 120%;
  clip-path: path("M11.002,17.067L68.721,0l91,17.067h36.6l50.619,48.79-12.314,107.04-74.906,25.838-75.928,33.047L0,159.664,11.002,17.067Z");
  -webkit-clip-path: path("M11.002,17.067L68.721,0l91,17.067h36.6l50.619,48.79-12.314,107.04-74.906,25.838-75.928,33.047L0,159.664,11.002,17.067Z");
  margin: 0 auto;   /* 中央寄せ（必要なら） */
}
.vision-section {
  position: relative;
  overflow: hidden;
}

.vision-bg {
font-size: clamp(60px, 8vw, 90px);
  color: rgba(25,97,16,0.1);
  letter-spacing: 0.1em;
  margin: 0;
  font-weight: 700;
}

.vision-text {
  position: absolute;
  top: 50%;
  transform: translate(10%, -50%);
  margin: 0;
letter-spacing: 0.3em;
font-size: clamp(16px, 2vw, 20px);
}
.cate3{
    position: relative;
}

.cate3 .imgbox{
  position: relative;
  width: 470px;
height: 497px;
}


.cate3 .imgbox .clip-item4{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  clip-path: path("M116.359,35.021l167.809-24.028L396.839,0l62.955,55.031,10.883,112.345v133.515l-83.24,136.833-146.5,59.147h-64.332l-78.228-59.147L0,352.073v-212.063L17.632,55.031l98.728-20.01Z");
  -webkit-clip-path: path("M116.359,35.021l167.809-24.028L396.839,0l62.955,55.031,10.883,112.345v133.515l-83.24,136.833-146.5,59.147h-64.332l-78.228-59.147L0,352.073v-212.063L17.632,55.031l98.728-20.01Z");
}

.cate4 .txtbox {
width: 50%;
}

.cate4{
    position: relative;
}
.cate4 .txtbox{
    z-index: 4;
}
.item5{
  position: absolute;
  top: 30%;
  left: 0;
  width: 340px;   /* サイズ調整 */
}

.item5 img {
  display: block;
  width: 100%;
  height: auto;
}
.item6 {
  position: absolute;
  top: 10%;
  right: 10%;
  width: 240px;   /* サイズ調整 */
}

.item6 img {
  display: block;
  width: 100%;
  height: auto;
}





.cate4 .imgbox1{ transform: scale(1); 
  position: relative;
  width: 500px; 
  height: 420px;
    z-index: 5;
}

.cate4 .imgbox .clip-item4{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  clip-path: path("M458.561,68.222l-102.031-23.427L204.053,7.963,65.371,0,17.471,146.437,0,248.918l27.164,143.17,151.316,32.543,289.4-14.442,31.5-207.14-40.82-134.827Z");
  -webkit-clip-path: path("M458.561,68.222l-102.031-23.427L204.053,7.963,65.371,0,17.471,146.437,0,248.918l27.164,143.17,151.316,32.543,289.4-14.442,31.5-207.14-40.82-134.827Z");
}
/* 右下の小さい写真 */
.cate4 .imgbox2{
  position: absolute;
  top: 0px;
  left: 0;
    width: 250px;
  height: 231px;
}

.cate4 .imgbox .clip-item5{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 100% 120%;
  clip-path: path("M11.002,17.067L68.721,0l91,17.067h36.6l50.619,48.79-12.314,107.04-74.906,25.838-75.928,33.047L0,159.664,11.002,17.067Z");
  -webkit-clip-path: path("M11.002,17.067L68.721,0l91,17.067h36.6l50.619,48.79-12.314,107.04-74.906,25.838-75.928,33.047L0,159.664,11.002,17.067Z");
  margin: 0 auto;   /* 中央寄せ（必要なら） */
}


.cate5 {
  position: relative;
  margin: 80px auto;
  padding: 60px 32px 32px;
  background: #F8F7F1;
  border-radius: 14px;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  overflow: visible;
}
.cate5 .boxwrap{
    gap:50px;
    flex-wrap: nowrap;
}
.cate5 .leftbox,
.cate5 .rightbox {
    gap:30px;
        flex-wrap: nowrap;
}
/* タイトル帯（h2を利用） */
.cate5 .title {
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  padding: 10px 28px;
  background: #1f5595;
  color: #fff;
border-radius: 10px 10px 0 0;
  z-index: 2;
  white-space: nowrap;
    width: 100%;
}

/* 下のノッチ（三角） */
.cate5 .title::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translateX(-50%);
  width: 16px;
  height: 10px;
  background: #1f5595;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}

/* 画像ボックス */
.cate5 .imgbox{
  width: 220px;
  border-radius: 12px;
}
.cate5 .txtbox{
  width: 200px;
}
.cate5 .txtbox .title2{
color: #07427A;
}

.cate6{
	background-color: #DCDDC7;
  margin-bottom: -50px;
}
.cate6 .company-wrap{
	width: 100%;
	margin: 0 auto;
}
.cate6 .company-wrap .item{
	padding: 10px;
}
.cate6 .company-wrap .item:not(:last-of-type){
	border-bottom: 1px solid #DEDEDE;
}
.cate6 .company-wrap .item:first-of-type,.recruit1 .item-wrap .item:first-of-type{
	padding-top: 0;
}
.cate6 .company-wrap .item h3{
	width: 20%;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: flex-start;
	flex-direction: row;
	box-sizing: border-box;
	padding-right: 30px;
	padding: 20px 0;
	color: #1A1F53;
}
.cate6 .company-wrap .item > div{
	width: 80%;
	padding: 15px 0;
	padding-left: 80px;
}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
.cate1 .txtbox ,.cate2 .txtbox,.cate3 .txtbox, .cate4 .txtbox {
    width: 100%;
}
    .cate4 .imgbox2{
  position: absolute;
  top: 50px;
  left: 0;
    width: 250px;
  height: 231px;
}
    
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
      .cate1  .imgbox{ }
    .cate2 .txtbox{
        margin-top: 300px;
    }
    .cate2 .imgbox2 {
    position: absolute;
    bottom: -180px;
    right: 0%;
}
    .cate5 .boxwrap {
     flex-wrap: wrap;
}
    
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){

    .cate2 .imgbox1{
        position: relative;

    }
        .cate2 .txtbox {
        margin-top: 0px;
    }
.cate2 .imgbox .clip-item2 {
    object-position: center;}
    	.cate6 .company-wrap .item > div {
		padding-left: 40px;
	}
    
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){

.cate2 .imgbox2,.cate4 .imgbox2  {
display: none;
}
.cate5 .leftbox,
.cate5 .rightbox {
        flex-wrap: wrap;
}
}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

