/* 0. reset setting */

* {
margin: 0;
padding: 0;
font-size: 12px;
}

html{
/*overflow-y:scroll;*/
overflow: scroll;
}

/* 1. base setting */

/* 1.1 structure & header elements */

body {
font-family: "Arial", "Verdana", sans-serif;
text-align: center;
}

/* 1.2 block elements */

/* 1.2.1 area */
body {
background-color: lightsteelblue;
}

div {
text-align: left;
}

p {
margin: 0 15px 15px 20px;
line-height: 20px;
}

/* 1.2.2 table */

table {
border-collapse: collapse;
border: none;
border-spacing: 0;
margin: 0 0 20px 15px;
}

th {
border-collapse: collapse;
border: none;
border-spacing: 0;
padding: 10px 20px 10px 20px;
border: 1px solid black;
font-weight: bold;
text-align: center;
}

td {
border-collapse: collapse;
border: none;
border-spacing: 0;
padding: 10px 20px 10px 20px;
border: 1px solid black;
line-height: 20px;
}

caption {
padding: 0 0 10px 20px;
text-align: left;
background-image: url(images/table.gif);
background-position: left top;
background-repeat: no-repeat;
}

/* 1.2.3 list */

ul {
margin: 20px 0 20px 30px;
list-style-type: disc;
}

li {
margin-bottom: 5px;
}

dl {
margin: 10px;
line-height: 15px;
}

dt {
padding: 5px 0 5px 10px;
}

dd {
padding: 5px 0 5px 40px;
margin: 5px 0 5px 0;
}

/* 1.2.4 heading */

h2 {
font-size: 20px;
}

h3 {
font-size:18px;
padding-bottom: 5px;
margin: 0 10px 20px 0;
border-bottom: solid 1px #9999cc;
}

h4 {
font-size: 15px;
padding: 7px;
margin: 3px 10px 20px 10px;
border-left: 10px solid #003399;
border-bottom: 1px  solid #9999cc;
}

h5 {
font-size: 13px;
font-weight: normal;
padding-left: 15px;
margin: 0 0 20px 10px;
background-image: url(images/square.gif);
background-position: left center;
background-repeat: no-repeat;
}

/* 1.2.5 address */

address {
float: left;
padding: 10px 0 20px 15px;
color: #5f5e5e;
font-style: normal;
}

/* 1.2.6 form */

form {
margin: 10px;
width: 650px;
}

legend {
padding: 10px;
margin-left: 10px;
width: 650px;
border-left: solid 10px #003399;
border-bottom: 1px  solid #9999cc;
}

fieldset {
margin-bottom: 15px;
border: none;
}

textarea {
margin: 20px 10px 10px 30px;
width: 600px;
}

/* 1.3 inline elements */

/* 1.3.1 hyperlink */

a {
text-decoration: none;
}

a:link {
color: #003399;
}

a:visited {
color: #003399;
}

a:hover {
color: #003eba;
text-decoration: underline;
}

a:active {
color: #9999cc;
}

/* 1.3.2 image */

img {
margin: 0 15px 0 15px;
}

/* 2. class setting */

/* 2.1 width */

.structure {
width: 800px;
margin: 0 auto;
}

.structure2 {
width: 800px;
margin: 0 auto;
}

.structure3 {
width: 800px;
margin: 0 auto;
}

/* 2.3 division */
div.article {
padding: 10px 10px 0 10px;
margin: 10px 20px 10px 20px;
border: solid 1px gray;
}

div.to-left {
float: left;
}

/* 2.2 paragraph */

p.to-right {
float: right;
margin-top: 5px;
}

p.for-print {
display: none;
}

/* 2.3 unordered list(ul) */

ul.menu {
margin: 0;
list-style-type: none;
}

li.menu {
margin-bottom: 0;
}

ul.sub-menu li {
padding-left: 20px;
display: block;
line-height: 24px;
text-align: left;
background-image: url(images/arrow_right_grey.png);
background-position: left center;
background-repeat: no-repeat;
list-style-type: none;
}

ul.sub-menu li.selected {
margin-bottom: 0;
background-image: url(images/arrow_down_grey.png);
background-position: left 8px;
background-repeat: no-repeat;
list-style-type: none;
}

ul.inline {
margin-top: 6px;
padding-bottom: 6px;
}

li.inline {
display: inline;
padding: 0 6px 0 12px;
background-image: url(images/bar.gif);
background-position: left top;
background-repeat: no-repeat;
}

li.inline:first-child {
background-image: none;
padding-left: 0;
}

/* 2.4 ordered list(ol) */

ol.primary {
margin-left: 40px;
list-style-type: decimal;
}

ol.primary li {
margin-top: 10px;
}
ol.secondary {
margin-left: 30px;
list-style-type: disc;
}

/* 2.5 definition list(dl) */

dl.flowchart dt {
width: 200px;
border: 1px  solid #9999cc;
}

dl.flowchart-e dt {
width: 330px;
border: 1px  solid #9999cc;
}

dl.flowchart dd {
background-image: url(images/dot_line.png);
background-position: 10px bottom;
background-repeat: no-repeat;
}

dl.flowchart-e dd {
background-image: url(images/dot_line.png);
background-position: 10px bottom;
background-repeat: no-repeat;
}

dl.flowchart dd.last {
background-image: none;
}

dl.flowchart-e dd.last {
background-image: none;
}
	
dl.flowchart ul {
margin: 5px 0 5px 0;
}

dl.flowchart-e ul {
margin: 5px 0 5px 0;
}

dl.flowchart li {
margin-bottom: 0px;
line-height: 15px;
}

dl.flowchart-e li {
margin-bottom: 0px;
line-height: 15px;
}

/* 2.6 hyperlink */

/* 2.6.1 background icon */

a.icon {
background-position: left center;
background-repeat: no-repeat;
padding: 1px 0 1px 20px;
vertical-align: middle;
}

a.icon-r {
background-position: right center;
background-repeat: no-repeat;
padding: 1px 20px 1px 0;
vertical-align: middle;
}

/* 2.6.2 language switch */

a.lang-en {
background-image: url(images/gb.gif);
}

a.lang-ja {
background-image: url(images/jp.gif);
}

/* 2.6.3 info included in footer and header */

a.inquiry {
background-image: url(images/email.png);
}

a.sitemap {
background-image: url(images/sitemap_color.png);
}

a.termofuse {
background-image: url(images/script.png);
}

a.recruit {
background-image: url(images/group.png);
}

a.access {
background-image: url(images/car.png);
}

/* 2.6.4 go to page-top */

a.page-top {
background-image: url(images/arrow_up.png);
}

p.page-top {
padding-top: 5px;
text-align: right;
}

/* 2.6.5 go to linked page */

a.go {
background-image: url(images/control_play.png);
}

a.go-arrow {
background-image: url(images/arrow_right.png);
}

/* 2.6.6 file type */

a.pdf {
background-image: url(images/page_white_acrobat.png);
}

a.link {
background-image: url(images/world_go.png);
}

/* 2.7 clear float */

.clear {
clear: both;
}

/* 2.8 span */
span.required {
margin: 0 5px 0 5px;
color: red;
}

/* 2.9 form */

input.checkbox {
margin: 0 10px 0 10px;
}

input.button {
margin: 0 8px 0 8px;
padding: 0 8px 0 8px;
height: 30px;
color: #003399;
background-color: #99ccff;
}

input.submit {
background-image: url(images/email_go.png);
background-position: 7px center;
background-repeat: no-repeat;
padding-left: 30px;
}

input.delete {
background-image: url(images/delete.png);
background-position: 7px center;
background-repeat: no-repeat;
padding-left: 30px;
}

input.search {
margin: 0 4px 0 4px;
padding: 0 4px 0 4px;
height: 21px;
background-color: #99ccff;
background-image: url(images/find.png);
background-position: center center;
background-repeat: no-repeat;
padding-left: 21px;
}

/* 2.10 image */

img.reader {
margin-top: 10px;
margin-bottom: 5px;
vertical-align: -14px;
}

/* 3. header specification */

div#header {
padding: 10px 10px 0 10px;
background-color: #ffffff;
}

div#head-top {
padding: 10px;
height: 70px;
width: 785px;
}

div#head-bottom {
border-top: 1px solid #9999cc;
border-bottom: 1px solid #9999cc;
height: 28px;
}

div#head-left {
float: left;
padding-left: 15px;
width: 300px;
height: 28px;
}

div#head-right {
float: right;
padding-right: 10px;
width: 300px;
height: 28px;
text-align: right;
}

div#search_j {
float: right;
margin-top: 40px;
width: 190px;
}

div#search_e {
float: right;
margin-top: 40px;
width: 180px;
}

/* 4. global navigator specification */

div#global-nav {
width: 800px;
height: 40px;
}

/* 4.1 unordered list(ul) */

#global-nav ul {
padding: 5px 10px 0 10px;
}

#global-nav ul li { 
float: left;
display: inline;
color: #003399;
line-height: 24px;
width: 154px;
text-align: center;
border-top: 2px solid #ffffff;
border-bottom: 2px solid #ffffff;
border-right: 2px solid #ffffff;
background-color: #ffffff;
}

/* 4.1.1 hyperlink */

#global-nav li a {
background-color: #003399;
height: 24px;
display: block;
line-height: 24px;
border: #003399 1px solid;
}

#global-nav li a:link {
color: #ffffff;
}

#global-nav li a:visited {
color: #ffffff;
}

#global-nav li a:hover {
background-color: #ffffff;
color: #003399;
text-decoration: none;
}

#global-nav li a:active {
background-color: #ffffff;
color: #003399;
}

/* 4.1 for body#home */

#home div#global-nav li a {
background-color: #ffffff;
height: 24px;
display: block;
line-height: 24px;
border: #003399 1px solid;
}

#home div#global-nav li a:link {
color: #003399;
}

#home div#global-nav li a:visited {
color: #003399;
}

#home div#global-nav li a:hover {
background-color: #003399;
color: #ffffff;
text-decoration: none;
}

#home div#global-nav li a:active {
background-color: #003399;
color: #ffffff;
}

/* 5. container specification */

div#container {
width: 800px;
padding: 10px 10px 0 10px;
background-color: #ffffff;
overflow: hidden;
}

/* 5.1 for body#home */

/* 5.1.1 division */

#home div#image-pic {
width: 800px;
height: 172px;
background-image: url(images/image_top.jpg);
background-position: center left;
background-repeat: no-repeat;
}

/* 5.1.2 paragraph(p) */

#home div#image-pic p {
padding-top: 120px;
margin-left: 20px;
font-size: 18px;
font-weight: bold;
color: #ffffff;
}

/* 5.1.3 definition list(dl) */

#home div#container dt {
font-weight:bold;
}

/* 6. breadcrumbs specification */

div#breadcrumbs {
padding: 0 0 5px 5px;
margin-bottom: 10px;
border-bottom: 1px  solid #9999cc;
}

/* 6.1 ordered list(ol) */

div#breadcrumbs ol {
display: inline;
}

div#breadcrumbs ol li {
padding: 0 5px 0 25px;
display: inline;
background-image: url(images/arrow_right_grey.png);
background-position: left center;
background-repeat: no-repeat;
}

div#breadcrumbs ol li:first-child {
background-image: none;
}

/* 7. column-title specification */

div#column-title {
padding-left: 30px;
color: #003399;
background-color: #99ccff;
line-height: 30px;
}

/* 8. subcontainer specification */

div#subcontainer {
width: 800px;
margin-top: 10px;
}

/* 8.1  for body#home */

#home #subcontainer h4 {
border: 1px solid #9999cc;
}

#home div#subcontainer {
margin-top: 0;
}

#home h4 {
margin: 3px 0 20px 0;
}

/* 9. column-left specification */

div#column-left {
float: left;
}

/* 9.1 for class structure2 and 3 */

div.structure2#column-left {
width: 140px;
}

div.structure3#column-left {
width: 180px;
}

/* 9.2 for body#home */

#home #subcontainer div#column-left {
width: 450px;
}

/* 9.3 for body#our-service */

#our-service div#column-left {
width: 410px;
}

/* 10. column-right specification */

div#column-right {
float: right;
padding-left: 20px;
border-left: 1px  solid #9999cc;
}

/* 10.1 for class structure2 and 3 */

div.structure2#column-right {
width: 630px;
}

div.structure3#column-right {
width: 590px;
}

div.structure3#column-right #text {
border: 1px solid #ffffff;
}

div.structure2#column-right #pic {
float: right;
width: 200px;
}

div.structure2#column-right #text1 {
float: left;
width: 420px;
}

div.structure2#column-right #text2 {
float: left;
width: 630px;
}

/* 10.2 for body#home */

#home div#subcontainer #column-right {
width: 330px;
border-left: none;
}

#home div#subcontainer #recruit {
border: 1px solid #ffffff;
}

/* 10.3 for body#pa */

/* 10.3.1 division */

#pa #subcontainer #profile #vcard {
padding-left: 25px;
background-image: url(images/vcard.png);
background-position: left top;
background-repeat: no-repeat;
}

/* 10.3.2 definition list */

#pa div#container dt {
float: left;
margin-right: -60px;
width: 70px;
}

#pa div#container dd {
margin-left: 60px;
}

/* 10.4 for body#logo */

/* 10.4.1 division */

#logo #subcontainer #column-right #text {
float: right;
width: 500px;
}

#logo #subcontainer #column-right #pic {
float: left;
width: 120px;
}

/* 10.6 for body#our-service */

#our-service div#column-right {
border: none;
width: 365px;
}

/* 11. column-main specification */

div#column-main {
margin-left: 10px;
}

/* 11.1 for body#our-termofuse */

/* 11.1.1 image(img) */

#our-termofuse div#column-main img {
margin-top: 20px;
}

/* 11.2 for body#inquiry */

#inquiry div#container table {
margin: 10px 0 10px 25px;
}

#inquiry div#container th {
width: 170px;
border: none;
border-bottom: 1px solid #9999cc;
}

#inquiry div#container td {
width: 470px;
border: none;
border-bottom: 1px solid #9999cc;
}

div#form-button {
margin: 10px 0 0 20px;
}

/* 11.3 for body#sitemap */

#sitemap div#column-main ul {
margin: 0 0 10px 20px;
}

#sitemap h4 a {
font-size: 15px;
}

/* 12. footer specification */

div#footer {
width: 800px;
height: 60px;
padding: 15px 10px 15px 10px;
background-color: #ffffff;
}

div#subfooter {
padding-left: 15px;
border-top: 1px solid #9999cc;
border-bottom: 1px solid #9999cc;
height: 28px;
}

/* 13. Only For IE6 */

* html li.first-child {
background-image: none;
padding-left: 0;
}

* html div#container {
width: 805px
}

* html div#footer {
width: 805px
}

* html body#ip div#column-left {
width: 180px;
}

* html body#ip div#column-right {
width: 590px;
}

* html body#patent div#column-left {
width: 180px;
}

* html body#patent div#column-right {
width: 590px;
}

* html body#utility div#column-right {
width: 590px;
}

* html body#utility div#column-left {
width: 180px;
}

* html body#design div#column-right {
width: 590px;
}

* html body#design div#column-left {
width: 180px;
}

* html body#trademark div#column-right {
width: 590px;
}

* html body#trademark div#column-left {
width: 180px;
}

* html body#attorney div#column-right {
width: 590px;
}

* html body#attorney div#column-left {
width: 180px;
}

* html div.to-left {
float: left;
}

* html div#search_j {
float: right;
width: 175px;
overflow: hidden;
margin-top: 30px
}

* html div#search_e {
float: right;
width: 185px;
overflow: hidden;
margin-top: 30px;
}

/* 14. Only For Safari */

html:not(:only-child:only-child) div#search_j {
float: right;
width: 250px;
}

html:not(:only-child:only-child) div#search_e {
float: right;
width: 197px;
}

