@charset "utf-8";
:root {
  --button-background-default: #1f4e79;
  --button-font-color-default: #ffffff;

}
/*----------------------------------------------------------------------------*
 * 共通
 *----------------------------------------------------------------------------*/
.__hide {
    display: none;
}

select.__common,
input[type="text"].__common,
input[type="number"].__common,
input[type="password"].__common,
input[type="date"].__common,
input[type="search"].__common,
textarea.__common {
	background: none repeat scroll 0 0 #fff;
	border: thin solid #CCCCCC;
	color: #555555;
	font-size: 13px;
	padding: 4px 8px;
    /* padding: 3px 6px; */
	vertical-align: middle;
}
option.__common {
	background: none repeat scroll 0 0 #fff;
	color: #34495E;
	font-size: 12px;
	padding: 0;
	margin-right: 8px;
	cursor:pointer;
}
select.__common:hover,
option.__common:hover {
	background: none repeat scroll 0 0 #F7F7F7;
}
input[type="button"].__common,
input[type="submit"].__common{
	font-size: 13px;
    background: #1f4e79;
	/*background: var(--button-background-default);*/
    color: #ffffff;
	/*color:  var(--button-font-color-default);*/
	border-style: none;
	padding:3px 8px;
	letter-spacing: 1px;
	margin:0 3px 0 0;
	-webkit-appearance: none;
	border-radius: 0;
}
input[type="button"].__common:hover,
input[type="submit"].__common:hover{
	opacity:0.6;
}

input[type="button"].__common.__large,
input[type="submit"].__common.__large {
    min-width: 160px;
    padding:15px;
}
input[type="button"].__common.__middle,
input[type="submit"].__common.__middle {
    width: 120px;
}
input[type="button"].__common.__small,
input[type="submit"].__common.__small {
    width: 80px;
}
.input-day {
    text-align: right;
}
.__input-day {
    text-align: right;
}
.input-number {
    text-align: right;
}
.__input-number {
    text-align: right;
}

/** チェックボックスとラジオボタン */
input[type=radio].__common,
input[type=checkbox].__common {
    display: none;
}
input[type=radio].__common + label,
input[type=checkbox].__common + label {
    position: relative;
    padding-left: 24px;
}
input[type=checkbox].__common + label::before {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 0px;
    left: 2px;
    width: 16px;
    height: 16px;
    border: 2px solid #9E9E9E;
    border-radius: 2px;
    transition: .2s;
}
input[type=checkbox].__common:checked + label::before {
    border: 8px solid #009688;
}
input[type=checkbox].__common + label::after {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 7px;
    left: 3px;
    width: 0;
    height: 0;
    transform: rotate(-45deg);
    transform-origin: left top;
    border-left: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    visibility: hidden;
}
input[type=checkbox].__common:checked + label::after {
    animation: check .175s ease .2s 1 normal forwards;
}

.__common-checkbox-label {
    display: inline-block;
}

@keyframes check {
    0% {
        visibility: visible;
        width: 0;
        height: 0;
    }
    40% {
        width: 0;
        height: 8px;
    }
    100% {
        visibility: visible;
        width: 12px;
        height: 8px;
    }
}
input[type=radio].__common + label::before {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 0px;
    left: 2px;
    width: 16px;
    height: 16px;
    border: 2px solid #9E9E9E;
    border-radius: 50%;
    transition: .2s;
}
input[type=radio].__common:checked + label::before {
    border: 2px solid #009688;
}
input[type=radio].__common + label::after {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 4px;
    left: 6px;
    width: 8px;
    height: 8px;
    background-color: #009688;
    border-radius: 50%;
    transform: scale(0);
    transition: .175s;
}
input[type=radio].__common:checked + label::after {
    transform: scale(1);
}


/*----------------------------------------------------------------------------*
 Datatablesのカスタマイズ
*----------------------------------------------------------------------------*/

.dataTables_wrapper>.dataTables_filter>label>input[type=search],
.dataTables_wrapper>.dataTables_length>label>select {
    background: none repeat scroll 0 0 #fff;
	border: thin solid #CCCCCC;
	color: #555555;
	font-size: 12px;
	/* padding: 4px 8px; */
    padding: 3px 6px;
	vertical-align: middle;
	font-family: inherit;
}
.dataTables_wrapper>.dataTables_length>label>select>option {
	background: none repeat scroll 0 0 #fff;
	color: #34495E;
	font-size: 12px;
	padding: 0;
	margin-right: 8px;
	cursor:pointer;
}
.dataTables_wrapper>.dataTables_length>label>select:hover,
.dataTables_wrapper>.dataTables_length>label>select>option:hover {
	background: none repeat scroll 0 0 #F7F7F7;
}
/*----------------------------------------------------------------------------*
 * プログレスダイアログ用スタイル定義
 *----------------------------------------------------------------------------*/
#panel-popup-progress {
  background: none repeat scroll 0 0 #FFFFFF;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
  display: none;
  padding: 20px;
  width: 340px;
  height: 140px;
  position:absolute;
  left:50%;
  top:50%;
  margin-left:-150px;
  margin-top:-100px;
}

#panel-popup-message {
  background: none repeat scroll 0 0 #FFFFFF;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
  display: none;
  padding: 20px;
  width: 440px;
  height: 200px;
  position:absolute;
  left:50%;
  top:50%;
  margin-left:-200px;
  margin-top:-130px;
}

#panel-popup-acquisition {
  background: none repeat scroll 0 0 #FFFFFF;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
  display: none;
  padding: 20px;
  width: 440px;
  /*height: 200px;*/
  position:absolute;
  left:50%;
  top:50%;
  margin-left:-200px;
  margin-top:-130px;
}

/*----------------------------------------------------------------------------*
 * ツールチップ関連
 *----------------------------------------------------------------------------*/
table tr th a.tooltip {
	float: right
}

table tr th img.tip {
	float: right;
	width: 14px;
	height: 14px;
	margin: 0 5px 0 0;
	/* padding-left: 5px */
}


/*----------------------------------------------------------------------------*
 * セレクトボックス
 *----------------------------------------------------------------------------*/
.easy-select-box {
	background: #fff;
	border: 1px solid #ccc;
	text-align: left;
	font-size: 13px;
	color: #333;
	margin-left: 10px;
	margin-bottom: 10px;
	position: relative
}
.easy-select-box .esb-displayer {
	background: url(/assets/img/select-box-arrow.png) no-repeat right -4px;
	color: #333;
	cursor: default;
	height: 22px;
	line-height: 22px;
	padding: 1px 5px 0 3px;
	text-indent: 5px;
	width: 164px;
    overflow: hidden
}
.easy-select-box .open {
	background-position: right -32px
}
.easy-select-box .esb-displayer:hover {
	filter: alpha(opacity = 80);
	-ms-filter: 'alpha(opacity=80)';
	opacity: .8
}
.easy-select-box:hover .esb-displayer {
	text-decoration: none
}
.easy-select-box.disabled .esb-displayer, .easy-select-box:hover.disabled .esb-displayer
	{
	background-position: 0 -36px
}
.easy-select-box .esb-dropdown {
	background: #fff;
	border: 1px solid #ccc;
	display: none;
	max-height: 200px;
	overflow: auto;
	position: absolute;
	z-index: 99;
	width: 200px
}

.easy-select-box .esb-item {
	padding: 3px;
	background: #fff;
	color: #333;
	cursor: default
}

.easy-select-box .esb-item:hover {
	background: #06afd8;
	color: #fff;
	text-decoration: none
}


/*-----------------------------------------------------------------------------
  基本的なテーブル定義
 ----------------------------------------------------------------------------*/
table.__basic-table {
	border-collapse: collapse;
	font-size: 12px;
	width: 100%;
}

table.__basic-table thead tr th,
table.__basic-table tbody tr th {
	text-align: center;
	padding: 3px;
	font-weight: bold;
    background-color: #404040;
    color: #ffffff;
    /* background-color: var(--main-color);
    color: var(--base-font-color); */
}

table.__basic-table thead tr td,
table.__basic-table tbody tr td {
	padding: 3px 6px;
    background-color: #ffffff;
}
table.__basic-table thead tr,
table.__basic-table tbody tr {
    border-top: 1px solid #f7f7f7;
    /* border-top: 1px solid var(--sub-color); */
}

table.__basic-table.border thead tr {
	border-top: 1px solid #404040;
    /* border-top: 1px solid var(--main-color); */
}
table.__basic-table.border thead tr:last-child {
	border-bottom: solid 2px #404040;
    /* border-bottom: solid 2px var(--main-color); */
}
table.__basic-table.border thead tr:first-child {
	border-top: 2px solid #404040;
    /* border-top: 2px solid var(--main-color); */
}

table.__basic-table.border tbody tr {
	border-bottom: 1px solid #404040;
    /* border-bottom: 1px solid var(--main-color); */
    border-left: none;
    border-right: none;
}
table.__basic-table.border tbody tr:first-child {
	border-top: 2px solid #404040;
    /* border-top: 2px solid var(--main-color); */
}
table.__basic-table.border tbody tr:last-child {
	border-bottom: solid 2px #404040;
    /* border-bottom: solid 2px var(--main-color); */
}

table.__basic-table.border tbody tr th {
    border-left: none;
}
table.__basic-table.border tbody tr td {
    border-left: none;
}

table.__basic-table .required:after {
    color: #d00;
    content: "*";
}

/** 地図上のラベル */
.map_label {
    color: #fff;
    text-align: center;
    width: 50px;
    white-space: nowrap;
    text-shadow: -1px -1px #000, 1px -1px #000, -1px 1px #000, 1px 1px #000;
    line-height: 1em;
    font-weight: bold;
    font-size: 14px;
}


/**
 * バルーン
 */
div.baloon {
	font-family: "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3",
		"Hiragino Kaku Gothic Pro", "Osaka", sans-serif;
	min-width: 255px !important;
	width: 300px;
	background-color: #fff;
	border: none
}

div.baloon_tiny {
	font-family: "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3",
		"Hiragino Kaku Gothic Pro", "Osaka", sans-serif;
	min-width: 360px !important;
	width: 360px;
	background-color: #fff
}

.baloon_table_area {
	margin: 0 0 10px 0 !important
}

table.baloon_table {
	width: 100%
}

table.baloon_table th, table.baloon_table td {
	padding: 2px 0;
	font-size: 11px
}

table.baloon_table tr td table.event_detail {
	border: 1px solid #666;
	margin-bottom: 4px;
	width: 100%
}

table.baloon_table tr td table.event_detail th {
	background: #666;
	color: #fff;
	font-weight: normal;
	padding: 4px
}

table.baloon_table tr td table.event_detail td {
	padding: 4px
}

.buttons_area {
	font-size: 11px;
	padding-bottom: 10px
}

.buttons_area ul.buttons li {
	float: left;
	height: 21px;
	list-style-type: none;
	line-height: 21px
}

.buttons_area ul.buttons li.minus a, .buttons_area ul.buttons li.plus a
	{
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	width: 68px;
	height: 21px;
	display: block
}

.buttons_area ul.buttons li.minus a {
	background: url(../img/btn_zoom.gif) no-repeat 0 -21px
}

.buttons_area ul.buttons li.minus a:hover {
	background: url(../img/btn_zoom.gif) no-repeat 0 0
}

.buttons_area ul.buttons li.plus a {
	background: url(../img/btn_zoom.gif) no-repeat -68px -21px
}

.buttons_area ul.buttons li.plus a:hover {
	background: url(../img/btn_zoom.gif) no-repeat -68px 0
}



/** バルーン上のサムネイル枠 */
.thumbnail-container-on-balloon {
    position : relative;
    width: 66px;
    height: 46px;
    text-align: center;
}
.thumbnail-container-on-balloon:hover {
    background-color: #567896;
}
/** バルーン上のサムネイル画像 */
.thumbnail-image-on-balloon {
    position : absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 60px;
    height: 40px;
}
/** バルーン上のサムネイル重ね合わせ画像 */
.thumbnail-overlay-on-balloon {
    position : absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 30px;
    height: 30px;
}

::-webkit-scrollbar{
    width: 10px;
}
::-webkit-scrollbar-track{
    background: #fff;
    border-left: solid 1px #ececec;
}
::-webkit-scrollbar-thumb{
    background: #ccc;
    border-radius: 10px;
    box-shadow: inset 0 0 0 2px #fff;
}

/** IE11の場合select-box-arrow.pngが表示されないため絶対パスで指定する*/
.chosen-container-single .chosen-single div b {
  background: url('/assets/js/external/chosen_v1.4.2/select-box-arrow.png') no-repeat -8px -4px!important;
}


#unit-chooser-widget label {
    font-size: 12px;
    color: darkslategray;
    margin: 0;
    float: left;
    width: 45%;
}
#unit-chooser-widget .ui-state-active {
    font-size: 12px;
    color: #FFFFFF;
    background-color: #1f4e79;
    margin: 0;
    float: left;
    width: 45%;
}
