/*____________________________

  # web reset css
  # update 2006.12.17
  # by nakano@dotproof
  ____________________________*/


body,
div,
dl, dt, dd,
ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, code,
form, fieldset, legend, input, textarea,
p, blockquote,
th, td {
margin: 0;
padding: 0;
}

table {
border-collapse: collapse;
border-spacing: 0;
}

fieldset, img {
border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
font-style: normal;
font-weight: normal;
}

li {
list-style: none;
}

caption,
th {
text-align: left;
}

h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal;
}

q:before, q:after {
content: '';
}

abbr,
acronym {
border: 0;
font-variant: normal;
}

sup, sub {
line-height: -1px;
vertical-align: text-top;
}

sub {
vertical-align: text-bottom;
}

input, textarea, select {
font-family: inherit;
font-size: inherit;
font-weight: inherit;
}

.clearer{
clear:both;
height:1px;
font-size:1px;
}

input {
	_margin: -1px 0;
}

sup,
sub {
	vertical-align: baseline;
	position: relative;
}

sup {
	top: -4px
}

sub {
	top: 4px
}

/* ---- Text-align ---------------- */
.align_center {
text-align : center;
}

.align_left {
text-align : left;
}

.align_right {
text-align : right;
}
/* ---- /Text-align ---------------- */

/* ---- Float ---------------- */
.float_left {
float : left;
}

.float_right {
float : right;
}
/* ---- /Float ---------------- */

html {
height:100%;
}


/*____________________________

  # web font css
  # update 2006.12.17
  # by nakano@dotproof
  ____________________________*/

/**
 * 84.5% for !IE, keywords for IE to preserve user font-size adjustment
 * Percents could work for IE, but for backCompat purposes, we are using keywords.
 * x-small is for IE6/7 quirks mode.
 *
 */
body {*font-size:small;*font:x-small;
	font-family: helvetica,arial,clean,sans-serif,"ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
	font-size:80%;
}
table {font-size:inherit;font:100%;}

/**
 * 99% for safari; 100% is too large
 */
select, input, textarea {font:99% helvetica,arial,clean,sans-serif,"ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";}

/**
 * Bump up !IE to get to 13px equivalent
 */
pre, code {font:115% monospace;*font-size:100%;}

/**
 * Default line-height based on font-size rather than "computed-value"
 * see: http://www.w3.org/TR/CSS21/visudet.html#line-height
 */
body * {line-height:1.38em;}


/* layout */
body{
background:#52ADDC;
}

#wrapper{
background:#FFFFFF;
text-align:center;
/* BOXの高さが最低400px */
min-height:600px;
_height:600px;
}

#header{
background:#525151 url(../images/common/Il_logo.gif) left top no-repeat;
height:45px;
padding:0 20px;
text-align:right;
color:#FFFFFF;
}

#menu{
background:#9ED8F6;
padding:2px 20px;
text-align:right;
}

#content{
width:780px;
margin:0 auto;
padding:20px 0 30px 0;
text-align:left;
}

#footer{
color:#FFFFFF;
text-align:center;
padding:5px 0;
display:block;
position:relative;
}


/* general */

body{
color:#4C4C4C;
}

/* FireFoxでリンクに枠線が表示されることを回避 */
a{
/* ¥*/
overflow:hidden;
/* */
}

#content a{
color:#52ADDC;
text-decoration:underline;
}

#content  a:hover{
color:#F9A100;
text-decoration:none;
}

#content a.icon{
padding-left:14px;
background:url(../images/common/Icon_link.gif) no-repeat left center;
}

#header a{
color:#FFFFFF;
text-decoration:none;
}

#header a:hover{
color:#FFFFFF;
text-decoration:underline;
}

#footer a{
color:#FFFFFF;
text-decoration:none;
}

#footer a:hover{
color:#FFFFFF;
text-decoration:underline;
}

#menu a{
color:#4C4C4C;
text-decoration:none;
}

#menu a:hover{
color:#4C4C4C;
text-decoration:underline;
}

/* フォームメッセージ */

.formConfirm{
color:#FF9900;
padding:10px;
margin-bottom:15px;
font-size:120%;
border:#FF9900 1px solid;
}

.formError{
color:#FF0000;
}

/* 文字揃え */
.ta-left {
	text-align:left;
}
.ta-right {
	text-align:right;
}
.ta-center {
	text-align:center;
}

/* マージン */
.mt-5 {	margin-top:5px;}
.mt-10 {margin-top:10px;}
.mt-15 {margin-top:15px;}
.mt-20 {margin-top:20px;}

.mb-5 {margin-bottom:5px;}
.mb-10 {margin-bottom:10px;}
.mb-15 {margin-bottom:15px;}
.mb-20 {margin-bottom:20px;}
.mb-25 {margin-bottom:25px;}

.ml-20{margin-left:20px;}

/* フォームの幅 */
.short{width:15%;}

.middle{width:40%;}

.long{width:80%;}

/* ページ上部へ戻るリンク */
.pagetop{
padding-top:10px;
text-align:right;
}

#header h1 a{
width:185px;
height:45px;
position:absolute;
left:20px;
top:0px;
text-align:left;
text-indent:-99999px;
}

#header p{
padding-top:18px;
}


#footer p{
margin-bottom:0.3em;
}

/* content */

/* users */
h2{
margin-bottom:20px;
}

h3{
margin-bottom:15px;
}

h4{
font-size:120%;
font-weight:bold;
color:#FF9900;
margin:15px 0 10px 0;
padding-bottom:5px;
border-bottom:#52ADDC 1px dotted;
}

p span{
color:#FF9900;
}

ul li{
list-style-type:disc;
list-style-position:outside;
margin-left:20px;
margin-bottom:3px;
}

ol.o01 li{
list-style-type:decimal;
list-style-position:outside;
margin-left:23px;
}

ol.o02 li{
list-style-type:lower-roman;
list-style-position:outside;
margin-left:23px;
}
/* フォーム　テーブル */
table.color{
border:#CCCCCC 1px solid;
width:100%;
border-collapse:separate;
border-spacing:2px;
}

table.color th{
background:#B9E3F9;
padding:0.8em 0.8em 0.8em 2.5em;
color:#666666;
font-weight:bold;
width:170px;
_width:200px;
}

table.color th.necessary{
background:#B9E3F9 url(../images/common/Bg_necessary.gif) 1em center no-repeat;
}

table.color td{
background:#EFEFEF;
padding:0.8em;
}

table.color td span{
color:#666666;
padding-left:2em;
}

/* ボタン */
#Bt{
padding-top:15px;
text-align:center;
}

#Bt a{
text-indent:-9999px;
display:block;
margin:0 auto;
}

#Bt a.top_regist{
width:253px;
height:63px;
background:url(../images/top/Bt_regist.gif) no-repeat;
}

#Bt a.top_regist:hover{
background:url(../images/top/Bt_regist.gif) no-repeat bottom;
}

#Bt a.regist{
width:253px;
height:43px;
background:url(../images/users/Bt_regist.gif) no-repeat;
}

#Bt a.regist:hover{
background:url(../images/users/Bt_regist.gif) no-repeat bottom;
}

#Bt a.login{
width:140px;
height:43px;
background:url(../images/users/Bt_login.gif) no-repeat;
}

#Bt a.login:hover{
background:url(../images/users/Bt_login.gif) no-repeat bottom;
}

#Bt a.submit{
width:103px;
height:43px;
background:url(../images/auth/Bt_submit.gif) no-repeat;
}

#Bt a.submit:hover{
background:url(../images/auth/Bt_submit.gif) no-repeat bottom;
}

#Bt a.save{
width:103px;
height:43px;
background:url(../images/users/Bt_save.gif) no-repeat;
}

#Bt a.save:hover{
background:url(../images/users/Bt_save.gif) no-repeat bottom;
}

#Bt_confirm{
padding-top:15px;
text-align:center;
}

#Bt_box{
margin:0 auto;
width:226px;
}

#Bt_confirm #Bt_box a{
text-indent:-9999px;
display:block;
}

#Bt_confirm #Bt_box a.back{
width:103px;
height:43px;
background:url(../images/users/Bt_back.gif) no-repeat;
}

#Bt_confirm #Bt_box a.back:hover{
background:url(../images/users/Bt_back.gif) no-repeat bottom;
}

#Bt_confirm #Bt_box a.save{
width:103px;
height:43px;
background:url(../images/users/Bt_save.gif) no-repeat;
}

#Bt_confirm #Bt_box a.save:hover{
background:url(../images/users/Bt_save.gif) no-repeat bottom;
}

/* メールマガジンバックナンバー用 */
#mailmagazinebox{
width:500px;
text-align:left;
margin:0 auto;
padding:20px 10px 30px 10px;
}

/* ログインのボックス用 */
.loginbox{
width:500px;
_width:580px;
margin:0 auto;
}

.loginbox .box{
border:#CCCCCC 1px solid;
background:#F3F3F3;
padding:25px;
width:100%;
text-align:center;
}

.loginbox .box table{
border-collapse:separate;
border-spacing:2px;
margin:0 auto;
width:100%;
}

.loginbox .box table th,td{
padding:5px;
text-align:left;
}

.loginbox .box table td span{
color:#666666;
font-size:80%;
_font-size:75%;
}

/* ツール紹介用 */
.service{
width:380px;
float:left;
margin-bottom:15px;
}

.service h4{
font-size:100%;
border:none;
margin:5px 0;
padding:0;
}

.service a.thumb{
float:left;
margin-right:1em;
display:block;
width:75px;
height:75px;
_width:83px;
_height:83px;
padding:3px;
border:#CCCCCC 1px solid;
}

.service a.thumb:hover{
border:#FF9900 1px solid;
}

/* ヘルプ用 */

h3.question{
background:url(../images/top/Icon_question.gif) 15px 0px no-repeat;
padding:3px 0 5px 50px;
font-size:110%;
font-weight:bold;
}

.answer{
background:url(../images/top/Icon_answer.gif) 15px 0px no-repeat;
padding:3px 0 5px 50px;
border-bottom:#CCCCCC 1px dotted;
margin-bottom:25px;
}

.answer p{
margin-bottom:15px;
}


/* フラッシュメッセージ */

/* 外枠 */
#flash_box {
  width: 640px;
  border: 8px solid #dfd;
  background-color: white;
  -moz-border-radius: 16px;
  margin: 12px auto;
  text-align: center;
}

/* メッセージの領域 */
#flash_box p {
  margin: 8px;
}

/* メッセージ毎の色 */
#flash_box .flash_notice {
  color: green;
}
#flash_box .flash_error {
  color: red;
}
#flash_box .flash_message {
  color: orange;
}
#flash_box .flash_warning {
  color: orangered;
}

/* 画面外出す */
.out_of_screen {
  position: absolute;
  left: -9999px;
}
