@charset "utf-8"; 

/* このファイルは UTF-8 で書かれています */

pre.code { 
  font-family: Menlo Consolas monospace; 
  color: #0000FF; 
}

.invisible {
  display: none !important; 
}

/*
 * リンク設定
 */
a:link    { color: #0000CC; background: transparent }
a:visited { color: #0000CC; background: transparent } 
a:active  { color: #CC0000; background: transparent }

/*
 * フォント設定
 *
 *         huge: 22px
 *        LARGE: 20px
 *        Large: 18px
 *        large: 16px
 *   normalsize: 14px (本文)
 *        small: 12px
 * footnotesize: 10px
 *         tiny:  9px
 */
.huge          { font-size: 22px; }
.LARGE         { font-size: 20px; }
.Large         { font-size: 18px; }
.large         { font-size: 16px; }
.normalsize    { font-size: 14px; }
.small         { font-size: 12px; }
.footnotesize: { font-size: 10px; }
.tiny          { font-size:  9px; }
.serif         { font-family: serif; }
.sans-serif    { font-family: sans-serif; }

/*
 * 全体レイアウト設定
 */
body {
  font-family: serif; 
  font-weight: normal; 
  font-size: 14px; 
  color: #000000; 
  background-color: #FFFFEE; 
  margin: 0px; 
  padding: 0px; 
}

div.main {
  width: 800px; 
  margin: 0pt 15px 0pt 15px; 
}

/*
 * 一般設定 
 */

/* 見出し */

h1 {
  font-family: sans-serif; 
  font-weight: bold; 
  font-size: 20px;
  color: black;
  background-color: #FFFFBB; 
  padding: 4px 6px 4px 6px; 
  margin: 2ex 0em; 
}

h2 { 
  font-family: sans-serif; 
  font-weight: bold; 
  font-size: 18px; 
  color: black; 
  margin: 1.5ex 0em; 
}

h3.top {
  margin-top: 0ex; 
}

h3 { 
  font-family: sans-serif; 
  font-weight: bold; 
  font-size: 16px; 
  margin: 1.2ex 0em; 
}

h4 {
  font-family: sans-serif; 
  font-weight: bold; 
  font-size: 14px; 
  text-decoration: underline; 
  margin: 1ex 0em; 
}

h5 { 
  font-family: serif; 
  font-weight: bold; 
  font-style: italic; 
  font-size: 14px; 
}

table.warning {
  border-style: none; 
  border-collapse: collapse; 
  margin: 0pt; 
  padding: 0pt; 
}

table.warning tr th {
  font-family: sans-serif; 
  font-weight: normal; 
  font-size: 14px; 
  text-align: left; 
  vertical-align: baseline; 
  color: #CC0000; 
  padding: 0px 5px 0px 0px; 
  background-color: transparent; 
  border: none; 
}

table.warning tr td {
  font-family: sans-serif; 
  font-weight: normal; 
  font-size: 14px; 
  text-align: left; 
  vertical-align: baseline; 
  color: #CC0000; 
  padding: 0px; 
  background-color: transparent; 
  border: none; 
}

th { padding: 2px; }
td { padding: 2px; }

code {
  font-family: Monaco,ＭＳゴシック,Courier,monospace; 
  font-size: 93%; 
  white-space: nowrap; 
}

/*
 * 日本数学会ロゴヘッダー 
 */
table.head {
  background-color: #FFCCCC;
  width: 100%;
  height: 70px; 
}

table.head td {
  vertical-align: middle; 
}

td.head1 {
  width: 45px;
  text-align: right; 
}

td.head2 {
  padding-left: 9px; 
}

span.head2-1 {
  font-family: serif; 
  font-wieght: normal; 
  font-size: 10px; 
}

span.head2-2 {
  font-family: serif; 
  font-weight: bold; 
  font-size: 25px; 
  line-height: 28px; 
}

span.head2-3 {
  font-family: sans-serif; 
  font-weight: normal; 
  font-size: 12px; 
}

/*
 * メニューバー
 */
.menubar {
  background-color: #DD6666; 
  width: 100%;
  font-size: 14px;
  color: white; 
}

.menubar table {
  width: 810px; 
  margin: 0px 12px 0px 12px; 
}

/*
.menubar td {
  border: solid 2px #00FFFF !important; 
}
*/

.menubar form { display: inline; }
.menubar form div { display: inline; }

.menubar input.button {
  border: solid 1px #DD6666; 
  background-color: #DD6666; 
  text-decoration: none; 
  font-family: serif; 
  font-weight: normal; 
  font-size: 13px; 
  padding: 1px 3px; 
  margin: 1px 2px; 
  color: #FFFFFF; 
}

.menubar input.button:hover {
  border: solid 1px #FFFFFF; 
  background-color: #DD6666; 
}

.menubar a.button {
  white-space: nowrap; 
  text-decoration: none; 
  border: solid 1px #DD6666; 
  background-color: #DD6666; 
  text-decoration: none; 
  font-family: serif; 
  font-weight: normal; 
  font-size: 13px; 
  padding: 1px 3px; 
  margin: 1px 2px; 
  color: #FFFFFF; 
}

.menubar a.button:hover {
  border: solid 1px #FFFFFF; 
  background-color: #DD6666; 
}

/*
 * アプリケーションステータス
 */
p.appl-status {
  margin-top: 4ex; 
  font-family: sans-serif; 
  font-size: 11px; 
  color: #3366FF; 
}

p.appl-status:before {
  content: "DEBUG: "; 
}

p.appl-status code {
  font-size: 9px !important; 
}

/*
 * フッター
 */
p.footer {
  font-size: 8pt; 
  font-family: serif; 
  font-weight: normal; 
}

p.form   { padding: 0ex; margin: 0ex; }
p.hidden { display: none; }

/*
 * 表示指定
 */
.hfill  { width: 100%; }

.left   { text-align: left; }
.center { text-align: center; }
.right  { text-align: right; }
.top    { vertical-align: top; }
.middle { vertical-align: middle; }
.bottom { vertical-align: bottom; }
.baseline { vertical-align: baseline; }
.float-left  { float: left; }
.float-right { float: right; }
.clear       { clear: both; }
.quote  { margin: 1ex 2em; }

.nowrap    { white-space: nowrap; }
.nopadding { padding: 0px !important; }

.bigskip-after   { margin-bottom: 20px !important; }
.medskip-after   { margin-bottom: 10px !important; }
.smallskip-after { margin-bottom: 5px !important; }

.relative { display: inline; position: relative; }

.blue { color: #3366FF; }

/* 画面レイアウト用 */
table.layout {
  border-collapse: collapse; 
  border: none; 
  margin: 0px; 
  padding: 0px; 
}

table.layout td {
/*  border: 1px solid skyblue; */
  border: none; 
  line-height: 0px; 
  margin: 0px; 
  padding: 0px; 
}

table table.layout td {
/*  border: 1px solid skyblue; */
  border: none; 
  line-height: 0px; 
  margin: 0px;
  padding: 0px;
}

table.layout table td { 
  line-height: 150%; 
  padding: 4px; 
}
table.layout table th { 
  line-height: 150%; 
  padding: 4px; 
}

table.text-layout {
  border-collapse: collapse; 
  border: none; 
  margin: 0px; 
  padding: 0px; 
}

table.text-layout td {
  border: none; 
  margin: 0px; 
  padding: 0px; 
}

table.text-layout th {
  border: none; 
  margin: 0px; 
  padding: 0px; 
}

table table.text-layout td {
  border: none; 
  margin: 0px;
  padding: 0px;
}

table table.text-layout th {
  border: none; 
  margin: 0px;
  padding: 0px;
}

table.inline {
  display: inline-table; 
}

/* 枠線つき表 */
table.border {
  border-collapse: collapse;
  border: 2px solid #888888; 
}

table.border th {
  border: 1px solid #888888; 
  background-color: #FFFFBB;
  padding: 3px 5px;
}

table.border td {
  border: 1px solid #888888; 
  background-color: #FFFFFF;   
  padding: 3px 5px;
}

table.frame {
  border-style: solid; 
  border-width: 3px; 
  border-color: #888888; 
  background-color: #FFFFFF; 
}

table.full-frame {
  border-style: solid; 
  border-width: 3px; 
  border-color: #888888; 
  border-collapse: collapse; 
  margin: 1ex 0ex 0.5ex 0ex; 
}

table.full-frame th {
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888;   
  background-color: #FFFFBB; 
  padding: 3px 5px; 
}

table th.sub {
  text-align: center; 
  background-color: #DDDDDD; 
}

/* 入力 */

input.text {
  font-size: 14px;
  border: 1px solid #888888;
  background-color: #EEEEEE; 
  padding: 2px;
  margin: 1px 0px; 
}

input.fixed {
  font-size: 14px;
  color: #000000; 
  border: 1px solid #DDDDDD; 
  background-color: #FFFFFF; 
  padding: 2px;
  margin: 1px 0px; 
}

input.code {
  font-family: Monaco,ＭＳゴシック,Courier,monospace; 
  font-size: 13px; 
  border: 1px solid #888888; 
  background-color: #EEEEEE; 
  padding: 2px;
  margin: 1px 0px; 
}

input.password {
  font-size: 13px; 
  border: 1px solid #888888; 
  background-color: #EEEEEE; 
  padding: 2px;
  margin: 1px 0px; 
}

input.file {
  width: 45em; 
}

textarea {
  font-size: 14px;
  border: 1px solid #888888;
  background-color: #EEEEEE;
  padding: 2px;
}

.full-width {
  width: 100%; 
}

table.full-frame td {
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888;   
  background-color: #FFFFFF; 
  padding: 3px 5px; 
}

pre {
  font-family: serif; 
  margin: 0px; 
  padding: 0px; 
}

table.checkbox td {
  vertical-align: baseline; 
}

DIV.code {
    background-color: #DDFFFF;
    margin-top: 10px;
    margin-bottom: 10px;
    padding-left: 3px;
    padding-top: 3px;
    padding-bottom: 3px;
    width: 750px;
    border-style: solid;
    border-width: 3px;
    border-color: #00FFFF;
}

DIV.memo {
    margin-top: 10px;
    margin-bottom: 10px;
    padding-left: 3px;
    padding-top: 3px;
    padding-bottom: 3px;
    width: 750px;
}

SPAN.input {
    color: #FF0000;
}

/* エラーメッセージ */
table.error {
  font-family: sans-serif; 
  font-weight: bold; 
  font-style: normal; 
  color: #ffffff; 
  background-color: #CC0000; 
  border: none; 
  border-collapse: collapse; 
  margin: 2ex 0ex; 
}

table.error tr td {
  vertical-align: baseline; 
  padding: 3px 5px; 
}

table.error tr td p {
  margin: 0px; 
  padding: 0px; 
}

.caution{
    color: #0000FF;
    background-color: #FFFFAA;
    padding: 1ex;
}

td.admin{
    background: yellow;
}

td.delete{
    background: red;
}

p.warning {
  font-family: sans-serif; 
  font-weight: normal; 
  font-style: normal; 
  color: #CC0000; 
  margin: 0.5ex 0em; 
}

div.warning {
  color: #CC0000; 
}

ul.note li {
  margin: 0pt; 
  padding: 0pt; 
}

ul.note {
  margin: 0pt; 
  padding: 0pt 0pt 0pt 15pt; 
}

ul.warning {
  margin: 2ex 0em; 
  padding: 0ex 0em; 
}

ul.warning li {
  font-family: sans-serif; 
  font-weight: normal; 
  font-style: normal; 
  list-style-type: disc; 
  color: #CC0000; 
  margin: 0.5ex 0em 0.5ex 1.5em; 
  padding: 0ex 0em; 
}

span.warning {
  font-size: 14px; 
  font-family: sans-serif; 
  font-weight: normal; 
  font-style: normal; 
  color: #CC0000; 
}

span.warning:before {
  content: disc; 
}

.red {
  color: #CC0000; 
}

div.inline {
  display: inline; 
}

strong {
  font-weight: bold; 
  color: #CC0000; 
}

.bg-white { background-color: white; }

div.round-fbox {
  border: solid 1pt black; 
  border-radius: 10pt; 
  margin: 15pt; 
  padding: 10pt; 
}

div.red-round-fbox {
  border: solid 1.5pt #CC0000; 
  border-radius: 10pt; 
  margin: 15pt; 
  padding: 10pt; 
}

.box-warning {
  font-family: sans-serif; 
  margin: 3ex 3em; 
  border: 2px solid #CC0000; 
  background-color: #FFEEEE; 
  color: #CC0000; 
  padding: 1ex; 
}

/* パン屑リスト */

table.breadcrumbs {
  border-collapse: collapse; 
  border-style: none; 
  background-color: #FFFFBB;
}

table.breadcrumbs th {
  vertical-align: baseline; 
  font-family: sans-serif; 
  font-weight: bold; 
  font-style: bold; 
  border-style: none; 
  padding: 4px 6px 4px 6px; 
}

table.breadcrumbs td {
  vertical-align: baseline; 
  font-family: sans-serif; 
  font-weight: normal; 
  font-style: normal; 
  width: 100%; 
  border-style: none; 
  padding: 4px 6px 4px 6px; 
}

table.breadcrumbs td span {
  white-space: nowrap; 
  color: #888888;
}

table.breadcrumbs td span.active {
  color: #3366FF !important;
  font-weight: bold; 
}

/* キーワード */

table.talk-data table.keywords_list {
  border-style: none !important; 
  border-collapse: collapse; 
}

table.talk-data table.keywords_list td.button {
  padding-right: 0.25em; 
}

table.talk-data table.keywords_list td.gap {
  padding-right: 1em; 
}

table.talk-data table.keywords_list td {
  border-style: none !important; 
  /* border: solid 1px #CC0000 !important; */
  vertical-align: baseline; 
  padding: 0ex 0em 0ex 0em; 
}

/* 講演データ */

table.talk-data {
  border-style: solid; 
  border-width: 2px; 
  border-color: #888888; 
  border-collapse: collapse; 
  margin: 1ex 0em 1ex 0em; 
}

table.talk-data th.special {
  background-color: #FFDDDD; 
}

table.talk-data th {
  white-space: nowrap; 
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888; 
  background-color: #FFFFBB; 
  padding: 3px 5px; 
}

table.talk-data td {
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888; 
  background-color: #FFFFFF; 
  padding: 3px 5px; 
}

table.talk-data caption {
  font-size: 12px; 
  text-align: right; 
}

img.latex-image {
  text-align: left; 
  margin: 4px; 
}

/* 講演者データ */

table.speaker-data {
  border-style: solid; 
  border-width: 2px; 
  border-color: #888888; 
  border-collapse: collapse; 
  margin: 1ex 0em 0.5ex 0em; 
}

table.speaker-data th.special {
  background-color: #FFDDDD; 
}

table.speaker-data th.subhead {
  background-color: #DDDDDD; 
}

table.speaker-data th {
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888; 
  background-color: #FFFFBB;
  padding: 3px 5px; 
  text-align: center; 
  white-space: nowrap; 
  font-size: 90%; 
}

table.speaker-data td {
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888; 
  background-color: #FFFFFF; 
  padding: 3px 5px; 
}

span.is-speaker {
  font-size: 10px; 
  font-family: sans-serif; 
  font-weight: normal; 
  color: #3366FF; 
  background-color: #DDEEFF; 
  border: solid 1px #3366FF; 
  padding: 0px 1px; 
  margin-top: 5px !important; 
}

table.name-affil {
  position: relative;
  bottom: -2px;
  display: inline-table;
  margin: 0px;
  padding: 0px;
  border: none;
  border-collapse: collapse;
  background-color: transparent; 
}

table.name-affil td {
  margin: 0px;
  padding: 0px 5px 0px 0px;
  border: none;
  background-color: transparent; 
}

hr {
  margin: 2ex 0em 2ex 0em; 
}

img.icon {
  position: relative; 
  top: 4px; 
}

span.latexWarning {
  color: #CC0000; 
}

input.button {
  font-size: 12px; 
  color: #000000; 
  background-color: #DDDDDD; 
  border: outset 2px; 
  padding: 1px 2px; 
  margin: 2px; 
}

input.button:hover {
  color: #FFFFFF; 
  background-color: #666666; 
}

input.large-button {
  font-size: 16px; 
  color: #3366FF; 
  background-color: #DDEEFF; 
  border: outset 2px; 
  padding: 1px 2px; 
  margin: 0px 2px; 
}

input.large-button:hover {
  color: #FFFFFF; 
  background-color: #3366FF; 
}

input.disabled-large-button {
  font-size: 16px; 
  color: #BBBBAA; 
  background-color: #FFFFEE; 
  border: outset 2px !important; 
  padding: 1px 2px; 
  margin: 0px 2px; 
}

td.speaker-name {
  font-size: 13px; 
  white-space: nowrap;   
  text-align: center; 
  vertical-align: middle !important; 
  border-right: none !important; 
}

td.speaker-value {
  width: 100%; 
  vertical-align: middle !important; 
  border-left: none !important; 
}

/*
 * フォーム下部用のボタン 
 *
 * [例]
 * <div class="form-button">
 *   <p class="right"><input class="large-button" type="submit" .../></p>
 *   <p><input class="button" type="submit" .../></p>
 * </div>
 */
.form-button {
  padding: 0ex 0em 3px 0em; 
}

.form-button:after {
  display: block; 
  content: " "; 
  font-size: 1px; 
  line-height: 1px; 
  clear: both; 
  visibility: hidden; 
}

.form-button p {
  line-height: 22px; 
  margin: 0ex; 
  padding: 0ex; 
}

.form-button p.right { float: right; }
.form-button p.left  { float: left;  }

/* border: dashed 1px #00FFFF; */

.w400px { width: 400px; }
.w300px { width: 300px; }


/* waseda */
table.waseda-talk-data {
  border-style: solid; 
  border-width: 2px; 
  border-color: #888888; 
  border-collapse: collapse; 
  margin: 1ex 0em 1ex 0em; 
}

table.waseda-talk-data th {
  white-space: nowrap; 
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888; 
  background-color: #BBFFFF; 
  padding: 3px 5px; 
}

table.waseda-talk-data td {
  border-style: solid; 
  border-width: 1px; 
  border-color: #888888; 
  background-color: #FFFFFF; 
  padding: 3px 5px; 
}

table.waseda-talk-data caption {
  font-size: 12px; 
  text-align: right; 
}

span.changed {
  background-color: #88FFFF;
}
td.changed {
  background-color: #88FFFF !important;
}
td.deleted {
  text-decoration: line-through; 
  color: #777777 !important; 
  background-color: #EEEEEE !important;
}
span.deleted {
  text-decoration: line-through; 
  color: #777777 !important; 
  background-color: #EEEEEE !important;
}

div.ajax {
  position: absolute;
  width: 202px;
  font-size: 14px; 
  background-color: #DDDDDD; 
  z-index: 10; 
}

div.ajax div.select{
  color: #FFFFFF;
  background-color: #3366FF;
}

div.ajax div.over{
  background-color: #99CCFF;
}

div.ajax div {
  padding: 1px;
  display: block;
  width: 200px;
  overflow: hidden;
  white-space: nowrap;
  line-height: 16px; 
}

div.ajax strong{
  font-weight: bold;
}

span.langtag {
  white-space: nowrap; 
  position: relative; 
  bottom: 1px; 
  font-family: sans-serif; 
  font-size: 10px; 
  padding: 0px 1px; 
  background-color: #DDEEFF; 
  color: #3366FF; 
  border: solid 1px #3366FF; 
}

.button_image_inline {
  position: relative;
  bottom: -2px;
}

.halfwidth {
  width: 235px;
}

p.tight {
  text-indent: 0px; 
  margin: 2px 0px 0px 0px; 
  padding: 0px; 
}

.red-border {
  border: solid 3px #CC0000; 
  border-radius: 10pt; 
  background-color: #FFEEEE; 
  padding: 8px 12px; 
}

div.note {
  width: 500px; 
  vertical-align: top; 
  display: inline-block; 
  margin: none; 
  padding: none; 
}

div.note textarea {
  margin: 0.25ex 0em 0.25ex 0em; 
}

div.note input {
  margin: 0.25ex 0em 0.25ex 0em; 
}
