.p-description{
  font-weight:bolder;
  font-size:15px;
  font-family:"Open Sans";
  letter-spacing: 3px;
  line-height:30px;
}

.sample_box8 {
  padding: 6.0em 1.5em;
  background-color:#F0F1F2;/*背景色*/
  /*border:1px solid #84c1ff;/*枠線*/
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  color:#000000;/*文字色*/
  font-weight:600;
}

.sample_box8_type {
  padding: 6.0em 1.5em 5.0em 1.5em;
  background-color:#F0F1F2;/*背景色*/
  /*border:1px solid #84c1ff;/*枠線*/
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  color:#000000;/*文字色*/
  font-weight:600;
}

.sample_box88 {
  padding:3.5em 2.0em 3.5em 0.1em;
  background-color:#F0F1F2;/*背景色*/
  /*border:1px solid #84c1ff;/*枠線*/
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  color:#000000;/*文字色*/
  font-weight:600;
}



.sample_box10 {
  padding: 2.0em 3.0em;
  background-color:#F0F1F2;/*背景色*/
  /*border:1px solid #84c1ff;/*枠線*/
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  color:#000000;/*文字色*/
  font-weight:600;
}

.sample_box9 {
  background-color:white;/*背景色*/
  /*border:1px solid #84c1ff;/*枠線*/
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  color:#000000;/*文字色*/
  font-weight:600;
}
.sample_box5 {
  margin:0 0 0 0;
  padding: 0.1em 0.1em;
  border-bottom: solid 3px #004da0 ;;/*下ライン*/
  border-image: linear-gradient(to right, #17EAD9 0%, #6078EA 100%);
  border-image-slice: 1;
  font-weight:600;
  font-size:20px;
  letter-spacing: 3px;
}

.sample_box5_orange {
  margin:0 0 0 0;
  padding: 0.1em 0.1em;
  border-bottom: solid 3px orange ;;/*下ライン*/
  border-image: linear-gradient(to right, #FAD961 0%, #F76B1C 100%);
  border-image-slice: 1;
  font-weight:600;
  font-size:20px;
  letter-spacing: 3px;
}



.sample_box6 {
  padding: 0.2em 0.7em;
  letter-spacing: 1px;
  border-left: solid 5px #004da0 ;;/*左ライン*/
  color:#000000;/*文字色*/ 
  font-size:18px;
  font-family: Noto Sans JP;
}

.sample_box61 {
  padding: 0.2em 0.7em;
  letter-spacing: 1px;
  color:#000000;/*文字色*/ 
  font-size:18px;
  font-family: Noto Sans JP;
}


.sample_box66 {
  padding: 0.2em 0.7em;
  border-left: solid 5px #004da0 ;;/*左ライン*/
  color:#000000;/*文字色*/
  font-size:18px;
  transition: all 0.5s;
  font-family: Noto Sans JP;
}

.sample_box66:hover{
  border: solid 5px #004da0;

}

.sample_box666 {
  padding: 0.2em 0.7em;

  /*border-bottom: solid 5px #004da0 ;;/*左ライン*/
  color:#000000;/*文字色*/
  font-size:18px;
  font-family: Noto Sans JP;
}



.sample_box6666 {
  padding: 0.2em 0.7em;
  letter-spacing: 1px;
  color:#000000;/*文字色*/
  font-size:18px;
  font-family: Noto Sans JP;
}



.icon_green{
  color:#477650;
}

.icon_search{

  color:red;
}

.icon_location{

  color:#004da0; 
}


.icon_type{

  color:#ED6102; 
}

.a_not_decoration{
  color:black;
  text-decoration: none;
}

.a_not_only_decoration{
  text-decoration: none;
  color:#008DDE;
}

.a_not_only_decoration:link{
      color:#008DDE;
  
}

/*検索ボックス*/
.searchTopCorpInput {
  display: block;
  width: 85%;/*横幅*/
  height: 40px;
  padding: 14px 10px;
  margin: 0px 0px 0px 0px;
  font-size: 0.8rem;
  background-color:#eef1f5;
  border: 1px solid #dadee4;
  border-right: 0;
  border-radius: 3px 0 0 3px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
}


.clear-decoration {
  border: none;  /* 枠線を消す */
  outline: none; /* クリックしたときに表示される枠線を消す */
  background: transparent; /* 背景の灰色を消す */
}

.box28 {

  border: solid 3px #004da0 ;;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
}
.box28 .box-title {
  position: absolute;
  display: inline-block;
  top: -2px;
  left: -2px;
  padding: 0 9px;
  height: 25px;
  line-height: 25px;
  font-size: 17px;
  background: #004da0 ;;
  color: #ffffff;
  font-weight: bold;
}

.box29 {
  background: #E7F2FE;
  border: solid 3px #004da0 ;;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  padding:0 0 0 75px;
}
.box29 .box-title {
  position: absolute;
  display: inline-block;
  top: -2px;
  left: -2px;
  padding: 0 9px;
  height: 25px;
  line-height: 25px;
  font-size: 17px;
  background:#004da0;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  text-align:left;
}

.box30 {
  background: white;
  border: solid 3px #FF4500 ;;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  padding:0 0 0 75px;
}
.box30 .box-title {
  position: absolute;
  display: inline-block;
  top: -2px;
  left: -2px;
  padding: 0 9px;
  height: 25px;
  line-height: 25px;
  font-size: 17px;
  background:#FF4500;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  text-align:left;
}



.top-icon {
  padding: 6px 30px;
  margin: 2em 0;
  color: white;/*文字色*/
  background: #FFF;
  border: solid 3px #F06B6B;/*線*/
  border-radius: 5px;/*角の丸み*/
  cursor: pointer;
  background-color: #F06B6B;
  font-family:"Noto Sans";
  font-weight:bold;
  font-size:16px;
  
  position: absolute;
  top: 64%;
  left: 45%;
}


/*
トップページの日本地図にて画像の上にリンクをおいている
画像をrelativeで設定し、その上にリンクをabsoluteを設定
*/
.mapping {
  position: relative;
}

.kinki {
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: black;/*文字色*/
  background: #FFF;
  border: solid 3px #6091d3;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 64%;
  left: 45%;
}

.kinki:hover{
  border: solid 4px #6091d3;/*線*/
  color:white;
  background-color:#6091d3;
}

.kinki a{
  text-decoration:none;
}



.shutoken {
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color:black;/*文字色*/
  background: #FFF;
  border: solid 3px #EE90AA;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 56%;
  left: 58%;
}

.shutoken_2 {
  padding: 0.5em 0.7em;
  margin: 2em 0;
  color:black;/*文字色*/
  background: orange;
  border: solid 3px #EE90AA;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
}

.shutoken:hover{
  border: solid 4px #EE90AA;/*線*/
  color:white;
  background-color:#EE90AA;
}

.shutoken a{
  text-decoration:none;
}

/*北海道*/
.hokkaido {
  pointer-events: none;
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: rgb(184, 178, 178);/*文字色*/
  background: #FFF;
  border: solid 3px #6FC7CC;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 8%;
  left: 73%;
}

.hokkaido:hover{
  border: solid 4px #6FC7CC;/*線*/
  color:white;
  background-color: #6FC7CC;
}

.hokkaido a{
  text-decoration:none;
}


/*東北*/
.touhoku {
  pointer-events: none;
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: rgb(184, 178, 178);/*文字色*/
  background: #FFF;
  border: solid 3px #B0D000;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 32%;
  left: 67%;
}

.touhoku:hover{
  border: solid 4px #B0D000;/*線*/
  color:white;
  background-color:#B0D000;
}

.touhoku a{
  text-decoration:none;
}

/*中部*/
.tyubu {
  /* pointer-events: none; */
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: black;/*文字色*/
  background: #FFF;
  border: solid 3px #C9A365;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 47%;
  left: 50%;
}

.tyubu:hover{
  border: solid 4px #C9A365;/*線*/
  color:white;
  background-color:#C9A365;
}

.tyubu a{
  text-decoration:none;
}

/*中国*/
.tyugoku {
  pointer-events: none;
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: rgb(184, 178, 178);/*文字色*/
  background: #FFF;
  border: solid 3px #47B32D;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 58%;
  left: 27%;
}

.tyugoku:hover{
  border: solid 4px #47B32D;/*線*/
  color:white;
  background-color:#47B32D;
}

.tyugoku a{
  text-decoration:none;
}

/*四国*/
.shikoku {
  pointer-events: none;
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: rgb(184, 178, 178);/*文字色*/
  background: #FFF;
  border: solid 3px #F7BC09;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 72%;
  left: 30%;
}

.shikoku:hover{
  border: solid 4px #F7BC09;/*線*/
  color:white;
  background-color:#F7BC09;
}

.shikoku a{
  text-decoration:none;
}

/*九州・沖縄*/
.kyushu {
  padding: 0.3em 0.5em;
  margin: 2em 0;
  color: black;/*文字色*/
  background: #FFF;
  border: solid 3px #F5C1A5;/*線*/
  border-radius: 10px;/*角の丸み*/
  cursor: pointer;
  
  position: absolute;
  top: 70%;
  left: 5%;
}

.kyushu:hover{
  border: solid 4px #F5C1A5;/*線*/
  color:white;
  background-color:#F5C1A5;
}

.kyushu_okinawa a{
  text-decoration:none;
}




.a_font_size{
  font-size:12px;
}

.map-area-link--disabled {
  cursor: default;
}

.map-area-label--active {
  color: black;
  pointer-events: auto;
}

.map-area-label--inactive {
  color: rgb(184, 178, 178);
  pointer-events: none;
}

.sample_box99 {
  background-color:white;/*背景色*/
  /*border:1px solid #84c1ff;/*枠線*/
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);/*影*/
  color:#000000;/*文字色*/
  font-weight:400;

}

/*トップ画面（予定）の見出し地域版*/
.top_head1{
  background: transparent;
      position: relative;
      background-color: #f67E28;
      padding: 16px 0 16px 38px;
      font-weight: normal;
      font-size: 2.1rem;
      color: #fff;
      line-height: 1.4;
      letter-spacing: 0;
  }
/*トップ画面（予定）の見出し業種版*/
.top_head2{
background: transparent;
    position: relative;
    background-color: #00aaeb;
    padding: 16px 0 16px 38px;
    font-weight: normal;
    font-size: 2.1rem;
    color: #fff;
    line-height: 1.4;
    letter-spacing: 0;
}

label {
  font: 0.2rem 'Fira Sans', sans-serif;
  font-size:2px;
}

input {
  margin: .4rem;
}

.corporation-image {
    height: 150px;
    width:250px;
    display: flex;
  justify-content: center;
  align-items: center;
  }

.animate-link {
  text-decoration: none; /* デフォルトの下線を非表示にする */
  color:black; /* 文字色 */
  background-image: linear-gradient(90deg, red, red); /* 線の色 */
  background-repeat: no-repeat;
  background-position: left bottom; /* 線の起点を左・下に設定 */
  background-size: 0 1px; /* 線の横幅を0、縦幅を1pxに */
  transition: background-size 0.4s; /* 線を伸ばすアニメーション実行時間を指定 */
}

.animate-link:hover {
  background-size: 100% 3px; /* 線の横幅を100%にする */
}

.animate-link1 {
  text-decoration: none; /* デフォルトの下線を非表示にする */
  color:black; /* 文字色 */
  background-image: linear-gradient(90deg, #004da0 , #004da0 ); /* 線の色 */
  background-repeat: no-repeat;
  background-position: left bottom; /* 線の起点を左・下に設定 */
  background-size: 0 1px; /* 線の横幅を0、縦幅を1pxに */
  transition: background-size 0.4s; /* 線を伸ばすアニメーション実行時間を指定 */
}

.animate-link1:hover {
  background-size: 100% 3px; /* 線の横幅を100%にする */
}




/* アコーディオンメニュー */
.ac-menu:last-child {
  margin-bottom: 60px; /* 最後の要素の下にだけ余白 */
}
.ac-menu input {
  display: none;
}
.ac-menu label {
  color: black; /* 文字色 */
  font-size: 14px; /* 文字サイズ */
  line-height: 2; /* 行間 */
  font-weight: 600; /* 文字を太く */
  text-align: left; /* 文字を中央に */
  background: #EFF8FD; /* グラデーションの背景色 */
  padding: 20px; /* 内側の余白 */
  cursor: pointer;
  position: relative;
  display: block;
  border-top: solid 1px #6091d3;/*線*/
}
.ac-menu label:after {
  position: absolute;
  right: 20px; /* 左からの距離 */
  top: 50%; /* 上下中央配置 */
  -webkit-transform : translateY(-50%);
  transform : translateY(-50%);
  content: "＋"; /* アイコン */
}
.ac-menu input:checked ~ label::after {
  content: "−"; /* クリック後のアイコン */
}
.ac-menu div {
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.3s; /* 開閉スピード */
}
.ac-menu input:checked ~ div {
  height: auto;
  opacity: 1;
  padding: 20px; /* 中身の枠内の余白 */
  background: #FAFAFA; /* 中身の背景色 */
}
.ac-menu-inside {
  color: #333; /* 中身の文字色 */
  font-size: 17px; /* 中身の文字サイズ */
  line-height: 2; /* 行間 */
}


.a_on_font{

  font-size:20px;
}

.a_off_font{
  font-size:20px;
  color:rgb(184, 178, 178);
  pointer-events:none;
}

/*タブの設定*/

.tab-wrap {
  display: flex;
  flex-wrap: wrap;
  margin:20px 0;
}
.tab-wrap:after {
  content: '';
  width: 100%;
  height: 3px;
  background: #004da0;
  display: block;
  order: -1;
}
.tab-label {
  color: White;
  background: LightGray;
  font-weight: bold;
  text-shadow: 0 -1px 0 rgba(0,0,0,.2);
  white-space: nowrap;
  text-align: center;
  padding: 10px .5em;
  order: -1;
  position: relative;
  z-index: 1;
  cursor: pointer;
  border-radius: 5px 5px 0 0;
  flex: 1;
}
.tab-label:not(:last-of-type) {
  margin-right: 5px;
}
.tab-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}
/* アクティブなタブ */
.tab-switch:checked+.tab-label {
  background: #004da0;
}
.tab-switch:checked+.tab-label+.tab-content {
  height: auto;
  overflow: auto;
  padding: 15px;
  opacity: 1;
  transition: .5s opacity;
  box-shadow: 0 0 3px rgba(0,0,0,.2);
}
/* ラジオボタン非表示 */
.tab-switch {
  display: none;
}

.corporation-image-top {
  height: 150px;
  display: flex;
justify-content: center;
align-items: center;
}

.child-top {
display: flex;
justify-content: center;
align-items: center;
}

/*新着情報*/

.news-list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.news-list .item a{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333;
  border-bottom: 1px solid #CCC;
  padding: 20px 20px;
}
.news-list .item:first-child a{
  border-top: 1px solid #CCC;
}
.news-list .item .date{
  margin: 0;
  min-width: 140px;
  font-size: 16px;
  color: #999;
  padding: 0 20px 0 0;
}
.news-list .item .category1{
  margin: 0;
  min-width: 140px;
  padding: 0 20px 0 0;
}
.news-list .item .category2{
  margin: 0;
  min-width: 140px;
  padding: 0 20px 0 0;
}
.news-list .item .category3{
  margin: 0;
  min-width: 140px;
  padding: 0 20px 0 0;
}
.news-list .item .category4{
  margin: 0;
  min-width: 140px;
  padding: 0 20px 0 0;
}
.news-list .item .category1 span{
  border-radius: 4px 4px 4px 4px;
  background:#004da0;
  color: #FFF;
  text-align: center;
  display: inline-block;
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1;
}
.news-list .item .category2 span{
  border-radius: 4px 4px 4px 4px;
  background:#FF0000;
  color: #FFF;
  text-align: center;
  display: inline-block;
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1;
}
.news-list .item .category3 span{
  border-radius: 4px 4px 4px 4px;
  background: green;
  color: #FFF;
  text-align: center;
  display: inline-block;
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1;
}

.news-list .item .category4 span{
  border-radius: 4px 4px 4px 4px;
  background: #DDA146;
  color: #FFF;
  text-align: center;
  display: inline-block;
  padding: 5px 26px;
  font-size: 12px;
  line-height: 1;
}
.news-list .item .title{
  margin: 0;
  width: 100%;
}
.news-list .item a:hover .title{
  color: #004da0;
}

@media screen and (max-width: 767px){
.news-list .item a{
  flex-wrap: wrap;
}
.news-list .item .date{
  min-width: 100px;
}
.news-list .item .title{
  margin-top: 10px;
}
}

.how_to_use_content{
  padding: 3% 10% 0% 10%;


}

.how_to_use_image{
  padding: 80px 0 0 0;

}

.search-top{
  display: flex;
}

.btn-top{
  margin: 0rem 1rem;
}

/* ボタンサイズとフォントサイズの変数定義 */
:root {
    --button-height-base: 80px;
    --button-height-small: 50px;
    --button-height-medium: 55px;
    --button-height-large: 58px;
    --button-width: 90%;
    
    /* フォントサイズの変数追加 */
    --button-font-base: 13px;
    --button-font-small: 10px;
    --button-font-medium: 12px;
    --button-font-large: 17px;
    
    /* レスポンシブ用フォントサイズ */
    --button-font-mobile: 11px;
    --button-font-tablet: 12px;
    --button-font-desktop-mid: 12px;
}

/* uniform_button の基本設定 */
.uniform_button {
    min-height: var(--button-height-base);
    height: var(--button-height-base);
    width: var(--button-width) !important;
    max-width: var(--button-width) !important;
    font-size: var(--button-font-base);
    font-weight: normal;
    padding: 8px 2px !important;
    white-space: normal;
    overflow: hidden;
    transition: all 0.3s ease !important;
    position: relative;
    line-height: normal;
    
    /* 以下を追加 */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;

    background-color: #ffffff !important;
    border-radius: 5px !important;
    color: #000000 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

/* Bootstrapの.btnクラスとの競合 */
.btn.uniform_button {
    min-height: var(--button-height-base) !important;
    height: var(--button-height-base) !important;
    width: var(--button-width) !important;
    max-width: var(--button-width) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

/* 文字数に応じたフォントサイズ調整 */
.uniform_button_small {
    font-size: var(--button-font-small) !important;
    font-weight: normal !important;
}

.uniform_button_medium {
    font-size: var(--button-font-medium) !important;
    font-weight: normal !important;
}

.uniform_button_large {
    font-size: var(--button-font-large) !important;
    font-weight: bold !important;
}

/* スマートフォン */
@media (max-width: 575.98px) {
    .uniform_button {
        font-size: var(--button-font-mobile); /* 変数を使用 */
        /* ...existing code... */
    }
    
    .uniform_button_small {
        font-size: calc(var(--button-font-mobile) - 3px) !important; /* 8px相当 */
    }
    
    .uniform_button_medium {
        font-size: calc(var(--button-font-mobile) - 1px) !important; /* 10px相当 */
    }
    
    .uniform_button_large {
        font-size: calc(var(--button-font-mobile) + 1px) !important; /* 12px相当 */
    }
}

/* タブレット */
@media (min-width: 576px) and (max-width: 767.98px) {
    .uniform_button {
        font-size: var(--button-font-tablet); /* 変数を使用 */
        /* ...existing code... */
    }
    
    .uniform_button_small {
        font-size: calc(var(--button-font-tablet) - 3px) !important; /* 9px相当 */
    }
    
    .uniform_button_medium {
        font-size: calc(var(--button-font-tablet) - 1px) !important; /* 11px相当 */
    }
    
    .uniform_button_large {
        font-size: calc(var(--button-font-tablet) + 1px) !important; /* 13px相当 */
    }
}

/* デスクトップ中サイズ */
@media (min-width: 768px) and (max-width: 991.98px) {
    .uniform_button {
        font-size: var(--button-font-desktop-mid); /* 変数を使用 */
        /* ...existing code... */
    }
    
    .uniform_button_small {
        font-size: var(--button-font-small) !important;
    }
    
    .uniform_button_medium {
        font-size: var(--button-font-medium) !important;
    }
    
    .uniform_button_large {
        font-size: var(--button-font-large) !important;
    }
}

/* デスクトップ大サイズ */
@media (min-width: 992px) {
    .uniform_button {
        font-size: var(--button-font-base); /* 変数を使用 */
        /* ...existing code... */
    }
    
    .uniform_button_small {
        font-size: var(--button-font-small) !important;
    }
    
    .uniform_button_medium {
        font-size: var(--button-font-medium) !important;
    }
    
    .uniform_button_large {
        font-size: var(--button-font-large) !important;
    }
}

/* ホバー効果 - 詳細度を上げて確実に適用 */
.uniform_button:hover {
    background-color: #ffffff !important;
    color: rgb(0, 0, 0) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

/* アクティブ状態 */
.uniform_button:active {
    transform: translateY(0) !important;
    background-color: #003875 !important;
}

/* フォーカス状態（アクセシビリティ対応） */
.uniform_button:focus {
    outline: 2px solid #004da0;
    outline-offset: 2px;
}

/* 小さいフォントサイズのボタン（長いテキスト用） */
.uniform_button_small {
    font-size: 10px !important;
    font-weight: normal !important; /* bold → normal に変更 */
}

/* レスポンシブ対応 */
@media (max-width: 575.98px) {
    .uniform_button_small {
        font-size: 8px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
    
    .uniform_button_medium {
        font-size: 10px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .uniform_button_small {
        font-size: 9px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
    
    .uniform_button_medium {
        font-size: 11px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .uniform_button_small {
        font-size: 9px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
    
    .uniform_button_medium {
        font-size: 11px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
}

@media (min-width: 992px) {
    .uniform_button_small {
        font-size: 10px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
    
    .uniform_button_medium {
        font-size: 12px !important;
        font-weight: normal !important; /* bold → normal に変更 */
    }
}

/* 大分類セクションのスタイル設定 */
/* カテゴリヘッダーのスタイル */
.category-header {
    transition: all 0.3s ease;
    padding: 10px;
    border-radius: 5px;
    margin-bottom: 10px;
}

.category-header:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

.category-toggle {
    transition: transform 0.3s ease;
    font-size: 14px;
}

.category-items {
    transition: all 0.3s ease;
    overflow: hidden;
    padding: 3px 3px;
}

.category-section-dynamic {
  padding: 15px;
  border-radius: 8px;
  margin-bottom: 20px;
}

/* 大規模修繕関連・建物診断 - 落ち着いたブルーグレー */
.category-section-1 {
    background: linear-gradient(135deg, #e7eaed 0%, #d1d4d8 100%);
    border-left: 4px solid #495057;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.category-section-1 .sample_box6 {
    color: #495057;
}

.category-section-1 .icon_search {
    color: #495057;
}

/* 構造・外装・内装 - 温かいアースカラー */
.category-section-2 {
    background: linear-gradient(135deg, #f9e5a9 0%, #ffdf7f 100%); ;
    border-left: 4px solid #8b4513;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.category-section-2 .sample_box6 {
    color: #934914;
}

.category-section-2 .icon_search {
    color: #8b4513;
}

/* 建物設備（共用部） - 技術感のあるブルー */
.category-section-3 {
    background: linear-gradient(135deg, #e8f3fd 0%, #cee5fb 100%);
    border-left: 4px solid #0066cc;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.category-section-3 .sample_box6 {
    color: #0066cc;
}

.category-section-3 .icon_search {
    color: #0066cc;
}

/* 日常管理 - 安心感のあるグリーン */
.category-section-4 {
    background: linear-gradient(135deg, #e5fbe5 0%, #dcffdc 100%);
    border-left: 4px solid #228b22;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.category-section-4 .sample_box6 {
    color: #228b22;
}

.category-section-4 .icon_search {
    color: #228b22;
}

/* 室内（専有部分） - 温かいピンクベージュ */
.category-section-5 {
    background: linear-gradient(135deg, #fff0f0 0%, #fedada 100%);
    border-left: 4px solid #cd5c5c;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.category-section-5 .sample_box6 {
    color: #cd5c5c;
}

.category-section-5 .icon_search {
    color: #cd5c5c;
}

/* その他 - ニュートラルなパープルグレー */
.category-section-6 {
    background: linear-gradient(135deg, #ededf9 0%, #d5d5f1 100%);
    border-left: 4px solid #6a5acd;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.category-section-6 .sample_box6 {
    color: #6a5acd;
}

.category-section-6 .icon_search {
    color: #6a5acd;
}