@charset "utf-8";
.sp{display: block;}
body{padding-top: 60px;}
#loading{
	background-size: 25%;
}
header{
	height: 60px;
}
header>.inner{
	padding: 0 5px;
}
header h1 img{
	height: 60px;
}
header #sp-nav{
	width: 50px;
	height: 50px;
	float: right;
	display: block;
	line-height: 0;
	cursor: pointer;
	margin: 5px auto 0;
}
header #sp-nav>img{
	width: 100%;
	height: auto;
}
header #head{
	display: none;
}
header nav.clearfix{
	position: fixed;
	width: 100vw;
	height: 100%;
	display: none;
	background: rgba(255,255,255,0.95);
	top: 0;
	left: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	overflow: scroll;
}
header nav>ul{
	float: none;
	width: 100%;
	border-top: 1px solid #29392b;
}
header nav>ul>li{
	float: none;
	border-bottom: 1px solid #29392b;
}
header nav>ul>li:nth-child(2){
	background: #29392b;
}
header nav>ul>li:nth-child(3){
	background: #e35292;
}
header nav>ul>li:nth-child(4){
	background: #1CA7CB;
}
header nav>ul>li:nth-child(5){
	background: #C3D917;
}
header nav>ul>li:nth-child(6){
	background: #EF9716;
}
header nav>ul>li a{
	cursor: pointer;
	padding: 0 2em;
	text-align: left;
	color: #fff;
	position: relative;
	line-height: 60px;
}

header nav>ul>li:nth-child(7)>a{
	color: #29392b;
}
header nav>ul>li:nth-child(8),
header nav>ul>li:nth-child(9){
	background: #29392b;
}
header nav>ul>li:nth-child(8){
	border-bottom: 1px solid #fff;
}
header nav>ul>li a#sp-nav-close{
	color: #29392b;
}
header nav>ul>li a:after{
	content: "";
	display: block;
	background: url(../img/sp-nav-arrow.svg) 0 0 no-repeat;
	background-size: cover;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 15px;
	left: inherit;
	right: 15px;
	bottom: inherit;
}
header nav>ul>li:nth-child(7)>a:after{
	background: url(../img/sp-nav-arrow2.svg) 0 0 no-repeat;
}
header nav>ul>li a>span{
	font-size: 1.2rem;
	font-weight: 100;
	position: absolute;
	top: 0;
	right: 5em;
	text-align: right;
	color: rgba(255, 255, 255, 0.8);
}
header nav>ul>li:nth-child(7)>a>span{
	color: rgba(41, 57, 43, 0.8);
}
header nav>ul>li a#sp-nav-close:after{
	background: url(../img/sp-nav-close.svg) 0 0 no-repeat;
	background-size: cover;
}
header nav>ul>li.parent>ul{
	display: none;
	opacity: 1;
	position: static;
	letter-spacing: normal;
	transform: none;
	-webkit-transform: none;
	-moz-transform: none;
	-o-transform: none;
	-ms-transform: none;
	-webkit-transition: none;
	-moz-transition: none;
	-o-transition: none;
	transition: none;
	border-top: 1px solid #fff;
}
header nav>ul>li.parent>ul>li{
	display: block;
	border-bottom: 1px solid #fff;
	padding-left: 1em;
}
header nav>ul>li.parent>ul>li:last-child{
	border: 0;
}
header nav>ul>li.parent>ul>li>a{
	position: relative;
}
header nav>ul>li.parent>ul>li>a:after{
	position: absolute;
	top: 50%;
	bottom: inherit;
	left: inherit;
	right: 28px;
	display: block;
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	background: none;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
header nav>ul>li.facebook a{
	color: #29392b;
	padding-left: 5em;
}
header nav>ul>li.facebook a:before{
	content: "";
	display: block;
	background: url(../img/facebook.svg) 0 0 no-repeat;
	background-size: cover;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 15px;
	left: 2em;
	bottom: inherit;
}


footer{
	padding: 20px 0 0;
}
footer address{
	width: 100%;
	float: none;
	margin: 0 auto 20px;
}
footer nav{
	display: none !important;
}
footer #copy{
	margin: 0 auto;
}
footer .determine{
	right: 0;
	bottom: 20px;
	a{
		font-size: 1.2rem;
		background: url('../img/pdf.svg') right 14px top 8px no-repeat;
		background-size: 14px auto;
		&:hover{
			background: #29392b url('../img/pdf2.svg') right 14px top 8px no-repeat;
			background-size: 14px auto;
		}
	}
}


/*Common
------------------------------------------*/
#contacts .content>h3>span,
#contacts .content p>span{
	display: block;
}
#contents table th{
	padding: 1em;
}
#contents>.title{
	margin-bottom: 30px;
}
#contents>.title>h2{
	font-size: 3.6rem;
}







/*index
------------------------------------------*/
#index #visual{
	height: auto;
}
#index #visual>h1{
	top: 45%;
	font-size: 3.4rem;
	letter-spacing: normal;
	line-height: 100%;
}
#index #visual .flexslider .slides>li>img{
	width: 160%;
	margin-left: -30%;
}
#index #visual .flexslider .slides>li>.txt{
	top: 45%;
	font-size: 3rem;
	letter-spacing: normal;
	line-height: 100%;
}
#index #visual .flexslider .slides>li.security>.txt,
#index #visual .flexslider .slides>li.web>.txt{
	top: 32%;
}
#index #visual>h1>small,
#index #visual .flexslider .slides>li>.txt>small{
	font-size: 1.3rem;
	margin-bottom: 8px;
}
#index #visual .flexslider .slides>li>.txt>span{
	font-size: 2rem;
}
#index #visual .flexslider .slides>li>.txt>a{
	letter-spacing: 0.1em;
	padding: 0.5em 3em;
	margin-top: 10px;
}
#index #visual .logo{
	text-align: center;
	overflow: hidden;
}
#index #visual .logo>img{
	width: 100%;
	height: auto;
	margin-top: 17%;
}
#index #wwd,
#index #works,
#index #team,
#index #news,
#index #contact{
	padding: 100px 0;
}
#index #wwd h2,
#index #works h2,
#index #team h2,
#index #news h2,
#index #contact h2{
	font-size: 3.6rem;
	margin-bottom: 40px;
}


#index #wwd .title{
	padding: 80px 0;
}
#index #wwd .title>h3{
	font-size: 3rem;
}
#index #wwd ul>li{
	width: 80%;
	min-height: 1%;
	margin: 0 auto 10px;
}
#index #wwd ul>li:last-child{
	margin-bottom: 0;
}
/*
#index #wwd .content .wwd{
	width: 100%;
	margin: 0 auto 60px;
}
#index #wwd .content .wwd:last-child{
	margin-bottom: 0;
}
#index #wwd .content .wwd h3{
	font-size: 3rem;
}
#index #wwd .content .wwd[data="web"] .icon img{
	height: auto;
	width: 100%;
}
*/


#index #works .content>section,
#index #team .content>section{
	width: 60%;
	margin: 0 auto 40px;
}
#index #works .content>section:last-child,
#index #team .content>section:last-child{
	margin-bottom: 0;
}
#index #contact .content>h3{
	line-height: 140%;
}
#index #contact .content>.txt>span{
	display: block;
}
#index #works .link,
#index #news .link{
	position: static;
	margin: 40px auto 0;
}





/*About
------------------------------------------*/
#about #team .content>section{
	width: 80%;
	margin: 0 auto 40px;
}
#about #team .content>section:last-child{
	margin-bottom: 0;
}
#about #team-details section>h4{
	font-size: 2.2rem;
}
#about #team-details section>h4>small{
	padding: 0 0.5em;
	font-size: 1.6rem;
}
#about #team-details section>h4>small:before{
	padding-right: 0.5em;
}
#about #team-details section>h4>small:after{
	padding-left: 0.5em;
}
#about #team .content>section .img{
	max-width: 60%;
}
#about #team-details section>.img:after{
	border-width: 4px;
}
#about #team-details section>table,
#about #team-details section>table tbody,
#about #team-details section>table tr,
#about #team-details section>table th,
#about #team-details section>table td{
	display: block;
}
#about #team-details section>table th,
#about #team-details section>table td{
	width: auto;
	padding: 0.5em 1em;
}




/*Service
------------------------------------------*/
#service #contents h3>small{
	display: block;
}
#service #service-contents .content .wwd{
	display: block;
	margin: 0 auto 40px;
	width: 100%;
}
#service #service-contents .content .wwd:last-child{
	margin-bottom: 0;
}
#service #web-nav>li{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto 1em;
}

#service #web h3,
#service #security h3{
	font-size: 3rem;
}
#service #web .content,
#service #security .content{
	margin-bottom: 90px;
}
#service #web .content>.image>h4,
#service #security .content>.image>h4{
	font-size: 4rem;
	top: 20%;
}
#service #web .content>.image>.icn,
#service #security .content>.image>.icn{
	top: 60%;
}
#service #web .content>.image>.icn>svg,
#service #security .content>.image>.icn>svg{
	height: 70px;
}
#service #web .content>.image>.img,
#service #security .content>.image>.img{
	width: 100%;
	height: 280px;
	overflow: hidden;
}
#service #web .content>.image>.img img,
#service #security .content>.image>.img img{
	width: auto;
	height: 100%;
}
#service #web .content>.cont,
#service #security .content>.cont{
	padding: 20px;
	margin-top: -60px;
}





/*Works
------------------------------------------*/
#works #work .content>section{
	width: 100%;
	margin: 0 auto 40px;
}
#works #work .content>section:last-child{
	margin-bottom: 0;
}







/*Works
------------------------------------------*/
#news #news-area section>h3{
	font-size: 2rem;
	line-height: 140%;
}
#news #news-area section>.comn .img{
	float: none;
	max-width: 100%;
	margin: 0 auto 20px;
}
#works #work .content>#single>.img{
	display: block;
	width: 100%;
	margin: 0 auto 20px;
}
#works #work .content>#single>.content_area{
	display: block;
	width: 100%;
}




/*Contact
------------------------------------------*/
#contact form table,
#contact form table tbody,
#contact form table tr,
#contact form table th,
#contact form table td{
	display: block;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#contact form table th{
	padding: 0.5em 1em;
}
#contact form .form-btn>li{
	margin: 0 1em;
}
#contact form .mfp_element_submit,
#contact form .mfp_element_reset,
#contact form .mfp_element_button,
#contact form button.mfp_next,
#contact form button.mfp_prev{
	font-size: 1.4rem;
	padding: 1em;
}
#contact form#mailformpro label{
	white-space: initial;
}
#contact form#mailformpro label.mfp_not_checked{
	border: 0;
}
table#mfp_confirm_table{
	margin: 0 auto 20px !important;
}
div.mfp_buttons button#mfp_button_send,
div.mfp_buttons button#mfp_button_cancel{
	margin: 0 1em !important;
	font-size: 1.4rem;
	padding: 1em;
}


#contacts{
	padding: 60px 0;
}
#contacts h2{
	margin-bottom: 40px;
}



/*Privacy Policy
------------------------------------------*/
#contents #privacy .bc{
	padding: 1em;
}