/*/////////////////////////////////////////////////////////////////////////////////////////////////

 Base Layout

/////////////////////////////////////////////////////////////////////////////////////////////////*/

html, body {
	-webkit-text-size-adjust:none;
	font-family:"メイリオ", Meiryo, Roboto,'Droid Sans', "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif;
	font-size:12px; color:#333333;
  position:relative;
}

body.fixed { height:100%; background-color: #F8F8F8;}

a { text-decoration:none; color:inherit;}
a.text_link { color:#1859A9; text-decoration:underline;}
a.text_link:hover { text-decoration:none;}

/* Hover */
*:hover.over {
	filter:alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
}
.ua-mobile *:hover.over {
	filter:alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}


.no-cursor{ cursor:default !important;}


/* 仕切り線 */
.line { border-top: solid 1px #F0F0F0;}
.line span { display:block; border-top: solid 1px #FFFFFF;}

/* INPUT */
.w_box {
  border:#E0E0E0 1px solid;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}
.w_box.no-cursor {
  border:none; background-color:inherit;
}



/* INPUT 幅 */
.text_min { width:80px;}
.text_10  { width:100px;}
.text_15  { width:150px;}
.text_20  { width:200px;}
.text_250  { width:250px;}
.text_30  { width:310px;}
.text_340  { width:340px;}

/* 背景色 */
.b_back { background-color:#185AA9;}
.g_back { background-color:#818181;}

.align_c { text-align:center;}

.mt10 { margin-top:10px;}
.mb5 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb20 { margin-bottom: 20px;}



/*-------------------------------------*
	Button
 *-------------------------------------*/

.btn_style {
  width:240px; height:40px; line-height:40px;
  font-size:16px; color:#FFF;

	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

.btn_style.icPlus span:before {
  content: "";
  display: inline-block;
  width: 12px; height: 12px; margin-right: 7px;
  background: url(../images/icon_plus.png) left top no-repeat;
  -webkit-background-size: 12px auto;
  background-size: 12px auto;
}




/*-------------------------------------*
	Form
 *-------------------------------------*/

input, select, textarea{
	font-family:"メイリオ", Meiryo, Roboto,'Droid Sans', "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size:12px; color:#808080;
  border:none; padding:0;
}
input, textarea{
	-webkit-appearance: none;
	-moz-appearance:none;
	appearance:none;
}
input[type=radio] {
  margin:0; margin-right:3px; vertical-align:middle;
  height: 26px;
  -webkit-appearance: radio;
  -moz-appearance:radio;
  appearance: radio;
}
input[type=checkbox] {
  margin:0; vertical-align:middle;
  -webkit-appearance: checkbox;
  -moz-appearance:checkbox;
  appearance: checkbox;
}

input[type=submit],
input[type=reset],
input[type=button],
select { cursor:pointer;}

input[type=text],
select,
textarea { padding:0 5px; height:26px;}

td input[type=text],
td select,
td textarea { height:24px;}

/* IE */
.ua-ie input[type=text],
.ua-ie select { padding-left:5px;}


input:-moz-read-only { cursor:pointer;}
input:read-only { cursor:pointer;}




/*-------------------------------------*
	Table 上部
 *-------------------------------------*/

.data_header { margin-top:10px;}
.data_header .info { padding-bottom:10px;}

/* 合計件数 */
.data_header .total_cnt { float:left; font-size:12px; color:#333; line-height:26px;}
.data_header .total_cnt p { float:left; padding:0 10px; background-color:#585858; color:#fff;}
.data_header .total_cnt span { display:inline-block; padding:0 10px; background-color:#e0e0e0;}

/* 表示件数 */
.data_header .sel_cnt { float:left;}
.data_header .total_cnt + .sel_cnt { padding-left:20px;}

/* ページネーション */
.data_page { float:right;}
.data_page li {
  float:left; line-height:26px; margin-left:5px;
  text-align:center; font-size:12px; min-width:30px;
}
.data_page li a {
  display:block;
  background-color:#fff; border:#E0E0E0 1px solid;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}
.data_page li:first-child a,
.data_page li:last-child a {
  background-color:#585858; border:#585858 1px solid;
  color:#fff;
}
.data_page li.act a,
.data_page li a:hover {
  background-color:#E0E0E0; border:#E0E0E0 1px solid;
  font-weight:bold;
}

/*-------------------------------------*
	Table
 *-------------------------------------*/
/* テーブル表示エリア */
.data_area {
  width:100%;
  /*height:auto; */
  height:600px;
  overflow:auto;
  -webkit-overflow-scrolling: touch;
}
.data_area_auto {
  width:100%;
  height:auto;
  overflow:auto;
  -webkit-overflow-scrolling: touch;
}
.line + .data_area { margin-top:5px;}

.data_area table {
  width:auto; padding:10px 20px 0;
  font-size:11px; color:#333;
}
.data_area th,
.data_area td {
  height:28px; max-width:250px; min-width:80px; padding:0 5px; vertical-align:middle;
  text-align:center; line-height:100%; word-wrap:break-word;
}
.data_area th:first-child,
.data_area td:first-child { padding:0 5px 0 10px;}
.data_area th:last-child,
.data_area td:last-child { padding:0 10px 0 5px;}

.data_area th.left,
.data_area td.left { text-align:left;}

.data_area th { background-color:#585858; color:#fff;}
.data_area td { background-color:#F1F1F1;}

.data_area.linkTbl tr { cursor:pointer;}
.data_area.linkTbl tr.index { cursor:default;}
.data_area.linkTbl td:last-child {
  background-image:url(../images/icon_tbl_click.png);
  background-repeat:no-repeat;
  background-position:right bottom;
}
.data_area tr:nth-child(odd) td { background-color:#E0E0E0;}
.data_area.linkTbl tr:hover td  { background-color:#ffffff;}

/* td_link */
.data_area .td_link { padding:0; height:0;}
.data_area .td_link a { display:block; padding:0 10px; line-height:28px;}
.data_area .td_link a:hover { background-color:#FFF;}


/* Table 画面フィット */
.data_area.fit { overflow:inherit;}
.data_area.fit .data_inner { width:auto;}
.data_area.fit table { width:100%;}
.data_area.fit th, .data_area.fit td { max-width:none;}
.data_area.fit table.cel4 th, .data_area.fit table.cel4 td { width:25%;}
.data_area.fit table.cel9 th, .data_area.fit table.cel9 td { width:auto;}

/* Table 入力スタイル */
.data_area.input_style table { padding:0;}
.data_area.input_style th { background-color:#185AA9;}
.data_area.input_style td .btn {
  width:100%;  padding:2px 5px; color:#fff;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}

/* Table内 削除ボタン */
.data_area td .del_btn {
  padding: 2px 8px 2px 20px; color: #fff;
  background: #818181 url(../images/icon_delete.png) no-repeat 6px center;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}



/*-------------------------------------*

	Popup

 *-------------------------------------*/
.pop_back {
  display:none;
  width:100%; height:100%;
  position:absolute; top:0; left:0; z-index:9999;
  background:url(../images/pop_back.png);
}

.pop_area {
  display:none;
  width:90%; margin:30px 5%; padding:30px;
  position:fixed; top:0; left:0; z-index:9999;
  background-color:#F8F8F8;
}

.pop_area .ttl:first-child { margin-top:0;}

.pop_area .close_btn {
  display: block; width: 52px; height: 52px;
  position: absolute; top: -15px; right: -15px;
}

.pop_area .cel .btn {
  padding: 0 10px; line-height: 26px; color: #fff;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}

.pop_area .data_area table { padding:10px 0 0;}


/*-------------------------------------*

	toolTip

 *-------------------------------------*/
.toolTip_txt{
	position: absolute;
	display: none;
	padding: 10px;
	background-color: #818181;
  font-weight: bold; color: #FFF;
}



/*/////////////////////////////////////////////////////////////////////////////////////////////////

 Header Layout

/////////////////////////////////////////////////////////////////////////////////////////////////*/

header {
  width:100%; height:50px; min-width:980px; position:relative;
  font-size:20px; color:#FFF; line-height:50px; text-align:center;
  background-color: #185AA9;
}

header .menu_btn {
  display:block; width:48px; height:48px;
  position:absolute; top:0; left:0;
}
header .close_btn {
  display:block; width:48px; height:48px;
  position:absolute; top:0; right:0;
}

header .user_area {
  display:block; padding:0 20px;
  position:absolute; top:0; right:48px;
  background-color:#14498B;
}
header .user_area p {
  line-height:48px; height:48px;
  font-size:12px; color:#fff;
}
header .user_area p span {
  padding-left:5px;
  font-size:10px;
}


/*/////////////////////////////////////////////////////////////////////////////////////////////////

 Error Layout

/////////////////////////////////////////////////////////////////////////////////////////////////*/

#error {
  width:100%; padding:10px 20px; margin-top:2px;
  font-size:12px; color:#fff; line-height:1.2em; text-align:center;
  background-color:#B20000;
}



/*/////////////////////////////////////////////////////////////////////////////////////////////////

 Contents Layout

/////////////////////////////////////////////////////////////////////////////////////////////////*/

#wrapper {
  width:100%; min-width:980px;
  background-color:#F8F8F8;
}

#content { padding:20px 0;}
#content .inner { width:100%; min-width:980px; padding:0 20px;}

/* 下部ボタン */
#content .bottom_btn {
  padding-top: 10px;
  text-align:center; letter-spacing:-.40em;
}
#content .bottom_btn .btn_style {
  display:inline-block;
  margin:0 10px;
  letter-spacing:normal;
}


/* ページ内タイトル */
.ttl {
    margin-top: 13px; margin-bottom: 5px; padding: 0 0 0 8px;
    border-left: solid 4px #185AA9;
    font-size: 12px; font-weight:bold; line-height:100%;
}
.ttl:first-child { margin-top:0;}
.ttl + .line { margin-bottom:5px;}


/* 入力エリア（個別） */
.cel {
  float:left; padding:0 15px 1px 55px; position:relative;
}
.cel label {
  display: table;
  width: 50px; height: 26px;
  position: absolute; top: 1px; left: 0;
  font-weight: bold; color: #555555; line-height: 110%;
}
.cel label span { display:table-cell; vertical-align:middle;}

.cel a.pop {
  display: block; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0;
}

.date_style .cel:first-child {
  padding-right:8px;
}
.date_style .cel:first-child:after {
  content: "～";
  display: inline-block; padding-left:5px;
  font-size:12px; font-weight:bold;
}


/* INPUT 幅自動 */
.cel.fit { width:100%;}
.cel.fit input, .cel.fit select, .cel.fit textarea { width:100%;}

/* (free) Label 幅なりゆき */
.free .cel { padding-left:0; letter-spacing: -.40em;}
.ua-firefox .free .cel { letter-spacing:normal;}

.free .cel label {
  display:inline-block; letter-spacing:normal;
  width:auto; height:auto; margin-right:5px; position:static;
}
.free .cel label span { display:inline;}
.free + .line { margin-top:5px;}
.line + .free { margin-top:5px;}


/* 3ブロック構成 */
.block_3 .block { float:left; width:33.33%;}
.block_3 .block .cel { float:none;}
.block_3 + .line { margin-top:5px;}


/* 郵便番号 */
.postnumber.cel .post1 { display:inline-block; vertical-align:middle;}
.postnumber.cel .post2 { display:inline-block; vertical-align:middle;}
.postnumber.cel p { display:inline-block; vertical-align:middle;}


/* アイコン付き入力エリア */
.icon_area { display:inline-block; letter-spacing:normal; position: relative;}
.icon_area .text_10 { width:110px;}

/* アイコン */
.icon_area .icon {
  display: block;
  width: 14px; height: 14px;
  position: absolute; top: 5px; right: 5px;
  /*background: url(../images/icon_sprite.png) no-repeat;*/
}
.icon_area .icon_arrow_b { background-position: 0 0;}
.icon_area .icon_popup { background-position: -14px 0;}
.icon_area .icon_calendar { background-position: -28px 0;}

.icon_tbl a {
  background: url(../images/icon_tbl_click.png) no-repeat right bottom;
}

.tbl_download {
  padding: 2px 5px 2px 23px;
  border-radius: 4px;
  background: #818181 url(../images/icon_download.png) no-repeat 5px 2px;
  color: #FFF;
}

.header_cel,
.header_btn {
  float: left;
}

.btn_small {
  margin-left: 30px;
  width: 100px; height: 26px; line-height: 26px;
  border-radius: 4px;
  color: #FFF;
}


/* .dataArea */
.dataArea dl {
  padding: 3px 0 5px 10px;
}

.dataArea dl:nth-child(odd) {
  background-color: #F1F1F1;
}

.dataArea dl:nth-child(even) {
  background-color: #E0E0E0;
}

.dataArea dl dt,
.dataArea dl dd {
  display: table-cell;
}

.dataArea dl dt {
  width: 210px;
  font-weight: bold;
}

.dataArea dl dd {
  line-height: 1.5;
}


/* Popup type2 */
.dl_date dl dt,
.dl_date dl dd {
  display: table-cell;
}

.dl_date dl {
  margin-bottom: 5px;
}

.dl_date dl dt {
  width: 100px;
  font-weight: bold;
}


/* radioBtn */
.radio_label {
  float: left;
  padding-top: 6px;
}

.radioBox {
  float: left;
}

.radioBox:not(:first-child) {
  padding-left: 3px;
}

.radioBox label {
  font-weight: normal;
}


/* checkBox */
.checkBox_area {
  margin-top: 3px;
}

.checkBox_area li {
  display: table-cell;
}

.checkBox_area li:not(:first-child){
  padding-left: 10px;
}

.checkBox_area li label {
  padding-left: 3px;
  font-weight: normal; color: #7F7F7F;
}


.after_txt {
  padding-left: 3px;
  letter-spacing: .01em;
}

/*-------------------------------------*
    err
*-------------------------------------*/
.err p {
  padding-top: 10px;
  font-size: 12px; color: #B20000;
}
.err td {
  background-color: #B20000;
  color: #FFF;
}
.err_parts {
  background-color: #333 !important;
}


/*/////////////////////////////////////////////////////////////////////////////////////////////////

 Footer Layout

/////////////////////////////////////////////////////////////////////////////////////////////////*/

footer {
  width:100%; padding:20px; position:relative;
  border-top:#F0F0F0 2px solid;
  background-color:#fff;
  font-size:10px; line-height:1.2em;
}
body.fixed footer { position:fixed; bottom:0;}


footer .pageTop {
  display:block; width:192px; margin:0; line-height:58px;
  font-size:14px; color:#808080; text-align:center;
  position:absolute; top:20px; right:20px;
  border:#E0E0E0 1px solid;
}
footer .pageTop span {
  padding-left:22px;
  background:url(../images/arrow_u_b.png) no-repeat left center;
  background-size: 12px auto;
}

footer .logo_area {
  position:absolute; top:20px; left:20px;
}
footer .logo_area img {
  display:block; width:auto; height:40px; margin-bottom:8px;
}

footer .text_area {
  min-height:60px; padding:5px 0 5px 20px; margin:0 0 0 320px;
  border-left: #F5F5F5 1px solid;

}
footer .text_area p { padding-bottom:5px;}
footer .text_area li { line-height:1.4em; position:relative; padding-left:10px;}
footer .text_area li span { position:absolute; top:0; left:0;}

/* 年プルダウンの変更 */
select .ui-datepicker-year{
  padding:3px 0!important;    // 余白は最小限に
  margin-right:5px!important; // 年ラベルとの余白
  width:60px!important;       // サイズ微調整
}
/* 月プルダウンの変更 */
select .ui-datepicker-month{
  padding:3px 0!important;    // 余白は最小限に
  margin-left:5px!important;  // 年ラベルとの余白
  width:56px!important;       // サイズ微調整
}





