@charset "utf-8";

@media screen and (max-width: 768px){
	.main-top-bg{
		width: 59vw;
        position: absolute;
        z-index: 30;
        top: 81vw;
        right: 0;
        mix-blend-mode: screen;
        pointer-events: none;
	}
	.slogan{
		width: 100%;
		background-color: #000;
		padding: 0;
		position: relative;
		text-align: center;
		z-index: 20;
	}
	.slogan .inner-content{
		width: 100%;
		text-align: center;
		position: relative;
	}
	.slogan .inner-content h2{
		width: 100%;
		position: absolute;
		margin: 0;
		bottom: 10vw;
		left: 0;
		z-index: 20;
	}
	.slogan .inner-content img{
		width: 100%;
		vertical-align: bottom;
	}
	.slogan .inner-content .slide-wrap{
		width: 100%;
		overflow: hidden;
		z-index: 10;
	}
	.slogan .inner-content .slide-wrap ul{
		width: 100%;
	}
	.slogan .inner-content .slide-wrap ul li{
		width: 100%;
		vertical-align: top;
	}
	.slogan .inner-content .slide-wrap ul li img{
		width: 100%;
	}
	.slogan .inner-content .slide-wrap ul li img.only-pc{
		display: none!important;
	}
	.slogan .inner-content .slide-wrap ul li img.only-sp{
		display: block!important;
	}
	.slogan .inner-content .slick-dots{
		width: 100%;
		height: 10px;
		position: absolute;
		bottom: 2vw;
		left: 50%;
		font-size: 0;
		transform: translateX(-50%);
		text-align: center;
		z-index: 30;
	}
	.slogan .inner-content .slick-dots li{
		display: inline-block;
		width: 10px;
		height: 10px;
		margin: 0 8px;
	}
	.slogan .inner-content .slick-dots li button{
		display: block;
		width: 100%;
		height: 100%;
		background-color: #fff;
		border-radius: 100%;
		text-indent: -9999px;
	}
	.slogan .inner-content .slick-dots li.slick-active button{
		background-color: #ececec;
	}
	.slogan .scrolldown{
		display: inline-block;
		margin: 4vw 0 6vw 0;
		font-size: 14px;
		color: #fff;
	}
	.slogan .scrolldown::after{
		content: " ";
		display: inline-block;
        width: 16px;
        height: 16px;
		transform-origin: 50% 50%;
		transform: rotate(90deg);
		background: url(/common/img/ar_w.png) no-repeat center center;
		background-size: 100% auto;
		position: relative;
		top: 3px;
		margin: 0 0 0 10px;
	}
	.wrap-about{
		width: 100%;
		padding: 0 7vw 0 7vw;
        margin: 10vw 0 13vw 0;
		position: relative;
		z-index: 40;
	}
	.wrap-about .inner-content{
		width: 100%;
		display: block;
	}
	.wrap-about .inner-content .left{
		width: 100%;
		padding: 0;
		text-align: center;
	}
	.wrap-about .inner-content .left h2{
		font-size: 5.8vw;
		line-height: 1.4em;
		margin: 0 0 6vw 0;
		text-align: left;
		color: #fff;
	}
	.wrap-about .inner-content .left p{
		font-size: 3.4vw;
		line-height: 1.9em;
		margin: 4vw 0 0 0;
		text-align: left;
		color: #fff;
	}
	.wrap-about .inner-content .left a{
		width: 70%;
		display: inline-block;
		text-align: left;
		font-size: 4.4vw;
		color: #fff;
		padding: 10px 8vw 10px 3vw;
		border-radius: 5px;
		border: solid 1px #d2d2d2;
		margin: 4vw auto 0 auto;
		position: relative;
		transition: background-color 0.2s, border 0.2s;
	}
	.wrap-about .inner-content .left a::after{
		content: " ";
		display: block;
		width: 3.2vw;
		height: 3.6vw;
		position: absolute;
		top: 50%;
		right: 4vw;
		transform: translateY(-50%);
		background: url(/common/img/ar_w.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-about .inner-content .left a:hover{
		color: #000;
		border: solid 1px #ececec;
		background-color: #ececec;
	}
	.wrap-about .inner-content .frame{
		width: 100%;
		border-radius: 20px;
		overflow: hidden;
		position: relative;
	}
	.wrap-about .inner-content .frame img{
		width: 100%;
		vertical-align: bottom;
		position: relative;
		z-index: 10;
	}
	.wrap-features{
        width: 100%;
        padding: 0 0 0 0;
        margin: 0 0 0 0;
        position: relative;
        background-color: #000;
        z-index: 40;
	}
	.wrap-features .inner-content{
		width: 100%;
	}
	.wrap-features .inner-content .paragraph{
		width: 100%;
		position: relative;
	}
	.wrap-features .inner-content .paragraph .frame{
		width: 100%;
	}
	.wrap-features .inner-content .paragraph .frame img{
		width: 100%;
		position: relative;
		vertical-align: bottom;
	}
	.wrap-features .inner-content .paragraph .textblock{
		width: 100%;
		padding: 7vw 7vw 9vw 7vw;
	}
	.wrap-features .inner-content .paragraph .textblock h2{
		font-size: 5vw;
        line-height: 1.2em;
        color: #fff;
		margin: 0 0 5vw 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul{
		width: 100%;
		display: block;
		margin: 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li{
		width: 100%;
		margin: 5vw 0 0 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li:first-of-type{
		margin: 0 0 0 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li h3{
		font-size: 4.0vw;
        line-height: 1.2em;
        color: #fff;
	}
	.wrap-features .inner-content .paragraph .textblock ul li p{
		width: 100%;
		font-size: 3.4vw;
		margin: 0.4vw 0 0 0;
		line-height: 1.6em;
		color: #fff;
	}
	.wrap-features .inner-content .paragraph .textblock img.paragraph1-img2{
		display: none;
	}
	.wrap-features > img.paragraph1-img1{
		display: none;
	}
	.wrap-features .inner-content .paragraph3 img.paragraph1-img3{
		display: none;
	}
	.wrap-works{
		width: 100%;
		padding: 8vw 7vw 8vw 7vw;
        margin: 0;
		position: relative;
		background-color: #dcdce6;
		z-index: 40;
	}
	.wrap-works .inner-content{
		width: 100%;
	}
	.wrap-works .inner-content .slide-wrap{
		width: 100%;
		position: relative;
	}
	.wrap-works .inner-content .slide-wrap h2{
		font-size: 4vw;
		padding: 0;
		z-index: 20;
	}
	.wrap-works .inner-content .slide-wrap h2 span{
		display: block;
		font-size: 9vw;
		margin: 0 0 1.6vw 0;
		line-height: 1.0em;
	}
	.wrap-works .inner-content .slide-wrap ul{
		width: 100%;
		position: relative;
		z-index: 10;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-prev{
		width: 10vw;
		height: 10vw;
		border: solid 1px #000;
		position: absolute;
		top: 9vw;
    	left: 0;
		background: url(/common/img/ar_rev_w.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #000;
		padding: 1vw;
		text-indent: -9999px;
		border-radius: 100px;
		z-index: 20;
		transition: background-color 0.2s, border 0.2s;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-prev:hover{
		border: solid 1px #fff;
		background: url(/common/img/ar_rev.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #fff;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-next{
		width: 10vw;
		height: 10vw;
		border: solid 1px #000;
		position: absolute;
		top: 9vw;
    	right: 0;
		background: url(/common/img/ar_w.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #000;
		padding: 1vw;
		text-indent: -9999px;
		border-radius: 100px;
		z-index: 20;
		transition: background-color 0.2s, border 0.2s;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-next:hover{
		border: solid 1px #fff;
		background: url(/common/img/ar.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #fff;
	}
	.wrap-works .inner-content .slide-wrap ul li{
		width: 100%;
		display: block;
	}
	.wrap-works .inner-content .slide-wrap ul li h3{
		font-size: 8vw;
		line-height: 1.2em;
		text-align: center;
		margin: 9vw 0 4vw 0;
	}
	.wrap-works .inner-content .slide-wrap ul li h4{
		font-size: 5.6vw;
		line-height: 1.5em;
		margin: 1.0vw 0 0 0;
		text-align: center;
	}
	.wrap-works .inner-content .slide-wrap ul li p{
		text-align: center;
		font-size: 3.6vw;
		margin: 5vw 0 0 0;
	}
	.wrap-works .inner-content .left{
		width: 100%;
		padding: 0;
	}
	.wrap-works .inner-content .right{
		width: 90%;
		margin: 20px auto 0 auto;
	}
	.wrap-works .inner-content .frame{
		width: 100%;
		border-radius: 20px;
		overflow: hidden;
		position: relative;
	}
	.wrap-works .inner-content .frame::after{
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		background-color: #000;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		z-index: 15;
		transition: opacity 0.2s;
	}
	.wrap-works .inner-content a:hover .frame::after{
		opacity: 0.4;
	}
	.wrap-works .inner-content .frame img{
		width: 100%;
		vertical-align: bottom;
		position: relative;
		z-index: 10;
	}
	.wrap-works .inner-content .frame .info{
		width: 90%;
		position: absolute;
		bottom: 10px;
		left: 50%;
		padding: 6vw 0 1vw 4vw;
		transform: translateX(-50%);
		background-color: #fff;
		border-radius: 10px;
		z-index: 20;
		transition: background-color 0.2s;
	}
	.wrap-works .inner-content .frame .info span{
		display: block;
		text-align: left;
		font-size: 3.6vw;
		position: relative;
		color: #000;
	}
	.wrap-works .inner-content .frame .info span::after{
		content: " ";
		display: block;
		width: 3.2vw;
		height: 3.6vw;
        position: absolute;
		right: 4vw;
		top: 50%;
    	transform: translateY(-50%);
		background: url(/common/img/ar.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-works .inner-content a:hover .frame .info{
		background-color: #ececec;
	}
	.wrap-recruit{
		width: 100%;
		background-color: #000;
		padding: 6vw 7vw 4vw 7vw;
        margin: 0;
		position: relative;
	}
	.wrap-recruit .inner-content{
		width: 100%;
		text-align: center;
	}
	.wrap-recruit .inner-content h4{
		font-size: 5vw;
		line-height: 1.4em;
		transition: color 0.2s;
	}
	.wrap-recruit .inner-content .frame{
		display: block;
		width: 100%;
		margin: 4vw 0 0 0;
		border-radius: 20px;
		overflow: hidden;
		position: relative;
	}
	.wrap-recruit .inner-content .frame img{
		width: 100%;
		vertical-align: bottom;
		position: relative;
		z-index: 10;
	}
	.wrap-works .inner-content .frame img.only-pc{
		display: none!important;
	}
	.wrap-works .inner-content .frame img.only-sp{
		display: block!important;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav{
		display: flex;
		width: 100%;
		text-align: center;
		margin: 1vw 0 0 0;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.min{
		display: flex;
		font-size: 4vw;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides{
		display: flex!important;
		width: 100%;
		margin: 0 4vw 0 4vw;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides .slick-dots{
		display: flex!important;
		align-items:center;
		width: 100%;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides .slick-dots li{
		display: inline-block;
		width: 100%;
		height: 1px;
		background-color: #d2d2d2;
		vertical-align: middle;
		text-indent: -9999px;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides .slick-dots li.slick-active{
		display: inline-block;
		width: 100%;
		height: 5px;
		background-color: #000;
		text-indent: -9999px;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.max{
		display: flex;
		font-size: 4vw;
	}
	.wrap-recruit .inner-content .frame::after{
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		background-color: #000;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		z-index: 15;
		transition: opacity 0.2s;
	}
	.wrap-recruit .inner-content .frame:hover::after{
		opacity: 0.4;
	}
	.wrap-recruit .inner-content .frame h2{
		display: inline-block;
		text-align: left;
		font-size: 4.6vw;
		margin: 0;
		line-height: 1.5em;
		position: absolute;
		top: 4vw;
		left: 4vw;
		color: #fff;
		z-index: 20;
	}
	.wrap-recruit .inner-content .frame h2 span{
		display: block;
		font-size: 9vw;
		line-height: 1.0em;
		position: relative;
		left: -0.1vw;
		color: #fff;
		margin: 1vw 0 0 0;
	}
	.wrap-recruit .inner-content .frame .info{
		width: 90%;
		position: absolute;
		bottom: 4vw;
		left: 50%;
		background-color: #fff;
		border-radius: 10px;
		padding: 6vw 0 1vw 4vw;
		z-index: 20;
		transition: background-color 0.2s;
		transform: translateX(-50%);
	}
	.wrap-recruit .inner-content .frame .info h3{
		display: block;
		text-align: left;
		font-size: 3vw;
		margin: 0 0 1vw 0;
		position: relative;
		color: #000;
	}
	.wrap-recruit .inner-content .frame .info span{
		display: block;
		text-align: left;
		font-size: 3.6vw;
		position: relative;
		color: #000;
	}
	.wrap-recruit .inner-content .frame .info span::after{
		content: " ";
		display: block;
		width: 3.2vw;
		height: 3.6vw;
        position: absolute;
		right: 4vw;
		top: 50%;
    	transform: translateY(-50%);
		background: url(/common/img/link.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-recruit .inner-content .frame:hover .info{
		background-color: #ececec;
	}
}

@media screen and (min-width: 769px){
	.main-top-bg{
		max-width: 670px;
		width: 40%;
		position: absolute;
		z-index: 39;
		top: 18vw;
		right: 0;
		mix-blend-mode: screen;
		pointer-events: none;
	}
	.slogan{
		width: 100%;
		background-color: #000;
		padding: 0 3vw 4vw 3vw;
		position: relative;
		text-align: center;
		z-index: 20;
	}
	.slogan .inner-content{
		width: 100%;
		text-align: center;
		position: relative;
		border-radius: 20px;
		overflow: hidden;
	}
	.slogan .inner-content h2{
		width: 100%;
		position: relative;
		z-index: 20;
	}
	.slogan .inner-content h2 img{
		width: 100%;
		vertical-align: bottom;
	}
	.slogan .inner-content .slide-wrap{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
	}
	.slogan .inner-content .slide-wrap ul{
		width: 100%;
		position: relative;
	}
	.slogan .inner-content .slide-wrap ul li{
		width: 100%;
	}
	.slogan .inner-content .slide-wrap ul li img{
		width: 100%;
	}
	.slogan .inner-content .slide-wrap ul li img.only-pc{
		display: block!important;
	}
	.slogan .inner-content .slide-wrap ul li img.only-sp{
		display: none!important;
	}
	.slogan .inner-content .slick-dots{
		width: 100%;
		height: 10px;
		position: absolute;
		bottom: 1vw;
		left: 50%;
		font-size: 0;
		transform: translateX(-50%);
		text-align: center;
		z-index: 30;
	}
	.slogan .inner-content .slick-dots li{
		display: inline-block;
		width: 10px;
		height: 10px;
		margin: 0 8px;
	}
	.slogan .inner-content .slick-dots li button{
		display: block;
		width: 100%;
		height: 100%;
		background-color: #fff;
		border-radius: 100%;
		text-indent: -9999px;
	}
	.slogan .inner-content .slick-dots li.slick-active button{
		background-color: #ececec;
	}
	.slogan .scrolldown{
		display: inline-block;
		margin: 20px 0 0 0;
		font-size: 16px;
		color: #fff;
	}
	.slogan .scrolldown::after{
		content: " ";
		display: inline-block;
        width: 16px;
        height: 16px;
		transform-origin: 50% 50%;
		transform: rotate(90deg);
		background: url(/common/img/ar_w.png) no-repeat center center;
		background-size: 100% auto;
		position: relative;
		top: 3px;
		margin: 0 0 0 10px;
	}
	.wrap-about{
		width: 100%;
		padding: 3vw 7vw 4vw 7vw;
        margin: 0;
		position: relative;
		z-index: 40;
	}
	.wrap-about .inner-content{
		width: 100%;
		display: flex;
	}
	.wrap-about .inner-content .left{
		width: 100%;
		padding: 0 0 0 5vw;
	}
	.wrap-about .inner-content .left img{
		width: 36%;
		float: right;
		margin: 0 0 3vw 4vw;
		border-radius: 20px;
	}
	.wrap-about .inner-content .left h2{
		font-size: 3vw;
		line-height: 1.3em;
		color: #fff;
	}
	.wrap-about .inner-content .left p{
		width: 58%;
		font-size: max(1vw, 14px);
		margin: 2vw 0 0 0;
		line-height: 1.9em;
		color: #fff;
	}
	.wrap-about .inner-content .left a{
		display: inline-block;
		text-align: left;
		font-size: max(1.2vw, 16px);
		padding: 10px 8vw 10px 1vw;
		border-radius: 5px;
		color: #fff;
		border: solid 1px #d2d2d2;
		margin: 3vw 0 0 0;
		position: relative;
		transition: background-color 0.2s, border 0.2s;
	}
	.wrap-about .inner-content .left a::after{
		content: " ";
		display: block;
		width: 1.2vw;
		height: 1.4vw;
        position: absolute;
		top: 50%;
		right: 1vw;
		transform: translateY(-50%);
		background: url(/common/img/ar_w.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-about .inner-content .left a:hover{
		color: #000;
		border: solid 1px #ececec;
		background-color: #ececec;
	}
	.wrap-about .inner-content .left a:hover::after{
		background: url(/common/img/ar.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-features{
        width: 100%;
        padding: 0 0 0 7vw;
        margin: 0 0 0 0;
        position: relative;
        background-color: #000;
        z-index: 40;
        text-align: right;
	}
	.wrap-features .inner-content{
		width: 100%;
		display: block;
        position: relative;
		text-align: left;
	}
	.wrap-features .inner-content-top{
		width: 100%;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		text-align: left;
		padding: 4vw 0 0 12vw;
	}
	.wrap-features .inner-content-up{
		z-index: 38;
	}
	.wrap-features .inner-content-down{
		z-index: 35;
	}
	.wrap-features .inner-content .paragraph{
		width: 100%;
		position: relative;
	}
	.wrap-features .inner-content .paragraph1{
		padding: 5vw 0 0 5vw;
	}
	.wrap-features .inner-content .paragraph2{
		padding: 5vw 0 0 0;
	}
	.wrap-features .inner-content .paragraph3{
		padding: 0 3vw 0 0;
		text-align: right;
	}
	.wrap-features .inner-content .paragraph1 .textblock{
		width: 37%;
		padding-left: max(2.8vw, 80px);
		position: absolute;
		top: 0;
		left: 0;
	}
	.wrap-features .inner-content .paragraph2 .textblock{
		width: 40%;
        display: inline-block;
        margin: 0px 0 0 57%;
		padding-left: max(2.8vw, 80px);
		position: relative;
		top: 0;
		left: 0;
	}
	.wrap-features .inner-content .paragraph .textblock h2{
		font-size: max(1.9vw, 40px);
        line-height: 1.2em;
        position: absolute;
        transform: rotate(90deg);
        color: #fff;
        transform-origin: left top;
		top: 0;
        left: max(1.9vw, 40px);
	}
	.wrap-features .inner-content .paragraph .textblock ul{
		width: 100%;
		display: block;
		margin: 0 0 4vw 0;
	}
	.wrap-features .inner-content .paragraph2 .textblock ul{
		width: 100%;
		display: block;
		margin: 0 0 6vw 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li{
		width: 100%;
		margin: 2vw 0 0 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li:first-of-type{
		margin: 0 0 0 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li h3{
		font-size: max(1.2vw, 16px);
        line-height: 1.2em;
        color: #fff;
	}
	.wrap-features .inner-content .paragraph .textblock ul li p{
		width: 100%;
		font-size: max(0.9vw, 12px);
		margin: 0.2vw 0 0 0;
		line-height: 1.6em;
		color: #fff;
	}
	.wrap-features .inner-content .paragraph .textblock img.paragraph1-img2{
		width: 137%;
	}
	.wrap-features > img.paragraph1-img1{
		display: inline-block;
        width: 55%;
		position: relative;
        z-index: 40;
	}
	.wrap-features .inner-content .paragraph3 img.paragraph1-img3{
		width: 64%;
		display: inline-block;
		position: relative;
		vertical-align: bottom;
	}
	.wrap-works{
		width: 100%;
		padding: 4vw 7vw 4vw 7vw;
        margin: 0 0 0 0;
		position: relative;
		background-color: #dcdce6;
		z-index: 40;
	}
	.wrap-works .inner-content{
		width: 100%;
	}
	.wrap-works .inner-content .slide-wrap{
		width: 100%;
		position: relative;
	}
	.wrap-works .inner-content .slide-wrap h2{
		width: 60%;
		font-size: 1.8vw;
		padding: 0 4vw 0 5vw;
		margin: 0.4vw 0 0 0;
		position: absolute;
		top: 1vw;
		left: 0;
		pointer-events: none;
		z-index: 20;
	}
	.wrap-works .inner-content .slide-wrap h2 span{
		display: block;
		font-size: 5vw;
		line-height: 1.0em;
		margin: 0 0 0.5vw 0;
	}
	.wrap-works .inner-content .slide-wrap ul{
		width: 100%;
		position: relative;
		z-index: 10;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-prev{
		width: 2.6vw;
		height: 2.6vw;
		border: solid 1px #000;
		position: absolute;
		top: 50%;
		left: -4vw;
		transform: translateY(-50%);
		background: url(/common/img/ar_rev_w.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #000;
		padding: 1vw;
		text-indent: -9999px;
		border-radius: 100px;
		transition: background-color 0.2s, border 0.2s;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-prev:hover{
		border: solid 1px #fff;
		background: url(/common/img/ar_rev.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #fff;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-next{
		width: 2.6vw;
		height: 2.6vw;
		border: solid 1px #000;
		position: absolute;
		top: 50%;
		right: -4vw;
		transform: translateY(-50%);
		background: url(/common/img/ar_w.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #000;
		padding: 1vw;
		text-indent: -9999px;
		border-radius: 100px;
		transition: background-color 0.2s, border 0.2s;
	}
	.wrap-works .inner-content .slide-wrap ul .slick-next:hover{
		border: solid 1px #fff;
		background: url(/common/img/ar.png) no-repeat center center;
		background-size: 40% auto;
		background-color: #fff;
	}
	.wrap-works .inner-content .slide-wrap ul li{
		width: 100%;
		display: inline-block;
		font-size: 0;
	}
	.wrap-works .inner-content .slide-wrap ul li h3{
		font-size: 2.4vw;
		line-height: 1.2em;
		margin: 0 0 1.4vw 0;
	}
	.wrap-works .inner-content .slide-wrap ul li h4{
		font-size: 3vw;
		line-height: 1.2em;
		margin: 0 0 2vw 0;
	}
	.wrap-works .inner-content .slide-wrap ul li p{
		font-size: 1.6vw;
		margin: 1.0vw 0 0 0;
		line-height: 1.9em;
	}
	.wrap-works .inner-content .left{
		display: inline-block;
		width: 60%;
		padding: 12vw 4vw 0 5vw;
		vertical-align: top;
	}
	.wrap-works .inner-content .right{
		display: inline-block;
		width: 40%;
		vertical-align: top;
		padding-right: 2px;
	}
	.wrap-works .inner-content .frame{
		width: 100%;
		border-radius: 20px;
		overflow: hidden;
		position: relative;
	}
	.wrap-works .inner-content .frame::after{
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		background-color: #000;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		z-index: 15;
		transition: opacity 0.2s;
	}
	.wrap-works .inner-content a:hover .frame::after{
		opacity: 0.4;
	}
	.wrap-works .inner-content .frame img{
		width: 100%;
		vertical-align: bottom;
		position: relative;
		z-index: 10;
	}
	.wrap-works .inner-content .frame img.only-pc{
		display: block!important;
	}
	.wrap-works .inner-content .frame img.only-sp{
		display: none!important;
	}
	.wrap-works .inner-content .frame .info{
		width: 90%;
		position: absolute;
		bottom: 1.5vw;
		left: 50%;
		padding: 2vw 0 0.5vw 1vw;
		transform: translateX(-50%);
		background-color: #fff;
		border-radius: 10px;
		z-index: 20;
		transition: background-color 0.2s;
	}
	.wrap-works .inner-content .frame .info span{
		display: block;
		text-align: left;
		font-size: 1.4vw;
		position: relative;
		color: #000;
	}
	.wrap-works .inner-content .frame .info span::after{
		content: " ";
		display: block;
		width: 1.2vw;
		height: 1.4vw;
        position: absolute;
		right: 1vw;
		top: 50%;
    	transform: translateY(-50%);
		background: url(/common/img/ar.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-works .inner-content a:hover .frame .info{
		background-color: #ececec;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav{
		width: 100%;
		text-align: center;
		margin: 1vw 0 0 0;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.min{
		display: inline-block;
		font-size: max(1vw, 14px);
		vertical-align: middle;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides{
		display: inline-block;
		vertical-align: middle;
		margin: 0 1vw 0 1vw;
		padding: 0 0 3px 0;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides .slick-dots{
		display: inline-block;
		vertical-align: middle;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides .slick-dots li{
		display: inline-block;
		width: 5vw;
		height: 1px;
		background-color: #d2d2d2;
		vertical-align: middle;
		text-indent: -9999px;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.slides .slick-dots li.slick-active{
		display: inline-block;
		width: 5vw;
		height: 5px;
		background-color: #000;
		vertical-align: middle;
		text-indent: -9999px;
	}
	.wrap-works .inner-content .slide-wrap .slide-nav span.max{
		display: inline-block;
		font-size: max(1vw, 14px);
		vertical-align: middle;
	}
	.wrap-recruit{
		width: 100%;
		background-color: #000;
		padding: 4vw 7vw 4vw 7vw;
        margin: 0;
		position: relative;
	}
	.wrap-recruit .inner-content{
		width: 100%;
		text-align: center;
	}
	.wrap-recruit .inner-content h4{
		font-size: 2.4vw;
		line-height: 1.4em;
		transition: color 0.2s;
	}
	.wrap-recruit .inner-content .frame{
		display: block;
		width: 100%;
		margin: 0;
		border-radius: 20px;
		overflow: hidden;
		position: relative;
	}
	.wrap-recruit .inner-content .frame img{
		width: 100%;
		vertical-align: bottom;
		position: relative;
		z-index: 10;
	}
	.wrap-recruit .inner-content .frame::after{
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		background-color: #000;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		z-index: 15;
		transition: opacity 0.2s;
	}
	.wrap-recruit .inner-content .frame:hover::after{
		opacity: 0.4;
	}
	.wrap-recruit .inner-content .frame h2{
		display: inline-block;
		text-align: left;
		font-size: 2.2vw;
		margin: 0;
		line-height: 1.5em;
		position: absolute;
		top: 1.5vw;
		left: 1.5vw;
		color: #fff;
		z-index: 20;
	}
	.wrap-recruit .inner-content .frame h2 span{
		display: block;
		font-size: 6vw;
		line-height: 1.0em;
		position: relative;
		left: -0.1vw;
		color: #fff;
	}
	.wrap-recruit .inner-content .frame .info{
		max-width: 590px;
		width: 40%;
		position: absolute;
		bottom: 1.5vw;
		right: 1.5vw;
		background-color: #fff;
		border-radius: 10px;
		padding: 2vw 0 0.5vw 1vw;
		z-index: 20;
		transition: background-color 0.2s;
	}
	.wrap-recruit .inner-content .frame .info h3{
		display: block;
		text-align: left;
		font-size: 1.2vw;
		margin: 0 0 1vw 0;
		line-height: 1.5em;
		position: relative;
		color: #000;
	}
	.wrap-recruit .inner-content .frame .info span{
		display: block;
		text-align: left;
		font-size: 1.4vw;
		position: relative;
		color: #000;
	}
	.wrap-recruit .inner-content .frame .info span::after{
		content: " ";
		display: block;
		width: 1.2vw;
		height: 1.4vw;
        position: absolute;
		right: 1vw;
		top: 50%;
    	transform: translateY(-50%);
		background: url(/common/img/link.png) no-repeat center center;
		background-size: 100% auto;
	}
	.wrap-recruit .inner-content .frame:hover .info{
		background-color: #ececec;
	}
}

@media screen and (min-width: 1501px){
	.wrap-features .inner-content-top{
		padding: 5vw 0 0 12vw;
	}
	.wrap-features .inner-content .paragraph1{
		padding: 6vw 0 0 5vw;
	}
	.wrap-features .inner-content .paragraph1 .textblock{
		width: 37%;
	}
	.wrap-features .inner-content .paragraph2 .textblock{
		width: 40%;
        margin: 0 0 0 57%;
	}
	.wrap-features .inner-content .paragraph .textblock ul{
		margin: 0 0 6vw 0;
	}
	.wrap-features .inner-content .paragraph .textblock ul li h3{
		font-size: max(1.2vw, 22px);
	}
	.wrap-features > img.paragraph1-img1{
		width: 57%;
	}
}