@charset "UTF-8";

/*==Noto Sans JP==*/
/*Thin*/
@font-face {
  font-family: 'Noto Sans JP';
  src: url('../font/Noto_Sans_JP/NotoSansJP-Thin.otf') format('opentype');
    font-weight: 100;
    font-style: normal;
}

/*Light*/
@font-face {
  font-family: 'Noto Sans JP';
  src: url('../font/Noto_Sans_JP/NotoSansJP-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
}

/*Regular*/
@font-face {
  font-family: 'Noto Sans JP';
  src: url('../font/Noto_Sans_JP/NotoSansJP-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

/*Midium*/
@font-face {
  font-family: 'Noto Sans JP';
  src: url('../font/Noto_Sans_JP/NotoSansJP-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
}

/*Bold*/
@font-face {
  font-family: 'Noto Sans JP';
  src: url('../font/Noto_Sans_JP/NotoSansJP-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

/*Black*/
@font-face {
  font-family: 'Noto Sans JP';
  src: url('../font/Noto_Sans_JP/NotoSansJP-Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
}

body {
  font-family: "Noto Sans JP" ;
}

/* エラーメッセージ用 */
strong.field-error-message {
    display:block;
    white-space: pre-wrap;
}

span.error-message {
    white-space: pre-wrap;
    text-align: center;
}

/* ソート用のボタン */
button.sort-button {
    border-width: 0;
    padding: 0;
    background: inherit;
}

/* 画面上部のメッセージで改行 */
div.alert li {
    white-space: pre-wrap;
}

/* 画面上部に表示されるエラー dangerと同じ */
.alert-error {
    --bs-alert-color: #842029;
    --bs-alert-bg: #f8d7da;
    --bs-alert-border-color: #f5c2c7;
}

/* fileを囲む枠(コントロールのサイズを規定する) */
div.upload-file-wrapper {
    position: relative;
    padding:0;
    display:flex;
}

/* フォーカス時の枠線 */
div.upload-file-wrapper.focus {
    color: #212529;
    background-color: #fff;
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

/* fileを透明にする */
input.upload-file-input {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

input.upload-file-input:enabled {
    cursor: pointer;
}

/* Chrome風のタイトル */
span.upload-file-label {
    padding: 0.375rem 0.75rem;
    background-color: #e7ecf0;
    white-space: nowrap;
    height: 100%;
}

/* ファイル名を表示するエリア */
span.upload-file-name {
    padding: 0.375rem 0.75rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow:ellipsis;
    min-width: 0px;
    flex-grow: 1;
}

/* input-groupが2重になったときに改行させない対応 */
.upload-file-group {
  flex-wrap:nowrap;
}

/* ホバー時の色 */
span.upload-file-label.hover {
    background-color: #d6dee5;
}

/** 非活性時の見た目 */
div.upload-file-group.disabled span.upload-file-label {
    color: #a9b0b7;
}

div.upload-file-group.disabled span.upload-file-name {
    color: #a9b0b7;
}

div.upload-file-group {
    width: initial;
    flex: auto;
    max-width:100%;
}

/* モーダルのformの高さ設定(スクロールに必要) */
form.modal-form {
    height: 100%;
}

/* form-selectがついていると見切れるので打ち消す */
.form-select.modal-page-size{
    width: inherit;
}

/*　表示中のページ */
li.active a.page-link {
  pointer-events: none;
}