@charset "UTF-8";

/******************************************************************************************
 *  Foundation
 ******************************************************************************************/
:root {
    /*------------------------------
      コンテンツサイズ
    --------------------------------*/
    --contents-size-width: 1366px; /* コンテンツサイズ1366px（余裕を持たせておく） */

    /*------------------------------
      フォント
    --------------------------------*/
    /* フォント */
    --font-main: Meiryo; /* 基本 */
    /* サイズ */
    --font-size-main:            16px;       /* 基本 */
    --font-size-pageTitle:       1.5rem;     /* (24px) ページタイトル */
    --font-size-sectionTitle:    1.25rem;    /* (20px) 見出しなど*/
    --font-size-headerTitle:     1.125rem;   /* (18px) 充電計画策定結果：使用電力推移、EV移行費用算出結果画面：各シミュレーション */
    --font-size-btnSmall:        0.875rem;   /* (14px) ヘッダー・小サイズボタン */
    --font-size-unit:            0.8125rem;  /* (13px) 単位 */
    --font-size-sftResBreakdown: 0.8125rem;  /* (13px) EV移行費用算出結果画面：内訳 */
    --font-size-graphScale:      0.75rem;    /* (12px) グラフ目盛り */
    --font-size-loadingOverlay:  2.75rem;    /* (44px) ローディングオーバーレイ*/
    --font-size-tblSordBtn:      0.625rem;   /* (10px) 案件一覧：ソートボタン */
    --font-size-validationErr:   0.8125rem;  /* (13px) バリデーションエラー */
    /* 行の高さ */
    --font-size-lineHeight-main: 1.25rem; /* (24px) 基本 */
    
    /*------------------------------
      カラー
    --------------------------------*/
    /* 文字 */
    --color-font-input:                #404040;    /* 入力項目       */
    --color-font-main:                 #3C5868;    /* システム定義   */
    --color-font-error:                #EE2121;    /* エラー         */
    --color-font-error-disabled:       #EE212180;  /* エラー 非活性時 */
    --color-font-disabled:             #3C586880;  /* 非活性         */
    --color-font-required:             #FFFFFF;    /* 必須項目ラベル */
    --color-font-execute:              #FFFFFF;    /* 実行ボタン   */
    --color-font-input-hover:          #6A6A6A;    /* 入力項目 マウスオーバー時     */
    --color-font-main-hover:           #608296;    /* システム定義 マウスオーバー時 */
    --color-font-sftRes-installCost:   #16AB79;    /* EV移行費用算出結果：導入費 */
    --color-font-sftRes-runningCost:   #1674AB;    /* EV移行費用算出結果：運用費 */
    --color-font-sftRes-label-office:  #294876;    /* EV移行費用算出結果：施設ラベル */
    --color-font-sftRes-label-special: #433391;    /* EV移行費用算出結果：特例需要ラベル */
    /* 背景 */
    --color-background-main:                 #F8F9FB;  /* 基本               */
    --color-background-sub:                  #E9F4F5;  /* ヘッダー、ファイル */
    --color-background-info:                 #FFFFFF;  /* 情報               */
    --color-background-error:                #FDEDEE;  /* エラー              */
    --color-background-warning:              #FFF3D2;  /* 警告                */
    --color-background-required:             #DD901B;  /* 必須項目ラベル     */
    --color-background-master:               #ECEFF5;  /* マスタ管理         */
    --color-background-tblHeader:            #E9F4F5;  /* 一覧テーブルヘッダ */
    --color-background-tblBody:              #FFFFFF;  /* テーブルボディ     */
    --color-background-sftResBest:           #FFFDDF;  /* EV移行費用算出結果：最良値 */
    --color-background-checked:              #BCE3EC;  /* プルダウン選択済み項目       */
    --color-background-sftRes-label-office:  #C3E4F2;  /* EV移行費用算出結果：施設ラベル */
    --color-background-sftRes-label-special: #DDDEF6;  /* EV移行費用算出結果：特例需要ラベル */
    /* ボタン背景 */
    --color-background-button-main:             #FFFFFF;    /* 通常ボタン 通常時           */
    --color-background-button-disabled:         #E8EBEB;    /* 通常ボタン 非活性時           */
    --color-background-button-hover:            #F2F7F7;    /* 通常ボタン マウスオーバー時 */
    --color-background-button-active:           #E8EBEB;    /* 通常ボタン 押下時           */
    --color-background-button-execute-main:     #0884A2;    /* 実行ボタン 通常時           */
    --color-background-button-execute-disabled: #0884A280;  /* 実行ボタン 非活性時         */
    --color-background-button-execute-hover:    #2597B3;    /* 実行ボタン マウスオーバー時 */
    --color-background-button-execute-active:   #096E87;    /* 実行ボタン 押下時           */
    --color-background-button-accordion-hover:  #E8E8E8;    /* 開閉ボタン マウスオーバー時 */
    --color-background-button-delete-hover:     #FFF3F3;    /* 削除ボタン マウスオーバー時 */
    --color-background-button-delete-active:    #ECD9D9;    /* 削除ボタン マウスオーバー時 */
    --color-background-button-checked:          #26A621;    /* ラジオボタン・チェックボックス 選択済み */
    /* 境界線 */
    --color-border-input:             #647B89;    /* テキストボックス、タブ、間隔線   */
    --color-border-input-diabled:     #647B8980;  /* ボタン非活性                     */
    --color-border-table:             #DDDDDD;    /* テーブルタイトル、テーブルデータ */
    --color-border-sub:               #E0E9EE;    /* 補足情報                         */
    --color-border-error:             #FFCDD0;    /* エラー表示                       */
    --color-border-error-disabled:    #FFCDD080;  /* エラー表示 非活性時              */
    --color-border-warning:           #F5E1B3;    /* 警告表示                         */
    --color-border-btnTab-container:  #C4C4C4;    /* 画面切り替えタブの横線 */ 
    --color-border-btnTab-disabled:   #0884A2;    /* 画面切り替えタブボタン（表示中）の下枠線*/
    --color-border-vehIntervalLine:   #7F8A91;    /* 対象EV選定画面の横線 */
    --color-border-chgAlloc:          #3C5868;    /* 「充電器割り当て」ボタン脇の横線 */
    --color-border-citeSiteContract:  #7F8A91;    /* 「別拠点・案件から引用」の横線 */
}

body {
    margin: 0;
    background-color: var(--color-background-main);
    color:  var(--color-font-main);
    font:   normal normal normal var(--font-size-main)/var(--font-size-lineHeight-main) var(--font-main);
}

th, td {
    padding: 0px;
}

th {
    text-align:  left;
    font-weight: normal;
}

input, select, button {
    /* inputにフォント設定は継承されないので直接設定する */
    color:  var(--color-font-input);
    font:   normal normal normal var(--font-size-main)/var(--font-size-lineHeight-main) var(--font-main);
}

abbr {
    text-decoration: none;
}

/******************************************************************************************
 *  Layout
 ******************************************************************************************/
#l-gridContainer,
#l-gridContainer_noFooter {
    width:        100%;
    height:       auto;
    display:      grid;
    display:      -ms-grid;
    
    grid-template-areas: 'header'
                         'main'
                         'footer';
                         
    -ms-grid-rows:      70px auto 72px;
    grid-template-rows: 70px auto 72px;
    
    -ms-grid-columns:      100%;
    grid-template-columns: 100%;
    
}
#l-gridContainer_noFooter {
    grid-template-areas: 'header'
                         'main';
                         
    -ms-grid-rows:      70px max(calc(100% - 70px), calc(100vh - 70px));
    grid-template-rows: 70px max(calc(100% - 70px), calc(100vh - 70px));
    
}

#l-gridHeader  {min-width: calc(var(--contents-size-width) - (100vw - 100%)); grid-area: header; -ms-grid-column: 1; -ms-grid-row: 1; background-color: var(--color-background-sub);}
#l-gridMain    {min-width: calc(var(--contents-size-width) - (100vw - 100%)); grid-area: main;   -ms-grid-column: 1; -ms-grid-row: 2;}
#l-gridFooter  {min-width: calc(var(--contents-size-width) - (100vw - 100%)); grid-area: footer; -ms-grid-column: 1; -ms-grid-row: 3;}

/******************************************************************************************
 *  Object
 ******************************************************************************************/
/*********************************************
 *  Component
 *********************************************/
/*----------------------------------------
  ボタン
------------------------------------------*/
/* タブ切り替えボタン */
input[type=button].c-btnTab {
    font-size:        var(--font-size-btnSmall);
    color:            var(--color-font-main);
    background-color: rgba(0,0,0,0);
    cursor:           pointer;
}


/* ラジオボタン */
.c-radio {
    width:          16px;
    height:         16px;
    accent-color:   var(--color-background-button-checked);
    vertical-align: top;
    border:         1px solid var(--color-font-main);
}

/* アコーディオンボタン */
.c-accordionBtn-closed,
.c-accordionBtn-opened {
    width:               22px;
    height:              22px;
    border:              none;
    background-repeat:   no-repeat;
    background-position: center;
}
.c-accordionBtn-closed {
    background-image: url('/image/accordion_close-a1ba40039500cc194ed8107e2a16ab14.svg' );
}
.c-accordionBtn-opened {
    background-image: url('/image/accordion_open-ef4168f6dbd207dfc526f2be5d429dbd.svg' );
}
.c-accordionBtn-closed:hover,
.c-accordionBtn-opened:hover {
    background-blend-mode: multiply;
    background-color:      var(--color-background-button-accordion-hover);
}

/*--------------------
  アイコン無しボタン 
 --------------------*/
/* 大ボタン（検索・次へ・閉じる・キャンセル・計算対象とするEVを選択し直す） */
.c-btnBig {
    height:           36px;
    padding:          3px 20px 0px 20px;
    font-size:        var(--font-size-main);
    color:            var(--color-font-main);
    border:           1px solid var(--color-border-input);
    border-radius:    4px;
    background-color: var(--color-background-button-main);
    cursor:           pointer;
}
/* 実行ボタン（シミュレーション実行・〇〇策定へ・登録） */
.c-btnExe {
    height:           36px;
    padding:          3px 20px 0px 20px;
    font-size:        var(--font-size-main);
    color:            var(--color-font-execute);
    border:           none;
    border-radius:    4px;
    background-color: var(--color-background-button-execute-main);
    cursor:           pointer;
}
/* すべて開くボタン */
.c-btnOpen {
    height:           27px;
    padding:          2px 12px 0px 12px;
    margin-left:      21px;
    font-size:        var(--font-size-btnSmall);
    color:            var(--color-font-main);
    border:           1px solid var(--color-border-input);
    border-radius:    4px;
    background-color: var(--color-background-button-main);
    cursor:           pointer;
}
/* 戻るボタン */
.c-btnBack {
    height:           24px;
    font-size:        var(--font-size-main);
    color:            var(--color-font-main);
    border:           none;
    background-color: rgba(0,0,0,0);
    cursor:           pointer;
}
/* リンクボタン（クリア・導入EV情報・EV電力量・充電器割り当て・充電計画） */
.c-btnLink {
    height:           24px;
    margin-right:     20px;
    font-size:        var(--font-size-main);
    color:            var(--color-font-main);
    border:           none;
    background-color: rgba(0,0,0,0);
    text-decoration:  underline;
    cursor:           pointer;
}
/* リンクボタン（小）（マスタ情報管理・アカウント） */
.c-btnLinkSmall {
    height:           21px;
    font-size:        var(--font-size-btnSmall);
    color:            var(--color-font-main);
    border:           none;
    background-color: rgba(0,0,0,0);
    text-decoration:  underline;
    cursor:           pointer;
}

/* 入力値ボタン（個車ファイル選択） */
.c-btnInput {
    height:           24px;
    margin-right:     20px;
    font-size:        var(--font-size-main);
    color:            var(--color-font-input);
    border:           none;
    background-color: rgba(0,0,0,0);
    text-decoration:  underline;
    cursor:           pointer;
}
/* 入力値ボタン（改行あり）（案件名） */
.c-btnInputLf {
    height:           100%;
    margin-right:     20px;
    padding:          0px;
    font-size:        var(--font-size-main);
    color:            var(--color-font-input);
    border:           none;
    background-color: rgba(0,0,0,0);
    text-decoration:  underline;
    cursor:           pointer;
    text-align:       left;
    overflow-wrap:    anywhere;
}
 
/*--------------------
  アイコン付きボタン 
 --------------------*/
.c-btnIconBig,
.c-btnIcon,
.c-btnIconDelete {
    color:            var(--color-font-main);
    border:           1px solid var(--color-border-input);
    border-radius:    4px;
    background-color: var(--color-background-button-main);
    cursor:           pointer;
}   

.c-btnIconBig img,
.c-btnIcon img,
.c-btnIconDelete img {
    vertical-align: middle;
}

.c-btnIcon span,
.c-btnIconBig span,
.c-btnIconDelete span {
    margin-left: 5px;
    vertical-align: middle;
}


/* 大アイコン付きボタン（案件を追加・車両を追加・項目を追加・充電器を追加） */
.c-btnIconBig {
    height:           36px;
    padding:          2px 20px 0px 21px;
    font-size:        var(--font-size-main);
}   
.c-btnIconBig img {
    width:          14px;
    height:         14px;
    margin-bottom:  2px;
}
/* アイコン付きボタン（変更・編集・複製・結果表示・書き出し） */
.c-btnIcon {
    height:           27px;
    padding:          2px 8px 0px 8px;
    font-size:        var(--font-size-btnSmall);
}   
.c-btnIcon img {
    width:          15px;
    height:         15px;
}
/* 削除ボタン */
.c-btnIconDelete {
    height:           27px;
    padding:          2px 8px 0px 8px;
    font-size:        var(--font-size-btnSmall);
    color:            var(--color-font-error);
    border:           1px solid var(--color-font-error);
}   
.c-btnIconDelete img {
    width:          11px;
    height:         11px;
    margin-bottom:  2px;
}
/* 再計算ボタン */
.c-btnReload span {
    margin-right: 5px;
}
.c-btnReload div {
    width: 11px;
    height: 11px;
    display: inline-block;
    overflow: hidden;
    animation: spin 2s linear infinite;
}
@keyframes spin {
    0%   { transform: rotate(360deg); }
    100% { transform: rotate(0deg); }
}
.c-btnReload div img {
    position:relative;
    width:256px;
    height:240px;
    left: -67px;
    top: -83px;
    clip: rect(83px, 77px, 93px, 67px);
}


/*-----------------------
  ボタンマウスアクション  
 -----------------------*/
 /* 枠線有りボタン（共通） */
.c-btnBig:hover,
.c-btnOpen:hover,
.c-btnIcon:hover,
.c-btnIconBig:hover,
.c-btnIconSmall:hover,
.c-btnIconDelete:hover {
    background-color: var(--color-background-button-hover);
}
.c-btnBig:active,
.c-btnOpen:active,
.c-btnIcon:active,
.c-btnIconBig:active,
.c-btnIconSmall:active,
.c-btnIconDelete:active {
    background-color: var(--color-background-button-active);
}
/* 枠線無しボタン（共通） */
.c-btnBack:hover,
.c-btnLink:hover,
.c-btnLinkSmall:hover {
    color:            var(--color-font-main-hover);
}
.c-btnInput:hover {
    color:            var(--color-font-input-hover);
}
/* 実行ボタン */
.c-btnExe:hover {
    background-color: var(--color-background-button-execute-hover);
    color:            var(--color-font-execute);
}
.c-btnExe:active {
    background-color: var(--color-background-button-execute-active);
}
/* 削除ボタン */
.c-btnIconDelete:hover {
    background-color: var(--color-background-button-delete-hover);
}
.c-btnIconDelete:active {
    background-color: var(--color-background-button-delete-active);
}

/* 通常ボタン（非活性）、アイコン付きボタン（非活性） */
.c-btnBig:disabled,
.c-btnIcon:disabled,
.c-btnIconBig:disabled {
    color:            var(--color-font-disabled);
    border:           1px solid var(--color-border-input-diabled);
    pointer-events:   none;
}
/* 実行ボタン（非活性） */
.c-btnExe:disabled {
    background-color: var(--color-background-button-execute-disabled);
    pointer-events:   none;
}
/* 削除ボタン（非活性） */
.c-btnIconDelete:disabled {
    color:            var(--color-font-error-disabled);
    border:           1px solid var(--color-border-error-disabled);
    pointer-events:   none;
}
/* 下線のみボタン（非活性） */
.c-btnBack:disabled,
.c-btnInputLf:disabled,
.c-btnLinkSmall:disabled {
    color:            var(--color-font-disabled);
    pointer-events:   none;
}
/* アイコン付きボタン（非活性） */
.c-btnIcon:disabled img,
.c-btnIconBig:disabled img,
.c-btnIconDelete:disabled img {
    opacity: 50%;
}



/*----------------------------------------
  ファイル
------------------------------------------*/
.c-file {
    display: none;
}

/*----------------------------------------
  リンク
------------------------------------------*/
.c-link {
    color: var(--color-font-main);
}
.c-link:hover {
    color: var(--color-font-main-hover);
}

/*----------------------------------------
  テキストボックス
------------------------------------------*/
/*
 * .c-txt { ※枠線等は「共通設定」で指定 }
 *
 */
.c-txt {
    height: 30px; /* padding,borderを含まない値 */
    padding: 1px 8px;
}

/* 非活性 */
.c-txt:disabled {
    color: var(--color-font-disabled);
}

/*----------------------------------------
  セレクトボックス
------------------------------------------*/
/*
 * .c-sel { ※枠線等は「共通設定」で指定 }
 * selectタグにc-selクラスを指定
 * 親要素のdivタグにc-sel-wrapクラスを指定
 *
 */

.c-sel-wrap { /* selectボックスの親要素 */
    position: relative;
    display:  inline-block;
}
.c-sel-wrap:after { /* selectボックスの親要素にオリジナルの矢印を宣言 */
    content:        "";
    position:       absolute;
    right:          12px;
    top:            15px;
    width:          8px;
    height:         8px;
    pointer-events: none;  
    border-top:     1px solid var(--color-font-main);
    border-left:    1px solid var(--color-font-main);
    transform:      translateY(-50%) rotate(-135deg);
}

.c-sel {
    height:     36px; /* padding,borderを含んだ値 */
    width:      100%;
    padding:    1px 30px 1px 8px;
    appearance: none;
}

.c-sel:hover {
    background-color: var(--color-background-button-hover);
}
.c-sel:disabled {
    color:            var(--color-font-disabled);
    border:           1px solid var(--color-border-input-diabled);
    background-color: var(--color-background-button-disabled);
    pointer-events:   none;
}
.c-sel option {
    background-color: var(--color-background-button-hover);
}
.c-sel option:checked {
    background-color: var(--color-background-checked);
}

/*----------------------------------------
  チェックボックス
------------------------------------------*/
/*
 * .c-chkbox { ※「共通設定」で指定 }
 *
 */
.c-chkbox {
    width:         16px;
    height:        16px;
    accent-color:  var(--color-background-button-checked);
    border:        1px solid var(--color-font-main);
}

/*----------------------------------------
  タイトル
------------------------------------------*/
/* ヘッダー（システム名） */
.c-headerTitle {
    font-size: var(--font-size-headerTitle);
}
/* ヘッダー (会社名) */
.c-headerNavTitle {
    font-size: var(--font-size-main);
}
/* ヘッダー (拠点名、案件名) */
/*
 * .c-headerNavTitleSub { ※「共通設定」で指定 }
 *
 */

/* 画面 */
/*
 * .c-screenTitle { ※「共通設定」で指定 }
 *
 */

/* 操作説明 */
.c-information {
    height:           18px; /* 36 */
    padding:          8px 0 8px 10px;
    color:            var(--color-font-main);
    background-color: var(--color-background-info);
    border:           1px solid var(--color-border-sub);
    border-radius:    4px;
    /*opacity:          0.8;*/
}

/* 見出し  （下位に複数の項目を含む場合に使う） */
/*
 * .c-caption { ※「共通設定」で指定 }
 *
 */
.c-caption { 
   vertical-align: middle;
}

/* 小見出し（単一のまとまりのラベリングの役割） */
/*
 * .c-captionSmall { ※フォント情報は「共通設定」で指定 }
 *
 */

.c-captionSmall:before { /* | */
    content: '';
    /* 配置 */
    display:      inline-block;
    position:     relative;
    top:          2px;
    width:        5px;
    height:       16px;
    margin-right: 6px;
    /* 枠線 */
    border:              none;
    /* 背景 */
    background-repeat:   no-repeat;
    background-position: center;
    background-image:    url('/image/section-009e26661819c56808ae4b08be85673d.svg' );
}

/* セクションアイコン */
.c-titleIcon {
    width:          24px;
    height:         24px;
    padding-right:  6px;
    vertical-align: middle;
}


/*----------------------------------------
  エラー・警告表示
------------------------------------------*/
/* *** 警告・注意メッセージ *** */
.c-errMsg,
.c-warMsg {
    width:   calc(100% - 28px);
    padding: 10px 13px 8px 13px;
    margin:  20px 0px;
    /* 枠線 */
    border:           1px var(--color-border-error) solid;
    border-radius:    4px;
    /* 背景色 */
    background-color: var(--color-background-error);
}
.c-warMsg {
    /* 枠線 */
    border-color:     var(--color-border-warning);
    /* 背景色 */
    background-color: var(--color-background-warning);
}

.c-errMsg span,
.c-warMsg span {
    color:          var(--color-font-input);
    vertical-align: middle;
}

.c-errMsg img,
.c-warMsg img {
    height:         20px;
    vertical-align: middle;
    padding:  0 5px 5px 0; 
}

/* *** バリデーションエラー *** */
.c-validationErr,
.c-restErr {
    /* フォント */
    font-size:   var(--font-size-validationErr);
    color:       var(--color-font-error);
}

td.c-validationErr {
    /* 配置 */
    vertical-align: top;
}
td.c-validationErr span:nth-child(1),
span.c-validationErr {
    /* 配置 */
    display:    block;
    margin-top: 4px;
}


/*----------------------------------------
  |>
------------------------------------------*/
.c-nav_arrow {
    width:  6px;
    height: 13px;
    border: none;
    background-repeat:   no-repeat;
    background-position: center;
    background-image:    url('/image/arrow-baeb9738cd11ee927a631d373edc5e2a.svg' );
}

/*----------------------------------------
  間隔線
------------------------------------------*/
.c-intervalLine {
    display:    inline-block;
    height:     3px;
    border-top: solid 2px var(--color-border-input);
}

/*----------------------------------------
  LoadingOverlay
------------------------------------------*/
.c-loadingoverlay_container {
    /* 画面全体を覆う */
    position: fixed;
    top:      0px;
    left:     0px;
    width:    100%;
    height:   100%;
    z-index:  10000;

    /* 背景色 */
    background-color: rgba(255, 255, 255, 0.7);

    /* 内部要素 */
    flex-flow:       column nowrap;
    justify-content: center;
    align-items:     center;
    gap:             55px;
    /* display:flex;はローディングオーバーレイ表示時に付与 */
}

.c-loadingoverlay_container > * {
    flex-shrink: 0;
    flex-grow:   0;
}

.c-loadingoverlay_text {
    height:      66px;
    /* フォント */
    color:       var(--color-font);
    font-size:   var(--font-size-loadingOverlay);
    line-height: normal;
    font-weight: bold;
}

.c-loadingoverlay_loadingImg {
    width:  150px;
    height: 150px;
}


/*----------------------------------------
  入力必須項目
------------------------------------------*/
.c-inpRequired {
    color:            var(--color-font-required);
    background-color: var(--color-background-required);
    font-size:        var(--font-size-unit);
    padding:          0 0.3em;
    margin-left:      8px;
    margin-bottom :   0.2em;
    border-radius:    4px;
    display:          inline-block;  /* インラインブロック化 */
    vertical-align:   bottom;        /* 下端を揃える */
}


/*----------------------------------------
  補足情報テーブル
------------------------------------------*/
.c-suplInfoTbl {
    /* 枠線 */
    border:           1px var(--color-border-table) solid;
    border-radius:    4px;
    /* 背景色 */
    background-color: var(--color-background-tblBody);
}
.c-suplInfoTbl > thead {
    color: var(--color-font-main);
}

.c-suplInfoTbl > tbody {
    color: var(--color-font-input);
}

/*----------------------------------------
  一覧テーブル
  ※ EV移行費用（sft_inp, sft_res）は形状が特殊なため個別で色などを設定
------------------------------------------*/
.c-listTbl {
    border-collapse: collapse;
    table-layout:    fixed;
    /* 枠線 */
    border: 1px var(--color-border-table) solid;
}

.c-listTbl > thead {
    text-align:       left;
    /* 文字色 */
    color:            var(--color-font-main);
    /* 背景色 */
    background-color: var(--color-background-tblHeader);
}
.c-listTbl > tbody {
    /* 文字色 */
    color:            var(--color-font-input);
    /* 背景色 */
    background-color: var(--color-background-tblBody);
}

.c-listTbl > thead > tr > th,
.c-listTbl > tbody > tr > td{
    /* 枠線 */
    border-bottom: 1px var(--color-border-table) solid;
}

.c-listTbl > tbody > tr:nth-last-child(1) > td { /* 最下部のtrは下線を描画しない */
    /* 枠線 */
    border-bottom: none;
}

/* *** エラー値 *** */
.c-listTbl > tbody > tr.c-errVal {
    /* 背景色 */
    background-color: var(--color-background-error);
}
.c-listTbl > tbody > tr.c-errVal > td.c-errVal{
    /* フォント */
    color:       var(--color-font-error);
    font-weight: bold;
}

/* *** 注意値 *** */
.c-listTbl > tbody > tr > td.c-attentionVal{
    /* フォント */
    background-color: var(--color-background-warning);
}



/*----------------------------------------
  幅あふれを折りたたんで表示
------------------------------------------*/
.c-folding {
    word-break:    break-all;
    white-space:   normal;
    overflow-wrap: anywhere;
}

/*----------------------------------------
  幅あふれを「…」で置き換え
------------------------------------------*/
.c-ellipsis {
    overflow:      hidden;
    white-space:   nowrap;
    text-overflow: ellipsis;
}

/*----------------------------------------
  詳細情報・テーブルデータ
  
  データ表示は主に以下の形式をとる。
  <td,divなど>
    <span class="c-tblVal"></span><span class="c-unit"></span>
  </>
  もしくは、
  <td,divなど>
    <input class="c-tblVal" /><span class="c-unitInput"></span>
  </>
  
  ※1) REST通信での値の操作を挟まない場合は.c-tblValは不要。
       また、単位がない値の場合は.c-unitは不要。
  
  ※2) c-tblValとc-unitの間に改行を挟むとhtml表示時に空白が挟まる（htmlの仕様）ため、改行しないこと。
  
  ※3）sft_inpでは単位と値が別カラムのためこの限りではない。
  
------------------------------------------*/
.c-unit,
.c-unitInput,
.c-unitInput_pre { /* 単位 */
    font-size:    var(--font-size-unit);
    font-weight:  normal;
}
.c-unitInput,
.c-unitInput_pre { /* inputの前後の単位は下寄せする */
    display:        inline-block;
    vertical-align: bottom;
}
.c-unit,
.c-unitInput {
    padding-left: 4px;
}
.c-unitInput_pre { /* 前につける単位は右にスペースを入れる */
    padding-right: 4px;
}


/*----------------------------------------
  画面切り替えタブ
  
  データ表示は主に以下の形式をとる。
    <div class="c-btnTabContainer">
        <input type="button" class="c-btnTab" disabled />
        <input type="button" class="c-btnTab" />
        ...
        <div class="c-intervalLine"></div>
    </div>
  
------------------------------------------*/
.c-btnTabContainer {
    margin-bottom: 30px;
}

/* 水平線 */
.c-btnTabContainer .c-horizontalLine {
    display:  block;
    position: relative;
    margin:   0px;

    left:     min(calc((var(--contents-size-width) - 100vw) / 2 - 60px),
                  -60px);
    /* widthはcommon.jsで指定 */
    height:   0px;

    /* 枠線 */
    border-top: 1px var(--color-border-btnTab-container) solid;
}


/* *** タブボタン *** */
/* 表示していない画面のタブボタン */
.c-btnTabContainer input.c-btnTab {
    /*height: 30px;*/
    margin-right: 17px;
    padding:      0px 13px 9px 13px;
    /* 背景色 */
    background-color: var(--color-background-main);
    /* 枠線 */
    border: none;
}

/* 表示している画面のタブボタン */
.c-btnTabContainer input.c-btnTab:disabled {
    padding-bottom: 6px;
    /* フォント */
    font-weight: bold;
    /* 枠線 */
    border-bottom: 3px var(--color-border-btnTab-disabled) solid;
}





/*========================================
  共通設定
==========================================*/
/* フォントサイズ */
.c-screenTitle {
    font-size:   var(--font-size-pageTitle);
    line-height: var(--font-size-pageTitle);
}

.c-caption {
    font-size:   var(--font-size-sectionTitle);
}

/* 太文字 */
.c-screenTitle,
.c-caption,
.c-captionSmall {
    font-weight: bold;
}

/* 枠線あり */
.c-sel,
.c-txt {
    border:        solid 1px var(--color-border-input);
    border-radius: 4px;
}
/* 文字寄せ */
.c-right {
    text-align: right;
}
.c-center {
    text-align: center;
}
.c-left {
    text-align: left;
}


/*
 * --- JavaScriptでのみ使用 ---
 * 
 * サブミット実行 : c-submit
 * 必須入力項目   : c-requiredField
 * 
 * モーダル開く   : c-modalOpen
 * モーダル閉じる : c-modalClose
 *
 * 補足情報表示・テーブル表示データ（文字・数値）：c-tblVal
 * 
 */


/*********************************************
 *  Project
 *********************************************/
/*----------------------------------------
  【 エラー 】
------------------------------------------*/
.p-err_link {
    margin: 20px 0 30px 30px;
}
.p-err_link > * {
    display:        block;
    padding-bottom: 20px;
}

/*----------------------------------------
  認証処理画面共通
------------------------------------------*/
/* 入力テーブル */
.p-auth_inputTbl,
.p-auth_inputTbl_noMargin {
    /* サイズ */
    width:  365px;
    margin: 30px auto 0px auto;
    /* テーブル設定 */
    border-collapse: collapse;
    table-layout:    fixed;
}
.p-auth_inputTbl_noMargin { /* 警告・エラーメッセージ表示時 */
    margin-top: 0px;
}
.p-auth_inputTbl th,
.p-auth_inputTbl_noMargin th { /* 入力項目名 */
    padding: 0 0 7px 0;
}

.p-auth_inputTbl-row_validation th,
.p-auth_inputTbl-row_validation td { /* 項目バリデーション結果 */
    padding: 0 0 30px 0;
}

/* 入力項目 */
.p-auth_inputTbl .c-txt,
.p-auth_inputTbl_noMargin .c-txt { /* TODO; 消す*/
    padding: 1px 8px;
}
.p-auth_inputTbl .c-txt,
.p-auth_inputTbl_noMargin .c-txt { /* 入力項目 */
    width: 347px; /* 365(-18) */
}

/* 遷移ボタン */
.p-auth_inputTbl-row_submit td { 
    text-align: center;
}

.p-auth_inputTbl-row_submit td input{
    margin: 0 auto;
}

/* フッター */
.p-footerAuth .c-btnBack { /* 遷移リンク */
    color: var(--color-font-main-hover);
}

/*----------------------------------------
  【 パスワード認証画面 】
------------------------------------------*/
.p-footerAuth .p-footerAuth_backBtn {
    text-decoration: underline;
}

/*----------------------------------------
  【 SMS認証画面 】
------------------------------------------*/

/*----------------------------------------
  【 パスワード変更画面 】
------------------------------------------*/
/* パスワード入力ルール */
.p-authForgot_inputTbl-passwordRule {
    width:   474px;
    margin:  0 auto 30px auto;
    padding: 0;
}

.p-authForgot_inputTbl-passwordRule ul {
    margin:  0;
    padding: 0;
}
.p-authForgot_inputTbl-passwordRule span,
.p-authForgot_inputTbl-passwordRule li    {
    margin:  4px 0;
}

/* 文字種ルール */
.p-authForgot_inputTbl-passwordRule li {
    list-style: none;
}
.p-authForgot_inputTbl-passwordRule li:before { /* * */
    content:    '＊';
    /* 配置 */
    display:    inline-block;
    position:   relative;
    top:        -1px;
    margin:     0 2px 0 8px;
    /* 枠線 */
    border:     none;
    /* 背景 */
    background: none;
}

/*----------------------------------------
  【 案件一覧 】
------------------------------------------*/
/*---------- ヘッダー ----------*/
/* メニュー */
.p-headerPrjLst_menu table {
    margin-left: auto;
}
.p-headerPrjLst_menu td {
    padding: 0 10px;
}
.p-headerNav_menu .c-btnLinkSmall,
.p-headerPrjLst_menu .c-btnLinkSmall {
    padding: 1px 3px;
}

/*---------- 検索条件 ----------*/
.p-prjLst_searchCond {
    margin: 0px 0 30px 0px;
}
.p-prjLst_searchCond > table {
    width:  100%;
}
.p-prjLst_searchCond th,
.p-prjLst_searchCond td {
    height: 36px;
    padding: 0 30px 0 0;
}

/* 入力欄 */
.p-prjLst_searchCond .p-prjLst_searchCond-cstName,       /* 顧客名 */
.p-prjLst_searchCond .p-prjLst_searchCond-cstSiteName,   /* 拠点名 */
.p-prjLst_searchCond .p-prjLst_searchCond-prjName     { /* 案件名 */
    width: 161px; /* 161 */
}
.p-prjLst_searchCond .p-prjLst_searchCond-cstName input,       /* 顧客名 */
.p-prjLst_searchCond .p-prjLst_searchCond-cstSiteName input,   /* 拠点名 */
.p-prjLst_searchCond .p-prjLst_searchCond-prjName input     { /* 案件名 */
    width: calc(100% - 18px); /* 161 */
}
.p-prjLst_searchCond .p-prjLst_searchCond-updateDate { /* 最終更新日時 */
    width: calc(118px * 2 + 28px);
}
.p-prjLst_searchCond .p-prjLst_searchCond-updateDate input { /* 最終更新日時 */
    width: 100px; /* 118 */
}
.p-prjLst_searchCond .p-prjLst_searchCond-updateDate span{ /* ～ */
    margin: 0px 6px;   
}

/* ボタン */
.p-prjLst_searchCond .p-prjLst_searchCond-action { /* ボタン類 */
    width:         calc(100% - (161px * 3 + 118px * 2 + 28px + 30px * 4));
    padding-right: 0px;
}
.p-prjLst_searchCond-action input {
    height: 36px;
}


/*---------- 検索結果 ----------*/
.p-prjLst_searchRes-outputTbl {
    margin-bottom: 60px;
    width:         100%;
    table-layout:  fixed;
}

.p-prjLst_searchRes-outputTbl [class^=p-prjLst_searchRes-outputTbl_col-] {
    padding: 11px 20px 11px 0px;
}
.p-prjLst_searchRes-outputTbl th[class^=p-prjLst_searchRes-outputTbl_col-] {
    padding-top:    0px;
    padding-bottom: 0px;
}
.p-prjLst_searchRes-outputTbl th[class^=p-prjLst_searchRes-outputTbl_col-] td {
    overflow-wrap: break-word;
    white-space:   normal;
}

/* データ幅：臨機応変に調整 */
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-cstName,
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-cstName_noBorder {  /* 顧客名 */
    width:        157px; /* 227 */
    padding-left: 20px;
}
.p-prjLst_searchRes-outputTbl.c-locale_en .p-prjLst_searchRes-outputTbl_col-cstName,
.p-prjLst_searchRes-outputTbl.c-locale_en .p-prjLst_searchRes-outputTbl_col-cstName_noBorder {  /* 顧客名 */
    width:        157px; /* 227 */
    padding-left: 20px;
}
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-cstSiteName,
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-cstSiteName_noBorder {  /* 拠点名 */
    width: 117px; /* 187 */
}
.p-prjLst_searchRes-outputTbl.c-locale_en .p-prjLst_searchRes-outputTbl_col-cstSiteName,
.p-prjLst_searchRes-outputTbl.c-locale_en .p-prjLst_searchRes-outputTbl_col-cstSiteName_noBorder {  /* 拠点名 */
    width: 127px; /* 187 */
}
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-prjName {  /* 案件名 */
    width: 215px; /* 285 */
}
.p-prjLst_searchRes-outputTbl.c-locale_en .p-prjLst_searchRes-outputTbl_col-prjName {  /* 案件名 */
    width: 305px; /* 285 */
}

.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-updateDate { /* 最終更新日時 */
    width: 150px;
}
.p-prjLst_searchRes-outputTbl td.p-prjLst_searchRes-outputTbl_col-updateDate { /* 最終更新日時 */
    width: 150px;
    font-size:   var(--font-size-btnSmall);
    line-height: var(--font-size-btnSmall);
}
.p-prjLst_searchRes-outputTbl.c-locale_en th.p-prjLst_searchRes-outputTbl_col-updateDate td[rowspan="2"] { /* 最終更新日時（ヘッダ） */
    width: 72px;
}


.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-showResult { /* 結果表示 */
    width:         321px; /* 121 */
    padding-right: 20px;
}
.p-prjLst_searchRes-outputTbl.c-locale_en .p-prjLst_searchRes-outputTbl_col-showResult { /* 結果表示 */
    width:         221px; /* 121 */
}

.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-action { /* アクション */
    width:         147px; /* 253 */
}

.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-cstName_noBorder,       /* 顧客名 */
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-cstSiteName_noBorder {  /* 顧客名 */
    border-bottom: none;
}

/* アクション */
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_col-action button:nth-child(n+3) {
    margin-left: 8px;
}


/*---------- モーダル ----------*/

/* ウィンドウのサイズ設定
   ------------------------------ */
/* 案件追加（validationErr表示のためmin-heightで高さを指定） */
.p-modal_prjAdd {
    width:  426px; /* 486 */
    min-height: 424px; /* 501 */
}

/* 案件編集（validationErr表示のためmin-heightで高さを指定） */
.p-modal_prjEdt {
    width:  426px;
    min-height: 424px; /* 501 */
}


/* 案件複製（validationErr表示のためmin-heightで高さを指定） */
.p-modal_prjCpy {
    width:  426px;
    min-height: 424px; /* 501 */
}

/* 案件削除 */
.p-modal_prjDel {
    width:  372px;
    height: 204px; /* 281 */
}

/* EV消費電力量算出（概算値）：一括入力 */
.p-modal_engIn1BulkEntry {
    width:  1257px; /*  */
    min-height: 521px; /* （「月～金曜日と同様」によって高さ変動するためmin-height） */
}

/* 割り当て充電器変更（validationErr表示のためmin-heightで高さを指定） */
.p-modal_plnIn1Chg {
    width:  468px; /* 522 */
    min-height: 320px; /* 397 */
}

/* 充電計画策定結果書き出し（validationErr表示のためmin-heightで高さを指定） */
.p-modal_PlnResWrt {
    width:  426px;
    min-height: 228px; /* 305 */
}

/* 入力項目テーブルの設定
   ------------------------------ */
/* 共通設定 */
.p-modal_prjAdd table,
.p-modal_prjEdt table,
.p-modal_prjCpy table,
.p-modal_prjDel table,
.p-modal_engIn1BulkEntry table,
.p-modal_plnIn1Chg table,
.p-modal_PlnResWrt table {
    width: 100%;
}

/* 入力 */
.p-modal_prjAdd .c-txt,
.p-modal_prjEdt .c-txt,
.p-modal_prjCpy .c-txt,
.p-modal_PlnResWrt .c-txt {
    width: calc(100% - 18px);
}
.p-modal_plnIn1Chg .c-txt {
    width:  152px; /* 160 */
}

.p-modal_plnIn1Chg .c-sel-wrap {
    width: 100%;
}


/*----------------------------------------
  【 対象車選定 】
------------------------------------------*/
/*---------- セクション ----------*/
.p-vehInp_vehInfo-sectionTbl {
    border-collapse: collapse;
    margin-top: 2px;
}
.p-vehInp_vehInfo-sectionTbl td:nth-child(1) { /* 車両番号 */
    padding-right: 19px;
}


/*---------- 入力項目 ----------*/
.p-vehInp_vehInfo {
    height:  auto;
    margin:  30px 0 60px 0;
}

/* 車両情報入力 */
.p-vehInp_vehInfoContainer {
    margin-bottom: 60px;
}

.p-vehInp_vehInfo-inputTbl {
    margin: 0 30px 0 0;
}

td.p-vehInp_vehInfo-inputTbl_col-dash,
td.p-vehInp_vehInfo-inputTbl_col-modelId {
    vertical-align: top;
}
.p-vehInp_vehInfo-inputTbl > tbody > tr {
    height: 74px;
}
.p-vehInp_vehInfo-inputTbl > tbody > tr.p-vehInp_vehInfo-inputTbl_row-navArrow {
    height: 26px;
}

/* 車両ID */
.p-vehInp_vehInfo-inputTbl_col-vehId {
    width:          220px;
    vertical-align: top;
}

/* － */
.p-vehInp_vehInfo-inputTbl_col-dash {
    padding: 0px 10px;
}
.p-vehInp_vehInfo-inputTbl_col-dash .c-intervalLine {
    width:        34px;
    margin:       0;
    border-width: 1px;
    border-color: var(--color-border-vehIntervalLine);
}

/* モデル選択 */
.p-vehInp_vehInfo-inputTbl_col-modelId {
    width: 220px;
}

/* ▼ */
.p-vehInp_vehInfo-inputTbl_nav-icon {
    margin-left: 67px;
    margin-top:  8px;
    transform:   rotate(90deg);
}

/* 選択モデル補足情報 */
.p-vehInp_vehInfo-inputTbl_col-suplInfo {
    padding-left: 50px;
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo table {
    width:        640px;
    table-layout: fixed;
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo th {
    padding: 7px 0px 0px 20px; 
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo th:nth-child(1) {
    padding-left: 17px;  /* 20(-3) */
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo td {
    height:  24px;
    padding: 6px 0px 7px 20px; /* (-3) */
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo td:nth-child(1) {
    padding-left: 17px;  /* 20(-3) */
}

.p-vehInp_vehInfo-inputTbl_col-suplInfo .p-vehInp_vehInfo-inputTbl_suplInfo-modelType { /* 型式 */
    width:      120px;  /* 120 */
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo .p-vehInp_vehInfo-inputTbl_suplInfo-modelYear { /* 年式 */
    width:      100px;  /* 120 */
    text-align: right;
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo .p-vehInp_vehInfo-inputTbl_suplInfo-weight { /* 装荷 */
    width:      100px;  /* 120 */
    text-align: right;
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo .p-vehInp_vehInfo-inputTbl_suplInfo-maxLoadCapa { /* 最大積載量 */
    width:      100px;  /* 120 */
    text-align: right;
}
.p-vehInp_vehInfo-inputTbl_col-suplInfo .p-vehInp_vehInfo-inputTbl_suplInfo-driveDist { /* 航続距離 */
    width:         100px;  /* 120 */
    text-align:    right;
    padding-right: 17px;  /* 20(-3) */
}

/* 入力 */
.p-vehInp_vehInfo-inputTbl_inpTbl {
    margin:          7px 0;
    width:           100%;
    border-collapse: collapse;
}
.p-vehInp_vehInfo-inputTbl_inpTbl > thead > tr{
    height: 24px;
}
.p-vehInp_vehInfo-inputTbl_inpTbl > tbody > tr{
    height: 36px;
}
.p-vehInp_vehInfo-inputTbl_inpTbl th,
.p-vehInp_vehInfo-inputTbl_inpTbl td {
    padding: 0px;
}
.p-vehInp_vehInfo-inputTbl_inpTbl .c-txt {
    width: calc(100% - 18px);
}
.p-vehInp_vehInfo-inputTbl_inpTbl .c-sel-wrap {
    width: calc(100%);
}

/* *** 「車両を追加」ボタン *** */
.p-vehInp_vehAddBtn {
    margin-bottom:60px;
}

/*----------------------------------------
  【 EV電力量算出 】
------------------------------------------*/
/*---------- セクション ----------*/
/* タイトル */
.p-engIn1_section,
.p-engIn2_section {
    margin-bottom: 30px;
}
.p-mainEngIn3_section {
    width:         99%;
    margin:        30px 0px;
    border-bottom: solid 2px var(--color-border-table);
}

/* 一括入力ボタン */
.p-engIn1_section .p-engIn1_bulkFromInput_modalOpen {
    float: right;
}

/*---------- タブ ----------*/
.p-vehDrivingInfo-tab .c-btnTab,
.p-engIn2_gvDrivingHistory-tab .c-btnTab {
    margin: 0 30px 0 0;
    border: none;
}
.p-vehDrivingInfo-tab   .c-btnTab:disabled,
.p-engIn2_gvDrivingHistory-tab .c-btnTab:disabled {
    font-weight: bold;
}
.p-vehDrivingInfo-tab_selectedLine_engIn1,
.p-engIn2_gvDrivingHistory-tab_selectedLine_engIn2,
.p-engIn2_gvDrivingHistory-tab_selectedLine_engIn3 {
    display:    block;
    padding:    3px 0 0 0;
    border-top: solid 4px var(--color-border-input);
}
.p-engIn2_gvDrivingHistory-tab_selectedLine_engIn2,
.p-engIn2_gvDrivingHistory-tab_selectedLine_engIn3 {
    width: 180px;
}
.p-vehDrivingInfo-tab_selectedLine_engIn1 {
    width: 95px;
}
.p-engIn2_gvDrivingHistory-tab_selectedLine_engIn2 {
    margin: 0 0 0 135px;
}
.p-engIn2_gvDrivingHistory-tab_selectedLine_engIn3 {
    margin: 0 0 0 375px;
}

/*---------- 共通 ----------*/
.p-vehDrivingInfo-input {
    width:      1259px;
    margin:     0 0 60px 0px;
    overflow-x: visible;
}
.p-engIn2_gvDrivingHistory-input {
    margin:     0 0 60px 0px;
}

.p-vehDrivingInfo-inputTbl,
.p-engIn1_vehDriveHist-inputTbl,
.p-engIn1BulkEntry_vehDriveHist-inputTbl,
.p-engIn2_gvDrivingHistory-inputTbl,
.p-engIn2_gvDrivingHistory-inputFileTbl,
.p-engRes_powerConsumptionPerDay-resultTbl {
    margin: 0 0 30px 0;
}
.p-vehDrivingInfo-inputTbl,
.p-engIn2_gvDrivingHistory-inputFileTbl {
    width:  99%;
}
.p-vehDrivingInfo-inputTbl th {
    padding:     0 10px 5px 10px;
    text-align: left;
}
.p-vehDrivingInfo-inputTbl td {
    padding: 5px 10px;
}

/* input */
.p-vehDrivingInfo-inputTbl input:read-only,
.p-vehDrivingInfo-inputTbl input:read-only:focus,
.p-engIn2_gvDrivingHistory-inputTbl input:read-only,
.p-engIn2_gvDrivingHistory-inputTbl input:read-only:focus{
    border:  none;
    outline: none;
    resize:  none;
    background-color:rgba(0,0,0,0);
}


/*---------- 概算値入力 ----------*/
/* テーブル */
.p-engIn1_vehDriveHist-workingDaysTbl,
.p-engIn1BulkEntry_vehDriveHist-workingDaysTbl {
    border-collapse: collapse;
    table-layout: fixed;
}

.p-engIn1_vehDriveHist-inputTbl th,
.p-engIn1BulkEntry_vehDriveHist-inputTbl th {
    padding: 16px 0px 16px 20px;
}
.p-engIn1_vehDriveHist-inputTbl td,
.p-engIn1BulkEntry_vehDriveHist-inputTbl td {
    padding: 8px 0px 9px 20px;
}

/* 列幅 */
.p-engIn1_vehDriveHist-inputTbl .p-engIn1_vehDriveHist-inputTbl_col-vehId { /* 車両ID */
    width:        140px; /* 140+20 */
    padding-left: 20px;
}
.p-p-engIn1BulkEntry_vehDriveHist-inputTbl .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId { /* （一括）車両ID */
    width:         251px; /* 140+20+140-20-9 */
    padding-left:  20px;
    padding-right: 9px;
}

.p-engIn1_vehDriveHist-inputTbl .p-engIn1_vehDriveHist-inputTbl_col-modelName { /* モデル名 */
    width:         111px; /* 140-20-9 */
    padding-right: 9px;
}
.p-engIn1_vehDriveHist-inputTbl               .p-engIn1_vehDriveHist-inputTbl_col-vehWorkingDays,
[class^=p-engIn1_vehDriveHist-workingDaysTbl] .p-engIn1_vehDriveHist-workingDaysTbl_col-vehWorkingDays,                    /* 車両稼働日 */
.p-engIn1BulkEntry_vehDriveHist-inputTbl               .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehWorkingDays,
[class^=p-engIn1BulkEntry_vehDriveHist-workingDaysTbl] .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-vehWorkingDays { /* （一括）車両稼働日 */
    width:        151px; /* 160+11 */
    padding-left: 11px;
}
.p-engIn1_vehDriveHist-inputTbl               .p-engIn1_vehDriveHist-inputTbl_col-dailyDriveDist,
[class^=p-engIn1_vehDriveHist-workingDaysTbl] .p-engIn1_vehDriveHist-workingDaysTbl_col-dailyDriveDist,                    /* 1日の走行距離（最大値） */
.p-engIn1BulkEntry_vehDriveHist-inputTbl               .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-dailyDriveDist,
[class^=p-engIn1BulkEntry_vehDriveHist-workingDaysTbl] .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-dailyDriveDist { /* （一括）1日の走行距離（最大値） */
    width: 240px; /* 260 */
    vertical-align: top;
}

.p-engIn1_vehDriveHist-inputTbl               .p-engIn1_vehDriveHist-inputTbl_col-dailyDriveTime,
[class^=p-engIn1_vehDriveHist-workingDaysTbl] .p-engIn1_vehDriveHist-workingDaysTbl_col-dailyDriveTime,                    /* 1日の走行時間（最大値） */
.p-engIn1BulkEntry_vehDriveHist-inputTbl               .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-dailyDriveTime,
[class^=p-engIn1BulkEntry_vehDriveHist-workingDaysTbl] .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-dailyDriveTime { /* （一括）1日の走行時間（最大値） */
    width: 240px; /* 260 */
    vertical-align: top;
}
.p-engIn1_vehDriveHist-inputTbl               .p-engIn1_vehDriveHist-inputTbl_col-chgTime,
[class^=p-engIn1_vehDriveHist-workingDaysTbl] .p-engIn1_vehDriveHist-workingDaysTbl_col-chgTime,                    /* 充電可能時間帯 */
.p-engIn1BulkEntry_vehDriveHist-inputTbl               .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-chgTime,
[class^=p-engIn1BulkEntry_vehDriveHist-workingDaysTbl] .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-chgTime { /* （一括）充電可能時間帯 */
    width:         260px; /* 260+20 */
    vertical-align: top;
}

/* *** （一括）車両ID *** */
.p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId-scroll { /* 一覧 */
    max-height: 284px;
    margin:     0 auto;
    overflow-y: auto;
}

.p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId label input.p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId-chkbox { /* チェックボックス */
    position: absolute;
    top:      0;
    bottom:   0;
    margin:   auto;
}

.p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId label .p-engIn1BulkEntry_vehDriveHist-inputTbl_col-vehId-text { /* 車両ID */
    width:       233px;
    margin-left: 23px;
    display:     inline-block;
}

/* *** 走行履歴情報 *** */
.p-engIn1_vehDriveHist-inputTbl > tbody > tr > td[colspan="4"] {
    padding: 0px;
}

/* （平日）の走行情報は上部に70pxの隙間を設定 */
[class^=p-engIn1_vehDriveHist-workingDaysTbl_wday] .p-engIn1_vehDriveHist-workingDaysTbl_col-dailyDriveDist,      /* 1日の走行距離（最大値） */
[class^=p-engIn1_vehDriveHist-workingDaysTbl_wday] .p-engIn1_vehDriveHist-workingDaysTbl_col-dailyDriveTime,      /* 1日の走行時間（最大値） */
[class^=p-engIn1_vehDriveHist-workingDaysTbl_wday] .p-engIn1_vehDriveHist-workingDaysTbl_col-chgTime,             /* 充電可能時間帯 */
.p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_wday .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-dailyDriveDist, /* （一括）1日の走行距離（最大値） */
.p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_wday .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-dailyDriveTime, /* （一括）1日の走行時間（最大値） */
.p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_wday .p-engIn1BulkEntry_vehDriveHist-workingDaysTbl_col-chgTime {       /* （一括）充電可能時間帯 */
    padding-top:    70px;
}

/* 休日の走行履歴情報は下部に20pxの隙間を設定 */
.p-engIn1_vehDriveHist-inputTbl > tbody > tr:nth-child(2n) > td[colspan="4"] tr:nth-child(2) > td,
.p-engIn1BulkEntry_vehDriveHist-inputTbl > tbody > tr:nth-child(2n) > td[colspan="4"] tr:nth-child(2) > td {
    padding-bottom: 20px;
}

.p-engIn1_vehDriveHist-inputTbl > thead > tr > th:nth-child(4) > div,  /* 1日の走行距離（最大値）の「必須」アイコン */
.p-engIn1_vehDriveHist-inputTbl > thead > tr > th:nth-child(5) > div { /* 1日の走行時間（最大値）の「必須」アイコン */
    margin-left: 2px;
}


/* 入力 */
.p-engIn1_vehDriveHist-inputTbl .c-txt,           /* 走行距離、走行時間 */
.p-engIn1BulkEntry_vehDriveHist-inputTbl .c-txt { /* （一括）走行距離、走行時間 */
    width:      67px;
    text-align: right;
}

.p-engIn1_vehDriveHist-inputTbl .c-sel-wrap,           /* 時刻プルダウン */
.p-engIn1BulkEntry_vehDriveHist-inputTbl .c-sel-wrap { /* （一括）時刻プルダウン */
    width:  86px;
}

.p-engIn1_vehDriveHist-inputTbl label,           /* チェックボックスのラベル */
.p-engIn1BulkEntry_vehDriveHist-inputTbl label { /* （一括）チェックボックスのラベル */
    display: block;
    position:relative;
    padding: 4px 0px;
}

.p-engIn1_vehDriveHist-inputTbl label .c-chkbox,           /* チェックボックス */
.p-engIn1BulkEntry_vehDriveHist-inputTbl label .c-chkbox { /* （一括）チェックボックス */
    position: relative;
    top:2px;
    left:0px
}

/* 稼働日が全て空欄の場合、稼働日以外の項目を半透明に */
.p-engIn1_vehDriveHist-inputTbl-disabled td:nth-child(n+2),
.p-engIn1BulkEntry_vehDriveHist-inputTbl-disabled td:nth-child(n+2) {
    opacity: 50%;
}

/*---------- ファイル読み込み（個車） ----------*/
.p-engIn2_gvDrivingHistory-inputTbl th {
    padding: 10px 20px 3px 0px;
}
.p-engIn2_gvDrivingHistory-inputTbl th,
.p-engIn2_gvDrivingHistory-inputTbl td {
    padding: 9px 20px 9px 0px;
}
.p-engIn2_gvDrivingHistory-inputTbl th {
    padding-bottom: 3px;
}

/* 列幅 */
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-fileInput { /* 読み込み */
    width:        104px;  /*  */
    padding-left: 20px;
    text-align:   center;
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-fileName {  /* ファイル名（ファイル入力前） */
    width: 0px;  /*  */
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-fileName.p-engIn2_gvDrivingHistory-inputTbl_resized {  /* ファイル名（ファイル入力後） */
    width: 162px;  /*  */
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-vehId { /* 車両ID */
    width: 80px;  /*  */
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-modelName { /* モデル名 */
    width: 130px;  /*  */
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-maxLoadCapa { /* 最大積載量 */
    width:      84px;  /*  */
    text-align: right;
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-weight { /* 架装 */
    width:      59px;  /*  */
    text-align: right;
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-driveDist { /* 航続距離 */
    width:      64px;  /*  */
    text-align: right;
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-span { /* 幅調整（ファイル入力前） */
    width: 343px;  /*  */
}
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_col-span.p-engIn2_gvDrivingHistory-inputTbl_resized { /* 幅調整（ファイル入力後） */
    width: 131px;  /*  */
}

/* 読み込みボタン */
.p-engIn2_gvDrivingHistory-inputTbl .p-engIn2_gvDrivingHistory-inputTbl_fileBtn {
    text-decoration: underline;
    cursor:          pointer;
}

/*---------- ファイル読み込み（一括） ----------*/
/* 読み込みボタン */
.p-engIn2_gvDrivingHistory-inputFile {
    width:            96%;
    height:           106px;
    margin:           30px 0;
    background-color: var(--color-background-sub);
}
.p-engIn2_gvDrivingHistory-inputFile .c-btnBig {
    position:         relative;
    top:              40%;
    left:             45%;
    background-color: var(--color-background-button-main);
    cursor:           pointer;
}

/* 読み込み結果 */
.p-engIn2_gvDrivingHistory-inputFile_success {
    margin:           0 0 2px 0;
    padding:          10px 0 10px 20px;
    background-color: var(--color-background-sub);
}
.p-engIn2_gvDrivingHistory-inputFile_failure {
    color:            var(--color-font-input);
    padding:          10px 0 10px 20px;
    background-color: var(--color-background-err);
}

/*---------- 結果テーブル ----------*/
/* 列幅 */
.p-engIn2_gvDrivingHistory-inputTbl_01 { /* 読み込み */
    width:100px;
}
.p-engIn2_gvDrivingHistory-inputTbl_02 { /* 車両ID */
    width:62px;
}
.p-engIn2_gvDrivingHistory-inputTbl_03,
.p-engIn2_gvDrivingHistory-inputTbl_03-align { /* モデル名 */
    width:90px;
}
.p-engIn2_gvDrivingHistory-inputTbl_04 { /* 最大積載量 */
    width:84px;
}
.p-engIn2_gvDrivingHistory-inputTbl_05 { /* 架装 */
    width:59px;
}
.p-engIn2_gvDrivingHistory-inputTbl_06 { /* 航続距離 */
    width:64px;
}
.p-engIn2_gvDrivingHistory-inputTbl_07 { /* 1日当たりの走行距離 */
    width:140px;
}
.p-engIn2_gvDrivingHistory-inputTbl_08 { /* 1日当たりの走行時間 */
    width:140px;
}
.p-engIn2_gvDrivingHistory-inputTbl_09,
.p-engIn2_gvDrivingHistory-inputTbl_09-align { /* 充電可能時間帯 */
    width:120px;
}

/* 文字位置 */
th[class^=p-engIn2_gvDrivingHistory-inputTbl_0] {
    text-align: center;
}
td[class^=p-engIn2_gvDrivingHistory-inputTbl_0] {
    text-align: right;
}
td.p-engIn2_gvDrivingHistory-inputTbl_01-align {
    text-align: center;
}
td.p-engIn2_gvDrivingHistory-inputTbl_03-align,
td.p-engIn2_gvDrivingHistory-inputTbl_09-align {
    text-align: left;
}

[class^=p-engIn2_gvDrivingHistory-inputTbl_0] input {
    text-align: right;
    border: none;
}
.p-vehDrivingInfo-inputTbl .c-sel-wrap {
    width:  100px;
}
/* input */
.p-engIn2_gvDrivingHistory-inputTbl_driveDist,
.p-engIn2_gvDrivingHistory-inputTbl_driveTime {
    width: 100px;
}

.p-engIn2_gvDrivingHistory-inputTbl_chgTime {
    width: 50px;
}

.p-engIn2_gvDrivingHistory-inputTbl_09 .c-txt {
    width:  70px;
}

/*---------- EV電費の実効係数 ----------*/
.p-engIn1_effectiveCoeff-input {
    margin: 0 0 60px 0;
}
.p-engIn1_effectiveCoeff-input .c-txt {
    width:      34px; /* 52(-18) */
    text-align: right;
}


/*----------------------------------------
  【 EV電力量算出結果 】
------------------------------------------*/
/*---------- エラーメッセージ ----------*/
.p-powerConsumptionPerDay-errMsg {
    width:            1175px;
    margin:           25px 0;
    padding:          10px 0 10px 20px;
    color:            var(--color-font-input);
    background-color: var(--color-background-err);
}

/*---------- ボタン ----------*/

/*---------- 小見出し ----------*/
.p-powerConsumptionPerDay-captionSmall {
    margin: 30px 0;
}

/*---------- 結果テーブル ----------*/
.p-engRes_powerConsumptionPerDay-resultTbl th {
    padding:    16px 20px 16px 0px;
}
.p-engRes_powerConsumptionPerDay-resultTbl td {
    padding:    10px 20px 10px 0px;
}

/* データ幅：臨機応変に調整 */
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-vehId { /* 車両ID */
    width:        120px;  /* 140 */
    padding-left: 20px;
}
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-modelName { /* モデル名 */
    width:      120px;  /* 140 */
}
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-batteryCapa {  /* バッテリー容量 */
    width:      120px;  /* 140 */
    text-align: right;
}
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-maxDailyDriveDist {  /* 1日あたりの走行距離（最大） */
    width:      220px;  /* 240 */
    text-align: right;
}
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-wdayEnergyConsumption,  /* 消費電力量（平日） */
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-hdayEnergyConsumption { /* 消費電力量（休日） */
    width:      160px;  /* 180 */
    text-align: right;
}
.p-engRes_powerConsumptionPerDay-resultTbl .p-engRes_powerConsumptionPerDay-resultTbl_col-hdayEnergyConsumption { /* 消費電力量（休日） */
    width:      180px;  /* 180+20 */
    text-align: right;
}

/*----------------------------------------
  【 充電計画策定 】
------------------------------------------*/
/******************************
 *  1.充電器について
 ******************************/
/*---------- 見出し、セクション ----------*/
/* 共通 */
.p-plnIn1_caption,
.p-plnIn1_section {
    margin-top:    30px;
    margin-bottom: 30px;
}


/*---------- 入出力項目 ----------*/
.p-priorityAllocCharger-inputTbl {
    width: 96%;
}

/* 既設充電器
   ------------------------------*/
/* 既設充電器 あり/なし */
.p-priorityAllocCharger > label {
    padding-right: 44px;
}
.p-priorityAllocCharger .c-radio {
    margin-top:   1px;
    margin-right: 8px;
}

/* 既設充電器入力フォーム */
.p-priorityAllocCharger_inputTbl {
    margin: 30px 0 0 0;
    width:  100%;
    border-collapse: collapse;
}

.p-priorityAllocCharger_inputTbl td {
    padding: 0px 40px 20px 0px;
}



.p-priorityAllocCharger_inputTbl td { /* 既設充電器台数フォーム */
    padding: 0px 40px 0px 0px;
}
.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-row_validation td { /* バリデーションエラー・要素間の間隔 */
    padding-bottom: 20px;
}
.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-row_addBtn td { /* 「充電器を追加」ボタン */
    padding-bottom: 0px;
}

.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-col_isExist {  /* 既設 */
    width:  65px; /* 30+35 */
}
.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-col_isExist.c-locale_en {  /* 既設（en） */
    width:  85px; /* 30+35 */
}
.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-col_modelInfo {  /* 充電器モデル情報 */
    width:  485px; /* 485 */
}
.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-col_num {  /* 台数 */
    width:  85px; /* 50+35 */
}
.p-priorityAllocCharger_inputTbl .p-priorityAllocCharger_inputTbl-col_delBtn {  /* 「削除」ボタン */
    text-align: left;
}

/* --- 入力フォーム --- */
.p-priorityAllocCharger_inputTbl .c-chkbox { /* 既設 */
    position: relative;
    top:      2px;
}
.p-priorityAllocCharger_inputTbl .c-sel-wrap { /* 充電器モデル情報 */
    width:  100%;
}
.p-priorityAllocCharger_inputTbl .c-txt { /* 台数 */
    width:      32px; /* 46(-14) */
    text-align: right;
}
.p-priorityAllocCharger_inputTbl .c-btnAction { /* 「削除」ボタン */
    color:     var(--color-font-warning);
}

.p-priorityAllocCharger_addBtn {
    height: 36px;
}

/* 「充電器割り当て実行」ボタン */
.p-mainPlnIn1_allocBtn {
    width:100%;
    margin: 60px 0;
}

.p-mainPlnIn1_allocBtn tr {
    height:18px; 
}

.p-mainPlnIn1_allocBtn td {
    width:  184px;
}
.p-mainPlnIn1_allocBtn td.p-mainPlnIn1_allocBtn-col_border {
    width:  auto;
    border-bottom:1px dashed var(--color-border-chgAlloc);
    
}

.p-mainPlnIn1_allocBtn .c-btnExe {
    margin: 0px 20px;
    
}

/* 充電器割り当て
   ------------------------------*/
/* 拠点充電器台数 */
.p-mainPlnIn1_siteChargerCounter,
.p-mainPlnIn1_siteChargerCounter-noMargin {
    max-width:        100%;
    height:           auto;
    margin:           0 0 30px 0;
    padding:          10px 20px;

    /* 枠線 */
    border:           1px var(--color-border-table) solid;
    border-radius:    4px;
    /* 背景色 */
    background-color: var(--color-background-tblBody);
    /* 配置 */
    display:        inline-flex;
    flex-direction: row;
    flex-wrap:      wrap;
    gap:            10px 39px;
}
.p-mainPlnIn1_siteChargerCounter-noMargin {
    margin-bottom: 0px;
}

.p-mainPlnIn1_siteChargerCounter .p-mainPlnIn1_siteChargerCounter-chargerTbl {
    display: inline-block;
    width:auto;
}

.p-mainPlnIn1_siteChargerCounter-chargerTbl th {
    padding-bottom: 6px;
}


/* *** 割り当て結果一覧 *** */
.p-mainPlnIn1_resTblContainer {
    margin-bottom: 60px;
}

.p-plnIn1Res_chargerAllocation-outputTbl {
    width: 1253px;
}

.p-plnIn1Res_chargerAllocation-outputTbl th {
    padding: 16px 0px;
} 
.p-plnIn1Res_chargerAllocation-outputTbl td {
    padding: 10px 0px;
}


/* 列幅 */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-vehId { /* 車両ID */
    width:         100px;  /* 110+20 */
    padding-left:  20px;
    padding-right: 10px;
}

.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-modelName { /* モデル名 */
    width:         90px;  /* 100 */
    padding-right: 10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-chgName { /* 充電器機種名 */
    width:         190px;  /* 200 */
    padding-right: 10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-chgName div { /* 充電器機種名 */
    width:         190px;  /* 200 */
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-maker { /* メーカー */
    width:         80px;  /* 90 */
    padding-right: 10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-ratedOutput { /* 定格出力 */
    width:        80px;  /* 90 */
    padding-left: 10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-chargerType { /* 充電器タイプ */
    width:         100px;  /* 120 */
    padding-right: 10px;
    padding-left:  10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-price {  /* 充電器価格 */
    width:         100px;  /* 100 */
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-chgControl { /* 充電制御 */
    width:         80px;  /* 100 */
    padding-right: 10px;
    padding-left:  10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-requiredChgTime,  /* 充電所要時間 */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-possibleChgTime { /* 充電可能時間 */
    width:         100px;  /* 110 */
    padding-right: 10px;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-change {  /* 「変更」ボタン */
    padding-right: 10px;
    padding-left:  5px;
}
.p-plnIn1Res_chargerAllocation-outputTbl_col-change .c-btnIcon {  /* 「変更」ボタン */
    padding: 2px 6px 0px 6px;
}

/* 文字揃え */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-ratedOutput,      /* 定格出力 */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-price,            /* 充電器価格 */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-requiredChgTime,  /* 充電所要時間 */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-possibleChgTime { /* 充電可能時間 */
    text-align:   right;
}
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-chargerType, /* 充電器タイプ */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-chgControl,  /* 充電制御 */
.p-plnIn1Res_chargerAllocation-outputTbl .p-plnIn1Res_chargerAllocation-outputTbl_col-change {     /* 「変更」ボタン */
    text-align: center;
}

/*---------- 警告 ----------*/
/* 充電時間不足時 */
.p-chargerAllocation-warning {
    width:            97%;
    margin:           0 0 17px 0;
    padding:          5px 0 5px 20px;
    background-color: var(--color-background-err);
    color:            var(--color-font-input);
    font-weight:      bold;
}

/*---------- モーダル ----------*/
/**
 * 案件一覧：モーダルに記述
 */
 
/******************************
 *  2.事務所の電力契約について
 *  3.既設の特例需要場所の電力契約について
 *  4.充電制御装置について
 *  5.充電計画の策定条件について
 ******************************/
/*---------- 見出し ----------*/
/* メニュー */
.p-plnIn2_caption1,
.p-plnIn2_caption2,
.p-plnIn2_caption3,
.p-plnIn2_caption4 {
    margin-bottom: 30px;
}

.p-plnIn2_caption3 {
    margin-top: 60px;
}


/* *** 別拠点・他案件から引用 *** */
.p-plnIn2_caption1,
.p-plnIn2_caption2 {
    gap: 12px;
}

.p-plnIn2_caption1 > *,
.p-plnIn2_caption2 > * {
    flex-shrink: 0;
    flex-grow:0;
}

.p-plnIn2_caption1 .c-sel-wrap,
.p-plnIn2_caption2 .c-sel-wrap { /* 拠点名―案件名 */
    width:   363px;
}
.p-plnIn2_caption1 .c-btnBig,
.p-plnIn2_caption2 .c-btnBig { /* 「読み込み」ボタン */
    width: 104px;
}

.p-plnIn2_caption1 .c-intervalLine,
.p-plnIn2_caption2 .c-intervalLine {  /* 間隔線 */
    height:      0px; 
    border:      1px var(--color-border-citeSiteContract) solid;
    flex-shrink: 1;
    flex-grow:   1;
}


/*---------- セクション ----------*/
.p-plnIn2_section {
    margin-bottom: 30px;
}

/* 電力契約内容
   ------------------------------ */
.p-plnIn2_currentPowerContractDetails-inputTbl {
    margin-bottom: 60px;
}

.p-plnIn2_currentPowerContractDetails-inputTbl > tbody > tr {
    height: 80px;
}
.p-plnIn2_currentPowerContractDetails-inputTbl > tbody > tr:nth-last-child(1) {
    height: 80px;
}
/* 列幅 */
.p-plnIn2_currentPowerContractDetails-inputTbl .p-plnIn2_currentPowerContractDetails-inputTbl_col-elecContSel {  /* 電力会社名-契約種別 */
    width:         300px;  /* 350 */
    padding-right: 50px;
}
.p-plnIn2_currentPowerContractDetails-inputTbl .p-plnIn2_currentPowerContractDetails-inputTbl_col-distributionBoardRatedCapa {  /* 分電盤の定格容量 */
    width:         240px;  /* 312 */
    padding-right: 72px
}
.p-plnIn2_currentPowerContractDetails-inputTbl .p-plnIn2_currentPowerContractDetails-inputTbl_col-transmissionMethod {  /* 送電方法 */
    width:         178px;  /* 248 */
    padding-right: 70px;
}
.p-plnIn2_currentPowerContractDetails-inputTbl .p-plnIn2_currentPowerContractDetails-inputTbl_col-voltType {  /* 低圧/高圧 */
    width:         171px;  /* 191 */
    padding-right: 20px;
}

/* *** 入力項目 *** */
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl {
    width:           100%;
    border-collapse: collapse;
}

.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl thead > tr {
    height: 24px;
}
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl tbody > tr:nth-child(1) {
    height: 36px;
}

/* input, select, label */
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl .c-txt {
    width: calc(100% - 18px);
}
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl .c-sel-wrap {
    width: 100%;
}
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl label:nth-child(1) {
    margin-right: 40px;
}
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl label:nth-child(2) {
    display: inline-block;  /* 横幅が足りない場合は次の行に表示 */
}
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl .c-radio {
    margin: 0px;
}
.p-plnIn2_currentPowerContractDetails-inputTbl_inpTbl label span {
    display:     inline-block;
    margin-left: 8px;
}



/* *** 補足情報テーブル *** */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl th,
.p-plnIn2_currentPowerContractDetails-suplInfoTbl td {
    height: 21px;
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl th {
    padding:    0 0 0 20px;
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl thead:nth-child(1) th {
    padding-top: 7px; /* 10(-3) */
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl td {
    padding:    6px 0 30px 20px;
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl tbody:nth-child(4) td {
    padding-top:    8px;
    padding-bottom: 7px /* 10(-3) */
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl th:nth-child(1),
.p-plnIn2_currentPowerContractDetails-suplInfoTbl td:nth-child(1) {
    padding-left: 17px; /* 20(-3) */
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl th:nth-last-child(1),
.p-plnIn2_currentPowerContractDetails-suplInfoTbl td:nth-last-child(1) {
    padding-left:  0px;
    padding-right: 17px; /* 20(-3) */
}

/* 列幅 */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-basicUnitRate,          /* 基本料金単価 */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-co2BasicEmissionCoef {  /* CO2基礎排出係数 */
    width: 150px;  /* 150 */
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-elecUnitRate,              /* 電力量単価 */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-co2AdjustedEmissionCoef {  /* CO2調整後排出係数 */
    width: 160px;  /* 180(-20) */
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-elecUnitRateSmr,          /* 電力量単価（夏季） */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-fuelCostAdjustUnitRate {  /* 燃料費調整単価 */
    width: 160px;  /* 180(-20) */
}
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-elecUnitRateOthers,                   /* 電力量単価（その他季節） */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl .p-plnIn2_currentPowerContractDetails-inputTbl_suplInfo-renewableEnergyGenerationIncentive {  /* 再エネ発電促進賦課金 */
    width: 200px;  /* 200+20(-20) */
}

/* 文字揃え */
.p-plnIn2_currentPowerContractDetails-suplInfoTbl th,
.p-plnIn2_currentPowerContractDetails-suplInfoTbl td {
    text-align: right;
}

.p-plnIn2_currentPowerContractDetails-inputTbl_col-distributionBoardRatedCapa,
.p-plnIn2_currentPowerContractDetails-inputTbl_col-transmissionMethod,
.p-plnIn2_currentPowerContractDetails-inputTbl_col-voltType {
    padding-top:    30px;
    vertical-align: top;
}

/* 電力使用量履歴
   ------------------------------ */
/* ファイル選択 */
.p-plnIn2_powerUsageHistory {
    width:            100%;
    height:           106px;
    margin:           0 0 10px 0;
    background-color: var(--color-background-sub);
}
.p-plnIn2_powerUsageHistory > * {
    display:          inline-block;
    position:         relative;
    top:  calc(50% - 36px / 2);
    left: calc(50% - 136px / 2);
}

.p-plnIn2_powerUsageHistory .p-plnIn2_powerUsageHistory-fileInput {
    width:            134px; /* 136(-2) */
    height:           34px;  /* 36(-2) */
    /* 枠線 */
    border:           1px var(--color-border-input) solid;
    border-radius:    4px;
    /* 背景色 */
    background-color: var(--color-background-button-main);
    /* 文字揃え */
    text-align:       center;
    line-height:      36px;
    /* その他 */
    cursor:           pointer;
}
.p-plnIn2_powerUsageHistory .p-plnIn2_powerUsageHistory-fileInput.c-disabled {
    color:            var(--color-font-disabled);
    border:           1px solid var(--color-border-input-diabled);
    background-color: var(--color-background-button-disabled);
    pointer-events:   none;
}

.p-plnIn2_powerUsageHistory .p-plnIn2_powerUsageHistory-fileNameLabel {
    padding-left: 30px;
}

/* 履歴ファイルサンプルダウンロード */
.p-plnIn2_sampleDownload {
    margin:     0 0 60px 0;
    text-align: right;
}

/* サンプルファイルダウンロードリンク */
.p-plnIn2_sampleDownload .c-btnLink {
    margin-right: 0;
}

.p-plnIn2_sampleDownload .c-btnLink.c-disabled {
    color:            var(--color-font-disabled);
    pointer-events:   none;
}

/* 電力請求履歴
   ------------------------------ */
/* テーブル */
.p-plnIn2_powerBillingHistory-inputTbl {
    margin-bottom: 60px;
}

.p-plnIn2_powerBillingHistory-inputTbl th,
.p-plnIn2_powerBillingHistory-inputTbl td {
    width:         240px;
    padding-right: 80px;
}

.p-plnIn2_powerBillingHistory-inputTbl .p-plnIn2_powerBillingHistory-inputTbl_col-billingDateYear {
    width:         130px; /* 96+34 */
    padding-right: 25px;
}
.p-plnIn2_powerBillingHistory-inputTbl .p-plnIn2_powerBillingHistory-inputTbl_col-billingDateMonth {
    width:         105px; /* 260-(130+25) */
}

.p-plnIn2_powerBillingHistory-inputTbl .p-plnIn2_powerBillingHistory-inputTbl_col-billingDateYear.c-validationErr,
.p-plnIn2_powerBillingHistory-inputTbl .p-plnIn2_powerBillingHistory-inputTbl_col-billingDateMonth.c-validationErr {
    padding-right: 10px;
}


/* テキストボックス、セレクトボックス */
.p-plnIn2_powerBillingHistory-inputTbl .c-txt {
    width:  222px; /* 240(-18) */
}
.p-plnIn2_powerBillingHistory-inputTbl_col-billingDateYear .p-plnIn2_powerBillingHistory-inputTbl_year { /* 年 */
    width: 78px; /* 96(-18) */
}
.p-plnIn2_powerBillingHistory-inputTbl_col-billingDateMonth .p-plnIn2_powerBillingHistory-inputTbl_month { /* 月 */
    width:       39px; /* 57(-18) */
}


/* 3.既設の特例需要場所の電力契約について
   ------------------------------ */
.p-plnIn2_hasSpecialSiteContract {
    margin: 0 0 30px 0;
}
.p-plnIn2_hasSpecialSiteContract label {
    padding: 0 44px 0 0;
}
.p-plnIn2_hasSpecialSiteContract .c-radio {
    margin: 1px 8px 0 0;
}

/* 4.充電制御装置について
   ------------------------------ */
.p-plnIn2_chargeControlDevice-inputTbl {
    margin-bottom: 60px;
}

/* テーブル */
.p-plnIn2_chargeControlDevice-inputTbl > tbody > tr > td {
    vertical-align: top;
    padding:        0 60px 0 0;
}

.p-plnIn2_chargeControlDevice-inputTbl_inpTbl {
    width:           240px;
    border-collapse: collapse;
    text-align:      left;
}
.p-plnIn2_chargeControlDevice-inputTbl_inpTbl th{
    padding-bottom: 6px;
}
.p-plnIn2_chargeControlDevice-inputTbl_inpTbl .c-sel-wrap {
    width: 100%
}

/* *** 補足情報 *** */
.p-plnIn2_chargeControlDevice-suplInfoTbl th,
.p-plnIn2_chargeControlDevice-suplInfoTbl td {
    height: 24px;
}
.p-plnIn2_chargeControlDevice-suplInfoTbl th {
    padding: 7px 0 0 20px;
}
.p-plnIn2_chargeControlDevice-suplInfoTbl td {
    padding: 6px 0 6px 20px;
}
.p-plnIn2_chargeControlDevice-suplInfoTbl th:nth-child(1),
.p-plnIn2_chargeControlDevice-suplInfoTbl td:nth-child(1) {
    padding-left: 17px;  /*20(-3)*/
}
.p-plnIn2_chargeControlDevice-suplInfoTbl th:nth-last-child(1),
.p-plnIn2_chargeControlDevice-suplInfoTbl td:nth-last-child(1) {
    padding-right: 17px;  /*20(-3)*/
}
/* 列幅 */
.p-plnIn2_chargeControlDevice-suplInfoTbl .p-plnIn2_chargeControlDevice-suplInfoTbl_col-maker { /* メーカー名 */
    width: 140px; /* 140 */
}
.p-plnIn2_chargeControlDevice-suplInfoTbl .p-plnIn2_chargeControlDevice-suplInfoTbl_col-coregulationNum { /* 同時制御数 */
    width: 120px; /* 140(-20) */
}
.p-plnIn2_chargeControlDevice-suplInfoTbl .p-plnIn2_chargeControlDevice-suplInfoTbl_col-price { /* 価格 */
    width: 120px; /* 140(-20) */
}

/* 文字揃え */
.p-plnIn2_chargeControlDevice-suplInfoTbl .p-plnIn2_chargeControlDevice-suplInfoTbl_col-coregulationNum, /* 同時制御数 */
.p-plnIn2_chargeControlDevice-suplInfoTbl .p-plnIn2_chargeControlDevice-suplInfoTbl_col-price {          /* 価格 */
    text-align: right;
}

/* 5.充電計画の策定条件について
   ------------------------------ */
.p-plnIn2_section4 {
    margin-bottom: 6px;
}

/* テーブル */
.p-ChgScheduleCalcAlgo {
    margin: 0px 0px 30px 0px;
}

.p-ChgScheduleCalcAlgo td {
    padding: 3px 60px 3px 0px;
    display: inline-block;  /* 横幅が足りない場合は次の行に表示 */
    vertical-align: top;
}
.p-ChgScheduleCalcAlgo td .c-radio{
    margin: 1px 8px 0 0;
}
.p-ChgScheduleCalcAlgo_note {
    margin-left: 20px;
    font-size: 0.9em;
}

/* 最大計算時間 */
.p-MaxCalcTime {
    margin: 0px 0px 60px 0px;
}
.p-MaxCalcTime select {
    width: 90pt;
    text-align: right;
}

/* フッター
   ------------------------------ */
.p-footer_plnIn2Finished {
    margin-right: 20px;
}

/*------------------------------
  【 充電計画策定結果 】
--------------------------------*/
/* 見出し */
.p-plnRes_sectionName {
    margin: 0 0 30px 0;
}
.p-plnRes_sectionName [class^=c-accordionBtn] {
    margin-right: 10px;
    vertical-align: middle;
}
.p-plnRes_sectionName span.p-plnRes_sectionName-name{
    font-weight: bold;
    font-size: var(--font-size-headerTitle);
    vertical-align: middle;
}
/*---------- サマリ ----------*/
/* *** 導入EV情報 *** */
.p-main > .p-plnRes_siteVeh {
    margin-bottom: 60px;
}

/* テーブル */
.p-plnRes_siteVeh-tbl {
    width: 100%;
}
.p-plnRes_siteVeh-tbl thead tr {
    height:78px;
}

.p-plnRes_siteVeh-tbl th div {
    float:      left;
    min-width:  0px;    /* 横幅自動調整用 */
    text-align: center;
}
.p-plnRes_siteVeh-tbl th.p-plnRes_siteVeh-tbl_col-maxDailyDriveDist div { /* 1日当たりの走行距離（最大） */
    float: right;
}


/* padding,margin */
.p-plnRes_siteVeh-tbl th,
.p-plnRes_siteVeh-tbl td {
    padding: 15px 20px;
}
.p-plnRes_siteVeh-tbl td {
    padding-top:    10px;
    padding-bottom: 13px;
}

.p-plnRes_siteVeh-tbl th.p-plnRes_siteVeh-tbl_col-vehId,
.p-plnRes_siteVeh-tbl td.p-plnRes_siteVeh-tbl_col-vehId { /* 車両ID */
    padding-right: 10px;
    padding-left:  20px;
}
.p-plnRes_siteVeh-tbl th.p-plnRes_siteVeh-tbl_col-evModelName,
.p-plnRes_siteVeh-tbl td.p-plnRes_siteVeh-tbl_col-evModelName { /* モデル名 */
    padding-right: 10px;
    padding-left:  10px;
}

.p-plnRes_siteVeh-tbl th:nth-last-child(1),
.p-plnRes_siteVeh-tbl td:nth-last-child(1) {
    padding-right: 28px;
}

/* データ幅 */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-vehId { /* 車両ID */
    width: 90px;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-evModelName { /* モデル名 */
    width: 104px;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-maxDailyDriveDist {/* 1日当たりの走行距離（最大） */
    width: 154px;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-wdayEnergyConsumption, /* 消費電力量（平日） */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-hdayEnergyConsumption { /* 消費電力量（休日） */
    width: 80px;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-chargerModelName { /* 割り当て充電器（機種名） */
    width: 196px;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-wdayChgTime,  /* 充電可能時間帯（平日） */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-hdayChgTime { /* 充電可能時間帯（休日） */
    width: 112px;
}

.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-chargerModelName div { /* 割り当て充電器（機種名） */
    max-width: 196px;
}

/* データ幅(EN) */
.p-plnRes_siteVeh-tbl.c-locale_en .p-plnRes_siteVeh-tbl_col-maxDailyDriveDist {/* 1日当たりの走行距離（最大） */
    width: 129px;
}
.p-plnRes_siteVeh-tbl.c-locale_en .p-plnRes_siteVeh-tbl_col-wdayEnergyConsumption, /* 消費電力量（平日） */
.p-plnRes_siteVeh-tbl.c-locale_en .p-plnRes_siteVeh-tbl_col-hdayEnergyConsumption { /* 消費電力量（休日） */
    width: 105px;
}

/* 文字揃え */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-vehId,             /* 車両ID */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-evModelName,       /* モデル名 */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-chargerModelName { /* 割り当て充電器（機種名） */
    text-align: left;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-maxDailyDriveDist,      /* 1日当たりの走行距離（最大） */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-wdayEnergyConsumption,  /* 消費電力量（平日） */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-hdayEnergyConsumption { /* 消費電力量（休日） */
    text-align: right;
}
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-wdayChgTime,  /* 充電可能時間帯（平日） */
.p-plnRes_siteVeh-tbl .p-plnRes_siteVeh-tbl_col-hdayChgTime { /* 充電可能時間帯（休日） */
    text-align: center;
}



/*---------- キャプション ----------*/
/* 制御【あり/なし】の場合 */
.p-plnRes_sectionName {
    margin-bottom: 30px;
}
.p-plnRes_sectionName_withWar {
    margin-bottom: 0px;
}

/* 使用電力推移 */
.p-plnRes_captionSmall-usageChart,
.p-plnRes_captionSmall-chgSchedule {
    margin: 0 0 30px 0;
}
.p-plnRes_captionSmall-chgSchedule_withWar {
    margin: 0;
}
.p-plnRes_captionSmall-usageChart {
    font-size: var(--font-size-headerTitle);
    display:     flex;
    align-items: center;
}
.p-plnRes_captionSmall-chgSchedule,
.p-plnRes_captionSmall-chgSchedule_withWar {
    font-size: var(--font-size-main);
    margin-left: 22px;
}
.p-plnRes_captionSmall-chgSchedule span,
.p-plnRes_captionSmall-chgSchedule_withWar span {
    vertical-align: top;
}

.p-plnRes_captionSmall-usageChart [class^=c-accordionBtn],
.p-plnRes_captionSmall-chgSchedule [class^=c-accordionBtn],
.p-plnRes_captionSmall-chgSchedule_withWar [class^=c-accordionBtn] {
    margin-right: 8px;
}
.p-plnRes_captionSmall-usageChart .c-captionSmall:before{
    display: none;
}

/* 計算スコア */
.p-plnRes_captionSmall-usageChart-calcScore {
    margin-left: 40px;
    font-size:   var(--font-size-main);
}

/*---------- テーブル ----------*/
/* Enechangeへの入力項目 */
.p-plnRes_inputItemsForEnechange-tbl {
    margin-bottom: 60px;
}

.p-plnRes_inputItemsForEnechange-tbl th {
    padding: 8px 0 8px 20px;
}
.p-plnRes_inputItemsForEnechange-tbl td {
    padding: 10px 0 14px 20px;
}
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-annualPeakElecPower,
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-annualDayAndNightRatio,
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-wdayAndHdayRatio,
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-seasonRatio {
    padding-left:  10px;
    padding-right: 10px;
}
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-seasonRatio {
    padding-right: 30px;
}

/* データ幅：臨機応変に調整 */
.p-plnRes_inputItemsForEnechange-tbl_col-annualElecEnergyUsage {
    width:        180px; /* 180+20 */
}
.p-plnRes_inputItemsForEnechange-tbl_col-annualPeakElecPower,
.p-plnRes_inputItemsForEnechange-tbl_col-annualDayAndNightRatio,
.p-plnRes_inputItemsForEnechange-tbl_col-wdayAndHdayRatio {
    width: 160px; /* 180(-20) */
}
.p-plnRes_inputItemsForEnechange-tbl_col-seasonRatio{
    width: 160px; /* 180+20(-40) */
}
/* 文字揃え */
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-annualElecEnergyUsage,
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-annualPeakElecPower {
    text-align: right;
}
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-annualDayAndNightRatio,
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-wdayAndHdayRatio,
.p-plnRes_inputItemsForEnechange-tbl .p-plnRes_inputItemsForEnechange-tbl_col-seasonRatio {
    text-align: center;
}

/*---------- グラフ ----------*/
/*
 * グラフ目盛り等のフォントサイズ、グラフ配色はpln_chart.jsで指定
 */
.p-mainPlnRes-graph {
    margin-bottom: 60px;
}

.p-plnRes_chartContainer-usage,
.p-plnRes_chartContainer-chgSchedule {
    margin-bottom: 30px;
}

.p-chart{
    margin: 0 17px 0 auto;
}
/*
.p-plnRes_chartContainer-usage .p-chart {
    position: relative;
    right:    17px;
}
*/
/* 注意表示（充電スケジュール） */
.p-plnRes_chartContainer-chgScheduleAttention {
    width:        calc(100% - 28px - 22px - 24px);
    margin-right: 24x;
    margin-left:  22px;
}

/*----------------------------------------
  【 EV移行費用 】
------------------------------------------*/
/******************************
 *  1.EV導入後の電気料金について
 *  2.充電設備施工・運用費用について
 *  3.既存内燃車の燃料費
 ******************************/
/*---------- 見出し、セクション ----------*/
/* 共通 */
.p-sftInp_caption1,
.p-sftInp_caption2,
.p-sftInp_caption3,
.p-sftInp_section {
    margin-bottom: 30px;
}

/*---------- テーブル ----------*/
/* 共通 */
.p-mainSftInp-content table {
    table-layout: fixed;
}

/* EV導入後の電気料金について
   ------------------------------ */
/* *** テーブル *** */
.p-sftInp_elecCont-inputTbl {
    margin-bottom:   60px;
    border-collapse: collapse;
}


.p-sftInp_elecCont-inputTbl th {
    background-color: var(--color-background-tblHeader);
}
.p-sftInp_elecCont-inputTbl td {
    background-color: var(--color-background-tblBody);
}

.p-sftInp_elecCont-inputTbl thead th {
    font-weight: bold;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-blank {
    background-color: var(--color-background-main);
}

.p-sftInp_elecCont-inputTbl th {
    padding: 12px 0px 12px 0px;
}
.p-sftInp_elecCont-inputTbl td {
    padding: 11px 0px 10px 0px;
}

.p-sftInp_elecCont-inputTbl tr {
    height: 44px;
}
.p-sftInp_elecCont-inputTbl tr.p-sftInp_elecCont-inputTbl_row-planName {
    height: 78px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-contPower,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-contPower,  /* 契約電力 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-powerFactor,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-powerFactor { /* 力率 */ 
    height: 34px; 
    padding-bottom: 0px;
}
.p-sftInp_elecCont-inputTbl tr.p-sftInp_elecCont-inputTbl_row-validation {  /* バリデーション結果 */
    height: auto;
}


/* 列幅 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-itemName { /* 項目名 */
    width: 225px; /* 225 */
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-inpRequired { /* 必須アイコン */
    width:        62px; /* 65 */
    padding-left: 3px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_val,         /* 「現状プラン」の値 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_val, /* 「新プラン 充電制御 【なし】」の値 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_val {  /* 「新プラン 充電制御 【あり】」の値 */
    width: 186px; /* 190 */
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_unit,         /* 「現状プラン」の単位 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_unit, /* 「新プラン 充電制御 【なし】」の単位 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unit {  /* 「新プラン 充電制御 【あり】」の単位 */
    width: 110px; /* 110 */
}

/* パディング */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-inpRequired { /* 必須アイコン */
    padding-left: 3px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow,      /* 現状プラン */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_val { /* 「現状プラン」の値 */
    padding-left: 20px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_val,         /* 「現状プラン」の値 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_val, /* 「新プラン 充電制御 【なし】」の値 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_val {  /* 「新プラン 充電制御 【あり】」の値 */
    padding-right: 4px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unit {  /* 「新プラン 充電制御 【あり】」の単位 */
    padding-right: 20px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow,                   /* 現状プラン */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled {           /* 新プラン 充電制御 【なし】 */
    padding-right: 32px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled {            /* 新プラン 充電制御 【あり】 */
    padding-right: 52px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow.c-center { /* 現状プラン（中央揃え） */
    padding-right: 114px;
}
.p-sftInp_elecCont-inputTbl_col-planNewUnctrled_unitInput .c-unitInput,
.p-sftInp_elecCont-inputTbl_col-planNewCtrled_unitInput .c-unitInput {
    padding-left: 0;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-contPower th,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-contPower td,  /* 契約電力 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-powerFactor th,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-powerFactor td { /* 力率 */ 
    padding-bottom: 0px;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-validation th,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-validation td {  /* バリデーション結果 */
    padding-top:    0px;
}


/* 文字揃え */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-itemName,            /* 項目名 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_val,         /* 「現状プラン」の値 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_val, /* 「新プラン 充電制御 【なし】」の値 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_val {  /* 「新プラン 充電制御 【あり】」の値 */
    text-align: right;
}

.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow,                   /* 現状プラン */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled,           /* 新プラン 充電制御 【なし】 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled,             /* 新プラン 充電制御 【あり】 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-inpRequired,               /* 必須アイコン */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_unit,              /* 「現状プラン」の単位 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_unit,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_unitInput, /* 「新プラン 充電制御 【なし】」の単位 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unit,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unitInput {  /* 「新プラン 充電制御 【あり】」の単位 */
    text-align: left;
}
.p-sftInp_elecCont-inputTbl .c-center {
    text-align: center;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewUnctrled_unitInput, /* 「新プラン 充電制御 【なし】」の単位 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unitInput {  /* 「新プラン 充電制御 【あり】」の単位 */
    vertical-align: bottom;
}

/* 枠線 */
.p-sftInp_elecCont-inputTbl th,
.p-sftInp_elecCont-inputTbl td {
    border-bottom: 1px var(--color-border-table) solid;
}

.p-sftInp_elecCont-inputTbl thead th { /* ヘッダ */
    border-top: 1px var(--color-border-table) solid;
}
.p-sftInp_elecCont-inputTbl thead td,                                      /* ヘッダ */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-contPower th,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-contPower td,  /* 契約電力 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-powerFactor th,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_row-powerFactor td { /* 力率 */ 
    border-bottom: none;
}

.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow,      /* 現状プラン */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-itemName,     /* 項目名 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNow_val { /* 「現状プラン」の値 */
    border-left:  1px var(--color-border-table) solid;
}
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled,             /* 新プラン 充電制御 【あり】 */
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unit,
.p-sftInp_elecCont-inputTbl .p-sftInp_elecCont-inputTbl_col-planNewCtrled_unitInput {  /* 「新プラン 充電制御 【あり】」の単位 */
    border-right: 1px var(--color-border-table) solid;
}


/* 入力 */
.p-sftInp_elecCont-inputTbl .c-txt {
    width: calc(100% - 24px);
}
.p-sftInp_elecCont-inputTbl .c-sel-wrap {
    width: 100%;
}

.p-sftInp_elecCont-inputTbl .c-chkbox {
    position:     relative;
    margin-left:  0px;
    margin-right: 6px;
    top:          2px;
    left:         0px;
}

.p-sftInp_elecCont-inputTbl input:read-only,
.p-sftInp_elecCont-inputTbl input:read-only:focus {
    border:  none;
    outline: none;
    padding: 0px;
}


/* 2.充電設備施工・運用費用について
/* 3.既存内燃車の燃料費
   ------------------------------ */
/* テーブル */
.p-sftInp_vehPurchaseCost-inputTbl,
.p-sftInp_chgBuildingCost-inputTbl,
.p-sftInp_chgControllerCost-inputTbl,
.p-sftInp_gvAnnualFuelCost-inputTbl {
    border-collapse: collapse;
    margin-bottom:   60px;
}

.p-sftInp_vehPurchaseCost-inputTbl   th,
.p-sftInp_chgBuildingCost-inputTbl   th,
.p-sftInp_chgControllerCost-inputTbl th,
.p-sftInp_gvAnnualFuelCost-inputTbl  th {
    padding:    0px 30px 6px 0px;
    text-align: left;
}

.p-sftInp_vehPurchaseCost-inputTbl   td,
.p-sftInp_chgBuildingCost-inputTbl   td,
.p-sftInp_chgControllerCost-inputTbl td,
.p-sftInp_gvAnnualFuelCost-inputTbl  td {
    width:   278px; /* 308 */
    padding: 0 30px 0 0;
}
.p-sftInp_vehPurchaseCost-inputTbl   td.c-validationErr,
.p-sftInp_chgBuildingCost-inputTbl   td.c-validationErr,
.p-sftInp_chgControllerCost-inputTbl td.c-validationErr,
.p-sftInp_gvAnnualFuelCost-inputTbl  td.c-validationErr {
    padding-right: 10px;
}
.p-sftInp_chgBuildingCost-inputTbl tbody:nth-child(2) tr:nth-last-child(1) td {
    padding-bottom: 30px;
}

.p-sftInp_chgControllerCost-inputTbl .p-sftInp_chgControllerCost-inputTbl_col-runningCost {
    width: 392px;  /* 422 */
}
.p-sftInp_vehPurchaseCost-inputTbl .p-sftInp_vehPurchaseCost-inputTbl_col-remarks,
.p-sftInp_chgBuildingCost-inputTbl .p-sftInp_chgBuildingCost-inputTbl_col-remarks,
.p-sftInp_chgControllerCost-inputTbl .p-sftInp_chgControllerCost-inputTbl_col-remarks {
    width:         440px;  /* 440 */
    padding-right: 0px;
}

.p-sftInp_vehPurchaseCost-inputTbl   .c-txt,
.p-sftInp_chgBuildingCost-inputTbl   .c-txt,
.p-sftInp_chgControllerCost-inputTbl .c-txt,
.p-sftInp_gvAnnualFuelCost-inputTbl  .c-txt{
    width:  222px; /* 240(-18) */
}

.p-sftInp_vehPurchaseCost-inputTbl   .p-sftInp_chgControllerCost-inputTbl_remarks,
.p-sftInp_chgBuildingCost-inputTbl   .p-sftInp_chgControllerCost-inputTbl_remarks,
.p-sftInp_chgControllerCost-inputTbl .p-sftInp_chgControllerCost-inputTbl_remarks{
    width: calc(100% - 18px); 
}
/*----------------------------------------
  【 EV移行費用算出結果 】
------------------------------------------*/
/* 共通
   ------------------------------ */
/* (事務所)、(特例需要場所) */
.p-sftRes_mainTbl_officeSite {
    padding:          2px 8px;
    border-radius:    29px;
    font-size:        var(--font-size-unit);
    text-align:       center;
    color:            var(--color-font-sftRes-label-office);
    background-color: var(--color-background-sftRes-label-office);
}
.p-sftRes_mainTbl_specialSite {
    padding:          2px 8px;
    border-radius:    29px;
    font-size:        var(--font-size-unit);
    text-align:       center;
    color:            var(--color-font-sftRes-label-special);
    background-color: var(--color-background-sftRes-label-special);
}

/* + */
.p-sftRes_mainTbl-plus {
    position: relative;
    left:  -10px;
}


/* 移行費用策定結果
   ------------------------------ */
/*---------- テーブル ----------*/
/* *** 共通 *** */
.p-sftRes_mainTbl,         /* EV移行費用算出結果テーブル */
.p-sftRes_selectedPlnTbl { /* 「このプランに決定」で選択したプラン表示 */
    margin:          0 0 60px 0;
    table-layout:    fixed;
    border-collapse: collapse;
}
.p-sftRes_selectedPlnTbl { /* 「このプランに決定」で選択したプラン表示 */
    margin:          0 0 30px 0;
}

.p-sftRes_mainTbl tr,
.p-sftRes_selectedPlnTbl tr {
    height: 37px; /* 44 */
}
tr.p-sftRes_mainTbl_sectionSpace { /* セクション間の空白 */
    height: 60px;
}

tr.p-sftRes_mainTbl_space { /* 空白 */
    height: 0px;
}


/* *** 背景色 *** */   
.p-sftRes_mainTbl th[class*=p-sftRes_mainTbl-col] {
    background-color: var(--color-background-tblHeader);
}
.p-sftRes_mainTbl td[class*=p-sftRes_mainTbl-col] {
    background-color: var(--color-background-tblBody);
}

/* 背景色なし */
.p-sftRes_mainTbl td.p-sftRes_mainTbl-col-noBg,
tr.p-sftRes_mainTbl_sectionSpace td, 
tr.p-sftRes_mainTbl_space td,
.p-sftRes_mainTbl td.p-sftRes_mainTbl-col-caption,                /* 「EV移行費用」 */
.p-sftRes_mainTbl td.p-sftRes_mainTbl-col-section,                /* 「結果詳細」 */
.p-sftRes_mainTbl td[class^=p-sftRes_mainTbl-col_toggleDisplay] { /* 「プラン比較表示に戻る」 */
    background-color: var(--color-background-main);
}
/* グラフ・グラフ詳細の強調表示 */
.p-sftRes_mainTbl td.p-sftRes_mainTbl-col-bgYellow { 
    background-color: var(--color-background-sftResBest);
}

/* *** 列幅 *** */

/* 項目名 */
.p-sftRes_mainTbl {
    width: 1256px;
}
.p-sftRes_mainTbl-noSpecialSite { /* 特例需要場所の表示なし */
    width: 656px; /* 1256 - 150*4 */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemName {  /* 項目名ヘッダ */
    width: 236px;  /* 256(-20) */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemName.p-sftRes_mainTbl-paddingLeft {  /* 項目名ヘッダ */
    width: 197px;  /* 256(-20-39) */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption {        /* 「EV移行費用」 */
    width: 246px;  /* 256(-10) */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting {  /* グラフ設定・グラフ単位・グラフy軸 */
    width: 256px;  /* 256 */
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemNameSub {  /* 項目名 */
    width: 200px;  /* 256(-56) */
}


/* 各プラン */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_office_officeCtrled,     /* 拠点のみの電力契約：制御あり */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_office_officeUnctrled {  /* 拠点のみの電力契約：制御なし */
    width: 180px;  /* 200(-20) */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_office {  /* 拠点のみの電力契約 */
    width: 380px;  /* 200*2(-20) */
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both_officeCtrled,      /* 拠点+特例の電力契約：拠点（制御あり） */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both_specialCtrled,     /* 拠点+特例の電力契約：特例（制御あり） */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both_officeUnctrled,    /* 拠点+特例の電力契約：拠点（制御なし） */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both_specialUnctrled {  /* 拠点+特例の電力契約：特例（制御なし） */
    width: 130px;  /* 150(-20) */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both_ctrled,     /* 拠点+特例の電力契約：制御あり */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both_unctrled {  /* 拠点+特例の電力契約：制御なし */
    width: 280px;  /* 150*2(-20) */
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_planned_both {  /* 拠点+特例の電力契約 */
    width: 580px;  /* 150*4(-20) */
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_toggleDisplay,                     /* 「プラン比較表示に戻る」 */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office-selected,         /* 拠点のみの電力契約（「このプランのみ表示」押下時） */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office_officeCtrled,     /* 拠点のみの電力契約：制御あり */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office_officeUnctrled {  /* 拠点のみの電力契約：制御なし */
    width: 200px;  /* 200 */
}
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office {  /* 拠点のみの電力契約 */
    width: 400px;  /* 200*2 */
}
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both-selected,   /* 拠点+特例の電力契約（「このプランのみ表示」押下時） */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both_ctrled,     /* 拠点+特例の電力契約：制御あり */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both_unctrled {  /* 拠点+特例の電力契約：制御なし */
    width: 300px;  /* 150*2 */
}
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both {  /* 拠点+特例の電力契約 */
    width: 600px;  /* 150*4 */
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_toggleDisplay-office {  /* 「プラン比較表示に戻る」（拠点のみの選択時） */
    width: 800px;  /* 200+300*2 */
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_toggleDisplay-both {  /* 「プラン比較表示に戻る」（拠点+特例需要の選択時） */
    width: 700px;  /* 200*2+300 */
}


/* *** 枠線 *** */
[class*=p-sftRes_mainTbl-col] {
    border:    solid 1px var(--color-border-table);
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting {  /* グラフ設定・グラフ単位・グラフy軸 */
    border-left: none;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting {  /* グラフ設定・グラフ単位・グラフy軸 */
    border-right: none;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting,  /* グラフ設定・グラフ単位・グラフy軸 */
.p-sftRes_mainTbl .p-sftRes_chartSettingTbl-col_chartYScale {  /* グラフ単位・グラフy軸 */
    border-top: none;
}

tr.p-sftRes_mainTbl_space [class*=p-sftRes_mainTbl-col] { /* 空白 */
    border-top:    none;
    border-bottom: solid 3px var(--color-border-table);
}


/* 枠線なし */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption,                 /* 「EV移行費用」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-section,                 /* 「結果詳細」 */
.p-sftRes_mainTbl [class^=p-sftRes_mainTbl-col_toggleDisplay],   /* 「プラン比較表示に戻る」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-noBorder {
    border: none;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-noRightBorder {
    border-right: none;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-noLeftBorder {
    border-left: none;
}

/* *** パディング *** */
[class*=p-sftRes_mainTbl-col] {
    padding: 11px 20px 13px 0;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption,                              /* 「EV移行費用」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-section,                              /* 「結果詳細」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting,                         /* グラフ設定・グラフ単位・グラフy軸 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-row_chart [class^=p-sftRes_mainTbl-col],  /* グラフ表示行 */
tr.p-sftRes_mainTbl_space [class*=p-sftRes_mainTbl-col] {                     /* 空白 */
    padding: 0px;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption {  /* 「EV移行費用」 */
    padding-left: 10px;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemNameSub {  /* 項目名 */
    padding-left:  56px;
    padding-right: 0px;
}

.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office_officeCtrled,    /* 拠点のみの電力契約：制御あり */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office_officeUnctrled,  /* 拠点のみの電力契約：制御なし */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office,                 /* 拠点のみの電力契約 */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_office-selected,        /* 拠点のみの電力契約（「このプランのみ表示」押下時） */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both_ctrled,            /* 拠点+特例の電力契約：制御あり */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both_unctrled,          /* 拠点+特例の電力契約：制御なし */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both,                   /* 拠点+特例の電力契約 */
.p-sftRes_mainTbl th.p-sftRes_mainTbl-col_planned_both-selected {         /* 拠点+特例の電力契約（「このプランのみ表示」押下時） */
    padding-top:    6px;
    padding-bottom: 6px;
    padding-right:  0px;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_elecCompanyName {  /* 電力会社名 */
    padding-left: 20px;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-paddingLeft { /* アコーディオンボタンなしの項目名ヘッダ */
    padding-left: 38px;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl_annualCost-sub td { /* 拠点+特例における、拠点/特例それぞれの値表示 */
    padding-top:    6px;
    padding-bottom: 9px;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl_refference [class^=p-sftRes_mainTbl-col]  {  /* 参考値：EV未導入時の年間運用費 */
    padding-top:    19px;
    padding-bottom: 17px;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption .c-caption {  /* 「EV移行費用」 */
    position: relative;
    top:      -4px;
}

.p-sftRes_mainTbl_refference-captionSmall td { /* 「参考値」 */
    padding-top:     0px;
    padding-bottom: 30px;
}


/* *** 文字揃え、フォントサイズ *** */
/* 文字揃え */
[class*=p-sftRes_mainTbl-col] {
    text-align: right;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption,                /* 「EV移行費用」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-section,                /* 「結果詳細」 */
.p-sftRes_mainTbl [class^=p-sftRes_mainTbl-col_toggleDisplay],  /* 「プラン比較表示に戻る」 */
.p-sftRes_mainTbl .p-sftRes_chartSettingTbl-col_chartYScale,    /* グラフ単位・グラフy軸 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting,           /* グラフ設定 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemNameSub,            /* 項目名 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemName,               /* 項目名ヘッダー */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_elecCompanyName,        /* 電力会社名 */
.p-sftRes_mainTbl .c-left {
    text-align: left;
}

.p-sftRes_mainTbl .c-center {
    text-align: center;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col-caption,  /* 「EV移行費用」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-section,  /* 「結果詳細」 */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col-vTop  {   /* 項目名など上付きセル */
    vertical-align: top;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_elecCompanyName {
    vertical-align: top;
}

/* フォントサイズ */
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemNameSub {  /* 項目名 */
    font-size: var(--font-size-btnSmall);
}
.p-sftRes_mainTbl .p-sftRes_mainTbl-col_itemNameSub.p-sftRes_mainTbl-col_itemNameSub-normal {  /* グラフ詳細の項目名 */
    font-size: var(--font-size-main);
}

/* 太字 */
.p-sftRes_mainTbl-col_itemName .p-sftRes_mainTbl-itemCategoryName {
    font-weight: bold;
}


/* *** アコーディオンボタン *** */
.p-sftRes_mainTbl .c-accordionBtn-closed,
.p-sftRes_mainTbl .c-accordionBtn-opened {
    position:relative;
    top: 5px;
    margin-left:  8px;
    margin-right: 8px;
}

/* グラフ
   ------------------------------ */
/*
 * グラフのフォントサイズ、色についてはsft_chart.jsで設定 **** TODO: セル強調表示を xxx-attentionとかにする
 */
tr.p-sftRes_mainTbl-row_chart {
    height: 391px;
}

.p-sftRes_mainTbl-row_chart-info {
    position: relative;
}
.p-sftRes_mainTbl-row_chart-info > div {
    position: absolute;
    top:20px;
}

/* *** グラフ設定 *** */
.p-sftRes_mainTbl-chartSettingTbl {
    width: 256px;
    height: 428px;
    table-layout: fixed;
    border-collapse: collapse;
    text-align: left;
}
.p-sftRes_mainTbl-chartSettingTbl td {
    padding: 0;
    border:  none;
}

.p-sftRes_mainTbl-chartSettingTbl   .p-sftRes_mainTbl-chartSettingTbl_col-chartSetting {
    vertical-align: top;
    padding-left:  10px;
}

.p-sftRes_mainTbl-row_chart-info .p-sftRes_mainTbl-chartSettingTbl_chartSetting-calcYear,
.p-sftRes_mainTbl-row_chart-info .p-sftRes_mainTbl-chartSettingTbl_chartSetting-evOnly {
    padding: 10px 0px;
}
.p-sftRes_mainTbl-row_chart-info .p-sftRes_mainTbl-chartSettingTbl_chartSetting-calcYear {
    padding-top: 16px;
}

.p-sftRes_mainTbl-chartSettingTbl_chartSetting-calcYear .c-sel-wrap { /* 計算年数 */
    margin-left: 20px;
}

.p-sftRes_mainTbl-chartSettingTbl_chartSetting-evOnly .c-chkbox { /* EV分のみ表示 */
    position: relative;
    margin-left:  0px;
    margin-right: 10px;
    top:      2px;
    left:     0px
}

.p-sftRes_mainTbl .p-sftRes_chartSettingTbl-col_chartYScale-unit {  /* グラフ単位 */
    padding-right: 10px;
}
.p-sftRes_mainTbl .p-sftRes_chartSettingTbl-col_chartYScale-unit,    /* グラフ単位 */
.p-sftRes_mainTbl .p-sftRes_chartSettingTbl-col_chartYScale-scale {  /* グラフy軸 */
    width: 43px;  /* 43 */
}

.p-sftRes_mainTbl .p-sftRes_mainTbl-col_chartSetting {
    width: 193px;  /* 256-43(-20) */
}

.p-sftRes_mainTbl .p-sftRes_chartSettingTbl-col_chartYScale-unit {   /* グラフ単位 */
    text-align: right;
    font-size:     var(--font-size-graphScale);
    vertical-align: bottom;
}


/* *** 凡例 *** */
.p-sftRes_mainTbl-chartSettingTbl_regendTbl {
    margin-top:      20px;
    border-collapse: collapse;
}
.p-sftRes_mainTbl-chartSettingTbl_regendTbl td:nth-child(1) {
    /* leftが□のmargin-leftと合わせて30pxになるように設定 */
    padding: 0 0 9px 19px;
}
.p-sftRes_mainTbl-chartSettingTbl_regendTbl td:nth-child(2) {
    padding: 0 0 9px 10px;
}

.p-sftRes_mainTbl_regend-installCost,
.p-sftRes_mainTbl_regend-runningCost,
.p-sftRes_mainTbl_regend-totalCost {
    float: left;
    margin-left: 11px;
    left:  11px;
    font-size: var(--font-size-sectionTitle);
}

.p-sftRes_mainTbl_regend-installCost {  /* 導入費 */
    color: var(--color-font-sftRes-installCost);
}
.p-sftRes_mainTbl_regend-runningCost {  /* 運用費 */
    color: var(--color-font-sftRes-runningCost);
}

.p-sftRes_mainTbl-row_chart canvas {  /* グラフ */
    margin: 0px auto;
}

.p-sftRes_mainTbl_totalCost th,
.p-sftRes_mainTbl_totalCost td {  /* 合計（X年） */
    font-weight: bold;
}


/* プラン
   ------------------------------ */
.p-sftRes_mainTbl .p-sftRes_mainTbl_plan td {  /* プラン名表示行 */
    vertical-align: middle;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl_plan [class^=p-sftRes_mainTbl-col_planned_]  {  /* プラン名表示行 */
    vertical-align: top;
}

.p-sftRes_mainTbl .p-sftRes_mainTbl_plan [class^=p-sftRes_mainTbl-col_planned_]  {  /* 拠点 */
    padding: 0 10px 0 10px;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl_plan [class^=p-sftRes_mainTbl-col_planned_both_]  {  /* 拠点+特例：拠点 */
    padding-left: 0;
}
.p-sftRes_mainTbl .p-sftRes_mainTbl_plan [class^=p-sftRes_mainTbl-col_planned_both_]  {  /* 拠点+特例：特例 */
    padding-right: 0;
}

.p-sftRes_mainTbl_plan > td:nth-child(1) {
    vertical-align: middle;
}
.p-sftRes_mainTbl_plan .p-sftRes_mainTbl_planTbl {
    border-collapse: collapse;
    margin: 0;
    width:  100%;
    height: 100%;
}

.p-sftRes_mainTbl_planTbl > tbody > tr > td {
    padding-top:    15px;
    padding-bottom: 14px;
}
.p-sftRes_mainTbl_planTbl > tbody > tr > td.p-sftRes_mainTbl_plan-planName {
    padding-top:    0px;
    padding-bottom: 12px;
}


[class^=p-sftRes_mainTbl-col_planned_both_] .p-sftRes_mainTbl_planTbl .p-sftRes_mainTbl_officeSite { /* 「拠点」 */
    margin-left: 10px;
}
.p-sftRes_mainTbl_planTbl .p-sftRes_mainTbl_specialSite { /* 「特例需要」 */
    position: relative;
    left:     -10px;
}

.p-sftRes_mainTbl_plan-planName {
    font-weight:bold;
}

.p-sftRes_mainTbl_plan-planNameContainer_officeSite {
    width:178px; /* 200(-20-2) */
}
.p-sftRes_mainTbl_plan-planNameContainer_bothSite {
    width:138px; /* 150(-10-2)*/
}

/* *** 「このプランを選択」ボタンの選択結果 *** */
.p-sftRes_selectedPlnTbl {
    width:  1246px;
    min-height: 40px;
    background-color: var(--color-background-sub);
}

.p-sftRes_selectedPlnTbl td {
    padding: 8px 10px;
    text-align: left;
    word-break: break-all;
    overflow-wrap: anywhere;
}

.p-sftRes_selectedPlnTbl .p-sftRes_selectedPlnTbl-header { /* 選択プラン */
    width: 130px; /* 150 */
}
.p-sftRes_selectedPlnTbl .p-sftRes_selectedPlnTbl-cancel { /* 解除 */
    width: 54px; /* 68px */
}
.p-sftRes_selectedPlnTbl .p-sftRes_selectedPlnTbl-planNameTbl { /* プラン名 */
    padding: 0px;
    width:   1028px; /* 1246 - 150 - 68 */
}

.p-sftRes_selectedPlnTbl-planNameTbl table .p-sftRes_selectedPlnTbl-planNameTbl_col-iconOffice { /* 拠点 */
    width: 55px; /* 75 */
}
.p-sftRes_selectedPlnTbl-planNameTbl table .p-sftRes_selectedPlnTbl-planNameTbl_col-iconSpecial { /* 特例需要場所 */
    width: 94px; /* 114 */
}

.p-sftRes_selectedPlnTbl-cancel .c-btnOpen {
    margin-left: 0;
}

/* 結果詳細
   ------------------------------ */

tr.p-sftRes_mainTbl_annualCost-sub { /* 拠点+特例における、拠点/特例それぞれの値表示 */
    font-size: var(--font-size-sftResBreakdown);
    height: 25px; /* 25 */
}

.p-sftRes_mainTbl_annualCost-sub .p-sftRes_mainTbl-col_planned_both_officeCtrled span,
.p-sftRes_mainTbl_annualCost-sub .p-sftRes_mainTbl-col_planned_both_officeUnctrled span { /* 「+」 の分を調整 */
    position: relative;
    right: -15px;
}
.p-sftRes_mainTbl_annualCost-sub .p-sftRes_mainTbl-col_planned_both_officeUnctrled .p-sftRes_mainTbl-plus,
.p-sftRes_mainTbl_annualCost-sub .p-sftRes_mainTbl-col_planned_both_officeCtrled .p-sftRes_mainTbl-plus { /* + */
    left:  23.5px;
    right: 0px;
}

/* *** ポップアップメニュー *** */
.p-sftRes_mainTbl_popupSwitch {
    width:  20px;
    height: 20px;
    float:right;
    right: 9.5px;
    position: relative;
    background-repeat: no-repeat;
    background-position: right;
    background: url('/image/menu-914c3da4b78c842e1d260d2214ccd7aa.svg' );
    cursor: pointer;
}

.p-sftRes_mainTbl_popupMenu{
    border-collapse: collapse;
    width:155px;
    background-color:#FFFFFF;
    position: fixed;
    top: 0px;
    left:10;
    cursor: pointer;
}
.p-sftRes_mainTbl_popupMenu > tbody > tr > td {
    border: 1px solid  var(--color-border-table)
}

input.p-sftResResumePlan { /* 「プラン比較表示に戻る」ボタン */
    margin-left:  18px;
}

/* シミュレーション詳細
   ------------------------------ */
/* *** nav *** */
.p-sftRes_resDetailNav  {
    margin-bottom: 30px;
}
.p-sftRes_resDetailNav td {
    padding: 0 20px 0 0;
}

.p-sftRes_resDetailNav-col_arrow div {
    margin: auto 0;
    width: 8.5px;
    height: 8.5px;
    border-right: 1px var(--color-font-main) solid;
    border-bottom: 1px var(--color-font-main) solid;
    transform: rotate(-45deg);
}



/* *** 結果詳細 *** */
.p-mainSftRes-content .p-vehRes_resultTbl,
.p-mainSftRes-content .p-engRes_powerConsumptionPerDay-resultTbl,
.p-mainSftRes-content .p-plnIn1Res_chargerAllocation-outputTbl,
.p-mainSftRes-content .p-plnRes_resultContainer {
    margin-bottom: 60px;
}

/* 見出し */
.p-sftRes_sectionName {
    margin: 0 0 30px 0;
}
.p-sftRes_sectionName span.p-sftRes_sectionName-name{
    font-weight: bold;
    font-size: var(--font-size-headerTitle);
    vertical-align: middle;
}

/* 導入EV情報 */

/* 1日当たりの消費電力量 */

/* 充電器割り当て */

/* 充電計画 */

/*----------------------------------------
  マスタ情報管理
------------------------------------------*/
/* 共通
   ------------------------------ */
/*---------- ヘッダー ----------*/
.p-headerMst {
    height: 100%;
    /* 余白を含めたフルサイズから余白（右側のみ）を除いた幅をコンテンツの幅とする */
    width:         calc(var(--contents-size-width) - 60px);
    /* 左右余白調整 */
    margin-left:   auto;
    margin-right:  auto;
    /* 左右余白 */
    padding-left:  0px;
    padding-right: calc(60px - max(0px, 100vw - 100%));
}
.p-headerMst > table {
    width:        calc(var(--contents-size-width) - (21px + 63px));
    height:       100%;
    margin-left:  21px;
    margin-right: 63px;
}

.p-headerMst_back {
    width: 16px;
    padding-right: 23px;
}
/* タイトル */
.p-headerMst_title {
    font-size: var(--font-size-main);
    padding:   0 5px 0 0;
}
/* メニュー */
.p-headerMst_menu {
    font-size:       var(--font-size-btnSmall);
    text-align:      right;
    text-decoration: underline;
    cursor:          pointer;
}
.p-headerMst_menu table {
    margin-left: auto;
}

.p-headerMst_menu td {
    padding: 0 10px;
}

/*---------- ナビゲーション ----------*/
.p-main_mst {
    height: 100%;
}
.p-main_mst > table {
    height: 100%;
    border-collapse: collapse;
}

.p-mstLst_nav {
    width: 172px; /* 200 */
    padding: 30px 0px 0px 28px;
    vertical-align: top;

    background-color: var(--color-background-master);
}
.p-mstLst_nav-space {
    width: calc( (100vw - var(--contents-size-width) ) / 2);
}
.p-mstLst_nav,
.p-mstLst_nav-space {
    background-color: var(--color-background-master);
}

.p-mstLst_navTable {
    border-collapse: collapse;
}
.p-mstLst_navTable td {
    padding-left: 8px;
}
.p-mstLst_navTable td.c-submit {
    cursor: pointer;
}
.p-mstLst_navTable .p-mstLst_navTable-row_selected {
    font-weight: bold;
}

.p-mstLst_navTable .p-mstLst_navTable-col_selectedIcon,
.p-mstLst_navTable .p-mstLst_navTable-row_selected .p-mstLst_navTable-col_selectedIcon {
    width:        4px;
    padding-left: 0px;
}

.p-mstLst_navTable .p-mstLst_navTable-row_selected .p-mstLst_navTable-col_selectedIcon {
    /* 枠線 */
    border:                none;
    /* 背景 */
    background-size:       4px 16px;
    background-repeat:     no-repeat;
    background-position:   center;
    background-image:      url('/image/section-009e26661819c56808ae4b08be85673d.svg' );
    background-position-y: 1px;
}

.p-mstLst_navTable .p-mstLst_navTable-spacing {
    height: 30px;
}

/*---------- 一覧 ----------*/
.p-mstLst_contents {
    width: 1086px; /* 1166 */
    padding: 0 0 0 40px;
    vertical-align: top;
}

/* 見出し */
.p-mstLst_section {
    margin-bottom: 30px;
    display: flex;
    align-items: center;
}
.p-mstLst_section button {
    margin: 0 20px;
}


/* *** テーブル *** */
.p-mstLst_tblWrapper{
    width:        1085px;
    padding:      0px;
    margin:       0px;
    /* 枠線 */
    border-left:  1px var(--color-border-table) solid;
    border-right: 1px var(--color-border-table) solid;
    /* スクロール */
    overflow-y:   auto;
    overflow-x:   auto;
    position:     relative;
}

.p-mstLst_tbl {
    min-width:      100%;
    border-spacing: 0px;
    table-layout:   fixed;
    /* 枠線 */
    border:          none;
    border-collapse: separate;
}

.p-mstLst_tbl th,
.p-mstLst_tbl td {  /* 文字揃え */
    text-align:    right;
    white-space: nowrap;
}
.p-mstLst_tbl th {  /* テーブルヘッダ固定 */
    position: sticky;
    z-index:  50;
    top:      0px;
    /* 背景色（改めて指定しないと背景が透けてしまう） */
    background-color: var(--color-background-tblHeader); 
}

/* パディング */
.p-mstLst_tbl th {
    padding: 16px 20px 16px 20px;
}
.p-mstLst_tbl td {
    padding: 10px 20px 10px 20px;
}
.p-mstLst_tbl th:nth-child(1),
.p-mstLst_tbl td:nth-child(1) {
    padding-left: 20px;
}

.p-mstLst_tbl .p-mstLst_tbl-space {
    padding: 0;
}

/* 枠線 */
.p-mstLst_tbl > tbody > tr:nth-last-child(1) > td {
    border-bottom: 1px var(--color-border-table) solid;
}
.p-mstLst_tbl > thead > tr > th {
    border-top: 1px var(--color-border-table) solid;
}

/* *** マスタ操作 *** */
.p-mstLst_tbl .p-mstLst_tbl-sticky,
.p-mstLst_tbl .p-mstLst_tbl-sticky_space {
    position:sticky;
    z-index:100;
    padding-left:  10px;
    padding-right: 10px;
}

.p-mstLst_tbl .p-mstLst_tbl-sticky_space {  /* マスタ操作とテーブルの隙間 */
    right:            154px;
    width:            0px; /* 20 */
    /* 背景色（改めて指定しないと背景が透けてしまう） */
    background-color: var(--color-background-main);
    /* 枠線 */
    border:           none;
}

.p-mstLst_tbl .p-mstLst_tbl-sticky { /* マスタ操作 */
    right:         0px;
    width:         134px; /* 154 */
    text-align:    left;
}

/* 背景色（改めて指定しないと背景が透けてしまう） */
.p-mstLst_tbl thead .p-mstLst_tbl-sticky {
    background-color: var(--color-background-tblHeader); 
    z-index:150;
}
.p-mstLst_tbl tbody .p-mstLst_tbl-sticky {
    background-color: var(--color-background-tblBody);
}

/* 複製、削除ボタン */
.p-mstLst_tbl .p-mstLst_tbl-sticky > button:nth-last-child(1){ /* 削除ボタン */
    margin-left: 4px;
}

/*---------- 入力 ----------*/

/* セクション名 */
.p-mstInp_section {
    margin:        0 0 30px 0;
}
/* 入力テーブル */
.p-mainMstInp-content table {
    margin:          0 0 60px 0;
    border-collapse: collapse;
    table-layout:    fixed;
}

.p-mainMstInp-content table th,
.p-mainMstInp-content table td {
    text-align: left;
    padding: 0 60px 6px 0;
    width:   266px;
}
.p-mainMstInp-content table .p-mainMstInp-row_input td {
    padding-bottom: 0px;
}
.p-mainMstInp-content table .p-mainMstInp-row_validation td {
    padding-bottom: 30px;
}
.p-mainMstInp-content table tr:nth-last-child(1) td { /* テーブル最下段の項目 */
    padding-bottom: 0;
}
.p-mainMstInp-content table td.c-validationErr {
    padding-right: 10px;
}

.p-mainMstInp-content table td {
    white-space:   nowrap;
}
.p-mainMstInp-content table td.c-validationErr {
    white-space:   normal;
}

.p-mainMstInp-content table th:nth-last-child(1),
.p-mainMstInp-content table td:nth-last-child(1) {  /* 右端の項目 */
    padding-right: 0px;
    width:         260px;
}

.p-mainMstInp-content .c-txt {
    width:  142px;
}
.p-mainMstInp-content .c-sel-wrap {
    width:  100px;
}
.p-mainMstInp-content .c-fullWidth { /* 単位なしinput */
    width: calc(100% - 18px);
}
.p-mainMstInp-content .c-rightAlign { /* 右寄せinput */
    text-align: right;
}
.p-mainMstInp-content label { /* チェックボックス・ラジオボタンのラベル */
    height:100%;
    position:relative;
    display:inline-block;
    padding-right: 60px;
}
.p-mainMstInp-content label .c-chkbox { /* チェックボックス */
    position: relative;
    top:2px;
    left:0px
}
.p-mainMstInp-content label .c-radio { /* ラジオボタン */
    position: relative;
    top:-2px;
    left:0px
}

/* 内燃車両情報一覧
   ------------------------------ */
/* パディング */
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelName,
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelType,
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelYear {
    padding-right:10px;
}
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelType,
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelYear {
    padding-left:10px;
}
.p-mstLst_tbl .p-mstLst_tbl-gvm_fuelCost {
    padding-left: 35px;
}
.p-mstLst_tbl .p-mstLst_tbl-gvm_fuelType {
    padding-left: 49px;
}

/* 文字揃え */
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelName,
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelType,
.p-mstLst_tbl .p-mstLst_tbl-gvm_fuelType {
    text-align: left;
}

/* 列幅 */
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelName > * {
    width: 124px;  /* 144 */
}
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelType > * {
    width: 130px;  /* 150 */
}
.p-mstLst_tbl .p-mstLst_tbl-gvm_modelYear > * {
    width: 40px;
}
.p-mstLst_tbl .p-mstLst_tbl-gvm_fuelType > span {
    width: 235px; /* 250 */
}

/* 内燃車両情報入力
   ------------------------------ */
.p-mainMstInp-content td.p-mstInp_tbl-gvm_fuelType {
    width: 918px;
}

/* EV車両情報一覧
   ------------------------------ */
/* パディング */
.p-mstLst_tbl .p-mstLst_tbl-evm_modelName,
.p-mstLst_tbl .p-mstLst_tbl-evm_modelType,
.p-mstLst_tbl .p-mstLst_tbl-evm_modelYear,
.p-mstLst_tbl .p-mstLst_tbl-evm_weight {
    padding-right: 6px;
}
.p-mstLst_tbl .p-mstLst_tbl-evm_modelType,
.p-mstLst_tbl .p-mstLst_tbl-evm_modelYear {
    padding-left:  6px;
}
.p-mstLst_tbl .p-mstLst_tbl-evm_weight {
    padding-left:  11px;
}
.p-mstLst_tbl .p-mstLst_tbl-evm_frontArea {
    padding-left: 23px;
}

/* 文字揃え */
.p-mstLst_tbl .p-mstLst_tbl-evm_modelName,
.p-mstLst_tbl .p-mstLst_tbl-evm_modelType {
    text-align:    left;
}

/* 列幅 */
.p-mstLst_tbl .p-mstLst_tbl-evm_modelName > * {
    width: 100px; /* 112+20 */
}
.p-mstLst_tbl .p-mstLst_tbl-evm_modelType > * {
    width: 91px;
}
.p-mstLst_tbl .p-mstLst_tbl-evm_modelYear > * {
    width: 40px;
}


/* 電力契約一覧
   ------------------------------ */
/* パディング */
.p-mstLst_tbl .p-mstLst_tbl-cnt_elecCompanyName,
.p-mstLst_tbl .p-mstLst_tbl-cnt_contType,
.p-mstLst_tbl .p-mstLst_tbl-cnt_basicUnitRate {
    padding: 7px 10px 7px 10px;
}

/* 文字揃え */
.p-mstLst_tbl .p-mstLst_tbl-cnt_elecCompanyName,
.p-mstLst_tbl .p-mstLst_tbl-cnt_contType {
    text-align:    left;
}

/* 列幅 */
.p-mstLst_tbl .p-mstLst_tbl-cnt_elecCompanyName > * {
    width: 95px;
}
.p-mstLst_tbl .p-mstLst_tbl-cnt_contType > * {
    width: 247px;
}

/* その他 */
.p-mstLst_tbl .p-mstLst_tbl-cnt_smrMonthDef span:nth-child(1),
.p-mstLst_tbl .p-mstLst_tbl-cnt_hdayDefList span:nth-child(1) { /* 先頭の「,」を非表示にする */
    
    display: none;
}

/* 電力契約入力
   ------------------------------ */
.p-mainMstInp-content table tr .p-mstInp_tbl-cnt_contType {
    width: 592px;
}
.p-mstInp_tbl-cnt_defsInfo {
    width: 1200px; /* 英語の場合自動的に改行させるため固定する */
}

.p-mainMstInp-content td.p-mstInp_tbl-cnt_smrMonthDef label,
.p-mainMstInp-content td.p-mstInp_tbl-cnt_hdayDef label {
    padding-right:  30px;
}

.p-mainMstInp-content td.p-mstInp_tbl-cnt_smrMonthDef {
    white-space: normal; /* 英語の場合自動的に改行させるためnowrap解除 */
}


/* 充電器一覧
   ------------------------------ */
/* パディング */
.p-mstLst_tbl .p-mstLst_tbl-chg_modelName, /* 機種名 */
.p-mstLst_tbl .p-mstLst_tbl-chg_maker {    /* メーカー */
    padding-right: 10px;
}
.p-mstLst_tbl .p-mstLst_tbl-chg_maker {    /* メーカー */
    padding-left:  10px;
    padding-right: 10px;
}
.p-mstLst_tbl .p-mstLst_tbl-chg_chgSpeedType,   /* 充電器区分 */
.p-mstLst_tbl .p-mstLst_tbl-chg_chgCntrolFunc { /* 充電制御機能 */
    padding-left:  30px;
    padding-right: 30px;
}

/* 文字揃え */
.p-mstLst_tbl .p-mstLst_tbl-chg_modelName,
.p-mstLst_tbl .p-mstLst_tbl-chg_maker {
    text-align: left;
}

.p-mstLst_tbl .p-mstLst_tbl-chg_chgSpeedType,
.p-mstLst_tbl .p-mstLst_tbl-chg_chgCntrolFunc {
    text-align: center;
}

/* 幅 */
.p-mstLst_tbl .p-mstLst_tbl-chg_modelName > * { /* 機種名 */
    width: 156px; /* 176 */
}
.p-mstLst_tbl .p-mstLst_tbl-chg_maker > * { /* メーカー */
    width: 116px; /* 166 */
}


/* 充電制御装置一覧
   ------------------------------ */
/* パディング */
.p-mstLst_tbl .p-mstLst_tbl-chgctl_modelName, /* 機種名 */
.p-mstLst_tbl .p-mstLst_tbl-chgctl_maker {    /* メーカー */
    padding-right: 10px;
}
.p-mstLst_tbl .p-mstLst_tbl-chgctl_maker {    /* メーカー */
    padding-left:  10px;
    padding-right: 10px;
}

/* 文字揃え */
.p-mstLst_tbl .p-mstLst_tbl-chgctl_modelName,
.p-mstLst_tbl .p-mstLst_tbl-chgctl_maker {
    text-align: left;
}

/* 幅 */
.p-mstLst_tbl .p-mstLst_tbl-chgctl_modelName { /* 機種名 */
    width: 156px; /* 176 */
}
.p-mstLst_tbl .p-mstLst_tbl-chgctl_maker { /* メーカー */
    width: 134px; /* 166 +28 */
}
.p-mstLst_tbl .p-mstLst_tbl-chgctl_coregulationNum { /* 同時制御数 */
    width: 80px; /* 148 -28 */
}
.p-mstLst_tbl .p-mstLst_tbl-chgctl_price { /* 価格 */
    width: 120px; /* 160 */
}
/* 充電制御装置入力
   ------------------------------ */


/*========================================
  共通設定
==========================================*/
/*---------- ヘッダー ----------*/
/* *** 案件一覧画面 *** */
.p-header {
    height:       100%;
    /* 余白を含めたフルサイズから余白を除いた幅をコンテンツの幅とする */
    width:         calc(var(--contents-size-width) - (60px * 2));
    /* 左右余白調整 */
    margin-left:   auto;
    margin-right:  auto;
    /* 左右余白 */
    padding-left:  60px;
    padding-right: calc(60px - max(0px, 100vw - 100%));
}
.p-header > table {
    width:  100%;
    height: 100%;
}


/* *** 各種シミュレーション画面 *** */
.p-headerNav {
    height: 100%;
    /* 余白を含めたフルサイズから余白（右側のみ）を除いた幅をコンテンツの幅とする */
    width:         calc(var(--contents-size-width) - 60px);
    /* 左右余白調整 */
    margin-left:   auto;
    margin-right:  auto;
    /* 左右余白 */
    padding-left:  0px;
    padding-right: calc(60px - 17px);
}
.p-headerNav > table {
    width:        calc(var(--contents-size-width) - (21px + 63px));
    height:       100%;
    margin-left:  21px;
    margin-right: 63px;
}
/* 戻るボタン（<） */
.p-headerNav td.p-headerNav_btnBack {
    width:         16px;
    padding-right: 23px;
}
/* タイトル（会社名、支店名、案件名） */
.p-headerNav_title {
    font-size:0;
    line-height: 1;
    width:     570px;
    padding-right: 20px;
}
.c-headerNav-cstName,
.c-headerNav-cstSiteName,
.c-headerNav-prjName {
    white-space:   nowrap;
    overflow:      hidden;
    text-overflow: ellipsis;
    display:       inline-block;
}
.c-headerNav-cstName {     /* 会社名 */
    width:       360px;
    height:      24px;
    font-size:   var(--font-size-main);
    padding-top: 3px;
}
.c-headerNav-cstSiteName { /* 支店名 */
    width:       210px;
    height:      20px;
    font-size:   var(--font-size-btnSmall);
    padding-top: 5px;
}
.c-headerNav-prjName {     /* 案件名 */
    max-width:   540px;
    height:      21px;
    font-size:   var(--font-size-btnSmall);
    padding-top: 4px;
}
.c-headerNav-prjEdtIcon {  /* 案件編集アイコン */
    position: relative;
    top:    -5px;
    left:    5px;
    width:  20px;
    height: 15px;
    background-image:  url('/image/edit-f8bde0cff886e758c29ad068a151c5f8.svg' );
    background-repeat: no-repeat;
    background-color:  transparent;
    border: none;
    cursor: pointer;
}
.c-headerNav-prjEdtIcon:disabled {
    cursor:  default;
    opacity: 50%;
}

/* ナビ */
.p-headerNav-buttonTbl td.c-navNum {
    padding-right: 0px;
}
.p-headerNav-buttonTbl td.c-navArrow {
    padding-left: 6px;
    padding-right: 8px;
}
.p-headerNav-buttonTbl td.c-navTitle {
    padding-right: 6px;
}
/* ナビ（進捗状況） */
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_pastPh,
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_presentPh,
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_futurePh {
    color:     var(--font-main);
    font-size: var(--font-size-main);
    border:    none;
    padding-left: 0px;
    padding-right: 0px;
}
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_pastPh,
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_presentPh,
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_futurePh {
    background-color: rgba(0,0,0,0);
}
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_presentPh,
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_futurePh {
    cursor: default;
}
.p-headerNav-buttonTbl .p-headerNav-buttonTbl_pastPh {
    text-decoration: underline;
    cursor:          pointer;
}

.p-headerNav-buttonTbl .p-headerNav-buttonTbl_pastPh:hover {
    color: var(--color-font-main-hover);
}

/* ナビアイコン */
/* 共通 */
.c-navComplete,
.c-navActive1,
.c-navInactive2,
.c-navActive2,
.c-navInactive3,
.c-navActive3,
.c-navInactive4,
.c-navActive4 {
    width:  24px;
    height: 24px;
    border: none;
    background-repeat:   no-repeat;
    background-position: center;
}

.c-navComplete {  /* 完了 */
    background-image: url('/image/complete-c1ec880dc587c4330a6e60426f3d8482.svg' );
}
.c-navActive1 {   /* 実行中① */
    background-image: url('/image/active1-793cb62c830c8f2d05a0ef28dada77b1.svg' );
}
.c-navInactive2 { /* 未実行② */
    background-image: url('/image/inactive2-d7a1e8673a5ca6349c22545546b832ef.svg' );
}
.c-navActive2 {   /* 実行中② */
    background-image: url('/image/active2-d2a2df44a5a88797ba5b8e5bbef7c110.svg' );
}
.c-navInactive3 { /* 未実行③ */
    background-image: url('/image/inactive3-0a7c53d0b141347835e38aa2665b60f3.svg' );
}
.c-navActive3 {   /* 実行中③ */
    background-image: url('/image/active3-10891fb4423de83d81889a09720c4a0d.svg' );
}
.c-navInactive4 { /* 未実行④ */
    background-image: url('/image/inactive4-74273ca5142d2ff714f8260d06116328.svg' );
}
.c-navActive4 {   /* 実行中④ */
    background-image: url('/image/active4-9330f68d77531dae45a7376d63342743.svg' );
}


/* メニュー */
.p-headerNav_menu,
.p-headerPrjLst_menu {
    text-align: right;
}
.p-headerNav_menu table {
    float: right;
}
.p-headerNav_menu span,
.p-headerPrjLst_menu span {
    white-space: pre;
}

.p-headerNav-buttonTd {
    vertical-align: middle
}
.p-headerNav-buttonDiv {
    display:   flex;
    flex-wrap: wrap;
}
.p-headerNav-buttonTblLower {
    padding-left: 20px;
}

/*---------- メイン ----------*/
.p-main {
    /* 余白を含めたフルサイズから余白を除いた幅をコンテンツの幅とする */
    width:         calc(var(--contents-size-width) - (60px * 2));
    /* 左右余白調整 */
    margin-left:   auto;
    margin-right:  auto;
    /* 左右余白 */
    padding-left:  60px;
    padding-right: calc(60px - max(0px, 100vw - 100%));
    
    overflow-x: visible;
}

.p-main_mst {
    /* マスタ管理のメイン部は左右余白なし */
    width:         calc(var(--contents-size-width) + max(0, calc((100vw - var(--contents-size-width)) / 2) ));
    /* 左右余白調整 */
    margin-left:   0;
    margin-right:  auto;
    /* 左右余白 */
    padding-left:  0px;
    padding-right: 0px;/*calc(60px - max(0px, 100vw - 100%));*/
}


/* *** 画面タイトル、見出し *** */
/* 共通 */
.p-screenTitle,
.p-caption {
    display:     flex;
    align-items: center;
}
.p-screenTitle .c-screenTitle {
    height:      36px;
    line-height: normal;
    flex-shrink: 0;
}
.p-screenTitle .c-information {
    flex-grow: 1;
    flex-shrink: 1;
}

.p-screenTitle > h1 {
    margin-right: 40px
}
/* 
 * 「条件を変更する」
 * 「結果を書き出す」
 */
.p-screenTitle > .c-btnIcon {
    margin-right: 16px;
}
/* 遷移ボタン */
.p-screenTitle > .c-btnBig {
    margin: 0 0 0 auto;
}
.p-screenTitle.p-prjLst_screenTitle > .c-btnBig { /* 案件一覧 */
    margin: 0 auto 0 0;
}


/* 画面ごと */
.p-screenTitle.p-prjLst_screenTitle,
.p-screenTitle.p-vehInp_screenTitle,
.p-screenTitle.p-engIn1_screenTitle,
.p-screenTitle.p-engIn2_screenTitle,
.p-screenTitle.p-plnIn2_screenTitle,
.p-screenTitle.p-engRes_screenTitle,
.p-screenTitle.p-plnRes_screenTitle,
.p-screenTitle.p-mstInp_screenTitle,
.p-screenTitle.p-plnIn1_screenTitle,
.p-screenTitle.p-sftInp_screenTitle,
.p-screenTitle.p-sftRes_screenTitle,
.p-screenTitle.p-mstLst_screenTitle,
.p-screenTitle.p-authLogin_screenTitle,
.p-screenTitle.p-authSms_screenTitle,
.p-screenTitle.p-authForgot_screenTitle {
    margin:      30px 0 30px 0;
}

.p-screenTitle.p-prjLst_screenTitle_withErr,
.p-screenTitle.p-vehInp_screenTitle_withErr,
.p-screenTitle.p-engIn1_screenTitle_withErr,
.p-screenTitle.p-engIn2_screenTitle_withErr,
.p-screenTitle.p-plnIn2_screenTitle_withErr,
.p-screenTitle.p-engRes_screenTitle_withErr,
.p-screenTitle.p-mstInp_screenTitle_withErr,
.p-screenTitle.p-plnIn1_screenTitle_withErr,
.p-screenTitle.p-sftInp_screenTitle_withErr,
.p-screenTitle.p-authLogin_screenTitle_withErr,
.p-screenTitle.p-authSms_screenTitle_withErr,
.p-screenTitle.p-authForgot_screenTitle_withErr {
    margin:      30px 0 0 0;
}
.p-screenTitle.p-mstLst_screenTitle_withErr {
    margin:      0 0 30px 0;
}

.p-screenTitle .c-screenTitle {
    margin-right: 30px;
}
.p-prjLst_screenTitle .c-screenTitle {
    margin-right: 20px;
}


/* *** 「div」に対してスクロールを設定 *** */
.p-mainVeh-content,
.p-mainEngIn1-content,
.p-mainEngIn2-content,
.p-mainEngIn3-content,
.p-mainPlnIn1-content,
.p-mainPlnIn2-content,
.p-mainPlnRes-content,
.p-mainSftInp-content,
.p-mainSftRes-content,
.p-mainMstInp-content {
    overflow-x: visible;
}
.p-vehDrivingInfo-inputTbl,
.p-engIn2_gvDrivingHistory-inputTbl,
.p-engIn2_gvDrivingHistory-inputFileTbl,
.p-section_04Tbl {
    border-collapse: collapse;
}
.p-vehDrivingInfo-inputTbl > thead > tr,
.p-engIn2_gvDrivingHistory-inputFileTbl > thead > tr {
    border-bottom: solid 2px var(--color-border-table);
}
.p-vehDrivingInfo-inputTbl > tbody > tr,
.p-engIn2_gvDrivingHistory-inputTbl > tbody > tr,
.p-engIn2_gvDrivingHistory-inputFileTbl > tbody > tr {
    border-bottom: solid 1px var(--color-border-table);
}
/* *** 「tbody」に対してスクロールを設定 *** */
.p-engRes_powerConsumptionPerDay-resultTbl > tbody.c-scrollableTBody {
    overflow-x: visible;
    overflow-y: scroll;
}
.p-prjLst_searchRes-outputTbl > thead,
.p-prjLst_searchRes-outputTbl > tbody,
.p-engRes_powerConsumptionPerDay-resultTbl > thead,
.p-engRes_powerConsumptionPerDay-resultTbl > tbody {
    display: block;
}
.p-prjLst_searchRes-outputTbl {
    border-collapse: collapse;
}
.p-prjLst_searchRes-outputTbl .p-prjLst_searchRes-outputTbl_borderLine {
    border-bottom: solid 1px var(--color-border-table);
}

.p-prjLst_searchRes-outputTbl_col-cstName span,
.p-prjLst_searchRes-outputTbl_col-cstSiteName span {
    overflow-wrap: anywhere;
}

/* *** ソート *** */
[class*=-sortTbl] td{
    padding: 0px;
    background-color: var(--color-background-tblHeader); /*  */
}
[class*=-sortTbl] td.p-prjLst_searchRes-sortTbl_colName{
    padding-right:10px;
}
/*
.p-prjLst_searchRes-sortTbl--ascOn {
}
*/
[class*=-sortTbl--ascOff] {
    /* todo */
    color:#CCCCCC;
}
/*
.p-prjLst_searchRes-sortTbl--descOn {
}
*/
[class*=-sortTbl--descOff] {
    color:#CCCCCC;
}
[class*=-sortTbl--ascOn],
[class*=-sortTbl--ascOff] {
    top: 5px;
}
[class*=-sortTbl--descOn],
[class*=-sortTbl--descOff] {
    bottom: 5px;
}
[class*=-sortTbl--ascOn],
[class*=-sortTbl--ascOff],
[class*=-sortTbl--descOn],
[class*=-sortTbl--descOff] {
    position:  relative;
    font-size: var(--font-size-tblSordBtn);
    cursor:    pointer;
}
[class*=-sortTbl--ascOn]:hover,
[class*=-sortTbl--ascOff]:hover,
[class*=-sortTbl--descOn]:hover,
[class*=-sortTbl--descOff]:hover {
    color:#CCCCCC;
}


/*---------- フッター ----------*/
.p-footer {
    height:       100%;
    /* 余白を含めたフルサイズから余白を除いた幅をコンテンツの幅とする */
    width:         calc(var(--contents-size-width) - (60px * 2));
    /* 左右余白調整 */
    margin-left:   auto;
    margin-right:  auto;
    /* 左右余白 */
    padding-left:  60px;
    padding-right: calc(60px - max(0px, 100vw - 100%));
}
.p-footer > table {
    width:           100%;
    height:          100%;
    border-collapse: collapse;
}
.p-footer > table.p-footerAuth {
    margin: 0 212px; /* 272-60 */
    width:  calc(100% - (212px * 2));
}
.p-footer td {
    padding: 0 0 36px 0;
}
.p-footer-buttonTbl_align {
    text-align: right;
}


/*---------- モーダル ----------*/
.p-modal {
    display:          none;
    position:         fixed;
    width:            100%;
    height:           100%;
    left:             0;
    right:            0;
    background-color: rgba(0,0,0,0.5);
}
.p-modal_close {
    position: absolute;
    width:    100%;
    height:   100%;
}
.p-modal_content {
    position:   absolute;
    top:        50%;
    left:       50%;
    transform:  translate(-50%,-50%);
    padding:    40px 40px 37px 40px;
    background: var(--color-background-main);
}

.p-modal_content-row_input th {
    padding-bottom: 6px;
}
.p-modal_content-row_input td,
.p-modal_content-row_validation td {
    padding-bottom: 0px;
}
.p-modal_content-row_validation td {
    padding-bottom: 30px;
    vertical-align: top;
}
.p-modal_content-row_input:nth-last-child(1) td,
.p-modal_content-row_validation:nth-last-child(1) td {
    padding-bottom: 60px;
}

/* シミュレーション結果モーダル */
.p-modal_content.p-modal_vehRes,
.p-modal_content.p-modal_engRes2,
.p-modal_content.p-modal_plnRes2 {
    /* 配置 */
    top:        54px;
    left:       max(0px, calc((100% - 1300px) / 2)); /* 左端がはみ出ないようにする */
    transform:  none;
    /* サイズ */
    width:      calc(100vw - (30px + 13px + 17px));
    max-width:  1257px; /* スクロールバーのサイズを考慮 */
    height:     calc(100vh - (30px * 2 + 54px + 52px));
    /* 余白 */
    padding-right: 23px; /* 40(-17) */
    /* スクロール */
    overflow-y: scroll;
    overflow-x: auto;
}

.p-modal_content-main { /* モーダル内容テーブル */
    width:  1240px;
    height: calc(100% - 46px);
    border-collapse: collapse;
}
.p-modal_content-btn { /* 遷移ボタンテーブル */
    width:  1240px;
    height: 46px;
    border-collapse: collapse;
}


/* テーブル */
.p-modal_content-main_title td,
.p-modal_content-main_section td {
    height: 30px;
    padding-bottom: 30px;
}

.p-vehRes-tbl .p-modal_content-main_result,
.p-engRes2-tbl .p-modal_content-main_result,
.p-plnRes2-tbl .p-modal_content-main_result {
    vertical-align:top;
    height: auto;
}

.p-engRes2-resultTbl,
.p-vehRes-sectionTbl,
.p-vehRes-vehInfoTbl {
    border-collapse: collapse;
    table-layout: fixed;
}
.p-engRes2-resultTbl th {
    text-align: left;
}
.p-vehRes-vehInfoTbl,
.p-engRes2-resultTbl {
    width: 100%;
    height: calc(100% - (46px));
}
td[class^=p-vehRes-vehInfoTbl_0],
.p-vehRes-vehInfoTbl_gVData,
.p-vehRes-vehInfoTbl_eVData,
.p-engRes2-resultTbl td {
    padding-top:    10px;
    padding-bottom: 10px;
}
.p-vehRes-buttonTbl,
.p-engRes2-buttonTbl,
.p-plnRes2-buttonTbl {
    position: relative;
}

.p-prjAdd-buttonTbl_align,
.p-prjEdt-buttonTbl_align,
.p-prjCpy-buttonTbl_align,
.p-prjDel-buttonTbl_align,
.p-engIn1BulkEntry-buttonTbl_align,
.p-plnIn1Chg-buttonTbl_align,
.p-plnResWrt-buttonTbl_align,
.p-vehRes-buttonTbl_align,
.p-engRes2-buttonTbl_align,
.p-plnRes2-buttonTbl_align {
    text-align: right;
}
.p-vehRes-vehInfoTbl > tbody.c-scrollableTBody,
.p-engRes2-resultTbl > tbody.c-scrollableTBody {
    overflow-x: visible;
    overflow-y: scroll;
}
.p-vehRes-vehInfoTbl > thead,
.p-vehRes-vehInfoTbl > tbody,
.p-engRes2-resultTbl > thead,
.p-engRes2-resultTbl > tbody {
    display: block;
}
.p-vehRes-vehInfoTbl > thead > tr,
.p-engRes2-resultTbl > thead > tr {
    border-bottom: solid 2px var(--color-border-table);
}
.p-vehRes-vehInfoTbl > tbody > tr,
.p-engRes2-resultTbl > tbody > tr {
    border-bottom: solid 1px var(--color-border-table);
}


/* ①対象車選定
   ------------------------------ */
/* ウィンドウのサイズ設定 */

/* *** 一覧テーブル *** */
.p-vehRes_resultTbl {
    margin: 0 0 auto 0;
}
.p-vehRes_resultTbl tr{
    height: 44px;
}
.p-vehRes_resultTbl th {
    padding: 7px 0px 7px 20px;
}
.p-vehRes_resultTbl td {
    padding: 10px 0px 10px 20px;
}

/* テーブル列幅 */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_vehId {  /* 車両ID */
    width: 140px; /* 140+20 */
}
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_modelName,
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_modelName-borderLeft,  /* モデル名 */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_maxLoadCapa-ev {       /* 最大積載量(ev) */
    width: 120px; /* 140 */
}
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_modelName-borderLeft {  /* モデル名 */
    width: 140px; /* 140 */
}
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_maxLoadCapa {  /* 最大積載量 */
    width:      80px; /* 100 */
}
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_fuelCost {  /* 燃費 */
    width:         80px; /* 100+20 */
    padding-right: 20px;
}
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_elecCost {  /* 電費（カタログ値） */
    width:        144px; /* 160 */
    padding-left: 16px;
}
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_driveDist {  /* 航続距離 */
    width:         80px; /* 100+20 */
    padding-right: 20px;
}

/* 文字揃え */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_maxLoadCapa,     /* 最大積載量 */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_fuelCost,        /* 燃費 */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_maxLoadCapa-ev,  /* 最大積載量(ev) */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_elecCost,        /* 電費（カタログ値） */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_driveDist {      /* 航続距離 */
    text-align: right;
}


/* 枠線 */
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_ev,
.p-vehRes_resultTbl .p-vehRes_vehInfoTbl-col_modelName-borderLeft {
    border-left: 1px var(--color-border-table) solid;
}


/* ②EV電力量
   ------------------------------ */


/* ③充電計画
   ------------------------------ */
.p-plnRes2-tbl_result{
    margin: 0px 0px 20px 0px;
    width:  1240px;
}

.p-plnRes2-tbl_result .c-horizontalLine {
    width: calc(1240px + 80px - 17px);
    left:  -40px;
}


.p-plnRes2-tbl_result .p-plnRes_chartContainer-chgSchedule .p-chart {
    margin-right: 7px;
}


