@charset "UTF-8";
/* body{
    margin: 0;
    padding-top: 0px !important;
} */

/* 横幅 */
.mw-1000{
    max-width: 1000px;
}
.mw-700{
    max-width: 700px;
}
.mw-630{
    max-width: 630px;
}
.mw-650{
    max-width: 650px;
}
.mw-170{
    max-width: 170px;
}
.mw-150{
    max-width: 150px;
}


.btn{
    max-width: 300px;
    width: 100%;
    margin-left: auto;
}

/*tbodyのCSS*/
.labo-table tbody,
.labo-table tbody tr,
.labo-table tbody td{
    border: none !important;
    border-bottom: none !important;
}


/* text-align */
.txt-center{
    text-align: center;
}

.no-margin{
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.margin-150{
    margin: 150px auto;
}

/* margin-top */
.mt-6{
    margin-top: 2rem !important;
}
.mt-50{
    margin-top: 50px !important;
}
.mt-70{
    margin-top: 70px !important;
}
.mt-100{
    margin-top: 100px !important;
}
.mt-150{
    margin-top: 150px !important;
}
.mt-200{
    margin-top: 200px !important;
}
.mt-300{
    margin-top: 300px !important;
}

/* margin-bottom */
.mb-100{
    margin-bottom: 100px !important;
}
.mb-150{
    margin-bottom: 150px !important;
}
.mb-200{
    margin-bottom: 200px !important;
}
.mb-300{
    margin-bottom: 300px !important;
}

.case-selection {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.case-option {
  flex: 1 1 0;
  text-align: center;
  cursor: pointer;
  border-radius: 6px;
  transition: 0.3s ease all;
}

.case-img {
  width: 100%;
  height: auto;
  border: 2px solid transparent;
  border-radius: 8px;
  transition: 0.3s ease all;
}

.case-option input:checked + .case-img,
.case-option input:checked ~ .case-img {
  border-color: #007bff;
  box-shadow: 0 0 10px rgba(0, 123, 255, 0.5);
}

/*ドロップダウンメニュー*/
.nav-item.dropdown:hover .dropdown-menu {
  display: block;
}


/*アンカー*/
.anchor{
    display: block !important;
    padding-top: 70px !important;
    margin-top: -70px !important;
}

/* 基本的な table-responsive の仕組み */
.table-responsive {
    overflow-x: auto;
  -webkit-overflow-scrolling: touch; /* iOSでスムーズスクロール */
}


@media (max-width: 991px){
    /* 横幅 */
    .mw-170{
        max-width: 155px !important;
    }
}


/* 576px未満（スマホ時のみ）適用 */
@media (max-width: 575.98px) {
    .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    }
    .table-responsive-sm > .table {
    margin-bottom: 0; /* 下余白をリセット */
    white-space: nowrap; /* セルが折り返されず横に並ぶ */
    }
}

@media (max-width: 500px){
    /*display*/
    .sp-d-flex-f-wrap{
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
    }
    .sp-d-none{
        display: none !important;
    }

    /* 横幅 */
    .mw-170{
        max-width: 150px !important;
    }

    /* margin-top */
    .sp-mt-100{
        margin-top: 130px !important;
    }
    .mt-150{
        margin-top: 50px !important;
    }

    /* margin-bottom */
    .sp-mb-15{
        margin-bottom: 15px !important;
    }
    .sp-mb-50{
        margin-bottom: 50px !important;
    }

    /*フォントサイズ*/
    .fs-5{
        font-size: 16px !important;
    }

    /* ナビ */
    .navbar-toggler{
        padding: 5px !important;
    }

    /* ケース画像スマホでは縦並びに */
    .case-selection {
        flex-direction: column;
    }
}





