@charset "utf-8";



section{margin: 5em auto;}

@media print, screen and (min-width: 1000px) {
	section{margin: 8em auto;}
}	


/*********************************
	slider
*********************************/


.slide{width: 100%;}


.slide img{width: 100%;
	height: auto
}

@media screen and (max-width: 667px) {
	.slide{width: 80%;margin: 0 auto}
}	


li.slick-slide{
	width: 100%;
	position: relative
}


@media (min-width: 668px) {
	li.slick-slide{margin: 0 50px}
}	
	

li.slick-slide div{
	border: solid 3px #fff;
	margin: 0 auto
}

li.slick-slide img{
    height: 100%;
    width: 100%;
}
	



/*slick setting*/
.slick-prev{left: -10%}
.slick-next{right: -9%}
.slick-prev:before,
.slick-next:before {
    color: #000;
    font-size: 20px;
}


@media print, screen and (min-width: 668px) {
	.slick-prev{left: 18%}
	.slick-next{right: 20%}
	.slick-prev:before,
	.slick-next:before {font-size: 50px;}
}


.mov_ic{
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	line-height: 80px;
	background: rgba(2550,42,42,.8);
	transform: translate(-50%, -50%);
	z-index: 3;
	transition: .2s
}
  
.mov_ic:before{
	content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12.5px 0 12.5px 21.7px;
    border-color: transparent transparent transparent #fff;
    display: block;
    top: 50%;
    left: 53%;
    position: absolute;
    transform: translate(-50%, -50%);
 }
 
.mov_ic:hover{
	top: 50.5%;
	opacity: .9
}


@media (min-width: 1000px) {
	.mov_ic{width: 100px;height: 100px}
	.mov_ic:before{border-width: 20px 0 20px 38.3px;}
 }	



/*********************************
	concept
*********************************/


#concept{}

.intro{
	padding: 3em;
	position: relative;}
	
.intro:before{
	content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 50px 0 0;
    border-color: #fd4747 transparent transparent transparent;
    position: absolute;
    top: 0;
    left: 0;
}
	
@media print,screen and (min-width: 668px) {
	#concept{
		display: flex;
		justify-content: space-between;
		flex-wrap:wrap;
	}
	#concept div{width: 45%}
	#concept div.intro{width:48%}
}	


.intro span{
	color: #F93060;
	font-size: .9em;
	font-weight: bold;
}

.intro h3{
	font-size: 1.3em;
	font-weight: bold;
	margin-bottom: 1em	
}


/*********************************
	works
*********************************/

#works{position: relative;}

@media screen and (max-width: 667px) {
	#works{}
}	


#works .title{text-align: center}

/*********************************
	about
*********************************/

#about{margin-bottom: 0;}


#vision h2{
	color: #FD4747;
	font-size: 1.8em;
	font-weight: bold	
}


@media screen and (max-width: 667px) {
	#about .wrap{
	background: url(../img/official_logo.png) no-repeat center bottom 80px;
	-moz-background-size: 100% auto ;background-size:100% auto;
	}
	
	#vision{
		padding-bottom: 240px
	}
}	

@media print, screen and (min-width: 668px) {
	
	#about .wrap{
	background: url(../img/official_logo.png) no-repeat right top;
	-moz-background-size:auto 90%;background-size:auto 90%;}
	#vision{padding-right: 50%}
	#about .wrap{max-width: 900px;}
}

@media print, screen and (min-width: 1024px) {
	#vision{padding-right: 45%}
}


ul#about_img{
	display: flex;
	justify-content: center;
}	

ul#about_img li{
	width: calc(100% / 3)
}

/*********************************
	contact
*********************************/

#contact{
	position: relative;
	padding-top: 8em;
	margin-top: 0
}

#contact:before{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20vh 300px 0 0;
	border-color: #8AE6F2 transparent transparent transparent;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1
}

#contact .title{text-align: center;color: #FD4747}

#contact dl{
	width: 90%;
	max-width: 800px;
	margin: 1em auto;
}


#contact dd input,
#contact textarea{
	display: block;
	border: solid 1px #ccc;
	border-radius: 5px;
	width: 100%;
	padding: .8em;
}

#contact textarea{height: 10vh}

#contact p{text-align: center}

#contact .check dd{text-align: center;}


#submit_btn{
	margin: 0 auto
}


#contact input[type="submit"]{
	width: 90%;
	max-width: 400px;
	margin: 3em auto;
	background: #222;
	color: #fff;
	letter-spacing: 2px;
	padding: 1em;
	border-radius: 50px;
	border:none;
	transition: .3s;
	text-align: center;
	display: block
}


#contact input[type="submit"]:hover{
	background: #fff;
	color: #333;
}

.check{text-align: left}

footer{position: relative;}

.bg_3{
	position: absolute;
	height: 30vh;
	width: 100%;
	overflow: hidden;
	bottom: 0
	
}
.bg_3:before{
	content: '';
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	z-index: -1;
	border-style: solid;
	border-width: 30vh 0 0 1600px ;
	border-color: transparent transparent transparent #eee;
}



footer p{
	text-align: center;
	margin-top: 8em;
	background: #FD4747;
	color: rgba(255, 255, 255, 0.8);
	font-size: .8em;
	padding: 1em;
}





