@charset "utf-8";
/*
To change this license header, choose License Headers in Study Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/*
    Created on : 2019/11/26, 20:34:22
    Author     : takasaki
*/

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: inline !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc { display: none !important; }
    .sp { display :inline !important; }
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.gadget-default-w { width: 75% !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .gadget-default-w { width: 100% !important; }
}

@media print {
    .no-print {
        display: none !important;
    }
    .print-only {
        display: block !important;
    }
}
@media screen {
    .print-only {
        display: none;
    }
}

.badge{
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 400;
}

.navbar-custom {
    /*background-color: #656D78;*/
    background-color: #4FC1E9;
    color:#fff;
    border-radius:0;
    padding: 3px;
}

.navbar-custom .navbar-nav > li > a {
    color:#fff;
}
.navbar-custom .navbar-nav > .active > a, .navbar-nav > .active > a:hover, .navbar-nav > .active > a:focus {
    background-color:#fff;
    color:#000;
}
.navbar-custom .navbar-brand {
    color:#fff;
}

.wrapper{
    min-height: 100vh;
    position: relative;/*←相対位置*/
    /*padding-bottom: 120px;!*←footerの高さ*!*/
    box-sizing: border-box;/*←全て含めてmin-height:100vhに*/
}

.footer{
    width: 100%;
    text-align: center;
    /*padding: 60px 0;*/
    /*position: absolute;!*←絶対位置*!*/
    /*bottom: 0; !*下に固定*!*/
}

#page_top{
    width: 50px;
    height: 50px;
    position: fixed;
    right: 20px;
    bottom: 20px;
    /*background: #ef3f40;*/
    opacity: 0.6;
    border-radius: 10%;
    z-index:10000 ;
}
#page_top a{
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    text-decoration: none;
    z-index:10000 ;
}
#page_top a::before{
    font-weight: 900;
    /*content: '\f0d8';*/
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;
    height: 25px;
    top: -10px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
    z-index:10000 ;
}

.alert {
    position: relative;
    padding: 5px 10px ;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
}

.my-navbar {
    align-items: center;
    background: #444444;
    display: flex;
    height: 50px;
    justify-content: space-between;
    padding: 0 2%;
    margin-bottom: 3rem;
}
.my-navbar-brand {
    font-size: 18px;
}
.my-navbar-brand,
.my-navbar-item {
    color: #dddddd;
}
.my-navbar-brand:hover,
a.my-navbar-item:hover {
    color: #ffffff;
}
.modal {
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    display:none;
    z-index: 1300;        /* navbar(1201)より高く */
}
.overLay {
    position:fixed;
    top:0;
    left:0;
    background:rgba(200,200,200,0.9);
    width:100%;
    height:100%;
    z-index: 1290;        /* .modal より少し下、ヘッダーより上 */
}
.modal .inner {
    left:50%;
    transform: translateX(-50%);
    position:absolute;
    width:250px;
    background:#fff;
    padding:0;
    z-index: 1301;        /* .modal より上 */
}
@media (min-width: 768px) {
    .modal .inner {
        width:450px;
    }
}
@keyframes modal{
    0% {top:-100%}
    100% {top:50%}
}
@keyframes modalClose {
    0% {top:50%}
    100% {top:100%}
}

#result_message {
    margin-top: 2px ;
    margin-bottom: 2px ;
    /*margin: 2px;*/
    font-size: 1.0rem ;
}
.form-check-label{
    font-size: 15px;
    font-weight: 600 ;
    /*padding-top: 15px;*/
}
.form-check-input{
    /*padding-top: 15px;*/
}

.blink {
    animation: blinkAnime 2.5s alternate;
}
@keyframes blinkAnime{
    0% {
        color: #000000;
        background-color: #ffff1a;
    }
    70% {
        background-color: #6cb2eb
    }
}
@media (min-width: 767px) {
    .mainbar_fixed {
        position: sticky;
    }
    .column_title_width {
        width: 260px;
    }
}

.mainbar_content {
    margin-bottom: 100px;
}

.paginationWrap {
    display: flex;
    justify-content: center;
    margin-top: 18px;
    margin-bottom: 18px;
}

.paginationWrap ul.pagination {
    display: inline-block;
    padding: 0;
    margin: 0;
}

.paginationWrap ul.pagination li {
    display: inline;
    margin-right: 4px;
}

.paginationWrap ul.pagination li a {
    color: #656D78;
    /*color: #2f3859;*/
    padding: 8px 14px;
    text-decoration: none;
}

.paginationWrap ul.pagination li a.active {
    /*background-color: #4b90f6;*/
    background-color: #656D78;
    color: white;
    border-radius: 40px;
    width: 38px;
    height: 38px;
}

.paginationWrap ul.pagination li a:hover:not(.active) {
    background-color: #e1e7f0;
    border-radius: 40px;
}

.sm-paginationWrap {
    display: flex;
    justify-content: left;
    margin-top: 0;
    margin-bottom: 20px;
}

.sm-paginationWrap ul.pagination {
    display: inline-block;
    padding: 0;
    margin: 0;
}

.sm-paginationWrap ul.pagination li {
    display: inline;
    /*margin-right: 1px;*/
}

.sm-paginationWrap ul.pagination li a {
    color: #656D78;
    padding: 3px 7px;
    text-decoration: none;
    font-size: 10px ;
}

.sm-paginationWrap ul.pagination li a.active {
    /*background-color: #4b90f6;*/
    background-color: #656D78;
    color: white;
    border-radius: 110px;
    width: 38px;
    height: 38px;
}

.sm-paginationWrap ul.pagination li a:hover:not(.active) {
    background-color: #e1e7f0;
    border-radius: 40px;
}

html, body {
    font-size: 1.0rem;

    /*背景画像を配置したいとき*/
    /*!*!* 画像ファイルの指定 *!*!*/
    /*background-image: url(background.png);*/
    /*!* 画像を常に天地左右の中央に配置 *!*/
    /*background-position: center center;*/
    /*!* 画像をタイル状に繰り返し表示しない *!*/
    /*background-repeat: no-repeat;*/
    /*!* コンテンツの高さが画像の高さより大きい時、動かないように固定 *!*/
    /*background-attachment: fixed;*/
    /*!* 表示するコンテナの大きさに基づいて、背景画像を調整 *!*/
    /*background-size: cover;*/
    /*!* 背景画像が読み込まれる前に表示される背景のカラー *!*/
    /*background-color: #464646;*/

    margin: 0;
    padding: 0;
    height: 100%; /* 全画面を確保 */
    display: flex;
    flex-direction: column;

}

.content {
    flex: 1; /* コンテンツエリアを拡張 */
}



/*以下icarnationで使用するもの*/
.diagram_highlight {
    box-shadow: 0 0 12px red;
}

.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
    -moz-appearance:textfield;
}

.import_setting_table {
    width: 100%;
    table-layout: fixed;
}

.import_setting_table td {
    /*word-break: break-all;*/
    overflow-wrap : break-word;
}

/*一覧画面の並び替え矢印（晋平氏）*/
.btn-order{
    padding: 0px 3px;
    margin-bottom: 1px;
    background-color: #ced4da!important;
    border: 1px solid #ced4da;
    border-radius: .2rem;
    font-size: 0.7rem ;
}
.btn-order:disabled{
    color: #495057!important;
    background-color: #ffed4a!important;
    border: 1px solid #ced4da;
}

/********************************************************/
/*//bootstrap5にしてから追加 2022-10-19以降*/
a {
  text-decoration:none;
}
html {
    scroll-behavior: auto !important;
}
.bg-pink {
    background-color: rgba(249,191,194,0.2);
}
.disabled-color {
    color: #6c757d;
    background-color: #e9ecef;
}

/*
<input type="number">のスピンボタン（上下の矢印ボタン）をCSSで非表示にする
これのスピンボタンの挙動がおかしいので一律非表示にする
*/
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance:textfield;
}

.vertical_resizable {
    display: inline-block; /* 必要に応じて変更可能 */
    /*min-height: 30px;*/
    border: 1px solid #ccc;
    padding: 10px;
    overflow: auto; /* スクロール用 */
    resize: vertical; /* 水平方向と垂直方向にサイズ変更可能 */
    box-sizing: border-box; /* サイズ計算を調整 */
}

.introjs-tooltip {
    width: 450px !important; /* ツールチップの幅を固定 */
}

.tr_gray {
    background-color: #d2d2d2;
}

/* ドロップダウンが他の要素の下に潜らないように前面に出す */
.navbar-custom {
    position: relative;   /* z-index を効かせるため */
    z-index: 1201;        /* .mainbar_fixed(1100) より高く */
}

.navbar-custom .dropdown-menu {
    z-index: 1202;        /* ナビ本体より更に前面へ */
}

/* ===== Tabs as Button (solid & strong) ===== */
.nav-tabs.tab-as-button {
    gap: .25rem;
}

.mainbar_fixed {
    z-index: 1100 !important; /* 既存のinline z-indexより上に */
    background: #ffffff;      /* 背景を敷いて重なり時の透過防止 */
}
/* --- 追加：ハンバーガーメニュー幅では mainbar を一段下げる --- */
@media (max-width: 991.98px) {
    .mainbar_fixed {
        z-index: 900 !important;  /* navbar(1201) より十分下げる */
    }
}



