@charset "UTF-8";
/*! sanitize.css v3.0.0 | CC0 1.0 Public Domain | github.com/10up/sanitize.css */
/* Normalization */
audio:not([controls]) { display: none; }

button { overflow: visible; -webkit-appearance: button; }

details { display: block; }

html { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; -webkit-text-size-adjust: 100%; }

input { -webkit-border-radius: 0; }
input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; }
input[type="number"] { width: auto; }
input[type="search"] { -webkit-appearance: textfield; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

main { display: block; }

pre { overflow: auto; }

progress { display: inline-block; }

small { font-size: 75%; }

summary { display: block; }

svg:not(:root) { overflow: hidden; }

template { display: none; }

textarea { overflow: auto; }

[hidden] { display: none; }

/* Universal inheritance */
*, ::before, ::after { -webkit-box-sizing: inherit; box-sizing: inherit; }

* { font-size: inherit; line-height: inherit; }

::before, ::after { text-decoration: inherit; vertical-align: inherit; }

/* Opinionated defaults */
*, ::before, ::after { border-style: solid; border-width: 0; }

* { background-repeat: no-repeat; margin: 0; padding: 0; }

:root { background-color: #FFFFFF; -webkit-box-sizing: border-box; box-sizing: border-box; color: #000000; font: 100%/1.5 Helvetica, Arial, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; text-rendering: optimizeLegibility; }

a { text-decoration: none; }

audio, canvas, iframe, img, svg, video { vertical-align: middle; }

button, input, select, textarea { background-color: transparent; }

button, input, select, textarea { color: inherit; font-family: inherit; font-style: inherit; font-weight: inherit; }

button, [type="button"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="reset"], [type="search"], [type="submit"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], select, textarea { min-height: 1.5em; }

code, kbd, pre, samp { font-family: monospace, monospace; }

nav ol, nav ul { list-style: none; }

select { -moz-appearance: none; -webkit-appearance: none; }
select::-ms-expand { display: none; }
select::-ms-value { color: currentColor; }

table { border-collapse: collapse; border-spacing: 0; }

textarea { resize: vertical; }

::selection { background-color: #B3D4FC; color: #ffffff; text-shadow: none; }

[aria-busy="true"] { cursor: progress; }

[aria-controls] { cursor: pointer; }

[aria-disabled] { cursor: default; }

[hidden][aria-hidden="false"] { clip: rect(0 0 0 0); display: inherit; position: absolute; }
[hidden][aria-hidden="false"]:focus { clip: auto; }

#emg, #emg2, #emg3 { margin: 0; padding: 0; text-align: center; font-size: medium; line-height: 1.56; }

#emg > table, #emg2 > table, #emg3 > table { margin: 10px auto !important; }

#emg table, #emg2 table, #emg3 table { margin: 0 auto; padding: 0; border-collapse: collapse; border-spacing: 0; }

#emg table td, #emg2 table td, #emg3 table td { white-space: normal; padding: 2px; color: #333; }

#emg a, #emg2 a, #emg3 a { color: #00f; text-decoration: underline; }

#emg2 br { display: none; }

#yj-emg { max-width: 950px; margin: auto; }

:root { color: #444; font-size: 88%; font: 100%/1.5 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ＭＳ Ｐゴシック",  Helvetica, Arial, Verdana, "MS PGothic", sans-serif; }

a:link, a:hover, a:active, a:visited { text-decoration: none; }

@media only screen and (min-width: 980px) { :root { font-size: 100%; } }
@media only screen and (max-width: 979px) and (min-width: 640px) { :root { font-size: 86%; } }
@media only screen and (max-width: 639px) { body { position: relative; } }
*, ::before, ::after { -webkit-box-sizing: border-box; box-sizing: border-box; }

li { list-style-type: none; }

sup { vertical-align: top; }

.wrapper { font-size: 150%; font-weight: bold; }
@media only screen and (max-width: 550px) { .wrapper { font-size: 125%; } }

.center { text-align: center; }

.labelM { text-align: center; font-size: 150%; color: #ff0031; line-height: 1.2; }
@media only screen and (max-width: 550px) { .labelM { font-size: 150%; } }

.btn { display: block; margin: 15px 0 0; padding: 20px 40px 20px 20px; background-color: #ff0031; color: #fff; background-image: url(../images/icon-arrow.png); background-repeat: none; background-position: 95% center; text-decoration: none; text-align: center; line-height: 1.2; font-size: 150%; }
@media only screen and (max-width: 550px) { .btn { font-size: 140%; } }
.btn:hover { background-color: rgba(255, 0, 49, 0.75); }
.btn.m-inverse { color: #ff0031; background-color: #fff; background-image: url(../images/icon-arrow2.png); }

.titleTrapezoid { position: relative; border-top: 77px solid #ff0031; border-left: 20px solid transparent; border-right: 20px solid transparent; margin-bottom: 40px; }
.titleTrapezoid__text { position: absolute; top: -77px; width: 100%; color: #fff; font-size: 150%; text-align: center; padding: 15px 10px 10px; }
@media only screen and (max-width: 550px) { .titleTrapezoid__text { font-size: 150%; } }
@media only screen and (max-width: 405px) { .titleTrapezoid__text.m-type1 { font-size: 130%; } }
@media only screen and (max-width: 335px) { .titleTrapezoid__text.m-type1 { font-size: 120%; padding-top: 5px; } }

.text-color { color: #ff0031; }

.header { position: relative; z-index: 100; background-color: #ff0031; }
.header__inner { *zoom: 1; width: 100%; max-width: 970px; margin: auto; padding: 35px 10px 20px; }
.header__inner:after { content: ""; display: block; clear: both; }
@media only screen and (max-width: 500px) { .header__inner { padding: 20px 10px 20px; } }
.header__logoHack { float: left; display: block; }
.header__logoHack img { width: 100%; max-width: 230px; height: auto; }
.header__logoHack a { display: block; }
@media only screen and (max-width: 500px) { .header__logoHack { height: 24px; }
  .header__logoHack img { max-width: 150px; vertical-align: top; } }
.header__logoYj { float: right; text-indent: -9999px; }
.header__logoYj a { display: block; width: 170px; height: 42.5px; text-indent: -9999px; color: transparent; background: url(http://i.yimg.jp/c/logo/f/2.0/yj_w_28_2x.png) no-repeat; -webkit-background-size: contain; background-size: contain; }
@media only screen and (max-width: 500px) { .header__logoYj a { width: 40px; height: 22px; background-image: url(http://i.yimg.jp/c/logo/s/2.0/yj_w_22_2x.png); } }

.footer { font-size: 67%; background-color: #ff0031; padding: 60px 0 40px; color: #fff; font-weight: normal; }
.footer__inner { width: 100%; max-width: 970px; margin: auto; padding: 0 10px; text-align: center; }
@media only screen and (max-width: 500px) { .footer__logoYj img { width: 156px; height: 39pxL; } }
.footer__text { margin-bottom: 20px; }

.footerLink { margin-bottom: 10px; }
.footerLink__item { display: inline-block; *display: inline; *zoom: 1; margin-bottom: 20px; padding: 0 10px; border-left: 1px solid #fff; line-height: 1; }
.footerLink__item:first-child { border-left: none; }
.footerLink a { color: #fff; }
.footerLink a:hover { text-decoration: underline; }

.relationLink { margin: 0 auto 10px; text-align: center; }
.relationLink__item { display: inline-block; *display: inline; *zoom: 1; margin: 0 30px 40px; padding: 0 10px; background-position: center; }
@media only screen and (max-width: 500px) { .relationLink__item { margin: 0 5px 40px; } }
.relationLink__item:hover { background-color: #ff0031; }
.relationLink__item.m-facebook { width: 77px; background-image: url(../images/icon-fb.png); }
.relationLink__item.m-nico { width: 77px; background-image: url(../images/icon-nico.png); }
.relationLink__item.m-youtube { width: 100px; background-image: url(../images/icon-yt.png); }
.relationLink a { display: block; width: 100%; height: 70px; text-indent: -9999px; }

.secNormal { width: 100%; max-width: 970px; margin: 0 auto 100px; padding: 0 15px; }
.secNormal__title { margin-bottom: 20px; text-align: center; }
.secNormal__bd { max-width: 750px; margin: 0 auto 50px; }
.secNormal__text { margin-bottom: 30px; }
.secNormal__text.m-color { color: #ff0031; }
.secNormal__text a:link, .secNormal__text a:hover, .secNormal__text a:active, .secNormal__text a:visited { color: #ff0031; }
.secNormal__text a:hover { text-decoration: underline; }
.secNormal__btn { max-width: 690px; margin: auto; }

.secBanner { position: relative; }
.secBanner__hd { position: relative; top: -70px; padding: 100px 15px 0; -webkit-transform: skewY(-3deg); transform: skewY(-3deg); -webkit-backface-visibility: hidden; backface-visibility: hidden; background-color: #ff0031; }
@media only screen and (max-width: 550px) { .secBanner__hd { top: -40px; padding: 50px 15px 0; } }
.secBanner__bd { width: 100%; max-width: 950px; margin: auto; }
.secBanner__title { position: relative; bottom: -4px; width: 100%; max-width: 550px; height: 252px; margin: auto; background-image: url(../images/ex-text-hackdayExhibition2016.png); -webkit-background-size: contain; background-size: contain; background-position: center bottom; text-indent: -9999px; color: transparent; -webkit-transform: skewY(3deg); transform: skewY(3deg); -webkit-backface-visibility: hidden; backface-visibility: hidden; }
@media only screen and (max-width: 550px) { .secBanner__title { max-width: 400px; padding-bottom: 32%; height: auto; } }

.anchorNav { margin: 40px 0 20px; text-align: center; }
@media only screen and (max-width: 500px) { .anchorNav { max-width: 260px; text-align: left; margin: 40px auto 20px; } }
.anchorNav__item { display: inline-block; margin-left: 20px; }
.anchorNav__item:first-child { margin-left: 0; }
@media only screen and (max-width: 500px) { .anchorNav__item { margin-left: 0; } }
.anchorNav a { color: #ff0031; }

.iconMenu { display: inline-block; width: 25px; height: 18px; }
.iconMenu__line { display: block; width: 100%; height: 2px; margin-top: 6px; background-color: #333; }
.iconMenu__line:first-child { margin-top: 0; }

.dateTime { width: 100%; max-width: 800px; height: 0; margin: auto; padding-bottom: 14%; background-image: url(../images/ex-text-datePlace.png); -webkit-background-size: contain; background-size: contain; background-position: center; text-indent: -9999px; }

.eventImage { margin-bottom: 60px; padding: 0 15px; }
.eventImage__list { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.eventImage__list > li { max-width: 310px; width: 33%; margin: 0 0 20px 10px; }
.eventImage__list > li:first-child { margin-left: 0; }
.eventImage__text { text-align: center; }
.eventImage__text a:link, .eventImage__text a:hover, .eventImage__text a:active, .eventImage__text a:visited { color: #ff0031; }
.eventImage__text a:hover { text-decoration: underline; }
.eventImage img { width: 100%; height: auto; }

.displayList { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.displayList > li { width: 227px; -webkit-box-flex: 0; -webkit-flex: 0 0 227px; flex: 0 0 227px; min-height: 200px; margin: 0 0 20px 20px; }
@media only screen and (max-width: 770px) { .displayList > li { -webkit-box-flex: 1; -webkit-flex: 1 0 227px; flex: 1 0 227px; } }
@media only screen and (min-width: 771px) { .displayList > li:last-child { -webkit-box-flex: 0; -webkit-flex: 0 0 227px; flex: 0 0 227px; } }
@media only screen and (max-width: 770px) and (min-width: 530px) { .displayList > li:last-child { -webkit-box-flex: 0; -webkit-flex: 0 0 47%; flex: 0 0 47%; } }
.displayList img { display: inherit; max-width: 227px; margin: auto; }
.displayList__desc { font-size: 83%; }

@media only screen and (max-width: 500px) { .displayList { *zoom: 1; display: block; }
  .displayList:after { content: ""; display: block; clear: both; }
  .displayList > li { width: 100%; float: none; min-height: 200px; margin: 0 auto 20px; }
  .displayList > li:first-child { margin-left: auto; } }
.place { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.place__hd { width: 100%; max-width: 440px; margin: auto; padding: 0 20px 20px 0; overflow: hidden; }
@media only screen and (max-width: 500px) { .place__hd { height: 300px; } }
.place__bd { -webkit-box-flex: 1; -webkit-flex: 1 0 300px; flex: 1 0 300px; }
.place__text { margin-bottom: 20px; }
.place__rootList { font-size: 67%; padding-top: 45px; background-image: url("../images/icon-rout.png"); -webkit-background-size: 41px 41px; background-size: 41px 41px; }
@media only screen and (max-width: 768px) { .place__rootList { padding: 0 0 0 48px; font-size: 80%; } }
.place #map { width: 420px; height: 370px; }

@media only screen and (max-width: 440px) { .place { display: block; } }
.fbBox { width: 500px; margin: auto; }
@media only screen and (max-width: 500px) { .fbBox { width: 320px; } }
