@charset "utf-8";

* {
    margin:0;
    padding:0;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,label,input,textarea,p,blockquote,table,thead,tbody,tfoot,caption,th,td { 
    margin:0;
    padding:0;
}

h1, h2, h3, h4, h5, h6, p, address,ul, ol, li, dl, dt, dd, table, th, td, img, form, pre {
    font-size:100%;
}

ol, ul {
    list-style: none;
}

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

a:hover {
    color:#333;
}

img {
    border:none;
}

html {
    height:100%;
}

body {
    color:#333;
    font-size:13px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック",'MS P Gothic', sans-serif;
    line-height:1.6em;
    background:#f3f1ed;
}

#container {
    margin:0;
    padding:0;
}

.wrap {
    position:relative;
    width:960px;
    margin:0 auto;
}

#header {
    width:100%;
    height:35px;
    margin-bottom:30px;
    background:#000000;
}

#header ul#navi {
    float:right;
}

#header ul#navi li {
    display:block;
    float:left;
    width:80px;
    height:35px;
    position:relative;
}

#header ul#navi li a {
    display:block;
    height:20px;
    color:#fff;
    position:absolute;
    top:7px;
}

#header ul#navi li a:hover {
    color:#eee;
}

#left-column {
    position:absolute;
    top:0;
    left:0;
    float:left;
    width:380px;
}

#left-column h1 {
    background:url(../images/h1.gif) no-repeat;
}

#left-column h1 a {
    display:block;
    width:350px;
    height:60px;
    text-indent:-9999px;
}

#right-column {
    float:right;
    width:540px;
}

#footer {
    clear:both;
    width:100%;
    height:35px;
    margin-top:80px;
    background:#000000;
}

.pagetop {
    margin-top:20px;
    font-size:10px;
    text-align:right;
}

.pagetop a {
    color:#333;
}

.pagetop a:hover {
    color:#666;
}

h2 {
    font-size:16px;
    font-weight:normal;
}

p#concept {
    margin:40px 0;
    font:18px/1.4 serif;
    color:#555;
}

#company h2 {
    margin-bottom:5px;
    padding-left:30px;
    background:url(../images/icon_company.gif) no-repeat left top;
}

#company ul li {
    padding:8px 5px 5px;
    background:url(../images/line.gif) repeat-x top;
}

#company ul li label {
    display:block;
    float:left;
    width:80px;
}

#company ul li span {
    display:block;
    float:right;
    width:280px;
}

#services {
    margin-bottom:40px;
    padding-bottom:10px;
    background:url(../images/line.gif) repeat-x bottom;
}

#services h2 {
    margin-bottom:5px;
    padding-top:6px;
    padding-left:30px;
    background:url(../images/icon_services.gif) no-repeat left bottom;
}

#services ul {
    background:url(../images/line.gif) repeat-x top;
}

#services ul li {
    padding:10px 5px 0 6px;
    list-style:circle inside;
    line-height:1;
}

#works {
    margin-bottom:60px;
    position:relative;
}

#works h2 {
    margin-bottom:5px;
    padding-top:6px;
    padding-left:30px;
    background:url(../images/icon_works.gif) no-repeat left bottom;
}

#works #controls {
    width:100%;
    text-align:center;
    position:absolute;
    top:3px;
    left:0;
}

#works #controls #nextBtn {
    margin-left:20px;
}

#works #slider {
    min-height:600px;
    background:#fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border:1px solid #bbb;
}

#works #slider ul {
}

#works #slider li {
    width:538px;
    height:630px;
    overflow:hidden;
}

#works #slider li span.inner {
    display:block;
    padding:15px;
}

#works #slider li h3 {
    font-size:14px;
    font-weight:normal;
}

#works #slider .capture {
    margin-top:5px;
}

#works #slider .capture img {
}

#works #slider li.other span.inner {
    padding-top:30px;
}

#works #slider li.other h3 {
    margin-bottom:15px;
    padding-bottom:3px;
    font-size:16px;
    border-bottom:dotted 1px #444;
}

#works #slider li.other span.row {
    display:block;
    padding:8px 10px 5px;
}

#works #slider li.other ul {
    margin:10px 0;
}

#contact h2 {
    margin-bottom:5px;
    padding-top:6px;
    padding-left:30px;
    background:url(../images/icon_contact.gif) no-repeat left bottom;
}

#contact #form {
    min-height:400px;
    padding:25px 20px;
    background:#fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border:1px solid #bbb;
}

#contact #form p {
    margin-bottom:20px;
}

#contact #form ul li {
    padding:5px 0;
}

#contact #form li.submit {
    margin:10px 0 0;
    text-align:center;
}

#contact #form label {
    display:inline-block;
    width:120px;
    vertical-align:top;
}

#contact #form span {
    display:inline-block;
    width:370px;
}

#contact #form input.text,
#contact #form textarea {
    width:98%;
    padding:5px;
    font-size:13px;
    border:solid 1px #999;
}

#contact #form .loading img {
    margin-right:15px;
    vertical-align:middle;
}

#contact #form input.error,
#contact #form textarea.error {
    background:#ffeeee;
    border:solid 1px #ff9999;
}

#contact #form div.error {
    color:red;
}

#footer address {
    padding:7px 10px 0 0;
    text-align:right;
    color:#fff;
    font-style:normal;
    font-size:10px;
}

.clearfix:after {
    content:".";
    display:block;
    height:0px;
    line-height:0;
    clear:both;
    visibility:hidden;
}

div.wrap:after {
    content:".";
    display:block;
    height:0px;
    line-height:0;
    clear:both;
    visibility:hidden;
}

div.wrap { zoom: 1; }

li:after {
    content:".";
    display:block;
    height:0px;
    line-height:0;
    clear:both;
    visibility:hidden;
}

li { zoom: 1; }
