@charset "utf-8";

/*-----------------------------------------------
 __base_style
-----------------------------------------------*/

body {
  font-family: "BIZ UDPGothic", YuGothic, "Yu Gothic", Sans-Serif !important;
  margin: 20px 0 0 0 !important;
  padding: 0 0 0 0 !important;
  background: #ffffff !important;
  color: #000 !important;
  line-height: 1.5 !important;
  text-align: center !important;
  font-size: small !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 14pt;
  letter-spacing: 0.1em;
}

a:link {
  color: #666666;
  text-decoration: none;
}

a:visited {
  color: #666666;
  text-decoration: none;
}

a:hover {
  color: #000000;
  text-decoration: underline;
}

a:active {
  color: #0000ff;
}

img {
  border-style: none;
  vertical-align: bottom;
}

a img {
  border-style: none;
}

ul {
  list-style: none;
}

/*-----------------------------------------------
 __layout
-----------------------------------------------*/

#page {
  width: 962px;
  margin: 0 auto;
}

#login_page,
#sub_page {
  width: 90%;
  margin: 0 auto;
  font-size: 12pt;
  text-align: initial;
  min-width: 840px;
}

.unauth_msg {
  color: red;
  margin-left: 15px;
}

.unauth_msg_detail {
  color: red;
  margin-left: 5px;
}

.staging {
  background: wheat;
}

/*-----------------------------------------------
 __login
-----------------------------------------------*/

#attention {
  width: 500px;
  height: 500px;
  margin: 0 auto;
  padding: 120px 0px 0px 0px;
  text-align: center;
}

#login {
  width: 635px;
  margin: 0 auto;
  background-image: url(../img/logincard.svg);
  background-repeat: no-repeat;
  text-align: center;
}

#loginblank {
  width: 240px;
  height: 120px;
  margin: 0px auto;
}

#loginnote {
  width: 270px;
  height: 44px;
  margin: 0px auto;
}

#loginform {
  width: 350px;
  margin: 30px auto 10px;
  text-align: left;
}

#loginform form {
  width: 350px;
  margin: 0 auto;
}

#loginform input {
  width: inherit;
}

#loginsubmit {
  width: 350px;
  height: 34px;
  margin: 0px;
  text-align: center;
}

#loginsubmit input {
  width: 250px;
}

#loginbtnarea {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  input[type="button"] {
    width: 195px;
  }
}

#loginerr {
  margin-bottom: 10px !important;

  .error_txt {
    width: inherit !important;
    margin: 0px !important;
  }
  .error_ttl {
    color: red;
    margin-top: 1rem;
  }
}

/*-----------------------------------------------
 __version
-----------------------------------------------*/

.version {
  text-align: center;
  font-size: 12pt;
}

/*-----------------------------------------------
 __header
-----------------------------------------------*/

#header {
  height: 60px;
  margin-bottom: 5px;
  background-color: #fff;

  img {
    max-height: 60px;
  }
}

#contents {
  width: 962px;
}

#login_contents,
#sub_contents {
  width: 100%;
}

/*-----------------------------------------------
 __menu
-----------------------------------------------*/

#left {
  float: left;
  width: 245px;
  height: auto;
  margin: 16px 0px 0px 0px;
  border: 1px solid #d3d3d3;
}

#lefthead {
  height: 4px;
  font-size: 3px;
}

#leftmid {
  height: auto;
}

#leftbtm {
  height: 6px;
}

.menubt {
  margin: 0 auto;
  padding: 0px 0px 0px 0px;
}

.menubts {
  margin: 0 auto;
  padding: 0px 0px 4px 0px;
}
.menubts2 {
  margin: 0 auto;
  padding: 0px 0px 7px 0px;
}

.menubtl {
  margin: 0 auto;
  padding: 0px 0px 5px 0px;
}

.menuline {
  background: url(../img/menuline.jpg);
  height: 2px;
}
.mouseover {
  font-size: 16px;
  text-align: left;
}
.menucurrent {
  background: #d3d3d3;
}
.mouseover:hover {
  background: #d3d3d3;
}
.mouseover a {
  margin: 0px 0px 0px 15px;
  display: block;
}

/*-----------------------------------------------
 __right
-----------------------------------------------*/

#right {
  float: right;
  width: 706px;
  margin: 16px 0px 0px 0px;
}

.rline {
  clear: both;
}

#rtitle {
  float: left;
  height: 20px;
  text-align: left;
  padding: 0px 0px 0px 3px;
}

#ridbox {
  float: right;
  height: 20px;
  text-align: right;
  padding: 0px 3px 0px 0px;
  color: #009942;
}

#rid1 {
  font-weight: bold;
}

#ridb {
  font-weight: bold;
}

#rtermbox {
  clear: both;
  width: 703px;
  height: 20px;
  padding: 6px 0px 0px 3px;
  text-align: left;
}

.term1 {
  float: left;
}

.term2 {
  float: left;
}

#rdate {
  clear: both;
  width: 703px;
  height: 24px;
  padding: 6px 0px 6px 3px;
  text-align: left;
}

#rdatestart {
  float: left;
}

#rdateend {
  float: left;
  padding: 0px 0px 0px 12px;
}

#cond th {
  background-color: #d3d3d3;
}

#cond tbody th.check {
  width: 36px;
}

#cond tbody th.change {
  width: 36px;
}

#cond tbody th.value {
  width: 130px;
}

#cond tbody th.name {
  width: 320px;
}

#proper {
  clear: both;
  width: 703px;
  height: 20px;
  padding: 0px 0px 6px 3px;
  text-align: left;
}

#proper2 {
  clear: both;
  width: 703px;
  height: 10px;
  padding: 0px 0px 0px 3px;
  text-align: left;
}

#rsetting {
  width: 700px;
  height: auto;
  padding: 12px 0px 0px 3px;
  text-align: left;
}

#rtablebox {
  padding: 12px 0px 0px 0px;
}

#rtable {
  border: 1px solid #ccc;
  width: 700px;
  height: 380px;
  overflow: auto;
}

#rbtbox {
  text-align: right;
  padding: 12px 0px 0px 0px;
}

#rtitle2 {
  text-align: left;
  padding: 0px 0px 0px 4px;
  height: 20px;
  background-color: #f0f0f0;
}

#rinner {
  width: 700px;
  text-align: left;
  margin: 4px 0px 0px 3px;
}

#rinner blockquote {
  font-family: "BIZ UDPGothic", YuGothic, "Yu Gothic", Sans-Serif !important;
  margin-bottom: 60px;
  background-color: #f3f3f3;
}

#rinner b {
  color: #009942;
}

#rform1 {
  float: left;
  width: 360px;
}

#rform2 {
  text-align: right;
  float: left;
  width: 340px;
  padding: 0px 0px 0px 0px;
  display: inline;
}

#rform2text {
  text-align: left;
  width: 340px;
  padding: 0px 0px 0px 4px;
}

#rtable1 {
  padding: 0px 0px 0px 4px;
}

#samplebox1 {
  border: solid 1px #c8c8c8;
  width: 248px;
  height: 120px;
}

#samplebox2 {
  border: solid 1px #c8c8c8;
  width: 330px;
  height: 375px;
  margin: 6px 0px 0px 0px;
}

#right2 {
  float: left;
  width: 700px;
  margin: 0px 0px 0px 0px;
}

#rbt1 {
  float: left;
  width: 332px;
  text-align: right;
  margin: 8px 0px 0px 0px;
}

#rbt2 {
  width: 248px;
  text-align: right;
  margin: 6px 0px 0px 0px;
}

#line {
  margin: 10px 0px 0px 0px;
  height: 10px;
  font-size: 8px;
}

/*-----------------------------------------------
 __tab
-----------------------------------------------*/

body#tab_sample h1 {
  margin-bottom: 2em;
  font-size: 200%;
  font-weight: normal;
  line-height: 100%;
  text-align: center;
}

body#tab_sample div#javascript_tab_sample {
  margin: 20px auto 0 auto;
  width: 450px;
  text-align: left;
}

div#javascript_tab_sample ul#tab {
  margin: 0;
  padding: 0;
  border-bottom: 3px solid #787878;
  background-color: #fff;
  float: left;
  width: 100%;
}

div#javascript_tab_sample ul#tab li {
  margin: 0 0 0 0px;
  padding: 0;
  text-align: center;
  border: 1px solid #787878;
  border-bottom: none;
  float: left;
  width: 160px;
  height: 20px;
}

div#javascript_tab_sample ul#tab li.selected {
  background-color: #787878;
}

div#javascript_tab_sample ul#tab li.selected a {
  color: #fff;
}

div#javascript_tab_sample dl {
  margin: 0;
  padding: 5px;
  color: #333;
  border: 1px solid #787878;
  border-top: none;
  background-color: #787878;
  clear: both;
  text-align: center;
}

div#javascript_tab_sample dl dt {
  border-bottom: 1px solid #999;
}

div#javascript_tab_sample dl dd {
  text-align: center;
}

#tabinner {
  width: 688px;
  background: #fff;
}

#tabbt {
  margin: 6px 0px 0px 0px;
}

/*-----------------------------------------------
 __list&save
-----------------------------------------------*/

#listbox {
  width: 698px;
  border: solid 1px #c8c8c8;
}

#listname {
  text-align: left;
  width: 698px;
  height: 59px;
  border: solid 1px #c8c8c8;
  margin: 10px 0px 0px 0px;
}

#listbt {
  margin: 5px 0px 0px 0px;
}

/*-----------------------------------------------
 __footerlogo
-----------------------------------------------*/

#footerlogo {
  clear: both;
  padding: 20px 0px 0px 0px;

  img {
    width: 100%;
  }
}

/*-----------------------------------------------
 __tabbox
-----------------------------------------------*/

#tabbox2 {
  width: 600px;
  height: auto;
  margin: 0 auto;
}

#tabbtarea {
  width: 600px;
  height: 32px;
}

#tabbtbox {
  width: 480px;
  height: 32px;
  margin: 0px 0px 0px 28px;
}

.tabbt {
  width: 120px;
  height: 32px;
  float: left;
}

#tabtop {
  clear: both;
  width: 600px;
  height: 4px;
  background: url(../img/tabboxtop.jpg) no-repeat;
  font-size: 3px;
}

#tabmid {
  width: 600px;
  height: auto;
  background: url(../img/tabboxback.jpg);
}

#tabbody {
  padding: 12px 10px 12px 10px;
  text-align: left;
  height: auto;
  font-size: 12px;
}

#tabbodybtarea {
  width: 580px;
  height: 32px;
  margin: 0 auto;
  padding: 0px 0px 12px 0px;
}

.tabbodybt {
  width: 128px;
  height: 32px;
  float: right;
}

#tabbtm {
  width: 600px;
  height: 4px;
  background: url(../img/tabboxbtm.jpg) no-repeat;
  font-size: 3px;
}

.btarea {
  text-align: right;
  padding: 10px 10px 10px 10px;
}

.btareabox {
  height: 30px;
}

.btareaboxL {
  float: left;
  height: 32px;
}

.btareaboxR {
  float: right;
  height: 32px;
}

.tabform1 {
  float: left;
  padding: 3px 8px 0px 0px;
}

.tabform2 {
  float: left;
  padding: 18px 8px 0px 0px;
}

.tabformbt1 {
  float: left;
}

.tabformbt2 {
  float: left;
  height: 30px;
  margin: 48px 0px 0px 0px;
}

/*-----------------------------------------------
 __agree
-----------------------------------------------*/

#agcenter {
  margin: 0 auto;
  text-align: center;
}

/*-----------------------------------------------
 __sub
-----------------------------------------------*/

#subcenter {
  width: 700px;
  margin: 0 auto;
  text-align: center;
}

#subtitle {
  float: left;
  height: 20px;
  text-align: left;
  padding: 0px 0px 0px 3px;
}

#subnote {
  width: 260px;
  margin: 0 auto;
}

#subbody {
  width: 300px;
  margin: 30px auto 10px;
  text-align: left;
}

#subbody form {
  width: 300px;
  margin: 0 auto;
}

#subbody input {
  width: inherit;
}

#subbtnarea {
  display: flex;
  justify-content: space-evenly;
}

#subbtnarea input {
  width: 70px !important;
}

#suberr {
  width: 550px;
  margin: 0 auto;
  text-align: left;

  .error_ttl {
    color: red;
    margin-top: 1rem;
  }
}

/*-----------------------------------------------
 __pwchange
-----------------------------------------------*/

#pwchangenote {
  text-align: left;
  width: 640px;
  margin: 0 auto;
}

#pwpolicy {
  margin: 0px 0px 0px 30px;
}

#pwchangebody {
  width: 500px;
  margin: 30px auto 10px;
  text-align: left;
}

#pwchangebody input {
  width: 350px;
}

#pwchangeinput {
  display: flex;
  margin: 0 auto 30px;
}

#pwchangeinput-label {
  margin-right: 20px;
}

#pwchangeerr {
  width: 650px;
  margin: 0 auto;

  .error_txt {
    width: inherit !important;
    margin: 20px 0px !important;
  }

  .error_ttl {
    color: red;
    margin-top: 1rem;
  }
}

/*-----------------------------------------------
 __inquiry
-----------------------------------------------*/

#inqbody {
  width: 500px;
  height: 200px;
  text-align: left;
  margin: 20px auto 30px;
}

#inqbtnarea {
  display: flex;
  justify-content: space-evenly;
}

#inqbtnarea input {
  width: 150px !important;
}

/*-----------------------------------------------
 __table
-----------------------------------------------*/

/* tables */
table.tablesorter {
  background-color: #cdcdcd;
  margin: 10px 0pt 15px;
  font-size: 8pt;
  width: 100%;
  text-align: left;
  table-layout: fixed;
}
table.tablesorter thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  box-shadow: 0 -3px 1px -1px #ccc;
}
table.tablesorter .thcolumnfixed {
  position: sticky;
  left: 0;
  z-index: 2;
}
table.tablesorter .thcolumnfixed2 {
  position: sticky;
  left: 110px;
  z-index: 2;
}
table.tablesorter .tdcolumnfixed {
  position: sticky;
  left: 0;
  z-index: 1;
}
table.tablesorter .tdcolumnfixed::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-right: 1px solid #cdcdcd;
}
table.tablesorter .tdcolumnfixed2 {
  position: sticky;
  left: 110px;
  z-index: 1;
}
table.tablesorter .tdcolumnfixed2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-right: 1px solid #cdcdcd;
}
table.tablesorter thead tr th,
table.tablesorter tfoot tr th {
  background-color: #d3d3d3;
  border: 1px solid #fff;
  font-size: 8pt;
  padding: 4px;
  color: #000000;
}
table.tablesorter thead tr .tablesorter-header {
  background-image: url(../img/bg.gif);
  background-repeat: no-repeat;
  background-position: center right;
  cursor: pointer;
}
table.tablesorter tbody td {
  color: #3d3d3d;
  padding: 4px;
  background-color: #fff;
  vertical-align: top;
  text-align: right;
}
table.tablesorter tbody tr.odd td {
  background-color: #f0f0f6;
}
table.tablesorter thead tr .tablesorter-headerAsc {
  background-image: url(../img/asc.gif);
}
table.tablesorter thead tr .tablesorter-headerDesc {
  background-image: url(../img/desc.gif);
}
table.tablesorter thead tr .tablesorter-headerDesc,
table.tablesorter thead tr .tablesorter-headerAsc {
  background-color: #ffcccc;
}
.nosorter {
  background-image: none !important;
}
#leftxt {
  text-align: left;
}

#centxt {
  text-align: center;
}

table.tablesorter .tdcolumnfixed.itemname {
  text-align: left;
  vertical-align: middle;
  background-color: #bbbbbb;
}

table.tablesorter .colorcell {
  background-color: #bbbbbb;
}

table.tablesorter tbody tr.odd td.colorcell {
  background-color: #bbbbbb;
}

.sorter-false {
  background-image: none;
}

/*-----------------------------------------------
 __store_list
-----------------------------------------------*/

#store_list {
  border: solid 1px #c8c8c8;
  width: 540px;
  height: 300px;
  margin: 0 auto;
  text-align: center;
  overflow: auto;
}

#store_listall {
  border: solid 1px #c8c8c8;
  width: 540px;
  height: 300px;
  margin: 0 auto;
  text-align: center;
  overflow: auto;
}

.store_c {
  width: 504px;
  margin: 8px 0px 0px 8px;
  text-align: left;
}
.store_clear {
  clear: both;
}
.jigyoubu_node {
  width: 490px;
  margin: 6px 0px 0px 8px;
  text-align: left;
  font-weight: 700;
}
.ten_node {
  float: left;
  width: 240px;
  margin: 6px 0px 0px 0px;
  text-align: left;
}
/* 元のチェックボックスを非表示 */
.store_checkbox {
  display: none;
}
/* チェックボックスのスタイル */
.store_checkbox + label {
  position: relative;
  padding-left: 20px;
  cursor: pointer;
  line-height: 21px;
}
.store_checkbox + label::before {
  content: "";
  position: absolute;
  left: -1px;
  top: -6px;
  height: 12px;
  width: 12px;
  border: 1px solid #949494;
  background-color: #fff;
  border-radius: 3px;
  margin: 3px 3px 3px 4px;
}
/* チェックされたときのスタイル */
.store_checkbox:checked + label::before {
  background-color: #0075ff;
}
.store_checkbox:checked + label::after {
  content: "";
  position: absolute;
  left: 7.4px;
  top: -1px;
  width: 3px;
  height: 6px;
  border: solid #dfeeff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
/* indeterminate状態のスタイル */
.store_checkbox:indeterminate + label::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 3px;
  width: 8px;
  height: 2px;
  background-color: #767676;
}

/*-----------------------------------------------
 __bumon_list
-----------------------------------------------*/

#bumon_list {
  border: solid 1px #c8c8c8;
  width: 540px;
  height: 300px;
  margin: 0 auto;
  text-align: center;
  overflow: auto;
}

.bumon_b {
  width: 504px;
  margin: 8px 0px 0px 8px;
  text-align: left;
}
.bumon_l {
  width: 490px;
  margin: 6px 0px 0px 24px;
  text-align: left;
}
.bumon_c {
  width: 480px;
  margin: 0px 0px 0px 40px;
  text-align: left;
}
.bumon_c_in {
  float: left;
  width: 240px;
  margin: 6px 0px 0px 0px;
  text-align: left;
}
.bumon_clear {
  clear: both;
}
.bumon_node {
  width: 504px;
  margin: 8px 0px 0px 8px;
  text-align: left;
  font-weight: 900;
  font-size: 15px;
}
.line_node {
  width: 490px;
  margin: 6px 0px 0px 24px;
  text-align: left;
  font-weight: 700;
}
.class_node {
  float: left;
  width: 240px;
  margin: 6px 0px 0px 0px;
  text-align: left;
}
/* 元のチェックボックスを非表示 */
.bunrui_checkbox {
  display: none;
}
/* チェックボックスのスタイル */
.bunrui_checkbox + label {
  position: relative;
  padding-left: 20px;
  cursor: pointer;
  line-height: 21px;
  display: inline-block;
}
.bunrui_checkbox + label::before {
  content: "";
  position: absolute;
  left: -1px;
  top: -1px;
  height: 12px;
  width: 12px;
  border: 1px solid #949494;
  background-color: #fff;
  border-radius: 3px;
  margin: 3px 3px 3px 4px;
}
/* チェックされたときのスタイル */
.bunrui_checkbox:checked + label::before {
  background-color: #0075ff;
}
.bunrui_checkbox:checked + label::after {
  content: "";
  position: absolute;
  left: 7.4px;
  top: 4px;
  width: 3px;
  height: 6px;
  border: solid #dfeeff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
/* indeterminate状態のスタイル */
.bunrui_checkbox:indeterminate + label::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 8px;
  width: 8px;
  height: 2px;
  background-color: #767676;
}

.line_node,
.class_node {
  /* チェックボックスのスタイル */
  .bunrui_checkbox + label {
    display: initial !important;
  }
  .bunrui_checkbox + label::before {
    top: -6px !important;
  }
  /* チェックされたときのスタイル */
  .bunrui_checkbox:checked + label::after {
    top: -1px !important;
  }
  /* indeterminate状態のスタイル */
  .bunrui_checkbox:indeterminate + label::after {
    top: 3px !important;
  }
}

/*-----------------------------------------------
 __sku_list
-----------------------------------------------*/

#sku_list {
  border: solid 1px #c8c8c8;
  width: 560px;
  height: 160px;
  margin: 0 auto;
  text-align: center;
  overflow: auto;
}

.sku {
  float: left;
  width: 520px;
  margin: 0px 0px 0px 20px;
  text-align: left;
  display: flex;
  align-items: flex-start;
  margin-bottom: 4px;
}

.sku > input[type="checkbox"] {
  margin-right: 4px;
  margin-top: 2px;
}

/* ここからが重要 */
.sku-label {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px;
  align-items: start;
}

.sku-label .sku_cd {
  white-space: nowrap;
}

.sku-label .sku_name {
  word-break: break-all;
}

/*-----------------------------------------------
 __error
-----------------------------------------------*/

.error_txt {
  border: solid 1px #ff0000;
  width: 480px;
  margin: 6px 0px 12px 20px;
  padding: 0px 16px 0px 12px;
  text-align: left;
  background-color: #ffffc0;
}

.error_ttl {
  color: red;
}

.red {
  color: red;
}

/*-----------------------------------------------
 __loading
-----------------------------------------------*/

.loading {
  text-align: center;
  color: red;
  padding: 0px 16px 0px 12px;
}

/*-----------------------------------------------
 __download-tasks
-----------------------------------------------*/

table.download-tasks {
  width: 100%;
  border-collapse: collapse;
  margin: 2em 0 0 0;
}
table.download-tasks tr th,
table.download-tasks tr td {
  padding: 5px 10px;
  border: 1px solid #ddd;
  vertical-align: middle;
}
table.download-tasks tr th {
  text-align: center;
  font-weight: bold;
  background-color: #dedede;
}
table.download-tasks tr:nth-child(n + 1):hover {
  cursor: default;
  background: #f2f2f2;
}

/*-----------------------------------------------
 tabbt
-----------------------------------------------*/

.tabbt_on {
  margin-right: 1px;
  margin-left: 1px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  text-align: center;
  display: table;
  vertical-align: middle;
  background-color: #e5e6e1;
}

.tabbt_off {
  margin-right: 1px;
  margin-left: 1px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  text-align: center;
  display: table;
  vertical-align: middle;
  background-color: #b3b4ae;
}

.tabbt a {
  width: 120px;
  display: block;
  font-size: 15px;
}

.tabbt_on span {
  color: black;
  margin-top: 7px;
  display: block;
}

.tabbt_off span {
  color: white;
  margin-top: 7px;
  display: block;
}
