@charset "utf-8";
/* CSS Document */

.c_area {
	width: 900px;
	margin: auto;
}

p.sub {
	font-size: 16px;
	line-height: 200%;
	text-align: left;
	margin: 30px 0 0;
}

.content01 {
	padding: 80px 0;
	text-align: center;
}

.content01 .c_area {
	text-align: left;
}

.content01 h2 {
	border-left: solid 6px #82BC3F;
	padding-left: 15px;
	font-size: 25px;
	font-weight: bold;
	line-height: 100%;
}

.content01 h3 {
	font-size: 30px;
	color: #82BC3F;
	line-height: 140%;
	font-weight: bold;
	text-align: center;
	margin-top: 3vh;
	margin-left: 90px;
}

.content01 .img1 {
	text-align: left;
	margin: 30px 0 0 0;
}

.content01 .text1 {
	font-size: 26px;
	margin-top: 20px;
	text-align: center;
}

.content01 .line {
	margin: 40px auto 0;
	padding: 40px 0 0;
	background: url(../images/company/principle/line.png) no-repeat bottom;
}

.content02 {
	padding: 0 0 80px;
	text-align: center;
}

.content02 .c_area {
	text-align: left;
}

.content02 .c_area .box {
	display: inline-block;
	vertical-align: top;
	width: 28%;
	border-left: #333 solid 1px;
	padding: 0 20px;
	margin-top: 60px;
	position: relative;
}

.content02 .c_area .box .backnum {
	font-size: 14px;
	color: #FFF;
	background: #000;
	padding: 4px 10px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 101;
}


.content02 .c_area .bdr {
	border-right: #333 solid 1px;
}

.content02 .c_area .box .photo {
	text-align: center;
	position: relative;
}

.content02 .c_area .box .photo img {
	width: 65%;
}

.content02 .c_area .box .photo .arw {
	position: absolute;
	right: 0;
	bottom: 0;
}

.content02 h2 {
	border-left: solid 6px #82BC3F;
	padding-left: 14px;
	font-size: 25px;
	font-weight: bold;
	line-height: 100%;
}

.content02 p.sub {
	font-size: 16px;
	line-height: 180%;
	text-align: left;
}

.content02 .c_area .box h3 {
	margin-top: 20px;
	font-size: 16px;
	font-weight: bold;
	color: #333;
	line-height: 130%;
	border-left: #82BC3F solid 4px;
	padding-left: 10px;
}

.content02 .c_area .box h3 span {
	font-size: 14px;
	font-weight: normal;
}

.content02 h3.kako {
	border-bottom: 3px dashed #1D4D00;
	margin-top: 60px;
	font-size: 18px;
	padding-bottom: 5px;
}

.content02 .kako_list {
	margin-top: 15px;
}

.content02 .kako_list li {
	margin-top: 15px;
	background: url("../images/common/arw8.png") no-repeat left center;
	padding-left: 15px;
}

.content02 .kako_list li a {
	color: #1d9e56;
}

.content03 {
	text-align: left;
	margin-top: 80px;
	margin-bottom: 80px;
}

.content03 h2 {
	border-left: solid 6px #82BC3F;
	padding-left: 14px;
	font-size: 25px;
	font-weight: bold;
	line-height: 100%;
}

.content03 h3 {
	margin-top: 60px;
	font-size: 20px;
	font-weight: bold;
}

.content03 .flexarea {
	display: flex;
	justify-content: space-between !important;
	flex-wrap: wrap;
}

.content03 .flexbox {
	width: 900px;
	margin: 10px auto 0;
	display: flex;
	justify-content: space-between;
	text-align: left;
}

.content03 .flexbox.box2 {
	max-width: 400px;
	display: block !important;
	margin: inherit;
	margin-top: 20px;
}

.content03 .flexbox .text {
	max-width: 500px;
}

.content03 .flexbox .text h3,.content03 .flexbox .text2 h3 {
	margin-top: 60px;
	margin-bottom: 20px;
}

.content03 .flexbox.box2 .text h3 {
	font-size: 18px;
}

.content03 .flexbox .text2 {
}

.content03 .flexbox ul li {
	list-style-type: circle;
	margin-left: 20px;
}

.content03 .flexbox .photo {
	width: 360px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	text-align: left;
}

.content03 .flexbox .photo img {
	max-width: 170px;
	height: auto;
	margin: 0 auto 0 2px;
}

.content03 .flexbox.box2 .photo {
	width: 400px;
}

.content03 .flexbox.box2 .photo img {
	max-width: 195px;
}

.content03 .flexbox .photo img.big {
	max-width: 400px;
}

.content03 .flexbox .photo.p2 {
	margin-top: 30px;
}

.content03 .left {
	width: 400px;
	text-align: left;
}




.welfarelink {
	color: #FFFFFF;
	display: inline-block;
	margin: 10px;
	padding: 5px 20px 5px 28px;
	line-height: 100%;
	font-size: 14px !important;
	border-radius: 20px;		/* CSS3草案 */
	-webkit-border-radius: 20px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 20px;
	background: #269400 url("../images/common/arw6.png") no-repeat left 5px center;
}

.welfarelink:hover {
	background-color:#61D36A;
}


.box2 {
	background: #f3f3f3;
	padding: 20px 30px;
	margin-top: 40px;
}

.box2 h3 {
	margin-top: 0;
}

.box2 .flexbox4 {
	display: flex;
	justify-content: space-between;
}

.content03 .flexbox4 .right {
	max-width: 450px;
}

.content03 .flexbox4 .right ul li {
	display: inline-block;
	vertical-align: top;
	margin-left: 2px;
	width: 32%;
}

.content03 .flexbox4 .right ul.c1 {
	display: flex;
	justify-content: flex-start;
}

.content03 .flexbox4 .right ul.c1 li {
	display: block;
	width: 34%;
	text-align: left;
	list-style-type: none !important;
}

.content03 .flexbox4 .right ul li.bn {
	width: 66%;
}

.content03 .flex {
	display: flex;
	justify-content: center;
	margin: 20px auto 0;
	gap:40px;
}

.content03 .taisei {
	margin: 40px auto 0;
}

.box2 .flexbox4 p.p1 {
	max-width: 440px;
	font-size: 16px;
	margin-top: 10px;
	margin-right: 20px;
}

.box2 .flexbox2 {
	background: #FFF;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 15px;
	margin-top: 20px;
}

.box2 .flexbox2 h4 {
	font-size: 20px;
	text-align: left;
	width: 140px;
	margin-right: 10px;
	padding-left: 20px;
}



.box2 ul {
	font-size: 16px;
}

.box2 p {
	font-size: 16px;
}

.box2 ul li {
	list-style-type: circle;
	margin-top: 10px;
	font-size: 16px;
	margin-left: 20px;
}

.box2 .flexbox2 ul {
	font-size: 16px;
	max-width: 80%;
}

.box2 .flexbox2 p {
	max-width: 80%;
	font-size: 16px;
}

.box2 .flexbox2 ul li {
	list-style-type: circle;
	margin-top: 5px;
	font-size: 16px;
	margin-left: 20px;
}

.box2 .flexbox3 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer2 {
	margin-top: 0;
}


a.pdf {
	font-size: 15px;
	display: inline-block;
	margin: 15px 0 0 auto;
	vertical-align: middle;
	line-height: 100%;

	color: #333;
	padding-left: 23px;
	padding-top: 4px;
	padding-bottom: 3px;
	background: url("../images/common/arw6.png")no-repeat left center;
}

a.pdf:hover {
	color: #2CAC00;
	text-decoration: underline;
	text-underline-offset:2px;
}

a.pdf img {
	vertical-align: middle;
}


/* 共通スタイル */
.table-container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 1.5rem;
}

.health-table {
  border-collapse: collapse;
  width: 100%;
  /* 固定レイアウトにして幅を指定 */
  table-layout: fixed;
  font-family: sans-serif;
}



.health-table th,
.health-table td {
  border: 1px solid #ccc;
  padding: 8px 12px;
  text-align: left;
  vertical-align: top;

}

.health-table th {
    text-align: center;
}

/* 列幅の指定 */
.health-table th:nth-child(1),
.health-table td:nth-child(1) {
  width: 15%;  /* 項目 */
}

.health-table th:nth-child(2),
.health-table td:nth-child(2) {
  width: 20%;  /* 導入時期 */
}

.health-table th:nth-child(3),
.health-table td:nth-child(3) {
  width: 50%;  /* 目的・内容（長文） */
}

.health-table th:nth-child(4),
.health-table td:nth-child(4) {
  width: 15%;  /* データ */
}

/* ヘッダー背景 */
.health-table thead {
  background-color: #f0f0f0;
  font-weight: bold;
}

.scroll-hint {
	margin-top: 20px;
}

.health-table td .pdf2 {
	color: inherit;
	background: url("../images/common/pdf.png") right no-repeat;
	padding-right: 24px;
	background-size: 18px;
	text-decoration: underline;
}

.health-table td .photo {
	display: flex;
	gap:5px;
	justify-content: center;
	margin: 14px auto 0;
}

.yuryo {
	width: 240px;
	margin: 20px 0 0;
}