/**
  * 全体
  **********************************************************************************************************************
 */
* {
  margin  : 0;
  padding : 0;
}

a {
  text-decoration : none;
  outline         : none;
}

body {
  font-size   : 0.8rem;
  font-family : "SF Pro JP", "SF Pro Display", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica", "Arial", "sans-serif";
}

select {
  width : 95%;
}

.br {
  display : none;
}

h1 {
  margin  : 0;
  padding : 0;
}

h2 {
  border-left   : lightgray 0.5rem solid;
  border-bottom : lightgray 0.1rem solid;
  font-size     : 1.2rem;
  margin        : 1rem 0 0;
  padding       : 0.1rem 0 0 1rem;
}

h3,
p {
  word-break : break-word;
}

li {
  list-style-type : none;
}

main {
  margin : 0 auto;
  width  : fit-content;
}

main:has(.topData) {
  display : flex;
}

main .topData {
  margin : 1rem 0 0 2rem;
}

/**
  * 汎用
  **********************************************************************************************************************
 */
/*  文字列を大きくする  */
.fontBig {
  font-size : 16px;
}

/*  オフィシャルのリンクテキスト  */
.anchorText {
  font-weight : bold;
  color       : slateblue;
}

/*  ボタン 汎用  */
.btn {

}

/**
  * ヘッダー
  **********************************************************************************************************************
 */
header {
  width      : 100%;
  margin     : 0 auto 10px;
  color      : #FFFFFF;
  top        : 0;
  z-index    : 90;
  position   : relative;
  background : rgb(125, 126, 125);
  background : -moz-linear-gradient(340deg, rgba(100, 100, 100, 1) 0%, rgba(14, 14, 14, 1) 100%);
  background : -webkit-linear-gradient(340deg, rgba(100, 100, 100, 1) 0%, rgba(14, 14, 14, 1) 100%);
  background : linear-gradient(340deg, rgba(100, 100, 100, 1) 0%, rgba(14, 14, 14, 1) 100%);
  filter     : progid:DXImageTransform.Microsoft.gradient(startColorstr="#7d7e7d", endColorstr="#0e0e0e", GradientType=1);
}

/**
  * タイトルバー
  **********************************************************************************************************************
 */
#titleBar {
  display  : flex;
  overflow : visible;
}

#siteName {
  color           : #FFFFFF;
  flex-grow       : 1;
  font-size       : 0.8rem;
  justify-content : flex-start;
  line-height     : 1.5;
  padding         : 3px 0 0 5px;
  text-align      : left;
}

#siteName a {
  color : #FFFFFF;
}

#siteDes {
  flex-grow       : 1;
  font-weight     : bold;
  justify-content : flex-end;
  line-height     : 1.5;
  margin          : 0 auto;
  padding         : 3px 10px 0 0;
  text-align      : right;
}

/**
  * グローバルメニュー
  **********************************************************************************************************************
 */
header > nav > ul {
  background-color                : #444444;
  display                         : flex;
  text-align                      : center;
  width                           : 95%;
  margin                          : 0 auto;
  -webkit-border-top-left-radius  : 10px;
  -moz-border-radius-topleft      : 10px;
  -webkit-border-top-right-radius : 10px;
  -moz-border-radius-topright     : 10px;
  border-radius                   : 10px 10px 0 0;
}

header > nav > ul > li {
  vertical-align : middle;
  margin         : 0 auto;
  padding        : 0;
  width          : 100%;
  position       : relative;
}

header > nav ul > li > ul {
  background-color     : #444444;
  color                : #FFFFFF;
  border-top           : 0;
  border-radius        : 0 0 4px 4px;
  box-shadow           : 0 2px 2px -1px rgba(0, 0, 0, 0.055);
  margin               : 0;
  position             : absolute;
  visibility           : hidden;
  transition           : opacity 0.2s;
  padding-inline-start : 0;
  display              : block;
  width                : 100%;
  left                 : 0;
  right                : 0;
}

header > nav ul > li > ul > li {
  color           : #FFFFFF;
  display         : block;
  text-decoration : none;
}

header li a {
  display    : block;
  padding    : 8px 0 5px;
  text-align : center;
  color      : #FFFFFF;
}

header li a:hover {
  background-color                : #BDBDBD;
  -webkit-border-top-left-radius  : 10px;
  -moz-border-radius-topleft      : 10px;
  -webkit-border-top-right-radius : 10px;
  -moz-border-radius-topright     : 10px;
  border-radius                   : 10px 10px 0 0;
}

header > nav ul.active,
header > nav > ul > li:hover > ul {
  visibility : visible;
  z-index    : 100;
}

header > nav ul > li > ul > li:hover > a {
  background-color : rgba(255, 255, 255, 0.1);
}

header > nav a.groupMenu:before,
header > nav a.accordion:before {
  right : 20px;
}

header > nav a.groupMenu:before {
  content : "▼ ";
}

header > nav a.accordion:before {
  content : "▽ ";
}

/**
  * フッター
  **********************************************************************************************************************
 */
footer {
  margin           : 10px 0 0;
  border-top       : 1px solid #BDBDBD;
  font-size        : 9px;
  text-align       : right;
  font-weight      : normal;
  color            : #BDBDBD;
  background-color : #FFFFFF;
}

.footerNavi > ul {
  display       : flex;
  float         : right;
  max-width     : 700px;
  min-width     : 650px;
  padding-top   : 5px;
  padding-right : 5px;
}

.footerNavi > ul > li {
  margin       : 0 auto;
  padding      : 0;
  width        : 100%;
  position     : relative;
  text-align   : center;
  border-right : #999999 dotted 1px;
}

.footerNavi > ul > li:first-child {
  border-left : #999999 dotted 1px;
}

.copy {
  float   : right;
  padding : 15px 1px 0 0;
}

/**
  * パンくず
  **********************************************************************************************************************
 */
#breadcrumbs {
  margin           : 0 auto;
  width            : 100%;
  background-color : #EEEEEE;
  border-width     : 1px;
  border-style     : solid;
  border-color     : #F5F5F5 #E5E5E5 #CCCCCC;
  box-shadow       : 0 0 2px rgba(0, 0, 0, .2);
  overflow         : hidden;
}

#breadcrumbs a {
  position         : relative;
  float            : left;
  text-decoration  : none;
  color            : #444444;
  background-color : #DDDDDD;
  background-image : linear-gradient(to top right, #F5F5F5, #DDDDDD);
  padding          : .7em 1em .7em 2em;
  text-shadow      : 0 1px 0 rgba(255, 255, 255, .5);
}

#breadcrumbs a:hover {
  background : #FFFFFF;
}

#breadcrumbs a::after,
#breadcrumbs a::before {
  content       : "";
  position      : absolute;
  top           : 50%;
  margin-top    : -1.5em;
  border-top    : 1.5em solid transparent;
  border-bottom : 1.5em solid transparent;
  border-left   : 1em solid;
  right         : -1em;
}

#breadcrumbs a::after {
  z-index           : 2;
  border-left-color : #DDDDDD;
}

#breadcrumbs a::before {
  border-left-color : #CCCCCC;
  right             : -1.1em;
  z-index           : 1;
}

#breadcrumbs a:hover::after {
  border-left-color : #FFFFFF;
}

#breadcrumbs .current,
#breadcrumbs .current:hover {
  font-weight : bold;
  background  : none;
}

#breadcrumbs .current::after,
#breadcrumbs .current::before {
  content : normal;
}

/**
  * データテーブル
  **********************************************************************************************************************
 */
/** データ削除のDialog  */
#deleteConfirmDialog,
#stockConfirmDialog {
  display : none;
}

/**
  * 配置
  **********************************************************************************************************************
 */
/** ドキュメントの画像の左寄  */
img.fLeft {
  float : left;
}

img.fRight {
  float : right;
}

img.fCenter {
  margin : 0 auto;
}

.documentBox {
  margin  : 1rem 0 1rem;
  padding : 0 1rem 0 1rem;
}

.documentBox > ul {
  margin  : 0.1rem 0;
  padding : 0;
}

.documentBox > ul > li {
  list-style-type : disc;
  margin          : 0 0 0 1rem;
  padding         : 0;
}

.pageTitle {
  margin : 1rem 0 0 0;
}

.pageNote {
  font-size : 1rem;
  margin    : 1rem 0 0 0;
}

.pageNote > p {
  margin  : 0.5em 0 0;
  padding : 0 0 0 1rem;
}

#bMes {
  display         : grid;
  justify-content : flex-end;
  font-size       : 0.75rem;
  margin          : 0 0 1rem;
}

#bMes > div {
  width : fit-content;
}

#bMes p {
  border-bottom : 1px solid #CCCCCC;
  margin-bottom : 0.3rem;
  margin-left   : auto;
  padding       : 0.25rem 0 0.2rem;
  text-align    : right;
}

.hiddenShow {
  display : none;
}

.dataTable td {
  cursor : pointer;
}

form.operationBox {
  justify-content : flex-end;
}