@charset "utf-8";

#wrap {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

#header {
	position: relative;
}
#header:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	background: #0c0b0d;
}
#header:after {
	content: '';
	display: block;
	clear: both;
}
#header .line {
	text-align: right;
	font-size: 0;
	padding-right: 20px;
}
#header .line span {
	color: #fff;
	display: inline-block;
	vertical-align: middle;
	font-size: 18px;
	line-height: 50px;
	font-weight: 300;
	text-transform: uppercase;
	margin-left: 30px;
}
#header .top-area {
	height: 80px;
}

#header .logo {
	float: left;
}
#header .logo img {
	margin: 13px 0;
	width: 140px;
}
#header .top-menu {
	float: right;
}
#header .top-menu > ul > li {
	position: relative;
	float: left;
}
#header .top-menu > ul > li > a {
	display: block;
	font-size: 20px;
	font-weight: 300;
	color: #1d1621;
	width: 160px;
	height: 80px;
	line-height: 80px;
	text-align: center;
}
#header .top-menu > ul > li.active > a {
	background: #d7cde5;
	font-weight: 400;
}
#header .top-menu > ul > li.active > ul {
	display: block;
}
#header .top-menu > ul > li > ul {
	display: none;
	position: absolute;
	z-index: 2;
	text-align: center;
	width: 100%;
	background: rgba(29,22,23,0.4);
	padding: 10px 0;
}
#header .top-menu > ul > li > ul > li > a {
	display: block;
	font-size: 16px;
	color: #fff;
	font-weight: 300;
	width: 100%;
	height: 40px;
	line-height: 40px;
}
#header .top-menu > ul > li > ul > li > a:hover {
	background: rgba(29,22,23,0.4);	
}

#header .menu {
	display: none;
	font-size:1em; 
	position: absolute;
	top: 80px;
	right: 10px;
}
#header .menu a {
	position: relative; 
	display:block;
	width:28px; 
	height:21px;
}
#header .menu a span {
	position: absolute; 
	background:#1d1621; 
	display:block;
	width: 25px;
    height: 2px;
}
#header .menu a span:nth-child(1) {
	top:2px;
}
#header .menu a span:nth-child(2) {
	top:9px; 
}
#header .menu a span:nth-child(3) {
	top:16px;
}

.side-close { 
	position: relative;
}
.side-close a {
	position: absolute;
    display: block;
    width: 26px;
    height: 35px;
    right: 10px;
    top: 10px;
}
.side-close span {
	position: absolute;
    top: 17px;
    right: 0;
    display: block;
    width: 25px;
    height: 1px;
    background: #fff;
}
.side-close span:nth-child(1) {
	transform:rotate(-45deg);
}
.side-close span:nth-child(2) {
	transform:rotate(45deg);
}
.scroll-func {
	width:100%;
	background: #303030;
}
.left-wrap  {
	width:200px;
	position: fixed; 
	top: 0;
	right:-110%;
	display: none;
	z-index: 1005;
	height:100%;
	background: #fff;
	box-sizing: border-box;
}
.black-bg {
	position: absolute;
	background:#000;
	width:100%;
	height: 100%;
	left:0;
	top:0;
	opacity: 0.8;
	z-index: 1000;
	display: none;
}
#side {
	margin-top: 55px;
}
#side .depth li a {
	position: relative;
	display:block;
	padding: 12px 15px;
	background: #303030;
	font-weight: 300;
}
#side .depth01 {
	position: relative; 
	border-top: 1px solid #474747;
}
#side .depth01 > a {
	color:#1c1c1c; 
	font-size:15px; 
	position: relative;
	color: #fff;
}
#side .depth01 > a:after {
	content: '▼';
	position: absolute;
	right: 10px;
	top: 50%;
	font-size: 10px;
	transform: translateY(-50%);
}
#side .depth02 { 
	background:#424242; 
	max-height: 0; 
	overflow: hidden; 
	transition: all .3s;
}
#side .depth02 > li > a {
	color: #fff;
    font-size: 13px;
    padding: 5px 12px;
    background:#424242; 
}
#side .depth01.active > a {
	background: #d7cde5;
	color: #1c1c1c;
}
#side .depth01.active > a:after {
	content: '▲';
}
#side .depth01.active .depth02 {
	max-height: 500px;
	border-top: 1px solid #474747;
	padding: 5px 0;
}
.not-scroll {
	overflow: hidden;
}


.inner {
	position: relative;
	width: 1140px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}


.container {
	position: relative;
}

.big-title {
	text-align: center;
	font-size: 40px;
	font-weight: 400;
	padding-top: 60px;
	word-break: keep-all;
}
.sub-title {
	font-size: 18px;
    font-weight: 300;
    margin: 10px 0 50px;
    line-height: 1.3;
    word-break: keep-all;
}

.title-bn {
	position: relative;
	text-align: center;
	color: #fff;
}
.title-bn h2 {
	font-size: 50px;
    font-weight: 500;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
}
.navi {
	position: relative;
	text-align: center;
	height: 80px;
	line-height: 80px;
	background: #fff;
	border-bottom: 1px solid #766d80;
	font-size: 0;
}
.navi a {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	font-size: 25px;
	padding: 0 30px;
}
.navi a.on {
	font-weight: 500;
}
.navi a.on:after {
	content: '';
    display: block;
    width: 100%;
    height: 3px;
    background: #0c0b0d;
    position: absolute;
    left: 0;
    bottom: 0;
}


#footer {
	position: relative;
	text-align: center;
}
#footer .process {
	background: linear-gradient(135deg, #9b83bd, #aa719c 65%);
}
#footer .process h3 {
	font-size: 40px;
	color: #fff;
	font-weight: 400;
	padding: 85px 0 60px;
}
#footer .process ul {
	font-size: 0;
	margin-bottom: 110px;
}
#footer .process ul li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	padding-right: 30px;
}
#footer .process ul li:last-child {
	padding-right: 0;
}
#footer .process ul li:after {
	content: '';
	display: block;
	background: url("../images/process-arrow.png")no-repeat 50% 50%;
	position: absolute;
	top: 40%;
	right: 3px;
	width: 24px;
	height: 19px;
	transform: translateY(-50%);
}
#footer .process ul li:last-child:after {
	display: none;
}
#footer .process ul li div {
	width: 130px;
	height: 130px;
	line-height: 130px;
	border: 1px solid #fff;
	border-radius: 50%;
}
#footer .process ul li div img {
	vertical-align: middle;
}
#footer .process ul li p {
	font-size: 25px;
	color: #fff;
	font-weight: 300;
	margin-top: 20px;
}
#footer .process h2 {
	position: relative;
	font-size: 60px;
	color: #fff;
	font-weight: 500;
	padding: 75px 0 115px;
}
#footer .process h2:before {
	content: '';
    background: #fff;
    width: 220px;
    height: 2px;
    margin: 0 auto;
    position: absolute;
    top: 0;
}
#footer .process .grid3 {
	font-size: 0;
}
#footer .process .grid3 > div {
	display: inline-block;
	vertical-align: top;
	width: calc(33.333% - 10px);
	border-bottom: 1px solid #fff;
	padding-bottom: 10px;
	margin-right: 15px;
	text-align: left;
}
#footer .process .grid3 > div:last-child {
	margin-right: 0;
}
#footer .process .grid3 > div label {
	display: inline-block;
    vertical-align: middle;
	font-size: 18px;
	color: #fff;
	font-weight: 300;
	margin-right: 15px;
}
#footer .process .grid3 > div input {
	display: inline-block;
    vertical-align: middle;
	font-size: 18px;
	background: transparent;
}
#company {
	width: calc(100% - 135px);
}
#phone {
	width: calc(100% - 92px);
}
#mail {
	width: calc(100% - 65px);
}

#footer .process .check-group {
	font-size: 0;
	margin-top: 40px;
	text-align: left;
}
#footer .process .check-group > div {
	display: inline-block;
	vertical-align: middle;
	margin-right: 11%;
}
#footer .process .check-group > div:last-child {
	margin-right: 0;
}
#footer .process .check-group > div label {
	font-size: 18px;
}
#footer .process .conts {
	margin-top: 55px;
	text-align: left;
}
#footer .process .conts span {
	display: block;
	color: #fff;
	font-weight: 300;
	margin-bottom: 10px;
}
#footer .process .conts textarea {
	width: 100%;
	height: 90px;
	font-size: 18px;
	background: transparent;
	border: 0;
	border-bottom: 1px solid #fff;
}
#footer .process .btn-area {
	padding: 50px 0 60px;
}
#footer .process button[type=submit] {
	display: block;
	font-size: 18px;
	background: #fff;
	font-weight: 300;
	width: 120px;
	height: 50px;
	margin: 0 auto;
}

#footer address {
	padding: 90px 0 55px;
	background: #fff;
}
#footer .addr {
	font-weight: 300;
}
#footer .addr p {
	display: inline-block;
	font-size: 18px;
}
#footer .addr p strong {
	font-weight: 500;
}
#footer .addr .line {
	font-size: 15px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 20px;
	width: 1px;
	height: 20px;
	background: #000;
}
#footer .copy {
	margin-top: 40px;
}


@media screen and (max-width: 1140px){
	.inner {
		width: 100%;
	}

	#footer .process h3 {
    	font-size: 30px;
    }
    #footer .process h2 {
    	font-size: 40px;
    }
    #footer .process h2:before {
    	width: 150px;
    }
    #footer .process ul li {
    	width: 11.222%;
    }
    #footer .process ul li div {
    	position: relative;
    	width: 100%;
	    height: 0;
	    padding-bottom: 100%;
	    line-height: 1;
    }
    #footer .process ul li div img {
    	position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		max-width: 70px;
		width: 55%;
    }
    #footer .process ul li p {
    	font-size: 20px;
    	text-align: center;
    }
    #footer .process .check-group > div {
    	margin-right: calc(25% - 155px);
    }
}
@media screen and (max-width: 1024px){
	#header .top-menu {
		display: none;
	}
	#header .menu {
		display: block;
	}
	#header .line {
		padding-right: 0;
	}

	.big-title {
		font-size: 30px;
	}
	.sub-title {
    	font-size: 15px;
    }

    .navi a {
    	font-size: 17px;
    }

	#footer .process ul li {
	    width: 22.222%;
	    margin-bottom: 20px;
	    padding-right: 40px;
	}
	#footer .process ul li:after {
		right: 6px;
	}
	#footer .process ul li p {
		margin-top: 10px;
	}
	#footer .process .grid3 > div label {
		font-size: 15px;
	}
	#footer .process .grid3 > div input {
		font-size: 15px;
	}
	#footer .process .check-group > div {
	    margin-right: calc(25% - 137px);
	}
	#footer .process .check-group > div label {
		font-size: 15px;
	}
	#footer .process .conts span {
		font-size: 15px;
	}
	#footer .process .conts textarea {
		font-size: 15px;
	}
}
@media screen and (max-width: 768px){
	#header .line span {
		font-size: 13px;
	}

	.title-bn h2 {
		font-size: 30px;
	}
	.navi {
	    height: 55px;
	    line-height: 55px;
	}
	.navi a {
	    font-size: 15px;
	}
	.navi.grid4 a {
		width: 25%;
		padding: 0;
	}
	.navi.grid5 {
		height: 110px;
	}
	.navi.grid5:before {
		content: '';
		width: 100%;
		height: 1px;
		background: #766d80;
		position: absolute;
		top: 54px;
		left: 0;
	}
	.navi.grid5 a {
		width: 33.333%;
		padding: 0;
	}

	#footer .process h2 {
	    font-size: 35px;
	    padding: 6% 0 12%;
	    text-align: center;
	}
	#footer .process h2:before {
	    width: 130px;
	}
	#footer .process ul {
	    margin-bottom: 10%;
	}
	#footer .process ul li p {
		font-size: 18px;
	}
	#footer .process .grid3 > div {
		margin-right: 0;
		width: 100%;
		margin-bottom: 30px;
	}
	#footer .process .check-group {
		margin-top: 1%;
	}
	#footer .process .check-group > div {
		margin-right: 0;
		width: 33.333%;
		margin-bottom: 15px;
	}
	#footer .process .conts {
    	margin-top: 5%;
    }
    #footer address {
	    padding: 9% 0 8%;
	}
    #footer .addr p {
    	font-size: 13px;
    }
    #footer .addr .line {
    	height: 15px;
    	margin: 0 10px;
    }
    #footer .copy {
    	font-size: 13px;
    	margin-top: 20px;
    }
}
@media screen and (max-width: 480px){
	.big-title {
	    font-size: 25px;
	}
	.sub-title {
	    font-size: 13px;
	}

	#footer .process {
		text-align: left;
	}
	#footer .process h3 {
	    font-size: 25px;
	    text-align: center;
	    padding: 13% 0 8%;
	}
	#footer .process ul li {
		width: 43%;
		margin-bottom: 35px;
	}
	#footer .process ul li:nth-child(2n) {
		padding-right: 0;
	}
	#footer .process ul li:nth-child(2n):after {
		right: auto;
	    left: -30px;
	    transform: rotate(140deg);
	    bottom: -15px;
	    top: auto;
	}
	#footer .process ul li div {
	    width: 60%;
    	padding-bottom: 60%;
	    margin: 0 auto;
	}
	#footer .process ul li p {
		font-size: 15px;
	}
	#footer .process .check-group > div {
		width: 100%;
	}
	#footer .process button[type=submit] {
    	font-size: 15px;
    }
	
}
@media screen and (max-width: 380px){}