@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP);

body {
  font-family: 'ヒラギノ角ゴ W5 JIS2004', sans-serif;
  letter-spacing: 0;
  word-wrap: break-word;
  font-feature-settings: 'palt';
  text-wrap: wrap;
}
strong,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'ヒラギノ角ゴ W8 JIS2004', sans-serif;
}
/* <a href="https://storyset.com/presentation">Presentation illustrations by Storyset</a> */

/* ヘッダーを黒にする */
.site-header__container {
  background-color: #000;
  color: #fff;
}
/* ヘッダーのアイコンを白にする */
.site-header__menu-item-icon,
.site-header__submenu-item-icon {
  color: #fff;
}
.site-header__menu-item-icon:hover,
.site-header__submenu-item-icon:hover {
  color: #ccc;
}

/* エントリーボタン*/
/* #button-2 .button__button,  #button-21.button__button,   #button-39.button__button,  */

#button-2 .button__button,
#button-21 .button__button,
#button-39 .button__button {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  border-radius: 9999px;
  max-width: 350px;
  padding: 15px 25px;
  color: #000;
  line-height: 1.8;
  text-decoration: none;
  transition: 0.3s ease-in-out;
  font-weight: 700;
  background: #ffd700;
  background-position: 1% 50%;
  background-size: 200% auto;
  transition: all 0.7s ease-out;
  font-size: 1.5em;
  border: 3px solid white;
}

/* 挑戦者ギャラリーのボタン&問い合わせフォーム&ポータルサイトのボタン */
#button-115 .button__button,
#button-114 .button__button,
#button-31 .button__button,
#button-94 .button__button,
#button-43 .button__button,
#button-23 .button__button {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  border-radius: 9999px;
  max-width: 250px;
  padding: 10px 25px;
  color: #fff;
  line-height: 1.8;
  text-decoration: none;
  transition: 0.3s ease-in-out;
  font-weight: 700;
  background: #000ff0;
  background-position: 1% 50%;
  background-size: 200% auto;
  transition: all 0.7s ease-out;
}

/*ボタンの共通*/
#button-115 .button__button:hover,
#button-114 .button__button:hover,
#button-94 .button__button:hover,
#button-31 .button__button:hover,
#button-43 .button__button:hover,
#button-23 .button__button:hover,
#button-2 .button__button:hover,
#button-21 .button__button:hover,
#button-39 .button__button:hover {
  color: #fff;
  background: linear-gradient(270deg, #64dcb4, #2d96c8, #5028e6, #000ff0);
  background-position: 99% 50%;
  background-size: 200% auto;
}

/* エントリーボタン */
#button-2 .button__button:after,
#button-21 .button__button:after,
#button-39 .button__button:after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 20px;
  border-radius: 1px;
  transition: all 0.7s ease-in-out;
}

/* エントリーボタン ホバー時の状態 */
#button-2 .button__button:hover:after,
#button-21 .button__button:hover:after,
#button-39 .button__button:hover:after {
  border-top: 3px solid white; /* ホバー時の色を白に設定 */
  border-right: 3px solid white; /* ホバー時の色を白に設定 */
}

/* その他のボタン */
#button-115 .button__button:after,
#button-114 .button__button:after,
#button-94 .button__button:after,
#button-31 .button__button:after,
#button-43 .button__button:after,
#button-23 .button__button:after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 20px;
  border-radius: 1px;
  transition: all 0.7s ease-in-out;
}

/* チャンピオンのところのテキスト */
.text_yellow {
  color: #febf00;
  font-weight: bold;
  font-size: 24px;
}

/*「ファイナリスト」*/
.text_blue {
  color: #00b2b4;
}

/* 挑戦者の声に吹き出しを入れる */
.fukidashi_buttom {
  display: inline-block;
  font-weight: bold;
  color: #fff;
  background: #333;
  border-radius: 12px;
  padding: 20px 22px;
  position: relative;
}
.fukidashi_buttom::before {
  content: '';
  position: absolute;
  width: 15px;
  height: 12px;
  background: #333;
  bottom: -12px;
  left: 0;
  right: 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  margin: auto;
}

.fukidashi_top {
  display: inline-block;
  font-weight: bold;
  color: #fff;
  background: #333;
  border-radius: 12px;
  padding: 20px 22px;
  position: relative;
}
.fukidashi_top::before {
  content: '';
  position: absolute;
  width: 15px;
  height: 12px;
  background: #333;
  top: -12px; /* 上端から -12px の位置に配置 */
  left: 0;
  right: 0;
  clip-path: polygon(50% 0, 0 100%, 100% 100%); /* 上向きの三角形 */
  margin: auto;
}

/* 審査員に吹き出しを入れる */

.fukidashi_left {
  display: inline-block;
  font-weight: bold;
  color: #fff;
  background: #333;
  border-radius: 12px;
  padding: 20px 22px;
  position: relative;
}
.fukidashi_left::before {
  content: '';
  position: absolute;
  width: 12px; /* 高さと幅を入れ替える */
  height: 15px; /* 高さと幅を入れ替える */
  background: #333;
  left: -12px; /* 左端から -12px の位置に配置 */
  top: 0;
  bottom: 0;
  clip-path: polygon(0 50%, 100% 0, 100% 100%); /* 左向きの三角形 */
  margin: auto;
}

/* 審査員名前枠を入れる */

.nameBox {
  padding: 0.5em 1em;
  margin: 2em 0;
  color: #5d627b;
  background: white;
  border-top: solid 5px #5d627b;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
}
.nameBox p {
  margin: 0;
  padding: 0;
}

/* テーブルの枠線をなくす */
/* 行の下側にのみ枠線を適用 */
table,
th,
td {
  border: 1px solid transparent; /* 枠線を透明に設定 */
  border-bottom: 1px solid white;
  padding: 1.2rem !important;
}
table tr:hover {
  background-color: #212121;
}
/* テーブル内のインデントを調整する */
.indent {
  margin-left: 20px; /* <p>タグと同じ左マージンを設定 */
}

/*「そんな発想があったのか！」ところのCSS*/
.notice_font_color {
  font-weight: bold;
}
.notice_gradient_color {
  color: #ffbf00;
}

/*-----------以下はスマホ対応------------*/
@media screen and (max-width: 767px) {
  /*スマホ対応*/
  /*審査員のアイコン*/
  #image-106 .image__wrapper {
    width: 200px;
  }
}

@media screen and (max-width: 767px) {
  /*スマホ対応*/
  /* エントリーステップアイコン修正 */
  #image-49 .image__wrapper,
  #image-52 .image__wrapper,
  #image-53 .image__wrapper,
  #image-50 .image__wrapper {
    width: 75px;
    height: auto;
  }

  /* エントリーステップテキスト修正 */
  .text-box {
    display: block; /* ブロック要素にする */
    margin: 0 auto; /* 水平方向中央寄せ */
    width: 200px;
  }
}

@media screen and (max-width: 767px) {
  /*スマホ対応*/
  /*参加者の声アイコン修正*/
  #image-99 .image__wrapper,
  #image-101 .image__wrapper,
  #image-95 .image__wrapper,
  #image-72 .image__wrapper {
    width: 150px;
    height: auto;
  }
}

@media screen and (max-width: 767px) {
  /*スマホ対応*/
  /*エントリーサイトボタンの変更*/
  #button-2 .button__button,
  #button-21 .button__button,
  #button-39 .button__button {
    max-width: 200px;
    font-weight: 700;
    font-size: 1em;
  }
}

@media screen and (max-width: 767px) {
  /*スマホ対応*/
  /*メリットタイトルの調整*/
  #heading-3 .heading__h,
  #heading-10 .heading__h,
  #heading-15 .heading__h {
    font-size: 1.2em; /* h4の一般的なサイズ */
    font-weight: bold; /* h4の一般的な太さ */
  }
}

@media screen and (max-width: 767px) {
  /*スマホ対応*/
  /*チャンピオン作品のタイトルサイズ変更*/
  .championTitle_phone {
    font-size: 1.2rem;
  }
}

/*-----------以下はPC対応------------*/
@media screen and (min-width: 768px) {
  #table-48 .table__column {
    margin-right: 30px;
  }

  #table-48 .table__column:last-child {
    margin-right: 0;
  }
}

/* 以下は元ファイル */

/* hero 微調整 */
.hero__aligned-wrapper {
  background: black;
}

/* faq（質問部分） */
.faq_q {
  position: relative;
  border: 2px solid #000;
  font-weight: 500;
  cursor: pointer;
  background: #ffd700;
  color: #000;
}

.font-yellow {
  color: #ffd700;
}

@media (min-width: 768px) {
  .faq_q {
    height: 60px;
    border-radius: 30px;
    font-size: 1.6rem;
    line-height: 56px;
    margin: 30px 0 0 0;
    padding-top: 15px;
  }
}
@media (max-width: 767px) {
  .faq_q {
    width: 100%;
    height: auto;
    border-radius: 10px;
    font-size: 1.3rem;
    line-height: 1.5em;
    margin: 15px 0 0 0;
    padding: 10px 40px 10px 40px;
    text-align: left;
  }
}

.faq_q::before {
  content: 'Q';
  position: absolute;
  background: #000;
  color: #ffd700;
  border-radius: 50%;
  font-weight: 700;
}
@media (min-width: 768px) {
  .faq_q::before {
    left: 8px;
    top: 8px;
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
}
@media (max-width: 767px) {
  .faq_q::before {
    left: 8px;
    top: 8px;
    width: 24px;
    height: 24px;
    line-height: 24px;
    text-align: center;
  }
}

.faq_q::after {
  content: '';
  position: absolute;
  color: #000;
  background: url('https://kintone.cybozu.co.jp/jp/event/hack/assets/images/common/ico-list-cross.svg')
    no-repeat 50% 50%;
  background-size: 100% 100%;
}

@media (min-width: 768px) {
  .faq_q::after {
    right: 18px;
    top: 18px;
    width: 20px;
    height: 20px;
    transition: all 0.3s ease;
  }
}

@media (max-width: 767px) {
  .faq_q::after {
    right: 12px;
    top: 12px;
    width: 14px;
    height: 14px;
  }
}

/* faq（回答部分） */
.faq_a {
  display: none;
  background: rgba(100, 100, 100, 0.5);
  text-align: left;
}

@media (min-width: 768px) {
  .faq_a {
    font-size: 1.4rem;
    padding: 25px;
    margin: 15px 0 60px 0;
  }
}

@media (max-width: 767px) {
  .faq_a {
    font-size: 1.2rem;
    padding: 15px;
    margin: 5px 0 30px 0;
  }
}

/* button */
div#button-46:disabled {
  background: #292929;
  color: white;
}
