@import url(http://fonts.googleapis.com/css?family=Lato:400,700,900);

html { height: 100%; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
	margin:0 auto;
	width:90%;
}

audio,
canvas,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

body {
    font-family: 'Lato', Calibri, Arial, sans-serif;
    background: #fff;
    font-weight: 400;
    font-size: 15px;
    color: #333;
    overflow: scroll;
    overflow-x: hidden;
    margin: 0;
	position:relative;
}

header,footer,#menu,#footerup ul {
    font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Helvetica,Arial,sans-serif; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
	line-height:1.4;
}

a{
	color: #555;
	text-decoration: none;
}
a:focus {
    outline: thin dotted;
}
a:active,
a:hover {
    outline: 0;
}

.container {
	width: 100%;
	position: relative;
}

.container > header,footer,#topcontent1,#topcontent2,#topcontent3,#topcontent4,#topcontent5,#topcontent6,#topcontent7,#btn2,#headerwrapper,#footerup,#copy,.dialog{
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
	position: relative;
	padding: 10px;
}

.main {
	padding-bottom: 80px;
}

.container > header h1 {
	font-size: 34px;
	line-height: 38px;
	margin: 0;
	font-weight: 700;
	color: #333;
	float: left;
}

.container > header h1 span {
	display: block;
	font-size: 20px;
	line-height: 26px;
	font-weight: 300;
}



#headertop{
	height:51px;
	width:100%;
	background-image: url(../images/topunderbar.gif);
	background-repeat: repeat-x;
	background-position: center top;
	box-shadow:0 2px 5px 0 #cccccc;
	padding-top:15px;
	color:#FFFFFF;
	font-size:85%;
}

#headerwrapper{
	margin:0 auto;
	position:relative;
}

#headertoptext{
	position:absolute;
	left:0px;
	top:0px;
	width:30%;
	margin-left:325px;
}

#login{
	text-align:right;
	width:100%;
}

#login a{
	position:absolute;
	right:10px;
	top:0px;
	padding-left:25px;
	color:#ccffcc;
	background-position: 0 -0px;
	background-image: url(../images/icon.gif);
	background-repeat: no-repeat;
}

h1{
	margin:0;
	display:block;
	width:295px;
	position:absolute;
	top:-51px;
	left:10px;
}
h1 a{
	z-index:10;
}

h1 img{
	width:100%;
}

h2{
	margin:0;
	margin-left:310px;
	text-align:left;
	font-size:190%;
	font-weight:bold;
}

.smoke {
	font-size:21px;
}

/*///////////////////////////////////////////////////////////////////////////////////////*/
p{
	margin:0;
}
abbr[title] {border-bottom: 1px dotted;}
b,strong {font-weight: bold;}
dfn {font-style: italic;}
mark {background: #ff0;color: #000;}
pre {white-space: pre-wrap;}
q{quotes: "\201C" "\201D" "\2018" "\2019";}
sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {top: -0.5em;}

sub {bottom: -0.25em;}
img {border: 0;}
svg:not(:root) { overflow: hidden;}
figure {margin: 0;}

/*Forms*/
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}
button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}
button,input {line-height: normal;}
button,select {text-transform: none;}
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}
button[disabled],
html input[disabled] {
    cursor: default;
}
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}
input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}
textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/*Tables*/
table {
    border-collapse: collapse;
    border-spacing: 0;
}
hr{
	width:100%;
}
/*///////////////////////////////////////////////////////////////////////////////////////*/



#toptex{
	text-align:left;
	margin-left:310px;
	color:#999;
	font-weight:bold;
	font-size:85%;
	letter-spacing:1px;
	padding-left:5px;
}


#menu{
	clear:both;
	margin:0 auto;
	text-align:center;
	padding-top:10px;
}

.menu{
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #CCC;
}

#menu ul{
	margin:0 auto;
	padding-top:25px;
	text-align:center;
}

#menu ul li{
	width:190px;
	list-style:none;
	text-align:center;
	display:inline-block;
	padding:5px 20px 0px 20px;
}

.menubig{
	font-size:100%;
	font-weight:bold;
}
.menusmall{
	display:block;
	margin-top:-2px;
	font-size:78%;
}

#menu a:hover li{
	border-bottom-width: 3px;
	border-bottom-style: solid;
	border-bottom-color: #00cc33;
}

#content{margin-top:-200px;}
#content,#feecontent,#termscontent,#companycontent,#contactcontent,#estimatecontent{
	background-image: url(../images/contentbg.gif);
	background-repeat: repeat-x;
	background-position: center top;
}


#footer{
	width:100%;
	background-color:#dadada;
	box-shadow:0 4px 5px 0px #afafaf inset; 
}



#footer ul{
	width:90%;
	font-size:78%;
	list-style:none;
}

#footerup ul li{
	list-style:none;
	text-align:center;
	display:inline-block;
	margin:10px 0 10px 0;
	padding:5px 18px 0px 18px;
	border-right-style: solid;
	border-right-color: #006633;
	border-right-width: 1px;
}

#footerup ul li a,footer a{
	color:#006633;
}
#footerup ul li a:hover,footer a:hover{
	color:#0066FF;
}

#footerup{
	position:relative;
}

#page-top{
	text-align:right;
	height:0px;
}


#page-top a{
	position:absolute;
	top:22px;
	right:10px;
	padding-left:25px;
	color:#000000;
	background-position: 0px -200px;
	background-image: url(../images/icon.gif);
	background-repeat: no-repeat;
	font-weight:bold;
}

#footer span{
	display:block;
	width:100%;
	height:2px;
	background-image: url(../images/footerbar.gif);
	background-repeat: repeat-x;
	background-position: center center;
}


footer{
	padding:30px;
	overflow:hidden;
}

footer ul li{
	margin:8px 0 7px 0;
	padding-left:30px;
	background-position: 0px -50px;
	background-image: url(../images/icon.gif);
	background-repeat: no-repeat;
}

h3{
	font-size:170%;
}

.footertext{
	color:#999;
	font-weight:bold;
	font-size:85%;
	line-height:0;
	letter-spacing:1px;
	padding-bottom:10px;
}

.footerleft,.footerright{
	width:50%;
	float:left;
	margin:40px 0 20px 0;
}



.footerleft{
}

.footerright{
}

small {
	clear:both;
	width:100%;
	display:block;
	height:51px;
	padding-top:10px;
	font-size: 80%;
	background-image: url(../images/topunderbar.gif);
	background-repeat: repeat-x;
	background-position: center top;
	color:#FFFFFF;
	box-shadow:0 0 5px 2px #666666;
}

#copy{
	padding-left:30px;
}



/*////////////////////////////////////////////////////////////////////////////////////*/
/*index.html*/
/*////////////////////////////////////////////////////////////////////////////////////*/

#topcontent1{
	height:400px;
	overflow:hidden;
	position:relative;
	padding-bottom:30px;
}

#topcontent1 img{
	float:right;
	width:76.8%;
}

#topcontent-p{
	width:41%;
	position:absolute;
	top:30px;
	left:0px;
}

.title1{
	font-size:250%;
	padding:10px 0 10px 0;
	text-shadow: 1px 1px 3px #fff;
}
.title2{
	font-size:140%;
	padding:5px 0 0 0;
	text-shadow: 0px 2px 3px #fff;
}

.contenttext{
	width:89%;
	padding-bottom:10px;
	text-shadow: 0px 3px 3px #fff;
}



#btn1{
	width:100%;
	float:left;
	margin-top:-15px;
}

.contact{
	text-align:center;
	margin-right:15px;
	padding-top:15px;
	display:inline-block;
	color:#FFF;
	font-weight:bold;
	width: 18%;
	height: 45px;
	background-color: #000;
	background-image: -webkit-linear-gradient(177deg, #000, #666);
	background-image: -moz-linear-gradient(177deg, #000, #666);
	background-image: -o-linear-gradient(177deg, #000, #666);
	background-image: -ms-linear-gradient(177deg, #000, #666);
	background-image: linear-gradient(177deg, #000, #666);
	box-shadow:0 2px 5px 0 #cccccc;
}

#btn1 a:hover,#btn2 a:hover{
	color:#ccffcc;
}





#topcontent2{
	overflow:hidden;
}
.title3{
	font-size:220%;
	padding:5px 0 0 0;
	text-shadow: 1px 1px 3px #fff;
	letter-spacing:-2px;
}
.title3under{
	padding:0 15px 0 0;
}
#topcontent2 img{
	width:100%;
}
#topcontent2righttext{
	padding-left:20px;
}
#topcontent2 ul{
	margin-top:5px;
	list-style:none;
	padding-left:30px;
	line-height:1.5;
}

#topcontent2left{
	float:left;
	width:52%;
}
#topcontent2right{
	float:left;
	width:48%;
}





#topcontent3{
	overflow:hidden;
	box-shadow:0 0 3px 2px #cccccc;
	margin-top:50px;
}

#topcontent3left{
	float:left;
	width:51.05%;
}
#topcontent3right{
	float:left;
	width:48.95%;
}


#img3 img{
	width:100%;
}

#topcontent3leftmiddletext{
	padding-left:10px;
}

.title4under{
	padding:20px 15px 0 10px;
}




#btn2{
	width:100%;
	margin-top:30px;
	text-align:center;
}


.smoke {
	font-size:21px;
}


/*////////////////////////////////////////////////////////////////////////////////////*/
/*fee.html*/
/*////////////////////////////////////////////////////////////////////////////////////*/

#feetoptext{
	float:left;
	width:23%;
	position:absolute;
	left:100px;
	top:50px;
}

#topcontent4{
	overflow:hidden;
	box-shadow:0 0 3px 2px #cccccc;
	margin-top:-200px;
	background-color:rgba(255,255,255,0.9);
}


#feetitle1,#feetitle2,#feetitle3{
	padding-top:20px;
	text-align:center;
}

#feetitle2{
	font-size:150%;
}


#feebig{
	padding-left:5%;
	font-size:200%;
}
#feesmall{
	padding-left:2%;
	font-size:180%;
}

#feetitle3{
	padding-top:50px;
	padding-bottom:50px;
	font-size:150%;
}



#feecontenttable{
	margin:0 auto;
	margin-bottom:30px;
	width:80%;
	border: 1px solid #339933;
}

.tabletitleline{border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #FFF;}
.tabletitlelinemid,.tabletitlelinebott{border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #339933;}

.tabletitle{
	width:25%;
	background-color:#339933;
	text-align:center;
	color:#FFFFFF;
	font-weight:bold;
	padding-top:5px;
	padding-bottom:5px;
}
.tablemid{
	width:15%;
	background-color:#ccffcc;
	text-align:center;
	color:#339933;
	font-weight:bold;
	padding-top:5px;
	padding-bottom:5px;
}
.tableexp{
	width:60%;
	background-color:fff;
	text-align:left;
	padding-left:10px;
	padding-top:5px;
	padding-bottom:5px;
}



/*////////////////////////////////////////////////////////////////////////////////////*/
/*terms.html*/
/*////////////////////////////////////////////////////////////////////////////////////*/
#topcontent5{
	margin-top:-240px;
}

#termtoptext,#contacttext{
	margin-top:50px;
	margin-left:320px;
	padding-right:90px;
}

.termstitle{
	margin:0 auto;
	width:85%;
	font-size:110%;
	padding:3px 50px 3px 20px;
	border-bottom: 1px solid #00CC33;
	border-right: 1px solid #00CC33;
    border-radius: 3px;        /* CSS3草案 */  
    -webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 3px;   /* Firefox用 */ 
	background-image: -webkit-linear-gradient(bottom, #FBFFFD, #deffde);
	background-image: -moz-linear-gradient(bottom, #FBFFFD, #Fdeffde);
	background-image: -o-linear-gradient(bottom, #FBFFFD, #deffde);
	background-image: -ms-linear-gradient(bottom, #FBFFFD, #deffde);
	background-image: linear-gradient(to top, #FBFFFD, #deffde);
	color:#006600;
	box-shadow: 0 0 1px 1px #CCCCCC;
}

.contract{
	font-size:90%;
	padding:15px 90px 20px 90px;
}

.contract ol{
	font-size:90%;
	padding:10px 0px 10px 30px;
}


/*////////////////////////////////////////////////////////////////////////////////////*/
/*company.html*/
/*////////////////////////////////////////////////////////////////////////////////////*/

#topcontent6{
	margin-top:-240px;
}



iframe{
	border: 1px solid #a6a6a6;
}

#data_box{
	width:85%;
	margin:0 auto;
}

#contents_box{
	padding-left:10px;
	padding-right:10px;
}

#data_float_dl {
    border-bottom: 1px dotted #A6A6A6;
    padding-bottom: 10px;
    padding-top: 10px;
	padding-left:10px;
	text-align:left;
}

#data_float_dl dt {
    display: block;
    float: left;
    font-weight: bold;
	font-size:100%;
    width: 30%;
	padding-left:10px;
}

#data_float_dl dd{
    display: block;
    line-height: 140%;
	margin-left:30%;
}

#data_float_dl ul{
	list-style:none;
	
}


/*////////////////////////////////////////////////////////////////////////////////////*/
/*contact.html*/
/*////////////////////////////////////////////////////////////////////////////////////*/
#topcontent7{
	margin-top:-240px;
}


form{
	margin:0 auto;
	padding-left:10px;
	width:85%;
}


form input[type=text]:focus, form textarea:focus{
outline: none;
background:#fff;
}

form input[type=text], form textarea{
background:#F4FFFA;
border:none;
border:solid 1px #c0c0c0;
}

form input, textarea{
	font-size:100%;
}


form table{
	width:100%;
	border-collapse:collapse;
	border: 1px solid #CCC;
}

form th,form td{
	vertical-align: top;
	text-align:left;
	padding-top:15px;
	padding-bottom:15px;
	padding-left:20px;
	line-height:1.5;
	font-size:14px;
	
}

form th{
	background-color:#4b4b4b;
	color:#fff;
	border: 1px dotted #CCC;
	width:29%;
}

form td{
	background-color: #fff;
	border: 1px dotted #CCC;
	width:71%;
	vertical-align:middle;
}

.w300, form textarea{
	width:70%;
	padding:0px;
}

.small{
	font-size:70%;
	color:#ccffcc;
}

.small2{
	font-size:70%;
	color:#FF0000;
}

.hide{
	display:none;
}

#submit{
	margin-top:4%;
	margin-left:38%;
	padding:1.2% 7% 1.2% 7%;
	background-color:#4B4B4B;
	color:#FFF;
	font-weight:bold;
}
#submit:hover{
	color:#ccffcc;
}


/*////////////////////////////////////////////////////////////////////////////////////*/
/*estimate.html*/
/*////////////////////////////////////////////////////////////////////////////////////*/
#formcheckleft,#formcheckright{
	float:left;
	margin-right:50px;
}

.formsmall{
	font-size:90%;
	letter-spacing:-1px;
}

input{
}