@charset "UTF-8";

/************************************
** 子テーマ用のスタイル
************************************/
/* recaptch表示設定 */
.grecaptcha-badge {
  bottom: 0px !important;
  right: 0px !important;
}

/* トップページのタイトル表示設定 */
.page-id-25 .entry-title {
  font-size: 0;
  margin: 0;
  padding: 0;
}

/* 記事カードのタイトルを1行に */
.entry-card-content .entry-title {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
}

/* 記事カードの本文を2行に */
.entry-card-content .entry-title {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
}

/* SNSシェアボタンを円形・横一列にする */
.sns-share .sns-buttons,
.sns-share-buttons,
.sns-buttons {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow-x: auto;
  padding: 6px 0;
}

/* 各SNSボタンを円形にする */
.sns-share .sns-button,
.sns-share-buttons .sns-button,
.sns-buttons .sns-button,
.sns-share a,
.sns-share button {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* テキストラベルを非表示にしてアイコンだけにする */
.sns-share .button-caption,
.sns-share .sns-button-caption,
.sns-share .share-caption,
.sns-share-buttons .button-caption,
.sns-buttons .button-caption {
  display: none !important;
}

/* アイコンサイズ調整 */
.sns-share .social-icon,
.sns-share i,
.sns-share svg {
  font-size: 18px !important;
  width: 18px;
  height: 18px;
}

/* SNSアイコンの左右ズレ補正：ボタン内の余白・文字幅をリセット */
.sns-share a,
.sns-share button,
.sns-share .sns-button,
.sns-share-buttons .sns-button,
.sns-buttons .sns-button {
  position: relative !important;
  padding: 0 !important;
  margin: 0 !important;
  text-indent: 0 !important;
  font-size: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ボタン内の子要素の余白をリセット */
.sns-share a > *,
.sns-share button > *,
.sns-share .sns-button > * {
  margin: 0 !important;
  padding: 0 !important;
}

/* アイコン本体を中央に */
.sns-share i,
.sns-share svg,
.sns-share .social-icon,
.sns-share .icon {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transform: translateX(2.5px);
  transform: translateY(0.5px);
}

/* ::before で表示されるタイプのアイコンも中央に */
.sns-share a::before,
.sns-share button::before,
.sns-share .sns-button::before {
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  .sns-share,
  .sns-share-buttons,
  .sns-buttons {
    text-align: center !important;
  }

  .sns-share .sns-buttons,
  .sns-share-buttons,
  .sns-buttons {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
