/*バーメニュー*/
.bar_style {
    font-weight: bold;
    font-size: 1.3em;
}
/* datetime now*/
.datetime-now {
    font-weight: bold;
    font-size: 1.3em;
}
/* subsystem名称*/
.subsystem_name {
    font-weight: bold;
    font-size: 1.3em;
}
/* 最上位左側のタイトル*/
.layout_title {
    font-weight: bold;
    font-size: 1.3em;
}

.Type3_Value_Low {
    font-style: italic;
    font-weight: bold;
    color: blue;
}

.Type3_Value_High {
    font-style: italic;
    font-weight: bold;
    color: red;
}

.form-item {
    margin-bottom: 2em;
}

.empty_row{
    height: 3px;
}
.size_150 {
    font-size: 150%;
}
.wight_bold {
    font-weight: bold;
}
.empty_block {
    padding: 20px;
}

input[type="checkbox"] {
    transform: scale(1.8);
}
a.dont_show_underline {
    text-decoration: none;
}
/*------------------------------------------------*/
/*グラフの書式設定*/
/*------------------------------------------------*/
.graph_modal_header {
    font-weight: bold;
    font-size: 1.3em;
}

.graph_area {
    min-width: 800px;
    min-height: 800px;
    margin: 0 auto;
}
/*------------------------------------------------*/
/*テーブル名のリンク書式設定*/
/*------------------------------------------------*/
a.tableLink {
    color: #000000;
    font-style: normal;
    text-decoration: none;
}

a:link.tableLink {
    color: #000000;
    font-style: normal;
    text-decoration: none;
}

a:visited.tableLink {
    color: #000000;
    text-decoration: none;
}

a:hover.tableLink {
    color: #000000;
    font-style: normal;
    text-decoration: none;
}

a:active.tableLink {
    text-decoration: none;
}

/*------------------------------------------------*/
/*テーブル(共通)の書式設定*/
/*------------------------------------------------*/
/*偶数行の背景色*/
.table-striped_my > tbody > tr:nth-child(2n) {
    font-weight: normal;
    background-color: #f6f6f6;
}
/*奇数行の背景色*/
.table-striped_my > tbody > tr:nth-child(2n+1) {
    font-weight: normal;
    background-color: #ffffff;
}

/*2行飛びの背景色*/
.table-striped_double_my > tbody > tr:nth-child(4n+1) {
    font-weight: normal;
    background-color: #ffffff;
}
.table-striped_double_my > tbody > tr:nth-child(4n+2) {
    font-weight: normal;
    background-color: #ffffff;
}
.table-striped_double_my > tbody > tr:nth-child(4n+3) {
    font-weight: normal;
    background-color: #f6f6f6;
}
.table-striped_double_my > tbody > tr:nth-child(4n) {
    font-weight: normal;
    background-color: #f6f6f6;
}
/*マウスを重ねた行のハイライト設定*/
.table-hover_my > tbody > tr:hover {
    font-weight: bold;
    background-color: #f5f5f5;
}
/*------------------------------------------------*/
.scroll_dummy {
    width: 17px;
}
/*------------------------------------------------*/
/*テーブル(all)の書式設定*/
/*------------------------------------------------*/
.table_my {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    border: 2px solid rgb(181, 175, 175);
    font-size: 14px;
}
    .table_my > thead > tr {
        background-color: #d1feff;
    }

        .table_my > thead > tr > th,
        .table_my > thead > tr > td {
            padding: 8px;
            line-height: 1.42857143;
            vertical-align: top;
            margin-left: auto;
            margin-right: auto;
        }
.table-condensed_my > thead > tr > th,
.table-condensed_my > thead > tr > td {
    padding: 1px;
}
/*------------------------------------------------*/
.table_my > tbody > tr > th,
.table_my > tbody > tr > td {
    padding: 8px;
    line-height: 1.42857143;
    vertical-align: top;
    border-top: 1px solid #ddd;
    margin-left: auto;
    margin-right: auto;
}
.table-condensed_my > tbody > tr > th,
.table-condensed_my > tbody > tr > td {
    padding: 2px;
}
/*------------------------------------------------*/
.table_my > tfoot > tr > th,
.table_my > tfoot > tr > td {
    padding: 8px;
    line-height: 1.42857143;
    vertical-align: top;
    border-top: 1px solid #ddd;
}
.table-condensed_my > tfoot > tr > th,
.table-condensed_my > tfoot > tr > td {
    padding: 2px;
}
/*------------------------------------------------*/
.table_my > caption + thead > tr:first-child > th,
.table_my > colgroup + thead > tr:first-child > th,
.table_my > thead:first-child > tr:first-child > th,
.table_my > caption + thead > tr:first-child > td,
.table_my > colgroup + thead > tr:first-child > td,
.table_my > thead:first-child > tr:first-child > td {
    border-top: 0;
}
.table_my > tbody + tbody {
    border-top: 2px solid #ddd;
}

/* 外枠部分 */
.y_data_area {
    width: 420px;
    border-right: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    border-left: 1px solid #CCC;
}

/* タイトル部分 */
.y_data_title {
    width: 420px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
}

    .y_data_title th {
        text-align: center;
        border-top: 1px solid #CCC;
        background: #EEF1F4;
    }

    .y_data_title th,
    .y_data_title td {
        padding: 2px;
        border-right: 1px solid #CCC;
        border-bottom: 1px solid #CCC;
    }

        .y_data_title th.col1 { text-align: center; width: 70px; }
        .y_data_title th.col2 { width: 120px; }
        .y_data_title th.col3 { width: 60px; }
        .y_data_title th.col4 { width: 80px; }
        .y_data_title th.col5 { border-right: 0; width: 80px; }
        .y_data_title th.col6 { width: 20px; }

/* データ部分 */
.y_scroll_box {
    width: 420px;
    max-height: 2000px;
    height: auto !important;
    height: 2000px;
    overflow-x: hidden;
    overflow-y: scroll;
}

    .y_scroll_box::-webkit-scrollbar { width: 17px; background: #eee; }
    .y_scroll_box::-webkit-scrollbar-button { width: 17px; background: #666; }
    .y_scroll_box::-webkit-scrollbar-thumb { background: #999; }
    .y_scroll_box::-webkit-scrollbar-corner { background: #ddd; }

.y_hidden {
    overflow: hidden;
    padding: 0 0 10px;
}

.y_data {
    width: 420px;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
}

    .y_data th,
    .y_data td {
        padding: 2px;
        border-right: 1px solid #CCC;
        border-bottom: 1px solid #CCC;
    }

    .y_data td {
        text-align: right;
        overflow: hidden;
        white-space: nowrap;
    }

        .y_data td.col1 { text-align: center; width: 70px; }
        .y_data td.col2 { width: 120px; }
        .y_data td.col3 { width: 60px; }
        .y_data td.col4 { width: 80px; }
        .y_data td.col5 { border-right: 0; width: 80px; }
        .y_data td.col6 { width: 20px; }
        .y_data td p { margin: 0; }

/* IE6 */
.y_data_title,
.y_data {
    _border-collapse: collapse;
}
/* IE7 */
*:first-child + html .y_data_title,
*:first-child + html .y_data {
    border-collapse: collapse;
}

/*================================================*/
/*  60表 - 統合テーブル + sticky ヘッダー          */
/*================================================*/

/* 外枠部分: 横スクロール対応 */
.t60_data_area {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
    border: 2px solid rgb(181, 175, 175);
    font-size: 14px;
    position: relative;
}

/* ★ スクロールコンテナ（縦+横スクロール） */
.t60_scroll_box {
    width: 100%;
    max-height: 840px;
    overflow-x: auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

    .t60_scroll_box::-webkit-scrollbar {
        width: 12px;
        height: 12px;
        background: #fff;
    }
    .t60_scroll_box::-webkit-scrollbar-button {
        width: 12px;
        background: #888;
    }
    .t60_scroll_box::-webkit-scrollbar-thumb {
        background: #999;
        border-radius: 6px;
    }
    .t60_scroll_box::-webkit-scrollbar-corner {
        background: #ddd;
    }

/* ★ 統合テーブル本体 */
.t60_data {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    min-width: 700px;
}

    /* ★★★ ヘッダー: position:sticky でスクロール時に固定 ★★★ */
    .t60_data > thead > tr {
        background-color: #d1feff;
    }

    .t60_data > thead > tr > th {
        position: sticky;
        top: 0;
        z-index: 10;
        background-color: #d1feff;
        padding: 6px 8px;
        line-height: 1.42857143;
        vertical-align: middle;
        text-align: center;
        border-bottom: 2px solid #b5afaf;
        white-space: nowrap;
    }

    /* ★ ボディ行 */
    .t60_data > tbody > tr > th,
    .t60_data > tbody > tr > td {
        padding: 4px 6px;
        line-height: 1.42857143;
        vertical-align: middle;
        border-top: 1px solid #ddd;
    }

    .t60_data td {
        text-align: center;
        white-space: nowrap;
    }

    /* 列幅の指定（thead, tbody共通で効く） */
    .t60_data .col_ID     { text-align: center; width: 50px; }
    .t60_data .col_time   { text-align: center; min-width: 160px; }
    .t60_data .col_pict   { text-align: center; min-width: 110px; }
    .t60_data .col_digit4 { text-align: center; min-width: 80px; }
    .t60_data .col_pref   { text-align: center; min-width: 60px; }
    .t60_data .col_digit3 { text-align: center; min-width: 60px; }
    .t60_data .col_kana   { text-align: center; width: 50px; }
    .t60_data .col_customer { text-align: center; }
    .t60_data .col_comment  { text-align: left; }
    .t60_data .col_last     { text-align: left; }

    .t60_data td p { margin: 0; }

/* ★ 旧 t60_data_title は互換性のため残す（他ページで使用している可能性） */
.t60_data_title {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
    border-spacing: 0;
    min-width: 700px;
}

    .t60_data_title th {
        text-align: center;
        background-color: #d1feff;
    }

    .t60_data_title th,
    .t60_data_title td {
        padding: 4px 6px;
        line-height: 1.42857143;
        vertical-align: middle;
    }

        .t60_data_title th.col_ID     { text-align: center; width: 50px; }
        .t60_data_title th.col_time   { text-align: center; min-width: 160px; }
        .t60_data_title th.col_pict   { text-align: center; min-width: 110px; }
        .t60_data_title th.col_digit4 { text-align: center; min-width: 80px; }
        .t60_data_title th.col_pref   { text-align: center; min-width: 60px; }
        .t60_data_title th.col_digit3 { text-align: center; min-width: 60px; }
        .t60_data_title th.col_kana   { text-align: center; width: 50px; }
        .t60_data_title th.col_customer { text-align: center; }
        .t60_data_title th.col_comment  { text-align: left; }
        .t60_data_title th.col_last     { text-align: left; }

/* 旧 t60_hidden は不要だが互換性のため残す */
.t60_hidden {
    overflow: visible;
    padding: 0;
}

/* 集計部分 */
.t60_data_summary {
    width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
}

    .t60_data_summary td {
        padding: 1px;
        line-height: 1.42857143;
        vertical-align: top;
        border-top: 1px solid #CCC;
        margin-left: auto;
        margin-right: auto;
        background-color: #d1feff;
    }

.boxLong {
    margin-left: 10px;
    width: 1070px;
    height: 50px;
}

.box1 {
    margin-left: 10px;
    float: left;
    width: 610px;
    height: 2050px;
}

.box2 {
    float: left;
    width: 450px;
    height: 2050px;
}

.space {
    clear: left;
}

.fitpicture {
    width: 90px;
    height: 40px;
}

.fitpicture_marubatu_header {
    width: 15px;
    height: 15px;
}
.fitpicture_marubatu {
    width: 25px;
    height: 25px;
}

/*================================================*/
/*  レスポンシブ対応 - メディアクエリ              */
/*================================================*/

/* --- タブレット (768px以下) --- */
@media screen and (max-width: 768px) {
    .size_150 {
        font-size: 120%;
    }
    h1 { font-size: 1.4em; }
    h2 { font-size: 1.1em; }

    .t60_data {
        min-width: 600px;
    }

    .fitpicture {
        width: 70px;
        height: 32px;
    }

    .t60_scroll_box {
        max-height: 600px;
    }

    .graph_area {
        min-width: 100%;
        min-height: 400px;
    }
}

/* --- スマートフォン (480px以下) --- */
@media screen and (max-width: 480px) {
    .size_150 {
        font-size: 100%;
    }
    h1 { font-size: 1.2em; }
    h2 { font-size: 1em; }

    .t60_data_area {
        border-width: 1px;
        margin-bottom: 10px;
    }

    .t60_data {
        min-width: 550px;
    }

    .t60_data > thead > tr > th {
        padding: 3px 4px;
        font-size: 12px;
    }
    .t60_data > tbody > tr > td {
        padding: 3px 4px;
        font-size: 12px;
    }

    .fitpicture {
        width: 55px;
        height: 25px;
    }
    .fitpicture_marubatu {
        width: 20px;
        height: 20px;
    }
    .fitpicture_marubatu_header {
        width: 12px;
        height: 12px;
    }

    .t60_scroll_box {
        max-height: 500px;
    }

    input[type="checkbox"] {
        transform: scale(1.4);
    }

    .form-item { margin-bottom: 1em; }
    .empty_block { padding: 10px; }

    .boxLong { width: 100%; margin-left: 0; }
    .box1,
    .box2 {
        float: none;
        width: 100%;
        height: auto;
        margin-left: 0;
    }

    .graph_area {
        min-width: 100%;
        min-height: 300px;
    }
}

/*================================================*/
/* 横スクロールヒント（モバイル用）                */
/*================================================*/
.t60_scroll_hint {
    display: none;
}

@media screen and (max-width: 768px) {
    .t60_scroll_hint {
        display: block;
        text-align: center;
        padding: 6px;
        font-size: 12px;
        color: #888;
        background: linear-gradient(90deg, transparent, #e8f8f8, transparent);
    }
    .t60_scroll_hint::before {
        content: "← 横スクロールで全項目表示 →";
    }
}

/* 登録ポップアップ */
