/* --- Vertex AI Searchのスタイル --- */
#mainpage_ai_search {
  margin-bottom: 1.5rem;
}

.search-container {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 0 16px;
  /* 横幅のはみ出し防止 */
  box-sizing: border-box;
}

#searchWidgetTrigger {
  /* paddingを含めた幅計算 */
  box-sizing: border-box;
  
  width: 100%;
  max-width: 600px;
  
  /* PC/タブレット向けの基本サイズ */
  padding: 18px 24px 18px 52px;
  font-size: 16px;
  
  border: 1px solid transparent;
  border-radius: 999px;
  
  background-color: #eff3f8; 
  color: #1f1f1f;
  
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%234b90ff'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5' d='M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 20px center;
  background-size: 22px;
  
  outline: none;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  
  /* モバイルブラウザ標準スタイルのリセット */
  -webkit-appearance: none;
  appearance: none;
}

#searchWidgetTrigger:hover {
  background-color: #e3e7eb;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
}

#searchWidgetTrigger:focus {
  background-color: #ffffff;
  border-color: transparent;
  box-shadow: 
    0 0 0 2px #ffffff,
    0 0 0 4px #c0d6fc,
    0 4px 12px rgba(66, 133, 244, 0.15);
}

#searchWidgetTrigger::placeholder {
  color: #6e7683;
  font-weight: 500;
}

/* ====================================                                                                                                                                                                                                                                            
     モバイル検索ボタン                                                                                                                                                                                                                                                              
  ====================================*/                                                                                                                                                                                                                                             
  .mobile-search-btn {                                                                                                                                                                                                                                                               
    display: none;                                                                                                                                                                                                                                                                   
  }                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                     
  @media (max-width: 600px) {                                                                                                                                                                                                                                                        
    #mainpage_ai_search .search-container {                                                                                                                                                                                                                                          
      display: none;                                                                                                                                                                                                                                                                 
    }                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                     
    .mobile-search-btn {                                                                                                                                                                                                                                                             
      display: flex;                                                                                                                                                                                                                                                                 
      align-items: center;                                                                                                                                                                                                                                                           
      justify-content: center;                                                                                                                                                                                                                                                       
      position: fixed;                                                                                                                                                                                                                                                               
      bottom: 40px;                                                                                                                                                                                                                                                                  
      left: 1rem;                                                                                                                                                                                                                                                                    
      width: 60px;                                                                                                                                                                                                                                                                   
      height: 60px;                                                                                                                                                                                                                                                                  
      border-radius: 50%;                                                                                                                                                                                                                                                            
      background-color: #997A57;                                                                                                                                                                                                                                                     
      color: #fff;                                                                                                                                                                                                                                                                   
      border: none;                                                                                                                                                                                                                                                                  
      font-size: 18px;                                                                                                                                                                                                                                                               
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);                                                                                                                                                                                                                                     
      z-index: 9999;                                                                                                                                                                                                                                                                 
      cursor: pointer;                                                                                                                                                                                                                                                               
    }                                                                                                                                                                                                                                                                                
  }            