@charset "utf-8";

/* reset
----------------------------------- */

* {
	margin:0px;
	padding:0px;
}

body,
h1, h2, h3, h4, h5, h6,
p, address, blockquote, pre, div,
dl, ol, ul, li,
form, input, select, textarea, fieldset, legend { 
	margin: 0; 
	padding: 0; 
}

h1, h2, h3, h4, h5, h6,
p, address, blockquote, pre, div,
dl, ol, ul,
th { 
	font-weight: normal;
	font-style: normal; 
}

strong { 
	font-weight:normal; 
	font-style: normal; 
}

img {
	border: none;
}

hr {
	display:none;
}

/* body
----------------------------------- */

body {
	background:url(../img/bg_body.jpg) repeat-y top center;
	background-color:#F1F1F1;
	margin:0;
	padding:0;
	font-family:"メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", Osaka, sans-serif;
	font-size:12px;
	line-height:150%;
	color:#333;
}

a         { color:#2580C9; text-decoration: none;}
a:link    { color:#2580C9; text-decoration: none;}
a:visited { color:#2580C9; }

/*
a:hover   {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	-moz-opacity:0.70;
	text-decoration:underline;
}
*/

input, select, textarea { 
	font-family: Verdana, Arial, sans-serif;
	font-size:12px;	
	color:#666;
}

/* class
----------------------------------- */

.clear {
	display:block;
	font-size: 0;
	line-height: 0;
	clear: both;
	height: 0px;
	visibility: hidden;
}

.r { float:right; }
.l { float:left; }

.red { color:#cc0000; }

.mt5 { margin-top:5px; }
.ml5 { margin-left:5px; }
.mr5 { margin-right:5px; }
.mb5 { margin-bottom:5px; }

.mt10 { margin-top:10px; }
.ml10 { margin-left:10px; }
.mr10 { margin-right:10px; }
.mb10 { margin-botTom:10px; }

.mt15 { margin-top:15px; }
.ml15 { margin-left:15px; }
.mr15 { margin-right:15px; }
.mb15 { margin-botTom:15px; }

.mt20 { margin-top:20px; }
.ml20 { margin-left:20px; }
.mr20 { margin-right:20px; }
.mb20 { margin-botTom:20px; }

.mt25 { margin-top:25px; }
.ml25 { margin-left:25px; }
.mr25 { margin-right:25px; }
.mb25 { margin-botTom:25px; }

.mt30 { margin-top:30px; }
.ml30 { margin-left:30px; }
.mr30 { margin-right:30px; }
.mb30 { margin-bottom:30px; }

.mt40 { margin-top:40px; }
.ml40 { margin-left:40px; }
.mr40 { margin-right:40px; }
.mb40 { margin-bottom:40px; }

.mt50 { margin-top:50px; }
.ml50 { margin-left:50px; }
.mr50 { margin-right:50px; }
.mb50 { margin-bottom:50px; }

/* headline
----------------------------------- */

h1 { /*ヘッダ内ロゴ*/
}

h2 {
background:url(../img/bg_h2.jpg) no-repeat;
width:710px;
height:50px;
display:block;
text-align:left;
margin:0 auto 20px;
color:#fff;
font-size:18px;
font-weight:bold;
text-indent:18px;
line-height:52px;
}

h3 {
background:url(../img/bg_h3.jpg) no-repeat bottom center;
width:710px;
height:34px;
display:block;
text-align:left;
margin:0 auto 10px;
color:#E26D9A;
font-size:16px;
font-weight:bold;
text-indent:20px;
line-height:36px;
}

h4 {
background:url(../img/bg_h4.jpg) no-repeat;
width:350px;
height:32px;
display:block;
text-align:left;
margin:0 auto 10px;
color:#333;
font-size:16px;
font-weight:bold;
text-indent:0px;
line-height:32px;
}

/* layout
----------------------------------- */

#all {
background:#F1F1F1;
width:990px;
position:relative;
margin:0 auto;
text-align:center;
}

/* head
----------------------------------- */

#head {
background:url(../img/bg_head.jpg) no-repeat top center;
width:990px;
height:90px;
position:relative;
margin:0 auto 5px;
}

#head h1 {
color:#333333;
font-size:10px;
letter-spacing:1px;
position:absolute;
top:9px;
left:15px;
}

#head a.logo {
width:328px;
height:55px;
display:block;
position:absolute;
top:22px;
left:14px;
}

#head a.logo:hover img {
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
-moz-opacity:0.70;
}

/* main
----------------------------------- */

#main {
width:990px;
position:relative;
margin:0 auto 30px;
text-align:center;
}

/* side
----------------------------------- */

#side {
background:url(../img/bg_side.jpg) no-repeat top center;
width:210px;
height:470px;
float:left;
position:relative;
text-align:center;
padding:15px;
}

#side ul {
margin:0;
padding:0;
}

#side ul li {
margin:0;
padding:0;
list-style:none;
}

#side ul li img {
float:left;
}

#side div {
margin:20px 0 0;
padding:93px 10px 0 10px;
}

#side a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}

#side li a:hover img.none {
opacity:1.0;
filter: alpha(opacity=100);
-ms-filter: "alpha(opacity=100)";
-moz-opacity:1.00;
}

/* contents
----------------------------------- */

#contents {
background:url(../img/bg_contents.jpg) repeat-y top center;
width:740px;
float:right;
position:relative;
text-align:center;
}

#contents_top {
background:url(../img/bg_contents_top.jpg) no-repeat top center;
padding-top:15px;
}

#contents_bottom {
background:url(../img/bg_contents_bottom.jpg) no-repeat bottom center;
padding-bottom:15px;
}

/* key
----------------------------------- */

#key {
background:url(../img/bg_contents_bottom.jpg) no-repeat bottom center;
width:710px;
height:470px;
padding:0px 15px 15px;
border-bottom:10px solid #F1F1F1;
}

#key img {
margin-left:15px;
}

/* menu
----------------------------------- */

#menu {
background:#F1F1F1;
width:740px;
height:222px;
}

#menu ul {
margin:0;
padding:0;
}

#menu ul li {
background:url(../img/bg_menu.jpg) no-repeat top center;
width:240px;
height:212px;
float:left;
margin:0 10px 0 0;
padding:0;
list-style:none;
}

#menu ul li a {
width:240px;
height:212px;
display:block;
position:relative;
}

#menu ul li a img {
position:absolute;
top:15px;
left:15px;
}

#menu ul li a p {
color:#000;
font-size:15px;
position:absolute;
top:172px;
left:35px;
}

#menu ul li a:hover img {
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
-moz-opacity:0.70;
}

#menu ul li.menu03 {
margin:0 0 0 0;
}

/* news
----------------------------------- */

#news {
background:url(../img/bg_news.jpg) no-repeat top center;
width:690px;
padding:55px 25px 10px;
position:relative;
}

#news p {
color:#E36E9B;
font-size:16px;
font-weight:bold;
position:absolute;
top:25px;
left:30px;
}

#news dl {
width:690px;
border-bottom:1px dotted #CCCCCC;
color:#000;
line-height:18px;
}

#news dl dt {
width:80px;
float:left;
text-align:left;
border-top:1px dotted #CCCCCC;
padding:11px 0;
}

#news dl dd {
width:610px;
float:left;
text-align:left;
border-top:1px dotted #CCCCCC;
padding:11px 0;
}

#news dl dd a {
color:#000;
text-decoration:underline;
}

/* foot
----------------------------------- */

#foot {
background:url(../img/bg_foot.jpg) no-repeat top center;
width:990px;
height:85px;
margin:0 auto;
position:relative;
}

#foot a {
position:absolute;
top:-21px;
left:903px;
}

#foot p {
position:absolute;
top:29px;
left:30px;
}

#foot span {
font-size:10px;
position:absolute;
top:48px;
left:30px;
}

#foot a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}



/* company
----------------------------------- */

#company {
padding-bottom:50px;
}

#company p {
text-align:left;
line-height:22px;
margin:15px 25px 20px 25px;
}

#company table {
background:#CCCCCC;
width:690px;
margin:15px 25px 30px;
}

#company table th {
background:#FFDDEB;
text-align:left;
padding:10px;
font-weight:bold;
}

#company table td {
background:#fff;
text-align:left;
padding:10px;
}

#company a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}

/* business
----------------------------------- */

#business {
padding-bottom:50px;
}

#business img.cap {
float:left;
border:1px solid #ccc;
margin:15px 0 30px 25px;
}

#business p {
float:left;
text-align:left;
line-height:24px;
letter-spacing:0px;
margin:10px 0 30px 25px;
}

#business p span {
width:431px;
display:block;
padding:10px 15px;
margin:-10px 0;
border:1px solid #E36E9B;
}

#business strong {
color:#000;
font-weight:bold;
}

#business div {
width:431px;
display:block;
padding:10px 15px;
float:right;
text-align:left;
margin:-10px 25px 30px 0;
border:1px solid #E36E9B;
}

#business div ul {
margin:10px 0 0 0;
padding:0;
}

#business div ul li {
width:180px;
float:left;
margin:0;
padding:0;
list-style:none;
}

#business div ul li:last-child {
width:250px;
}

#business a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}

/* access
----------------------------------- */

#access {
padding-bottom:50px;
}

#access p {
text-align:left;
line-height:22px;
margin:15px 25px 30px 25px;
}

#access a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}

/* form
----------------------------------- */

#form {
padding-bottom:50px;
}

#form p {
text-align:left;
line-height:22px;
margin:15px 25px 20px 25px;
}

#form p span {
color:#cc0000;
}

#form table {
background:#CCCCCC;
width:690px;
margin:15px 25px 20px;
}

#form table th {
background:#FFDDEB;
text-align:left;
padding:10px;
font-weight:bold;
}

#form table th span {
color:#cc0000;
}

#form table td {
background:#fff;
text-align:left;
padding:10px;
}

#form table td span {
color:#cc0000;
}

/* recruit
----------------------------------- */

#recruit {
padding-bottom:50px;
}

#recruit table {
background:#CCCCCC;
width:690px;
margin:15px 25px 20px;
}

#recruit table th {
background:#FFDDEB;
text-align:left;
padding:10px;
font-weight:bold;
}

#recruit table td {
background:#fff;
text-align:left;
padding:10px;
}

#recruit a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}

/* policy
----------------------------------- */

#policy {
padding-bottom:50px;
}

#policy p {
text-align:left;
line-height:22px;
margin:15px 25px 30px 25px;
}

#policy a:hover img {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
-moz-opacity:0.80;
}


