@charset "UTF-8";

/* M2 SYSTEM CSS 2009.1.29 ver 1.00
 -------------------------------------------------------------------
                 ★印 のある項目は サイトごとに設定を考慮すること
 -------------------------------------------------------------------  */


@page {
   size:    21.0cm 29.7cm;
   margin:  0.5cm;
}
@media print {
  body{ font-size: 9pt; }
}
@media screen {
  body{ font-size: 9pt; }
}

html {
  font-size: 62.5%;   /* 基本 10px サイトにより変更 ★ */
  overflow-y:scroll;
}
/* overflow-y:scroll はFirefoxで縦スクロールバーを絶対に表示するための
   記述。コンテンツが縦スクロールの必要なく収まった場合に、Firefoxは
   スクロールバーを表示しないため、コンテンツを真ん中に配置している場合
   などに縦スクロールのありなしで表示位置にズレが生じる。
   これを防ぐ。このプロパティはCSS レベル 2.1としては不正。
   CSS レベル 3ならValid。
   font-size: はこの指定が10px指定。(12px なら 75%) 各セレクタのプロパティで
   1,2em なら 12px; の指定となる

*/




/* --- reset --- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
  margin:0;
  padding:0;
  outline-width: 0;  /* firefox safari opera のリンク線消し好みの問題 ★ */
} 
table {
  border-collapse:collapse;
  border-spacing:0;
}
fieldset,img { border:0; }

/* address,caption,cite,code,dfn,em,strong,th,var {  ★ */
address,caption,th {
  font-style:normal;   
  font-weight:normal;   
}
ol,ul { list-style:none; } 
caption,th { text-align:left; }
q:before,q:after { content:''; } 
abbr,acronym { border:0; }

/* フォントを変更する場合は それぞれ指定すること  ★ */
h1,h2,h3,h4,h5,h6 {  
  font-size:1em;   
  font-weight:normal;   
}

a:focus { outline:none } /* firefox link outline disable */


body {
  overflow:          visible;
  background-color:  #fff;       /* 背景色 ★ */
/* background:       white url() ;  ★ */
  color:             #666666;     /* 文字色 ★ */
  font-size:         1em;         /* ベースフォントサイズ ★ */
  text-align:        center;     /* ★ */
}

  body,input,textarea{
    font-family:"ＭＳ Ｐゴシック","Hiragino Kaku Gothic Pro","Osaka",sans-serif;
  }

  /* for IE7 */
    *+html body,input,textarea {
    font-family:'メイリオ', 'ＭＳ Ｐゴシック';
  }
  
  /* for IE6 */
    * html body,input,textarea {
    font-family:'ＭＳ Ｐゴシック';
  }
  /* IEはfont-familyに欧文やsans-serifを指定すると
     font-sizeが正しくレンダリングされない らしい */


/*  headline font size
h1 { font-size: 2.em; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.4em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1em; }   ★ */


/* --A-- */
a {
  cursor:pointer;
  text-decoration:none;
}
a:hover {
  text-decoration:underline;
}

/* --FORM-- */
fieldset {
  margin-bottom:1em;
  padding:0 1em 1em 1em;
  border:1px solid #ccc;
}

input, textarea {
  line-height:1.4;
  padding:0;
  vertical-align:middle;
}

input[type="checkbox"],input[type="radio"] {
  vertical-align:text-bottom;
}

input[type="submit"] {
  padding:0.1em;
}

legend {
  padding:0.3em;
  background:#fff;
}

select {
  padding:0;
}

    /* for IE6 */
    * html input {
    padding:0.1em;
    }

    * html input.checkbox,
    * html input.radio {
    vertical-align:-0.3em;
    }

    * html input.submit {
    line-height:1.2;
    padding-top:0.2em;
    }

    * html select {
    vertical-align:-0.2em;
    }

    /* for IE7 */
    *+html input {
    padding:0.1em;
    }

    *+html input.submit {
    line-height:1.2;
    padding-top:0.2em;
    }

    *+html select {
    vertical-align:-0.2em;
    }

    /* for Opera9.27 */
    html:first-child input {
    padding:0.1em;
    }

    html:first-child input[type="checkbox"],
    html:first-child input[type="radio"] {
    vertical-align:middle;
    }

    html:first-child input[type="submit"] {
    padding:0.3em;
    }

    html:first-child select {
    padding:0.2em 0.5em;
    }

    /* for Opera9.5+ [Safari3 & Chrome] */
    body:first-of-type input {
    padding:0.1em;
    }

    body:first-of-type input[type="checkbox"],
    body:first-of-type input[type="radio"] {
    vertical-align:text-top;
    }

    body:first-of-type input[type="submit"] {
    padding:0.3em 0.3em 0.2em 0.3em;
    }

    /* for Safari3 & Chrome */
    html:not(:only-child:only-child) input {
    padding:0;
    vertical-align:baseline;
    }

    html:not(:only-child:only-child) select {
    vertical-align:0;
    }

/* --TABLE-- */
table {
  margin-bottom:1em;
}

td, th {
  border:1px solid;
  padding:0.5em;
}

th {
  font-weight:bold;
  text-align:center;
}

/* clearfix */
.clearfix:after {
  display:block;
  clear:both;
  visibility: hidden;
  height: 0;
  content:".";
}

  /* for IE6 */
  * html .clearfix {
    display:inline-block;
  }

  /* for IE7 */
  *+html .clearfix {
    display:inline-block;
  }


/* ----- 汎用的なスタイル ----- */

/* 画像の下スペースを取る */
.al-bottom {
  vertical-align: bottom;
}


/* フォームオブジェクト 幅指定 */
.width-30 { width: 30% }
.width-40 { width: 40% }

.logtext {
  white-space: pre;
  font-size: 1.2em;
}


/* ==================================================================
         以下 各サイトごとの固有の設定
   ================================================================== */



/* リンクテキスト  ★ */
/* a      { text-decoration: none }  */
a:link    { color: #416DAE; text-decoration:underline;}
a:visited { color: #999999; text-decoration:underline;}
a:hover   { color: orange; text-decoration:none;} 
a:active  { color: orange; text-decoration:none;}



/* ===================================
       基本ブロック
   =================================== */

/* 全ページ共通 */
/* container 大枠 */
#container {
  min-width: 500px;
  width: 50%;
  height: 100%;  /* ie用に設定 */
  margin: 0 auto;
}


/*  header ヘッダ */
#header {
  width: 99%;
}


#content {
  text-align: left;
}

/* footer フッタ */
#footer {
  clear: both;
}




/* ===================================
       各ページ共通の設定
   =================================== */
#logo {
  padding: 5px;
  text-align: left;
}

#main {
  border: 1px solid #666;
  padding: 1px;
}

#main div#main-inner {
  padding: 24px;
}

/*
#main hr.h-line {
  display: block;
  margin: 0 auto;
  padding: 0;
  height: 4px;
  background: #999;
  vertical-align: top;
  zoom: 1;
}
*/

#main p.h-line {
  margin: 0 auto;
  padding: 0;
  height: 1px;
  border-top: 5px solid #999; 
}

#main h2.p-title {
  display: block;
  margin: 0 auto;
  height: 20px;
  padding: 12px;
  border: 1px solid #999;
  font-size: 1.6em;
  font-weight: bold;
  text-align: center;
}

#main p.exp {
  height: 20px;
  margin-top: 10px;
  padding: 8px;
  font-size: 1.4em;
}

#main table.login-t {
  width: 65%;
  margin: 0 auto;
  font-size: 1.2em;
  text-align: left;
}
#main table.login-t th {
  background: #ddd;
  border: #333 1px solid;
}
#main table.login-t td {
  border: #333 1px solid;
}

#main input.login {
  width: 130px;
  height: 20px;
  font-size: 1.2em;
}


/* ===================================
       トップページ以外の共通設定
   =================================== */

#main p.info {
  margin-top: 6px;
  padding: 3px;
  color: red;
  font-size: 1.2em;
  font-weight: bold;
  text-align: left;
}

/* debug */
div.debug_window {
  margin-left: 20px;
  margin-right: 20px;
  margin-bottom: 10px;
  padding: 15px;
  border: solid 1px #acacac;
  color: #000055;
  background-color: #eeeeee;
  font-size: 8pt;
  text-align: left;
}

