h1,h2{
    margin: 0;
}
/* カードの基本 */
.window_item, .mi_window_item{
    width: 320px;
    /* 固定高さを撤廃し中身に合わせて伸縮 */
    height: auto;
    margin: 12px;
    border: solid 3px #000000;
    background: #fff;
}
/* 各ウィンドウ行の基本（横並び+折り返し） */
.x_window,
.yt_window,
.mi_window{
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;            /* 折り返し */
    justify-content: center;    /* 中央寄せ配置 */
    align-items: stretch;       /* 高さを揃える */
    gap: 16px;                  /* 余白 */
    width: 100%;
}
/* 既存yt/miの幅70%は撤廃し、親に任せる */
/* タイトル系 */
.title_x{
    background-color: #000000;
    color: #ffffff;
    text-align: center;
}
.title_x a{
    color: #ffffff;
    text-decoration: none;
}
.title_yt{
    background-color: #ff0000;
    color: #ffffff;
    text-align: center;
}
.title_yt a{
    color: #ffffff;
    text-decoration: none;
}
.title_mi{
    background-color: rgb(180, 233, 0);
    color: #ffffff;
    text-align: center;
}
.title_mi a{
    color: #ffffff;
    text-decoration: none;
}
.center{
    text-align: center;
    margin: 0;
}
.white{
    background-color: #ffffff;
    margin: 1rem auto;
    /* 80%固定から可変へ */
    width: min(1200px, 92%);
    border-radius: 20px;
    padding: 12px;
}
/* タブレット: 1020px以下でカード幅を縮小 */
@media (max-width: 1020px){
  .window_item, .mi_window_item{ width: clamp(260px, 42vw, 320px); }
}
/* スマホ～小型タブレット: 768px以下は1列～2列レイアウト */
@media (max-width: 768px){
  .window_item, .mi_window_item{ width: min(92%, 360px); margin: 8px auto; }
}
/* 旧ルール: 430px以下で縦積み（維持） */
@media (max-width: 430px){
  header img{ width: 375px; height: 125px; }
  .x_window,.yt_window,.mi_window{
    flex-direction: column;
    gap: 12px;
  }
}
