@charset "UTF-8";
/* 基本設定 -------------------------*/
html,body,h1,h2,h3,h4,q,blockquote,form,label,img,pre,div,span,
p,table,caption,tbody,thead,tr,td,dl,dt,dd,ul,ol,li,em,strong,pre
     { margin: 0; padding: 0; border: 0; text-decoration: none;
      font-style: normal; font-weight: normal; font-size: 100%; }
header,nav,section,article,footer,time,aside { display: block; }
p,dl,ul,ol,blockquote,table,pre { margin-bottom: .7em; }
/* 一般要素 -------------------------*/
body { padding: 1em 10px 10em 25px; background-color: #ECF2F9;
      max-width: 40em; color: black; line-height: 1.4;
      font-family: 'メイリオ', Meiryo, sans-serif; }
h2, h3, h4 { font-weight: bold; clear: both; }
h1 { font-size: 200%; color: #330099; margin-left: 1em; }
h2 { font-size: 140%; color: #007500; margin-left: -20px; padding-top: .5em; }
h3 { font-size: 120%; color: #000099; margin-left: -12px; }
body>header { margin: 0em; }
body>footer { margin: 10em -10px -9em -25px; padding-left:  20px;
       border: solid #DDDDFF; border-width: 1px 0; clear: both; }
input,textarea { margin: 0 0 3px; padding: 1px; width: 95%; }
input[type="submit"],input[type="button"],input[type="reset"],
input[type="radio"],input[type="checkbox"] { width: auto; font-size: 90%; }
table { border-collapse: collapse; }
td { border: black 1px solid; padding: 2px 5px; }
dt { font-weight: bold; }
dt a { font-weight: normal; }
dd,li { margin-left: 2em; }
form dd { margin: 0; }
img { border: none; vertical-align: bottom; }
em { background-color: #FFFF66; color: black; font-weight: bold; }
strong { color: red; font-weight: bold; }
a:link { color: blue; }
a:visited { color: #551A8B; }
.nomarker { list-style: none; margin: 0; padding: 0; }
pre { padding: .7em; background-color: white; font-size: 85%;
     border: 1px solid #6666FF; white-space: pre; overflow: auto; } /* codeタグとあわせて使う用 */
q { font-style: italic; }
blockquote { padding: 5px 25px; background-color: white;
       color: black; border: 1px solid black; }
blockquote[title]::after { content: "引用: " attr(title);
       padding-top: 1em; display: block; font-size: 90%; text-align: right;}
blockquote[cite]::after { content: "引用: " attr(title) " ("attr(cite) ") ";
       padding-top: 1em; display: block; font-size: 90%; text-align: right;}
/* コメント、トラバ -----------------*/
#trackbacks { margin: 2em 0; }
section#comments { margin: 4em 0; border: 1px solid #333399; background-color: white; }
section#comments h1 { background-color: #DDDDFF; color: black;
         text-align: center; margin: 0; padding: 3px; margin-bottom: 8px;
         font-size: 100%; border: solid #333399; border-width: 0 0 1px; }
section#comments article { padding: 0 8px; }
section#comments p { margin-left: 1em; }
#comments+section form { width: 400px; max-width: 100%; }
#comments+section h1 { font-size: 120%; color: #000099; font-weight: bold; }
#com { width: auto !important; float: none; }
section#comments .admin { font-weight: bold; }
/* ナビゲーション -------------------*/
#nav,#nav ul { list-style: none; margin: 0; padding: 0; }
#nav li { margin: 0; }
#nav p { margin: 0; text-align: right; }
* html #nav { margin-top: 2em; } /* ←↓IE6対策 */
body>#nav { margin: 0; padding: 10px; bottom: 0; right: 0;
    border: black 2px solid; list-style: none; z-index: 9999;
    position: fixed; background-color: white; color: black; }
#topic-path { margin: 0 -10px 0 -25px; padding-left: 25px;
             font-size: 85%; border: solid #DDDDFF; border-width: 1px 0; }
#update { width: 10em; font-size: 90%; float: right; }
/* 自己紹介,サイト紹介 --------------*/
#profile dl { float: left; min-width: 300px; color: black; background-color: white;
             border: black solid; border-width: 1px 1px 0; margin: 0; width: 47%; }
#profile dt { color: black; background-color: #C4E9F5; padding: 4px; float: left;
             border: black solid; border-width: 0 1px 1px 0; }
#profile dd { margin: 0; padding: 5px; border-bottom: 1px black solid; clear: both; }
#profile ul { list-style: none; }
#profile ul li { display: inline; margin: 0; }
.linkurl { width: 90%; }
/* リンク集 -------------------------*/
.link dt { border-color: blue; border-width: 1px 1px 0; border-style: solid;
          padding: 2px 10px; background-color: white; color: #333333; }
.link dd { border: 1px solid blue; padding: 10px 10px 30px ; margin-bottom: 10px;
          margin-left: 0; background-color: #F9F9FF; color: #333333; }
.link dt+dt { border-top-style: none; }
/* メール入力確認 -------------------*/
#mail { width: 20em; }
/* 罪と罰 ---------------------------*/
.isa,.kachi,.isakachi { float: left; padding: 0 2em 0 0; }
.isa tbody,.kachi tbody,.isakachi tbody { text-align: right; }
.kachi h3,.kachi h4,.isakachi h3,.isakachi h4 { clear: none; }
/* 数学 -----------------------------*/
.ab { color: #00ff00; }
.ac { color: red; }
.bc { color: blue; }
.right-side { color: red; }
.math,.prop,div.proof,.def { background-color: white; padding: 5px; margin-bottom: .7em; }
.math img,.prop img,.proof img,.def img { vertical-align: middle; }
.prop h2,.prop h3,.proof h3,.proof h4,.def h2,.def h3 { margin: 0; padding: 0; }
.naturals,.rationals,.integers,.reals,.complexs,.finitefield,.family,.category,.generic { font-weight: bold; }
.name { border-bottom: black 1px solid; }
.subproof { margin: 0.5em 1em; padding: 0.5em 1em; border: black 1px solid; }
p.subproof::before { content: "∵) "; }
div.subproof > p:first-child::before { content: "∵) "; }
.remark { margin: 0.5em 1em; padding: 0.5em 1em; border: black 1px solid; }
p.remark::before { content: "※ "; }
div.remark > p:first-child::before { content: "※ "; }
.diagram { float: right; }
p.eqnarray { margin-left: 2em; }
b.dfn,b.thm,b.ex { font-size: 130%; font-weight: bold; margin-right: .5em; }
b.proof { font-size: 120%; font-weight: bold; margin-right: .5em; }
aside.remark > p:first-child::before { content: "※ "; }
.tex { font-family: "Consolas", "ＭＳ ゴシック"; }
/* clearfix -------------------------*/
.with-diagram:after { content: "."; display: block; clear: both;
                    visibility: hidden; height: 0; }
.with-diagram { display: inline-block; }   /* IE5.5以降用 */
* html .with-diagram { height: 1%; }       /* IE5.0用 */
.with-diagram { display: block; margin-bottom: .7em; }
/* 日記過去ログ ---------------------*/
#log dl { font-size: 90%; }
#log dt { font-weight: normal; }
#log dd { margin: 0; border-bottom: 1px dashed black; }
#log ol { list-style: none; margin: 0; }
#log ol li { display: inline; }
#log a { white-space: nowrap; }
/* 広告 -----------------------------*/
.toprightad { width: 336px; float: right; margin: 0 -10px 0 .7em; }
.bottomad { width: 160px; height: 600px; position: relative;
           top: -600px; left: -201px; margin-bottom: -580px; }
.bigbanner { width: 728px; margin: 0 auto; padding: 3em 0 0;
            clear: both; }
/* 古い日記 -------------------------*/
dl#diary { border-bottom: 2px solid green; }
dl#diary dt.date { padding: 0 5px; text-align: right; font-size: 80%; border: 0;
              border-top: 2px solid green; color: black; background-color: white;}
dl#diary>dd { margin: 0 0 1.4em; padding: 5px; }
h2.reply { margin: 0; padding: 0; color: black; font-size: 100%; }
.reply dt { color: #000099; font-weight: normal; }
.reply dd { margin: 0; }
.res { margin-bottom: -1em; }
.res dt { font-weight: normal; font-size: 90%; }
.res dd { margin-bottom: 1em; margin-left: 1.8em; }
/* ツイート -------------------------*/
#twitter { padding: 20px 40px; }
#twitter header { width: 540px; background-color: white;
  border-radius: 5px 5px 0 0; -moz-border-radius: 5px 5px 0 0;
  -webkit-border-radius: 5px 5px 0 0;
  box-shadow: 2px 2px 2px #CCCCCC; -moz-box-shadow: 2px 2px 2px #CCCCCC;
  -webkit-box-shadow: 2px 2px 2px #CCCCCC; }
#twitter header img { margin: 20px; float: left; }
#twitter header h2 { margin: 0; padding: 0; color: black; clear: none; }
#twitter header h2+div { font-weight: bold; color: black; }
#twitter header p { margin: 0; color: #333333; font-size: 15px; }
#twitter header ul { margin: 0 0 0 20px; clear: both;
   position: relative; top: 5px; }
#twitter header ul:after { content: "."; display: block; clear: both;
   visibility: hidden; height: 0; }
#twitter header ul { display: inline-block; }   /* IE5.5以降用 */
* html #twitter header ul { height: 1%; }       /* IE5.0用 */
#twitter header ul { display: block; list-style: none; }
#twitter header li { margin: 0; float: left; padding: 7px;}
#twitter header li:hover { background-color: #EBEBEB; z-index: 9; }
#twitter .current { border: 1px solid #EBEBEB; border-bottom: 0;
   z-index: 9; background-color: white; }
#tweets { margin: 0; padding: 3px 0 0; background-color: white;
  border-top: 1px solid #EBEBEB; clear: both;
  width: 540px;
  box-shadow: 2px 2px 2px #CCCCCC; -moz-box-shadow: 2px 2px 2px #CCCCCC;
  -webkit-box-shadow: 2px 2px 2px #CCCCCC; }
#tweets p { margin: 0; line-height: 19px; }
#tweets li { border-bottom: 1px solid #EBEBEB; font-size: 15px;
  padding: 10px 20px 10px 78px; list-style: none;
  margin: 0; background-image: url("qqq.png"); min-height: 60px;
  background-repeat: no-repeat; background-position: 20px 10px; }
#tweets .id { line-height: 15px; text-decoration: none;
            color: #333333; font-weight: bold; }
#tweets .id:hover { color: #0000FF; text-decoration: underline;}
#tweets .name { line-height: 15px; color: #999999; font-size: 12px; }
#tweets .time { line-height: 15px; text-decoration: none;
              color: #999999; font-size: 12px; }
#tweets .time:hover { color: #0000FF; text-decoration: underline;}
#tweets .link { line-height: 15px; text-decoration: none; }
#tweets .link img { background-color: #666666; vertical-align: baseline; }
#tweets .link img:hover { background-color: #0e57b7; }
#twitter footer { margin: -3px 0 0; padding: 20px 0; width: 540px;
  text-align: center; background-color: white;
  border-radius: 0 0 5px 5px; -moz-border-radius: 0 0 5px 5px;
  -webkit-border-radius: 0 0 5px 5px;
  box-shadow: 2px 2px 2px #CCCCCC; -moz-box-shadow: 2px 2px 2px #CCCCCC;
  -webkit-box-shadow: 2px 2px 2px #CCCCCC; }
#twitter footer img { margin: 5px 3px 10px 0; vertical-align: middle; }
