@charset "UTF-8";

/* =======================================
   outline.css
======================================= */
/*黄色の枠*/
.page-hero {
    background: var(--yellow);
    text-align: center;
    margin-top: 70px;
    height: 110px;
    /*下がラウンド*/
    border-bottom-left-radius: 100% 65%;
    border-bottom-right-radius: 50% 30%;
    padding-top: 21px;
    margin-bottom: 30px;
}


/*シャトル*/
.page-hero img  {
    /*白*/
    filter: brightness(0) invert(1);
    width: 36px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 8px;
    display: block;
    animation: shuttle-poyo 2.4s ease-in-out infinite;
    filter: brightness(0) invert(1);
    /*ぽよぽよ動く*/
    transform-origin: center;
    padding-top: 0px;
}
/*動き制御*/
@keyframes shuttle-poyo{
  0%   { transform: translateY(0) rotate(0deg); }
  40%  { transform: translateY(-6px) rotate(-6deg); }
  60%  { transform: translateY(-4px) rotate(4deg); }
  100% { transform: translateY(0) rotate(0deg); }
}


/*大会概要の文字*/
.page-hero h2{
  position: relative;
  display: inline-block;
  margin: 0;
  padding-bottom: 1px; /* 下線の“距離” */
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  color: var(--blue);
  z-index: 0;          /* 基準 */
  isolation: isolate;  /* ←超重要：背面に逃がすため */
}

.page-hero h2::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1px;          /* ← 下線の位置（ここを微調整） */
  height: 10px;         /* ← 線の太さ */
  background: #fff;     /* 白い線 */
  z-index: -1;
}
/*本文*/
.lead {
    text-align: justify;
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 20px;
}

/*=====カード中身共通=====*/
.outline_cards {
    margin-right: auto;
    margin-left: auto;
}
.outline_card {
    max-width: 960px;
    margin-top: 5px;
    margin-bottom: 50px;
    margin-left: auto;
    margin-right: auto;
}
.outline_card h3 {
    text-align: center;
    color: var(--blue);
    border-bottom-style: dashed;
    border-bottom-width: 1px;
    font-size: 18px;
    letter-spacing: 0.05rem;
    margin-bottom: 14px;
}
.outline_card h4 {
    text-align: center;
    font-size: 14px;
}
.outline_card-img  {
    border-top-left-radius: 30px 30px;
    border-bottom-right-radius: 30px 30px;
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 10px;
}
/*項目*/
.outline-meta dt {
    font-size: 16px;
    color: var(--blue);
    font-weight: 500;
    margin-top: 10px;
}
.outline-meta dd {
    font-size: 16px;
    margin-left: 0px;
}






/* =========================
   Tablet（768px〜）
========================= */
@media (min-width: 768px) {
	
/*セクション幅*/
.section-inner {
    width: 70%;
  }

/* =========================
   タイトル周り（少し大きく）
========================= */
/*黄色の枠*/
.page-hero {
    height: 126px;
    /*下がラウンド*/
}

/*シャトル*/
.page-hero img  {
    width: 40px;
    margin-bottom: 10px;
}
	
/*タイトル*/
.page-hero h2{
  font-size: 24px;
}

/*本文*/
.lead {
    font-size: 18px;
    margin-bottom: 60px;
}
	
/* =========================
   outline：大会カード（tablet 2カラム）
========================= */

  .outline_cards{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
  }

  /* 1カードごとの横幅制限を解除 */
  .outline_card{
    max-width: none;
    margin: 0;
  }
	
}


/* =========================
   pc（1024px〜）
========================= */
@media (min-width: 1024px) {

/*セクション幅*/
.section-inner{
    max-width: 900px;
    width: 100%;
  }

/* =========================
   outline：大会カード（tablet 2カラム）幅少し大きく
========================= */

  .outline_cards{
    gap: 60px;
  }

}

