@charset "UTF-8";

html {
	overflow-y: scroll;
}


body, th, td, textarea, input, select {
	font-size: small;
	line-height: 120%;
}

body {
	margin: 0px;
	font-family: 'ＭＳ Ｐゴシック',sans-serif;
}

.fontsize_small {
	font-size: 80%;
	line-height: 130%;
}

.fontsize_large {
	font-size: 130%;
	line-height: 150%;
}

.fontsize_medium, .fontsize_large th, .fontsize_large td, .fontsize_large textarea, .fontsize_large input, .fontsize_large select, .fontsize_small th, .fontsize_small td, .fontsize_small textarea, .fontsize_small input, .fontsize_small select {
	font-size: 100%;
	line-height: 120%;
}

img {
	border: 0px;
}

a {
	color: #0000ff;
}

a:hover {
	color: #de2626;
}

em {
	font-style: normal;
	color: #cc0000;
}

dl, ul, ol {
	margin: 0px;
	padding: 0px;
}

ul,
ul li {
	list-style: none;
}

p {
	margin: 0px 0px 1em;
	line-height: 130%;
}

p.caution {
	margin-left: 1.1em;
}

p.caution:before {
	float: left;
	content: "※";
	color: #ff0000;
	margin-left: -1.1em;
}

p.note {
	font-size: 75%;
}

.table + p.note {
	margin-top: -15px;
}

p + p.note {
	margin-top: -10px;
}

.table p + p.note {
	margin-top: 0px;
}

div.dotline {
	margin-bottom: 1em;
	height: 1px;
	background: url(../images/dotline_horizon.gif) repeat-x ;
}

* html div.dotline {
	margin-bottom: 0px;
}

h1 {
	margin: 0px;
	padding: 0px;
}

h2 {
	margin: 0px 0px 15px;
	padding: 4px 5px;
	font-size: 120%;
	background: url(../images/h2_bg.gif) repeat-x bottom left #ededed;
	border: 1px solid #d2d2d2;
}

h2 span {
	display: block;
	margin: -2px 0px;
	padding: 3px 0px 1px 15px;
	background: url(../images/h2_icon.gif) no-repeat left top;
	line-height: 1.4;
}

h2 a {
	display: block;
	padding-left: 15px;
	color: #000000;
	text-decoration: none;
	background: url(../images/link_icon2.gif) no-repeat left center;
	line-height: 1.4;
	zoom: 1;
}

p+h2, ul+h2, ol+h2, dl+h2, .totop+h2 {
	margin-top: 30px;
}

h3 {
	position: relative;
	margin: 0px 0px 11px;
	padding: 7px 10px 10px;
	font-size: 100%;
	background: url(../images/h3_bg.gif) repeat-x bottom left;
	zoom: 1;
}

h3 span {
	position: absolute;
	right: 5px;
	top: 4px;
}

p+h3, ul+h3, ol+h3, dl+h3, .totop+h3 {
	margin-top: 30px;
}


h4 {
	margin: 0px 0px 15px;
	padding: 3px 5px;
	background-color: #eeeeee;
	border: 1px solid #dcdcdc;
	font-size: 90%;
}

h4 a {
	padding-left: 15px;
	background: url(../images/link_icon2.gif) no-repeat left 1px;
	zoom: 1;
}

p+h4, ul+h4, ol+h4, dl+h4 {
	margin-top: 20px;
}

.column_border > h4 {
	border-left: 0px;
	border-right: 0px;
	border-top: 0px;
}

h5 {
	margin: 0px 0px 10px 1.3em;
	font-size: 90%;
}

h5:before {
	float: left;
	content: "■";
	margin-left: -1.3em;
}

.clear {
	clear: both;
}

.blankicon {
	position: relative;
	display: inline-block;
	width: 15px;
	height: 10px;
	top: 1px;
	margin: 0px 3px;
	background: url(../images/icon_blank.gif) no-repeat;
}

ul.list {
	margin: 0px 0px 20px;
	list-style: disc;
}

ul.list li {
	margin: 0px 0px 1em 30px;
	list-style: disc;
}


ul.link {
	margin-bottom: 1em;
}

ul.link li,
a.link {
	padding-left: 13px;
	margin-bottom: 0.7em;
	background: url("../images/link_icon.gif") no-repeat 0px 4px;
}

ul.link_float,
ul.list_fix {
	list-style: none;
	margin-left: -15px;
	margin-bottom: 20px;
	overflow: hidden;
	zoom: 1;
}

ul.link_float li,
ul.list_fix li {
	float: left;
	display: inline;
	margin-left: 15px;
	margin-bottom: 0.7em;
	white-space: nowrap;
	padding-left: 13px;
	background: url("../images/link_icon.gif") no-repeat 0px 4px;
}

ul.imagelist,
ul.image_text_list {
	margin-left: -10px;
	margin-bottom: 20px;
	overflow: hidden;
	zoom: 1;
}
ul#rosenzu { margin-left: -8px; }

ul.imagelist li,
ul.image_text_list li {
	display: inline;
	margin-left: 10px;
}
ul.image_text_list li {
	float: left;
	width: 245px;
	text-align: center;
}
ul#rosenzu li {
	width: 200px;
	margin-left: 8px;
}
ul#rosenzu li.end {
	width: 129px;
	margin-left: 9px;
}

ul.imagelist li img {
	display: inline;
	vertical-align: top;
	margin-bottom: 10px;
}

.addcaption img { margin-bottom: 4px; }

ol.list {
	margin: 0px 0px 20px;
}

ol.list li {
	margin: 0px 0px 5px 30px;
}

.pagenavi {
	margin-bottom: 20px;
	padding: 10px 10px 3px;
	border: 1px solid #bbbbbb;
	background-color: #f8f8f8;
	zoom: 1;
}

h2 + .pagenavi {
	margin-top: -15px;
	border-top: 0px;
}



.pagenavi ul {
	margin-left: -12px;
	overflow: hidden;
	zoom: 1;
}

* html .pagenavi ul {
	margin-bottom: 0.7em;
}

.pagenavi ul li {
	float: left;
	display: inline;
	margin-left: 12px;
	margin-bottom: 0.7em;
	white-space: nowrap;
	padding-left: 13px;
	background: url("../images/pagenavi_icon.gif") no-repeat 0px 4px;
}

.floatimage {
	float: right;
	margin: 0px 0px 10px 10px;
}

.floatimagebox {
	margin-bottom: 15px;
	overflow: hidden;
	zoom: 1;
}

.floatimagebox img.floatimage {
	float: left;
	margin: 0px 10px 0px 0px;
}

.centerimage {
	display: block;
	margin: 0px auto 15px;
}

.borderbox {
	margin-bottom: 30px;
	padding: 13px 10px 10px;
	border: 1px solid #c9c9c9;
}

.borderbox > :last-child {
	margin-bottom: 0px !important;
}

.borderbox.colorbox {
	background-color: #fcf8ec;
}

.redborderbox {
	margin-bottom: 30px;
	padding: 7px 10px 0px !important;
	border: 1px solid #f1463b;
}




h2 + .borderbox,
#tabs + .borderbox {
	border-top: 0;
}

h4 + .borderbox {
	border-top: 0;
	margin-top: -15px;
}

.box {
	padding: 13px 10px 10px;
}

h3 + .box,
h4 + .box {
	padding-top: 0px;
}

.columns {
	margin-bottom: 30px;
	overflow: hidden;
	zoom: 1;
}

.column_left {
	float: left;
}

.column_right {
	float: right;
}

#normal .column2,
#leftmenu .column2,
#leftmenu_rightbanner .column2,
#rightbanner .column2 {
	margin-left: -15px;
	overflow: hidden;
	zoom: 1;
}

#leftmenu_rightbanner .column2,
#rightbanner .borderbox .column2 {
	margin-left: -10px;
}

#normal .column2,
#leftmenu .column2 {
	margin-left: -16px;
}

#normal .column2 .column,
#leftmenu .column2 .column,
#rightbanner .column2 .column,
#leftmenu_rightbanner .column2 .column {
	float: left;
	display: inline;
	width: 352px;
	margin-left: 15px;
	margin-bottom: 10px;
}

#leftmenu_rightbanner .column2 .column {
	width: 253px;
	margin-left: 10px;
	margin-bottom: 0;
}

#normal .column2 .column {
	width: 472px;
	margin-left: 16px;
}

#func { margin-bottom: 0; }

#rightbanner .borderbox .column2 .column {
	width: 344px;
	margin-left: 10px;
}

#leftmenu .column2 .column {
	width: 370px;
	margin-left: 16px;
}

.column_border {
	border: 1px solid #c9c9c9;
}

#rightbanner .column2 .column_border {
	width: 342px;
}

#rightbanner .borderbox .column2 .column_border {
	width: 342px;
}


dl.info_list {
	margin-left: 170px;
}

dl.info_list dt {
	clear: left;
	float: left;
	display: inline;
	width: 4.5em;
	min-height: 21px;
	margin-top: -3px;
	margin-left: -170px;
	padding-top: 3px;
	padding-left: 170px;
}

dl.info_list dt.service { background: url(../../info/images/icon01.gif) no-repeat top left; }
dl.info_list dt.update { background: url(../../info/images/icon02.gif) no-repeat top left; }
dl.info_list dt.support { background: url(../../info/images/icon03.gif) no-repeat top left; }
dl.info_list dt.rail { background: url(../../info/images/icon04.gif) no-repeat top left; }
dl.info_list dt.other { background: url(../../info/images/icon05.gif) no-repeat top left; }

dl.info_list dd {
	margin-left: 5em;
	margin-bottom: 1em;
	line-height: 120%;
}

dl.date_list {
	overflow: hidden;
	zoom: 1;
}

dl.date_list dt {
	clear: left;
	float: left;
	width: 8em;
	color: #7d7d7d;
}

* html dl.date_list dt {
	width: 7em;
}

dl.date_list dd {
	margin-left: 8em;
	margin-bottom: 1em;
	line-height: 120%;
}

* html dl.date_list dd {
	margin-left: 7em;
}

dl.link {
	margin-bottom: 20px;
}

dl.link dt {
	clear: left;
	float: left;
	width: 14em;
	padding-left: 13px;
	padding-right: 5px;
	margin-bottom: 0.7em;
	background: url("../images/link_icon.gif") no-repeat 0px 4px;
	border-right: 1px solid #dcdcdc;
}

#leftmenu_rightbanner dl.link dt {
	width: 152px;
}

dl.link dd {
	margin-left: 16em;
	margin-bottom: 0.7em;
}

#leftmenu_rightbanner dl.link dd {
	margin-left: 178px;
}

dl.list {
	margin-bottom: 20px;
}

dl.list dt {
	margin: 0px 0px 5px;
	padding: 0px 0px 3px;
	font-weight: bold;
	border-bottom: 1px solid #666666;
}

dl.list dd {
	margin: 0px;
}


dl.history {
	margin-bottom: 20px;
}

dl.history dt {
	clear: left;
	float: left;
	width: 4em;
	margin-bottom: 0.7em;
}

dl.history dd {
	margin-left: 4.5em;
	margin-bottom: 0.7em;
	padding-left: 10px;
	border-left: 1px solid #dcdcdc;
}




.banner {
	overflow: hidden;
	zoom: 1;
}

.banner li {
	float: left;
	display: inline;
	margin-bottom: 10px;
}

.banner li a {
	display: block;
}

.banner li a img {
	display: block;
}

.banner li.valueupps {
	position: relative;
	border: 1px solid #aaa;
	padding: 10px 10px 10px 86px;
	color: #333;
}

.banner li.valueupps img {
	position: absolute;
	top: 10px;
	left: 15px;
}

#tabs {
	height: 41px;
	background: url(../images/line_horizon.gif) repeat-x bottom left;
	overflow: hidden;
	zoom: 1;
}

#tabs.service {
	height: 40px;
	padding-top: 28px;
	padding-left: 10px;
	background: url(../../service/images/tab_bg.gif) repeat-x bottom left;
	border-bottom: 4px solid #4d75d1;
}

#tabs.border_red {
	border-bottom: 4px solid #f1463b;
}

#tabs li {
	float: left;
	height: 41px;
	overflow: hidden;
}

#tabs.service li {
	height: 40px;
}

#tabs.service li:first-child {
	margin-right: 21px;
}

#tabs li a {
	height: 41px;
	overflow: hidden;
}

#tabs.service li a {
	height: 40px;
}

#tabs li a.tab_on img {
	margin-top: -41px;
}

#tabs.service li a.tab_on img {
	margin-top: -40px;
}



.contactbox {
	border: 1px solid #f1463b;
	margin-bottom: 20px;
}

.contactbox .columns {
	margin-bottom: 5px;
}

.contactbox .dotline {
	margin-left: 10px;
	margin-right: 10px;
}

.contactbox img {
	display: block;
	margin-bottom: 5px;
}
.contactbox p {
	margin-bottom: 5px;
}

.contactbox .contact_photo {
	float: left;
	display: inline;
	margin-left: 10px;
}

#leftmenu_rightbanner .contactbox .contact_photo {
	width: 110px;
}

.contactbox .contact_lead {
	float: left;
	display: inline;
	width: 135px;
	margin-left: 10px;
}

#leftmenu_rightbanner .contactbox .contact_lead {
	width: 380px;
	margin-bottom: 5px;
}

.contactbox .contact_tel {
	float: left;
	display: inline;
	width: 195px;
	margin-left: 15px;
}

#leftmenu_rightbanner .contactbox .contact_tel {
	margin-left: 10px;
}

.contactbox .contact_form {
	float: right;
	display: inline;
	width: 190px;
	margin-right: 10px;
}

#leftmenu_rightbanner .contact_form {
	width: 168px;
}

#leftmenu_rightbanner .contact_form img {
	margin-bottom: 6px;
}

.contactbox .contact_mes {
	float: left;
	display: inline;
	width: 245px;
	margin-left: 10px;
}

.contactbox .contact_button {
	float: right;
	display: inline;
	margin-right: 10px;
	margin-bottom: 10px;
}

p+.contactbox, ul+h3.contactbox ol+.contactbox, dl+.contactbox, .totop+.contactbox {
	margin-top: 30px;
}

.table {
	width: 100%;
	border-collapse: collapse;
	margin: 0px 0px 20px;
	empty-cells: show;
	border-bottom: 1px solid #e0e0e0;
}

.table th {
	padding: 6px 8px;
	line-height: 130%;
	text-align: center;
	vertical-align: middle;
}

.table thead th {
	border-right: 1px solid #c0c0c0;
	border-bottom: 2px solid #c0c0c0;
	background-color: #e0e0e0;
}

.table tbody th {
	font-weight: normal;
	border: 1px solid #e0e0e0;
	border-right: 2px solid #e0e0e0;
	background-color: #f9f9f9;
}
.table tbody th.head { border-right: 1px solid #e0e0e0; }

.table td {
	padding: 6px 8px;
	text-align: left;
	line-height: 130%;
	vertical-align: middle;
	border: 1px solid #e0e0e0;
}

.table .nowrap {
	white-space: nowrap;
}

table.price th,
table.price td {
	width: 33%;
}

table.pricelist td {
	width: 25%;
}

.col2 {
	width: 100%;
	margin-bottom: 20px;
	overflow: hidden;
}

.col2 .col_left {
	float: left;
	width: 373px;
	margin-right: 10px;
}

.col2 .col_right {
	float: right;
	width: 373px;
}

#mobile_func .col_left,
#ekimo_func .col_left {
	width: 170px;
	margin-right: 20px;
}

#ekimo_func .col_right {
	width: 566px;
}
#mobile_func .col_right {
	width: 326px;
}

.textright {
	text-align: right !important;
}

.textcenter {
	text-align: center !important;
}

.table p {
	margin-bottom: 0px;
}

.notes {
	color: #f00;
}

.nomgnbtm {
	margin-bottom: 0 !important;
}

.vmiddle {
	vertical-align: middle;
}

#flow {
	width: 100%;
	margin-bottom: 30px;
	background: transparent url(../../contact/images/bg_flow01.gif) no-repeat left bottom;
}

#flow div {
	width: 100%;
	background: transparent url(../../contact/images/bg_flow02.gif) no-repeat left center;
	overflow: hidden;
}

#flow dl {
	float: left;
	width: 230px;
	margin-right: 33px;
}
#flow dl.end {
	margin-right: 0;
}

#flow dl dt {
	padding: 3px 4px 3px;
	background-color: #d3d3d3;
	font-weight: bold;
	text-align: center;
}

#flow dl dd {
	margin: 0;
	padding: 10px 0px 20px;
}

#flow dl dd p {
	margin-right: 15px;
	margin-left: 15px;
}

#flow dl dd p.head {
	margin-right: 1px;
	margin-left: 1px;
}

.vline {
	background: transparent url(../images/vline.gif) repeat-y left top;
}

.description {
	font-weight: normal;
}

.layoutbox {
	overflow: hidden;
}

.white { color: #fff; }

.dblue { color: #003399; }

dl.contact_list {
	width: 350px;
	margin: 30px 10px 0 10px;
	overflow: hidden;
}

dl.contact_list dt {
	clear: both;
	float: left;
	width: 44px;
	margin: 0 0 10px 0;
	padding: 0;
}
dl.contact_list dt.tel {
	margin-top: 4px;
}

dl.contact_list dd {
	width: auto;
	margin: 0 0 10px 54px;
	padding: 0;
	line-height: 1.4;
}

dl.contact_list dd .telnum {
	color: #338ae7;
	font-size: 200%;
	font-weight: bold;
	line-height: 1.0;
}


/* sitemap */

#sitemap #contents h2 { margin-top: 40px; }
#sitemap #contents h2.start { margin-top: 0; }

#sitemap #contents h3 {
	margin: 20px 0 0 10px;
	padding: 0 0 0 13px;
	background: transparent url(../images/link_icon.gif) no-repeat 0px 4px;
	font-size: 108%;
	line-height: 1.4;
	zoom: 1;
}
#sitemap #contents h3 a {color: #039; }

#sitemap #contents ul {
	width: 100%;
	margin-top: 4px;
	overflow: hidden;
}

#sitemap #contents ul li {
	display: inline;
	float: left;
	width: 207px;
	margin: 12px 0 0 20px;
	padding: 0 0 0 13px;
	background: transparent url(../images/link_icon5.gif) no-repeat 0px 0.2em;
	zoom: 1;
}

#sitemap #contents .dotline {
	margin: 27px 0 0 10px;
	padding: 0px;
}

#sitemap #contents p {
	margin: 12px 0 0 20px;
	padding: 0 0 0 13px;
	background: transparent url(../images/link_icon5.gif) no-repeat 0px 0.2em;
	zoom: 1;
}

#sitemap #contents .totop { margin-top: 40px; }


/* wallpaper */

#wallpaper .painter {
	position: relative;
	margin-bottom: 30px;
	padding: 13px 600px 0px 10px;
	border: 2px solid #c9c9c9;
	zoom: 1;
}

#wallpaper .painter .biography {
	position: absolute;
	right: 10px;
	bottom: 13px;
	width: 560px;
	padding: 13px 10px 10px;
	background: #EEEEEE;
	line-height: 150%;
}

#wallpaper .painter .biography > :last-child {
	margin-bottom: 0px !important;
}

#wallpaper .column2 {
	margin-left: -16px;
	overflow: hidden;
	zoom: 1;
}

#wallpaper .column2 .column {
	float: left;
	display: inline;
	width: 472px;
	margin-left: 16px;
	margin-bottom: 10px;
}

#wallpaper .column2 .column .wallpaper {
	/*
	padding-left: 76px;
	padding-right: 76px;
	*/
	padding-left: 86px;
	padding-right: 86px;
}

#wallpaper .column2 .column .wallpaper p.thumbnail {
	/*
	margin-left: -76px;
	margin-right: -76px;
	*/
	margin-left: -86px;
	margin-right: -86px;
	text-align: center;
}
