/******************************************************************************************
 * CSS変数(これらの変数はスタイルシート全体で使用することができます)
 ******************************************************************************************/
:root {
  --clr_main: #007F41;
  --clr_sub: #52B03E;
  --clr_acc: #F7982B;
  --clr_bg: #FBFFF9;
  --clr_txt: #333333;
  --clr_blue: #0066B4;
  --fnt_txt: 'Meiryo UI', "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

/* ==================================================
  共通設定
================================================== */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
  height: 100%;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
}

body {
  font-family: var(--fnt_txt);
  font-weight: 400;
  color: var(--clr_txt);
  background-color: var(--clr_bg);
  font-feature-settings: "palt";
  letter-spacing: 0.04em;
  line-height: 1.6;
  min-height: 100%;
}

.header {
  width: 100%;
  height: 60px;
  border-top: 4px solid var(--clr_main);
  border-bottom: 4px solid var(--clr_sub);
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  padding: 1px 0;
  z-index: 100;
  display: flex;
  align-items: center;
}

header {
  height: 60px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 101;
  display: inline-flex;
  align-items: center;
}

header .header_logo {
  width: 100px;
  margin-left: 65px;
  z-index: 101;
}

header .header_logo img {
  width: 100%;
}

header .drawer-menu-item {
  border-bottom: 1px solid #eee;
  padding-left: 26px;
}

header .drawer-menu-item:hover {
  text-decoration: none;
}

header .drawer-menu-item:first-child {
  border-top: 1px solid #eee;
}

header .drawer-menu-item .btn_icon {
  margin-right: 16px;
  color: var(--clr_main);
}

.breadcrumb {
  width: 100%;
  height: 30px;
  background-color: var(--clr_sub);
  display: flex;
  align-items: center;
  padding-left: 10px;
  border-bottom: 6px solid #52B03E;
}

.breadcrumb li {
  font-size: 14px;
  line-height: 1;
  color: #fff;
}

.breadcrumb li a {
  font-weight: 600;
}

.breadcrumb-item+.breadcrumb-item::before {
  float: left;
  padding-right: var(--bs-breadcrumb-item-padding-x);
  color: #ffffff;
  content: var(--bs-breadcrumb-divider, ">");
}

.bread>.row {
  background-color: #52B03E;
}

.breadcrumb>.breadcrumb-item span {
  color: white;
}

main {
  width: 100%;
  position: relative;
}

footer {
  width: 100%;
  height: 60px;
  background-color: var(--clr_main);
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex;
  padding: 10px;
}

footer.sticky-footer {
  padding: 0rem !important;
  z-index: 100;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
  padding-left: 0rem !important;
  padding-right: 0rem !important;
}

@media (min-width: 300px) {
  .scroll-to-top {
    position: fixed;
    right: 1rem;
    bottom: 4rem;
    display: none;
    width: 2.75rem;
    height: 2.75rem;
    text-align: center;
    color: #fff;
    background: rgba(90, 92, 105, .5);
    line-height: 46px;
    z-index: 3;
  }

  #content {
    margin-top: 70px;
    margin-bottom: 100px;
  }

  footer {
    height: 54px;
  }
}

@media (min-width: 576px) {
  .scroll-to-top {
    position: fixed;
    right: 1rem;
    bottom: 5rem;
    display: none;
    width: 2.75rem;
    height: 2.75rem;
    text-align: center;
    color: #fff;
    background: rgba(90, 92, 105, .5);
    line-height: 46px;
  }

  #content {
    margin-top: 70px;
    margin-bottom: 75px;
  }

  footer {
    height: 76px;
  }
}

@media (min-width: 768px) {
  .scroll-to-top {
    position: fixed;
    right: 1rem;
    bottom: 5rem;
    display: none;
    width: 2.8rem;
    height: 2.8rem;
    text-align: center;
    color: #fff;
    background: rgba(90, 92, 105, .5);
    line-height: 46px;
  }

  #content {
    margin-top: 70px;
    margin-bottom: 60px;
  }
}

/* 左右に少し隙間をあける */
#content_inner [class^="col-"] {
  padding-left: 2.5px;
  padding-right: 2.5px;
}

/* 画面右上バッチ */
.badge-counter {
  position: absolute !important;
  transform: scale(1.2);
  transform-origin: top right;
  left: 2.6rem;
  margin-top: .25rem;
}

/* まとめて追加ボタンのバッチ */
footer .multi_add_badge {
  display: none;
}

/* 納品設定のバッチ */
footer .delivery_config_badge {
  display: none;
}

/******************************************************************************************
 * モーダルについて
 ******************************************************************************************/
/* モーダルのタブ(未選択状態) */
.modal-tab {
  display: block;
  color: #ffffff;
}

/* モーダルのタブ(選択状態) */
.modal-tab .active {
  display: block;
  color: black;
}

/* モーダルのタブ(選択状態) */
.modal-tab:hover {
  color: black;
  background-color: #ffffff;
}

@media (min-width: 300px) {

  /* スマホサイズの場合、納品設定を下の方に表示する*/
  #delivery_config .modal-dialog {
    position: absolute;
    top: 20vh;
  }
}

/******************************************************************************************
 * 商品詳細（モーダル）
 ******************************************************************************************/
/* 表示データを枠内で改行させる */
.force-wrap {
  word-break: break-all;
}

/* モーダル表示後にタップした場合の青枠を表示しないようにする */
.modal *:focus {
  outline: none;
}


/******************************************************************************************
 * waiting
 ******************************************************************************************/
#waiting {
  display: table;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #FFFFFF;
  opacity: 0.8;
  z-index: 2001;
}

#waiting .waitingMsg {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  padding-top: 140px;
  background: url(../img/waiting.gif) center center no-repeat;
}

/******************************************************************************************
 * ページング
 ******************************************************************************************/
@media (min-width: 300px) {

  /* ページング表示位置を調整する */
  .phsmos_pageing {
    margin-bottom: 55px;
  }
}

@media (min-width: 576px) {

  /* ページング表示位置を調整する */
  .phsmos_pageing {
    margin-bottom: 74px;
  }
}

/******************************************************************************************
 * 行について
 ******************************************************************************************/
/* 偶数行の行背景色 */
#content-wrapper .row:nth-child(even) .card {
  background-color: #fbfff9;
}

/* 奇数行の行背景色 */
#content-wrapper .row:nth-child(odd) .card {
  background-color: #ffffff;
}

/* 付与するとグレーアウトする */
.add_cancel {
  background-color: var(--bs-dark-border-subtle);
}

/* グレー商品の商品名リンクを無効化する(入荷検品は除く) */
.add_cancel a:not(.item-inspect) {
  pointer-events: none;
  color: inherit !important;
  text-decoration: none;
}

/* グレー商品の数量部分を通常にする */
.add_cancel .show_order_num {
  color: inherit !important;
  font-weight: normal !important;
}

/* 付与すると選択青になる */
.add_select {
  background-color: #8ec6ff;
}

/* 付与すると警告数量の色にする */
.add_num_alert {
  background-color: #FFC6A4 !important;
  padding-right: 10px !important;
  padding-left: 10px !important;
}

/* 付与すると無効紫になる */
.add_mukou {
  background-color: #b591d1;
}

/* 紫にするとグレーの文字が見づらいため */
.add_mukou span.text-truncate {
  color: #000000 !important;
}

/* 付与すると紫太字になる */
.add_purple {
  background-color: #ffff99 !important;
  color: darkred !important;
  font-weight: bold !important;
}

/* 無効クラスと紫文字は見づらいので */
.add_mukou .add_purple {
  color: #000000 !important;
}

/* 付与すると重複ピンクになる */
.add_double {
  background-color: #fa8072;
}

/* 重複ピンクにするとグレーの文字が見づらいため */
.add_double span.text-truncate {
  color: #000000 !important;
}

/* colのpaddingが邪魔な時がある */
.col_pad {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

/******************************************************************************************
 * 検索設定
 ******************************************************************************************/
/* 初期値から変更されたときの通知バッチ */
#search_term_badge {
  display: none;
}

/* 検索設定の要素の前に： */
#search_term span.term::before {
  content: "：";
}

/* 検索設定の要素の前に： */
#search_term input-group::before {
  content: "：";
}

/* 検索設定の要素の前に： */
#search_term .input-group.add_colon::before {
  content: "：";
}

/******************************************************************************************
 * おしらせ
 ******************************************************************************************/
/* 通知マークを上寄せにする */
.read_icon {
  align-self: flex-start;
}

/* 区分：警告用 */
.info_alert {
  background: var(--bs-form-invalid-border-color);
  color: var(--bs-light);
  border-style: none;
  border-radius: 7px;
}

/* 区分：注意用 */
.info_warn {
  background: var(--clr_acc);
  color: var(--bs-light);
  border-style: none;
  border-radius: 7px;
}

/* 区分：情報用 */
.info_nomal {
  background: var(--bs-blue);
  color: var(--bs-light);
  border-style: none;
  border-radius: 7px;
}

/* リンクアンダーラインを出さない */
.info_list a {
  text-decoration: none;
}

/* 通知マークと＞マークを除いたサイズ */
.info_div {
  width: calc(100% - 50px);
}

/* お知らせが既読の場合、通知マークを表示しない */
.add_read .read_icon svg {
  display: none;
}

/* 通知マーク */
.read_icon {
  max-width: 25px;
  width: 25px;
}

/******************************************************************************************
 * 商品検索
 ******************************************************************************************/
@media (min-width: 300px) {

  /* スマホサイズだと、チェックボックス分縮める */
  .row_item {
    width: calc(100% - 40px);
  }
}

@media (min-width: 576px) {

  /* スマホサイズより大きいと、チェックボックスと追加ボタン分縮める */
  .row_item {
    width: calc(100% - 105px);
    min-width: calc(100% - 105px);
  }
}

/******************************************************************************************
 * 発注履歴
 ******************************************************************************************/
/******************************************************************************************
 * 入荷検品
 ******************************************************************************************/
/* 確定済みの場合は、チェックボタンを表示しない */
.add_confirm>.check_div>.chk_item {
  display: none;
}

/* キャンセルの場合は、チェックボタンを表示しない */
.add_cancel>.check_div>.chk_item {
  display: none;
}

/* 確定済みの場合は、検品済みアイコンを表示する*/
.add_confirm>.detail_div .confirm_icon {
  display: flex;
}

/* 確定済みの場合は、検品ボタンを表示しない*/
.add_confirm>.btn_div>.btn {
  display: none;
}

/* キャンセルの場合は、検品ボタンを表示しない */
.add_cancel>.btn_div>.btn {
  display: none;
}

/* 確定済みの場合は、幅を調整する */
.add_confirm>.detail_div {
  width: calc(100% - 25px);
}

/* キャンセルの場合は、幅を調整する */
.add_cancel>.detail_div {
  width: calc(100% - 25px);
}

/* 選択の場合は、幅を調整する */
.add_select>.detail_div {
  width: calc(100% - 90px);
}

/* チェックボタン部分 */
.check_div {
  width: 25px;
  min-width: 25px;
}

/* 内容部分 */
.detail_div {
  width: calc(100% - 90px);
}

/* 検品ボタン部分 */
.btn_div {
  width: 60px;
  min-width: 60px;
}

/* 検品済アイコン */
.confirm_icon {
  display: none;
}

/******************************************************************************************
 * カート
 ******************************************************************************************/
/******************************************************************************************
 * ログイン
 ******************************************************************************************/
@media (min-width: 300px) {

  /* メンテナンス用ログイン画面のメッセージ部分 */
  #maintenance_msg {
    max-height: 40vh;
  }

  /* ログイン画面のロゴ */
  .login_logo {
    width: 270px;
  }
}

@media (min-width: 576px) {

  /* ログイン画面のロゴ */
  .login_logo {
    width: 325px;
  }
}