@charset "UTF-8";
@import url('kosugi-local.css'); 
body {
    font-family: "Kosugi Maru", "Kosugi", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 110%;
    letter-spacing: 2px;
    flex-direction: column;
    display: flex;
    min-height: 100vh;
}

.navbar {
    --bs-navbar-color: rgba(255, 255, 255, 0.85);
    --bs-navbar-hover-color: rgba(255, 255, 255, 1);
    --bs-navbar-active-color: #fff;
}


.nav-tabs .nav-link {
    font-weight: bold;
    font-size: 1.1em;
    color: #6c757d;
    --bs-nav-tabs-link-hover-border-color: royalblue;
}

.nav-tabs .nav-link.active {
    font-weight: bold;
    border-bottom-width: 3px;
}


.contact-link {
    transition: all 0.3s ease;
}

.contact-link:hover {
    color: #0d6efd !important; /* Bootstrapのプライマリーカラー */
    text-decoration: underline !important;
}

.alert-info {
    --bs-alert-bg: #e9ecef;  /* gray-200 : より少し濃いグレー */
}

.bg-inverse2 {
    background-color: #292b2c !important;
    display: block;
    font-size: 120%;
}


.imgcontainer {
    background-color: #FFF;
    margin-top: 10px;
}

.dltable {
    background-color: #f7f7f7;
    margin-bottom : 20px;
    padding-bottom: 20px;
}


.imgcontainer img { 
    object-fit: cover;
}

[name='dl'] {
    margin-left:8px;
}


[name='dltable'] table{
	margin: 0 auto;
	padding: 0;
	border-bottom: 2px solid #292B2C;
}
[name='dltable'] table td{
	text-align: center;
	border: 1px solid #CCCCCC;	
	vertical-align: middle;
}
[name='dltable'] table th{
	border: 1px solid #CCCCCC;	
	text-align:center;
    vertical-align: middle;
    background-color:lavender;
}


[name='dltable'] .table-mobile-responsive td:before {
    position: relative;
    padding-right: 15%;
}

[name='dltable'] .table-mobile-responsive td {
    padding-top:1.0rem;
    padding-bottom:1.0rem;
}

[name='dltable'] .btn:hover {
    background-color: #75A9FF;
}

[name='dltable'] .btn:active {
   background-color: #4689FF;
}



.toast-body {
  _background-color: whitesmoke;
  width: 90%;
}

.toast-body span{
  font-size: 1.2rem;
}

.toast-container {
  z-index: 2000;
}

#loading {
 background: rgba(0, 0, 0, .5);
 z-index: 10;
}


.modal-dialog { 
    max-width: 880px;
    width: auto !important;
}

#user-header .dropdown-toggle::after {
    vertical-align: 0.1em;
    font-size: 1.9rem;
}


/* フォーム要素のフォーカス時、太い線を削除 */
.form-select:focus,
.form-control:focus,
.accordion-button:focus {
    box-shadow: none;
    border-color: #86b7fe;
}

.form-check-input {
    --bs-border-color: dimgray;
}

#loading {
   background: rgba(0, 0, 0, .5);
   z-index: 10000;
}

.btn-tertiary {
    --bs-btn-color: #000000;
    --bs-btn-bg: RGBA(1, 104, 183, 0.6);
    --bs-btn-border-color: RGBA(1, 104, 183, .6);
    
    --bs-btn-hover-color: #FFF;
    --bs-btn-hover-bg: RGBA(1, 104, 183, 0.8);
    --bs-btn-hover-border-color: RGBA(1, 104, 183, 0.8);
    
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    
    --bs-btn-active-color: #FFF;
    --bs-btn-active-bg: RGBA(1, 104, 183, 1);
    --bs-btn-active-border-color: RGBA(1, 104, 183, 1);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    
    --bs-btn-disabled-color: #000000;
    --bs-btn-disabled-bg: RGBA(1, 104, 183, 0.4);
    --bs-btn-disabled-border-color: RGBA(1, 104, 183, 0.4);
}


.btn-outline-tertiary {
    --bs-btn-color: RGBA(1, 104, 183, 1);
    --bs-btn-border-color: RGBA(1, 104, 183, 0.6);
    --bs-btn-hover-color: #FFF;
    --bs-btn-hover-bg: RGBA(1, 104, 183, 0.8);
    --bs-btn-hover-border-color: RGBA(1, 104, 183, 0.8);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #FFF;
    --bs-btn-active-bg: RGBA(1, 104, 183, 1);
    --bs-btn-active-border-color: RGBA(1, 104, 183, 1);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000000;
    --bs-btn-disabled-bg: RGBA(1, 104, 183, 0.4);
    --bs-btn-disabled-border-color: RGBA(1, 104, 183, 0.4);
    --bs-gradient: none;
}

/* クリアボタン用 (#9046db 紫) */
.btn-outline-clear {
    --bs-btn-color: #9046db;
    --bs-btn-border-color: rgba(144, 70, 219, 0.6);
    --bs-btn-hover-color: #FFF;
    --bs-btn-hover-bg: rgba(144, 70, 219, 0.8);
    --bs-btn-hover-border-color: rgba(144, 70, 219, 0.8);
    --bs-btn-focus-shadow-rgb: 144, 70, 219;
    --bs-btn-active-color: #FFF;
    --bs-btn-active-bg: #9046db;
    --bs-btn-active-border-color: #9046db;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000000;
    --bs-btn-disabled-bg: rgba(144, 70, 219, 0.4);
    --bs-btn-disabled-border-color: rgba(144, 70, 219, 0.4);
    --bs-gradient: none;
}

/* text-warning より濃い警告色（タイムアウト用） */
.text-warning-dark {
    color: #b8860b !important;  /* DarkGoldenrod */
}

/* あおり照合ボタン用 (#01242b ダークティール) */
.btn-outline-cmp {
    --bs-btn-color: #01242b;
    --bs-btn-border-color: #01242b;
    --bs-btn-hover-color: #FFF;
    --bs-btn-hover-bg: #01242b;
    --bs-btn-hover-border-color: #01242b;
    --bs-btn-focus-shadow-rgb: 1, 36, 43;
    --bs-btn-active-color: #FFF;
    --bs-btn-active-bg: #011a1f;
    --bs-btn-active-border-color: #011a1f;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #01242b;
    --bs-btn-disabled-border-color: #01242b;
    --bs-gradient: none;
}

/* PDF照合ボタン用 (水色系 #3d8eb3) */
.btn-pdf {
    --bs-btn-color: #FFF;
    --bs-btn-bg: #3d8eb3;
    --bs-btn-border-color: #3d8eb3;
    --bs-btn-hover-color: #FFF;
    --bs-btn-hover-bg: #2d7a9e;
    --bs-btn-hover-border-color: #2d7a9e;
    --bs-btn-focus-shadow-rgb: 61, 142, 179;
    --bs-btn-active-color: #FFF;
    --bs-btn-active-bg: #1d6a8e;
    --bs-btn-active-border-color: #1d6a8e;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #FFF;
    --bs-btn-disabled-bg: #a3d4e8;
    --bs-btn-disabled-border-color: #a3d4e8;
}

/* 説明・メモ共通スタイル */
.description-container,
.memo-container,
.public-memo-container {
    display: flex;
    align-items: center;
    min-height: 32px;
}

.description-label,
.memo-label,
.public-memo-label {
    font-size: 0.95rem;
    font-weight: bold;
    white-space: nowrap;
    min-width: 80px;
}

.description-label {
    color: #6f42c1;
}

.memo-label {
    color: #495057;
}

.public-memo-label {
    color: #1e7e34;
}

.description-text,
.memo-text,
.public-memo-text {
    font-size: 0.95rem;
    word-break: break-word;
    overflow-wrap: break-word;
}

.description-text {
    color: #6f42c1;
}

.memo-text {
    color: #495057;
}

.public-memo-text {
    color: #1e7e34;
}

.description-edit,
.memo-edit,
.public-memo-edit {
    width: 100%;
}

.description-edit .input-group,
.memo-edit .input-group,
.public-memo-edit .input-group {
    flex-wrap: nowrap;
}

.description-edit .description-input,
.memo-edit .memo-input,
.public-memo-edit .public-memo-input {
    flex: 1;
    min-width: 300px;
}

.btn-outline-purple {
    --bs-btn-color: #6f42c1;
    --bs-btn-border-color: #6f42c1;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #6f42c1;
    --bs-btn-hover-border-color: #6f42c1;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #5a32a3;
    --bs-btn-active-border-color: #5a32a3;
}

.btn-outline-dark-green {
    --bs-btn-color: #1e7e34;
    --bs-btn-border-color: #1e7e34;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #1e7e34;
    --bs-btn-hover-border-color: #1e7e34;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #155724;
    --bs-btn-active-border-color: #155724;
}

/* いいね用カラー */
.text-like {
    color: #e32fd4 !important;
}

/* 深いグレーのボタン（PDF表示、Excel表示、照合結果表示用） */
.btn-outline-dark-gray {
    --bs-btn-color: #495057;
    --bs-btn-border-color: #495057;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #495057;
    --bs-btn-hover-border-color: #495057;
    --bs-btn-focus-shadow-rgb: 73, 80, 87;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #343a40;
    --bs-btn-active-border-color: #343a40;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #495057;
    --bs-btn-disabled-border-color: #495057;
    --bs-gradient: none;
}

/* 会社選択ボタン（基準色：グレー） */
.btn-company-select {
    border: 1px solid #6c757d;
    border-radius: 0;
    padding: 5px 15px;
    transition: all 0.3s ease;
    font-size:1rem;
}

.btn-company-select:focus {
    _outline: none;
    _box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.25);
}

/* 選択状態：深いグレー＋チェックアイコン表示＋クリック不可 */
.btn-company-select:not(.inactive) {
    background-color: #797c7f;
    border-color: #343a40;
    color: #fff;
    pointer-events: none;
    cursor: default;
}

.btn-company-select.inactive::after {
    content: ' ×';
}

.btn-company-select:not(.inactive)::after {
    content: ' ○';
}

/* 非選択状態：浅いグレー＋アイコン非表示 */
.btn-company-select.inactive {
    background-color: #adb5bd;
    border-color: #adb5bd;
    color: #fff;
}

