/* === 2025 Custom UI Styling === */

/* 共通リンク風スタイル */
p.ddiet,
p.daga,
p.eaga,
p.laga,
p.agaskin,
p.shounanaga,
p.goliraaga {
  color: #0000EE;              /* 青文字 */
  text-decoration: underline;  /* 下線 */
  cursor: pointer;             /* ポインター表示 */
}

/* ホバー時の色変化 */
p.ddiet:hover,
p.daga:hover,
p.eaga:hover,
p.laga:hover,
p.agaskin:hover,
p.shounanaga:hover,
p.goliraaga:hover {
  color: #551A8B;              /* 紫色 */
}


p.aganitsuite {
  color: #0000EE;              /* 青文字 */
  text-decoration: underline;  /* 下線を付けてリンクっぽく */
  cursor: pointer;             /* 指マーク */
}

p.aganitsuite:hover {
  color: #551A8B;              /* ホバー時の色（紫） */
}


/* フッター要素を非表示化 */
.footer-contents { 
  display:none;
}

/* 固定フッターボタン */
.footer-button {
  position:fixed;
  bottom:60px;
  margin:0 auto;
}

/* 本文内リンクの色調整 */
#body_wrap a:link {
  color:rgb(17,118,212);
}

/* --- Google Map ラッパー --- */
.map {
  width:100%;
  height:0;
  position:relative;
  padding-top:75%; /* 4:3比率維持 */
}

/* --- Google Map 埋め込み --- */
.map iframe {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

/* 関連記事サムネイルを隠す */
.sango-related-posts .eye-catch {
  display:none;
}

/* アーカイブ・ホームのサムネイルを隠す */
.archive .cardtype__img,
.home .cardtype__img,
.archive .sidelong__img,
.home .sidelong__img {
  display:none;
}

.home .cardtype__link {
  padding-top:25px;
}

/* テーブル基本設定 */
table {
  width:100%;
}
th,td {
  border:1px solid #ccc;
  padding:20px;
  font-size:16px;
  line-height:1.2;
  text-align:center;
}

/* マーカー付きテキスト */
.micro {
  font-weight:bold;
  color:red;
  text-align:center;
  text-decoration:underline;
  text-decoration-thickness:0.5em;
  text-decoration-color:rgba(255,228,0,0.4);
  text-underline-offset:-0.2em;
  text-decoration-skip-ink:none;
  padding-top:40px;
}

/* 上部テーブル */
.top-table {
  table-layout:fixed;
  overflow:auto;
}

/* 横スクロール対応テーブル */
.scrollable-table {
  width:100%;
  overflow-x:auto;
  border:1px solid #ccc;
  white-space:nowrap;
}
.scrollable-table table {
  width:100%;
}

/* スマホ画面時のスタイル */
@media (max-width:768px){
  .container { white-space:normal; }
  th,td {
    font-size:14px;
    white-space:nowrap;
    overflow-x:auto;
  }
}

/* ボタン中央寄せ */
.wp-block-sgb-btn {
  text-align:center;
}

/* 共通テキスト調整 */
.myClass {
  font-size:16px;
  line-height:1.2;
  display:block;
  width:100%;
  overflow-x:auto;
}

/* 横スクロール抑止 */
html,body {
  max-width:100%;
  overflow-x:hidden;
}

/* フィルターメニュー */
.filter li { cursor:pointer; }
.filter li.is-active { color:red; }

/* カテゴリ切り替え */
.category li { display:none; }
.category li.is-show { display:block; }

/* フッターカテゴリ削除 */
.footer-meta { display:none; }
.prnx { display:none; }

/* 下部固定リンク */
.bottom-link {
  position:fixed;
  bottom:20px;
  right:0;
  text-align:center;
  background:#fff;
}

/* SNSシェア削除 */
.article-footer .footer-contents .sns-btn {
  display:none;
}

/* フローティングバナー */
.floating_bn {
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#f8f9fa;
  box-shadow:0 -2px 5px rgba(0,0,0,0.1);
  padding:10px;
  z-index:1000;
}
.floating_bn .close { cursor:pointer; }
.floating_bn .close img { width:24px; height:24px; }
.floating_bn .flexBox { flex-grow:1; text-align:center; }
.floating_bn .flexBox a {
  font-size:16px;
  font-weight:bold;
  color:#007bff;
  text-decoration:none;
}

/* 強調装飾 */
.pink {
  background:linear-gradient(transparent 60%,#ffb6c1 60%);
}
.blue-1 {
  background:linear-gradient(transparent 80%,#87cefa 80%);
}

/* 本文テキスト調整 */
.container,.entry-content p {
  word-break:normal;
  overflow-wrap:break-word;
  white-space:normal;
}

/* 全リンクを青に */
a { color:blue; }

/* テーブルラッパー */
.table-container {
  width:100%;
  margin-top:10px;
  margin-inline:auto;
  overflow-x:auto;
  white-space:nowrap;
  border:1px solid #ccc;
}
.table-container table {
  width:100%;
  border-collapse:collapse;
}

/* 装飾ボックス */
.box1-pink {
  max-width:600px;
  margin:2em auto;
  padding:3.5em 2em 1.5em;
  background:#fdf1f4;
  border-radius:4px;
  position:relative;
}
.box1-pink .box-title {
  background:#f27398;
  color:#fff;
  font-weight:bold;
  font-size:20px;
  padding:5px;
  text-align:center;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  border-radius:4px 4px 0 0;
}
.box1-pink p {
  margin:0;
  padding:0;
}

/* 光沢ボタン */
.c-button._shiny {
  display:block;
  margin:30px auto;
  max-width:500px;
  padding:1em 1.5em;
  text-align:center;
  background:#28a745;
  box-shadow:0 3px 0 #1e7e34;
  border-radius:4px;
  font-weight:bold;
  font-size:16px;
  color:#fff;
  text-decoration:none;
  transition:300ms;
  position:relative;
  overflow:hidden;
}
.c-button._shiny::before {
  content:'';
  position:absolute;
  top:-180px;
  left:0;
  width:30px;
  height:100%;
  background:#b2f2bb;
  animation:shine 2.5s ease-in-out infinite;
}
.c-button._shiny:hover {
  color:#fff;
  text-decoration:none;
  box-shadow:none;
  transform:translateY(3px);
}
@keyframes shine {
  0% { transform:scale(0) rotate(45deg); opacity:0; }
  80% { transform:scale(0) rotate(45deg); opacity:.5; }
  81% { transform:scale(4) rotate(45deg); opacity:1; }
  100% { transform:scale(50) rotate(45deg); opacity:0; }
}

/* iframeデフォルトサイズ */
iframe {
  width:300px;
  height:100px;
}
