@charset "utf-8";
/*-----------------------------------------------------
	style-ibcontest.css
	ヒントページ
------------------------------------------------------*/
* {font-size: 18px;}
main a {color: #166fbf; text-decoration: underline;}

h2.titleH2 {
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 2px;
  margin-bottom: 30px;
}
h3.titleH3 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 5px;
}
/*文字色と背景色　赤*/
.bdRed { border-bottom: 1px solid #ff6c6c;}
.listRed { background:#ff6c6c; }
.fcRed { color: #ff6c6c; }
.bgRed { background: #fdebe9; }
/*文字色と背景色　オレンジ*/
.bdOrg { border-bottom: 1px solid #ff8b2c;}
.listOrg { background:#ff8b2c; }
.fcOrg { color: #ff8b2c; }
.bgOrg { background: #fef5e8; }
/*文字色と背景色　黄色*/
.bdYlw { border-bottom: 1px solid #ffaa2e;}
.listYlw { background: #ffaa2e; }
.fcYlw { color: #ffaa2e; }
.bgYlw { background: #fdffe8; }
/*文字色と背景色　黄緑*/
.bdYgrn { border-bottom: 1px solid #8dbc31;}
.listYgrn { background: #8dbc31; }
.fcYgrn { color: #8dbc31; }
.bgYgrn { background: #f5fee9; }
/*文字色と背景色　緑*/
.bdGrn { border-bottom: 1px solid #2ca368;}
.listGrn { background: #2ca368;}
.fcGrn { color: #2ca368; }
.bgGrn { background: #e9fef5; }
/*文字色と背景色　青緑*/
.bdBluegrn { border-bottom: 1px solid #22baae;}
.listBluegrn { background:#22baae; }
.fcBluegrn { color: #22baae; }
.bgBluegrn { background: #eafffe; }
/*文字色と背景色　青*/
.bdBlue { border-bottom: 1px solid #1697bf;}
.listBlue { background: #1697bf; }
.fcBlue { color: #1697bf; }
.bgBlue { background: #ebf7fc; }

/*メインビジュアル アイデアを形に…*/
section#secTitle div.mainVisual{
  margin: 70px 0 50px;
}
section#secTitle dl.preparation {
  width: 100%;
  max-width: 750px;
  background: #fff;
  padding: 20px 25px;;
  margin: 0 auto 30px;
  border-radius: 6px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
section#secTitle dl.preparation dt {
  color: #ff8b2c;
  font-weight: bold;
  font-size: 20px;
  width: 150px;
  margin: 0;
  padding: 0;
}
section#secTitle dl.preparation dd {
  line-height: 20px;
  margin: 0;
  padding: 0;
}
section#secTitle div.btnEntryHint a {
  margin-left: auto !important;
  margin-right: auto !important;
}
/*アイデアを形に*/
section#secOpening {
  margin: 0;
  padding: 70px 0;
}
section#secOpening ul.stepLink {
  width: 100%;
  max-width: 550px;
  margin: 0;
  padding: 20px 20px 5px;
  background: #fff;
  list-style: none;
  border-radius: 6px;
}
section#secOpening ul.stepLink li {
  margin-bottom: 15px;
}
section#secOpening ul.stepLink li > span {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  border-radius: 4px;
  display: inline-block;
  padding: 2px 10px;
  margin-right: 10px;  
}
/*ステップ*/
section#secStep1,section#secStep2,section#secStep3,
section#secStep4,section#secStep5,section#secStep6,
section#secStep7,section#secEntry {
  padding: 100px 0 50px;
}

/*ヒントと例*/
div.hintWrap {
  width: 100%;
  margin: 0 0 60px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
div.hintWrap div.hintImg {
  width: 200px;
  text-align: center;
}
div.hintWrap div.hintTxt {
  width: calc( 100% - 200px );
}
div.hintWrap div.hintTxt div.hintInner {
  padding: 20px;
  background: #fff;
  border-radius: 6px;
}
div.hintWrap div.hintTxt div.hintInner ul {
  padding-inline-start: 20px;
  margin-bottom: 0;
}
div.hintWrap div.hintTxt div.hintInner p {
  margin-bottom: 0;
}

div.entryArea {
  width: 90%;
  max-width: 800px;
  background-color: #FFF;
  padding: 20px;
  margin: 0 auto 10px;
}
p.chk-entry {
  text-align: center;
  display: flex;
  justify-content: center;
}
.btnEntryHint a {
  width:300px;
  margin: 20px auto;
  padding: 15px 0;
  display: block;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background-color: #ff8b2c;
  border-radius: 4px;
  text-decoration: none;  
}
.btnEntryHint a:hover {
  cursor: pointer;
}
.btnEntryHint a.noDl {
  pointer-events: none;
  background-color: #999;
}

/*PC画面調整*/
@media (max-width: 1700px) {
}
@media (max-width: 768px) {
	
}
@media (max-width: 575px) {
  h2.titleH2 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  h3.titleH3 {
    font-size: 20px;
  }
  .img-sp7 {
    width: 70% !important;
    height: auto;
  }
  /*メインビジュアル アイデアを形に…*/
  section#secTitle div.mainVisual{
    margin: 30px 0;
  }
  section#secTitle dl.preparation {
    display: block;
    padding: 15px;
    margin: 0 auto 10px;
  }
  section#secTitle dl.preparation dt {
    font-size: 18px;
    width: 100%;
  }
  section#secTitle dl.preparation dd {
    width: 100%;
  }
  /*アイデアを形に*/
  section#secOpening {
    padding: 40px 0;
  }
  /*ステップ*/
  section#secStep1,section#secStep2,section#secStep3,
  section#secStep4,section#secStep5,section#secStep6,
  section#secStep7,section#secEntry {
    padding: 40px 0 30px;
  }
  /*ヒントと例*/
  div.hintWrap {
    margin: 0 0 60px;
    display: block;
  }
  div.hintWrap div.hintImg {
    width: 100%;
    text-align: center;
  }
  div.hintWrap div.hintImg > img {
    width: auto;
    height: 130px;
  }
  div.hintWrap div.hintTxt {
    width: 100%;
  }
  div.btnEntryHint a {
    margin: 25px auto;
  }
  
}






/*-----------------------------------------------------
	ページ名/部品名
------------------------------------------------------*/
/*　section名　*/



