﻿@charset "utf-8";

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td{
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-weight:inherit;
	font-style:inherit;
	font-size:100%;
	font-family:inherit;
	vertical-align:baseline;
}
:focus{
	outline:0;
}
body{
	line-height:1;
	color:black;
	background:white;
	font-family:"メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	font-size:12px;
	*font-size:78%;
	line-height:150%;
	color:#bfbfbf;
}
ol,ul{
	list-style:none;
}
img{
	vertical-align:bottom;
}
table{
	border-collapse:separate;
	border-spacing:0;
}
caption,th,td{
	text-align:left;
	font-weight:normal;
}
.center{
	text-align:center;
}
.fl{
	float:left;
	margin:0 5px 5px 0;
}
.fr{
	float:right;
	margin:0 0 5px 5px;
}

html{
	background: url(null) fixed;
}

body.page_second{
	background-color:#4d4d4d;
	position:relative;
}

body.page_top{
	background:#4d4d4d url(../images/cmn_bg.jpg) 0 0 repeat-x;
}

#wrapper{
	background:#000 url(../images/cmn_bg.jpg) 0 0 repeat-x fixed;
	_background-position: expression('0 '+documentElement.scrollTop + 'px');
}

#wrapper_in{
	height:1%;
	background:url(../images/second_bg.jpg) center top no-repeat fixed;
	position:relative;
}

.page_second #wrapper_in{
	padding-top:131px;
}


.page_top #content{
	background-color:#000;	
}

.page_top #header{
	width:1000px;
	height:501px;
	background:url(../images/top_hdr_bg.jpg) 0 0 no-repeat;
	margin:0 auto;
}

#gnav{
	width:999px;
	padding-bottom:1px;
}

.page_second #header{
	width:100%;
	height:131px;
	
	position:fixed;  
	position: expression('absolute');
	top: expression(documentElement.scrollTop + 'px');
	top:0;
	z-index:1;
}

.page_second #gnav{
	width:1000px;
	background:none;
	margin:0 auto;

}

.page_second #gnav li,
.page_second #gnav h1{
	background:none;
}

#gnav h1{
	width:250px;
	float:left;
	display:inline;
}

.page_second #gnav h1{
	width:251px;
}

#gnav ul{
	width:749px;
	float:right;
	display:inline;
}

#gnav ul li{
	width:250px;
	float:left;
	display:inline;
}

#gnav ul li.last{
	width:249px;
}

.page_top #content{
	background-color:#000;	
}

#content_in{
	width:999px;
	background:url(../images/cmn_line_y.gif) 0 0 repeat-y;
	padding-left:1px;
	margin:0 auto;
}

#footer1{
	background-color:#000;
	padding-bottom:32px;
}

#footer1_in{
	width:1000px;
	margin:0 auto;	
}

#footer2{
	background:url(../images/cmn_ftr_bg.gif) 0 0 repeat-x;
	padding:1px 0 15px 0;
}

#footer2_in{
	width:1000px;
	margin:0 auto;
}

#footer2 table{
	width:444px;
	margin:15px 0 0 556px;
}

#footer2 table td{
	padding-left:12px;
	vertical-align:middle;
}

#footer2 table td.twt{
	padding-left:0;
}

#footer2 table td.hatena{
	padding-left:0;
}

#footer2 table td .fb{
	width:70px;
	overflow:hidden;
}


#footer2 table td .fbs{
	width:62px;
}

#footer1 .ftr_cont{
	width:1000px;
}

#footer1 .ftr_cont p{
	font-size:0;
	line-height:0;
}

#footer1 .ftr_cont .l{
	width:695px;
	float:left;
	text-align:right;
}

#footer1 .logo{
	width:287px;
	float:right;
	font-size:0;
	line-height:0;
	margin-top:3px;
}

#fnav{
	margin:0 5px 4px 0;
}

#fnav li{
	display:inline;
	margin-left:25px;
}

#fnav li a{
}


a{
	color:#bfbfbf;
	text-decoration:none;
}

a:hover{
	color:#fff;
}

.go_top{
	font-size:0;
	line-height:0;
	padding:10px 0;
}

#gnav,
.page_top h2,
.page_top .cont1,
.page_top .cont2,
.page_second #about h2,
.page_second #contact h2,
.page_second #about,
.page_second #contact,
.page_second #about .r dl dt,
.page_second #about table th,
.page_second #about table td,
.page_second #contact table th,
.page_second #contact table td,
.page_second #form table th,
.page_second #form table td,
.page_second #work h2,
.page_second #work ul,
.page_second #form h2{
	background:url(../images/cmn_line_x.png) left bottom repeat-x;
	_background:url(../images/cmn_line_x.gif) left bottom repeat-x;
}

.page_top .cont1 .contact_in,
.page_top .cont2 .access{
	background:url(../images/cmn_line_x.png) 0 0 repeat-x;
	_background:url(../images/cmn_line_x.gif) 0 0 repeat-x;
}

#gnav h1,
#gnav ul li,
.page_top .cont1 .about,
.page_top .cont1 .work,
.page_top .cont1 .news,
.page_top .cont1 .contact,
.page_top .cont2 .pic1,
.page_top .cont2 .pic2,
.page_top .cont2 .bn,
.page_top .cont2 .access .txt,
.page_top .cont2 .access .map,
.page_second #work{
	background:url(../images/cmn_line_y.png) right top repeat-y;
	_background:url(../images/cmn_line_y.gif) right top repeat-y;
}

.page_second #about_in_in:after,
.page_second #contact_in_in:after,
.page_second #work ul:after,
#gnav:after,
#gnav ul:after,
.page_top .cont1 .news:after,
.page_top .cont2 .access:after,
#footer2 table td .fb:after,
#footer1 .ftr_cont:after,
.page_second #about table th:after,
.page_second #contact table th:after,
.page_second #form .btns:after,
.page_second #form table th:after{
    content:".";
    display:block;
    height:0;
    clear:both;
    visibility:hidden;
}

/****** second ******/

.page_second #about,
.page_second #contact{
	width:999px;
}

.page_second #about_in,
.page_second #contact_in{
	width:999px;
	background:url(../images/cmn_gra2.png) right bottom no-repeat;
}

.page_second #about_in_in,
.page_second #contact_in_in{
	width:998px;
	background:url(../images/cmn_line.png) right top repeat-y;
	_background:url(../images/cmn_line.gif) right top repeat-y;
	padding:0 1px 33px 0;
}

.page_second #about .l,
.page_second #contact .l{
	width:440px;
	float:left;
	padding:60px 0 0 59px;
}

.page_second #about h2,
.page_second #contact h2{
	font-size:0;
	line-height:0;
	padding:0 0 11px 7px;
}

.page_second #about .r{
	width:471px;
	background:url(../images/cmn_line_x.png) 0 85px repeat-x;
	_background:url(../images/cmn_line_x.gif) 0 85px repeat-x;
	float:right;
	padding:116px 0 0 28px;
}

.page_second #contact .r{
	width:498px;
	background:url(../images/cmn_line_x.png) 0 86px repeat-x;
	_background:url(../images/cmn_line_x.gif) 0 86px repeat-x;
	float:right;
	padding:87px 0 0 0;
}

.page_second #contact .r dd{
	font-size:117%;
	line-height:200%;
	margin:0 65px;
}


.page_second #about .r p{
	margin-bottom:20px;
}

.page_second #about .r p img{
	border:1px #434343 solid;
}

.page_second #about .r dl dt{
	padding:0 0 13px 3px;
	margin-bottom:13px;
}

.page_second #about .r dl dd{
	line-height:175%;
	padding-right:25px;
}

.page_second #about table,
.page_second #contact table{
	width:440px;
	font-size:117%;
	line-height:150%;
	margin-bottom:20px;
}

.page_second #about table th,
.page_second #about table td,
.page_second #contact table th,
.page_second #contact table td{
	padding:11px 0;
	margin-bottom:20px;
	vertical-align:middle;
}

.page_second #about table th,
.page_second #contact table th{
	width:96px;
	padding-left:8px;
	padding-right:10px;
}

.page_second #contact table th .must{
	width:18px;
	float:left;
}

.page_second #contact table th .txt{
	width:78px;
	float:left;
}

.page_second #about .map{
	margin-bottom:15px;
}

.page_second #about .access{
	background:url(../images/second_icon.png) 0 0 no-repeat;
	padding-left:42px;
}

.page_second #contact input.short,
.page_second #contact input.mdl1,
.page_second #contact input.mdl2,
.page_second #contact input.long,
.page_second #contact textarea{
	background-color:#999;
	border:1px #6c6c6c solid;
}

.page_second #contact input.short:focus,
.page_second #contact input.mdl1:focus,
.page_second #contact input.mdl2:focus,
.page_second #contact input.long:focus,
.page_second #contact textarea:focus{
	background-color: #fff;
}

.page_second #contact input.short{
	width:155px;
}

.page_second #contact input.mdl1{
	width:200px;
}

.page_second #contact input.mdl2{
	width:230px;
}

.page_second #contact input.long{
	width:280px;
}

.page_second #contact textarea{
	width:280px;
	height:80px;
	overflow-y:hidden;
}

.page_second #contact .err{
	color:#f00;
}

.page_second #contact .btn{
	width:140px;
	margin:0 auto;
}

.page_second #contact .btns{
	width:200px;
	height:30px;
	margin:10px auto;
}

.page_second #contact .btns input,
.page_second #form .btns input{
	height:30px;
	background-position:0 0;
	background-repeat:no-repeat;
	background-color:transparent;
	border:none;
	cursor:pointer;
	display:block;
	text-indent:-9999px;
}

.page_second #contact #btn_confirm{
	width:155px;
	height:35px;
	background-image:url(../images/btn_submit.png);
	margin:0 auto;
}

.page_second #contact #btn_back{
	width:61px;
	background-image:url(../images/btn_back_b.png);
	float:right;
}

.page_second #contact #btn_send{
	width:113px;
	background-image:url(../images/btn_send_b.png);
	float:left;

}

.page_second #contact .message,.page_second #contact .form_message{
	margin:10px 10px 10px 0;
}

.page_second #work h2{
	font-weight:normal;
	padding:35px 65px;
}

.page_second #work h2 span{
	font-size:0;
	line-height:0;
	margin-right:18px;
	_margin-right:10px;
}

.page_second #work ul{
	width:999px;
	padding-bottom:1px;
}

.page_second #work ul li{
	height:1%;
	background:url(../images/cmn_line_y.png) 0 0 repeat-y;
	_background:url(../images/cmn_line_y.gif) 0 0 repeat-y;
	float:left;
	font-size:0;
	line-height:0;
	display:inline;
	padding-left:1px;
}

.page_second #work ul li a{
	cursor:pointer;
}

.page_second #work ul li.top{
	background:none;
	padding-left:0;
}

.page_second #work .news {
	margin:40px 60px 60px 60px; 
}

.page_second #work .news dl {
	margin-bottom:20px; 
	border:dotted 1px #959595; 
	padding:20px; 
}

.page_second #work .news dt {
	font-weight:bold; 
	font-size:1.2em;
	color:#fff; 
	border-bottom:dotted 1px #959595; 
	padding:0 0 5px 0; 
	margin-bottom:10px; 
}




/****** top ******/

.page_top h2{
	padding-bottom:8px;
	margin-bottom:13px;
	text-align:right;
}



.page_top .cont1{
	width:999px;
	height:547px;
	position:relative;
	overflow:hidden;
	page-break-after:always;
}

.page_top .cont1 .about{
	width:250px;
	height:546px;
	float:left;
}

.page_top .cont1 .about dl{
	overflow:hidden;
	width:210px;
	height:255px;
	background:url(../images/top_pic_01.jpg) 0 0 no-repeat;
	padding:291px 20px 0 20px;
}

.page_top .cont1 .about dl dt,
.page_top .cont1 .about dl dd{
	text-align:center;
}

.page_top .cont1 .about dl dt{
	background:url(../images/cmn_line_x.gif) 0 0 repeat-x;
	padding-top:14px;
	margin-bottom:14px;	
}

.page_top .cont1 .about dl dt span{
	font-size:117%;
	line-height:150%;
}

.page_top .cont1 .about dl dd.txt{
	background:url(../images/cmn_line_x.gif) 0 0 repeat-x;
	padding-top:14px;
	margin-bottom:14px;
}

.page_top .cont1 .work{
	width:250px;
	height:546px;
	float:left;
}

.page_top .cont1 .news{
	width:499px;
	height:290px;
	float:left;
}

.page_top .cont1 .news_in{
	width:216px;
	height:238px;
	background:url(../images/top_pic_02.jpg) 0 0 no-repeat;
	padding:51px 34px 0 249px;
	overflow:hidden;
}

.page_top .cont1 .news_in dl{
	width:216px;
	height:198px;
}

.page_top .cont1 .news_in dt{
	background:url(../images/cmn_arw.gif) 3px center no-repeat;
	padding-left:19px;
	margin-bottom:3px;
}

.page_top .cont1 .news_in dd{
	padding-left:19px;
	margin-bottom:10px;
}

.page_top .cont1 .contact{
	width:499px;
	height:257px;
	float:left;
}

.page_top .cont1 .contact_in{
	width:498px;
	padding-top:1px;
}

.page_top .cont2{
	width:999px;
	height:500px;
	position:relative;
	overflow:hidden;
}

.page_top .cont2 .pic1{
	width:250px;
	height:499px;
	float:left;
}

.page_top .cont2 .pic2{
	width:250px;
	height:249px;
	float:left;
}

.page_top .cont2 .bn{
	width:499px;
	height:249px;
	float:left;
}

.page_top .cont2 .access{
	width:749px;
	height:249px;
	float:left;
	padding-top:1px;
}

.page_top .cont2 .access .map{
	width:500px;
	height:249px;
	float:left;
}

.page_top .cont2 .access .txt{
	width:210px;
	height:219px;
	float:right;
	padding:30px 0 0 39px;

}

.page_top .cont2 .access .txt_in{
	height:219px;
	background:url(../images/cmn_gra.png) right bottom no-repeat;
	padding-right:22px;
	overflow:hidden;
}

.page_top .cont2 .access p{
	margin-bottom:10px;
	text-align:right;
}

.rolloverlay{
	display:none;
}

