@charset "utf-8";
/* ========== components ========== */
a:link {
  color: #03c;
}
a:visited {
  color: #03c;
}
a:hover,
a:active {
  color: #2c5ef4;
  text-decoration: none;
}
img.blank,
img.pdf {
  margin-bottom: 0;
  margin: 0 0.2em;
  vertical-align: middle;
  display: inline;
}
p.contents {
  width: 100%;
  font-size: 100%;
  line-height: normal;
  margin: 0 0 0.5em 0;
  padding: 0;
}
div.tbl {
  display: table;
}
div.tbl div.tbl_r {
  display: table-row;
}
div.tbl div.tbl_r div.tbl_c {
  display: table-cell;
}
span.strong {
  font-weight: bold;
  text-decoration: underline;
}
.center {
  text-align: center;
}
.block_center {
  margin-left: auto;
  margin-right: auto;
}
/* ========== page ========== */
div#wrapper {
  width: 100%;
  color: #333;
  font-family: Arial, "Yu Gothic", 'メイリオ', Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana, Helvetica, sans-serif;
  text-align: center;
  line-height: 1.6;
  /* PC */
  /* smartPhone */
  text-align: left;
  display: block;
}
@media screen and (min-device-width: 641px) {
  div#wrapper {
    font-size: 16px;
  }
}
@media only screen and (max-width: 640px) {
  div#wrapper {
    font-size: 4vw;
  }
}
div#wrapper div#header {
  width: 98%;
  background-color: #FFF;
  display: block;
  overflow: hidden;
  height: auto;
}
div#wrapper div#header h1.title {
  width: 98%;
  border: ridge 0.2em;
  margin: 0.5em auto;
  text-align: center;
  box-shadow: 0.2em 0.2em 0.2em rgba(100, 100, 100, 0.8);
}
div#wrapper div#header h1.title img {
  width: 100%;
}
div#wrapper div#content {
  width: 100%;
  background: #206441;
  background-image: url("/common/img-event/hirameki30/img30/bg.jpg");
  background-repeat: repeat;
}
div#wrapper div#content div.border {
  height: 0.5em;
  display: block;
}
div#wrapper div#content table#program {
  width: 95%;
  display: block;
  margin: 0.5em auto 0.5em auto;
  padding: 0;
  border-collapse: separate;
  border-spacing: 0.3em 0.6em;
}
div#wrapper div#content table#program tr th {
  text-align: center;
  padding: 0.2em;
  font-size: larger;
  box-shadow: 0.2em 0.2em 0.2em rgba(100, 100, 100, 0.8);
  box-sizing: border-box;
  font-weight: bold;
  vertical-align: middle;
  /* PC */
  /* smartPhone */
}
@media screen and (min-device-width: 641px) {
  div#wrapper div#content table#program tr th {
    background-color: #FFF;
    width: 15%;
    margin-right: 5%;
    border-radius: 0.5em 0px 0px 0.5em;
    border-top: solid 0.1em #FF00FF;
    border-bottom: solid 0.3em #FF00FF;
    border-left: solid 0.1em #FF00FF;
    border-right: solid 0.3em #FF00FF;
  }
}
@media only screen and (max-width: 640px) {
  div#wrapper div#content table#program tr th {
    background-color: #5500FF;
    color: white;
    width: 100%;
    display: block;
    border-radius: 0.5em 0.5em 0px 0px;
    border-top: solid 0.1em #FF00FF;
    border-bottom: groove 0.1em #B7B7B7;
    border-left: solid 0.1em #FF00FF;
    border-right: solid 0.3em #FF00FF;
  }
}
div#wrapper div#content table#program tr td {
  padding: 10px;
  box-sizing: border-box;
  box-shadow: 0.2em 0.2em 0.2em rgba(100, 100, 100, 0.8);
  vertical-align: middle;
  background-color: #FFF;
  /* PC */
  /* smartPhone */
}
@media screen and (min-device-width: 641px) {
  div#wrapper div#content table#program tr td {
    width: 80%;
    border-radius: 0px 0.5em 0.5em 0px;
    border-top: solid 0.1em #FF00FF;
    border-bottom: solid 0.3em #FF00FF;
    border-left: solid 0.1em #FF00FF;
    border-right: solid 0.3em #FF00FF;
  }
  div#wrapper div#content table#program tr td img.theme {
    float: right;
    width: 40%;
  }
}
@media only screen and (max-width: 640px) {
  div#wrapper div#content table#program tr td {
    width: 100%;
    display: block;
    border-radius: 0px 0px 0.5em 0.5em;
    border-top: solid 0.1em #B7B7B7;
    border-bottom: solid 0.3em #FF00FF;
    border-left: solid 0.1em #FF00FF;
    border-right: solid 0.3em #FF00FF;
  }
  div#wrapper div#content table#program tr td img.theme {
    width: 100%;
  }
}
div#wrapper div#content table#program tr td div.schedule {
  display: table-row;
}
div#wrapper div#content table#program tr td div.schedule div.time {
  display: table-cell;
  font-weight: bold;
  margin-right: 1em;
  text-align: right;
  text-decoration: underline;
  /* PC */
  /* smartPhone */
}
@media screen and (min-device-width: 641px) {
  div#wrapper div#content table#program tr td div.schedule div.time {
    border-bottom: none;
  }
}
@media only screen and (max-width: 640px) {
  div#wrapper div#content table#program tr td div.schedule div.time {
    border-bottom: dashed 0.1em #000;
  }
}
div#wrapper div#content table#program tr td div.schedule div.action {
  display: table-cell;
  vertical-align: middle;
  /* PC */
  /* smartPhone */
}
div#wrapper div#content table#program tr td div.schedule div.action li {
  list-style-type: circle;
}
@media screen and (min-device-width: 641px) {
  div#wrapper div#content table#program tr td div.schedule div.action {
    border-bottom: none;
  }
}
@media only screen and (max-width: 640px) {
  div#wrapper div#content table#program tr td div.schedule div.action {
    border-bottom: dashed 0.1em #000;
  }
}
div#wrapper div#content table#program tr td div.schedule:last-child div.time {
  border-bottom: none;
}
div#wrapper div#content table#program tr td div.schedule:last-child div.action {
  border-bottom: none;
}
div#wrapper div#content table#program tr td img#map {
  max-width: 100%;
}
div#wrapper div#content div.report div.report_title {
  width: 98%;
  display: block;
  height: auto;
  overflow: hidden;
  margin: 0.5em auto 0 auto;
  border-top: solid 0.1em #00FFFF;
  border-bottom: groove 0.1em #B7B7B7;
  border-left: solid 0.1em #00FFFF;
  border-right: solid 0.3em #00FFFF;
  box-shadow: 0.2em 0.2em 0.2em rgba(100, 100, 100, 0.8);
  box-sizing: border-box;
  border-radius: 0.5em 0.5em 0 0;
}
div#wrapper div#content div.report div.report_title h2 {
  text-align: center;
  margin: 0;
  background-color: #5500FF;
  color: #FFF;
  font-weight: bold;
  font-size: larger;
}
div#wrapper div#content div.report div.report_content {
  width: 98%;
  display: block;
  background-color: #FFF;
  height: auto;
  overflow: hidden;
  padding: 0.5em;
  margin: 0 auto 1em auto;
  border-top: groove 0.1em #B7B7B7;
  border-bottom: solid 0.3em #00FFFF;
  border-left: solid 0.1em #00FFFF;
  border-right: solid 0.3em #00FFFF;
  box-shadow: 0.2em 0.2em 0.2em rgba(100, 100, 100, 0.8);
  box-sizing: border-box;
  border-radius: 0 0 0.5em 0.5em;
}
div#wrapper div#content div.report div.report_content div.block {
  margin: 0.5em 0.5em 1.5em 0.5em;
  height: auto;
  overflow: hidden;
}
div#wrapper div#content div.report div.report_content div.vstack {
  width: 100%;
  clear: both;
  display: block;
  height: auto;
  overflow: hidden;
}
div#wrapper div#content div.report div.report_content div.hstack {
  vertical-align: middle;
  /* PC */
  /* smartPhone */
}
@media screen and (min-device-width: 641px) {
  div#wrapper div#content div.report div.report_content div.hstack {
    margin: 0 0.5em;
    text-align: center;
    width: 45%;
    float: left;
    display: block;
  }
}
@media only screen and (max-width: 640px) {
  div#wrapper div#content div.report div.report_content div.hstack {
    margin: 0.5em;
    text-align: center;
    width: 100%;
    clear: both;
    display: block;
  }
}
div#wrapper div#content div.report div.report_content div.hstack img {
  max-width: 100%;
}
div#wrapper div#content div.other_box {
  width: 98%;
  display: block;
  background-color: #FFF;
  border-top: solid 0.1em #FF8000;
  border-bottom: solid 0.3em #FF8000;
  border-left: solid 0.1em #FF8000;
  border-right: solid 0.3em #FF8000;
  box-shadow: 0.2em 0.2em 0.2em rgba(100, 100, 100, 0.8);
  box-sizing: border-box;
  padding: 0.5em;
  margin: 0.5em auto 0.5em auto;
  text-align: center;
  border-radius: 0.5em;
  height: auto;
  overflow: hidden;
}
div#wrapper div#content div#about_fiber div:nth-child(1) {
  display: table-row;
  width: 100%;
  padding-bottom: 1em;
}
div#wrapper div#content div#about_fiber div:nth-child(1) div:nth-child(1) {
  display: table-cell;
  width: 20%;
  vertical-align: middle;
}
div#wrapper div#content div#about_fiber div:nth-child(1) div:nth-child(2) {
  display: table-cell;
  width: 80%;
  vertical-align: middle;
}
div#wrapper div#content div#about_fiber div:nth-child(1) div:nth-child(2) h2 {
  margin: auto auto auto 1em;
}
div#wrapper div#content div#about_fiber div:nth-child(2) {
  width: 100%;
}
div#wrapper div#content div#organize img {
  max-width: 100%;
}
