@charset "utf-8";

/* ======================================================
	custom
====================================================== */

.zen-old-mincho-regular {
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
  }
  .zen-old-mincho-bold {
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
  }
    .Index .News  {
padding-bottom: 130px;
background-position: left 3vw top 3vw, left 3vw bottom var(--padding_tb), right 3vw bottom 0vw;
    }
  .Index .News .ExBtn {
    margin-top: 60px;
  }
  #Index .Index .Ct.contents_list {
    padding-top: 30px;
  }
 
  @media (min-width: 480px) {
	    .Bank .tobiraL > :is(a, .a) > .Wrap {
	display: grid !important;
grid-template-rows: auto 30%;
	
}
    .Bank .doorway.banner .Item :is(a, .a) {
	aspect-ratio: 2 / 3;
  }
    .Bank .doorway.banner .Item :is(a, .a) > .Wrap > .icon {
	order: 2;
	grid-area: unset;
  }
  .Bank .doorway.banner .Item :is(a, .a) > .Wrap > .title {
	order: 1;
	grid-area: unset;
  width: 100% !important;
  }
  .Bank .doorway.banner .ClassTeiki .title .catch {
    justify-self: center;
    width: 100%;
  }
  .Bank .doorway.banner .ClassTeiki .title .name {
    justify-self: center;
    margin-right: 0;
  }
  .Bank .doorway.banner .ClassCampaign .title .catch {
    width: 100%;
  }
  .Bank .doorway.banner .title .name {
    margin-bottom: 20px;
  }
  .Bank .doorway.banner .Item :is(a, .a) > .Wrap > .icon {
    width: 100%;
    margin: 0;
    left: 0;
}
.Bank .doorway.banner .Item .icon img {
  height: 8.5em;
  object-fit: contain;
  margin-left: auto;
  margin-right: auto;
}
.Bank .doorway.banner .title .catch {
  position: absolute;
  top: 30%;
}
  .Bank .doorway.banner .title .name {
    margin-bottom: 20px;
    position: absolute;
    top: 10px;
  }
  .Bank .tobiraL > :is(a, .a) > .Wrap {
    display: block !important;
    grid-template-rows: initial;
  }
  }
  

  .ClassOkanenosodatekata > a {
    background: #fbc80d !important;
  }
  .ClassOkanenosodatekata .Wrap::before {
    background-color: #83ccd3 !important;
  }
  .Bank .tobiraL::after {
    display: inline-block;
    content: '';
    background-image: url('../img/yorizou_copy.png');
    width: 46px;
    height: 11px;
    position: absolute;
    bottom: 13px;
    left: 16px;
    background-size: contain;
    background-repeat: no-repeat;
    }

    @media (max-width: 479px) {
    .doorway.banner .ClassOkanenosodatekata :is(a, .a) > .Wrap > .icon {
      width: 103px;
      left: 0.5em;
    }
    .doorway.banner .Item .icon img {
      object-fit: contain;
    }
    .Bank .tobiraL::after {
      bottom: 6px;
      left: 8px;
    }
        .Index .News {
      background-image: url(../img/25310984_double.svg), url(../img/69303803.svg), url(../img/115310180.svg);
    }
    .Index .News {
      background-position: left 3vw top 10vw, left 3vw bottom var(--padding_tb), right 3vw bottom 0vw;
    }
  }

  @media (max-width: 768px) {

  }



  /* 健康経営宣言 */
  /* ==================================================
   健康経営宣言（aboutus_kenkoukeieisengen.php）
   ※テンプレートのスタイルに負けないよう .Wrap.kk_page から指定
================================================== */
.Wrap.kk_page p { margin: 0; line-height: 1.9; }
.Wrap.kk_page ul { list-style: none; margin: 0; padding: 0; }
.Wrap.kk_page .kk_red { color: #e60012; font-weight: bold; }

/* セクション間の余白 */
.Wrap.kk_page > section + section { margin-top: 6em; }

/* ---------- 健康経営宣言 ---------- */
.Wrap.kk_page .kk_sengen {
	display: flex; align-items: stretch;
	padding: 0; overflow: hidden;
}
.Wrap.kk_page .kk_sengen_txt { flex: 1; padding: 2.5em 2em; }
.Wrap.kk_page .kk_sengen_txt .kk_note { margin-top: 0.5em; font-size: 0.85em; }
.Wrap.kk_page .kk_sengen_txt .kk_sign { margin-top: 1em; text-align: right; font-size: 1.2em;}
.Wrap.kk_page .kk_sengen_txt .kk_sign span { display: block; font-size: 0.85em; }
.Wrap.kk_page .kk_sengen_photo { flex: 0 0 25%; }
.Wrap.kk_page .kk_sengen_photo img {
	display: block; width: 100%; height: 100%;
	object-fit: cover; object-position: center top;
}

/* ---------- 推進体制 ---------- */
.Wrap.kk_page .kk_taisei { display: flex; align-items: center; gap: 30px; }
.Wrap.kk_page .kk_taisei_txt { flex: 0 0 38%; }
.Wrap.kk_page .kk_taisei_fig { flex: 1; }
.Wrap.kk_page .kk_taisei_fig img { display: block; width: 100%; height: auto; }

.Wrap.kk_page .kk_btn {
	display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 8px;
	width: 100%; max-width: 300px; margin-top: 40px; padding: 8px 20px;
	border: 1px solid #666; border-radius: 999px;
	background: #fff; color: #333; line-height: 1.5; text-decoration: none;
	transition: background-color 0.2s;
}
/* テンプレートが付けるPDFアイコン・下線を打ち消す */
.Wrap.kk_page .kk_btn::before,
.Wrap.kk_page .kk_btn::after { content: none; display: none; }
.Wrap.kk_page .kk_btn:hover { background: #fdf5d9;opacity: 1; }
.Wrap.kk_page .kk_btn:focus-visible { outline: 2px solid #8b5e34; outline-offset: 2px; }
.Wrap.kk_page .kk_btn img { width: 24px; height: auto; margin: 0; }

/* ---------- 健康についての取り組み ---------- */
.Wrap.kk_page .kk_bar {
	padding: 10px 40px; border-radius: 999px;
	background: #fde6d4; font-size: 1.1em; font-weight: bold;
}
.Wrap.kk_page .kk_lead { margin: 1.5em 40px 2em; }

.Wrap.kk_page .kk_item {
	margin: 0 20px 2em; padding: 25px 30px;
	border-radius: 15px; background: #fdf5d9;
}
.Wrap.kk_page .kk_item:last-child { margin-bottom: 0; }
.Wrap.kk_page .kk_item h3 {
	margin: 0 0 1em; padding: 0 0 0.6em;
	border-bottom: 1px solid #999;
	font-size: 1.1em; font-weight: bold;
}
.Wrap.kk_page .kk_item_lead { margin-bottom: 1em; }

.Wrap.kk_page .kk_list > li {
	position: relative; margin: 0 0 0.5em; padding-left: 40px;
	line-height: 1.8;
}
.Wrap.kk_page .kk_list > li:last-child { margin-bottom: 0; }
.Wrap.kk_page .kk_list > li::before {
	content: ""; position: absolute; left: 8px; top: 0.5em;
	width: 12px; height: 12px; border-radius: 50%; background: #d5c3b3;
}
.Wrap.kk_page .kk_list .kk_sub  { display: block; padding-left: 1em; }
.Wrap.kk_page .kk_list .kk_sub2 { display: block; padding-left: 2em; }

.Wrap.kk_page .kk_item_txt { margin-top: 2em; }
.Wrap.kk_page .kk_item_txt p + p { margin-top: 1em; }
.Wrap.kk_page .kk_score > span { display: block; }
.Wrap.kk_page .kk_score .kk_score_ttl { padding-left: 1em; }
.Wrap.kk_page .kk_score .kk_score_num { padding-left: 1.5em; }

.Wrap.kk_page .kk_photos {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
	margin-top: 2.5em;
}
.Wrap.kk_page .kk_photos li { margin: 0; padding: 0; }
.Wrap.kk_page .kk_photos li::before { content: none; }
.Wrap.kk_page .kk_photos img { display: block; width: 100%; height: auto; }
.kk_item .kk_score.kk_red {
  margin-top: 0 !important;
}
/* ---------- SP ---------- */
@media screen and (max-width: 768px) {
	.Wrap.kk_page > section + section { margin-top: 6em; }
	.Wrap.kk_page .Border { letter-spacing: 0.03em; }
	.Wrap.kk_page p { line-height: 1.8; }

	/* SP専用の改行・非表示 */
	.Wrap.kk_page .kk_spblock { display: block; }
	.Wrap.kk_page .kk_spindent { padding-left: 0.5em; }
	.Wrap.kk_page .kk_sphide { display: none; }

	/* 健康経営宣言：本文 → 注釈 → 写真＋署名 */
	.Wrap.kk_page .kk_sengen {
		display: grid; grid-template-columns: 45% 1fr;
		column-gap: 1em; align-items: end;
		padding: 1.5em 1.2em;
	}
	.Wrap.kk_page .kk_sengen_txt { display: contents; }
	.Wrap.kk_page .kk_sengen_txt > p { grid-column: 1 / -1; }
	.Wrap.kk_page .kk_sengen_txt .kk_note { padding-left: 1em; text-indent: -1em; }
	.Wrap.kk_page .kk_sengen_photo { grid-column: 1; grid-row: 3; margin-top: 1.5em; }
	.Wrap.kk_page .kk_sengen_photo img { height: auto; border-radius: 10px; }
	.Wrap.kk_page .kk_sengen_txt .kk_sign {
		grid-column: 2; grid-row: 3;
		align-self: center;
		margin: 1.5em 0 0; text-align: left;
    font-size: 1.2em;
	}

	/* 推進体制：本文 → 図 → ボタン */
	.Wrap.kk_page .kk_taisei { flex-direction: column; align-items: stretch; gap: 1.5em; }
	.Wrap.kk_page .kk_taisei_txt { display: contents; }
	.Wrap.kk_page .kk_taisei_txt p { order: 1; }
	.Wrap.kk_page .kk_taisei_fig { order: 2; flex: none; padding: 0 0.5em; }
	.Wrap.kk_page .kk_btn { order: 3; max-width: none; margin: 0; font-weight: bold; }

	/* 健康についての取り組み */
	.Wrap.kk_page .kk_bar { padding: 8px 1em; font-size: 1em; text-align: center; }
	.Wrap.kk_page .kk_lead { margin: 1.2em 0.5em 1.5em; font-size: 0.9em; }
	.Wrap.kk_page .kk_item { margin: 0 0.8em 1.8em; padding: 1.2em 1em; }
	.Wrap.kk_page .kk_item h3 { font-size: 1em; border-bottom: 2px solid #888; }
	.Wrap.kk_page .kk_red { font-size: 1.05em; }
	.Wrap.kk_page .kk_list > li { margin-bottom: 0.7em; padding-top: 0; padding-bottom: 0; padding-left: 24px; }
	.Wrap.kk_page .kk_list > li::before { left: 2px; width: 10px; height: 10px; }
	.Wrap.kk_page .kk_list .kk_sub  { padding-left: 0.5em; }
	.Wrap.kk_page .kk_list .kk_sub2 { padding-left: 1em; }
	.Wrap.kk_page .kk_score .kk_score_ttl,
	.Wrap.kk_page .kk_score .kk_score_num { padding-left: 0; }
	.Wrap.kk_page .kk_photos { grid-template-columns: 1fr; gap: 1.5em; margin-top: 2em; }
  
  .AboutusKenkoukeieisengen {
    margin-top: 6em !important;
  }
}