@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/* 変数 */
:root {
	--bg-color: #FBFBF3; 
	--orange: #FFAA44;
	--yellow-orange: #F4BB72; 
	--yellow-orange: #ffbc4d; 
	--green: #58B8B6;
	--orange-gradation: linear-gradient(86deg,rgb(255, 192, 0) 0%, rgb(240, 160, 42) 100%);

	--fs12:  clamp(9px, calc(100vw * 12 / 1366) , 12px); 
	--fs13:  clamp(10px, calc(100vw * 13 / 1366) , 13px); 
	--fs14:  clamp(11px, calc(100vw * 14 / 1366) , 14px); 
	--fs16:  clamp(12px, calc(100vw * 16 / 1366) , 16px); 
	--fs18:  clamp(13px, calc(100vw * 18 / 1366) , 18px); 
	--fs20:  clamp(14px, calc(100vw * 20 / 1366) , 20px); 



	--card-shadow: 0 3px 6px rgba(0,0,0,0.1);
	--card-shadow-hover: 0 3px 12px rgba(0,0,0,0.2); 

	--okm-shin-go-l: "UD Shin Go Light" , "UDShinGoPro-Light", "Noto Sans JP", sans-serif;
	--okm-shin-go-r: "UD Shin Go Regular" ,  "UDShinGoPro-Regular", "Noto Sans JP", sans-serif;
	--okm-shin-go-m: "UD Shin Go Medium" , "UDShinGoPro-Medium" , "Noto Sans JP", sans-serif;
	--okm-shin-go-db: "UD Shin Go DemiBold" , "UDShinGoPro-DeBold", "Noto Sans JP", sans-serif;
	--okm-shin-go-b: "UD Shin Go Bold" , "UDShinGoPro-Bold", "Noto Sans JP", sans-serif;
	--okm-shin-go-h: "UD Shin Go Heavy" , "UDShinGoPro-Heavy" , "Noto Sans JP", sans-serif;

}

.wb-index .breadcrumbsWrapper {
	background: linear-gradient(180deg,rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
} 

.wb-index .breadcrumbs ol li a,
.wb-index .breadcrumbs ol li a:link,
.wb-index .breadcrumbs ol li a:visited,
.wb-index .breadcrumbs ol li a:hover,
.wb-index .breadcrumbs ol li a:focus,
.wb-index .breadcrumbs ol li a:active,
.wb-index .breadcrumbs ol li a,
.wb-index .breadcrumbs ol li span {
	color: #fff; 
}

.wb-index .breadcrumbs ol li:after {
	content: ""; 
	display: block; 
	position: absolute; 
	top: 50%; 
	right: 0px; 
	transform: translate(0, -50%);

	background-color: #fff; 
	mask-image: url("/global_assets/images/pankuzu_arrow.svg");
	mask-repeat: no-repeat;
	mask-position: 50%; 
	mask-size: 12px 12px;
	-webkit-mask-image: url("/global_assets/images/pankuzu_arrow.svg");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: 50%;
	-webkit-mask-size: 12px 12px;
	background-image: none !important; 
}

.wb-index .breadcrumbs ol li:last-of-type:after {
	display: none; 
}

.breadcrumbs ol {
	flex-wrap: wrap;
	gap: 5px 0; 
}

.corp-well-being {

}


article.wb {
	/* フォント */
	--design-min: 0.75px; /* モバイル基準フォントサイズ  →16remで12px相当*/
	--design-max: 1px; /* PC基準フォントサイズ →16remで16px相当 */
	--design-min-vw: 375; /* 最小流動範囲 */
	--design-max-vw: 1024; /* 最高流動範囲 */




	line-height: 2; 
	color: #444; 
	font-size: var(--fs16); 

}



/* pタグリセット */
.main article .well-being-top p {

}

.main article .well-being-top p:has(+p){
	margin-bottom: 0.5em; 
}

/* トップページセクション 一括指定 */
.wb-philosophy,
.wb-top-message,
.wb-governance,
.wb-strategy-map,
.wb-engagement-survey,
.wb-targets,
.wb-recognition,
.wb-partnership,
.wb-initiatives {
	padding: clamp(20px, calc(100dvw * 100 / 1200) , 100px) 0 clamp(30px, calc(100dvw * 120 / 1200) , 120px); 
	text-align: center; 
}



/* タイトルセクション */
.page-hero {
	position: relative; 
	margin-top: -52px;
	margin-bottom: 20px; 
}


.page-hero__inner {
	aspect-ratio: 1;
	width: 100dvw;
	position: relative; 
}



.page-hero__media {
	width: 100dvw;
	aspect-ratio: 1;
	position: relative; 
	z-index: 1; 


	 mask-image: url("/corporate/sustainability/our-initiatives/health/images/title_image_mask_sp.svg");
	mask-repeat: no-repeat;
	mask-position: 0 0;
	mask-size: cover;

	-webkit-mask-image: url("/corporate/sustainability/our-initiatives/health/images/title_image_mask_sp.svg");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	-webkit-mask-size: cover;  

}




.page-hero__media img {
	position: absolute; 
	width: 100%; 
	height: 100%; 
	object-fit: cover; 
}


.page-hero__content {
	position: absolute; 
	top: 0px; 
	left: 0px; 
	z-index: 3; 
	left: 5%; 
	top: 50%
}

.page-hero__text {
	display: block; 
}

.page-hero__title{
	position: relative;
	display: grid;
	grid-template-columns: max-content 1fr;
	grid-template-rows: auto auto;
	grid-template-areas:
	"shoulder primary"
	"shoulder secondary";
	column-gap: 0;
	row-gap: 0;
}


.page-hero__title .page-hero__title-shoulder,
.page-hero__title .page-hero__title-primary,
.page-hero__title .page-hero__title-secondary {
	position: relative;
}


.page-hero__title-shoulder {
	grid-area: shoulder;
	border: 5px solid var(--yellow-orange); 
	border-width:clamp(3px, calc(100dvw * 5 / 1366) , 5px); 


	border-right:none;
	background-color:#fff;
	border-radius: 10px 0 0 10px;

	display: flex;
	align-items: center;
	justify-content: center;
}


.page-hero__title-shoulder-label {
	display:block;
	font-family: "Barlow", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: var(--fs14); 

	
	letter-spacing: 0;

	margin:auto;
	text-align: center;
	padding:0 0.25em;
	writing-mode: vertical-rl;
	  text-orientation: mixed;
	white-space: nowrap;
	transform: rotate(180deg);
	background: var(--yellow-orange);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.page-hero__title-primary {
	grid-area: primary;
}

.page-hero__title-secondary {
	grid-area: secondary;
}

.page-hero__title-primary-label,
.page-hero__title-secondary-label {
	display: block;
	width:fit-content;
	border: 5px solid var(--yellow-orange); 
	border-width:clamp(3px, calc(100dvw * 5 / 1366) , 5px); 

	line-height: 1.2; 
	background-color: #fff;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	position:relative;
}

.page-hero__title-primary-label {
	font-family: var(--okm-shin-go-b);
	font-weight: 900;
	font-size:clamp(20px, calc(100dvw * 36 / 1366) , 36px); 

	padding:0.2em 0.5em;
	border-radius: 15px 15px 0 0;
	margin-bottom: -5px;
	
	margin-bottom: clamp(-5px, calc(-5 * 100dvw / 1366), -3px);

}

.page-hero__title-primary-label strong {
	background: var(--yellow-orange);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	  font-weight: inherit;
}

.page-hero__title-primary-label i {
	font-size:clamp(14px, calc(100dvw * 24 / 1366) , 24px); 
	display: inline-block;
}

.page-hero__title-secondary-label {
	font-family: var(--okm-shin-go-b);
	font-family: var(--okm-maru-go);
	font-weight: 700;
	font-size:clamp(32px, calc(100dvw * 56 / 1366) , 56px); 


	padding: 0.3em 0.3em 0.3em;
	border-radius: 0 15px 15px 15px;
}

.page-hero__title-secondary-label strong {
	background: var(--yellow-orange);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	  font-weight: inherit;
}

.page-hero__title-shoulder::after,
.page-hero__title-primary-label::after,
.page-hero__title-secondary-label::after{
	content:"";
	display:block;
	position:absolute;
	width:100%;
	height:100%;


	right: clamp(-20px, calc(-20 * 100dvw / 1366), -10px);
	bottom: clamp(-15px, calc(-15 * 100dvw / 1366), -7px);

	z-index:-1;
	background-color: var(--yellow-orange); 
	border-radius: inherit;
	mix-blend-mode: luminosity;
}


.page-hero__title-shoulder::after {
	width:calc(100% + 5px);
	right:-25px;
}

.page-hero__lead {
	font-size: var(--fs14); 
	color:var(--pink);
	font-family: var(--okm-shin-go-db);
	line-height: 1.8; 
	margin: 20px 0 0 0;
	background-color: #fff;
	background: var(--yellow-orange);
	padding: 0.5em 1em; 
	border-radius: 10px;
	width: fit-content; 
}

.page-hero__lead span {
	display: block; 
	color: #fff; 
}


/* メインページ共通アイテム */
.c-section-title {
	font-size:clamp(20px, calc(100vw * 28 / 1366) , 28px); 
	font-family: var(--okm-shin-go-m);
	text-align: center; 
	margin-bottom: 0.6em;
}

.c-section-title:has(+ .c-year-label) {
	margin-bottom: 0;
}

.c-section-subtitle {
	font-size: var(--fs18); 

	display: block; 
	font-family: var(--okm-shin-go-m);
	text-align: center; 
	color: #F08600; 
}

.c-note {
	display: block; 
	font-size: var(--fs12); 
	width: fit-content; 
	text-indent: -1em; 
	padding-left: 1em; 
	text-align: left; 
}

p + .c-note {
	margin-top: clamp(16px, calc(100dvw * 30 / 1200) , 30px); 
}

.c-lead,
.c-text {
	margin-bottom: clamp(30px, calc(100dvw * 60 / 1200) , 60px); 
}

.c-lead:has(> span) {
	text-align: center; 
	display: block; 
}

.c-lead > span {
	display: block; 
}

/* トップページアンカー */
.wb-local-nav {
	display: none; 
}

.wb-local-nav__nav {
	width: min(calc(100% - 20px), 1200px); 
	margin: auto;
}

.wb-local-nav__list {
	width: 100%;
	justify-content: center;
	display: flex;
	align-items: center; 
	flex-direction: row; 
	gap: 0 15px; 
	flex-wrap: wrap;
	padding: 10px; 
	border-top: 1px solid #ddd; 
	border-bottom: 1px solid #ddd; 
}

.wb-local-nav__item {

}

a:link.wb-local-nav__link {
	display: block; 
	padding: 0; 
	font-size: var(--fs14); 
	font-family: var(--okm-shin-go-m);
	color: #444; 


}

.wb-local-nav__label {
	display: block; 
	display: flex;
	align-items: center; 
	flex-direction: row; 
	gap: 5px; 
}

.wb-local-nav__item:not(:last-of-type) .wb-local-nav__label {

}

.wb-local-nav__label i {
	display: block; 
	word-break: keep-all; 
}

.wb-local-nav__label:before {
	content: ""; 
	display: inline-block; 
	width: 10px; 
	height: 5px; 
	background: #fff; 
	background: var(--orange); 


	mask-image: url("/corporate/sustainability/our-initiatives/health/common_images/page_anchor_arrow.svg");
	mask-repeat: no-repeat;
	mask-position: 0 0;
	mask-size: 10px 5px;

	-webkit-mask-image: url("/corporate/sustainability/our-initiatives/health/common_images/page_anchor_arrow.svg");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	-webkit-mask-size: 10px 5px;
}

/* 健康経営の基本的な考え方 */
.wb-philosophy {
	background: #fff; 
	text-align: center; 
}

.wb-philosophy__inner {
	width: min(calc(100% - 20px), 1200px); 
	margin: auto;
}

.wb-philosophy .c-section-title {
	margin: 0;
}

.wb-philosophy__points {
	width: fit-content; 
	margin: clamp(20px, calc(100dvw * 40 / 1200) , 40px)  auto;
}

.wb-philosophy__point {
	text-align: left; 
	font-size: var(--fs18);
	line-height: 1.6; 
	display: flex;
	align-items: stretch; 
	flex-direction: row; 
	gap: 10px; 
}

.wb-philosophy__point:not(:last-of-type) {
	margin-bottom: 10px;
}

.wb-philosophy__point i {
	display: block; 
	width:clamp(13.5px, calc(100dvw * 24 / 1200) , 24px); 
	aspect-ratio: 1;
	flex: 0 0 auto; 
}

.wb-philosophy__point i img {
	margin: 3px 0 0;
}

.wb-philosophy__point p {

}

.wb-philosophy__inner .c-note {
	margin: auto;
}


/* トップメッセージ */




.wb-top-message {
	background-color: var(--bg-color); 
	background-repeat: no-repeat;

	background-image: 
		url('/corporate/sustainability/our-initiatives/health/images/top_message_bg_01.svg'),
		url('/corporate/sustainability/our-initiatives/health/images/top_message_bg_02.svg'); 

	background-position:
		100% 0,
		0 100%;

	background-size:
		clamp(160px, calc(100vw * 320 / 1366) , 320px),
		clamp(165px, calc(100vw * 330 / 1366) , 330px);

}

.wb-top-message__inner {
	width: min(calc(100% - 40px), 1200px); 
	margin: auto;
}

.wb-top-message__body {
	justify-content: center;
	width: 100%;
	display: flex;
	align-items: flex-start; 
	flex-direction: column; 
	gap: 40px; 
}

.wb-top-message__text {
	width: 100%; 
}

.wb-top-message__media {
	width: 60%; 
	margin: 0 auto;
}

.wb-top-message__meta {
	margin-top: 20px;
	line-height: 1.6; 
}

.wb-top-message__role {
	font-size: var(--fs12); 
}

.wb-top-message__name {
	
}

.wb-top-message__summary {
	padding: clamp(30px, calc(100dvw * 60 / 1200) , 60px) clamp(30px, calc(100dvw * 110 / 1200) , 110px); 
	margin-top:  clamp(30px, calc(100dvw * 60 / 1200) , 60px); 
	border: 1px solid #D9D9D9; 
	border-radius:  clamp(10px, calc(100dvw * 20 / 1200) , 20px);
	background: rgba(255,255,255,0.7); 
}

.c-heading-sm {
	display: block; 
	text-align: center; 
	font-size: clamp(18px, calc(100vw * 24 / 1366) , 24px); 
	line-height: 1; 
	font-family: var(--okm-shin-go-m);
	margin-bottom:  clamp(20px, calc(100dvw * 40 / 1200) , 40px); 
}

.wb-top-message__summary p {

}

/* 健康経営推進体制 */
.wb-governance {

}

.wb-governance__inner {
	width: min(calc(100% - 40px), 1200px); 
	margin: auto;
}

.wb-governance__chart {
	width: min(calc(100% - 20px), 890px); 
	margin: 0 auto clamp(20px, calc(100dvw * 60 / 1200) , 60px);
}

.wb-governance__chart figure img {
	margin-bottom: 20px;
}

/* 健康経営戦略マップ */
.wb-strategy-map {
	background: #EFF3F7; 
}

.wb-strategy-map__inner {
	width: min(calc(100% - 40px), 1200px); 
	margin: auto;
}

.wb-strategy-map__chart figure {
	height: 520px; 
	width: 100%; 
	padding-bottom: 15px; 
	overflow-x: scroll; 
}

.wb-strategy-map__chart figure img {
	height: 100%; 
	width: auto; 
}

.wb-strategy-map__chart .c-note {
	margin-top: 10px; 
}

/* エンゲージメントサーベイ */
.wb-engagement-survey {

}

.c-year-label {
	display: block; 
	font-size: var(--fs18); 
	margin-top: -0.75em;
	margin-bottom: 60px;
}

.wb-engagement-survey__inner {
	width: min(calc(100% - 40px), 1200px); 
	margin: auto;
}

.wb-engagement-survey__chart {
	width: min(calc(100% - 20px), 890px); 
	margin: 0 auto 60px;
}

/* 健康経営推進 目標値 */
.wb-targets {
	background: #F5F5F5; 
}

.wb-targets__inner {
	width: min(calc(100% - 40px), 890px); 
	margin: auto;
}

.wb-targets__kpi-list {
	display: grid; 
	
	gap: 25px; 
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); 

}

.wb-kpi {
	outline: 1px solid #ccc; 
	outline-offset: -1px;
	box-shadow: 0 5px 5px rgba(0,0,0,0.1);
	border-radius: 20px;
	overflow: hidden; 
	background: #fff; 

	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 5; 
	gap: 0; 
}

.wb-kpi__head {
	background: var(--green); 
	padding: 20px; 

	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 2; 
	gap: 0; 
}

.wb-kpi__head-text {
	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 2; 
	gap: 0; 
}

.wb-kpi__head-text h3 {
	display: block; 
	line-height: 1; 
	color: #fff; 
	font-size: clamp(15px, calc(100vw * 20 / 1366) , 20px); 
	font-family: var(--okm-shin-go-b);
	margin-bottom: 10px;
}

.wb-kpi__head-text p {
	font-size: var(--fs13) !important; 
	line-height: 1.6; 
	color: #fff; 
}

.wb-kpi__goal {
	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 2; 
	gap: 0; 
}

.wb-kpi__goal-inner {
	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 2; 
	gap: 0; 
}

.wb-kpi__goal-label {
	font-size: var(--fs18); 
	margin: 15px 0 5px;
	font-family: var(--okm-shin-go-db);
}

.wb-kpi__goal-value {
	width: fit-content;
	margin: auto;
	display: flex;
	align-items: flex-end; 
	flex-direction: row; 
	gap: 5px; 
	color: var(--orange); 
}

.wb-kpi__num {
	font-size: clamp(42px, calc(100vw * 60 / 1366) , 60px); 
	line-height: 1; 
	font-family: var(--okm-shin-go-db);
}

.wb-kpi__unit {
	font-size: clamp(20px, calc(100vw * 26 / 1366) , 26px); 
	line-height: 1.4; 
	font-family: var(--okm-shin-go-b);
}

.wb-kpi__history {
	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 1; 
	padding: 20px 25px 25px; 
	gap: 0; 
}

.wb-kpi__history-items {
	align-self: end;
}

.wb-kpi__history-item {
	justify-content: space-between;
	width: 100%;
	display: flex;
	align-items: center; 
	flex-direction: row; 
	gap: 0; 
}

.wb-kpi__history-item:not(:last-of-type) {
	padding-bottom: 5px; 
	margin-bottom: 5px;
	border-bottom: 1px solid #ccc; 
}

.wb-kpi__history-item dt,
.wb-kpi__history-item dd {
	
	font-family: var(--okm-shin-go-m);
}

/* 社会からの評価 */
.wb-recognition {

}

.wb-recognition__inner {
	width: min(calc(100% - 40px), 890px); 
	margin: auto;
	text-align: center; 
}

.wb-recognition__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, 120px);
	justify-content: center;
	gap: 40px;
}

.wb-recognition__item {

}

.wb-recognition__link {
	text-align: center; 
	display: grid !important;
	grid-template-columns: min-content;
	justify-content: center;
	gap: 20px;
}



.wb-recognition__logo {
	background: #fff; 
	box-shadow: var(--card-shadow); 

	border: 1px solid #ddd; 
	border-radius: 10px;
	margin: auto;
	padding: 20px; 
	transition: box-shadow .5s ease, transform .5s ease;
}

.wb-recognition__link:hover .wb-recognition__logo {
	transform: scale(1.1);
	box-shadow: var(--card-shadow-hover); 
}

.wb-recognition__logo img {
	width:clamp(80px, calc(100dvw * 120 / 1200) , 120px) !important; 
	aspect-ratio: 1;
}

.wb-recognition__text {
	text-align: left; 
}

.wb-recognition__text span {
	width: fit-content; 
	
	line-height: 1.4; 
	display: block; 
	word-break: keep-all; 
	text-align: center; 
	font-family: var(--okm-shin-go-db);
}

.wb-recognition__text span:after {
	content: ""; 
	display: inline-block; 
	width: 1.2em; 
	aspect-ratio: 1;
	background: var(--orange); 
	margin-left: 10px;
	transform: translateY(0.15em);
	border-radius: 50%;


	background-image: url('/corporate/sustainability/our-initiatives/health/common_images/link_arrow.svg'); 
	background-repeat: no-repeat; 

	background-size: cover;
}

/* パートナーシップで広げる健康経営 */
.wb-partnership {
	background: var(--bg-color); 
}

.wb-partnership__inner {
	width: min(calc(100% - 20px), 890px); 
	margin: auto;
	text-align: center; 
}

.c-link-button {
	text-align: center; 
	margin-bottom: 20px;
}

.c-link-button__link {
	margin: 30px auto 0;
	border: 2px solid var(--orange); 
	background: #fff; 
	border-radius: 50px;
	display: block; 
	width: fit-content; 
	padding: 10px 20px 10px 30px ; 

	display: flex;
	align-items: center; 
	flex-direction: row; 
	gap: 20px; 
	box-shadow: var(--card-shadow); 

	position: relative; 
	overflow: hidden; 
	transition: border .5s ease;
}

.c-link-button__link:hover {
	border: 2px solid #fff; 
	box-shadow: var(--card-shadow-hover); 
}

.c-link-button__link::after {
	content: ""; 
	position: absolute; 
	background-color: var(--orange); 
	top: 0px; 
	left: 0px; 
	width: 100%; 
	height: 100%; 
	z-index: 1; 
	transform-origin: right;
	transform: scaleX(0);
	transition: transform .5s ease;
}

.c-link-button__link:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}


.c-link-button__label {
	font-size: var(--fs20); 
	font-family: var(--okm-shin-go-db);
	display: block; 
	position: relative; 
	z-index: 2; 
	transition: color .5s ease;
}

.c-link-button__link:hover .c-link-button__label {
	color: #fff; 
}

.c-link-button__arrow {
	width: 18px; 
	aspect-ratio: 1;
	background-color: var(--orange); 
	border-radius: 50%;
	position: relative; 
	z-index: 3; 
	transition: background-color .5s ease;
}

.c-link-button__link:hover .c-link-button__arrow {
	background-color: #fff; 
}

.c-link-button__arrow::after {
	content: ""; 
	position: absolute; 
	top: 0px; 
	left: 0px; 
	right: 0px; 
	bottom: 0px; 
	width: 18px; 
	aspect-ratio: 1;
	background-color: #fff; 

	mask-image: url('/corporate/sustainability/our-initiatives/health/common_images/link_arrow.svg'); 
	mask-repeat: no-repeat;
	mask-position: 0 0;
	mask-size: cover;

	-webkit-mask-image: url('/corporate/sustainability/our-initiatives/health/common_images/link_arrow.svg'); 
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: 0 0;
	-webkit-mask-size: cover;
	transition: background-color .5s ease;
}

.c-link-button__link:hover .c-link-button__arrow::after {
	background-color: var(--orange); 
}

/* オカムラの取り組み */
.wb-initiatives {
	background: #EEF2F5; 
}

.wb-initiatives__inner {
	width: min(calc(100% - 40px), 1200px); 
	margin: auto;
	text-align: center; 
}


.wb-initiatives__grid {
	justify-content: center;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch; 
	gap:clamp(15px, calc(100dvw * 30 / 1200) , 30px); 
}

.wb-initiative {
	flex: 0 1 calc((100% - 60px) / 3); 
	max-width: 380px;
	min-width: 160px;
}


.wb-initiative__link {
	display: flex;
	align-items: center; 
	flex-direction: column; 
	gap: 10px; 
	box-shadow: var(--card-shadow); 
	padding: 20px; 
	background: #fff; 
	border-radius: 20px;
	transition: box-shadow .5s ease, transform .5s ease;
} 

.wb-initiative__link:hover {
	box-shadow: var(--card-shadow-hover); 
	transform: scale(1.05);
}

.wb-initiative__icon {
	width: 100px; 
	aspect-ratio: 1;
	border-radius: 20px;
	background: #f1f1f1; 
	overflow: hidden; 
}

.wb-initiative__label {
	font-size: var(--fs20); 
	line-height: 1.6; 
	font-family: var(--okm-shin-go-db);
	word-break: keep-all; 
}


/* Webページ */
.wb-page {
	background-color: var(--bg-color); 
	
	padding: 0; 
}


.well-being-contents {
	padding-top: clamp(20px, calc(100vw * 50 / 1366) , 50px); 

	background: var(--bg-color); 
	background-repeat: no-repeat;

	background-image: 
		url('/corporate/sustainability/our-initiatives/health/images/well-being-contents_bg_01.svg'),
		url('/corporate/sustainability/our-initiatives/health/images/well-being-contents_bg_02.svg'); 

	background-position:
		100% clamp(150px, calc(100vw * 280 / 1366) , 280px),
		0 clamp(150px, calc(100vw * 280 / 1366) , 280px);

	background-size:
		clamp(272px, calc(100vw * 544 / 1366) , 544px),
		clamp(110px, calc(100vw * 220 / 1366) , 220px);



}


.well-being-contents__inner {
	width: min(calc(100% - 40px), 1200px); 
	margin: 0 auto;
}

.well-being-contents__header {
	margin: 0 clamp(10px, calc(100vw * 40 / 1366) , 40px);
}

.well-being-contents__title {
	font-size: clamp(24px, calc(100vw * 36 / 1366) , 36px); 
	font-family: var(--okm-shin-go-m);
}

.well-being-contents__lead {
	display: block; 
}

.well-being-contents__lead p {
	
}


.well-being-contents__section {
	width: 100%; 
	margin: clamp(20px, calc(100vw * 60 / 1366) , 60px) auto clamp(20px, calc(100vw * 120 / 1366) , 120px);
	background-color: #fff; 
	padding: clamp(20px, calc(100vw * 40 / 1366) , 80px)  clamp(10px, calc(100vw * 60 / 1366) , 120px); 
	border-radius: clamp(10px, calc(100vw * 40 / 1366) , 40px);
}

.well-being-contents__group {
	margin-bottom: clamp(30px, calc(100vw * 60 / 1366) , 60px);
}

.well-being-contents__heading {
	font-size: clamp(16px, calc(100vw * 24 / 1366) , 24px); 
	font-family: var(--okm-shin-go-db);
	color: var(--orange); 
	
	margin-bottom: clamp(20px, calc(100vw * 40 / 1366) , 40px); 

	display: flex;
	align-items: center; 
	gap: 15px; 
}

.well-being-contents__heading:before {
	content: ""; 
	display: inline-block; 
	aspect-ratio: 30 / 35;
	height: 1em; 
	background-image: url('/corporate/sustainability/our-initiatives/health/common_images/heading_point.svg'); 
	background-repeat: no-repeat; 
	background-size: contain;
}

.well-being-contents__heading span {
	display: inline-block; 
}

.well-being-contents__subheading {
	
	font-family: var(--okm-shin-go-db);
	margin:  clamp(15px, calc(100vw * 40 / 1366) , 40px) 0  clamp(10px, calc(100vw * 30 / 1366) , 30px); 

}

.well-being-contents__subheading span {
	display: block; 
	width: fit-content; 
	padding-bottom: 0.625em; 
	border-bottom: 1px solid var(--orange); 
}

.well-being-contents__minor-heading {
	
	font-family: var(--okm-shin-go-db);
	margin-top: 20px;
	margin-bottom: 10px;
}

.well-being-contents__subheading + .well-being-contents__minor-heading {
	margin-top: 0;
}

.well-being-contents__block {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	margin:  clamp(10px, calc(100vw * 30 / 1366) , 30px) 0  clamp(15px, calc(100vw * 40 / 1366) , 40px); 
}

.well-being-contents__block--single,
.well-being-contents__block--short {
	display: grid;
}

.well-being-contents__block--short {
	margin:  clamp(10px, calc(100vw * 30 / 1366) , 30px) 0  clamp(15px, calc(100vw * 40 / 1366) , 40px); 
}

.well-being-contents__block--single:has(+ *) {
	margin-bottom: 40px;
}

.well-being-contents__text {

}

.well-being-contents__text p {
	
	margin-bottom: 0 !important;
}

.well-being-contents__note {
	margin-top: 0 !important;
}

.c-figure {

}

.c-figure__image-outline {
	border: 1px solid #ddd; 
}

.c-table__caption,
.c-figure__caption {
	font-size: var(--fs14); 
	font-family: var(--okm-shin-go-db);
	display: block; 
	text-align: center; 
	width: 100%; 
}

.c-table__caption,
.c-figure__caption:has(+ .c-figure__image ) {
	margin: 0 0 10px;
}

.c-figure + .c-table__caption {
	margin-top: 40px;
}

.c-figure--photo .c-figure__caption {
	margin: 10px 0 0;
	font-family: var(--okm-shin-go-r);
	text-align: left; 
}

.c-table {
	width: 100%; 
	border-bottom: 1px solid var(--orange); 
	border-right: 1px solid var(--orange); 
}

.well-being-contents__block--single .c-table {
	margin-top: 30px;
}

.c-table__th,
.c-table__td {
	border-top: 1px solid var(--orange); 
	border-left: 1px solid var(--orange); 
	padding: 3px; 
	vertical-align: middle; 
	text-align: center; 
}

.c-table__row--odd td {
	background-color: rgba(255,170,68,0.07); 
}

.c-table__row--even td {
	background-color: rgba(255,170,68,0.03); 
}

tr:has(.c-table__td.c-table__td--group-start) + tr .c-table__td {
	border-top: none; 
}

.c-table__td.c-table__td--group-start {
	border-bottom: 1px dashed var(--orange) !important; 
}

.c-table__th {
	font-family: var(--okm-shin-go-db);
	background: var(--orange) ;
	color: #fff; 
}

.c-table__head tr:not(:last-of-type) .c-table__th:last-of-type {
	border-bottom: 1px solid #fff; 
}

.c-table__th:not(:last-of-type) {
	border-right: 1px solid #fff; 
}


.well-being-contents__block .c-table__th {
	font-size: var(--fs13); 
}


.well-being-contents__block .c-table__td {
	font-size: var(--fs12); 
}

.well-being-contents__block--single .c-table__th {
	
	padding: 0.5em; 
}

.well-being-contents__block--single .c-table__td {
	font-size: var(--fs14); 
	padding: 0.5em; 
}

.c-table__td.text-left {
	text-align: left; 
}

.c-table__td em {
	font-family: var(--okm-shin-go-db);
}

.well-being-contents__list {
	
	list-style-type: disc; 
	padding-left:1.2em;
}

.well-being-contents__list-item{

}



.c-care-points {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto auto auto auto auto;
	gap: 40px 15px;
}

.c-care-points__item {
	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 5; 
	gap: 10px; 
}

.c-care-points__title,
.c-care-points__image,
.c-care-points__caption,
.c-care-points__prevention,
.c-care-points__prevention-title,
.c-care-points__prevention-text {

}

.c-care-points__title {
	
	font-family: var(--okm-shin-go-db);
	color: var(--orange); 
	text-align: center; 
	display: grid;
	place-items: center;
	line-height: 1.6; 
}

.c-care-points__caption {
	font-size: var(--fs14); 
	line-height: 1.6; 
	padding: 0 1em; 
}

.c-care-points__prevention {
	display: grid; 
	grid-template-rows: subgrid; 
	grid-row: span 2; 
	gap: 10px; 
	padding:  clamp(10px, calc(100vw * 20 / 1366) , 20px);  
	background: var(--orange); 
	background: linear-gradient(90deg, rgba(255, 170, 68, 1) 70%, rgba(255, 170, 68, 0.5) 100%);

	clip-path: polygon(0% 0%, 95% 0, 100% 50%, 95% 100%, 0% 100%);


}

.c-care-points__prevention-title {
	color: #fff; 
	font-size: var(--fs18); 
	font-family: var(--okm-shin-go-db);
	display: block; 
	text-align: center; 
}

.c-care-points__prevention-text p {
	display: block; 
	text-align: center; 
	
	color: #fff; 
	line-height: 1.4; 
}

/* 具体的な施策 */
.c-feature-grid {
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	margin-top: 20px;
}

.c-feature-grid__item {
	background-color: #fff; 
	box-shadow: 0 1px 5px rgba(0,0,0,0.25);
	border-radius: 5px;
	padding: 25px 20px 20px; 
	position: relative; 
	overflow: hidden; 
}

.c-feature-grid__item:before {
	content: ""; 
	position: absolute; 
	width: 100%; 
	height: 5px; 
	background-color: var(--orange); 
	top: 0px; 
	left: 0px; 
	right: 0px; 
}

.c-feature-grid__title {
	display: flex;
	align-items: center; 
	gap: 15px; 
	
	font-family: var(--okm-shin-go-db);

	border-bottom: 1px solid #ccc; 
	padding-bottom: 20px; 
	margin-bottom: 20px;
}

.c-feature-grid__title:before {
	content: ""; 
	aspect-ratio: 1;
	width: 48px; 
	background-color: var(--orange); 
	background-repeat: no-repeat; 
	background-size: cover;
	border-radius: 25%;
}

.c-feature-grid__item--elearning .c-feature-grid__title:before {
	background-image: url('/corporate/sustainability/our-initiatives/health/images/c-feature-grid__item--elearning.svg'); 
}

.c-feature-grid__item--training .c-feature-grid__title:before {
	background-image: url('/corporate/sustainability/our-initiatives/health/images/c-feature-grid__item--training.svg'); 
}

.c-feature-grid__item--communication .c-feature-grid__title:before {
	background-image: url('/corporate/sustainability/our-initiatives/health/images/c-feature-grid__item--communication.svg'); 
}

.c-feature-grid__item .well-being-contents__list {
	font-size: var(--fs14); 
}


/* 施策例など */
.c-feature-grid__term-list {
	width: 100%;
	display: flex;
	align-items: stretch; 
	flex-direction: column; 
	gap: 5px; 
}

.c-feature-grid__term-list:not(:last-of-type) {
	margin-bottom: 20px;
}

.c-feature-grid__term {
	font-size: var(--fs14); 
	font-family: var(--okm-shin-go-db);
	flex: 0 0 auto
}

.c-feature-grid__description {
	flex: 1 1 auto
}

.c-feature-grid__description p {
	font-size: var(--fs14); 
	margin: 0 !important;
}


.c-certification {
	width: 100%;
	display: flex;
	align-items: flex-start; 
	gap: 30px; 
}

.c-certification:not(:last-of-type) {
	margin-bottom: 20px;
}

.c-certification__mark {
	width:  clamp(100px, calc(100vw * 140 / 1366) , 140px); 
	flex: 0 0 auto;
}

.c-certification__body {
	flex: 1 1 auto;
}

.c-certification__title {
	
	font-family: var(--okm-shin-go-db);
	margin-bottom: 10px;
}

.c-certification__text p {
	
	margin: 0 !important;
}

.c-definition-list {
	display: grid; 
	grid-template-columns: 1fr; 
}

.c-definition {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column; 
	gap: 10px; 
	padding-bottom: 15px; 
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc; 
}

.c-definition:first-of-type {
	padding-top: 15px; 
	border-top: 1px solid #ccc; 
}

.c-definition__term,
.c-definition__desc {
	
}

.c-definition__desc p {
	margin: 0 !important;
}

.c-definition__desc--image {
	float: right; 
	max-width: 50%; 
	margin-left: 30px;
}

.c-definition__desc--image figcaption {
	display: block; 
	text-align: center; 
	font-size: var(--fs14); 
	font-family: var(--okm-shin-go-db);
}

.c-definition__term {
	font-family: var(--okm-shin-go-db);
	width: 14em; 
}

/* スペシャルコラム的な扱い */

.c-highlight {
	border: 1px solid var(--orange); 
	padding:  clamp(20px, calc(100vw * 40 / 1366) , 40px); 
	padding-top:  clamp(30px, calc(100vw * 56 / 1366) , 56px); 
	margin-top: 65px;
	border-radius: 10px;
	position: relative; 
}

.c-highlight__title {
	font-size: var(--fs18); 
	font-family: var(--okm-shin-go-db);
	padding: 0.5em 1em; 
	background: var(--orange); 
	color: #fff; 
	width: fit-content; 
	border-radius: 30px; 
	position: absolute; 
	top: 0px; 
	transform: translateY(-50%);
	left: clamp(20px, calc(100vw * 40 / 1366) , 40px);; 
}


/* 労働安全衛生方針 */
.wb-safety-policy {

}

.wb-safety-policy__title {
	display: block; 
	text-align: center; 
	margin: 0 0 10px;
	font-family: var(--okm-shin-go-db);
}

.wb-safety-policy__body {
	border: 1px solid var(--orange); 
	padding: 30px; 
}

.well-being-contents__text p.wb-safety-policy__lead{
	font-size: var(--fs14); 
	display: block; 
	margin: 0 0 20px !important;
}

.wb-safety-policy__lists {
	justify-content: space-between;
	width: 100%;
	display: flex;
	font-size: var(--fs14); 
	line-height: 1.6; 
}

.wb-safety-policy__list {
	flex: 0 1 auto;
	margin: 0 0 0 2em  !important;
}

.wb-safety-policy__caption {
	display: block; 
	text-align: right; 
	margin: 15px 0 0;
	font-size: var(--fs13); 
}

#gan-ally-bu,
#sports-well-company {
	scroll-margin-top:85px;
}

/* ==================================================
= Media Queries
================================================== */

/* 480px未満 */
@media only screen and (max-width: 479px) {


}

/* 480px以上 */
/* スマホ */
@media only screen and (min-width: 480px) {



}

/* 568px以上 */
/* タブレット */
@media only screen and (min-width: 568px) {



	/* タイトルセクション */

	.page-hero {
		margin-bottom:clamp(50px, calc(100dvw * 100 / 1200) , 100px); 
	}

	.page-hero__inner {
		aspect-ratio: 1366 / 575;
	}



	.page-hero__media {
		aspect-ratio: 1366 / 575;
		mask-image: url("/corporate/sustainability/our-initiatives/health/images/title_image_mask_pc.svg");
		-webkit-mask-image: url("/corporate/sustainability/our-initiatives/health/images/title_image_mask_pc.svg");
	}



	.page-hero__content {
		left: 4.4%; 
		top: 24%
	}

	/* トップページアンカー */
	.wb-local-nav {
		display: block; 
	}


	/* 健康経営戦略マップ */

	.wb-strategy-map__chart figure {
		width: 100%; 
		height: auto; 
		padding-bottom: 0; 
		overflow-x: initial; 
	}

	.wb-strategy-map__chart figure img {
		width: 100%; 
		height: auto; 
	}

}

/* 667px以上 */
/* タブレット */
@media only screen and (min-width: 667px) {

	/* トップメッセージ */
	.wb-top-message__body {
		flex-direction: row; 
	}

	.wb-top-message__text {
		max-width: 840px; 
	}

	.wb-top-message__media {
		max-width: 200px; 
	}

}

/* 768px以上 */
/* タブレット */
@media only screen and (min-width: 768px) {


	.well-being-contents__block {
		grid-template-columns: 1fr 1fr;
		gap:clamp(10px, calc(100vw * 40 / 1366) , 40px); 
	}

	.well-being-contents__block--single {
		grid-template-columns:1fr;
	}

	.well-being-contents__block--short {
		grid-template-columns: 1fr 1fr 1fr;
		gap:clamp(10px, calc(100vw * 40 / 1366) , 40px); 
	}

	.c-feature-grid__term-list {
		width: 100%;
		display: flex;
		flex-direction: row; 
		gap: 20px; 
	}


	.c-definition-list {
		display: grid; 
		grid-template-columns: max-content 1fr;
	}

	.c-definition {
		display: grid; 
		grid-template-columns: subgrid; 
		grid-column: 1 / -1;
		column-gap: 40px; 
	}


	.c-certification {
		align-items: center; 
	}

	/* 施策例など */

	.c-feature-grid__term-list:not(:last-of-type) {
		margin-bottom: 5px;
	}

	.c-feature-grid__term {
		width: 13em; 
	}

	.c-feature-grid__description {

	}


}

/* 1024px以上 */
/* PC */
@media only screen and (min-width: 1024px) {

	/* メインページ共通アイテム */
	.c-section-title {
		font-size:clamp(26px, calc(100vw * 36 / 1366) , 36px); 
	}

	.c-section-subtitle {
		font-size:clamp(18px, calc(100vw * 24 / 1366) , 24px); 
	}





	/* トップメッセージ */
	.wb-top-message__body {
		gap: 60px; 
	}

	.wb-top-message__media {
		max-width: 300px; 
	}

	/* 社会からの評価 */
	.wb-recognition__list {
		grid-template-columns: repeat(auto-fit, 220px);
	}

	.wb-recognition__logo {
		margin: 0 50px;
	}

	.wb-recognition__text {

	}

	.wb-initiative__link {
		gap: 20px; 
		padding: 30px; 
	}

	.wb-initiative__icon {
		width: 128px; 
		border-radius: 40px;
	}

	.wb-initiative__label {
		font-size: var(--fs20); 
	}


	.c-care-points {
		grid-template-columns: repeat(4, 1fr);
		gap: 15px;
	}



	#gan-ally-bu,
	#sports-well-company {
		scroll-margin-top:120px;
	}



}



/* 1280px以上 */
/* PC */
@media only screen and (min-width: 1280px) {


	.page-hero {
		z-index: -1; 
	}

	/* トップページアンカー */

	.wb-local-nav {

	}




}