@charset "UTF-8";

/*Reset*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,th,td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q,blockquote {
  quotes: none;
}

q:before,q:after,blockquote:before,blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary {
  display: block;
}

/*Common*/
body {
  font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 13px;
  color: #333;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

a {
  text-decoration: underline;
  transition: all 0.2s ease 0s;
}

.btn,.btn_mini {
  text-decoration: none;
  color: #fff;
  transition: all 0.2s ease 0s;
}

.btn:hover,.btn:focus,.btn_mini:hover,.btn_mini:focus{
  text-decoration: none;
  color: #fff !important;
}

p {
  margin-bottom: 1.5em;
}

.clear {
  overflow: hidden;
  *zoom: 1;
  clear: both;
}

a img {
  cursor: pointer;
}

.tac {
  text-align: center;
}

.tar {
  text-align: right;
}

.ta {
  text-align: left !important;
}

small,.small {
  font-size: 10px;
}

.hide-all {
  display: none;
}

strong,.bold {
  font-weight: 700;
}

.circle {
  border-radius: 100%;
}

.shadow {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}

img {
  max-width: 100%;
  height: auto;
}

img {
  vertical-align: bottom;
}

.required{
	color:red;
}

body > .main_content {
  clear: both;
  overflow: hidden;
  *zoom: 1;
}

#sortable li {
    cursor: move;
}

/* clearfix */
.cFix:after{
	height:0;
	visibility:hidden;
	content:".";
	display:block;
	clear:both;
}
.≈{
	_height:1px;
	min-height:1px;
	/*￥*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/* Header
====================================================== */
header{
	display:table;
	width:100%;
	height:177px;
	background:url(../img/headerBg.png) repeat-x;
	margin-bottom:20px;
}
header .logo{
	display:table-cell;
	width:178px;
	height:177px;
	background:url(../img/headerLogo2.jpg) no-repeat;
	font-size:0px;
    background-size: contain;
}
header .body{
	display:table-cell;
	vertical-align:top;
}
header .title{
	display:table;
}
header .title h1{
	display:table-cell;
	padding-left:40px;
	height:131px;
	vertical-align:middle;
	font-weight:normal;
	font-size:21px;
	line-height:1.3;
}
.logout{
	float:right;
	/*padding:13px 50px 0 0;*/
	position: relative;
	top:13px;
	right:50px;
}
.logout a{
	display:inline-block;
	padding:0 30px;
	background:#fff;
	color:#b5b6b6;
	text-decoration:none;
	height:20px;
	line-height:20px;
	font-size:14px;
}
.logout a:hover{
	opacity:0.7;
}

h2{
	font-size:18px;
	padding:10px 0;
}

h2:before{
	content: "■ ";
	color:#094397;
}

h3.installation{
	background: #e1e1e1;
	padding:8px 0 8px 20px;
	margin:10px 0;
}

.navbar-header.logo{
	display: none;	
}


/* Contents
====================================================== */
.container{
	box-sizing: border-box;
	width:1100px;
	margin: auto;
	padding:0 50px;
}

.message{
	width:100%;
	text-align: center;
	padding:20px;
	color:#3b56ba;
}

.error-message{
	width:100%;
	text-align: center;
	padding:20px;
	color:red;
}

/* Layout
====================================================== */
.box-flex{
    display: flex;
}

/* SubMenu
====================================================== */
.sub_menu{
	width:100%;
	text-align: center;
	padding:0 0 20px 0;
}

.sub_menu .col-md-6{
	padding:0;
}


/* Btn
====================================================== */
.btn{
	display: inline-block;
	border-radius: 10px;
	background: #606060;
	padding:10px 0;
	margin:0 5px;
	text-align: center;
	text-decoration: none;
	color:#fff;
}
.btn:hover{
	opacity: 0.5;
	color:#fff;
}
.btn_mini{
	display: inline-block;
	border-radius: 7px;
	background: #606060;
	padding:8px 10px;
	margin:0 4px;
	text-align: center;
	text-decoration: none;
	color:#fff;
}
.btn_mini:hover{
	opacity: 0.5;
	color:#fff;
}
span.btn_mini{
	display: inline-block;
	border-radius: 7px;
	background: #c0c0c0;
	padding:8px 10px;
	margin:0 4px;
	text-align: center;
	text-decoration: none;
	color:#fff;
}
span.btn_mini:hover{
	opacity: 1;
	color:#fff;
}
.btn_blue{
	background: #094397;
}
.btn_red{
	background: #7c0e11;
}
.btn_default{
	width:180px;
}
.btn_next{
	width:180px;
}
.btn_back{
	width:180px;
}

.recount{
	text-align: center;
	padding:20px 0;
}
.recount .btn_recount.processing{
	opacity: 0.5;
	color:#fff;
	cursor: default;
}


/* Form
====================================================== */
.shop_date .week span{
	top:-4px;
}

.shop_date .week .checkbox01-input{
  display: none;
}

.shop_date .week .checkbox01-parts{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}

.shop_date .week .checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: -3px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 4px;
}

.shop_date .week .checkbox01-input:checked + .checkbox01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 7px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 2px solid gray;
  border-right: 2px solid gray;
}

.flow_path .channelNotUse{
  display: none;
}

.flow_path .checkbox01-parts{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}

.flow_path .checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: -4px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 4px;
}

.flow_path .channelNotUse:checked + .checkbox01-parts::after{
    content: "";
    display: block;
    position: absolute;
    top: -3px;
    left: 7px;
    width: 7px;
    height: 14px;
    transform: rotate(40deg);
    border-bottom: 2px solid gray;
    border-right: 2px solid gray;
}

/* checkbox */
.section-authority{
    display: flex;
    flex-direction:column;
    padding:10px 0;
}
.section-authority h4{
    margin-bottom: 10px;
}
.section-authority label{
    margin:5px 0 5px 20px;
}
.checkbox-custom{
  display: none;
}

.checkbox-custom + label{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}

.checkbox-custom + label::before{
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: -5px;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 4px;
}

.checkbox-custom:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: 2px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 2px solid gray;
  border-right: 2px solid gray;
}


/* radio */
input.radio-custom[type="radio"]{
    display: none;
}
input.radio-custom[type="radio"] + label{
    padding-left: 20px;
    position:relative;
    margin-right: 20px;
    margin-bottom:5px;
}
input.radio-custom[type="radio"] + label::before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -2px;
    width: 17px;
    height: 17px;
    border: 1px solid #999;
    border-radius: 50%;
}
input.radio-custom[type="radio"]:checked + label::after{
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 2px;
    width: 9px;
    height: 9px;
    background: #419bf9;
    border-radius: 50%;
}

/* select2 */
.select2-container .select2-selection--single{
	height: 35px !important;
	background-image: url("../img/arrow.png") !important;
    background-repeat:no-repeat;
    background-size:21px 9px;
    background-position:right center;
}
.select2-container--default .select2-selection--single{
	border-color: #ccc !important;	
}

.select2-container--default .select2-selection--single .select2-selection__rendered{
	line-height: 35px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
	display: none !important;
	height: 35px !important;
}

/* pulldown */
select.form-control{
    outline:none;
    text-indent: 0.01px;
    text-overflow: '';
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("../img/arrow.png") !important;
    background-repeat:no-repeat;
    background-size:21px 9px;
    background-position:right center;
}
.select2-selection{
    background-image: url("../img/arrow.png") !important;
    background-repeat:no-repeat;
    background-size:21px 9px;
    background-position:right center;
}
select.form-control option{
  background-color: #fff;
  color: #333;
}
select::-ms-expand {
  display: none;
}
select:-moz-focusring { 
  color: transparent; 
  text-shadow: 0 0 0 #828c9a;
}

/* adjustment */
select#ClientPref,select#CompanyPref,select#ChainPref,select#StorePref,select#DispenserPref{
	margin-bottom:5px;
}

/* gMav
====================================================== */
.gNav{
    float: left
}
.gNav li{
    float: left;
}

.gNav li a{
    padding: 0 40px;
    display: inline-block;
    border-right: 1px solid #fff;
    height: 46px;
    line-height: 46px;
    color: #fff;
    text-decoration: none;
}

/* Pager
====================================================== */
.pager li>a{
	display: inline-block;
	width:30px;
	height:30px;
	border-radius: 6px;
	background: #606060;
	color:#fff;
	text-align: center;
	line-height: 30px;
	padding:0;
	margin:0;
	text-decoration: none;
}

.pager li.active{
	display: inline-block;
	width:30px;
	height:30px;
	border-radius: 6px;
	background:#094397;
	color:#fff;
	text-align: center;
	line-height: 30px;
	padding:0;
	margin:0;
	text-decoration: none;
	border: 1px solid #ddd;
}

.pager li.active:hover{
	cursor: pointer;	
}

.pager li.prevList>a{
	font-size:0px;
	background: none;
	border:none;
}

.pager li.prevList>a:before{
	font-size:14px;
	content:"◀︎";
	color:#bbbbbb;
}

.pager li.nextList>a{
	font-size:0px;
	background: none;
	border:none;
}

.pager li.nextList>a:before{
	font-size:14px;
	content:"▶︎";
	color:#bbbbbb;
}

.pager li>a:hover,
.pager li>a:focus{
	background: #094397;
	opacity: 0.6;
	color:#fff;
}

.pager li.prevList>a:hover,
.pager li.prevList>a:focus{
	background: #fff;
}

.pager li.prevList>a:hover:before,
.pager li.prevList>a:focus:before{
	color: #094397;
}

.pager li.nextList>a:hover,
.pager li.nextList>a:focus{
	background: #fff;
}

.pager li.nextList>a:hover:before,
.pager li.nextList>a:focus:before{
	color: #094397;
}

/* List
====================================================== */
table.search_list_container{
	width:100%;
}

.search_list tr td{
	box-sizing: inherit;
	background: #e1e1e1;
	margin: 0 0 8px 0;
}

.search_list tr td{
	border-bottom:solid 4px #fff;
	padding:15px 15px;
	line-height: 1.2;
}

.search_list tr td.name{
	font-size: 20px;
}

#reports_list.search_list tr td.edit{
	width:675px;
}
#parts_list.search_list tr td.edit{
	width:400px;
}
.search_list tr td .parts-id{
    font-size: 16px;
}
.search_list tr.tr_template td{
    position: relative;
}
.search_list tr.tr_template td:first-child:before{
    content: "テンプレート";
    font-size:10px;
    position: absolute;
    left:0;
    top:0;
    padding:2px 3px;
    color:#fff;
    font-weight: bold;
    background: #545ec2;
    text-align: center;
}
.search_list tr.tr_template_admin td{
    position: relative;
}
.search_list tr.tr_template_admin td:first-child:before{
    content: "テンプレート";
    font-size:10px;
    position: absolute;
    left:0;
    top:0;
    padding:2px 3px;
    color:#fff;
    font-weight: bold;
    background: #c43030;
    text-align: center;
}

/* List Progress
====================================================== */
.list-progress{
    display: flex;
    width:625px;
    margin: 30px auto 30px auto;
}
.list-progress li{
    width:125px;
    height: 44px;
    background: #fff;
    color:#616161;
    text-align: center;
    line-height: 44px;
    border-right: solid 1px #fff;
    position: relative;
    padding-left: 6px;
    border:solid 1px #979797;
}
.list-progress li.active{
    background: #094397;
    color:#fff;
}
.list-progress li::before{
   
    border-left: 8px solid #979797;
    border-top: 22px solid transparent;
    border-bottom: 22px solid transparent;
    content: "";
    position: absolute;
    right: -9px;
    top: 0;
    margin-left: 50px;
    z-index: 1;
  
}
.list-progress li::after{

    border-left: 8px solid #fff;
    border-top: 22px solid transparent;
    border-bottom: 22px solid transparent;
    content: "";
    position: absolute;
    right: -8px;
    top: 0;
    margin-left: 50px;
    z-index: 4;

}
.list-progress li.active::after{
    border-left: 8px solid #094397;
    border-top: 22px solid transparent;
    border-bottom: 22px solid transparent;
    content: "";
    position: absolute;
    right: -8px;
    top: 0;
    margin-left: 50px;
    z-index: 2;
}

.list-progress li:last-child::before{
    border-left: none;
    border-top: none;
    border-bottom: none;
}
.list-progress li:last-child::after{
    border-left: none;
    border-top: none;
    border-bottom: none;
}


/* List Chart
====================================================== */
.list-chartType{
    display: flex;
    justify-content:space-between;
    padding:10px 50px 40px 50px;
}
.list-chartType > li > input[type="radio"]{
    display: none;
}
.list-chartType > li > input[type="radio"] + label.chart-1{
    background-image: url(../img/chartImg_1.png);
    background-size: contain;
    border:solid 2px #cbcbcb;
    border-radius: 8px;
    display: block;
    width:124px;
    height: 124px;
    font-size: 0;
}
.list-chartType > li > input[type="radio"] + label.chart-1:hover{
    background-image: url(../img/chartImg_1_active.png);
    background-size: contain;
}
.list-chartType > li > input[type="radio"]:checked + label.chart-1{
    background-image: url(../img/chartImg_1_active.png);
    background-size: contain;
}

.list-chartType > li > input[type="radio"] + label.chart-2{
    background-image: url(../img/chartImg_2.png);
    background-size: contain;
    border:solid 2px #cbcbcb;
    border-radius: 8px;
    display: block;
    width:124px;
    height: 124px;
    font-size: 0;
}
.list-chartType > li > input[type="radio"] + label.chart-2:hover{
    background-image: url(../img/chartImg_2_active.png);
    background-size: contain;
}
.list-chartType > li > input[type="radio"]:checked + label.chart-2{
    background-image: url(../img/chartImg_2_active.png);
    background-size: contain;
}

.list-chartType > li > input[type="radio"] + label.chart-3{
    background-image: url(../img/chartImg_3.png);
    background-size: contain;
    border:solid 2px #cbcbcb;
    border-radius: 8px;
    display: block;
    width:124px;
    height: 124px;
    font-size: 0;
}
.list-chartType > li > input[type="radio"] + label.chart-3:hover{
    background-image: url(../img/chartImg_3_active.png);
    background-size: contain;
}
.list-chartType > li > input[type="radio"]:checked + label.chart-3{
    background-image: url(../img/chartImg_3_active.png);
    background-size: contain;
}

.list-chartType > li > input[type="radio"] + label.chart-4{
    background-image: url(../img/chartImg_4.png);
    background-size: contain;
    border:solid 2px #cbcbcb;
    border-radius: 8px;
    display: block;
    width:124px;
    height: 124px;
    font-size: 0;
}
.list-chartType > li > input[type="radio"] + label.chart-4:hover{
    background-image: url(../img/chartImg_4_active.png);
    background-size: contain;
}
.list-chartType > li > input[type="radio"]:checked + label.chart-4{
    background-image: url(../img/chartImg_4_active.png);
    background-size: contain;
}

.list-chartType > li > input[type="radio"] + label.chart-5{
    background-image: url(../img/chartImg_5.png);
    background-size: contain;
    border:solid 2px #cbcbcb;
    border-radius: 8px;
    display: block;
    width:124px;
    height: 124px;
    font-size: 0;
}
.list-chartType > li > input[type="radio"] + label.chart-5:hover{
    background-image: url(../img/chartImg_5_active.png);
    background-size: contain;
}
.list-chartType > li > input[type="radio"]:checked + label.chart-5{
    background-image: url(../img/chartImg_5_active.png);
    background-size: contain;
}
.list-chartType > li > input[type="radio"]:checked + label{
    border:solid 2px #35a7dd;
    background-color: #f2fbfe;
}
.list-chartType > li > input[type="radio"] + label:hover{
    cursor: pointer;
    border:solid 2px #35a7dd;
    background-color: #f2fbfe;
}

.list-chartType > li > ul{
    padding: 10px 0 0 10px;
}
.list-chartType > li > ul li{
    padding-top: 5px;
}

/* list-template
====================================================== */
.list-template{
    width:840px;
    margin: auto;
}
.list-template li{
    float: left;
    width:400px;
    height: 350px;
    margin:10px 10px;

}
.list-template li > div.chart_container{
    border:solid 1px gray;
    width:400px;
    height: 320px;
    margin-bottom: 5px;
    overflow: hidden;
}
.list-template li > div.chart_container > div{
    height: 305px;
    padding:0 10px;
}

/* selectItems
====================================================== */
.selectItem{
	display: table;
	width:100%;
}
.selectItem div.col{
	display: table-cell;
}
.selectItem div.col1{
	width:8%;
}
.selectItem div.col5{
	width:46%;
}
#groupSearchStore,
#storeSearchStore{
	vertical-align: top;
	border-left:solid 1px #dadada;
	border-right:solid 1px #dadada;
	border-bottom:solid 1px #dadada;
	padding:20px 30px 30px 30px;
}
#groupSelectBtn,
#storeSelectBtn{
	vertical-align: middle;
	text-align: center;
}
.seachSettingTable{
	width: 100%;
}
.seachSettingTable th,.seachSettingTable td{
	font-size: 11px;
	font-weight: normal;
	text-align: left;
	padding-bottom: 10px;
	vertical-align: middle;
}
.seachSettingTable input{
	height: 28px;
	font-size:15px;
}
.seachSettingTable input[type="text"] {
	
	box-sizing: border-box;
	padding:0px;
	border:solid 1px #bfbfbf;
}
#groupSearchStore .normalBtn,
#selectSearchStore .normalBtn{
	margin:10px auto 20px auto;
	display: block;
}
.selectItem #groupSelectList.selectItemList select,
.selectItem #storeSelectList.selectItemList select{
	-webkit-appearance:none;
	font-size:14px;
	width:100%;
	height:200px;
	overflow: auto;
	padding:10px;
}
#groupSelectBtn input,
#storeSelectBtn input{
	line-height: 10px;
	display: inline-block;
	border-radius: 5px;
	background: #fff;
	box-shadow: 0px;
	height:22px;
	border:solid 1px #dadada;
}
#groupSelectBtn input:active,
#storeSelectBtn input:active{
	background: #2a80f2;
}
#groupSelectStoreList,
#storeSelectStoreList{
	vertical-align: top;
	background: #e8e8e8;
	padding:20px 30px 20px 30px;
}
.selectItem #groupStoreList.selectItemList select,
.selectItem #storeList.selectItemList select{
	font-size:14px;
	width:100%;
	height:285px;
	background: #e8e8e8;
	border:none;
	overflow: auto;
	padding:10px;
}
#groupSelectStoreList h4,
#storeSelectStoreList h4{
	font-size:14px;
	font-weight: normal;
	padding-top:10px;
	margin-bottom:20px;
}


/* layout header
====================================================== */
#layout-header{
    width:100%;
    border-bottom:solid 4px #2c53a4;
    display: table;
    padding-bottom:5px;
    margin-bottom: 10px;
}
#layout-header .header-logo{
    display: table-cell;
    width:90px !important;
}
#layout-header .header-title{
    padding-left:20px;
    display: table-cell;
    vertical-align: middle;
    width:350px !important;
}
#layout-header .header-title h1{
    font-weight: bold;
    font-size: 30px;
}
#layout-header .header-title .header-subtitle{
    width:100%;
}
#layout-header .header-store{
    display: table-cell;
    padding-top:10px;
    vertical-align: middle;
}
#layout-header .header-store .header-store-name{
    font-weight: bold;
    font-size: 18px;
    line-height: 20px;
    padding-bottom: 5px;
    padding-right: 20px;
}
#layout-header .header-date{
    display: table-cell;
    vertical-align: middle;
    width:110px !important;
    text-align: right;
    padding-top:20px;
}
#layout-header .header-date .header-date-name{
    background: #2c53a4;
    width:100%;
    color:#fff;
    text-align: center;
}
#layout-header .header-date .header-date-date{
    width:100%;
    color:#2c53a4;
    text-align: center;
    font-weight: bold;
    padding-top:5px;
}

/* layout footer
====================================================== */
#layout-footer{
    width:1000px;
    height: 50px;
    border-top:solid 4px #2c53a4;

    position: relative;
    top:20px;
}
#layout-footer .logo{
    width: 50px;
    height: auto;
    margin: 12px auto 0 auto;
}


/* layout container
====================================================== */
#layout-container{
    display: flex;
    flex-direction:row-reverse;
    width:1250px;
    margin: 0 auto 100px auto;
}
layout-container .svg-container{
    width:100% !important;
}

/* #print-wrapper */
#layout-container #print-wrapper{
    width:1000px !important;
    position: relative;
    margin:20px auto 0 auto;
    left:3px;
}
@media print{
    #layout-container #print-wrapper{
        margin: 40px auto 0 auto;
        position: relative;
        left:-30px;
    }
}


/* layout #section-add-item-containe
====================================================== */
#layout-container #section-add-item-container{
    border:solid 1px #b3b3b3;
    width:200px;
    margin-left: 50px;
    position: relative;
    height: 70px;
    margin-top: 20px;
}
#layout-container #section-add-item-container > h2{
    text-align: center;
    background: gray;
    color:#fff;
    width:90px;
    height: 20px;
    line-height: 20px;
    font-size:11px;
    padding: 0;
    padding-bottom: 0 !important;
    position: absolute;
    left:0;
    top:0;
}
#layout-container #section-add-item-container > h2::before{
    content:"";
}
#layout-container #section-add-item-container > div{
    padding:35px 0 0 20px;
}
#layout-container #section-add-item-container button{
    background: #fff;
    border-radius: 3px;
    position: relative;
    right:-25px;
    
}
@media print{
    #layout-container #section-add-item-container{
        display: none;
    }
}

/* layout item container
====================================================== */
#layout-container #section-item-container{
    border:solid 1px #9e9e9e;
    border-radius: 0px;
    width:200px;
    margin-left: 50px;
    margin-top:20px;
    height: 1400px;

    z-index: 10;
    background: #fff;
    position: relative;

}
#layout-container #section-item-container > h2{
    text-align: center;
    background: gray;
    color:#fff;
    width:90px;
    height: 20px;
    line-height: 20px;
    font-size:11px;
    padding:0;
    padding-bottom: 0 !important;
    position: absolute;
    left:0;
    top:0;
}
#layout-container #section-item-container > h2::before{
    content:"";
}

/* layout #layout-btn-container
====================================================== */
#layout-btn-container{
    width:100%;
    border-top:solid 1px #9e9e9e;
    padding:3px 0;
    
    height: 50px;
    background: #fff;
    text-align: center;
    
    position: fixed;
    bottom: 0;
    z-index: 200;
}
@media print{
    #layout-btn-container{
        display: none;
    }
}
#layout-btn-container .btn{
    border-radius: 5;
    margin: 5px 10px !important;
    
    display: inline-block;
    border-radius: 10px;
    background: #606060;
    padding:10px 0;
    text-align: center;
    text-decoration: none;
    color:#fff;
    width:180px;
}
#layout-btn-container .btn:hover{
    opacity: 0.8;
    cursor: pointer;
}
#layout-btn-container .btn_next{
    margin-bottom: 10px;
}
#layout-btn-container .btn_blue{
    background: #094397;
}
#layout-btn-container .btn.btn_gray{
    background: #bebebe;
}

#layout-btn-container p.layout-select{
    padding:5px 0;   
}
#layout-btn-container p.layout-select .form-control {
    display: inline-block
}


/* layout parts
====================================================== */
.bl-body{
    padding:0 10px;
}
.bl-text{
    padding:10px 10px 0 10px;
}
.bl-text-body{
    font-size: 10px;
    padding:5px 0;
}
.modebar-group{
    padding-left: 0 !important;
}
.modebar-btn{
    padding-left: 8px !important;
}


/* layout #section-itemList
====================================================== */
#section-itemList{
    height: calc(100% - 100px);
    padding:15px 0 0 0;
}
#section-itemList.ui-state-hover{
    background: #ededed;
    border:none;
}
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon{
    background-image: none;
}
@media print{
    #section-item-container{
        display: none;
    }
}
#section-itemList .ui-resizable-handle {
    display: none !important;
}
#section-itemList .draggable h5{
    display: block;
}
#section-itemList .draggable .body,
#section-itemList .bl-bar.draggable .bl-text{
    display: none;
}
#section-itemList .draggable{
    display: flex;
    align-items:flex-start;
    justify-content:center;
    width:175px;
    min-height: 65px;
    border:solid 1px #b3b3b3;
    background: #f4f4f4;
    border-radius: 0px;
    margin: 17px auto 13px auto;
    padding:30px 10px 10px 10px;
    box-sizing:border-box;
}

#section-itemList .draggable > span{
    display: flex;
    align-items:center;
    justify-content:center;
    width: 100%;
    height: 100%;

}
#section-itemList .draggable:hover{
    cursor: pointer;
}

#section-itemList .bl-bar{
    
}
#section-itemList .bl-chart > span.type,
#section-itemList .bl-bar > span.type,
#section-itemList .bl-line > span.type{
    display: block !important;
    position: absolute;
    height: 18px !important;
    line-height: 18px;
    text-align: center;
    top: 0px;
    left: 0px;
    font-size: 80%;
    color: #fff;
}
#section-itemList .bl-chart > span.type{
    background: #dc625b;
    width: 100% !important;
}
#section-itemList .bl-bar > span.type{
    background: #4e7a93;
    width: 100% !important;
}
#section-itemList .bl-line > span.type{
    background: #7c7c7c;
    width: 100% !important;
}
#section-itemList .bl-chart> span.parts-id,
#section-itemList .bl-bar> span.parts-id{
    display: block !important;
    position: absolute;
    height: 18px !important;
    width:30px;
    line-height: 18px;
    text-align: center;
    top: 0px;
    right: 0px;
    font-size: 80%;
    color: #fff;
}
#section-itemList .bl-chart> span.parts-id{
    background: #dca75b;
}
#section-itemList .bl-bar> span.parts-id{
    background: #779fb6;
}

#section-itemList .bl-head{
    background: none;
    color:#333;
    padding:0;
    font-weight: normal;
    display: block;
}
#section-itemList .bl-head .bl-head-date{
    display: none;
}


/* layout #section-layout
====================================================== */
#section-layout{
    width:1000px;
    height: 1370px;
    border:dotted 2px #aaa;
    position: relative;
    left:-1px;
    top:7px;
    display: block;
}
#section-layout.no-parts{
    background-image: url("../img/bg_layout.png");
    background-repeat: no-repeat;
    background-size: 455px 275px;
    background-position: center calc(50vh - 240px);
}

#section-layout .bl-head{
    background: #2c53a4;
    color:#fff;
    padding:5px 10px;
    font-weight: bold;
    display: flex;
    justify-content:space-between;
    flex-wrap:wrap;
}
#section-layout .bl-head .bl-head-date{
    font-size:.5rem;
    display: flex;
    align-items:flex-end;
}
#section-layout .bl-chart > span.parts-id,
#section-layout .bl-bar > span.parts-id{
    opacity: 0;
    display: inherit;
    position: absolute;
    right:0;
    top:-20px;
    font-size:8px;
    background: #fff;
    padding:0 5px;
    color:#fff;
    transition: all 0.2s;
}
#section-layout .bl-chart:hover > span.parts-id,
#section-layout .bl-bar:hover > span.parts-id{

    opacity: 1;
    display: inherit;
    position: absolute;
    right:0;
    top:-20px;
    font-size:8px;
    background: #bebebe;
    padding:0 5px;
    color:#fff;
}
#section-layout .bl-line .title{
    display: none;
}
#section-layout .bl-chart h5.title-layout{
    display: block;
}  

#section-layout .bl-chart h5.title-layout{
    display: inherit;
    position: absolute;
    top:-25px;
    text-align: center;
    width: 100%;
    font-size:90%;
    font-weight: bold;
}

@media print{
    #section-layout{
        border:none;
    }
    #section-layout.no-parts{
        display: none;   
    }
}


/* layout parts
====================================================== */

/* デフォルト値 */
.bl-chart{
    position: relative;
    width:300px;
}
.bl-bar{
    width:300px;
}
.bl-line{
    width:30px;
}
.textline{
    display: none;
}

/* 図 */
/*
.bl-chart table{
    width:100%;
    height: 100%;
    margin-bottom: 20px;
}
.bl-chart table th{
    background:#4191ff;
    color:#fff;
    text-align: center;
    border:solid 1px #555;
}
.bl-chart table td{
    text-align: center;
    border:solid 1px #555;
}
*/

/* 仕切り */
.bl-line{
    background: url(../img/line.png);
    background-repeat:repeat-y;
    background-position: center;
    position: relative;
}
.bl-line .body{
    font-size: 0;
}

.bl-line .btn-delete-item{
    position: absolute;
    right: 1px;
    top:1px;
    font-size: 0;
    width:14px;
    height: 14px;
    display: block;
    background: #fff;
    background-image: url(../img/icon_delete.png);
    background-repeat: no-repeat;
    background-size: 10.5px 10.5px;
    background-position: center center;
    border:solid 1px #aaa;
}
#section-layout .bl-line .btn-delete-item{
    display: none;
}

/* ui parts */
#section-itemList > li.listed{
    position: relative;
    top:0 !important;
    left:0 !important;
    overflow-y: inherit;
}
#section-itemList > li.listed:hover{
    background: #f4f4f4;
}
#section-layout > li{
    position: absolute;
}

#section-layout .ui-icon, .ui-widget-content .ui-icon{
    background:none;
    right:0;
    bottom: 0;
}
#section-layout .ui-icon:hover{
    background-image:url(../img/icon_resize.png);
    background-repeat:no-repeat;
    background-position: right bottom;
    background-size: 10px;
}
#section-layout .draggable .body:hover{
    background-color: #fff;
    background-image:url(../img/icon_resize.png);
    background-repeat:no-repeat;
    background-position: right bottom;
    background-size: 10px;
    opacity: 0.6;
}
#section-layout .bl-bar.draggable .bl-text{
    height: auto;
}

/* 調整 */
#section-layout .ui-draggable-dragging{
    opacity: 0.8;
    background: #fff;
    z-index:100;
    border:solid 1px #d5d5d5 !important;
}

.bl-chart > .body,
.bl-bar > .body,
.bl-line > .body{
    height: 100%;
    position: relative;
}
.bl-body{
    height: inherit;
    background: #fff;
}
.bl-text{
}

#section-layout .bl-bar > span.type,
#section-layout .bl-chart > span.type,
#section-layout .bl-line > span.type{
    display: none;
}

.slicetext text{
    fill:#fff !important;
}
.bartext-inside{
    fill:#fff !important;
}

/* 出力画面
====================================================== */
.pdf-view #section-layout .draggable .body:hover{
    background-image: none;
    opacity: 1;
}

/* chart-table
====================================================== */
.chart-table-a1{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-a1 th,
.chart-table-a1 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:5px 5px;
}
.chart-table-a1 th{
    text-align: center;
    background: #ececec;
}
.bl-chart .chart-table-a1 td{
    text-align: center;
}
.chart-table-a2{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-a2 th,
.chart-table-a2 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:10px 5px;
}
.chart-table-a2 th{
    text-align: center;
    background: #fff1d7;
    font-weight: bold;
}
.bl-chart .chart-table-a2 td{
    text-align: left;
}
.chart-table-a3{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-a3 th,
.chart-table-a3 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:10px 5px;
}
.chart-table-a3 th{
    text-align: center;
    background: #2d6de6;
    color: #fff;
    font-weight: bold;
}
.bl-chart .chart-table-a3 td{
    text-align: left;
}
.chart-table-a4{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-a4 th,
.chart-table-a4 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:10px 5px;
}
.chart-table-a4 th{
    text-align: center;
    background: #fff1d7;
    font-weight: bold;
}
.bl-chart .chart-table-a4 td{
    text-align: left;
}
/*
.chart-table-a4 tr td:first-child{
    border:solid 1px gray;
    max-height: 40px;
    background: #fff1d7;
    text-align: center;
}
*/
.chart-table-a4 tr:first-child td{
    border:solid 1px gray;
    max-height: 40px;
    background: #fff1d7;
    text-align: center;
    font-weight: bold;
}

.chart-table-b1{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-b1 th,
.chart-table-b1 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:5px 5px;
    text-align: center;
}
.chart-table-b1 th{
    text-align: center;
    background: #ececec;
}
.chart-table-b2{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-b2 th,
.chart-table-b2 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:10px 5px;
    text-align: center;
}
.chart-table-b2 th{
    text-align: center;
    background: #fff1d7;
    font-weight: bold;
}
.chart-table-b3{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-b3 th,
.chart-table-b3 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:10px 5px;
    text-align: center;
}
.chart-table-b3 th{
    text-align: center;
    background: #2d6de6;
    color: #fff;
    font-weight: bold;
}
.chart-table-b4{
    width:calc(100% + 20px) !important;
    position: relative;
    left:-10px;
    height: 100%;
    margin: 0 auto 0 auto;
    font-size:12px;
}
.chart-table-b4 th,
.chart-table-b4 td{
    border:solid 1px gray;
    max-height: 40px;
    padding:10px 5px;
    text-align: center;
}
.chart-table-b4 th{
    text-align: center;
    background: #fff1d7;
    font-weight: bold;
}
.chart-table-b4 tr td:first-child{
    border:solid 1px gray;
    max-height: 40px;
    background: #fff1d7;
    text-align: center;
    font-weight: bold;
}

.list-chart-table > li > div{
    padding:7px 0 0 0;
}
.list-chart-table .chart-table-a1,
.list-chart-table .chart-table-a2,
.list-chart-table .chart-table-a3,
.list-chart-table .chart-table-a4,
.list-chart-table .chart-table-b1,
.list-chart-table .chart-table-b2,
.list-chart-table .chart-table-b3,
.list-chart-table .chart-table-b4{
    width:90% !important;
    height: 90%;
    position: relative;
    left:0;
    top:15px;
}

/* Cell
====================================================== */
#contextMenu {
  background: #e1efc7;
  border: 1px solid gray;
  padding: 2px;
  display: inline-block;
  min-width: 100px;
  -moz-box-shadow: 2px 2px 2px silver;
  -webkit-box-shadow: 2px 2px 2px silver;
  z-index: 99999;
}

#contextMenu li {
  padding: 4px 4px 4px 14px;
  list-style: none;
  cursor: pointer;
  background: url("../images/arrow_right_peppermint.png") no-repeat center left;
}

#contextMenu li:hover {
  background-color: white;
}

#myGrid{
    width:100%;
    height:650px;

    border:solid 1px #ddd;
}

.cell-title {
    font-weight: normal;

}
.rColumn{
    margin-left:5px;
}
.list-series{
    display: flex;
    flex-direction:column;
    border-left:solid 1px gray;
    border-top:solid 1px gray;
    border-right:solid 1px gray;
    border-bottom:solid 1px #e2e2e2;
    width:210px;
    overflow-y: auto;
    height: 365px;
}
.list-series li{
    border-bottom: solid 1px #e2e2e2;
}
.list-series .head{
    width:100%;
    height: 30px;
    line-height: 30px;
    background: #929292;
    color: #fff;
    font-size: 14px;
    padding:0 10px;
    position: relative;
    display: flex;
    justify-content:space-between;
}
.list-series .head .trash a{
    display: block;
    background: #fff;
    color:#474747;
    border-radius: 4px;
    width:50px;
    height: 24px;
    text-align: center;
    line-height: 25px;
    text-decoration: none;
    position: relative;
    top:2px;
    font-size:13px;
}
.list-series .head .trash a:hover{
    opacity: 0.8;   
}

.list-series .body{
    padding:0;
}
.list-series .body > .form-group{
    margin-bottom: 0;
}
.list-series .body > div > div{
    margin:10px 0;
    text-align: right;
    position: relative;
    right:20px;
}

.section_axis_cmn{
    margin-bottom: 5px;
    
    display: flex;
    flex-direction:column;
    justify-content:space-between;

    border:solid 1px gray;
    width:210px;
}
.section_axis_cmn .head{
    width:100%;
    height: 30px;
    line-height: 30px;
    background: #929292;
    color: #fff;
    font-size: 14px;
    padding:0 10px;
    position: relative;
    display: flex;
    justify-content:space-between;
}

.section_axis_cmn .body > div{
    margin:7px 0;
    text-align: right;
    position: relative;
    right:0px;
    padding-right: 15px;
}
.section_axis_cmn .body > div:first-child{
    border-bottom:solid 1px #e2e2e2;
    padding-bottom: 7px;
}
.section_btn_add{
    padding:5px;
    border-left:solid 1px gray;
    border-right:solid 1px gray;
    border-bottom:solid 1px gray;
    height: 55px;
}
.section_calc_type{
    padding:5px;
    border-left:solid 1px gray;
    border-right:solid 1px gray;
    border-bottom:solid 1px #e2e2e2;
    height: 55px;
}
.section_calc_type > div{
    margin:3px 0;
    text-align: right;
    position: relative;
    right:10px;
}

/* chart_template
====================================================== */
#chart_template > .form-group > div:nth-child(2){
    position: relative;
    left:-10px;
}

/* table-grid
====================================================== */
.container-table-grid{
    width:1000px;
    height: 664px;
    overflow: scroll;
    border:solid 1px gray;
}
.container-table-grid.lcolumn-grid{
    width:745px;
}
.table-grid{
    table-layout: fixed;
    width: 100%;
}
.table-grid th,
.table-grid td{
    border-right:solid 1px silver;
    border-bottom:solid 1px silver;
    width:80px;
    padding:4px;
    font-size:12px;
}
.table-grid thead th{
    position: sticky;
    top: 0;
}
.table-grid th:first-child,
.table-grid td:first-child{
    width:40px;
}
.table-grid thead th{
    background: #f6f6f6;
    text-align: center;
}
.table-grid tbody th{
    background: #f6f6f6;
    text-align: center;
    position: sticky;
    left: 0;
}

/* Footer
====================================================== */
footer{
	margin:50px auto;
	padding:15px 0;
	width:100%;
	color:#717171;
	font-size:14px;
	text-align:center;
	border-top:solid 1px gray;
}


/* loader
====================================================== */
.loader-container{
    position: fixed;
    width:100%;
    height: 100%;
    background: #000;
    opacity: 0.6;
    z-index: 9999;
}
.loader,
.loader:after {
  border-radius: 50%;
  width: 3em;
  height: 3em;
}
.loader {
  margin: 60px auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: .4em solid rgba(255,255,255, 0.2);
  border-right: .4em solid rgba(255,255,255, 0.2);
  border-bottom: .4em solid rgba(255,255,255, 0.2);
  border-left: .4em solid #fff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
    
    position: absolute;
    top:40%;
    left: 50%;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}


	/* Header
	====================================================== */
	h2{
		padding-bottom:30px !important;
	}

	#inatallation_regist_form h4{
		background: #e1e1e1;
		padding:5px 0 5px 20px;
		margin:15px 160px 15px 130px;
	}

    /* Global Tab
	====================================================== */
    ul.g-tab{
		width:1050px;
		margin:0 auto 25px auto;
		display: table;
        display: flex;
        padding:0 25px;
        border-bottom:solid 1px;
	}
	
	ul.g-tab li{
		text-align: center;
		vertical-align: middle;
		float: none;
		width:196px;
		transition: all 0.3s ease 0s;
        position: relative;
        top:1px;
	}
    ul.g-tab li a{
		display: block;
		width:100%;
		height:100%;
		padding:14px 0;
        color:#606060;
        background: #fff;
        border-bottom:solid 1px;
		text-decoration: none !important;
	}
    ul.g-tab li.active a{
        border-top:solid 1px;
        border-left:solid 1px;
        border-right:solid 1px;
        border-bottom:none;
    }
    ul.g-tab li a:hover{
		color:gray;
	}
	
	/* Global Menu
	====================================================== */
	.navbar-fixed-top{
		position: relative;
	}
	
	.navbar{
		margin-bottom:0px;
		background: none;
		border:none;
		min-height: 0px;
	}
	
	.navbar,.navbar-nav{
		float: none;
	}
	
	ul.g-nav{
		width:1100px;
		margin:0 auto 15px auto;
		display: table;
        display: flex;
        padding:0 50px;
	}
	
	ul.g-nav li{
		text-align: center;
		vertical-align: middle;
		border-right: solid 1px #fff;
		float: none;
		width:20%;
		transition: all 0.3s ease 0s;
        margin-right: 3px;
	}
	
	ul.g-nav li.cat2{
		background: #bbb;
	}
	
	ul.g-nav li:hover{
		opacity: 0.7;
	}
	
	ul.g-nav li a{
		display: block;
		width:100%;
		height:100%;
		padding:14px 0;
		text-decoration: none !important;
	}
	
	ul.g-nav li.cat1 a{
		color:#fff;
        background: #606060;
	}

    ul.g-nav li.cat1 a:hover{
        color:#fff;
        background: #606060;
		opacity: 0.8;
	}
    ul.g-nav li.active a,
    ul.g-nav li.active a:hover{
        background: #074497;
        color: #fff;
    }
	
	ul.g-nav li.cat2 a{
		color: #000;
	}
	
	ul.navbar-nav>li.cat1>a:hover,
	ul.navbar-nav>li.cat1>a:focus{
		opacity: 0.6;
	}
	
	.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus{
		background: #074497;
		color:#fff;
	}
	
	/* Login
	====================================================== */
	.login{
		width:500px;
		margin: 30px auto;
		background:#e1e1e1;
		padding:30px 20px 10px 20px;
		border-radius: 10px;
	}
	
	.login table{
		width:400px;
	}
	
	.login table th{
		text-align: right;
		padding:15px;
		width:100px;
	}
	
	.login td input{
		width:300px;
	}
		
	/* Form
	====================================================== */
	.col-form-label{
		padding-top:calc(.8rem - 1px * 2);
		padding-bottom:calc(.8rem - 1px * 2);
		margin-bottom: 0px;
	}
	
	input[type=text], input[type=email], input[type=tel],input[type=password], textarea{
		padding:2px 2px 2px 10px;
	}
	
	input.text_long,textarea.text_long{
		width:550px !important;
	}

	input.zipcode1{
		width:80px;
		margin: 0 !important;
		display: inline-block;
	}
	
	input.zipcode2{
		width:100px;
		margin: 0 !important;
		display: inline-block;
	}
	
	input.text_short{
		width:200px;
	}
	
	select.form-control{
		max-width: 550px;
	}