/* 外観のカスタマイズの追加CSSにも同じ内容が入っています。 */

/*ヘッダーのナビゲーション修正*/
@media screen and (min-width: 980px) {
    .header nav .globalNav .inner {
        max-width: 1130px; /* 画像と合わせる */
        margin: 0 auto;    /* 中央寄せ */
        padding: 0 55px;   /* 両端の余白調整（必要に応じて） */
        box-sizing: border-box;
    }

    .header nav .globalNav .inner .nav {
        justify-content: space-between; /* 左ロゴと右ナビを両端配置にするなら */
    }
}


/*top 実績の紹介画像サイズ*/
.image img.wp-image-10485 {
  width: 100%;
  height: 370px;             /* ← 高さを固定 */
  object-fit: cover;         /* ← 縦横比維持して中央トリミング */
  display: block;
}

/*top リクルートバナー*/
#index .bnr.recruit{
    background: url(https://agrist.com/wp-content/uploads/2025/07/recruit.jpg) center / cover no-repeat;
}



#div {
    position: relative;
    z-index: 1; /* テキストがオーバーレイの上に表示されるように */
}

/* テキスト部分のスタイル */
.read span, .center {
    color: #fff; /* 文字を白くするなど、テキストのスタイルを変更 */
}

#recruit02 span {
 font-size: 20px;
}

#recruit #recruit02 p.center {
  color: black;
}

#farm #third .box .img.farm {
    height: auto;
	   width:  40%;
}

#farm #third .box .img.farm > img {
	   height: auto;
}

#farm #third .box.farm {
    margin: 1.75em auto 0;
}


@media screen and (max-width:979px) {
    #recruit02 span {
        font-size: 1.2rem;
    }
		#farm #third .box .img.farm {
				 height: auto;
				 width: 100%;
			}
	    .contentsBody .newsGrp ul {
        justify-content: space-around;
    }

}
/*TOP 実績の紹介*/
ul.infoList {
    list-style-type: none; 
    padding-left: 0; 
    margin: 0;
}

ul.infoList li {
    list-style-type: none;
}
/* strongタグにAGRISTのカラーとフォントサイズを適用 */
.item-text{
	font-family:"Cabin","Noto Sans JP",sans-serif;
	font-size: 0.8em;
    letter-spacing: 0.2em; 
    line-height: 1.6; 
}
.item-text strong {
    color: #007C36;
    font-size: 1.4em;
}


/*Ai及びプロダクトページのロゴ*/
.ailogo{
	/*display:flex;*/
	text-align:center; 
	/*gap:100px;*/
	/*justify-content:center;*/
	padding-top:100px;
	padding-bottom:100px;
}
.ailogo img{
	margin : 0 auto;
	margin-bottom: 80px;
}
/* アイコンの方のサイズ */
.ailogo img.size-icon{
    height: 180px;
}

/* ロゴの方のサイズ */
.ailogo img.size-logo {
    height: 50px;
}
/* SAU. ロゴの方のサイズ */
.ailogo img.size-logo-sau {
    height: 100px;
}
@media screen and (max-width:979px) {
 .ailogo img{
	 
 }
}


/*採用ページのレイアウト調整*/
.recruit_space{
	  margin-bottom: 100px;
}

/*TOPページアワード表記*/
.top_awards{
	text-align:center; 
	padding-bottom:70px;
	
}
.top_awards p{
	color:#007c36;
	font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.25;
  text-indent: 0.1em;
	font-family:"Cabin","Noto Sans JP",sans-serif;
}
.top_awards strong{
	font-size:40px;
}
@media screen and (max-width:979px) {
	.top_awards p{
		font-size: 1.2rem;
	}
	.top_awards strong{
		white-space:normal;
	}
}
/*事業概要 斜体解除*/
#top #index #index01 .inner .flex .box dl dt strong {
    transform: none;
}
/*top_事業概要見出し*/
/*.cm_h2_black strong{
	color:#000;
}*/

/*採用ページ文字切れ調整*/
#top #recruit .contents #recruit01 {
	min-height: calc(100vh - 2rem - 3.25rem);
	padding-top:30px;
}
#top #recruit .contents #recruit01 div {
    position: static;
    transform: none;
}

@media screen and (min-width: 980px) {
#recruit01::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 124, 54, 0.3); 
    z-index: -1;
	}
}

/* ▼ 共通スタイル */
#recruit01 {
  width: 100%;
  position: relative;
  z-index: 0;
}

#recruit01 > div {
  text-align: center;
}

/* ▼ PCスタイル：背景画像に文字を重ねる */
@media screen and (min-width: 980px) {
  #recruit01 {
    height: calc(100vh - 9rem - 3.25rem);
    background-image: url("../img/recruit/01.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }

  #recruit01 > div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
  }

  #recruit01 p {
    color: #fff;
  }
}

/* ▼ スマホスタイル：画像→その下に文字 */
@media screen and (max-width: 979px) {
  #recruit01::before {
    content: "";
    display: block;
    width: 100%;
    height: 56.25vw;
    background-image: url("../img/recruit/17.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 1.5rem;
		z-index: -1; /* ← これを追加 */
  }

  #recruit01 > div {
   position: relative; /* ← 前に出す */
    padding: 0 1.5rem;
    color: #007c36 !important; /* divのテキストカラーを緑に */
  }
	#recruit01 > div p {
    color: #000!important;  /* ← pのテキスト白に */
  }
  #recruit01 > div p.read span {
    color: #007c36 !important; /* ← spanに緑色を明示的に */
  }
}

/*採用ページ　職種紹介*/
#recruit06 {
    padding-top: 100px;
}
#recruit #recruit06 .contentsBody ul{
	padding-top:30px;
}
#recruit #recruit06 .contentsBody ul li {
  margin-bottom: 0.5em;
  line-height: 1.6;
	font-weight: bold;
}

/*SAUページ*/
.centered-sau {
    height: 400px; 
    background-color: black;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center; 
    text-align: center; 
	font-size: 1.75rem;
}
#sau .play.fadeIn {
    -webkit-animation: fadeIn 0.75s ease 0s 1 normal;
    animation: fadeIn 0.75s ease 0s 1 normal;
}
.centered2-sau {
	/*display: flex;*/
  justify-content: center;
  align-items: center; 
  text-align: center;
}
.centered2-sau p{
	font-size: 1.75rem;
	color: black;
}

.centered2-sau p.saufont_red {
	margin-top:100px;
	margin-bottom:50px;
	font-size: 2.00rem;
	color:red;
}
.centered2-sau button.btn-sau{
	border-radius: 100px;
	border: 2px solid #b2d7c5;
	font-size: 1.75rem;
	padding: 20px;
  box-sizing: border-box;
  background: #007C36;
  color: #FFF;
  text-decoration: none;
  text-align: center;
	cursor:pointer;
	transition: background-color 0.3s ease, color 0.3s ease; 
}
.centered2-sau button.btn-sau:hover {
    background-color: #b2d7c5;
    color: #FFF;
}
/*peatix広告バナー*/
#sau .follow_peatix{
    position: fixed; 
    bottom: 0;
    right: 0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    z-index: 1000; 
}


#sau .mainImage-sau{
	/*display:flex;*/
	text-align:center; 
	/*gap:100px;*/
	/*justify-content:center;*/
	padding-top:100px;
	padding-bottom:100px;
}
#sau .mainImage-sau img{
	margin : 0 auto;
	margin-bottom: 80px;
}

/* SAU. ロゴの方のサイズ */
#sau .mainImage-sau img.size-logo-sau {
    height: 100px;
}


#sau .mainImage-sau .txtBox-sau{
    width: 550px;
	  position: absolute;
    left: 40px;
    right: 0;
    transform: translateY(-150%);
    z-index: 2;
}


#sau .mainImage-sau .txtBox-sau p{
	  text-align:left;
	  font-size: 1.25rem;
    font-weight: bold;
    line-height: 2.2;
	  color:#fff;
}
#sau .mainImage-sau .txtBox-sau span{
	  font-size: 2.25rem;
    font-weight: bold;
    line-height: 2.2;
	  color:#fff;
}

#sau .mainImage-sau .background-img{
	  background-color: #007c3e;
    display: inline-block; 
}

#sau .mainImage-sau .background-img img{
	  opacity: 0.5; 
    display: block;
}

/*SAU スマホの場合のレイアウト*/
@media screen and (max-width:979px) {
	#sau .mainImage-sau{
	padding-top:0px;
}
	#sau .mainImage-sau img.size-logo-sau {
    height: 60px;
		margin-bottom:30px;
		margin-top:30px;
}
	#sau .mainImage-sau img{
		margin-bottom:0px;
	}
	#sau .mainImage-sau .background-img{
		margin-bottom:30px;
	}
	
	#sau .mainImage-sau .txtBox-sau{
		transform: translateY(0);
    left: 20px;
    right: 0;
	}
	#sau .mainImage-sau .txtBox-sau p{
	  text-align:left;
	  font-size: 1.00rem;
    font-weight: bold;
    line-height: 2.0;
	  color:#000;
		width:280px;
	}
	#sau .mainImage-sau .txtBox-sau span{
	  font-size: 1.5rem;
    font-weight: bold;
    line-height: 2.2;
	  color:#000;
	}
	#sau .centered2-sau {
		padding-top:200px;
	}
}
/*実績の紹介ページカラム調整*/
/*モバイル時に縦並び*/
@media screen and (max-width:768px){
	.column-container-portfolio{
		flex-direction: column;
	}
}
.column-container-portfolio{
	display: flex;
}
.column-portfolio{
	  flex: 1; /* 各カラムを均等に */
    padding: 10px;
}
.column-portfolio2{
	  flex: 1; /* 各カラムを均等に */
    padding: 10px;
}


/* CTAセクション */

.contact-cta {
	width: 100%;
  padding-top: 20%;
	background: url(/wp-content/themes/agrist/img/_cta.jpg) center / cover no-repeat;
	position: relative;
  padding: 80px 20px;
  text-align: center;
}
@media screen and (max-width: 979px) {
    .contact-cta{
        padding-top: 15.6vw;
        background-position: left 25% center;
    }
}

.contact-cta-text{
  font-size: 1.1rem;
  line-height: 1.8;
  margin-bottom: 30px;
  color: #333;
}
.contact-cta-text strong{
  font-size: 1.75rem;
	letter-spacing: 0.1em;
	font-style: italic; 
  line-height: 2.5;
  color: #333;
}
.contact-cta-button{
  display: inline-block;
  padding: 10px 25px;
  border: 1px solid #007c36; /* 緑の濃い色（例） */
  background-color: transparent;
  color: #2E7D32;
  text-decoration: none;
  font-size: 1rem;
  border-radius: 30px; /* 丸みをしっかり付ける */
  transition: all 0.3s ease;
}

.contact-cta-button:hover{
  background-color: #007c36; /* 背景緑に */
  color: #ffffff; /* 文字を白に */
}


/* 共創パートナー募集バナー */
/* 基本スタイル（共通） */
.banner-b-inner{
  text-align: center;
  padding: 20px 30px;
  border-radius: 12px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.2);
  background: rgba(255, 255, 255, 0.9);
  max-width: 300px;
  margin: 0 auto;
}

.banner-b-main-text{
  font-size: 1.4rem;
  font-weight: bold;
  color: #2E7D32;
  margin-bottom: 15px;
}

.banner-b-button{
  display: inline-block;
  padding: 10px 20px;
  border: 2px solid #2E7D32;
  border-radius: 30px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #2E7D32;
  transition: all 0.3s ease;
  background-color: transparent;
}

.banner-b-button:hover{
  background-color: #2E7D32;
  color: #fff;
}

/* PC専用：mainImage右下に配置 */
.co-creation-banner-pc-only {
	text-decoration: none;
  position: absolute;
  bottom: 5%;
  right: 5%;
  z-index: 10;
  animation: fadeinMove 1s ease 0.3s forwards;
  opacity: 0;
  transform: translateY(20px);
}

/* アニメーション */
@keyframes fadeinMove {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* SP用：デフォルト非表示 */
.co-creation-banner-sp-only {
	text-decoration: none;
  display: none;
  margin: 30px auto;
  max-width: 300px;
  background: #f0f8e0;
  box-shadow: none;
}

/* PC→SP切り替え */
@media screen and (max-width: 768px) {
  .co-creation-banner-pc-only {
    display: none !important;
  }
  .co-creation-banner-sp-only {
    display: block;
  }
}



/*企業情報の事例はこちら*/
.btn-case {
  display: inline-block;
  padding: 10px 20px;
  border: 2px solid #2E7D32;
  border-radius: 30px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #2E7D32;
  transition: all 0.3s ease;
  background-color: transparent;
}
/*企業情報 沿革*/

#history .contents .contentsBody .post dl{
    padding: 5rem 0 !important;
}

#history.contents .contentsBody .post dl:first-child{
    margin-top: 0;
}

#history.contents .contentsBody .post dl dt{
	  all:unset;
    color: #007c36;
    font-size: 1.25rem;
    font-weight: bold;
	  text-shadow: none; 
}

#history.contents .contentsBody .post dl dd{
	  display: block;
    padding: 2.5em 0 0;
    margin-top: 1.25em;
    border-top: 1px solid #007c36;
}

@media screen and (min-width: 980px) {
	  #history.contents .contentsBody .post dl{
        padding: 3rem 0;
    }
    #history.contents .contentsBody .post dl dd{
        display:flex;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
}

#history.contents .contentsBody .post dl dd.middle{
    margin-top: 2.5em;
    border-top: 1px solid rgba(0,0,0,0.15);
}

/*画像の幅*/
#history.contents .contentsBody .post dl dd p{
    margin: 0;
	  width:100%;
}
@media screen and (min-width: 980px) {
	#history.contents .contentsBody .post dl dd p{
    margin: 0;
	  width:30%;
	}
}

#history.contents .contentsBody dl dd span{
	all: unset;
	color:000;
	display: flex;
  flex-direction: column;
}
#history.contents .contentsBody dl dd span.month strong{
	all: unset;
	color:000;
	
}

#history.contents .contentsBody .post dl dd p img{
    margin: 0;
    border-radius: 0.5em;
    filter: drop-shadow(0 0 0.5rem rgba(0,0,0,0.2));
}

#history .contents .contentsBody .post dl dd p img{
        margin:2.5rem auto 0;
}


#history.contents .contentsBody .post dl dd div{
   line-height: 2;
	 text-shadow: none; 
	 display: flex;
   align-items: center;
   flex-wrap: nowrap;
   width: 100%;
   padding-left: 2.5rem;
	 padding-bottom:2em;
	
}
#history.contents .contentsBody .post dl dd div .month{
	  display: block;
		font-weight: bold;
}


@media screen and (max-width: 979px) {
	#history.contents .contentsBody .post dl dd div{
		flex-direction: column;
		gap: 0.3rem; 
	}

}




/*PC 沿革 月 内容　横並び*/
@media screen and (min-width: 980px) {
    #history.contents .contentsBody .post dl dd div{
        display:flex;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: space-between;
        width: 70%;
        padding-left: 2.5rem;
        order: 2;
    }
	#history.contents .contentsBody .post dl dd div .month{
        width:7.5rem;
			flex-shrink: 0; 
    }
	#history.contents .contentsBody .post dl dd div .txt{
        flex: 1; 
    }
}


/*企業情報 沿革_アコーディオン*/
#history.contents .contentsBody .post details.accordion_history {
  padding: 1rem 0;
	border-bottom: 1px solid #007c36;
  /*border-top: 1px solid #007c36;*/
}

#history.contents .contentsBody .post details.accordion_history:first-child {
  margin-top: 0;
}

#history.contents .contentsBody .post summary.year-title{
  all: unset;
  color: #007c36;
  font-size: 1.25rem;
  font-weight: bold;
  display: block;
  position: relative;
  cursor: pointer;
}
/*フォントの調整*/
.fifth dt strong,
.fifth dd strong,
.accordion_history summary.year-title {
  font-family: "Cabin", "Noto Sans JP", sans-serif !important;
  font-size: inherit;
  font-weight: inherit;
}
.accordion_history .entry-text .month strong {
  font-family: "Cabin", "Noto Sans JP", sans-serif;
}

#history.contents .contentsBody .post summary.year-title::after {
  content: "▼";
  position: absolute;
  right: 2.5rem;
  top: 0;
	transition: transform 0.3s ease;
	font-size: 0.85em; 
}

#history.contents .contentsBody .post details[open] > summary.year-title::after {
  content: "▲";
	transform: rotate(120deg);
}

#history.contents .contentsBody .post .entry {
  display: block;
  padding-top: 2.5em;
  margin-top: 1.25em;
  /*border-top: 1px solid #007c36;*/
	border-top: 1px solid rgba(0,0,0,0.15);
}

#history.contents .contentsBody .post .entry.middle {
  margin-top: 2.5em;
  border-top: 1px solid rgba(0,0,0,0.15);
}

#history.contents .contentsBody .post .entry p {
  margin: 0;
  width: 100%;
}

@media screen and (min-width: 980px) {
  #history.contents .contentsBody .post .entry {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  #history.contents .contentsBody .post .entry p {
    width: 30%;
  }
}

#history.contents .contentsBody .post .entry p img {
  margin: 2.5rem auto 0;
  border-radius: 0.5em;
  filter: drop-shadow(0 0 0.5rem rgba(0,0,0,0.2));
}

#history.contents .contentsBody .post .entry-text {
  line-height: 2;
  text-shadow: none;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-left: 2.5rem;
  padding-bottom: 2em;
}

@media screen and (max-width: 979px) {
  #history.contents .contentsBody .post .entry-text{
    flex-direction: column;
    gap: 0.3rem;
  }
}

@media screen and (min-width: 980px) {
  #history.contents .contentsBody .post .entry-text {
    width: 70%;
    order: 2;
    padding-left: 2.5rem;
  }
}

#history.contents .contentsBody .post .entry-text span.month {
  display: block;
  font-weight: bold;
}

#history.contents .contentsBody .post .entry-text span.txt {
  flex: 1;
  display: flex;
  flex-direction: column;
  color: #000;
}

/*会社情報 1本化*/
#company .contents dl.first {
    background-image: url("https://agrist.com/wp-content/themes/agrist/img/recruit/02.jpg");
}
#company .contents dl {
    padding: 10rem 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    text-shadow: 0 0 0.5em rgba(0,0,0,0.4)
}

#company .contents dl.first {
    background-image: url("https://agrist.com/wp-content/themes/agrist/img/recruit/02.jpg")
}

#company .contents dl.second {
    background-image: url("https://agrist.com/wp-content/themes/agrist/img/recruit/03.jpg")
}

#company .contents dl.third {
    background-image: url("https://agrist.com/wp-content/themes/agrist/img/recruit/04.jpg")
}

#company .contents dl.fourth {
    padding: 7.5rem 0;
    background: rgba(0,124,54,0.1);
    text-shadow: none
}

#company .contents dl.fourth dt {
    color: #007c36
}

#company .contents dl.fourth dt::after {
    background: #007c36
}

#company .contents dl.fourth dd strong {
    color: #007c36
}

#company .contents dl.fourth dd span {
    color: #000
}

#company .contents dl.fourth dd .taLeft {
    max-width: 820px;
    font-size: 1rem;
    font-weight: normal;
    text-align: justify;
    margin: 2.5rem auto 0
}

@media screen and (max-width: 979px) {
    #company .contents dl.fourth dd .taLeft {
        padding:0 2rem
    }
}

#company .contents dl.fourth dd .taLeft img {
    width: 100%;
    margin: 0 auto 2.5rem;
    border-radius: 0.5rem
}

/*企業情報の５つ目コンテンツ*/
#company .contents dl.fifth {
    padding: 7.5rem 0;
    background: rgba(255, 255, 255, 1);
    text-shadow: none;
	  text-align: center !important;
	
}
#company .contents dl.fifth dd strong {
	color: #007c36;
}

#company .contents dl.fifth dt strong {
	color: #007c36;
}
#company .contents dl.fifth dt::after {
  content: "";
  display: block;
  width: 40px;           /* 横線の長さ（お好みで調整） */
  height: 2px;           /* 線の太さ */
  background-color: #007c36;  /* 線の色 */
  margin-top: 8px;       /* 「Award」の下に余白 */
}
.fifth img {
  display: inline-block; /* ブロックではなくインライン扱いに近づける */
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width:979px) {
	.fifth img{
		max-width: calc(100% - 32px); /* 画面幅から左右16pxずつ引く */
	}
}



#company .contents dl dt {
    display: block;
    color: #fff;
    font-family: "Cabin","Noto Sans JP",sans-serif;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    padding-bottom: 1.875rem;
    position: relative
}

@media screen and (max-width: 979px) {
    #company .contents dl dt {
        font-size:1rem
    }
}

#company .contents dl dt strong {
    display: block;
    transform: skewX(-8deg)
}

#company .contents dl dt::after {
    content: '';
    display: block;
    width: 3.75rem;
    height: 2px;
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

#company .contents dl dd {
    margin-top: 1.875rem
}

#company .contents dl dd strong {
    display: block;
    color: #fff;
    font-size: 2.625rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    line-height: 1.5;
    text-align: center;
    text-indent: 0.2em;
    margin: -0.25em 0;
    transform: skewX(-8deg)
}

@media screen and (max-width: 979px) {
    #company .contents dl dd strong {
        font-size:1.75rem
    }
}

#company .contents dl dd span {
    display: block;
    color: #fff;
    font-size: 1.25rem;
    line-height: 2;
    text-align: center;
    margin: calc(1.875rem - 0.5em) 0 -0.5em
}

@media screen and (max-width: 979px) {
    #company .contents dl dd span {
        font-size:1rem
    }
}

#award .contents span.center,
#recruit .contents p.center
{
  color: #007c36;
}

