/* ---------------------------------------
  about
-----------------------------------------*/
@media screen and (min-width: 768px) {
	main {
		overflow: visible;
	}
}

/* page_ttl
--------------------------------*/
#page_ttl {
	background-color: #0DB7D6;
}

#page_ttl .wrap {
	align-items: flex-start;
	justify-content: space-between;
	padding-bottom: 18rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .wrap {
		padding-bottom: 10rem;
	}
}

#page_ttl .txt_wrap {
	width: 62rem;
	margin-top: -2.5rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .txt_wrap {
		width: 100%;
		margin-top: 7.5rem;
	}
}

#page_ttl .catch {
	color: #EFEC64;
	font-weight: 900;
	font-size: 4rem;
	line-height: 1.8;
	letter-spacing: -0.025em;
	white-space: nowrap;
}

@media screen and (max-width: 767px) {
	#page_ttl .catch {
		font-size: 4.2rem;
		line-height: 1.7142857143;
	}
}

#page_ttl .txt {
	color: #000000;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 2.4444444444;
	padding-right: 4rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .txt {
		font-size: 2.6rem;
		line-height: 2.0769230769;
		letter-spacing: -0.025em;
		padding: 0;
		margin-top: 9rem;
	}
}

#page_ttl .illust_wrap {
	width: 51.5rem;
	height: 52.2rem;
	position: absolute;
	left: 5.7rem;
	top: 38rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap {
		width: 100%;
		height: 50.5rem;
		position: relative;
		left: 0;
		top: 0;
		margin-top: 6rem;
	}
}

#page_ttl .illust_wrap .bg_line {
	width: 136rem;
	height: 70.1rem;
	position: absolute;
	right: 2.9rem;
	bottom: 3rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap .bg_line {
		width: 68rem;
		height: 61.4rem;
		right: 5.6rem;
		bottom: 2rem;
	}
}

#page_ttl .illust_wrap .bg_line svg {
	width: 100%;
	height: 100%;
}

#page_ttl .illust_wrap .bg_line .line_path {
	stroke-width: 0.3rem;
	stroke: #179342;
	fill: none;
	stroke-dasharray: 0 0 7.81 6.25;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap .bg_line .line_path {
		stroke-width: 0.6rem;
		stroke-dasharray: 0 0 6.64 5.31;
	}
}

#page_ttl .illust_wrap .bg_line .line_mask {
	stroke-width: 0.3rem;
	fill: none;
	stroke: #fff;
	stroke-dasharray: 6000;
	stroke-dashoffset: 6000;
	stroke-miterlimit: 10;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap .bg_line .line_mask {
		stroke-width: 0.6rem;
	}
}

#page_ttl .illust_wrap.is-show .bg_line .line_mask {
	animation: line_anime 3s linear forwards;
	animation-delay: 0.7s;
}

@keyframes line_anime {
	from {
		stroke-dashoffset: 6000;
	}

	to {
		stroke-dashoffset: 0;
	}
}

#page_ttl .illust_wrap .illust {
	position: absolute;
	z-index: 2;
	animation-delay: 1.5s;
}

#page_ttl .illust_wrap .illust img {
	display: block;
}

#page_ttl .illust_wrap .illust._01 {
	width: 35rem;
	left: 0;
	top: 0;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap .illust._01 {
		width: 35.1rem;
		left: 3.2rem;
		top: 0;
	}
}

#page_ttl .illust_wrap .illust._02 {
	width: 31rem;
	left: 20.3rem;
	top: 14.3rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap .illust._02 {
		width: 31.1rem;
		left: 33.3rem;
		top: 13rem;
	}
}

#page_ttl .illust_wrap .illust._03 {
	width: 23rem;
	left: 4.8rem;
	top: 23rem;
}

@media screen and (max-width: 767px) {
	#page_ttl .illust_wrap .illust._03 {
		width: 23.2rem;
		top: 20.8rem;
		left: 3.1rem;
	}
}

#page_ttl .illust_wrap .illust._03 img {
	animation-direction: reverse;
}

#page_ttl .illust_wrap .illust .anime_fuwafuwa {
	animation-delay: 2s;
}

/* sec_about
--------------------------------*/
#sec_about {
	position: relative;
	background-color: #fff;
	padding-bottom: 12rem;
}

@media screen and (max-width: 767px) {
	#sec_about {
		padding-bottom: 5rem;
	}
}

#sec_about>.inner {
	position: relative;
}

@media screen and (min-width: 768px) {
	#sec_about>.inner::after {
		content: "";
		display: block;
		width: 100%;
		height: 100vh;
	}
}

#sec_about .ttl_wrap {
	padding: 5rem 0 0;
	background-color: #0DB7D6;
	overflow: hidden;
}

#sec_about .ttl_wrap::after {
	content: "";
	width: 100%;
	height: 1rem;
	background-color: #fff;
	position: absolute;
	bottom: -0.5rem;
	left: 0;
}

@media screen and (max-width: 767px) {
	#sec_about .ttl_wrap {
		padding-top: 5.6rem;
		z-index: 10;
	}

	#sec_about .ttl_wrap .wrap {
		padding: 0 4rem;
	}
}

#sec_about .ttl_wrap .sec_ttl {
	display: inline-block;
	color: #EFEC64;
	font-weight: 900;
	font-size: 5.2rem;
	line-height: 1;
	letter-spacing: -0.025em;
	margin-bottom: -0.9rem;
}

#sec_about .ttl_wrap .sec_ttl .en {
	display: inline-block;
	font-weight: 700;
	font-size: 5.6rem;
	margin-top: 0;
}

#sec_about .ttl_wrap .bg_txt {
	width: 100vw;
	overflow: hidden;
	background-color: #fff;
	padding-top: 3.2rem;
}

@media screen and (max-width: 767px) {
	#sec_about .ttl_wrap .bg_txt {
		top: 32rem;
		left: -8rem;
	}
}

#sec_about .ttl_wrap .bg_txt .inner {
	position: relative;
	display: flex;
	gap: 0 1rem;
	animation: anime_loop 16s linear infinite;
}

@media screen and (max-width: 767px) {
	#sec_about .ttl_wrap .bg_txt .inner {
		gap: 0 2rem;
	}
}

#sec_about .ttl_wrap .bg_txt p {
	flex-shrink: 0;
	color: #E6E6DC;
	font-weight: 700;
	font-size: 2.8rem;
	line-height: 1;
	white-space: nowrap;
}

@media screen and (max-width: 767px) {
	#sec_about .ttl_wrap .bg_txt p {
		font-size: 3.2rem;
	}
}

@keyframes anime_loop {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-50%);
	}
}

#sec_about .about_block {
	width: 100%;
	padding: 8rem 0 12rem;
	position: -webkit-sticky;
	position: sticky;
	top: 16rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block {
		position: relative;
		top: 0;
		padding: 8rem 0 10rem;
	}
}

#sec_about .about_block .wrap {
	width: 100%;
	max-width: inherit;
	padding: 0;
	overflow: hidden;
}

#sec_about .about_block .about_cnt {
	max-width: 130rem;
	padding: 0 5rem;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: nowrap;
	opacity: 0;
	transition: 1s ease;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt {
		display: block;
		padding: 0 4rem;
		opacity: 1;
	}
}

#sec_about .about_block .about_cnt .txt_wrap {
	position: relative;
	width: 52rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap {
		width: 100%;
		padding: 0 4rem;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head {
	position: relative;
	display: flex;
	gap: 0 2.1rem;
	padding-left: 8rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .cnt_head {
		display: block;
		padding-left: 0;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head .num {
	flex: 1;
	height: 13rem;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	color: #808080;
	font-weight: 700;
	font-size: 9.876rem;
	line-height: 1;
	padding: 1.5rem 3.5rem 0 0;
	background-color: #E6E6DC;
	border-radius: 0 6.5rem 6.5rem 0;
	margin-left: calc((100vw - 65rem) * -1);
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .cnt_head .num {
		width: 26rem;
		height: 15.6rem;
		font-size: 11.86rem;
		padding: 2rem 5rem 0 0;
		border-radius: 0 7.8rem 7.8rem 0;
		margin-left: -8rem;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head>div {
	width: 43rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .cnt_head>div {
		width: 100%;
		margin-top: 4.5rem;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head .catch {
	color: #0DB7D6;
	font-weight: 900;
	font-size: 2.4rem;
	line-height: 1.5;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .cnt_head .catch {
		font-size: 3.2rem;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head .catch .en {
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .cnt_head .catch .en {
		font-size: 3.4rem;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head .catch .txt_s {
	font-weight: 500;
	font-size: 1.4rem;
}

#sec_about .about_block .about_cnt .txt_wrap .cnt_head .ttl {
	font-weight: 900;
	font-size: 3.6rem;
	line-height: 1.5;
	letter-spacing: -0.025em;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .cnt_head .ttl {
		font-size: 4.2rem;
		margin-top: 1rem;
	}
}

#sec_about .about_block .about_cnt .txt_wrap .txt {
	font-weight: 500;
	line-height: 2.5;
	letter-spacing: -0.025em;
	text-align: justify;
	margin-top: 4rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .txt_wrap .txt {
		font-size: 2.925rem;
		line-height: 2.0769230769;
		margin-top: 5rem;
	}
}

#sec_about .about_block .about_cnt .img_wrap {
	position: relative;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .about_cnt .img_wrap {
		width: 100%;
	}
}

#sec_about .about_block .illust {
	position: absolute;
	right: calc(50% - 60rem);
	z-index: 1;
	opacity: 0;
	transition: 1s ease;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block .illust {
		opacity: 1;
		right: 8rem;
	}
}

#sec_about .about_block.is-show .about_cnt,
#sec_about .about_block.is-show .illust {
	opacity: 1;
}

@media screen and (min-width: 768px) {

	#sec_about .about_block.about_block06,
	#sec_about .about_block.about_block07 {
		min-height: calc(100dvh - 15.9rem);
	}
}

@media screen and (min-width: 768px) {
	#sec_about .about_block.about_block07 {
		padding-bottom: 0;
	}
}

@media (min-width: 769px) and (max-height: 900px) {
	#sec_about .about_block.about_block07 {
		min-height: inherit;
		height: 54rem;
	}
}

#sec_about .about_block01 {
	z-index: 9;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 {
		padding-top: 12rem;
	}
}

#sec_about .about_block01 .about_cnt {
	position: relative;
}

#sec_about .about_block01 .about_cnt .img_wrap {
	position: relative;
	z-index: 10;
}

@media screen and (min-width: 768px) {
	#sec_about .about_block01 .about_cnt .img_wrap {
		width: 48.7rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .about_cnt .img_wrap {
		margin-top: 8rem;
	}
}

#sec_about .about_block01 .about_cnt .img_wrap .col {
	display: flex;
	justify-content: space-between;
}

#sec_about .about_block01 .about_cnt .img_wrap .col+.col {
	margin-top: 4rem;
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img {
	display: block;
	position: relative;
	width: 22rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .about_cnt .img_wrap .col .img {
		width: 32.6rem;
	}
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img+.img::before {
	content: "";
	width: 1.5rem;
	height: 1.5rem;
	border-top: 0.14rem solid #808080;
	border-right: 0.14rem solid #808080;
	position: absolute;
	left: -4rem;
	top: 6.4rem;
	transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .about_cnt .img_wrap .col .img+.img::before {
		width: 2.2rem;
		height: 2.2rem;
		border-width: 0.2rem;
		left: -5rem;
		top: 9rem;
	}
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img figcaption {
	font-weight: 700;
	color: #808080;
	font-size: 1.09rem;
	line-height: 1.5;
	margin-top: 0.5em;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .about_cnt .img_wrap .col .img figcaption {
		font-size: 2.4rem;
	}
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame {
	position: relative;
	display: block;
	width: 100%;
	height: 14.7rem;
	transition: 0.3s ease;
	cursor: pointer;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame {
		height: 21rem;
	}
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame::before,
#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame::after {
	content: "";
	position: absolute;
	opacity: 0;
	z-index: 1;
	transition: 0.3s ease;
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame::before {
	width: 100%;
	height: 100%;
	border: 0.8rem solid #808080;
	left: 0;
	top: 0;
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame::after {
	width: 3.2rem;
	height: 3.2rem;
	background: url(../img/about/ico_magnify.svg) no-repeat center/contain;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame:hover::before,
#sec_about .about_block01 .about_cnt .img_wrap .col .img .frame:hover::after {
	opacity: 1;
}

#sec_about .about_block01 .about_cnt .hover-frame {
	width: 68rem;
	position: absolute;
	top: 0;
	right: 5rem;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 11;
	cursor: pointer;
	pointer-events: auto;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .about_cnt .hover-frame {
		width: 100%;
		right: 0;
	}
}

#sec_about .about_block01 .about_cnt .hover-frame.is-visible {
	opacity: 1;
}

#sec_about .about_block01 .illust {
	width: 24rem;
	top: -14rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block01 .illust {
		width: 30.6rem;
		right: 4rem;
		top: 3rem;
	}
}

#sec_about .about_block02 {
	z-index: 8;
}

@media screen and (min-width: 768px) {
	#sec_about .about_block02 .about_cnt .img_wrap {
		width: 60rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block02 .about_cnt .img_wrap {
		margin-top: 10rem;
	}
}

#sec_about .about_block02 .about_cnt .img_wrap .img._01 {
	width: 47.7rem;
	margin-left: auto;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block02 .about_cnt .img_wrap .img._01 {
		width: 59.3rem;
		height: 75.2rem;
	}

	#sec_about .about_block02 .about_cnt .img_wrap .img._01 img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

#sec_about .about_block02 .about_cnt .img_wrap .img._02 {
	width: 35.4rem;
	margin-top: -15.4rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block02 .about_cnt .img_wrap .img._02 {
		width: 40.8rem;
		margin-top: -35.6rem;
	}
}

#sec_about .about_block02 .about_cnt .img_wrap .img._03 {
	width: 19.9rem;
	margin-left: auto;
	margin-right: 1.9rem;
	margin-top: -17rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block02 .about_cnt .img_wrap .img._03 {
		width: 22.9rem;
		margin-right: 4rem;
		margin-top: -12rem;
	}
}

#sec_about .about_block02 .about_cnt .illust {
	width: 34.7rem;
	right: calc(50% - 41rem);
	top: 31rem;
}

#sec_about .about_block02 .illust {
	width: 24rem;
	top: -12rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block02 .illust {
		width: 27rem;
		top: 4rem;
	}
}

@media screen and (min-width: 768px) {
	#sec_about .about_block03 .about_cnt .img_wrap {
		width: 55.7rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap {
		margin-top: 11rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit .ttl {
	font-weight: 900;
	font-size: 2.4rem;
	line-height: 1.5;
	padding-bottom: 0.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit .ttl {
		font-size: 3rem;
		padding-bottom: 0.8rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit ul {
	margin-top: 1rem;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit ul li {
	font-weight: 500;
	line-height: 1.75;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit ul li {
		font-size: 2rem;
		line-height: 1.75;
		letter-spacing: -0.03em;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._01 .ttl {
	color: #0DB7D6;
	border-bottom: 1px dotted #0DB7D6;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._01 ul li span {
	color: #0DB7D6;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._01 .img {
	width: 46rem;
	margin: 6rem auto 0;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._01 .img {
		width: 100%;
		margin-top: 7rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 {
	margin-top: 6rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 {
		margin-top: 9rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .ttl {
	color: #179342;
	border-bottom: 1px dotted #179342;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 ul li span {
	color: #179342;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point {
	display: flex;
	align-items: flex-start;
	gap: 0 2.5rem;
	margin-top: 4.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point {
		gap: 0 5rem;
		margin-top: 7rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .img {
	width: 24.45rem;
	margin-left: -1.55rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .img {
		width: 31rem;
		margin-left: 0;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt {
	flex: 1;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .ttl_s {
	color: #0DB7D6;
	font-weight: 900;
	font-size: 1.7rem;
	line-height: 1.5;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .ttl_s {
		font-size: 2.1rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt ol {
	margin-top: 1rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt ol {
		margin-top: 2rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt ol li {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6428571429;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt ol li {
		font-size: 1.7rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt ol li+li {
	margin-top: 1.5em;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt ol li span {
	font-weight: 900;
	color: #0DB7D6;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .col {
	display: flex;
	margin-top: 2.3rem;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .col figure {
	width: 50%;
	text-align: center;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .col figure img {
	width: 6.7rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .col figure img {
		width: 8.5rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .col figure figcaption {
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.5;
	margin-top: 0.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .point .txt .col figure figcaption {
		font-size: 1.5rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform {
	display: flex;
	align-items: center;
	gap: 0 2.5rem;
	margin-top: 4.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform {
		gap: 0 3.2rem;
		margin-top: 6rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .img {
	width: 22.9rem;
	border-radius: 1.6rem;
	overflow: hidden;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .img {
		width: 29.1rem;
		border-radius: 2rem;
		margin-left: 2rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .txt {
	flex: 1;
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .txt .ttl_s {
	font-weight: 900;
	font-size: 1.7rem;
	line-height: 1.1764705882;
	margin: 0;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .txt .ttl_s {
		font-size: 2.1rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .txt p {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6428571429;
	margin-top: 1em;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .urethaneform .txt p {
		font-size: 1.78rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .measurement {
	margin-top: 3rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .measurement {
		margin-top: 4rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .measurement .txt {
	font-weight: 500;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .measurement .txt {
		font-size: 2rem;
	}
}

#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .measurement .img {
	width: 100%;
	margin-top: 1.2rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .about_cnt .img_wrap .merit._02 .measurement .img {
		margin-top: 2rem;
	}
}

#sec_about .about_block03 .about_cnt .illust {
	width: 38.6rem;
	right: calc(50% - 44rem);
	top: 28rem;
}

#sec_about .about_block03 .illust {
	width: 21.7rem;
	top: -15rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block03 .illust {
		top: 4rem;
		right: 10rem;
	}
}

@media screen and (min-width: 768px) {
	#sec_about .about_block04 .about_cnt .img_wrap {
		width: 61.25rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block04 .about_cnt .img_wrap {
		margin-top: 14rem;
	}
}

#sec_about .about_block04 .about_cnt .img_wrap .img._01 {
	width: 60.75rem;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block04 .about_cnt .img_wrap .img._01 {
		width: 100%;
	}
}

#sec_about .about_block04 .about_cnt .img_wrap .simulation {
	margin-top: 8rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block04 .about_cnt .img_wrap .simulation {
		margin-top: 9.6rem;
	}
}

#sec_about .about_block04 .about_cnt .img_wrap .simulation .ttl {
	text-align: center;
	font-weight: 700;
	font-size: 2.6rem;
	line-height: 1.5;
	padding: 0.5rem 1rem;
	background-color: #EFEC64;
	border-radius: 1.1rem;
	margin-bottom: 3.7rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block04 .about_cnt .img_wrap .simulation .ttl {
		font-size: 3.1rem;
		margin-top: 4.4rem;
		border-radius: 1.2rem;
	}
}

#sec_about .about_block04 .about_cnt .img_wrap .simulation .img+.img {
	margin-top: 2.6rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block04 .about_cnt .img_wrap .simulation .img+.img {
		margin-top: 4.5rem;
	}
}

#sec_about .about_block04 .about_cnt .illust {
	width: 38.6rem;
	right: calc(50% - 44rem);
	top: 28rem;
}

#sec_about .about_block04 .illust {
	width: 25.1rem;
	top: -14rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block04 .illust {
		width: 25rem;
		right: 9rem;
		top: 3rem;
	}
}

@media screen and (min-width: 768px) {
	#sec_about .about_block05 .about_cnt .img_wrap {
		width: 60rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap {
		margin-top: 10rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .img {
	width: 59.3rem;
	margin: 0 auto;
}

#sec_about .about_block05 .about_cnt .img_wrap .ttl {
	text-align: center;
	color: #D8BEBD;
	font-weight: 900;
	font-size: 2.8rem;
	line-height: 1.3214285714;
	margin-bottom: 3.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .ttl {
		font-size: 3.4rem;
		margin-bottom: 4.5rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb {
	width: 100%;
	border-spacing: 0;
	border: 1px solid #DDDDDD;
	border-radius: 1.3rem;
	overflow: hidden;
	margin-top: 4.2rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb {
		margin-top: 5rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb thead th {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.5;
	padding: 2.5rem 1.5rem 1rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb thead th {
		font-size: 1.7rem;
		padding: 2.5rem 1.3rem 1.5rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb thead th:nth-child(1) {
	width: 14.7rem;
	background-color: rgba(13, 183, 214, 0.2);
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb thead th:nth-child(1) {
		width: 18rem;
		padding-left: 2.2rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb thead th:nth-child(2) {
	width: 27.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb thead th:nth-child(2) {
		width: 33.4rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb thead th:not(:first-child) {
	border-left: 1px dotted #DDDDDD;
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody th,
#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td {
	vertical-align: top;
	border-top: 1px dotted #DDDDDD;
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody th {
	font-weight: 500;
	font-size: 1.7rem;
	line-height: 1.1176470588;
	padding: 1rem 1rem 1rem 1.5rem;
	background-color: rgba(13, 183, 214, 0.2);
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb tbody th {
		font-size: 2rem;
		padding: 1.2rem 1rem 1.2rem 2.2rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td {
	font-weight: 900;
	font-size: 1.6rem;
	line-height: 1.0625;
	padding: 1rem 1rem 1rem 1.5rem;
	border-left: 1px dotted #DDDDDD;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td {
		font-size: 1.9rem;
		padding: 1.2rem 1rem 1.2rem 1.3rem;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td .txt_s {
	display: block;
	color: #000000;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.3571428571;
	margin-top: 0.5em;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td .txt_s {
		font-size: 1.68rem;
		margin-top: 0.8em;
	}
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td .txt_s.mt15 {
	margin-top: 1.5rem;
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td .txt_s.mt0 {
	margin: 0;
}

#sec_about .about_block05 .about_cnt .img_wrap .tb tbody td:last-child {
	color: #0DB7D6;
	font-size: 1.7rem;
}

#sec_about .about_block05 .illust {
	width: 27.4rem;
	top: -14rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block05 .illust {
		width: 27.4rem;
		top: 8rem;
	}
}

#sec_about .about_block06 .about_cnt .img_wrap {
	margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
	#sec_about .about_block06 .about_cnt .img_wrap {
		width: 54.4rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block06 .about_cnt .img_wrap {
		margin-top: 13rem;
	}
}

#sec_about .about_block06 .about_cnt .img_wrap .tb {
	width: 100%;
	border-spacing: 0;
	border-top: 1px dashed #666666;
	margin-top: 7rem;
}

#sec_about .about_block06 .about_cnt .img_wrap .tb th,
#sec_about .about_block06 .about_cnt .img_wrap .tb td {
	width: 19.5rem;
	text-align: center;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.4;
	padding: 1.2rem 0.5rem;
	border-bottom: 1px dashed #666666;
}

@media screen and (max-width: 767px) {

	#sec_about .about_block06 .about_cnt .img_wrap .tb th,
	#sec_about .about_block06 .about_cnt .img_wrap .tb td {
		width: 26rem;
		font-size: 1.9rem;
		padding: 1.7rem 0.5rem;
	}
}

#sec_about .about_block06 .about_cnt .img_wrap .tb th:last-child,
#sec_about .about_block06 .about_cnt .img_wrap .tb td:last-child {
	width: 15.4rem;
	color: #0DB7D6;
}

@media screen and (max-width: 767px) {

	#sec_about .about_block06 .about_cnt .img_wrap .tb th:last-child,
	#sec_about .about_block06 .about_cnt .img_wrap .tb td:last-child {
		width: 20rem;
	}
}

#sec_about .about_block06 .about_cnt .img_wrap .tb th {
	height: 7rem;
	vertical-align: middle;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block06 .about_cnt .img_wrap .tb th {
		height: 8.7rem;
	}
}

#sec_about .about_block06 .about_cnt .img_wrap .tb td {
	vertical-align: top;
}

#sec_about .about_block06 .about_cnt .img_wrap .tb td .num {
	font-size: 3.9rem;
	line-height: 1;
	margin-right: 0.5rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block06 .about_cnt .img_wrap .tb td .num {
		font-size: 4.9rem;
	}
}

#sec_about .about_block06 .about_cnt .img_wrap .tb tr:nth-child(2) td:last-child {
	font-weight: 900;
}

#sec_about .about_block06 .about_cnt .img_wrap .tb tr:nth-child(2) td:last-child .num {
	font-size: 4.4rem;
}

#sec_about .about_block06 .about_cnt .img_wrap .tb tr:last-child td {
	padding: 2.5rem 0.5rem;
}

#sec_about .about_block06 .illust {
	width: 27.4rem;
	top: -13rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block06 .illust {
		width: 28.8rem;
		top: 7rem;
	}
}

#sec_about .about_block07 .about_cnt .img_wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

@media screen and (min-width: 768px) {
	#sec_about .about_block07 .about_cnt .img_wrap {
		width: 63.8rem;
	}
}

@media screen and (max-width: 767px) {
	#sec_about .about_block07 .about_cnt .img_wrap {
		align-items: center;
		margin-top: 9rem;
	}
}

#sec_about .about_block07 .about_cnt .img_wrap .img {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3.6rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block07 .about_cnt .img_wrap .img {
		gap: 4.2rem;
	}
}

#sec_about .about_block07 .about_cnt .img_wrap .img._l {
	width: 18.9rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block07 .about_cnt .img_wrap .img._l {
		width: 21.4rem;
	}
}

#sec_about .about_block07 .about_cnt .img_wrap .img._r {
	width: 41rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block07 .about_cnt .img_wrap .img._r {
		width: 46.4rem;
	}
}

#sec_about .about_block07 .about_cnt .illust {
	width: 38.6rem;
	right: calc(50% - 44rem);
	top: 28rem;
}

#sec_about .about_block07 .illust {
	width: 24.1rem;
	right: calc(50% - 59rem);
	top: -14rem;
}

@media screen and (max-width: 767px) {
	#sec_about .about_block07 .illust {
		right: 8rem;
		top: 2rem;
	}
}