/**
 * basic format
 */
td { vertical-align:middle !important;}
.row {
    margin-left:0;
    margin-right:0;
}
.dropzone {
	min-height:60px !important;
	border: 1px dashed #999 !important;
	color: #999 !important;
	padding: 10px !important;
}

.font-bold { font-weight:bold; }

#div-question * {
    user-select:none;
    -webkit-user-select:none;
    -webkit-touch-callout: none;
    touch-callout: none;
}

/* 説明画面 */
.explain_container {
    margin:50px auto;
    width:800px;
    max-width:95%;
}

.explain_container p {
    display:inline-block;
    text-align:left;
    white-space:pre-wrap;
    padding:0.8em;
    border:1px solid #aaa;
}

/* ルビ関連 */
body.hide_ruby rp, body.hide_ruby rt {
    display:none;
}

body:not(.hide_ruby) ruby {
    display: inline-table;
    border-collapse: collapse;
    height: 2em;
    margin: 0;
    padding: 0;
    border: none;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: 1em;
    text-decoration: inherit;
    text-align: center;
    line-height: 1em;
    }

/* 上ルビ */
body:not(.hide_ruby) ruby>rtc {
    display: table-header-group;
    height: 25%;
    margin: 0;
    padding: 0;
    border: none;
    font: inherit;
    font-size: 50%;
    line-height: 1em;
    }

/* 下ルビ(括弧類がある場合とない場合でセレクタが異なる) */
body:not(.hide_ruby) ruby>rtc+rtc,
body:not(.hide_ruby) ruby>rtc+rp+rtc {
    display: table-footer-group;
    height: 25%;
    margin: 0;
    padding: 0;
    border: none;
    font: inherit;
    font-size: 50%;
    text-decoration: none;
    line-height: 1em;
    }

/* 各文字に対応するルビ */
body:not(.hide_ruby) ruby>rtc>rt {
    display: table-cell;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font-size: 100%;
    text-align: center;
    line-height: 1em;
    }

/* ルビ対象テキスト */
body:not(.hide_ruby) ruby>rb {
    display: table-cell;
    max-height: 75%;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font: inherit;
    text-decoration: none;
    text-align: center;
    line-height: 1em;
    vertical-align: top;
    }

/* 単純な<ruby>要素での<rt>要素 */
body:not(.hide_ruby) ruby>rt {
    display: table-header-group;
    height: 25%;
    margin: 0;
    padding: 0 0.125em;
    border: none;
    font: inherit;
    font-size: 50%;
    text-align: center;
    line-height: 1.5em;
    }

/* <ruby>要素入れ子の場合 */
body:not(.hide_ruby) ruby>ruby {
    vertical-align: 0em;
    }

/* <ruby>要素が入れ子でない場合のルビテキストと、*/
/* <ruby>要素が入れ子の場合の上位<ruby>要素のルビテキスト、*/
body:not(.hide_ruby) ruby>ruby+rt,
body:not(.hide_ruby) ruby>ruby+rp+rt {
    display: table-footer-group;
    }

/* <ruby>要素直下に<rt>要素が二つある場合 */
body:not(.hide_ruby) ruby>rt+rt {
    display: table-footer-group;
    }

body:not(.hide_ruby) rt {
    font-size:50%;
}


/* カウントダウン */
#div-question
{
    position:relative;
}

.time_limit_container
{
    position:absolute;
    top:-25px;
    left:0;
    width:100%;
    height:40px;
}
.time_limit {
    display:block;
    width:40px;
    height:40px;
    
    border-radius:50%;
    background-color:#56b3d2;
    color:#FFF;
    line-height:40px;
    text-align:center;
    
    font-size:18px;
    font-weight:bold;
    
    transform:scale(0.1);
    opacity:0;
    transition:transform 0.1s linear, opacity 0.1s linear;
    
    margin-right:5px;
}

.time_limit.in {
    transform:scale(1);
    opacity:1;
}

input::-webkit-credentials-auto-fill-button {
  margin: 0;
  width: 0;
  background-color: transparent;
}



/* 編集用テーブル */
table.edit_table {
    width:auto;
    border-collapse:collapse;
}

table.edit_table th,
table.edit_table td {
    border:1px solid #ccc;
}
table.edit_table th.no_border,
table.edit_table td.no_border {
    border:none;
}


table.edit_table th {
    
    white-space:nowrap;
    padding:0.3em 0.5em;
    background-color:#fbe9e7;
    width:1px;
}

table.edit_table td {
    
    padding:0.3em;
    
}

.form_alert {
    display:none;
}

table tr.removed td
{
    background-color:#eee;
    opacity:0.8;
}
