
.col-category { width: 6%; }
.col-name { width: 14%; }
.col-address { width: 18%; }
.col-tel { width: 9%; }
.col-provide { width: 12%; }
.col-time { width: 6%; }
.col-area { width: 12%; }
.col-web { width: 4%; text-align: center; }
.col-token { width: 10%; }
.col-updated { width: 10%; }
.col-actions { width: 8%; }
/* ==========================================================
   page-care_services.css
   介護保険サービスページ専用（列幅の調整だけ）
   ========================================================== */

/* ---- テーブル基本 ---- */
.fg-table {
    table-layout: fixed;
    width: 100%;
}

/* ==========================================================
   ▼ 未ログイン（一般公開）
   ※ 1〜3列目（id, token, next_update）は非表示だが DOM に存在
   ========================================================== */

/* 5: カテゴリ */
body:not(.admin-mode) .fg-table th:nth-child(5),
body:not(.admin-mode) .fg-table td:nth-child(5) {
    width: 6%;
}

/* 6: 事業所名 */
body:not(.admin-mode) .fg-table th:nth-child(6),
body:not(.admin-mode) .fg-table td:nth-child(6) {
    width: 13%;
}

/* 7: 住所 */
body:not(.admin-mode) .fg-table th:nth-child(7),
body:not(.admin-mode) .fg-table td:nth-child(7) {
    width: 10%;
}

/* 8: TEL */
body:not(.admin-mode) .fg-table th:nth-child(8),
body:not(.admin-mode) .fg-table td:nth-child(8) {
    width: 10%;
}

/* 9: 提供内容 */
body:not(.admin-mode) .fg-table th:nth-child(9),
body:not(.admin-mode) .fg-table td:nth-child(9) {
    width: 13%;
}

/* 10: 曜日 */
body:not(.admin-mode) .fg-table th:nth-child(10),
body:not(.admin-mode) .fg-table td:nth-child(10) {
    width: 8%;
}

/* 11: 対応エリア */
body:not(.admin-mode) .fg-table th:nth-child(11),
body:not(.admin-mode) .fg-table td:nth-child(11) {
    width: 12%;
}

/* 12: 備考 */
body:not(.admin-mode) .fg-table th:nth-child(12),
body:not(.admin-mode) .fg-table td:nth-child(12) {
    width: 7%;
}

/* 13: WEB */
body:not(.admin-mode) .fg-table th:nth-child(13),
body:not(.admin-mode) .fg-table td:nth-child(13) {
    width: 4%;
}



/* ==========================================================
   ▼ 管理者モード（admin-mode）
   ========================================================== */

/* 1: ID */
body.admin-mode .fg-table th:nth-child(1),
body.admin-mode .fg-table td:nth-child(1) {
    width: 5%;
}

/* 2: トークン */
body.admin-mode .fg-table th:nth-child(2),
body.admin-mode .fg-table td:nth-child(2) {
    width: 8%;
}

/* 3: 更新日 */
body.admin-mode .fg-table th:nth-child(3),
body.admin-mode .fg-table td:nth-child(3) {
    width: 8%;
}

/* 4: カテゴリ */
body.admin-mode .fg-table th:nth-child(4),
body.admin-mode .fg-table td:nth-child(4) {
    width: 5%;
}

/* 5: 事業所名 */
body.admin-mode .fg-table th:nth-child(5),
body.admin-mode .fg-table td:nth-child(5) {
    width: 16%;
}

/* 6: 住所 */
body.admin-mode .fg-table th:nth-child(6),
body.admin-mode .fg-table td:nth-child(6) {
    width: 10%;
}

/* 7: TEL */
body.admin-mode .fg-table th:nth-child(7),
body.admin-mode .fg-table td:nth-child(7) {
    width: 8%;
}

/* 8: 提供内容 */
body.admin-mode .fg-table th:nth-child(8),
body.admin-mode .fg-table td:nth-child(8) {
    width: 10%;
}

/* 9: 曜日 */
body.admin-mode .fg-table th:nth-child(9),
body.admin-mode .fg-table td:nth-child(9) {
    width: 7%;
}

/* 10: 対応エリア */
body.admin-mode .fg-table th:nth-child(10),
body.admin-mode .fg-table td:nth-child(10) {
    width: 12%;
}

/* 11: 備考 */
body.admin-mode .fg-table th:nth-child(11),
body.admin-mode .fg-table td:nth-child(11) {
    width: 5%;
}

/* 12: WEB */
body.admin-mode .fg-table th:nth-child(12),
body.admin-mode .fg-table td:nth-child(12) {
    width: 4%;
}

/*モーダル*/
/* =============================================
   モーダル共通デザイン
============================================= */

.fg-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.35);
    justify-content: center;
    align-items: center;
    z-index: 999;
}

.fg-modal.open {
    display: flex;
}

.fg-modal-content {
    background: #fff;
    width: 540px;
    padding: 28px 32px;
    border-radius: 12px;
    border: 1px solid #dadada;
    box-shadow: 0px 4px 16px rgba(0,0,0,0.08);

    /* ← これ超重要！！ */
    max-height: 80vh;
    overflow-y: auto;
}

.fg-modal-title {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 24px;
    color: #333;
}

.fg-modal-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.fg-modal-row label {
    width: 120px;
    font-size: 13px;
    font-weight: bold;
    color: #555;
    text-align: right;
}

.fg-modal-row input,
.fg-modal-row textarea,
.fg-modal-row select {
    flex: 1;
    padding: 8px 10px;
    font-size: 14px;
    background: #fafafa;
    border: 1px solid #ccc;
    border-radius: 6px;
    transition: border-color 0.2s, background 0.2s;
}

.fg-modal-row textarea {
    height: 80px;
    resize: vertical;
}

.fg-modal-buttons {
    margin-top: 24px;
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

.fg-modal-buttons button {
    flex: 1;
    padding: 8px 0;
    font-size: 14px;
    border-radius: 6px;
    border: 1px solid #bbb;
    background: #f7f7f7;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
}

.fg-btn-save {
    background: #dfefff;
    border-color: #8fb6ff;
}

.fg-btn-delete {
    background: #ffe0e0;
    border-color: #ff9999;
}


/* ===== ページ全体のコンテナ ===== */
/* ===== コンテナ幅を画面いっぱいに ===== */
.fg-container {
    width: 100%;
    max-width: none !important; /* ← これが最重要 */
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* ===== テーブルは画面いっぱいに広げる ===== */
.fg-table {
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* ツールチップベース */


/*上に戻るボタン*/
#backToTop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: #000000;
    color: #ffffff;
    font-size: 22px;
    cursor: pointer;
    display: none; /* 最初は非表示 */
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
    opacity: 0; /* ← ここ重要 */
    transition: opacity 0.3s ease;
}

#backToTop:hover {
    background-color: #ffffff;
    color: #000000;
}
.admin-actions button {
    padding: 4px 8px;
    margin-right: 5px;
    font-size: 0.8em;
    cursor: pointer;
}

.admin-actions button:hover {
    opacity: 0.8;
}
td[data-key="provide"],
td[data-key="weekday"],
td[data-key="range_area"],
td[data-key="memo"] {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}

/* モーダル内の行を完全に非表示にする */
.fg-modal-row.hidden-field {
    display: none !important;
}