
    /* ■■■■ コンテナ 系 ■■■■*/


    .base-blade-main {
      font-size: 1.4rem;
    }



    .container{
      margin: 0 auto;
      padding: 0 0.2rem;
    }

    /* コンテナの最大幅 */
    /* 画面サイズが768px以上の場合の設定（タブレット以上） */
    @media (min-width: 768px) {
      .container {
        max-width: 768px !important;
      }
    }

    .container-normal {
      padding-top: 0.3rem;
      padding-bottom: 4rem;
    }




        






    /* ■■■■■■■■■■■■■■■■ パンクズ ■■■■■■■■■■■■■■■■ */

    .breadcrumb{
      display: flex;
      flex-wrap: wrap;

      overflow-x: auto; /* 横スクロールを追加 */
      white-space: nowrap; /* テキストが折り返さないようにする */
    }
    .breadcrumb-item a{
      text-decoration: underline;
    }








    /* ■■■■■■■■■■■■■■■■ ハンバーガー ■■■■■■■■■■■■■■■■ */

    /* ■ハンバーガーボタン */
    .menu-toggle {
      background-color: #0097b2; /* 背景色を#0097b2に設定 */
      color: white; /* テキスト色を白に設定 */
      border: none; /* ボーダーを消去 */
      padding: 5px; /* ボタンのパディングを設定 */
      cursor: pointer; /* カーソルをポインターに設定 */

      padding: 0.3rem 0.6rem;
      font-size: 1.5rem;
    }

    .menu-toggle:hover{
      opacity:0.7;
      transition:0.2s;
      -webkit-transition:0.2s;
      -moz-transition:0.2s;
      -ms-transition:0.2s;
      -o-transition:0.2s;
    }

    /* ■ハンバーガー 降りてくる部分 */
    .menu1 {
      display: none;
      position: absolute;
      top: 40px; /* メニューアイコンの位置に合わせる */
      left: 0;
      width: 100%;
      z-index: 1000;
    }

    .menu1 ul {
      list-style: none;
      padding: 0;
    }

    .menu1 ul li {
      /* padding: 10px; */
      padding: 3px;
      padding-left: 10px;
    }

    .menu1 ul li a {
      text-decoration: none;
      /* color: #333; */
    }

    /* .content {
      padding: 20px;
    } */









    /* ■■■■■■■■■■■■■■■■ テーブル ■■■■■■■■■■■■■■■■ */

    /* テーブル 全般     */
    table {
      border-collapse: collapse;
      width: 100%;
    }
    table a{
      text-decoration: underline;
    }

    th, td {
      border: 1px solid black;
      padding: 0.2rem;
      text-align: left;
      word-break:break-all;
    }





    /* ■■■ result テーブル ■■■*/

    .search-result-table{
      margin: 1rem auto;
    }
    .search-result-table td,
    .search-result-table th{
      border: 1px solid dimgray;
    }




    /* ■■■ detail テーブル ■■■*/

    .search-detail-table{
      margin: 1rem auto;
    }
    .search-detail-table td,
    .search-detail-table th{
      border: 1px solid dimgray;
    }
    .search-detail-table th{
      width: 3.5em;
/* color: dimgray; */
    }

    /* タブレット以上は <th> の横幅制限を解除 */
    /* 左側の最大文字幅に合わせる */
    @media (min-width: 768px) {
      .search-detail-table th {
        /* width: auto; */
        /* width: 0; */
        min-width: 6em;
        white-space: nowrap;
        padding: 0 0.4rem; 
      }
    }


    /* ■ detail 説明エリア ■ */
    /* mypage でも流用 */

    .initially-mobile-description-table {
      margin-top: 2rem;
    }

    .initially-mobile-description-table th {
      text-align: center;
/* color: dimgray; */
    }

    .initially-mobile-description-table .required {
      color: red;
      font-size: 1rem;
    }

    .pc-description-tr {
      display: none;
    }

    /* タブレット以上 */
    @media (min-width: 768px) {

      .initially-mobile-description-table {
        /* display: none; */
      }

      .pc-description-tr {
        display: table-row;
      }

    }



    /* ■■■ detail img テーブル ■■*/

    .detail-img-table {
      margin-top: 3rem; 
      /* width:100%; */
    }
    .detail-img-table th{
      text-align: center;
/* color: dimgray; */
    }
    .detail-img-table img{
      max-width: 100%;
      display: block;
      margin: 0 auto;
    }

    /* ■■■ detail img テーブル 横並び ■■*/
    /* .detail-img-table-beside {
      width:100%;
      margin-top: 3rem; 
    }
    .detail-img-table-beside th{
      text-align: center;
    } */









    /* ■■■■■■■■■■■■■■■■ フォーム ■■■■■■■■■■■■■■■■ */

    input[type="text"], input[type="email"], input[type="password"], textarea {
      width: 100%;
      padding: 0;
    }





    /* ■■■ qs フォーム ■■*/

    .label-form {
      display: flex;
      justify-content: space-between; 
      align-items: center;     /* アイテムを垂直方向に中央揃え */
    }
    
    .qs-form{
      margin-top: 1.5rem;
    }
    .qs-form label{
      font-weight: bold;
      margin-right: 0.5rem;
      color: dimgray;
    }
    #compe_kind {
      white-space: nowrap; /* テキストが折り返されないようにする */
      overflow: hidden; /* コンテンツがはみ出た場合に隠す */
      text-overflow: ellipsis; /* はみ出たテキストに省略記号を表示 */
      width: 200px; /* 必要に応じて幅を調整 */
    }

    .qs-form select{
      margin-bottom: 0.5rem;
    }
    .qs-form button{
      color: white;
      background-color: #0097b2;
      border: none;
      padding: 0.5rem 1rem;
      margin: 0.8rem auto;
      cursor: pointer;
    }
    .qs-form button:hover{
      opacity: 0.8;
    }
    
    




    /* ■■■■■■■■■■■■■■■■ ボタン ■■■■■■■■■■■■■■■■ */

    /* 検索 クリア ボタン */
    .button-search-clear{
      margin-top: 1rem;
      display: flex;
    }
    /* .button-search-clear button:nth-of-type(2) {
      margin-left: 2rem;
    } */
    
    
    /* ■ボタン */
    button {
      background-color: initial;
      border: 1px solid gray;
      padding: 8px 12px;
      cursor: pointer;
    }
    button:hover{
      opacity:0.7;
      transition:0.2s;
      -webkit-transition:0.2s;
      -moz-transition:0.2s;
      -ms-transition:0.2s;
      -o-transition:0.2s;
    }





    /* ■■■■■■■■■■■■■■■■ asのアンカー ■■■■■■■■■■■■■■■■ */


    .as-anchor {
      margin-top: 0.5rem;
    }

    .as-anchor a{
      text-decoration: underline;
    }

    .as-anchor button{
      margin-top: 1rem;
    }
    .anchor_description{
      font-size: 1.2rem;
      color: #0097b2;
    }






    /* ■■■■■■■■■■■■■■■■ アンカー セレクト ■■■■■■■■■■■■■■■■ */


    .dropdown-container {
      position: relative;
      display: inline-block;
    }
    .dropdown-content {
        display: none;
        position: absolute;
        background-color: #f9f9f9;
        min-width: 160px;
        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
        z-index: 1;
    }
    .dropdown-content a {
        color: black;
        padding: 2px 2px;
        text-decoration: none;
        display: block;
    }
    .dropdown-content a:hover {
        background-color: #f1f1f1;
    }
    .dropdown-container:hover .dropdown-content {
        display: block;
    }
    .disabled-link {
        color: silver;
        padding: 2px 2px;
        display: block;
    }






    /* ■■■■■■■■■■■■■■■■ その他 小物 ■■■■■■■■■■■■■■■■ */


    /* 検索結果 */
    .search-result {
      margin: 3rem auto;
    }



    /* デフォルトでは <br> を表示する */
    .mobile-br {
      display: inline;
    }

    /* タブレット以上の画面サイズで <br> を非表示にする */
    @media (min-width: 768px) {
      .mobile-br {
        display: none;
      }
    }








    /* ■■■■■■■■■■■■■■■■各ページ■■■■■■■■■■■■■■■■ */

    /* ＴＯＰぺージ */
    .top-purpose li{
      font-size: 1.8rem;
      padding-left: 0.5rem;
      margin-top: 0.5rem;
    }


    /* 検索ページ のスペース */
    .search-index-as-index-space {
      height: 10rem;
    }
    /* .search-index-as-as-space {
      height: 1rem;
    } */



    /* ■ プライバシーポリシー ページ*/

    .privacy-policy {
      font-family: Arial, sans-serif;
      font-size: 1rem !important;
      line-height: 1.6;
      margin: 0;
      padding: 0;
      padding: 20px;
    }

    .privacy-policy  h2{
      font-weight: bold;
      margin-top: 2rem;
    }

    .privacy-policy ul {
      padding-left: 20px; /* デフォルトのインデントを設定 */
      margin-left: 0; /* デフォルトのマージンをリセット */
      list-style-type: disc !important;
    }






    /* ■■■■■■■■■■■■■■■■ マイページ ■■■■■■■■■■■■■■■■ */

/* .mypage-table td {
  width:15rem;
  max-width: 15rem;
} */



    .mypage-table {
      margin-top: 1.5rem;
/* overflow: hidden; */
    }
    .mypage-table th {
      min-width: 3.5em;
      width: 3.5em;
    }
    .mypage-table td {
      padding-top: 0.5em;
      padding-bottom: 0.5em;
    }
    .mypage-table input{
      font-size: 1.5rem;
    }
    .mypage-table .required {
      color: red;
      font-size: 1rem;
    }


    /* タブレット以上は <th> の横幅制限を解除 */
    /* 左側の最大文字幅に合わせる */
    @media (min-width: 768px) {
      .mypage-table th {
        /* width: 0; */
        /* width: auto; */
        min-width: 6em;
        white-space: nowrap;
        padding: 0 0.4rem; 
      }
    }


    .mypage-top-table button {
      display: block;
      margin: 0 auto ;
    }

    .mypage-top-table td {
      padding-top: 0.5em;
      padding-bottom: 0.5em;
    }






  .radio-disabled {
      color: #d3d3d3; /* 薄いグレーのテキスト色 */
      cursor: not-allowed; /* グレーアウト時にマウスカーソルを変更 */
  }
  .radio-disabled input {
      accent-color: #d3d3d3; /* 薄いグレーのチェックボックス色 */
  }


