.sec_detail .detail_box figure {
	-webkit-clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
	clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1);
	-o-transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.ie .sec_detail .detail_box figure, .sec_detail .detail_box .ie figure {
	opacity: 0;
	-webkit-transition: opacity 1s cubic-bezier(0.645, 0.045, 0.355, 1);
	-o-transition: opacity 1s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: opacity 1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.ie .sec_detail .detail_box figure:before, .sec_detail .detail_box .ie figure:before {
	-webkit-transform-origin: center top;
	-ms-transform-origin: center top;
	transform-origin: center top;
	-webkit-transition: -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	-o-transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s, -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
}

.ie .sec_detail .detail_box figure:after, .sec_detail .detail_box .ie figure:after {
	-webkit-transform-origin: center top;
	-ms-transform-origin: center top;
	transform-origin: center top;
	-webkit-transition: -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	-o-transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s, -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
}

.ie .sec_detail .detail_box figure.active, .sec_detail .detail_box .ie figure.active {
	opacity: 1;
}

.ie .sec_detail .detail_box figure.active:before, .sec_detail .detail_box .ie figure.active:before {
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
}

.ie .sec_detail .detail_box figure.active:after, .sec_detail .detail_box .ie figure.active:after {
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
}

.sec_detail .detail_box figure:before {
	content: "";
	display: block;
	background-color: #FFF;
	opacity: 1;
	mix-blend-mode: saturation;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	-o-transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s, -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	z-index: 1;
}

.sec_detail .detail_box figure:after {
	content: "";
	display: block;
	background-color: #FFF;
	opacity: 0.3;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	-o-transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	transition: clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s, -webkit-clip-path 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0.3s;
	z-index: 1;
}

.sec_detail .detail_box figure.active {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.sec_detail .detail_box figure.active:before {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
}

.sec_detail .detail_box figure.active:after {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
	clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
}

.cmnLayout01 > .bg {
	background-position: center bottom !important;
}

@media screen and (max-width: 640px) {
	.cmnLayout01 > .bg {
		background-position: center center !important;
	}
}
.sec_detail {
	background-color: #f0f0f0;
	padding-top: 80px;
	padding-bottom: 110px;
}

@media screen and (max-width: 640px) {
	.sec_detail {
		padding-top: 150px;
		padding-bottom: 0;
	}
}
.sec_detail .mod_wrap03 {
	text-align: center;
	position: relative;
	z-index: 0;
}

.sec_detail .mod_wrap03.active:after, .sec_detail .mod_wrap03.active:before {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
}

.ie .sec_detail .mod_wrap03.active:after, .ie .sec_detail .mod_wrap03.active:before {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}

.sec_detail .mod_wrap03:after, .sec_detail .mod_wrap03:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	right: 0;
	top: 0;
	width: 100vw;
	min-width: 1084px;
	-webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	transition: -webkit-clip-path 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	-o-transition: clip-path 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	transition: clip-path 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	transition: clip-path 1.6s cubic-bezier(0, 0.405, 0.355, 1), -webkit-clip-path 1.6s cubic-bezier(0, 0.405, 0.355, 1);
}

.ie .sec_detail .mod_wrap03:after, .ie .sec_detail .mod_wrap03:before {
	-webkit-transform: scaleX(0);
	-ms-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
	-webkit-transition: -webkit-transform 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	transition: -webkit-transform 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	-o-transition: transform 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	transition: transform 1.6s cubic-bezier(0, 0.405, 0.355, 1);
	transition: transform 1.6s cubic-bezier(0, 0.405, 0.355, 1), -webkit-transform 1.6s cubic-bezier(0, 0.405, 0.355, 1);
}

@media screen and (max-width: 640px) {
	.sec_detail .mod_wrap03:after, .sec_detail .mod_wrap03:before {
		min-width: 0;
		right: auto;
		left: 0;
	}
}
.sec_detail .mod_wrap03:before {
	height: 48.7%;
	max-height: 300px;
	background-image: -webkit-gradient(linear, left top, right top, from(#009d95), to(#0da867));
	background-image: -webkit-linear-gradient(left, #009d95 0%, #0da867 100%);
	background-image: -o-linear-gradient(left, #009d95 0%, #0da867 100%);
	background-image: linear-gradient(to right, #009d95 0%, #0da867 100%);
	z-index: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail .mod_wrap03:before {
		top: -120px;
		height: 180px;
		width: calc(100vw - 40px);
		background-image: -webkit-gradient(linear, right top, left top, from(#009d95), to(#0da867));
		background-image: -webkit-linear-gradient(right, #009d95 0%, #0da867 100%);
		background-image: -o-linear-gradient(right, #009d95 0%, #0da867 100%);
		background-image: linear-gradient(to left, #009d95 0%, #0da867 100%);
	}
}
.sec_detail .mod_wrap03:after {
	bottom: 0;
	background-color: #fff;
}

.sec_detail .detail_box {
	text-align: left;
	position: relative;
	padding-left: 464px;
	padding-top: 60px;
	padding-bottom: 60px;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box {
		padding: 0;
		padding-bottom: 28px;
	}
}
.sec_detail .detail_box.active .ico {
	opacity: 1;
}

.sec_detail .detail_box figure {
	position: relative;
	right: -96px;
	max-width: 740px;
	width: 100%;
	max-height: 494px;
	padding-top: 66.7%;
	border-radius: 5px;
	background-size: 100% auto;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box figure {
		width: calc(100vw - 50px);
		right: 0;
		padding-top: 57.7%;
		background-position: right bottom;
	}
}
.sec_detail .detail_box header {
	position: absolute;
	left: 0;
	top: 50%;
	display: block;
	text-align: center;
	max-width: 562px;
	width: 100%;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box header {
		text-align: left;
	}
}
.sec_detail .detail_box header .ico {
	fill: #fff;
	position: relative;
	top: -15px;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	opacity: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box header .ico {
		top: 0;
	}
}
.sec_detail .detail_box header .cat_tit .line01 {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.12em;
	color: #fff;
	font-family: "source-han-sans-japanese", sans-serif;
	font-weight: 500;
	-webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	-o-transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1), -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box header .cat_tit .line01 {
		font-size: 1.5rem;
	}
}
.sec_detail .detail_box header .cat_tit .line01.active {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
}

.sec_detail .detail_box header .cat_tit .line02 {
	display: inline-block;
	margin-top: 5px;
	font-family: "proxima-nova", sans-serif;
	font-weight: 600;
	font-size: 1.3rem;
	letter-spacing: 0.12em;
	color: #fff;
	-webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	-o-transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1), -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box header .cat_tit .line02 {
		font-size: 1.2rem;
		letter-spacing: 0.1em;
	}
}
.sec_detail .detail_box header .cat_tit .line02.active {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
}

.sec_detail .detail_box .txt_box {
	position: absolute;
	left: 0;
	top: 50%;
	max-width: 562px;
	width: 100%;
	text-align: center;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box .txt_box {
		position: static;
	}
}
.sec_detail .detail_box .txt_box .txt {
	display: block;
	max-width: 340px;
	width: 100%;
	margin: 30px auto 0;
	text-align: left;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 1.78;
	-webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
	-webkit-transition: -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	-o-transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
	transition: clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1), -webkit-clip-path 0.8s cubic-bezier(0, 0.18, 0.355, 1);
}

.sec_detail .detail_box .txt_box .txt.active {
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box .txt_box .txt {
		margin: 20px auto 0;
		max-width: 100%;
		font-size: 1.2rem;
		line-height: 1.58;
	}
}
.sec_detail .detail_box .txt_box a {
	line-height: 1;
	margin: 25px auto 0;
	padding-top: 15px;
	min-height: 56px;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	transition: 0.8s;
	opacity: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail .detail_box .txt_box a {
		min-height: 0;
		padding: 6px 10px 6px 20px;
	}
}
.sec_detail .detail_box .txt_box a.active {
	opacity: 1;
}

.sec_detail.lens header {
	margin-top: -180px;
}

@media screen and (max-width: 640px) {
	.sec_detail.lens header {
		margin-top: 0;
		top: -100px;
	}
}
.sec_detail.lens .ico {
	width: 104px;
	height: 84px;
}

@media screen and (max-width: 640px) {
	.sec_detail.lens .ico {
		width: 52px;
		height: 42px;
	}
}
@media screen and (max-width: 640px) {
	.sec_detail.spa {
		padding-bottom: 30px;
	}
}
.sec_detail.spa header {
	margin-top: -170px;
}

@media screen and (max-width: 640px) {
	.sec_detail.spa header {
		margin-top: 0;
		top: -100px;
	}
}
.sec_detail.spa .ico {
	width: 90px;
	height: 74px;
}

@media screen and (max-width: 640px) {
	.sec_detail.spa .ico {
		width: 45px;
		height: 37px;
	}
}
.sec_detail.health {
	padding-top: 0;
	padding-bottom: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail.health {
		padding-top: 150px;
	}
}
.sec_detail.health header {
	margin-top: -176px;
}

@media screen and (max-width: 640px) {
	.sec_detail.health header {
		margin-top: 0;
		top: -100px;
	}
}
.sec_detail.health .ico {
	width: 96px;
	height: 80px;
}

@media screen and (max-width: 640px) {
	.sec_detail.health .ico {
		width: 48px;
		height: 40px;
	}
}
.sec_detail.agency {
	padding-top: 0;
	padding-bottom: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail.agency {
		padding-top: 150px;
	}
}
.sec_detail.agency header {
	margin-top: -176px;
}

@media screen and (max-width: 640px) {
	.sec_detail.agency header {
		margin-top: 0;
		top: -100px;
	}
}
.sec_detail.agency .ico {
	width: 72px;
	height: 54px;
	top: -20px !important;
}

@media screen and (max-width: 640px) {
	.sec_detail.agency .ico {
		top: 0 !important;
		width: 40px;
		height: 30px;
	}
}
.sec_detail.agency .mod_btn01 {
	display: none;
}

.sec_detail:nth-child(odd) .mod_wrap03:after, .sec_detail:nth-child(odd) .mod_wrap03:before {
	right: auto;
	left: auto;
	-webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
	clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}

.ie .sec_detail:nth-child(odd) .mod_wrap03:after, .ie .sec_detail:nth-child(odd) .mod_wrap03:before {
	-webkit-transform-origin: right center;
	-ms-transform-origin: right center;
	transform-origin: right center;
}

.sec_detail:nth-child(odd) .mod_wrap03:before {
	background-image: -webkit-gradient(linear, right top, left top, from(#009d95), to(#0da867));
	background-image: -webkit-linear-gradient(right, #009d95 0%, #0da867 100%);
	background-image: -o-linear-gradient(right, #009d95 0%, #0da867 100%);
	background-image: linear-gradient(to left, #009d95 0%, #0da867 100%);
	left: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail:nth-child(odd) .mod_wrap03:before {
		left: auto;
		right: 0;
	}
}
.sec_detail:nth-child(odd) .mod_wrap03:after {
	left: 0;
	top: 60px;
}

.sec_detail:nth-child(odd) .mod_wrap03 .cat_tit .line01 {
	-webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
	clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}

.sec_detail:nth-child(odd) .mod_wrap03 .cat_tit .line02 {
	-webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
	clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}

.sec_detail:nth-child(odd) .detail_box {
	padding-left: 0;
	padding-right: 464px;
}

@media screen and (max-width: 640px) {
	.sec_detail:nth-child(odd) .detail_box {
		padding-right: 0;
	}
}
.sec_detail:nth-child(odd) .detail_box figure {
	right: auto;
	left: -96px;
}

@media screen and (max-width: 640px) {
	.sec_detail:nth-child(odd) .detail_box figure {
		left: -10px;
	}
}
.sec_detail:nth-child(odd) .detail_box header {
	left: auto;
	right: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail:nth-child(odd) .detail_box header {
		text-align: right;
	}
}
.sec_detail:nth-child(odd) .detail_box .txt_box {
	left: auto;
	right: 0;
}

@media screen and (max-width: 640px) {
	.sec_detail:nth-child(odd) .detail_box .txt_box {
		right: auto;
	}
}
.sec_detail:nth-child(odd) .detail_box .txt_box .txt {
	-webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
	clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}
