/* 基本設定 */
div.article.content ul {
  list-style: none;
  margin: 0 20px;
}

div.article.content ul ul {
  list-style: revert;
  margin: 0 0 0 1.5em; /* マージンを340pxから40pxに調整 */
}

div.article.content ul li:last-child {
  margin: 0 0 20px 0;
}

/* 見出しスタイル */
div.twoColumn div.primary div.article.content h2,
div.twoColumn div.primary div.form h2 {
  background-image: url("../../images/hx-title.png");
  background-color: none;
  background-repeat: no-repeat;
  border-bottom: 1px solid #E6EABB;
  color: #967852;
  font-size: 14px;
  height: auto;
  min-height: 25px;
  margin: 0;
  padding: 10px 0 10px 40px;
  text-indent: 0;
  width: inherit !important;
}

div.article.content h3.theme {
  font-size: 2em;
  font-weight: bold;
  margin: 5px auto;
  text-align: center;
}

div.article.content h4 {
  border-bottom: 1px solid #eec;
  color: #aa8;
  font-size: 1.2em;
  font-weight: bold;
  margin: 0;
  padding: 5px;
}

div.article.content h5 {
  font-size: 1em;
  font-weight: bold;
  padding: 2px;
  margin: 5px 0;
}

/* テーブルスタイル */
div.article.content table {
  margin: 10px;
}

div.article.content table th,
div.article.content table td {
  padding: 5px;
}

tbody th,
tbody td {
  border-top: 1px solid #efefef;
}

tbody tr:first-child th,
tbody tr:first-child td {
  border-top: none;
}

/* スケジュール関連スタイル */
div.article.content ul ul.schedule {
  list-style: none;
  margin: 0 0 0 20px;
}

div.article.content ul ul.schedule li {
  list-style: none;
  margin: 0;
}

div.article.content img.map {
  display: block;
  float: left;
  margin: 20px 0;
}

div.article.content div.schedule {
  border: none !important;
  font-size: 1em;
  margin: 0 20px;
  width: 520px;
}

div.article.content div.schedule table {
  margin: 0 20px 20px 20px;
  width: 480px;
}

div.article.content div.schedule table th {
  width: 100px;
}

div.article.content div.schedule table td.t-name {
  width: 100px;
  text-align: left;
}

div.article.content div.schedule table td.charge {
  text-align: right;
}

/* チームスタイル */
div.article.content div.schedule div.team01,
div.article.content div.schedule div.team02,
div.article.content div.schedule div.team03,
div.article.content div.schedule div.team04,
div.article.content div.schedule div.team05 {
  font-size: 1em;
  width: 480px;
  margin: 0 20px;
}

div.article.content div.schedule div.team01 table,
div.article.content div.schedule div.team02 table,
div.article.content div.schedule div.team03 table,
div.article.content div.schedule div.team04 table,
div.article.content div.schedule div.team05 table {
  width: 480px;
  margin: 0;
}

div.article.content div.schedule div table td,
div.article.content div.schedule div table th {
  padding: 5px;
}

/* チーム別カラー */
div.article.content div.schedule div.team01 table { background-color: #faefef; }
div.article.content div.schedule div.team02 table { background-color: #effafa; }
div.article.content div.schedule div.team03 table { background-color: #fafaef; }
div.article.content div.schedule div.team04 table { background-color: #faeffa; }
div.article.content div.schedule div.team05 table { background-color: #effaef; }

div.article.content div.schedule div.team01 h4 { border-left-color: #ecc; border-bottom-color: #ecc; color: #a88; }
div.article.content div.schedule div.team02 h4 { border-left-color: #cee; border-bottom-color: #cee; color: #8aa; }
div.article.content div.schedule div.team03 h4 { border-left-color: #eec; border-bottom-color: #eec; color: #aa8; }
div.article.content div.schedule div.team04 h4 { border-left-color: #ece; border-bottom-color: #ece; color: #a8a; }
div.article.content div.schedule div.team05 h4 { border-left-color: #cec; border-bottom-color: #cec; color: #8a8; }

div.article.content div.schedule div.team01 h5 { background-color: #faefef; color: #966; }
div.article.content div.schedule div.team02 h5 { background-color: #effafa; color: #699; }
div.article.content div.schedule div.team03 h5 { background-color: #fafaef; color: #996; }
div.article.content div.schedule div.team04 h5 { background-color: #faeffa; color: #969; }
div.article.content div.schedule div.team05 h5 { background-color: #effaef; color: #696; }

/* スケジュール内見出し */
div.article.content div.schedule h3 {
  font-weight: bold;
  font-size: 1.2em;
  border-bottom: 2px solid #aa6;
  margin: 30px 0 10px 0;
}

div.article.content div.schedule h3 em {
  font-style: normal;
  font-weight: normal;
  font-size: 0.8em;
}

div.article.content div.schedule h4 {
  border-left: 8px solid #eec;
  border-bottom: 1px solid #eec;
  color: #996;
  font-size: 1.1em;
  margin: 5px 20px;
}

div.article.content div.schedule div h4 {
  margin: 5px 0;
}

div.article.content div.schedule h5 {
  color: #aa8;
  font-size: 1em;
  margin: 5px 20px 0 20px;
}

div.article.content div.schedule div h5 {
  color: #222;
  font-size: 1em;
  margin: 5px 0 0 0;
}

/* 特殊テーブル */
div.article.content div.schedule div table.charge {
  background-color: #FFFFF5;
  margin: 10px 0 30px 0;
}

/* テキスト要素 */
div.article.content strong {
  display: block;
  margin: 10px 0;
}

div.article.content div.schedule strong {
  margin: 10px 20px;
}

div.article.content div.schedule p {
  margin: 10px 20px;
}

div.article.content div.schedule ul li {
  margin: 10px 0;
}

div.article.content div.schedule ul li h6,
div.article.content div.schedule ul li p {
  display: inline;
  font-size: 1em;
}

/* 必須項目 */
div.article.content strong.must,
div.form strong.must {
  color: #e00;
  display: inline;
  font-size: 10px;
  font-weight: normal;
  margin: 0;
  padding: 0;
}

/* その他 */
div.fa ul li {
  list-style-type: circle;
}

/* =============================================================================
   リンクスタイル
   ============================================================================= */

.form-link {
  margin: 2em 0;
  text-align: center;
}

.form-link a {
  padding: 0.5em 1em;
  display: inline-block;
  background-color: #467ede;
  border-radius: 0.5rem;
  color: #fff;
  font-size: 120%;
  font-weight: bold;
  text-decoration: none;
}

.presentation-link {
  margin: 2em 0;
  text-align: center;
}

.presentation-link a {
  padding: 0.5em 1em;
  display: inline-block;
  background-color: #55bb36;
  border-radius: 0.5rem;
  color: #fff;
  font-size: 120%;
  font-weight: bold;
  text-decoration: none;
}