@charset "utf-8";
#wrap {
	position: relative;
}
#wrap::before {
	content: '';
	display: block;
	width: calc((569 / 1280) * 100vw);
	height: 200%;
	background-color: var(--color--creamgray);
	position: absolute;
	top: calc((1074 / 1280) * 100vw);
	left: calc((500 / 1280) * 100vw);
	transform: translate(-50%, -50%) rotate(40deg);
	z-index: -1;
}

#dx {
	width: 100%;
	height: auto;
}
	.dx__inner {
		width: 90%;
		max-width: 1000px;
		height: auto;
		padding: 0 0 100px;
		margin: 0 auto;
	}
		.dx__contents {
			width: 100%;
			height: auto;
		}
			.dx__contents__heading {
				width: 100%;
				height: auto;
				padding: 20px 0;
				margin: 0 auto 22px;
				border-bottom: solid 1px var(--color--lightgray);
				font-size: 1.625rem;
				font-weight: 700;
				line-height: 1;
				letter-spacing: 0.05em;
				position: relative;
			}
				.dx__contents__heading::after {
					content: '';
					display: block;
					width: 50px;
					height: 1px;
					background-color: var(--color--yellow);
					position: absolute;
					bottom: -1px;
					left: 0;
				}
				.dx__contents__heading br {
					display: none;
				}
		/* _dx_message */
		._dx_message {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			margin: 0 auto 50px;
		}
			.dx__message__contents {
				width: 56.3%;
				height: auto;
			}
				.dx__message__txt {
					width: 100%;
					height: auto;
					font-size: 14px;
					font-weight: 500;
					line-height: 2;
					letter-spacing: 0.04em;
				}
					.dx__message__txt strong {
						font-weight: 700;
					}
			.dx__message__image {
				width: 38.7%;
				height: auto;
			}
				.dx__message__image__wrap {
					width: 100%;
					height: auto;
				}
					.dx__message__image__wrap img {
						width: 100%;
						height: auto;
					}
				.dx__message__image__cap {
					width: 100%;
					height: auto;
					margin: 15px auto 0;
					font-size: 14px;
					font-weight: 700;
					line-height: 1;
					letter-spacing: 0.04em;
					text-align: right;
				}

		/* _dx_vision */
		._dx_vision {
			margin: 0 auto 105px;
		}
			.dx__vision__txt {
				width: 100%;
				height: auto;
				margin: 0 auto 42px;
				font-size: 14px;
				font-weight: 500;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.dx__vision__image {
				width: 100%;
				height: auto;
			}
				.dx__vision__image img {
					width: 100%;
					height: auto;
				}

		/* _dx_strategy */
		._dx_strategy {
			margin: 0 auto 90px;
		}
			._dx_strategy .dx__contents__heading {
				text-align: center;
			}
			.dx__strategy__txt {
				width: 100%;
				height: auto;
				margin: 0 auto 42px;
				font-size: 14px;
				font-weight: 700;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.dx__strategy__table {
				width: 100%;
				height: auto;
			}
				.dx__strategy__table img {
					width: 100%;
					height: auto;
				}
			.dx__strategy__management {
				width: 100%;
				height: auto;
				margin: 20px auto 0;
			}
				.dx__strategy__management img {
					width: 100%;
					height: auto;
				}
			.dx__strategy__bottom__txt {
				width: 100%;
				height: auto;
				margin: 16px auto 0;
				font-size: 14px;
				font-weight: 500;
				line-height: calc(21 / 14);
				letter-spacing: 0.04em;
				text-align: center;
			}
				.dx__strategy__bottom__txt a {
					font-size: 12px;
					color: var(--color--yellow);
				}
				@media (any-hover: hover) {
					.dx__strategy__bottom__txt a:hover {
						text-decoration: underline;
					}
				}

		/* _dx_environment */
		._dx_environment {
			padding: 90px 0;
			margin: 0 auto 90px;
			position: relative;
		}
		._dx_environment::before {
			content: '';
			display: block;
			width: 100vw;
			height: 100%;
			background-color: #ffffff;
			position: absolute;
			top: 0;
			left: 50%;
			transform: translateX(-50%);
			z-index: -1;
		}
			._dx_environment .dx__contents__heading {
				text-align: center;
			}
			.dx__environment__txt {
				width: 100%;
				height: auto;
				margin: 0 auto 42px;
				font-size: 14px;
				font-weight: 700;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.dx__environment__image {
				width: 100%;
				height: auto;
				border: solid 1px var(--color--lightgray);
			}
				.dx__environment__image img {
					width: 100%;
					height: auto;
				}
			.dx__environment__btn_wrap {
				width: 320px;
				height: auto;
				margin: 30px auto 0;
			}
				.dx__environment__btn {
					display: flex;
					justify-content: center;
					align-items: center;
					width: 100%;
					height: 56px;
					border-radius: 28px;
					background-color: #fff;
					border: solid 1px var(--color--black);
					font-size: 1rem;
					font-weight: 700;
					line-height: 1;
					letter-spacing: 0.05em;
					position: relative;
					transition: .3s;
				}
					.dx__environment__btn::before {
						content: '';
						display: block;
						width: 14px;
						height: 1px;
						background-color: var(--color--black);
						position: absolute;
						top: 50%;
						right: 23px;
						transform: translate(0%,-50%);
						transition: .3s;
					}
					.dx__environment__btn::after {
						content: '';
						display: block;
						width: 6px;
						height: 6px;
						border-top: solid 1px var(--color--black);
						border-right: solid 1px var(--color--black);
						position: absolute;
						top: 50%;
						right: 23px;
						transform: rotate(45deg) translate(0%,-50%);
						transform-origin: center 0%;
						transition: .3s;
					}
			@media (any-hover: hover) {
				.dx__environment__btn {
					transition: .3s;
				}
				.dx__environment__btn:hover {
					background-color: var(--color--black);
					color: #fff;
				}
					.dx__environment__btn:hover::before {
						right: 20px;
						background-color: #fff;
					}
					.dx__environment__btn:hover::after {
						right: 20px;
						border-color: #fff;
					}
			}

		/* _dx_organization */
		._dx_organization {
			margin: 0 auto 100px;
		}
			.dx__organization__txt {
				width: 100%;
				height: auto;
				margin: 0 auto 72px;
				font-size: 14px;
				font-weight: 700;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.dx__organization__image {
				width: 100%;
				height: auto;
			}
				.dx__organization__image img {
					width: 100%;
					height: auto;
				}

		/* _dx_management */
		._dx_management {
			margin: 0 auto;
		}
			.dx__management__txt {
				width: 100%;
				height: auto;
				margin: 0 auto 54px;
				font-size: 14px;
				font-weight: 700;
				line-height: 2;
				letter-spacing: 0.04em;
			}
			.dx__management__image {
				width: 100%;
				height: auto;
			}
				.dx__management__image img {
					width: 100%;
					height: auto;
				}
			.dx__management__certification {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 108.6%;
				height: auto;
				padding: 30px 42px;
				margin: 100px auto 0 -4.3%;
				background-color: #ffffff;
			}
				.dx__management__certification__txt {
					width: 44%;
					height: auto;
					font-size: 14px;
					font-weight: 500;
					line-height: 2;
					letter-spacing: 0.04em;
				}
				.dx__management__certification__image {
					width: 50%;
					height: auto;
				}
					.dx__management__certification__image img {
						width: 100%;
						height: auto;
					}

/* PC ================================================== */
@media all and (min-width:1025px){

}

/* Tablet ================================================== */
@media all and (max-width:1024px){
			.dx__contents__heading {
				padding: 18px 0;
				margin: 0 auto 40px;
				font-size: 1.5rem;
			}
}

/* SP ================================================== */
@media all and (max-width:599px){
			.dx__contents__heading {
				padding: 12px 0;
				margin: 0 auto 30px;
				font-size: 1.375rem;
				line-height: 1.2;
			}
				.dx__contents__heading br {
					display: inline-block;
				}
		/* _dx_message */
		._dx_message {
			display: block;
		}
			.dx__message__contents {
				width: 100%;
				margin: 0 auto 30px;
			}
			.dx__message__image {
				width: 100%;
			}
				.dx__message__image__cap {
					width: 100%;
					height: auto;
					margin: 15px auto 0;
					font-size: 14px;
					font-weight: 700;
					line-height: 1;
					letter-spacing: 0.04em;
					text-align: right;
				}

		/* _dx_vision */
		._dx_vision {
			margin: 0 auto 60px;
		}
			.dx__vision__txt {

				margin: 0 auto 42px;

			}

		/* _dx_strategy */
		._dx_strategy {
			margin: 0 auto 60px;
		}
			._dx_strategy .dx__contents__heading {
				text-align: left;
			}
			.dx__strategy__txt {

				margin: 0 auto 42px;

			}
			.dx__strategy__bottom__txt {
				text-align: left;
			}

		/* _dx_environment */
		._dx_environment {
			padding: 60px 0;
			margin: 0 auto 60px;
		}
			._dx_environment .dx__contents__heading {
				text-align: left;
			}
			.dx__environment__txt {

				margin: 0 auto 42px;

			}

		/* _dx_organization */
		._dx_organization {
			margin: 0 auto 60px;
		}
			.dx__organization__txt {

				margin: 0 auto 72px;
			}

		/* _dx_management */
		._dx_management {
			margin: 0 auto;
		}
			.dx__management__txt {
				margin: 0 auto 30px;
			}
			.dx__management__certification {
				flex-direction: column-reverse;
				justify-content: flex-start;
				width: 100%;
				padding: 24px 5%;
				margin: 60px auto 0;
			}
				.dx__management__certification__txt {
					width: 100%;
				}
				.dx__management__certification__image {
					width: 100%;
					margin: 0 auto 20px;
				}
}