.elementor-1889 .elementor-element.elementor-element-14cf61d{--display:flex;--margin-top:200px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}/* Start custom CSS for html, class: .elementor-element-f1569e8 *//* =========================
   全体
========================= */

.custom-tabs {
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  margin: 0 auto 10px;

  display: flex;
  justify-content: center;
  gap: 10px;
}


/* =========================
   タブアイテム
========================= */

.tab-item {
  width: 32%;
  position: relative;
}


/* =========================
   タブタイトル
========================= */

.tab-title {
  position: relative;
  width: 100%;
  height: 60px;

  background: #F5F5F5;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  cursor: pointer;

  font-size: 18px;
  font-weight: 600;

  overflow: hidden;
}


.tab-title .arrow {
  font-size: 14px;
}


/* 左上三角 */

.corner-triangle {
  position: absolute;

  top: 0;
  left: 0;

  width: 0;
  height: 0;

  border-top: 20px solid #2A74D9;
  border-right: 20px solid transparent;
}


/* 下線 */

.underline {

  position: absolute;

  bottom:0;
  left:50%;

  width:0;
  height:3px;

  background:#2A74D9;

  transition:0.3s;
}


.tab-title:hover .underline,
.tab-title.active .underline {

  width:80%;
  left:10%;

}


/* =========================
   タブ内容
========================= */

.tab-content {

  display:none;

  padding:20px 0;

}


.tab-content.active {

  display:block;

}


.tab-content form {

  display:flex;

  justify-content:center;
  align-items:center;

  flex-direction:column;

}


/* =========================
   タグボタン
========================= */


.tag-buttons {

  display:flex;

  width:620px;

  flex-wrap:wrap;

  gap:10px;

  margin:50px auto 50px;

}



.tag-btn {

  display:flex;

  align-items:center;
  justify-content:center;

  width:200px;
  height:50px;

  border:1px solid #2A74D9;

  border-radius:50px;

  background:#fff;

  color:#2A74D9;

  cursor:pointer;

  transition:0.3s;

}



.tag-btn input {

  display:none;

}



.tag-btn:hover {

  background:#2A74D9;
  color:#fff;

}



.tag-btn input:checked + span {

  background:#2A74D9;

  color:#fff;

  display:flex;

  align-items:center;
  justify-content:center;

  width:100%;
  height:100%;

  border-radius:50px;

}



.tag-btn span {

  font-size:1.6rem;
  font-weight:700;

}


/* =========================
   検索ボタン
========================= */


.search-btn {

  display:block;

  width:220px;
  height:48px;

  font-size:1.8rem;
  font-weight:700;

  background:#2A74D9;

  color:#fff;

  border:none;

  border-radius:20px;

  margin:20px auto 30px;

  cursor:pointer;

}



.search-btn:hover {

  color:#2A74D9;

  background:#fff;

  border:2px solid #2A74D9;

  transition:0.7s;

}


/* =========================
   キーワード検索
========================= */


.keyword-input {

  width:600px;
  max-width:90%;

  border:1px solid #212121;

  border-radius:4px;

  padding:2rem 2rem!important;

  margin-top:50px;

}



/* =========================
   タブレット
========================= */


@media(max-width:1024px){


  .tab-item {

    width:32%;

  }


  .tag-buttons {

    width:100%;

    justify-content:center;

    margin:20px auto;

  }


  .tag-btn {

    width:150px;
    height:50px;

  }


}



/* =========================
   スマホ
========================= */


@media(max-width:768px){


  .custom-tabs {

    justify-content:flex-start;

    flex-wrap:nowrap;

    overflow-x:auto;

    gap:8px;

    padding-bottom:10px;

  }



  .tab-item {

    flex:0 0 auto;

    width:120px;

  }



  .tab-title {

    width:120px;

    height:55px;

    font-size:14px;

    white-space:nowrap;

  }



  .tab-content {

    width:100%;

    padding:20px 0;

  }



  .tag-buttons {

    width:100%;

    gap:8px;

    margin:20px auto;

    justify-content:center;

  }



  .tag-btn {

    width:150px;

    height:48px;

  }



  .tag-btn span {

    font-size:1.3rem;

  }



  .keyword-input {

    width:90%;

    margin-top:20px;

  }



  .search-btn {

    width:215px;

    height:50px;

  }


}/* End custom CSS */