@charset "utf-8";

/*======================================================
 * layout.css (GAKUEN)
 *
 * 著作権：Copyright Japan System Techniques Co., Ltd. All Rights Reserved.
 * 会社名：日本システム技術株式会社
======================================================*/

/*======================================================
 * 全エリア
======================================================*/

html {
    min-height: 100%;
    overflow-y: scroll;
    position: relative;
}

body {
    background: #fcfcfc;
    height: 100%;
    margin-bottom: 20px; /* フッター高さ（含余白） */
}

.wrap {
    min-height: 100%;
    width: 100%;
    position: static !important; /* 動的なposition:relative挿入の対策 */
}

/*======================================================
 * ヘッダー
======================================================*/

/*===== メインエリア =====*/

/* ヘッダー共通 */
header {
    /*background: #00517e url(../images/gakuenrx.png) no-repeat 0.5em center;*/
    background: url(../images/gakuenrx.png) no-repeat 0.5em center;
    background-size: auto 85%;
    font-size: 16px !important; /* ヘッダー内サイズ固定のための基準値 */
    /*height: 2.4em;*/
}

/* ヘッダー情報 */
header .headerInfo {
    min-height: 1.5em;
    padding: 0.5em 0.2em;
}

/* ユーザ情報 */
header .userInfo {
    color: #ffffff;
    display: inline-block;
    float: right;
    margin-right: 1em;
}

/* 環境情報 */
header .prod {
    background: #eeeeee;
    color: #c00;
    display: inline-block;
    font-size: 0.95em;
    left: 220px;
    padding: 0 0.5em;
    position: relative;
}

/* ボタンエリア */
header .btnAreaHeader {
    display: inline-block;
    float: right;
}

header .btnAreaHeader button.ui-button {
    background: #ffffff;
    /*border: none;*/
    font-weight: normal;
    margin-left: 0.1em;
    min-width: 6em;
}

header .btnAreaHeader button.ui-button .ui-button-text {
    color: #555555;
    font-size: 0.9em;
    padding-top: 0;
    padding-bottom: 0;
}

/*======================================================
 * コンテンツ
======================================================*/

/*===== コンテンツ全体 =====*/

.container {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 1600px;
    /*min-width: 1280px;*/
    min-width: 1240px;
    padding: 0.5em 2em;
}

/*===== コンテンツヘッダ =====*/

/* 機能・画面情報 */
.headContent .funcInfo {
    border-bottom: solid 1px #00517e;
    margin-bottom: 0.8em;
    min-height: 1.75em;
    position: relative;
}

/* 画面名 */
.headContent .funcInfo h1 {
    font-size: 1.1em;
}

/* 機能名エリア */
.headContent .funcNameArea {
    position: absolute;
    right: 0;
    top: 0;
}

/* 戻るボタン */
.headContent .funcNameArea .btnAreaFuncTop {
    display: inline-block;
}

.headContent .funcNameArea .btnBack {
    margin-left: 0.5em;
    min-width: 6em;
}

.headContent .funcNameArea .btnBack .ui-button-text {
    font-size: 0.9em;
    padding-top: 0;
    padding-bottom: 0;
}

/*===== コンテンツメイン =====*/

/* content標準サイズ（デフォルト） */
.content {
    margin: 0 auto;
    min-height: 200px;
    /*min-height: 400px;*/
    position: relative;
    width: 98%;
}

/* content中サイズ */
.content.areaSizeMid {
    width: 70%;
}

/* content小サイズ */
.content.areaSizeSmall {
    width: 50%;
}

/* セクション共通 */
.content section h1 {
    font-size: 1.1em;
    /*font-weight: 300;*/
    margin-bottom: 0.2em;
}

.content section {
    /*margin-bottom: 0.8em;*/
    margin-bottom: 0.4em;
}

.content section dl {
    margin-bottom: 0.5em;
    margin-left: auto;
    margin-right: auto;
} 

.content section dl:last-child {
    margin-bottom: 0;
}

/* タブ内セクション共通 */
.content .ui-tabs-panels section h1 {
    font-size: 1.0em;
    margin-bottom: 0.2em;
}

.content .ui-tabs .inputArea {
    /*background: #ffffe4;*/ /* テーマに移行 */
}

/*
.content dt:empty {
    background: transparent;
}
*/

.content dd {
    /*background: lightgoldenrodyellow;*/
}

/* 画面最上部ボタンエリア */
.content .btnAreaFuncTop {
    padding:0 0 0.4em 0;
    text-align: right;
}

/* 画面内、タブ内ボタンエリア */
.content .btnAreaFuncMiddle {
    padding: 0;
    /*padding: 0.4em 0 0 0;*/
    padding: 0 0 0.4em 0;
    text-align: center;
}

/* 画面最下部メインボタンエリア */
.content .btnAreaFuncBottom {
    padding: 1em 0;
    text-align: center;
}

/* 画面最下部メインボタンエリア（2段） */
.content .btnAreaFuncBottom > div:first-child {
    margin-bottom: 1em;
}

/* 画面最下部メインボタンエリア絶対位置指定 */
.content .btnAreaFuncBottom.btnAreaFuncBottomAdjust {
    bottom: 0;
    position: absolute;
    width: 100%;
}

/* データテーブル下部非コミットボタンエリア */
.content .btnAreaDatatable {
    padding: 0.1em 0 0 0;
    text-align: left;
    overflow: hidden;
}

.content button.ui-button:not(.ui-button-icon-only) {
    /*background: #ffffff;*/
    margin-left: 0.5em;
    min-width: 6em;
}

.content button.ui-button:first-child {
    margin-left: 0;
}

.content button.ui-button .ui-button-text {
    font-size: 1em;
    font-weight: 400;
    /*padding: 0.15em 1em;*/
    padding: 0 1em;
}

/* 表示セクション */
.content .outputArea .itemTable {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.content .outputArea dt, .content .outputArea dd {
    border-bottom: solid 1px #dddddd;
    border-right: solid 1px #dddddd;
    box-sizing: border-box;
    display: table-cell;
    /*padding: 0.2em 0.5em;*/
    padding: 0 0.5em;
    position: relative;
    vertical-align: middle;
    word-wrap:break-word;
}

.content .outputArea .itemTable:first-child {
    border-top: solid 1px #dddddd; 
}

.content .outputArea dt:first-child {
    border-left: solid 1px #dddddd;
}

.content .outputArea dt {
    /*background: #e9e9e9 !important;*/ /* テーマに移行 */
    border-left: solid 3px transparent; /* 必須でない場合のボーダー領域確保 */
    /*color: #333333;*/ /* テーマに移行 */
    height: 1.8em;
    position: relative;
    text-align: left;
    width: 14em;
}

/* 入力セクション */
.content .inputArea {
    /*background: #f7f7f7;*/ /* テーマに移行 */
}

.content .inputArea .itemTable {
    display: table;
    margin-bottom: 1px;
    table-layout: fixed;
    width: 100%;
}

.content .inputArea dt, .content .inputArea dd {
    box-sizing: border-box;
    display: table-cell;
    /*padding: 0.2em 0.5em;*/
    padding: 0 0.5em;
    position: relative;
    vertical-align: middle;
    word-wrap:break-word
}

.content .inputArea dt {
    /*background: #e9e9e9 !important;*/ /* テーマに移行 */
    /*border-left: solid 3px transparent;*/ /* 必須でない場合のボーダー領域確保 */
    /*color: #333333;*/ /* テーマに移行 */
    height: 1.8em;
    position: relative;
    text-align: left;
    width: 14em;
}

/* 画像配置セクション */
.content .imgLayoutItemTable, .content .imgLayoutImgTable {
    display: table-cell;
}

.content .imgLayoutImgTable {
    padding-left: 0.5em;
    vertical-align: top;
}

/* 単票（パネルグリッド） */
.content .ui-panelgrid .ui-panelgrid-cell {
    padding: 0 0.5em;
}

/* 単票ラベル・データテーブル列名、文字サイズ調整用 */
.content section dt.reduced90 label,
.ui-datatable th.reduced90 .ui-column-title {
    font-size: 0.9em !important;
}

.content section dt.reduced80 label,
.ui-datatable th.reduced80 .ui-column-title {
    font-size: 0.8em !important;
}

.content section dt.reduced70 label,
.ui-datatable th.reduced70 .ui-column-title {
    font-size: 0.7em !important;
}

/*======================================================
 * フッター
======================================================*/

footer {
    /*background: #00517e;*/
    /*border-top: solid 1px #00517e;*/
    bottom: 0;
    box-sizing: border-box;
    color: #ffffff;
    font-size: 11px !important; /* フッター内サイズ固定のための基準値 */
    height: 2em;
    margin: 1em 0 0 0;
    min-width: 991px; /* bodyのmin-widthと合わせる */
    padding: 0.3em 1em;
    position: absolute;
    text-align: right;
    width: 100%;
}

/*======================================================
 * メッセージ（システムエラーなど）
======================================================*/

.informationMain {
    border-radius: 5px;
    box-sizing: border-box;
    padding: 25px 15px 25px 55px;
    margin: 40px auto 0 auto;
    max-width: 500px;
    min-height: 100px;
    width:  80%;
}

.infoErrorMsgArea .informationMain {
    background: rgba(255,204,255,0.2);
    border: solid 2px #cc0000;
}

.infoNmlMsgArea .informationMain {
    background: rgba(200,200,200,0.2);
    border: solid 2px #005882;
}

.informationMain .innerInfo {
    display: inline-block;
    position: relative;
}

.informationBtn {
    margin-top: 120px;
    text-align: center;
}

.informationBtn .ui-button {
    background: #777777;
    color: #ffffff;
    /* 以下、htmlファイルでtheme.cssが適用されないスタイルの補填 */
    border: 1px solid #cccccc;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
}

.informationBtn .ui-button .ui-button-text {
    color: #ffffff;
    font-weight: 400;
    /* 以下、htmlファイルでtheme.cssが適用されないスタイルの補填 */
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
}

.informationBtn .ui-button.ui-state-hover {
    background: #434343;
}

.iconWarningInfo {
    font-size: 1.4em;
    left: -35px;
    position: absolute;
    top: 0;
}

.infoErrorMsgArea .iconWarningInfo {
    color: #cc0000;
}

.infoNmlMsgArea .iconWarningInfo {
    color: #005882;
}