@charset "utf-8";
.blog_h1{
    font-family: "游明朝体", "Yu Mincho", serif;
    margin: 0;
    font-size: 1.8em;
    background-color: #68be8d;/*#2F3B59*/
    color: white;
    padding: 20px;
    text-align: center;
}
.column-title {
  background-color: #f0f8f0;
  color: #333;
  padding: 1rem;
  text-align: center;
  line-height: 1.4;
  margin: 0;
}
.blog_h1 .main-title {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
}
.blog_h1 .sub-title {
  display: block;
  font-size: 1rem;
  margin-top: 0.4rem;
}

.blog-container {
    max-width: 900px;
    margin: 40px auto;
    padding: 0 20px;
  }

  .blog-post {
    border-bottom: 1px solid #ccc;
    padding: 20px 0;
  }

  .blog-post h2 {
    margin: 0 0 10px;
    font-size: 1.4em;
    color: #2F3B59;
  }

  .blog-post p {
    margin: 0 0 10px;
    line-height: 1.6;
    text-align: justify;
  }

  .blog-post time {
    display: block;
    font-size: 0.9em;
    color: #999;
    margin-bottom: 10px;
  }


  .content_blog {
    max-width: 900px;
    margin: 40px auto;
    padding: 0 20px;
  }

  article h1 {
    font-size: 1.5em;
    color: #2F3B59;
    padding-left: 10px;
    margin-top: 40px;
    margin-bottom: 20px;
  }
  article h2 {
    font-size: 1.4em;
    color: #2F3B59;
    border-left: 5px solid #2F3B59;
    padding-left: 10px;
    margin-top: 40px;
    margin-bottom: 20px;
  }
  article h3 {
    font-size: 1.2em;
    color: #2F3B59;
    /*border-left: 5px solid #2F3B59;*/
    padding-left: 0px;
    margin-top: 40px;
    margin-bottom: 20px;
  }
  article h4 {
    font-size: 1.1em;
    color: #2F3B59;
    /*border-left: 5px solid #2F3B59;*/
    padding-left: 0px;
    margin-top: 0px;
    margin-bottom: 10px;
  }

  article p {
    margin: 0 0 20px;
    text-align: justify;
  }

  article blockquote {
    background-color: #f0f4f8;
    border-left: 4px solid #2F3B59;
    padding: 10px 20px;
    margin: 20px 0;
    font-style: italic;
    color: #555;
  }
.tip {
      background: #e0f7fa;
      padding: 10px;
      border-left: 4px solid #0097a7;
      margin: 20px 0;
    }
.summary-text {
  font-size: 1rem;
  color: #333;
}



.series-header {
  font-size: 0.9rem;
  /*color: rgb(243, 164, 74);/*#2cb7a5*/
  font-weight: bold;
  margin-bottom: 4px;
}
/*ヘッダーテキストカラーシリーズ別変更*/
.hec-karada{
  color: #579a15;
}
.hec-stretch{
  color: #3498db;
}
.hec-season{
  color: #ff9933;
}
.hec-rabo{
  color: #66cc00;
}
.hec-repo{
  color: #e67e22;
}
.hec-chiro{
  color: #ff9933;
}
.series {
      font-weight: bold;
      font-size: 0.9rem;
      margin-bottom: 0.3rem;
      display: inline-block;
      padding: 0.2rem 0.5rem;
      border-radius: 4px;
      color: #fff;
}
/* シリーズカラー */
.series-1 { background: #579a15; } /* グリーン：体なび */
.series-2 { background: #f93; }    /* オレンジ：季節便り */
.series-3 { background: #5ab4c1; } /* 青：ストレッチなび */
.series-4 { background: #8d5e3b; } /* ブラウン：姿勢ラボ */
.series-5 { background: #b75a91; } /* ピンク系：体験レポート */
.series-6 { background: #888; }    /* グレー：カイロ知恵袋 */
.series-7 { background: #d04e00; } /* ビビッドなレンガレッド系：活力・鍛えるイメージ：からだトレーニング */


.season-series-banner {
  background: linear-gradient(to right, #cfe8cf, #a4d4a4);
  color: #2f4f2f;
  font-size: 1.1rem;
  font-weight: bold;
  padding: 0.7em 1.2em;
  border-left: 6px solid #6ba76b;
  border-radius: 8px;
  margin: 1.5em 0;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
}

.columnimg {
      max-width: 100%;
      height: auto;
      display: block;
      margin: 20px 0;
      border-radius: 8px;
    }
/*
.glass-banner {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 16px;
  padding: 20px;
  color: #111;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}

.glass-banner {
  background: rgba(255, 255, 255, 0.07);
  font-size: 1.5rem;
  border-radius: 20px;
  padding: 30px;
  color: #ffffff;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
  text-shadow: 0 0 3px rgba(1,1,1,2.4);
}
*/
.glass-banner {
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.15),
    rgba(255, 255, 255, 0.05)
  );
  border-radius: 20px;
  padding: 30px;
  color: #ffffff;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
  text-shadow: 0 0 4px rgba(0,0,0,0.3);
}
.demobody {
  margin: 0;
  height: 100vh;
  background: linear-gradient(120deg, #0f2027, #203a43, #2c5364);
  display: flex;
  justify-content: center;
  align-items: center;
}

/*-----表---------------------------------------------------------------------------*/
.ais-table-container {
  /*font-family: 'Segoe UI', sans-serif;
  background-color: #f4f4f4;
  padding: 20px;*/
    font-family: 'Segoe UI', sans-serif;
    background: rgba(255, 255, 255, 0.25); /* 半透明白 */
    border-radius: 16px;
    backdrop-filter: blur(12px);           /* 背景をぼかす */
    -webkit-backdrop-filter: blur(12px);   /* Safari対応 */
    border: 1px solid rgba(255, 255, 255, 0.3); /* 境界の明るさ */
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    padding: 20px;
    margin: 20px auto;
    max-width: 960px;  
}

.ais-table-title {
  text-align: center;
  color: #2a9d8f;
  margin-bottom: 20px;
}

.ais-table-wrapper {
  overflow-x: auto; /* スマホで横スクロール可能に */
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.ais-table {
  width: 100%;
  min-width: 480px; /* スマホでも幅確保 */
  border-collapse: collapse;
}

.ais-table th,
.ais-table td {
  padding: 16px;
  border-bottom: 1px solid #e0e0e0;
  text-align: left;
}

.ais-table th {
  background-color: #2a9d8f;
  color: white;
  font-size: 16px;
}

.ais-table tr:hover {
  background-color: #f1fdfb;
}

@media (max-width: 600px) {
  .ais-table th, .ais-table td {
    padding: 12px;
    font-size: 14px;
  }
  .ais-table-title {
    font-size: 18px;
  }
}

/*-----表---------------------------------------------------------------------------*/
/*
    body {
      font-family: 'Segoe UI', sans-serif;
      line-height: 1.8;
      padding: 20px;
      background: #f9f9f9;
      color: #333;
    }
    h1, h2, h3 {
      color: #2b4d70;
    }
      */
    .section {
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.05);
      padding: 20px;
      margin-bottom: 30px;
    }
    .sec-table {
      width: 100%;
      border-collapse: collapse;
      margin: 15px 0;
    }
    th, td {
      border: 1px solid #ccc;
      padding: 10px;
      text-align: center;
    }
    th {
      background-color: #eef4fa;
    }
    .tips {
      background: #eaf9f0;
      border-left: 5px solid #4CAF50;
      padding: 10px;
      margin: 15px 0;
    }
    .step {
      background: #fffbe6;
      border-left: 5px solid #ffc107;
      padding: 10px;
      margin: 10px 0;
    }
    @media (max-width: 600px) {
      body {
        padding: 10px;
      }
      th, td {
        font-size: 14px;
      }
    }
	
/*--------------------------------------------------------------------------------------*/

.fas {
  margin-right: 10px;
}
.fas2 {
  font-size: 2rem;
}
.fa-square-check {
  font-size: 1.4em;
}
.gradient-icon {
  background: linear-gradient(45deg, #34d399, #3b82f6); /* エメラルド〜ブルー */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
.color-sun {
  background: linear-gradient(45deg, #FFD700, #FF8C00, #FF4500);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

.color-moon {
  background: linear-gradient(135deg, #cfd9df, #a6c0fe, #3b5998);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.color-medical-red {
      background: linear-gradient(45deg, #e74c3c, #f1c40f); /* 赤→黄のグラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-medical-blue {
      background: linear-gradient(45deg, #3498db, #00c9ff); /* 青グラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-medical-green-0 {
      background: linear-gradient(45deg, #2ecc71, #1abc9c); /* 緑グラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-medical-green-1 {
      background: linear-gradient(45deg, #2ecc71, #1abc9c);/* 緑グラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-medical-green-2 {
      background: linear-gradient(45deg, #27ae60, #2ecc71); /* 緑グラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-medical-green-3 {
      background: linear-gradient(45deg, #a8e063, #56ab2f);/* 緑グラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-medical-green-4 {
      background: linear-gradient(45deg, #b5e48c, #99d98c); /* 緑グラデーション */
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      display: inline-block;
    }
.color-run {
  background: linear-gradient(45deg, #ff512f, #dd2476); /* 赤〜ピンクの情熱系 */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.color-pelvis-gray {
  background: linear-gradient(45deg, #999999, #cccccc); /* グレー→明るいグレー */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.color-burst-yellow {
  background: linear-gradient(45deg, #FFD700, #FFA500); /* ゴールドイエロー → オレンジイエロー */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}



.fas-outbox {
  /* 外枠のスタイル */
  padding: 0.2em;
  border: 1px solid #d1d5db; /* 薄めのグレー（Tailwindのgray-300相当） */
  border-radius: 0.3em;
}
/*-----木の成長　幅固定--------------------*/
.growth-icon {
  width: 1.8em;
  height: 1.8em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.5em;
  border-radius: 50%;
  background-color: #f0fdf4; /* 薄緑背景 */
}
.step-1 i {
  font-size: 0.9em;
  color: #a3e635;
  transform: translateX(32%);
}
.step-2 i {
  font-size: 1.1em;
  color: #4ade80;
  transform: translateX(25%);
}
.step-3 i {
  font-size: 1.3em;
  color: #16a34a;
  transform: translateX(25%);
}
/*-----木の成長　幅固定--------------------*/
/*直感バッチ*/
.badge {
  display: inline-block;
  width: 2.2em;
  height: 2.2em;
  line-height: 2.2em;
  border-radius: 50%;
  text-align: center;
  font-size: 0.9em;
  color: #fff;
  font-weight: bold;
  margin-right: 0.3em;
  background-color: #888;
}

/* 部位別カラー例 */
.badge.shounder { background-color: #f76c6c; }  /* 赤っぽい */
.badge.lowback { background-color: #f4b400; } /* オレンジ */
.badge.neck { background-color: #4285f4; } /* 青 */
.badge.arm { background-color: #34a853; } /* 緑 */
.badge.foot { background-color: #ab47bc; } /* 紫 */
.badge.buttocks { 
  background-color: #795548;
  position: relative;
  cursor: help;
}
.badge.buttocks::after {
  content: "臀部（おしり）";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: #333;
  color: #fff;
  font-size: 0.7em;
  padding: 0.3em 0.5em;
  border-radius: 5px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
  z-index: 10;
}
.badge.buttocks:hover::after {
  opacity: 1;
}

/*直感バッチ*/

