@charset "UTF-8";
/* *****************************************************************

Stylesheet: ベーススタイル（全て）に適応

******************************************************************/
/* TOPのパネル */
.top-panel {
  /* 位置調整 */
  position: relative;
  -webkit-transform: translateY(-100px);
          transform: translateY(-100px);
  z-index: 1;
}

.top-panel .smb-panels__item {
  /* パネルの影 */
  -webkit-box-shadow: 0 -6px 8px rgba(0, 0, 0, 0.1) !important;
          box-shadow: 0 -6px 8px rgba(0, 0, 0, 0.1) !important;
}

.top-panel .smb-panels__item:hover {
  /* 標準であるホバーエフェクトの除去 */
  -webkit-box-shadow: none;
          box-shadow: none;
}

.top-panel .smb-panels__item__body {
  /* 標準のh2装飾の除去 */
  padding: 80px;
}

.top-panel .smb-panels__item__body h2 {
  background-color: transparent;
  border-left: none;
}

/* 3枚並んだパネルの装飾 */
.panels .c-row__col {
  /* パネルの余白除去 */
  padding: 0;
}

.panels .smb-panels__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0;
  /* パネルホバー時の装飾 */
}

.panels .smb-panels__item__figure {
  /* テキストと画像の位置変更 */
  position: relative;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  overflow: hidden;
}

.panels .smb-panels__item__figure::before {
  /* ホバー時の装飾 */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  content: '';
  white-space: pre;
  background: radial-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.9));
  color: #fff;
  font-size: 13px;
  -webkit-transition: all 0.6s 70ms;
  transition: all 0.6s 70ms;
  opacity: 0;
  z-index: 1;
}

.panels .smb-panels__item__figure img {
  /* 変化の時間 */
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}

.panels .smb-panels__item__body {
  /* パネルのボーダー部分 */
  -webkit-box-shadow: 0 0 0 1px #ccc;
          box-shadow: 0 0 0 1px #ccc;
  /* パネルのテキストと画像の順序を変更*/
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.panels .smb-panels__item__title {
  font-size: 24px;
}

.panels .smb-panels__item__content {
  font-size: 14px;
}

.panels .smb-panels__item:hover .smb-panels__item__figure::before {
  /* ホバー時に文字浮き出して見えるようにscaleで拡大 */
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
  opacity: 1;
}

.panels .smb-panels__item:hover .smb-panels__item__figure img {
  /* ホバー時に画像を拡大 */
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.smb-section__title {
  /* セクションタイトルサイズ変更 */
  font-size: 2.5em;
}

.smb-section__title::after {
  /* 標準であるセクションタイトルの下線除去 */
  display: none;
}

/* バナーの装飾 */
.banners .smb-items__banner__figure {
  /* デフォルトのfilterの除去 */
  -webkit-filter: none !important;
          filter: none !important;
}

.banners .smb-items__banner__figure img {
  /* 常時filterをかける */
  -webkit-filter: brightness(0.8);
          filter: brightness(0.8);
}

.banners .smb-items__banner__body {
  /* 変化にかける時間 */
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.banners .smb-items__banner__title {
  font-size: 24px;
  font-weight: 600;
}

.banners .smb-items__banner__lede {
  font-size: 16px;
}

.banners .smb-items__banner:hover .smb-items__banner__body {
  /* ホバー時に文字を右に移動 */
  -webkit-transform: translateX(15px);
          transform: translateX(15px);
}

@media (max-width: 1023px) {
  /******************************************************************

Stylesheet: 1023px以下（タブレット）で適用

******************************************************************/
  /* ヒーロースライダー */
  .hero__title h2 {
    font-size: 32px;
  }
  .hero .swiper-slide {
    height: 80vh;
  }
  /* タブレット以下でパネルの画像の重なりをなくす */
  .top-panel {
    margin-top: 30px;
    -webkit-transform: none;
            transform: none;
    /* パネルの影を調節 */
  }
  .top-panel .smb-panels__item {
    -webkit-box-shadow: 10px 0 -10px rgba(0, 0, 0, 0.2);
            box-shadow: 10px 0 -10px rgba(0, 0, 0, 0.2);
  }
  .top-panel .smb-panels__item__body {
    padding: 30px;
  }
  /* フッターウィジェットエリア */
  .l-footer-widget-area__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 50%;
            flex: 0 1 50%;
    border: none !important;
  }
}

@media (max-width: 639px) {
  /******************************************************************

Stylesheet: 639px以下(スマホ)で適用

******************************************************************/
  /* ヒーロースライダー */
  .hero__title {
    top: 15% !important;
  }
  .hero__title h2 {
    font-size: 24px !important;
  }
  .hero__btn {
    bottom: 20% !important;
  }
  .hero__btn a {
    /* ボタンのサイズを小さく */
    width: 180px !important;
    height: 45px !important;
  }
  /* 3つ並んだパネル */
  .panels {
    /* パネルの余白追加 */
  }
  .panels .c-row__col {
    padding: 0 14px;
  }
  /* ボタン */
  .btn .smb-btn {
    width: 180px !important;
    height: 45px !important;
    margin-top: 30px !important;
  }
  /* 任意のタクソノミーの投稿（リッチメディア）のスタイル（スマホ） */
  .c-entries--rich-media .c-entries__item:nth-of-type(-n + 5) {
    /* 6番目を除く */
    margin-bottom: 30px;
  }
  .c-entries--rich-media .c-entry-summary__content {
    /* スマホでテキスト除去 */
    display: none;
  }
  /* フッター */
  .info-inner {
    display: block !important;
    text-align: center !important;
    height: auto !important;
    padding: 40px;
  }
  .info__logo {
    margin-right: 0 !important;
    margin-bottom: 25px;
  }
  .info__logo img {
    width: 120px;
  }
  .info__text {
    margin-bottom: 25px;
  }
}

.swiper-slide {
  /* 表示させる高さの調整 */
  position: relative;
  height: 70vh;
  overflow: hidden;
}

.swiper-slide .main-visual {
  width: 100%;
  height: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 9s ease;
  transition: -webkit-transform 9s ease;
  transition: transform 9s ease;
  transition: transform 9s ease, -webkit-transform 9s ease;
}

.swiper-slide-active .main-visual {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.swiper-slide-active .hero__title {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 1;
}

.swiper-slide-active .hero__btn {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 1;
}

.hero {
  overflow: hidden;
}

.hero__title {
  position: absolute;
  top: 30%;
  left: 50%;
  color: #fff;
  text-align: center;
  width: 90vw;
  -webkit-transform: translate(-50%, 20px);
          transform: translate(-50%, 20px);
  -webkit-transition: opacity 1.2s ease 1.5s, -webkit-transform 1.2s ease 1.5s;
  transition: opacity 1.2s ease 1.5s, -webkit-transform 1.2s ease 1.5s;
  transition: opacity 1.2s ease 1.5s, transform 1.2s ease 1.5s;
  transition: opacity 1.2s ease 1.5s, transform 1.2s ease 1.5s, -webkit-transform 1.2s ease 1.5s;
  z-index: 1;
  opacity: 0;
}

.hero__title h2 {
  font-size: 36px;
  text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.8);
  line-height: 2em;
}

.hero__title span {
  display: block;
}

.hero__btn {
  position: absolute;
  bottom: 30%;
  left: 50%;
  font-size: 16px;
  color: #fff;
  -webkit-transform: translate(-50%, 20px);
          transform: translate(-50%, 20px);
  -webkit-transition: opacity 1.2s ease 2.5s, -webkit-transform 1.2s ease 2.5s;
  transition: opacity 1.2s ease 2.5s, -webkit-transform 1.2s ease 2.5s;
  transition: opacity 1.2s ease 2.5s, transform 1.2s ease 2.5s;
  transition: opacity 1.2s ease 2.5s, transform 1.2s ease 2.5s, -webkit-transform 1.2s ease 2.5s;
  opacity: 0;
  z-index: 1;
}

.hero__btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  background-color: #cd162c;
  text-decoration: none;
  width: 240px;
  height: 60px;
}

/* ヘッダー */
/* グローバルメニュー位置調整 */
.l-header .c-navbar__item {
  position: relative;
}

.l-header .c-navbar__item::after {
  /* メニューアイテムの左に区切り線 */
  content: '';
  position: absolute;
  top: 50%;
  display: block;
  height: 30px;
  margin-top: -15px;
  border-right: 1px solid #ccc;
}

.l-header .c-navbar__item:last-of-type::before {
  /* 最後のメニューアイテムの右に区切り線 */
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  height: 30px;
  margin-top: -15px;
  border-right: 1px solid #ccc;
}

.btn .smb-btn {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 240px;
  height: 60px;
  margin-top: 60px;
}

/* 最近の投稿（テキスト）のスタイル */
.c-entries--text {
  position: relative;
  background-color: #f9f9f9;
  border-right: 1px solid #eee;
  border-left: 1px solid #eee;
}

.c-entries--text .c-entries__item a {
  padding-right: 2em;
  padding-left: 2em;
}

.c-entries--text .c-entries__item .c-entry-summary {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
}

.c-entries--text .c-entries__item .c-entry-summary__title {
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.c-entries--text .c-entries__item .c-entry-summary__figure {
  display: block;
  position: absolute;
  top: -2px;
  left: 6em;
  /* 日付の長さに合わせて調整 */
  background-color: transparent;
}

.c-entries--text .c-entries__item .c-entry-summary__figure img, .c-entries--text .c-entries__item .c-entry-summary__figure::before {
  display: none;
}

.c-entries--text .c-entries__item .c-entry-summary__figure span {
  background-color: #fff;
  border-radius: 15px;
}

.c-entries--text .c-entries__item .c-entry-summary__term--category-4 {
  color: #333;
  border: 1px solid #333;
}

.c-entries--text .c-entries__item .c-entry-summary__term--category-6 {
  color: #cd162c;
  border: 1px solid #cd162c;
}

.c-entries--text .c-entries__item .c-entry-summary__term--category-5 {
  color: #104f96;
  border: 1px solid #104f96;
}

.c-entries--text .c-entries__item .c-entry-summary__term--category-7 {
  color: #e97501;
  border: 1px solid #e97501;
}

.c-entries--text .c-entries__item .c-entry-summary__term {
  position: relative;
  left: 0;
  white-space: nowrap;
}

.c-entries--text .c-entries__item .c-entry-summary__meta {
  margin-right: 10rem;
  /* カテゴリー名の長さにあわせて調整 */
}

.c-entries--text .c-entries__item:hover .c-entry-summary__title {
  color: #cd162c;
}

/* 任意のタクソノミーの投稿（リッチメディア）のスタイル */
.c-entries--rich-media .c-entries__item:nth-of-type(-n + 3) {
  /* メディアの下に余白を増やす */
  margin-bottom: 80px;
}

.c-entries--rich-media .c-entries__item .c-entry-summary {
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
  /* 作成したカテゴリーIDによって末尾の番号が変わります */
}

.c-entries--rich-media .c-entries__item .c-entry-summary__figure {
  /* border-leftを適応するためmarginを消す */
  margin-bottom: 0;
}

.c-entries--rich-media .c-entries__item .c-entry-summary__figure img {
  /* 変化の時間 標準の装飾を除去 */
  -webkit-transition: -webkit-transform 0.6s;
  transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
  transition: transform 0.6s, -webkit-transform 0.6s;
  -webkit-filter: none !important;
          filter: none !important;
}

.c-entries--rich-media .c-entries__item .c-entry-summary__term--category-6 {
  background-color: rgba(205, 22, 44, 0.8);
}

.c-entries--rich-media .c-entries__item .c-entry-summary__term--category-5 {
  background-color: rgba(16, 79, 150, 0.8);
}

.c-entries--rich-media .c-entries__item .c-entry-summary__term--category-7 {
  background-color: rgba(233, 117, 1, 0.8);
}

.c-entries--rich-media .c-entries__item .c-entry-summary__body {
  /* 見栄えを良くするため左側に余白をつける テキスト左側の縦線 */
  padding-left: 30px;
  border-left: 5px solid #cd162c;
}

.c-entries--rich-media .c-entries__item .c-entry-summary__header {
  /* c-entry-summary__figureでmarginを除去したので余白を埋め合わせ */
  padding: 20px 0;
}

.c-entries--rich-media .c-entries__item .c-entry-summary__content {
  /* テキスト部分の装飾 */
  color: #333;
  font-size: 14px;
  line-height: 2.25em;
}

.c-entries--rich-media .c-entries__item .c-entry-summary__meta {
  /* 投稿者・日時の除去 */
  display: none;
}

.c-entries--rich-media .c-entries__item a:hover .c-entry-summary__figure img {
  /* ホバー時の画像拡大 */
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

/* フッターの上 */
.info {
  /* フッター上部にボーダー */
  border-top: 1px solid #ccc;
}

.info-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1180px;
  height: 140px;
}

.info__logo {
  margin-right: 30px;
}

.info__logo img {
  width: 150px;
}

.info__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 14px;
}

.info .social-nav {
  margin-left: 0;
}

.info .social-nav__icon {
  display: inline;
  margin: 0 10px;
  list-style: none;
}

.info .social-nav__icon a {
  color: #212121;
}

/* フッターウィジェットエリア */
.l-footer-widget-area {
  /* ウィジェットエリアの上部にボーダーを入れるため、paddingを除去 */
  border-top: 1px solid #ccc;
  padding: 0;
}

.l-footer-widget-area .c-row {
  /* 左右にボーダー */
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

.l-footer-widget-area__item {
  /* paddingを除去し、詰まったのでこちらで追加 */
  padding: 40px;
}

.l-footer-widget-area__item:nth-of-type(n + 2) {
  /* 最初の一つ目を除くブロックにボーダー */
  border-left: 1px solid #ccc;
}

.l-footer-widget-area__item .c-widget__title {
  /* タイトルを左寄せ */
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: #26BDC2;
}

.l-footer-widget-area__item .c-widget__title::before, .l-footer-widget-area__item .c-widget__title::after {
  /* 左右のボーダーの除去 */
  display: none;
}





 /*円形＋斜め影（アクセント用）*/

.sm-circle-shadow p{
  background:#E2F1DB;
  padding:clamp(24px,4vw,40px);
  border-radius:999px;
  text-align:center;

  box-shadow: 10px 10px 0 #5BB531;

  max-width:520px;

  margin:auto;
}

/* SP時は楕円化して可読性確保 */
@media(max-width:640px){
  .sm-circle-shadow p{
    border-radius:24px;
    box-shadow:6px 6px 0 rgba(0,0,0,0.18);
  }
}




/*① 線なし・下＋右に影の四角（万能タイプ）*/

.sm-box-shadow{
 background:#fff;
 padding:clamp(16px, 3vw, 32px);
 border-radius:6px;

 box-shadow:0 10px 25px rgba(0,0,0,0.15);

 transition:.3s ease;
}

.sm-box-shadow:hover{
 box-shadow:0 18px 35px rgba(0,0,0,0.2);
 transform:translateY(-4px);
}


/* =========================
   カプセル型タイトル装飾
========================= */
.nf-title-pill{
	display: inline-block;
	background: #FFF;        /* ← この色が画像の青 */
	color: #fff;
	padding: 14px 32px;         /* ← 文字周りの余白 */
	border-radius: 999px;       /* ← 完全カプセル */
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.4;
	text-align: center;
	border:1px solid green;
}

/* 見出し中央配置したい時 */
.wp-block-heading .nf-title-pill{
	margin-left:auto;
	margin-right:auto;
}

/* スマホ調整 */
@media (max-width:640px){

	.nf-title-pill{
		padding: 12px 22px;
		font-size: 1rem;
		letter-spacing:.05em;
	}
}






/* ナビ全体 */
.veg-nav{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin-bottom:40px;
}

/* ボタン */
.veg-nav a{
  text-align:center;
  padding:12px 10px;
  border:1px solid #5BB531;
  border-radius:40px;
  color:#5BB531;
  background:transparent;
  text-decoration:none;
  font-weight:600;
  transition:.25s ease;
}

/* PCホバー */
.veg-nav a:hover{
  background:#5BB531;
  color:#fff;
  transform:translateY(-2px);
}

/* タップ時 */
.veg-nav a:active{
  transform:scale(.97);
}
.veg-nav a{
  font-size:0.8rem !important; /* ← 少し小さく（現在より1段階下げ） */
}



/* スマホ */
@media(max-width:768px){
  .veg-nav{
    grid-template-columns:repeat(3,1fr);
  }
.veg-nav a {
    text-align: center;
    padding: 12px 10px;
    border: 1px solid #5BB531;
    border-radius: 40px;
    color: #5BB531;
    background: transparent;
    text-decoration: none;
    font-weight: 600;
    font-size: 12px;
    transition: .25s ease;
}
	
}










/* 上画像 */
.sec-about .wp-block-column .wp-block-group > figure:first-child{
  margin-bottom:0;
  position:relative;
	
  z-index:1;
}

/* 下画像を重ねる */
.sec-about .wp-block-column .wp-block-group > figure:last-child{
  margin-top:-30px;   /* ← 重なり量調整 */
  margin-left:-10px !important;   /* ← 横ズラし */
  position:relative;
  z-index:2;
}

/* 下画像に影（任意） */
.sec-about .wp-block-column .wp-block-group > figure:last-child img{
  box-shadow:0 20px 40px rgba(0,0,0,.15);
}

@media(max-width:768px){
  .sec-about .wp-block-column .wp-block-group > figure:last-child{
    margin-top:-40px;
    margin-left:20px;
  }
}



/**/
/*画像を楕円＋ぼかしにするCSS*/

.kodawari-img {
  width: 100%;
  max-width: 320px;
  aspect-ratio: 4 / 3; /* 楕円の比率 */
  margin: 0 auto 16px;
  overflow: hidden;
  border-radius: 50%;
  position: relative;
}

.kodawari-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 周囲をぼかす（フェードマスク） */
.kodawari-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle,
    rgba(255,255,255,0) 60%,
    rgba(255,255,255,0.8) 85%,
    rgba(255,255,255,1) 100%);
}
.kodawari-item h3
{
	text-align: center;
}


/**/
/*沿革*/

.timeline {
  position: relative;
  padding-left: 40px;
}

/* 縦ライン */
.timeline::before {
  content: "";
    position: absolute;
    left: 21px;
    top: 0;
    width: 2px;
    height: 100%;
    background: #5BB531;
}

.timeline-item {
  position: relative;
  margin-bottom: 40px;
}

/* ドット */
.timeline-item::before {
  content: "";
  position: absolute;
  left: -25px;
  top: 6px;
  width: 14px;
  height: 14px;
  background: #5BB531;
  border-radius: 50%;
}

/* 年 */
.timeline-year {
  font-weight: bold;
  font-size: 20px;
  color: #5BB531;
  margin-bottom: 8px;
}

/* テキスト */
.timeline-content {
  font-size: 16px;
  line-height: 1.8;
}

/*2026/03/08追加*/
@media (min-width: 768px){

  .timeline-item{
    display:flex;
    align-items:flex-start;
    gap:20px; /* 西暦と文章の間のスペース */
  }

  .timeline-year{
    min-width:120px; /* 西暦の幅を固定 */
    font-weight:700;
  }

  .timeline-content{
    flex:1;
  }

}

.timeline-item::before {
  box-shadow: 0 0 0 4px rgba(91,181,49,0.2);
}
.timeline-content {
  background: #f4efe4;
  padding: 16px 24px;
  border-radius: 8px;
}


/**/
/*下層に帯を作る*/

.c-page-header {
  position: relative;

}
.c-page-header[data-has-image="true"] {
  height: calc(clamp(300px, 62.5vw, 550px) + 100px);
}

.c-page-header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100px; /* 帯の高さ */
  background: #327F3C; /* 色変更可能 */
}

.c-page-header__content {
 position: absolute;
  bottom: 0;           /* ←40pxを削除 */
  left: 0;             /* ←50%削除 */
  width: 100%;
  height: 100px;       /* ←帯と同じ高さ */

  display: flex;
  flex-direction: column;
  justify-content: center; /* 縦中央 */
  align-items: center;     /* 横中央 */

  z-index: 2;
  color: #fff;
  text-align: center;
}

.c-page-header__title {
  font-size: clamp(28px, 4vw, 48px);
  margin-bottom: 10px;
}

@media (max-width: 768px) {
  .c-page-header::after {
    height: 110px;
  }
}





/**/
/*エントリーステップ*/

/* =========================
STEPレイアウト
========================= */

.smb-step__body{
 position:relative;
 padding-left:40px;
}

/* 縦線 */

.smb-step__body::before{
 content:"";
 position:absolute;
 left:74px;
 top:0;
 bottom:0;
 width:2px;
 background:#d9e6d9;
}

/* STEPアイテム */

.smb-step__item{
 position:relative;
 margin-bottom:40px;
	background:#f3faf3;
	 box-shadow:0 4px 10px rgba(0,0,0,0.05);
	 border-radius:10px;
	padding:1rem;
}

/* 数字 */

.smb-step__item__number{
 position:absolute;
 left:-72px;
 top:26px;
 font-size:36px;
 font-weight:700;
 color:#5BB531;
	background:#fff;
}

/* 01 02 表示 */

.smb-step__item__number::before{
 counter-increment:step;
 content:counter(step, decimal-leading-zero);
}

.smb-step__body{
 counter-reset:step;
}

/* STEP文字 */

.smb-step__item__title::before{
 content:"";
 display:block;
 font-size:12px;
 font-weight:700;
 color:#5BB531;
 letter-spacing:1px;
 margin-bottom:4px;
}

/* カード */

.smb-step__item__summary{
 

 padding:5px 32px;
 margin-top:3px;

}

/* タイトル */

.smb-step__item__title span{
 font-size:20px;
 font-weight:700;
 color:#2f6f33;
	    padding-left: 1rem;
}

/* テキスト */

.smb-step__item__summary p{
 margin:0;
 line-height:1.8;
}

@media (max-width: 768px) {

	
	.smb-step__body::before{
 content:"";
 position:absolute;
 left:37px;
 top:0;
 bottom:0;
 width:2px;
 background:#d9e6d9;
 }
	
	.smb-step__body {
    list-style: none;
    padding-left: 0px;
    position: relative;
}
	
	.smb-step__item__summary {
    padding: 5px 10px;
    margin-top: 3px;
}
	
}








/**/
/*トップのメニューのコンタクトの修正*/

.p-global-nav .c-navbar__item[aria-haspopup=true]::before{
 display:none;
}

.c-navbar__submenu::before{
 content:"";
 position:absolute;
 top:-10px;
 left:50%;
 transform:translateX(-50%);
 border-left:8px solid transparent;
 border-right:8px solid transparent;
 border-bottom:10px solid #5BB531;
}


.c-navbar__submenu{
  min-width: auto;
  width: max-content;
  padding: 10px 20px;
}

.c-navbar__submenu{
 box-shadow:0 10px 25px rgba(0,0,0,0.15);
}



/**/
/*農業の１日*/

/* ===== 全体背景 ===== */

.timeline-day{
 background:#fff;
 padding:80px 0;
}

/* ===== タイムライン ===== */

.timeline-day .smb-section__body{
 position:relative;
 padding-left:220px;
}

/* 縦線 */

.timeline-day .smb-section__body::before{
 content:"";
 position:absolute;
 left:160px;
 top:0;
 bottom:0;
 width:4px;
 background:#bfe2b6;
}

/* ===== アイテム ===== */

.timeline-day .timeline-item{
 position:relative;
 margin-bottom:35px;
}

/* ドット */

.timeline-day .timeline-item::before{
 content:"";
 position:absolute;
 left:-86px;
 top:16px;
 width:18px;
 height:18px;
 border-radius:50%;
 background:#5BB531;
 border:5px solid #eef7ea;
 box-shadow:0 0 0 4px #bfe2b6;
}

/* ===== 時間 ===== */

.timeline-day .timeline-time{
 position:absolute;
 left:-180px;
 top:-6px;
 font-size:30px;
 font-weight:700;
 color:#4aa126;
}

/* ===== カード（画像あり） ===== */

.timeline-day .timeline-card:has(img[src]){

 background:#4aa126;
 color:#fff;

 padding:30px;

 border-radius:40px;

 display:grid;
 grid-template-columns:1fr 260px;
 gap:20px;
 align-items:center;

}

/* 吹き出し */

.timeline-day .timeline-card:has(img[src])::before{

 content:"";

 position:absolute;

 left:-18px;
 top:50px;

 border-top:18px solid transparent;
 border-bottom:18px solid transparent;
 border-right:18px solid #4aa126;

}

/* ===== テキスト ===== */

.timeline-day .timeline-card .text{
 display:flex;
 flex-direction:column;
 gap:12px;
}

.timeline-day .timeline-card h3{
 font-size:24px;
 margin:0;
}

.timeline-day .timeline-card p{
 margin:0;
 line-height:1.9;
 font-size:16px;
 max-width:520px;
}

/* ===== 画像 ===== */

.timeline-day .timeline-card img{
 width:260px;
 border-radius:14px;
 display:block;
}

/* ===== 画像なし ===== */

.timeline-day .timeline-card:not(:has(img[src])){
 background:none;
 padding:0;
 display:block;
 color:#333;
}

/* ===== スマホ ===== */

@media (max-width:768px){

.timeline-day .smb-section__body{
 padding-left:100px;
}

.timeline-day .smb-section__body::before{
 left:62px;
}

.timeline-day .timeline-item::before{
 left:-50px;
}

.timeline-day .timeline-time{
 left:-90px;
 font-size:20px;
	top:-17px;
}

.timeline-day .timeline-card:has(img[src]){
 grid-template-columns:1fr;
}

.timeline-day .timeline-card img{
 width:100%;
}

}



.timeline-day .timeline-card h3{
 font-size:28px;
 margin:0 0 12px;
 padding-left:14px;
 border-left:4px solid #dff3d7;
}
.timeline-day .timeline-card:has(img[src]){
 box-shadow:0 10px 25px rgba(0,0,0,0.12);
 transition:all .3s ease;
}







/**/

/* =========================================
インタビューセクション（Q&A形式対応）
Snow Monkey / Gutenberg対応
テーマカラー #5BB531
========================================= */


/* セクション */

.interview-section{
 background:#f6fbf4;
 padding:80px 0;
}


/* インタビューブロック */

.interview-block{
 align-items:center;
 margin-bottom:140px;
 gap:70px;
}


/* テキスト */

.interview-text{
 display:flex;
 justify-content:flex-start;
}

.interview-content{
 max-width:560px;
}


/* リード */

.interview-lead{
 font-size:14px;
 font-weight:700;
 color:#5BB531;
 letter-spacing:.08em;
 margin-bottom:14px;
}


/* 見出し */

.interview-text h3{
 font-size:28px;
 font-weight:700;
 line-height:1.4;
 margin:12px 0 20px;
 color:#222;
}


/* 区切り線 */

.interview-text .wp-block-separator{
 width:50px;
 height:3px;
 background:#5BB531;
 border:none;
 margin:22px 0 26px;
}
.interview-text .wp-block-separator{
 width:40px;
 height:3px;
 background:#5BB531;
 border:none;
 margin:18px 0 26px 0;
}


/* 本文 */

.interview-text p{
 font-size:16px;
 line-height:1.9;
 color:#444;
 margin-bottom:18px;
}



/* ==============================
Q&Aスタイル
============================== */

/* 質問 */

.interview-content h4,
.interview-content strong.q{
 font-size:20px;
 font-weight:700;
 color:#5BB531;
 margin-top:50px;
 margin-bottom:14px;
 line-height:1.5;
}


/* Q. を少し強調 */

.interview-content strong.q::before{
 content:"Q. ";
 font-weight:700;
}


/* 回答 */

.interview-content p{
 margin-bottom:18px;
}


/* ==============================
画像
============================== */

.interview-image{
 display:flex;
 justify-content:center;
 padding-top:60px;
}

.image-wrap{
 max-width:520px;
 width:100%;
}

.image-wrap img{
 width:100%;
 border-radius:20px;
 box-shadow:0 25px 50px rgba(0,0,0,0.08);
 transition:.35s;
}

.image-wrap img:hover{
 transform:translateY(-6px);
 box-shadow:0 35px 70px rgba(0,0,0,0.12);
}



/* ==============================
交互レイアウト
============================== */

.interview-block.reverse{
 flex-direction:row-reverse ;
}



/* ==============================
レスポンシブ
============================== */

@media (max-width:768px){

 .interview-section{
  padding:60px 0;
 }

 .interview-block{
  flex-direction:column;
  gap:40px;
  margin-bottom:90px;
 }

 .interview-block.reverse{
  flex-direction:column;
 }

 .interview-image{
  padding-top:0;
 }

 .interview-text h3{
  font-size:22px;
 }

 .interview-content h4{
  font-size:18px;
 }

}



.interview-content h4{
 position:relative;
 padding-left:48px;
 font-size:22px;
 font-weight:700;
 color:#5BB531;
}

.interview-content h4::before{
 content:"Q";
 position:absolute;
 left:0;
 top:0;
 width:32px;
 height:32px;
 border-radius:50%;
 background:#5BB531;
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 font-weight:700;
 font-size:14px;
}
.answer{
 position:relative;
 padding-left:48px;
 line-height:1.9;
}

.answer::before{
 content:"A";
 position:absolute;
 left:0;
 top:0;
 width:32px;
 height:32px;
 border-radius:50%;
 background:#e9f4e5;
 color:#5BB531;
 display:flex;
 align-items:center;
 justify-content:center;
 font-weight:700;
 font-size:14px;
}





/**/



/*# sourceMappingURL=style.css.map */