@charset"utf-8";

body{
	font-size:62.5%;
	font-family:'Lucida Grande',
 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',
 Meiryo, メイリオ, sans-serif;
 background:url("../images/body-bg.jpg") repeat-x;
}

a {
	text-decoration: none;
}
h2{
	font-size:4em;
	letter-spacing:.1em;
}

p{
	font-size:1.4em;
	color: #333333;
	line-height:2em;
	letter-spacing:.03em;
}
h2,h3,nav{font-family: 'Lato', sans-serif; font-weight: 700; }
.btn a{
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
}
.btn a:hover{
	-webkit-transform: scale( 1.1 );
	-moz-transform: scale( 1.1 );
	-o-transform: scale( 1.1 );
}
/* //////////////////////////////////////////
	MAIN
////////////////////////////////////////// */

#main{
	width:100%;
	height:580px;
	background-image: url("../images/main-image-bg.jpg");
	background-repeat:no-repeat;
	background-position: center bottom
	background-attachment: fixed;
	background-size: cover;
	-webkit-background-size: cover;
	-o-background-size: cover;
	-moz-background-size: cover;
	text-align:center;
}

#main h1{
	margin:auto;
	padding-top:167px;
	width:470px;
}
.image-sp{
	display: none;
}

/* //////////////////////////////////////////
	Navigation
////////////////////////////////////////// */

#main-nav-mobile{
	display: none;
}

#main-nav {
position: absolute;
top:auto;
z-index: 999;
width: 100%;
height: inherit;
background: rgba(255,255,255,0.8);
-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.3);
-moz-box-shadow: 0 0 20px rgba(0,0,0,0.3);
box-shadow: 0 0 20px rgba(0,0,0,0.3);
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#ffffff')";
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#ffffff,EndColorStr=#ffffff);
}

#main-nav #main-nav-wrap{
	overflow:hidden;
	margin:0 auto;
	width:960px;
	height:84px;
	}

#main-nav h1{
	float:left;
	padding:24px 15px 0 0;
	font-size:0;
	line-height:42px;
	}

#main-nav h1 img{line-height:0;}

#main-nav ul{float:right;}
#main-nav li{float:left;}

#main-nav li a {
display: block;
padding: 22px 0 0 32px;
width: 100%;
height: 84px;
border: 0;
color: #37353a;
text-decoration: none;
text-transform: uppercase;
letter-spacing: .05em;
font-size: 1.4em;
line-height: 42px;
}
#main-nav li.active a{color:#FF6879;}

#main-nav.fixed {
position: fixed;
top: 0;
}

.nav-on{
margin-top:84px;
}

/* //////////////////////////////////////////
	PHILOSOPHY
////////////////////////////////////////// */
#philosophy{
	margin-top:84px;
}
#philosophy-title{
	padding:80px 0 30px;
	text-align:center;
	background:#F4F4F0;
}

#philosophy-title h2{
	color:#9FABB1;
}
#philosophy-title p{
	padding-top:40px;
	font-size:1.6em;
}
#mission{
	background:url("../images/mission-bottom-bg.png") no-repeat center bottom #EFEFE9;
	padding:40px 0 80px;
}

#mission h3{
	margin-bottom:40px;
	letter-spacing: .07em;
	color:#4B7990;
	font-size:3em;
	text-align: center;
}
#mission-box{
	width:654px;
	margin:0 auto;
}
#mission-box div{
	height:397px;
	width:327px;
	float:left;
	text-align: center;
	margin-bottom:40px;
}

#mission h4{
	clear: both;
	font-size:1.8em;
	color:#4B7990;
	text-align: center;
	line-height: 1.8em;
	padding-bottom:40px;
}

#communication{
	margin:0 auto;
	width:626px;
}

#communication figure{
	margin-bottom:10px;
}

#heart,
#passion{
	width:300px;
	float:left;
}

#heart{
	margin-right:26px;
}

#heart figure,
#passion figure{
	text-align: center;
}
#commu{
	clear:both;
	padding-top:50px;
	width:100%;
}

#commu figure{
	float:left;
	padding:0 51px 20px 0;
}
/* //////////////////////////////////////////
	SERVICE
////////////////////////////////////////// */

#service h2{
	color:#fff;
	background:#4B7990;
	text-align:center;
	padding:50px 0;
}

#service h3{
	font-size:2.4em;
	text-align:center;
	padding:50px 0;
	color:#4B7990;
}

#building-service,
#it-service{
	padding:0 0 40px 0;
}

#building-service{
	border-bottom:dotted 1px #4B7990;
}

.service-box-wrap{
	width:960px;
	margin:0 auto;

}
.service-box-wrap div{
	width:290px;
	float:left;
	margin-right:40px;
}

.service-box-wrap div:nth-child(4){
	margin-right:0;
}

.service-box-wrap figure{
	text-align:center;
	margin-bottom:30px;
}

.service-box-wrap h4{
	text-align:center;
	font-size:2em;
	font-weight: bold;
	color: #929FA9;
}

.service-box-wrap h4 + p{
	text-align:center;
	font-size:1.2em;
	font-family: 'Lato', sans-serif; font-weight: 700;
	color: #929FA9;
	margin-bottom:15px;
}

.rearn-btn{
	text-align: center;
	clear: both;
}

.rearn-btn p a{
	display:inline-block;
	color:#4B7990;
	padding: 10px 50px;
	border:solid 3px #4B7990;
	letter-spacing: .08em;
	cursor:pointer;
	font-weight: 700;
	font-size:20px;
	font-family: 'Lato', sans-serif;
	margin:40px 0;
}

.rearn-btn p a:hover{
	background:#4B7990;
	color:#fff;
}

/* //////////////////////////////////////////
	ABOUT US
////////////////////////////////////////// */
#about{
	clear: both;
	background:#F4F4F0;
	padding-bottom:80px;
}

#about h2{
	color:#939FA9;
	text-align:center;
	padding:50px 0;
}

#about-wrap{
	width:555px;
	margin:0 auto;
	background:url("../images/about-logo.png") no-repeat 140px 40px;
	padding-left:405px;
}

#about #about-wrap h3,
#about #about-wrap p{
	float:left;
}

#about #about-wrap h3{
	font-size:1.4em;
	line-height: 2.8em;
	width:100px;
	clear: both;
}

#about #about-wrap p{
	line-height: 2.8em;
}

/* //////////////////////////////////////////
	CONTACT
////////////////////////////////////////// */

#contact{
	background:#4B7990;
}

#contact h2{
	color:#fff;
	background:#4B7990;
	text-align:center;
	padding:50px 0;
}

#access-info{
	width:960px;
	margin:40px auto;
	height:100px;
	margin-bottom:50px;
}

#access-info h3{
	display: block;
	float:left;
	width:296px;
	height:100px;
	background:#E9E9E2;
	color:#4B7990;
	text-align:center;
	font-size:3em;
	line-height:100px;
	margin-right:4px;
}

#access-info #address{
	display: block;
	float:left;
	padding:22px 0 0 30px;
	width:360px;
	height:78px;
	background:#fff;
	color:#333333;
	text-align:left;
	font-size:1.4em;
}

.map-btn{
	float:left;
	width:270px;
	height:100px;
	background:#fff;
}

.map-btn p a{
	display:inline-block;
	margin-top:30px;
	margin-left:50px;
	padding: 5px 50px;
	border:solid 3px #4B7990;
	color:#4B7990;
	letter-spacing: .08em;
	font-weight: 700;
	font-size:20px;
	font-family: 'Lato', sans-serif;
	cursor:pointer;
}
.map-btn p a:hover{
	background:#4B7990;
	color:#fff;
}
#mail{
	clear: both;
	text-align:center;
	border-top:dotted 1px #fff;
	padding-top:50px;
}

.mail-btn p a{
	display:inline-block;
	color:#fff;
	padding: 5px 50px;
	border:solid 3px #fff;
	letter-spacing: .08em;
	cursor:pointer;
	font-weight: 700;
	font-size:20px;
	font-family: 'Lato', sans-serif;
	margin:20px 0 50px;
}

.mail-btn p a:hover{
	background:#fff;
	color:#4B7990;
}

#pagetop{
	background:#4B7990;
	text-align: right;
	padding-right:20px;
	line-height: 0;
}

footer p{
	font-size:1.4em;
	height:50px;
	line-height: 50px;
	font-family: 'Lato', sans-serif;
	text-align:center;
	color:#333333;
}

/*  ========================================================================================960px
	960px　BIGEN
	========================================================================================960px  */
@media (max-width: 960px) {
#main-nav #main-nav-wrap{
	overflow:hidden;
	margin:0 auto;
	width:100%;
	height:84px;
	}
}

/*  ========================================================================================768px
	768px　BIGEN
	========================================================================================768px  */
@media (max-width: 768px) {

/* //////////////////////////////////////////
	MAIN
////////////////////////////////////////// */
#main{
	width:100%;
	height:380px;
	background-image: url("../images/main-image-bg.jpg") no-repeat;
	background-position: bottom center ;
	background-attachment: scroll;
	background-size: cover;
	-webkit-background-size: cover;
	-o-background-size: cover;
	-moz-background-size: cover;
	text-align:center;
}

#main h1{
	width:100%;
	margin:0;
	padding-top:115px;
}

#main h1 img{
	width:75%;
}

.image-pc{
	display: none;
}
.image-sp{
	display: block;
}

/* //////////////////////////////////////////
	Navigation
////////////////////////////////////////// */

#main-nav{
	display:none;
}

#main-nav-mobile{
	display: block;
	position: fixed;
	min-height:57px;
	z-index: 9999;
	top:0;
	width:100%;
	background: rgba(255,255,255,0.8);
	-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.3);
	-moz-box-shadow: 0 0 20px rgba(0,0,0,0.3);
box-shadow: 0 0 20px rgba(0,0,0,0.3);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#ffffff')";
	filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#ffffff,EndColorStr=#ffffff);
}

#main-nav-mobile h1{
	position: absolute;
	left:20px;
	top:9px;
}

#main-nav-mobile #toggle{
	position: absolute;
	right:20px;
	top:9px;
	background:url("../images/toggle-nav.png") no-repeat;
	height:43px;
	width:41px;
}

#main-nav-mobile #close{
	font-size:2em;
}

#main-nav-mobile #main-nav-wrap{
	margin-top:57px;
}
#main-nav-mobile ul{
	margin-top:57px;
	display: none;
}

#main-nav-mobile li a {
display: block;
text-align: center;
width:100%;
height:44px;
line-height:44px;
border-top:dotted 1px #9FABB1;
color: #37353a;
text-decoration: none;
text-transform: uppercase;
letter-spacing: .05em;
font-size: 1.4em;
}


/* //////////////////////////////////////////
	PHILOSOPHY
////////////////////////////////////////// */

#philosophy{
	margin-top:0px;
}

#philosophy-title{
	padding:50px 0 30px;
	text-align:center;
	background:#F4F4F0;
}

#philosophy-title h2{
	color:#9FABB1;
	font-size:3em;
}

#philosophy-title p{
	padding-top:40px;
	font-size:1.3em;
}
#mission{
	background:url("../images/mission-bottom-bg.png") no-repeat center bottom #EFEFE9;
	padding:40px 0 60px;
}

#mission h3{
	margin-bottom:40px;
	letter-spacing: .07em;
	color:#4B7990;
	font-size:3em;
	text-align: center;
}

#mission-box{
	width:100%;
	margin:0 auto;
}


#mission-box div{
	width:50%;
	height:auto;
	background:none;
	float:left;
	text-align: left;
	margin-bottom:40px;
}
#mission-box div img{
	width:100%;
}



#mission h4{
	font-size:1.6em;
	color:#4B7990;
	text-align: left;
	line-height: 1.8em;
	padding-bottom:0;
	padding-left:15px;
	border-left:5px solid #4B7990;
}
#mission h4 br{
	display: none;
}

#communication{
	margin:0 auto;
	width:100%;
}
#communication p{
	padding:0 15px;
}

#communication figure{
	margin-bottom:10px;
}

#heart,
#passion{
	width:100%;
	margin-top:20px;
	float:none;
}

#heart{
	margin-right:26px;
}
#commu{
	clear:both;
	padding-top:30px;
	width:100%;
}

#commu figure{
	text-align: center;
	float:none;
	padding:0;
}


/* //////////////////////////////////////////
	SERVICE
////////////////////////////////////////// */

#building-service,
#it-service{
	padding:0 20px;
}

#it-service h4 span{
	display: block;
}
.service-box-wrap{
	width:100%;
	margin:0 auto;
}

.service-box-wrap div{
	width:100%;
	float:left;
	margin-right:40px;
}

.service-box-wrap figure{
	text-align:left;
	margin-right:15px;
	margin-bottom:10px;
	float:left;
	width:28%;
}

.service-box-wrap figure img{
	width:100%;
}

.service-box-wrap h4{
	text-align:left;
	padding:14px 0 0 0;
	font-size:1.7em;
	font-weight: bold;
	color: #929FA9;
}
.service-box-wrap h4 + p{
	text-align:left;
	font-size:1.2em;
	font-family: 'Lato', sans-serif; font-weight: 700;
	color: #929FA9;
	margin-bottom:15px;
}

.service-box-wrap .text{
	clear: both;
	margin-bottom:30px;
	padding-bottom:30px;
	border-bottom:dotted 1px #eee;
}
.rearn-btn p a{


	margin:0 0 40px;
}


/* //////////////////////////////////////////
	ABOUT US
////////////////////////////////////////// */

#about{padding:0 20px 30px;}

#about-wrap{
	width:100%;
	margin:0 auto;
	background:none;
	padding-left:0px;
}
#about #about-wrap h3{
	font-size:1.2em;
	line-height: 2em;
	width:20%;
}
#about #about-wrap p{
	font-size:1.2em;
	line-height: 2em;
	letter-spacing: 0em;
	width:79%;
}


/* //////////////////////////////////////////
	CONTACT
////////////////////////////////////////// */
#access{
	padding:0 20px;
}

#access-info{
	width:100%;
	margin:40px auto;
	height:100px;
	margin-bottom:50px;
}

#access-info h3{
	display: block;
	float:left;
	width:30%;
	height:80px;
	background:#E9E9E2;
	color:#4B7990;
	text-align:center;
	font-size:2em;
	line-height:80px;
}

#access-info #address{
	display: block;
	float:none;
	padding:15px 20px 0 20px;
	width:auto;
	height:65px;
	background:#fff;
	color:#333333;
	text-align:left;
	font-size:1.2em;
	margin-left:31%;
	line-height: 1.5em;
}
.map-btn{
	display: none;
	float:left;
	width:270px;
	height:100px;
	background:#fff;
}

#pagetop{
	background:#4B7990;
	text-align: center;
	padding-right:0;
	line-height: 0;
}

footer p{
	font-size:1.2em;
}


}
