@charset "UTF-8";

.corp .in-section {
	padding: 40px 0 100px;
}
@media screen and (max-width: 1024px) {
	.corp .in-section {
		padding: 30px 0 50px;
	}
}
@media screen and (max-width: 834px) {
	.corp .in-section {
		padding: 30px 0 50px;
	}
}
.corp .section-ttl-header {
	margin-bottom: 20px;
}
.corp .grid-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.corp .sub-block {
	margin-bottom: 40px;
}
.overview .first-content {
	padding-bottom: 80px;
}
.overview .in-section:first-of-type {
	padding-top: 50px;
}
.overview .in-section {
	padding: 50px 0;
}
.overview .org-chart {
	background: #F4F4F4;
}
.corp-outline {
	width: 100%;
}
.corp-outline tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.corp-outline tr th {
	width: 25%;
	color: var(--main-color);
	border-bottom: solid 1px var(--main-color);
	text-align: left;
	padding: 15px 10px;
}
.corp-outline tr td {
	width: 75%;
	padding: 15px 10px;
	border-bottom: solid 1px #000;
}
.corp-outline tr td a {
	color: var(--main-color);
}


.corp-history {
	position: relative;
}
.corp-history:before {
	width: 1px;
	height: 100%;
	background: var(--main-color);
	left: 3px;
	top: 0;
}
.corp-history tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.corp-history tr th {
	width: 145px;
	vertical-align: top;
	position: relative;
	color: var(--main-color);
	text-align: right;
	padding: 4px 10px 4px 15px;
	line-height: 1.6em;
}
.corp-history tr th.dot:before {
	width: 7px;
	height: 7px;
	background: var(--main-color);
	left: 0px;
	top: 15px;
}
.corp-history tr th span.year {
	width: 60px;
	display: inline-block;
	position: absolute;
	left: 15px;
}
.corp-history tr th .month {
	width: 70px;
	padding-right: 10px;
}
.corp-history tr td {
	vertical-align: top;
	width: calc(100% - 145px);
	position: relative;
	padding: 4px 0;
}
.corp-history tr td p {
	line-height: 1.6em;
	padding-bottom: .7em;
}

.corp-office {
	width: 100%;
}
.corp-office:nth-of-type(1) {
	margin-bottom: 80px;
}
.corp-office caption.ttl {
	background: #F4F4F4;
	padding: 15px 25px;
	display: block;
	text-align: left;
	width: 40%;
	min-width: 450px;
	position: relative;
}
.corp-office caption.ttl:before {
	width: 8px;
	height: 8px;
	background: #39992D;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.corp-office caption.date {
  caption-side: bottom;
	text-align: right;
	padding: 10px 0 0;
}
.corp-office tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.corp-office tr th {
	width: 30%;
	color: var(--main-color);
	border-bottom: solid 1px var(--main-color);
	text-align: left;
	padding: 20px 10px;
	line-height: 1.2em;
}
.corp-office tr td {
	width: 70%;
	padding: 20px 10px;
	border-bottom: solid 1px #000;
	line-height: 1.2em;
}
.corp-office tr td span {
	color: var(--main-color);
}
.corp-office tr td.middle {
	vertical-align: middle!important;
}
.list-license {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 101%;
	position: relative;
	left: -.5%;
}
.list-license li {
	width: 24%;
	margin: 0 .5% 1%;
	border: solid 1px #000;
	padding: 15px 10px;
	transition: all .4s;
}
.list-license li .item-ttl {
	min-height: 3em;
	position: relative;
	margin-bottom: 20px;
	width: 100%;
}
.list-license li .item-ttl p {
	text-align: center;
	line-height: 1.4em;
	width: 100%;
	font-size: 12px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.list-license li .item-number {
	text-align: center;
}
.list-license li .item-number span {
	font-size: 60px;
	font-weight: 600;
	font-family: var(--en-font);
	transition: all .4s;
}
.item-edited-date {
  caption-side: bottom;
	text-align: right!important;
	padding: 10px 0 0;
}

.iso-data {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 50px;
}
.iso-data:last-child {
	margin-bottom: 0;
}
.iso-data .detail {
	width: 65%;
}
.iso-data .iso-img {
	width: 30%;
}
.corp-iso {
	width: 100%;
}
.corp-iso tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.corp-iso tr th {
	width: 30%;
	color: var(--main-color);
	border-bottom: solid 1px var(--main-color);
	text-align: left;
	padding: 15px 10px;
}
.corp-iso tr td {
	width: 70%;
	padding: 15px 10px;
	border-bottom: solid 1px #000;
}

.corp-security {
	width: 100%;
	margin-top: 60px;
}
.corp-security tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.corp-security tr th {
	width: 20%;
	color: var(--main-color);
	border-bottom: solid 1px var(--main-color);
	text-align: left;
	padding: 15px 10px;
}
.corp-security tr td {
	width: 80%;
	padding: 15px 10px;
	border-bottom: solid 1px #000;
}

@media (hover: hover) {
	.corp-outline tr td a:hover {
		text-decoration: underline;
	}
}
@media screen and (max-width: 834px) {
	.overview .first-content {
		padding-bottom: 50px;
	}
	.overview .in-section:first-of-type {
		padding-top: 30px;
	}
	.overview .in-section {
		padding: 40px 0;
	}
	.corp-outline {
		width: 100%;
	}
	.corp-outline tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.corp-outline tr th {
		width: 70px;
		color: var(--main-color);
		border-bottom: solid 1px var(--main-color);
		text-align: left;
		padding: 15px 5px;
	}
	.corp-outline tr td {
		width: calc(100% - 70px);
		padding: 15px 5px;
		border-bottom: solid 1px #000;
	}



	.corp-history {
		position: relative;
	}
	.corp-history:before {
		width: 1px;
		height: 100%;
		background: var(--main-color);
		left: 3px;
		top: 0;
	}
	.corp-history tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.corp-history tr th {
		width: 100px;
		vertical-align: top;
		position: relative;
		color: var(--main-color);
		text-align: right;
		padding: 4px 10px 4px 15px;
		line-height: 1.5em;
	}
	.corp-history tr th.dot:before {
		width: 7px;
		height: 7px;
		background: var(--main-color);
		left: 0px;
		top: 12px;
	}
	.corp-history tr th span.year {
		width: 60px;
		display: inline-block;
		position: absolute;
		left: -5px;
	}
	.corp-history tr th .month {
		width: 40px;
	}
	.corp-history tr td {
		vertical-align: top;
		width: calc(100% - 100px);
		position: relative;
		padding: 4px 0;
	}
	.corp-history tr td p {
		line-height: 1.5em;
		padding-bottom: .7em;
	}

	.corp-office {
		width: 100%;
	}
	.corp-office:nth-of-type(1) {
		margin-bottom: 80px;
	}
	.corp-office caption.ttl {
		background: #F4F4F4;
		padding: 10px 25px;
		display: block;
		text-align: left;
		width: 40%;
		min-width: 250px;
		position: relative;
	}
	.corp-office caption.ttl:before {
		width: 8px;
		height: 8px;
		background: #39992D;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.corp-office caption.date {
		caption-side: bottom;
		text-align: right;
		padding: 10px 0 0;
	}
	.corp-office tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.corp-office tr th {
		width: 100%;
		font-size: 110%;
		line-height: 1.5em;
		color: var(--main-color);
		border-bottom: none;
		text-align: left;
		padding: 10px 5px 0;
	}
	.corp-office tr td {
		width: 100%;
		padding: 0 5px 10px;
		line-height: 1.6em;
		border-bottom: solid 1px #000;
	}
	.corp-office tr td span {
		color: var(--main-color);
	}

	.list-license {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 101%;
		position: relative;
		left: -.5%;
	}
	.list-license li {
		width: 49%;
		margin: 0 .5% 1%;
		border: solid 1px #000;
		padding: 10px 5px;
	}
	.list-license li .item-ttl {
		min-height: 3em;
		position: relative;
		margin-bottom: 20px;
		width: 100%;
	}
	.list-license li .item-ttl p {
		text-align: center;
		line-height: 1.4em;
		width: 100%;
		font-size: min(2.5vw,12px);
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	.list-license li .item-number {
		text-align: center;
	}
	.list-license li .item-number span {
		font-size: 60px;
		font-weight: 600;
		font-family: var(--en-font);
	}


	.iso-data {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 50px;
	}
	.iso-data:last-child {
		margin-bottom: 0;
	}
	.iso-data .detail {
		width: 100%;
		order: 2;
	}
	.iso-data .iso-img {
		width: 100%;
		max-width: 240px;
		margin: 10px auto 10px;
	}
	.corp-iso {
		width: 100%;
	}
	.corp-iso tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.corp-iso tr th {
		width: 30%;
		color: var(--main-color);
		border-bottom: solid 1px var(--main-color);
		text-align: left;
		padding: 15px 10px;
	}
	.corp-iso tr td {
		width: 70%;
		padding: 15px 10px;
		border-bottom: solid 1px #000;
	}

	.corp-security {
		width: 100%;
		margin-top: 30px;
	}
	.corp-security tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.corp-security tr th {
		width: 25%;
		color: var(--main-color);
		border-bottom: solid 1px var(--main-color);
		text-align: left;
		padding: 10px 5px;
		line-height: 1.6em;
	}
	.corp-security tr td {
		width: 75%;
		padding: 10px 5px;
		border-bottom: solid 1px #000;
		line-height: 1.6em;
	}
}


/* ///////////////////  メッセージ */
.message .first-content {
	padding: 0 0 100px;
}
.message-mv {
	position: relative;
	margin-bottom: 100px;
}
.message-mv .img {
	position: relative;
}
.message-mv .txt {
	position: absolute;
	width: 288px;
	height: 220px;
	background: linear-gradient(135deg, #84c261 0%, #39992d 37.93%, #003400 100%);
	bottom: -30px;
	left: 5%;
	padding: 30px;
}
.message-mv .txt p {
	color: #FFF;
}
.message-mv .txt p:nth-child(2) {
	font-size: 32px;
	line-height: 1.2em;
	padding: 10px 0 0;
}
.message-mv .txt p:nth-child(3) {
	font-family: var(--en-font);
	font-size: 20px;
} 
.message  .hero-txt {
	text-align: center;
	font-size: 32px;
	line-height: 1.6em;
	padding-bottom: 50px;
}
.message  .hero-txt span {
	color: var(--main-color);
}
.message .message-txt > p {
	padding-bottom: 2em;
}
.message .list-box {
	background: #F2F2F2;
	padding: 50px 4%;
	margin-bottom: 30px;
}
.message .list-squre li {
	padding-left: 20px;
	margin-bottom: 20px;
}
.message .list-squre li:last-child {
	margin-bottom: 0;
}
.message .list-squre li:before {
	width: 8px;
	height: 8px;
	top: 7px;
}
@media screen and (max-width: 834px) {
	.message .first-content {
		padding: 0 0 60px;
	}
	.message-mv {
		position: relative;
		margin-bottom: 30px;
	}
	.message-mv .img {
		position: relative;
	}
	.message-mv .img img {
		object-fit: cover;
		min-height: 220px;
	}
	.message-mv .txt {
		position: relative;
		width: 70%;
		height: 120px;
		background: linear-gradient(135deg, #84c261 0%, #39992d 37.93%, #003400 100%);
		bottom: 30px;
		left: 5%;
		padding: 15px 20px;
	}
	.message-mv .txt p {
		color: #FFF;
	}
	.message-mv .txt p:nth-child(2) {
		font-size: 22px;
		line-height: 1.2em;
		padding: 5px 0 0;
	}
	.message-mv .txt p:nth-child(3) {
		font-family: var(--en-font);
		font-size: 16px;
	} 
	.message  .hero-txt {
		text-align: center;
		font-size: min(4.6vw,20px);
		line-height: 1.6em;
		padding-bottom: 30px;
	}
	.message  .hero-txt span {
		color: var(--main-color);
	}
	.message .message-txt > p {
		padding-bottom: 2em;
	}
	.message .list-box {
		background: #F2F2F2;
		padding: 30px 6%;
		margin-bottom: 30px;
	}
	.message .list-squre li {
		padding-left: 12px;
		margin-bottom: 20px;
	}
	.message .list-squre li:last-child {
		margin-bottom: 0;
	}
	.message .list-squre li:before {
		width: 6px;
		height: 6px;
		top: 5px;
	}
}
ol.count-parent {
  counter-reset: list;
  list-style-type: none;
	margin: 0 auto 20px;
}
ol.count-parent > li {
  position: relative;
  padding: 10px 0 4px 40px;
	margin-bottom: 20px;
}
ol.count-parent > li .list-ttl {
	font-weight: 600;
	font-size: 17px;
}
ol.count-parent > li .list-sub-ttl {
	font-size: 17px;
	color: var(--main-color);
}
ol.count-parent .pbm {
	padding-bottom: 1.2em;
}
ol.count-child.pbm2 {
	padding-bottom: 30px!important;
}
.move-left {
	left: -40px;
	position: relative;
}
ol.count-parent > li:before {
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: 0;
	line-height: 24px;
  width: 24px;
  height: 24px;
  background: #39992D;
  text-align: center;
  color: #fff;
  top: 13px;
}
ol.count-child li {
  list-style-type: none;
  counter-increment: cnt;
	padding-left: 40px;
	position: relative;
	line-height: 1.8em;
	margin: 4px 0 0;
}
ol.count-child li::before {
  content: "［"counter(cnt)"］";
	color: #39992D;
	left: 0;
	top: 0;
}
ul.list-squre li {
  list-style-type: none;
  counter-increment: cnt;
	padding-left: 15px;
	position: relative;
	line-height: 1.4em;
	margin: 4px 0 0;
}
ul.list-squre li::before {
	width: 6px;
	height: 6px;
	background: #39992D;
	left: 0;
	top: 9px;
}
@media (hover: hover) {
	.terms .third-block a:hover {
		text-decoration: none;
	}
}

@media screen and (max-width: 834px) {
	ol.count-parent {
		counter-reset: list;
		list-style-type: none;
		margin: 0 auto 20px;
	}
	ol.count-parent > li {
		position: relative;
		padding: 2px 0 2px 30px;
		margin-bottom: 15px;
	}
	ol.count-parent > li .list-ttl {
		font-weight: 600;
		font-size: 13px;
	}
	ol.count-parent > li .list-sub-ttl {
		font-size: 13px;
		color: var(--main-color);
	}
	ol.count-parent > li:before {
		counter-increment: list;
		content: counter(list);
		position: absolute;
		left: 0;
		line-height: 20px;
		width: 20px;
		height: 20px;
		background: #39992D;
		text-align: center;
		color: #fff;
		top: 6px;
	}
	ol.count-child {
		margin-left: -35px;
	}
	ol.count-child li {
		list-style-type: none;
		counter-increment: cnt;
		padding-left: 30px;
		position: relative;
		line-height: 1.8em;
		margin: 4px 0 0;
	}
	ol.count-child li::before {
		content: "［"counter(cnt)"］";
		color: #39992D;
		left: 0;
		top: 0;
	}
	ul.list-squre li {
		list-style-type: none;
		counter-increment: cnt;
		padding-left: 15px;
		position: relative;
		line-height: 1.4em;
		margin: 4px 0 0;
	}
	ul.list-squre li::before {
		width: 6px;
		height: 6px;
		background: #39992D;
		left: 0;
		top: 9px;
	}
}
/* ///////////////////  コーポレートガバナンス */

.ir .in-section {
	padding: 40px 0 100px;
}

@media screen and (max-width: 834px) {
	.ir .in-section {
		padding: 30px 0 50px;
	}
}
/* ///////////////////  コーポレートガバナンス */

.gov .block-ttl {
	font-size: 20px;
	color: var(--main-color);
	padding-bottom: 10px;
}
.grid-row.pdca {
	margin-top: 40px;
}
.grid-row.pdca .txt {
	width: 47%;
}
.grid-row.pdca .figure {
	width: 47%;
}
.gov .conduct-txt p {
	text-indent: 1em;
	padding-bottom: 1em;
}
@media screen and (max-width: 834px) {
	.gov .block-ttl {
		font-size: 15px;
		color: var(--main-color);
		padding-bottom: 10px;
	}
	.grid-row.pdca {
		margin-top: 40px;
	}
	.grid-row.pdca .txt {
		width: 100%;
	}
	.grid-row.pdca .figure {
		width: 100%;
		max-width: 250px;
		margin: 10px auto 0;
	}
	.gov .conduct-txt p {
		text-indent: 1em;
		padding-bottom: 1em;
	}
}
.toggle-box {
	position: relative;
	margin: 30px 0 0;
}
.toggle-box dt {
	padding: 15px 15px;
	border: solid 1px #000;
	transition: all .4s;
	cursor: pointer;
	position: relative;
}
.toggle-box dt p {
	position: relative;
	padding: 0 20px;
	font-size: 20px;
	line-height: 1.4em;
}
.toggle-box dt p:before {
	width: 4px;
	height: 100%;
	background: linear-gradient(#84c261 0%, #39992d 37.93%, #003400 100%);
	left: 0;
	top: 0;
}
.toggle-box dt:before {
	width: 16px;
	height: 16px;
	background-image: url("../img/corp_img/toggle-open.svg");
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}
.toggle-box dt.on:before {
	background-image: url("../img/corp_img/toggle-close.svg");
}
.toggle-box dd {
	display: none;
	padding: 3%;
}
@media screen and (max-width: 834px) {
	.toggle-box {
		position: relative;
		margin: 20px 0 0;
	}
	.toggle-box dt {
		padding: 10px 8px;
		border: solid 1px #000;
		transition: all .4s;
		cursor: pointer;
		position: relative;
	}
	.toggle-box dt p {
		position: relative;
		padding: 0 15px;
		font-size: 15px;
		line-height: 1.4em;
	}
	.toggle-box dt p:before {
		width: 4px;
		height: 100%;
		background: linear-gradient(#84c261 0%, #39992d 37.93%, #003400 100%);
		left: 0;
		top: 0;
	}
	.toggle-box dt:before {
		width: 16px;
		height: 16px;
		background-image: url("../img/corp_img/toggle-open.svg");
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
	}
	.toggle-box dt.on:before {
		background-image: url("../img/corp_img/toggle-close.svg");
	}
	.toggle-box dd {
		display: none;
		padding: 3%;
	}
}
@media (hover: hover) {
	.toggle-box dt:hover {
		background: #F5FFF4;
		border: solid 1px #39992D;
	}
}
/* ///////////////////  関連企業情報 */
.related .section-wrap {
	padding: 0 0 80px;
}
.related .section-wrap:last-of-type {
	padding-bottom: 150px;
}
.related .intro-txt {
	padding: 0 0 50px;
}
.related .intro-txt p {
	text-align: center;
}
.related .intro-txt p.clr {
	font-weight: 600;
	color: var(--main-color);
	padding-bottom: 2em;
}
.role-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 730px;
	margin: 0 auto 50px;
}
.role-list > div {
	width: 48%;
}
.related-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
  gap: 2%;
}
.related-links li {
	width: 32%;
	margin-bottom: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: solid 1px #000;
	position: relative;
	padding: 18px 5px;
	text-align: center;
	line-height: 1.4em;
	background: #FFF;
	transition: all .4s;
}
.related-links li:after {
	right: 10px;
	bottom: 10px;
	width: 10px;
	height: 10px;
	background-image: url("../img/common_img/window-green.svg");
}
.related-links li p {
	line-height: 1.4em;
	font-size: 13px;
}
.related-links li p span {
	font-size: 11px;
	color: var(--main-color);
	display: block;
}
@media (hover: hover) {
	.related-links li:hover {
		background: #F5FFF4;
		border: solid 1px #39992D;
	}
}

@media screen and (max-width: 834px) {
	.related .section-wrap {
		padding: 0 0 0;
	}
	.related .section-wrap:last-of-type {
		padding-bottom: 100px;
	}
	.related .intro-txt {
		padding: 0 0 40px;
	}
	.related .intro-txt p {
		text-align: center;
	}
	.related .intro-txt p.clr {
		font-weight: 600;
		color: var(--main-color);
		padding-bottom: 2em;
	}
	.role-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 87%;
		max-width: 300px;
		margin: 0 auto 30px;
	}
	.role-list > div {
		width: 100%;
		margin-bottom: 20px;
	}
	.related-links {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 0;
		max-width: 360px;
		margin: 0 auto;
	}
	.related-links li {
		width: 100%;
		margin-bottom: 10px;
		display: flex;
		justify-content: center;
		align-items: center;
		border: solid 1px #000;
		position: relative;
		padding: 18px 5px;
		text-align: center;
		line-height: 1.4em;
		background: #FFF;
		transition: all .5s;
	}
}


.list-squre.sprd li {
	margin-bottom: 20px;
}
.mng-chart {
	margin: 40px 0 0;
}
.mng-plan {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
  gap: 2%;
}
.mng-plan li {
	width: 49%;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	border: solid 1px #000;
	position: relative;
	padding: 40px 30px;
	line-height: 1.4em;
	background: #FFF;
	transition: all .4s;
}
.mng-plan li:after {
	right: 10px;
	bottom: 10px;
	width: 10px;
	height: 10px;
	background-image: url("../img/common_img/arrow-black.svg");
}
.mng-plan li p {
	padding: 0 0 0 55px;
	position: relative;
}
.mng-plan li p:before {
	width: 40px;
	height: 50px;
	background-image: url("../img/common_img/icon-pdf.svg");
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.dx-box {
	margin: 30px auto;
}
.dx-box .ctr-txt {
	text-align: center;
	padding-bottom: 30px;
}
.dx-nintei .ttl {
	color: var(--main-color);
	font-size: 20px;
}
.dx-nintei .txt {
	width: 60%;
}
.dx-nintei .img {
	width: 35%;
}
.block-milestone {
	margin: 40px auto 0;
}
.block-milestone .main-txt {
	position: relative;
	text-align: center;
}
.block-milestone .main-txt span {
	display: block;
	color: var(--main-color);
	font-family: var(--en-font);
	font-size: 40px;
	font-weight: 600;
	line-height: 1.2em;
}
.block-milestone .hero-box {
	margin: 20px auto 50px;
	max-width: 700px;
	padding: 40px;
	background: #F2F2F2;
	position: relative;
}
.block-milestone .hero-box:before {
	width: 32px;
	height: 32px;
	background-image: url("../img/common_img/bracket.svg");
	left: 0;
	top: 0;
}
.block-milestone .hero-box:after {
	width: 32px;
	height: 32px;
	background-image: url("../img/common_img/bracket.svg");
	right: 0;
  bottom: 0;
	transform: rotate(180deg);
}
.block-milestone .hero-box p {
	text-align: center;
	line-height: 2em;
}
.block-milestone .hero-box p span {
	display: block;
	color: var(--main-color);
	font-family: var(--en-font);
	font-size: 40px;
	font-weight: 600;
	line-height: 1.6em;
	letter-spacing: 0.1em;
}
.block-milestone .hero-box ~ p {
	text-align: center;
	padding-bottom: 50px;
}
.five-points {
	position: relative;
	margin: 0 auto 60px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.five-points li {
	width: 30%;
	margin: 0 .5% 1%;
	background: #F2F2F2;
	padding: 25px 20px;
}
.five-points li .num {
	position: relative;
	width: 100%;
	margin-bottom: 5px;
}
.five-points li .num span {
	position: relative;
	width: 24px;
	height: 24px;
	display: block;
	background: #39992D;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	line-height: 24px;
	color: #FFF;
}
ol.list-dohyo li {
  list-style-type: none;
  counter-increment: cnt;
	padding-left: 50px;
	position: relative;
	line-height: 1.8em;
	margin: 0 0 20px;
}
ol.list-dohyo li::before {
  content: "［"counter(cnt)"］";
	color: #39992D;
	left: 0;
	top: 2px;
	font-size: 20px;
	line-height: 1.8em;
}
ol.list-dohyo li .ttl {
	font-size: 20px;
	color: #39992D;
}
ol.list-dohyo li p:not([class]) {
	margin-left: -50px;
}
.ir .fs-box-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ir .fs-box-wrap .fs-box {
	width: 49.5%;
	background: #F4F4F4;
	padding: 30px;
}
.fs-box .ttl {
	font-size: 24px;
}
.fs-box .pdf-btn {
	width: 100%;
	padding: 15px 20px;
	position: relative;
	background: #FFF;
	border: solid 1px #000;
	margin-bottom: 30px;
	transition: all .4s;
}
.fs-box .pdf-btn p {
	padding: 0 0 0 40px;
	position: relative;
}
.fs-box .pdf-btn p:before {
	width: 30px;
	height: 40px;
	background-image: url("../img/common_img/icon-pdf.svg");
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.fs-box ul li {
	line-height: 1.8em;
}
.fs-box ul li a {
	font-size: 90%;
	position: relative;
}
.fs-box ul li a:after {
	width: 12px;
	height: 8px;
	background-image: url("../img/common_img/arrow-black.svg");
	right: -10px;
	top: 50%;
	transform: translateY(-50%);
	transition: all .4s;
}

@media (hover: hover) {
	.mng-plan li:hover {
		background: #F5FFF4;
	}
	.fs-box .pdf-btn:hover {
		background: #F5FFF4;
	}
	.fs-box ul li a:hover {
		text-decoration: underline;
	}
	.fs-box ul li a:hover:after {
		right: -15px;
	}
}
@media screen and (max-width: 1024px) {
	.fs-box .pdf-btn {
		width: 100%;
		padding: 15px 15px;
		position: relative;
		background: #FFF;
		border: solid 1px #000;
		margin-bottom: 20px;
		transition: all .4s;
	}
	.fs-box .pdf-btn p {
		padding: 0 0 0 30px;
		position: relative;
		font-size: 12px;
	}
	.fs-box .pdf-btn p:before {
		width: 24px;
		height: 34px;
		background-image: url("../img/common_img/icon-pdf.svg");
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
}
@media screen and (max-width: 834px) {
	.list-squre.sprd li {
		margin-bottom: 20px;
	}
	.mng-chart {
		margin: 40px 0 0;
	}
	.mng-plan {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 2%;
	}
	.mng-plan li {
		width: 100%;
		margin-bottom: 10px;
		display: flex;
		align-items: center;
		border: solid 1px #000;
		position: relative;
		padding: 20px 20px;
		line-height: 1.4em;
		background: #FFF;
		transition: all .4s;
	}
	.mng-plan li:after {
		right: 10px;
		bottom: 10px;
		width: 10px;
		height: 10px;
		background-image: url("../img/common_img/arrow-black.svg");
	}
	.mng-plan li p {
		padding: 0 0 0 55px;
		position: relative;
	}
	.mng-plan li p:before {
		width: 40px;
		height: 50px;
		background-image: url("../img/common_img/icon-pdf.svg");
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.dx-box {
		margin: 30px auto;
	}
	.dx-box .ctr-txt {
		text-align: center;
		padding-bottom: 30px;
	}
	.dx-nintei .ttl {
		color: var(--main-color);
		font-size: 16px;
	}
	.dx-nintei .txt {
		width: 100%;
	}
	.dx-nintei .img {
		width: 100%;
		max-width: 220px;
		margin: 10px auto 0;
	}
	.block-milestone {
		margin: 40px auto 0;
	}
	.block-milestone .main-txt {
		position: relative;
		text-align: center;
	}
	.block-milestone .main-txt span {
		display: block;
		color: var(--main-color);
		font-family: var(--en-font);
		font-size: 30px;
		font-weight: 600;
		line-height: 1.2em;
	}
	.block-milestone .hero-box {
		margin: 20px auto 50px;
		max-width: 700px;
		padding: 30px 10px;
		background: #F2F2F2;
		position: relative;
	}
	.block-milestone .hero-box:before {
		width: 32px;
		height: 32px;
		background-image: url("../img/common_img/bracket.svg");
		left: 0;
		top: 0;
	}
	.block-milestone .hero-box:after {
		width: 32px;
		height: 32px;
		background-image: url("../img/common_img/bracket.svg");
		right: 0;
		bottom: 0;
		transform: rotate(180deg);
	}
	.block-milestone .hero-box p {
		text-align: center;
		line-height: 2em;
	}
	.block-milestone .hero-box p span {
		display: block;
		color: var(--main-color);
		font-family: var(--en-font);
		font-size: 24px;
		font-weight: 600;
		line-height: 1.6em;
		letter-spacing: 0.1em;
		white-space: nowrap;
	}
	.block-milestone .hero-box ~ p {
		text-align: center;
		padding-bottom: 50px;
	}
	.five-points {
		position: relative;
		margin: 0 auto 60px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.five-points li {
		width: 100%;
		margin: 0 0 1%;
		background: #F2F2F2;
		padding: 20px 20px;
	}
	.five-points li .num {
		position: relative;
		width: 100%;
		margin-bottom: 5px;
	}
	.five-points li .num span {
		position: relative;
		width: 24px;
		height: 24px;
		display: block;
		background: #39992D;
		left: 50%;
		transform: translateX(-50%);
		text-align: center;
		line-height: 24px;
		color: #FFF;
	}
	ol.list-dohyo li {
		list-style-type: none;
		counter-increment: cnt;
		padding-left: 40px;
		position: relative;
		line-height: 1.8em;
		margin: 0 0 20px;
	}
	ol.list-dohyo li::before {
		content: "［"counter(cnt)"］";
		color: #39992D;
		left: 0;
		top: 2px;
		font-size: 16px;
		line-height: 1.8em;
	}
	ol.list-dohyo li .ttl {
		font-size: 16px;
		color: #39992D;
	}
	ol.list-dohyo li p:not([class]) {
		margin-left: -32px;
	}
	.ir .fs-box-wrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.ir .fs-box-wrap .fs-box {
		width: 100%;
		background: #F4F4F4;
		padding: 20px;
		margin-bottom: 5px;
	}
	.fs-box .ttl {
		font-size: 16px;
	}
	.fs-box .pdf-btn {
		width: 100%;
		padding: 12px 12px;
		position: relative;
		background: #FFF;
		border: solid 1px #000;
		margin-bottom: 10px;
		transition: all .4s;
	}
	.fs-box .pdf-btn p {
		padding: 0 0 0 20px;
		position: relative;
		line-height: 1.4em;
	}
	.fs-box .pdf-btn p:before {
		width: 15px;
		height: 20px;
		background-image: url("../img/common_img/icon-pdf.svg");
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.fs-box ul li {
		line-height: 1.8em;
	}
	.fs-box ul li a {
		font-size: 90%;
		position: relative;
	}
	.fs-box ul li a:after {
		width: 12px;
		height: 8px;
		background-image: url("../img/common_img/arrow-black.svg");
		right: -10px;
		top: 50%;
		transform: translateY(-50%);
		transition: all .4s;

	}
}


.ir .mng-chart ol.count-parent > li {
	margin-bottom: 10px;
}
.mng-chart {
	position: relative;
}
.mng-chart:before {
	width: 200px;
	height: 90%;
	background-image: url("../img/corp_img/mng-triangle.svg");
	background-size: cover;
	left: 25px;
	bottom: 0;
	z-index: -1;
}
dl[class^="chart-block"] {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
dl[class^="chart-block"] dt {
	width: 250px;
}
dl[class^="chart-block"] dd {
	width: calc(100% - 250px);
	padding: 20px 25px;
	background: #F2F2F2;
}
dl.chart-block05 dd {
	padding: 50px 25px 20px;
}
dl[class^="chart-block"] dt .txt {
  display: flex; 
  flex-direction: column;
  justify-content: center; 
  align-items: center;
  height: 100%;  
  text-align: center;
}
dl[class^="chart-block"] dt .txt .chart-block_ttl {
	color: #FFF;
	font-size: 20px;
	line-height: 1.4em;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: solid 2px #FFF;
	width: 80%;
}
dl[class^="chart-block"] dt .txt p {
	line-height: 1.4em;
	color: #FFF;
}
.ir dl[class^="chart-block"] .count-parent li {
	margin-bottom: 0;
	line-height: 1.8em;
}
.ir dl[class^="chart-block"] .count-parent li:last-child {
	padding-bottom: 0;
}
.chart-block01 dt {
	background: linear-gradient(135deg, #84c261 0%, #39992d 37.93%, #003400 100%);
}
.chart-block02 dt {
	background: #339396;
}
.chart-block03 dt {
	background: linear-gradient(135deg, #f49e16 0%, #ad510d 100%);
}
.chart-block04 dt {
	background: #339396;
}
.chart-block05 dt {
	background: linear-gradient(135deg, #f49e16 0%, #ad510d 100%);
}

.dd-block {
	padding-bottom: 15px;
}
.dd-block:last-child {
	padding-bottom: 0;
}
.dd-block_ttl {
	font-size: 20px;
	color: var(--main-color);
	line-height: 1.4em;
	padding-bottom: 5px;
}
.dd-block-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.dd-block-grid .grid-left {
	width: 60%;
	position: relative;
	padding: 0 25px 0 0;
}
.dd-block-grid .grid-left:before {
	width: 5px;
	height: calc(100% + 40px);
	top: -20px;
	position: absolute;
	background: #FFF;
	right: 0;
}
.dd-block-grid .grid-right {
	width: 40%;
	padding: 0 0 0 25px;
	position: relative;
}
.dd-block-grid .grid-left:after {
	width: 2px;
	height: 20px;
	background: #000;
	left: 50%;
	bottom: -40px;
}
.dd-block-grid .grid-left .count-child ~ p {
	padding: 10px 2% 0;
}
.dd-block-grid .grid-right:after {
	width: 2px;
	height: 20px;
	background: #000;
	left: 50%;
	bottom: -40px;
}
.check-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}
.check-list:before {
	width: 76.2%;
	height: 2px;
	background: #000;
	top: -70px;
	left: 12%;
}
.check-list li {
	width: 24%;
  background: #FFF;
  border: solid 1px #000;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 20px 10px;
	position: relative;
}
.check-list li p {
	font-size: 14px;
	line-height: 1.6em;
	position: relative;
}
.check-list li:before {
	width: 2px;
	height: 20px;
	background: #000;
	left: 50%;
	top: -70px;
}
.check-list li:after {
	width: 30px;
	height: 30px;
	background-image: url("../img/common_img/icon-check.svg");
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
}

@media screen and (max-width: 834px) {
	.ir .mng-chart ol.count-parent > li {
		margin-bottom: 10px;
	}
	.mng-chart {
		position: relative;
	}
	.mng-chart:before {
		width: 240px;
		height: 90%;
		background-image: url("../img/corp_img/mng-triangle.svg");
		background-size: cover;
		left: 50%;
		transform: translateX(-50%);
		bottom: 0;
		z-index: -1;
	}
	dl[class^="chart-block"] {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 20px;
	}
	dl[class^="chart-block"] dt {
		width: 100%;
		padding: 20px 0;
	}
	dl[class^="chart-block"] dd {
		width: calc(100%);
		padding: 25px 5%;
		background: #F2F2F2;
	}
	dl.chart-block05 dd {
		padding: 35px 5% 10px;
	}
	dl[class^="chart-block"] dt .txt {
		display: flex; 
		flex-direction: column;
		justify-content: center; 
		align-items: center;
		height: 100%;  
		text-align: center;
	}
	dl[class^="chart-block"] dt .txt .chart-block_ttl {
		color: #FFF;
		font-size: 16px;
		line-height: 1.4em;
		padding-bottom: 10px;
		margin-bottom: 10px;
		border-bottom: solid 2px #FFF;
		width: 80%;
	}
	dl[class^="chart-block"] dt .txt p {
		line-height: 1.4em;
		color: #FFF;
	}
	.ir dl[class^="chart-block"] .count-parent li {
		margin-bottom: 0;
		line-height: 1.8em;
	}
	.ir dl[class^="chart-block"] .count-parent li:last-child {
		padding-bottom: 0;
	}
	.chart-block01 dt {
		background: linear-gradient(135deg, #84c261 0%, #39992d 37.93%, #003400 100%);
	}
	.chart-block02 dt {
		background: #339396;
	}
	.chart-block03 dt {
		background: linear-gradient(135deg, #f49e16 0%, #ad510d 100%);
	}
	.chart-block04 dt {
		background: #339396;
	}
	.chart-block05 dt {
		background: linear-gradient(135deg, #f49e16 0%, #ad510d 100%);
	}

	.dd-block {
		padding-bottom: 15px;
	}
	.dd-block:last-child {
		padding-bottom: 0;
	}
	.dd-block_ttl {
		font-size: 16px;
		color: var(--main-color);
		line-height: 1.4em;
		padding-bottom: 5px;
	}
	.dd-block-grid {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.dd-block-grid .grid-left {
		width: 100%;
		position: relative;
		padding: 0 0 20px 0;
	}
	.dd-block-grid .grid-left:before {
		width: 112%;
		height: 4px;
		background: #FFF;
		left: -6%;
		bottom: 0;
		top: auto;
		right: auto;
	}
	.dd-block-grid .grid-right {
		width: 100%;
		padding: 20px 0 0 0;
		position: relative;
	}
	.dd-block-grid .grid-left:after {
		display: none;
	}
	.dd-block-grid .grid-left .count-child {
		margin-left: -5px;
	}
	.dd-block-grid .grid-right .count-child {
		margin-left: -5px;
	}
	.dd-block-grid .grid-left .count-child ~ p {
		padding: 10px 2% 0;
	}
	.dd-block-grid .grid-right:after {
		display: none;
	}
	.check-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
	}
	.check-list:before {
		display: none;
	}
	.check-list li {
		width: 100%;
		background: #FFF;
		border: solid 1px #000;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		padding: 20px 5px;
		position: relative;
		margin-bottom: 20px;
	}
	.check-list li p {
		font-size: 14px;
		line-height: 1.6em;
		position: relative;
	}
	.check-list li:before {
		display: none;
	}
	.check-list li:after {
		width: 20px;
		height: 20px;
		background-image: url("../img/common_img/icon-check.svg");
		top: -10px;
		left: 50%;
		transform: translateX(-50%);
	}
	.ir .dd-block .count-parent > li:before {
		top: 3px;
	}
	.ir .dd-block .count-parent > li {
		padding-bottom: 15px;
	}
	.ir .list-squre li:before {
		top: 7px;
	}
	.ir .dd-block .list-squre li {
		margin-bottom: 14px;
	}
	.ir .dd-block .list-squre li:last-child {
		margin-bottom: 0;
	}
}



.item-edited-date.pos-few {
	margin-left: 0;
}

.item-edited-date.pos-many {
	margin-left: 100px;
}

@media (max-width: 834px) {
  .item-edited-date.pos-many {
    margin-left: 40px;
  }

  .item-edited-date.pos-few {
    margin-left: 0;
  }
}