@charset "utf-8";
.formcontainer {
	margin-top: 5px;
	padding: 10px;
    padding-bottom: 50px;
    /* border: 1px solid #fff; */
}
/* valueがラベルの場合(更新場合のvalueがラベルスタイルであるから) */
.itemvalue {
	line-height: 2.1;
}
/* Validation error style */

/* Validator error */
.error-text {
	color: #ff005c;
	display: block;
	padding-top: 3px;
	clear: both;
}

/* Form uploader */
.uploader-error {
	border: 1px solid #ff005c;
}

/* 詳細画面に行くリンクのスタイル */
a.t3editlink {
	padding: 8px 10px;
}
a.t3editlink:focus, a.t3editlink:hover {
	background-color: #eee;
	color: #23527c;
}
a.t3editlink:focus {
	outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px;
}

.checkbox {
	display: inline-block;
    margin-top: 2px;
}

.fieldError, .fieldError + .radio::after, .fieldError + input[type="hidden"] + .checkbox::after, .inputBtn .fieldError + a {
    border-color: #ff005c !important;
}

textarea.fieldError {
	border: 1px solid #ff1d25 !important;
}

.error-balloon {
    background-color: rgba(255, 41, 89, 0.8);
    border-radius: 3px;
    color: #fff;
    display: none;
    font-size: 0.857rem;
    font-weight: 600;
    padding: 5px;
    position: fixed;
    text-align: justify;
}

.error-balloon.balloon-show { display: block; z-index: 99999;}

/* 一覧画面でリストデータ用の selectboxスタイル */
.listdataform input {
	border: solid 1px #ccc;
}
.listdataform .select {
	border: solid 1px #ccc;
    width: 95%;
    height: 100%;
    margin: 0 auto;
}

/* 必須 */
.requiredfield .control-label::after {
    content: "*";
    color: #1543b5;
    font-weight: bold;
    padding-left: 5px;
}

.requiredfield .control-label { color: #1543b5; }
.requiredfield input[type="text"],
.requiredfield input[type="password"],
.requiredfield .select,
.requiredfield .radio:after,
.requiredfield .checkbox:after { border-color: #648fc8; }
.requiredfield .inputBtn a { border-color: #648fc8; }

/* 必須（検索部分） */
.requiredfield .label { color: #1543b5; }
.requiredfield .label::after {
    content: "*";
    color: #1543b5;
    font-weight: bold;
    padding-left: 5px;
}

.dataTables_scrollHead .requiredheader:after {
	content: "*";
    color: #fff;
    font-weight: bold;
    padding-left: 5px;
}

/* 必須（Table header） */
.dataTables_scrollHead .requiredheader {
	color: #fff;
}

.inputBtn a {
    background-color: #fff;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    border-bottom: solid 1px #fff;
    border-radius: 0 3px 3px 0;
    display: inline-block;
    height: 28px;
    vertical-align: middle;
    width: 28px;
}

.inputBtn input {
    border-right: none;
    border-radius: 3px 0 0 3px;
    display: block;
    float: left;
    vertical-align: middle;
    width: 172px;
}

/** radio, checkbox のfocusスタイル*/
input[type="radio"]:focus + label, input[type="checkbox"]:focus + input + label.checkbox:after {
	outline: 1px solid -webkit-focus-ring-color;
 	outline-offset: -2px;
}

/** Form element size */

.formcontainer .inputBtn .inputtiny {
	width: 53px !important;
}

.formcontainer .inputtiny {
	width: 80px !important;
}

.formcontainer .inputBtn .inputsmall {
	width: 173px !important;
}

.formcontainer .inputsmall {
	width: 200px !important;
}

.formcontainer .inputBtn .inputmiddle {
	width: 273px !important;
}

.formcontainer .inputmiddle {
	width: 300px !important;
}

.formcontainer .inputBtn .inputlarge {
	width: 400px !important;
}

.formcontainer .inputlarge {
	width: 427px !important;
}

.searchbar .inputBtn .inputsmall {
	width: 100px !important;
}

.searchbar .inputsmall {
	width: 123px !important;
}

.searchbar .inputBtn .inputmiddle {
	width: 150px !important;
}

.searchbar .inputmiddle {
	width: 177px !important;
}


.searchbar .inputBtn .inputlarge {
	width: 223px !important;
}

.searchbar .inputlarge {
	width: 250px !important;
}

.searchbar .inputBtn a {
    height: 23px;
    width: 23px;
}
/** Searchbar label*/
.searchbar .label {

}
.betweenLabel {
	line-height: 2;
    padding-left: 10px;
}

.searchbar ul li:first-child .label:first-child {
	width: auto;
}

/* Fix Designerのreadonly, disabled style*/
/* 読み取り専用 */
input[readonly="readonly"]:not(.fieldError), input[readonly="true"]:not(.fieldError), input:disabled {
	/* margin-left: -5px; */
}
input[readonly="readonly"]:not(.fieldError), .inputBtn input[readonly="readonly"]:not(.fieldError) + a,
input[readonly="true"]:not(.fieldError), .inputBtn input[readonly="true"]:not(.fieldError) + a,
textarea[readonly="readonly"]:not(.fieldError), textarea[readonly="readonly"]:not(.fieldError) {
	background-color: #f0f0f0;
	border-color: #e2e2e2 !important;
}

.inputBtn input[readonly="readonly"]:not(.fieldError) + a img, .inputBtn input[readonly="true"]:not(.fieldError) + a img,
.inputBtn input:disabled + a img{
	display: none;
}

/* 入力不可 */
input:disabled, .inputBtn input:disabled + a {
	background-color: #f0f0f0;
	border-color: #e2e2e2 !important;
	color: #999;
}

a[not-active="true"] {
	background: linear-gradient(0deg, rgba(204, 204, 204, 1) 29%, rgba(240, 240, 240, 1) 100%);
	background-color: #f0f0f0;
    border-color: #f0f0f0 !important;
    color: #999;
    cursor: not-allowed;
}

.divSelectDisabled {
	border-color: #f0f0f0 !important;
	border: solid 1px #e2e2e2 !important;
}

.divSelectDisabled select {
	background-color: #f0f0f0 !important;
	color: #999;
}

input:read-only + a:hover,
input:disabled + a:hover { cursor: default; }
input:read-only + a:hover img,
input:disabled + a:hover img { opacity: 1; }

/*radio, checkbox 入力不可*/
input:disabled + .radio:after, input:disabled + input[type="hidden"] + .checkbox:after,
input:disabled + .checkbox:after {
	border-color: #e2e2e2 !important;
	background-color: #f0f0f0;
}

/** Fix Designerのcheckbox, radiobutton design: couldn't check before thymeleaf generate hidden input for radio and checkbox */
input[type="radio"]:checked + input[type="hidden"] + .radio:before { opacity: 1; }
.checkbox:before {
	border-right: 3px solid #4e6adb;
	border-bottom: 3px solid #4e6adb;
	display: block;
	content: "";
	height: 8px;
	opacity: 0;
	position: absolute;
	top: 3px;
	left: 4px;
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 5px;
	z-index: 2;
}
input[type="checkbox"]:checked + input[type="hidden"] + .checkbox:before { opacity: 1; }

/** End fix */








/** Import Bootstrap form layout style */

.form-group {
    margin-bottom: 15px;
}

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
  padding-top: 2px;
}
.form-horizontal .form-group {
  margin-left: -15px;
  margin-right: -15px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}
.clearfix:before,
.clearfix:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after {
  content: " ";
  display: table;
}
.clearfix:after,
.form-horizontal .form-group:after {
  clear: both;
}