@charset "UTF-8";
body {
  margin: 0;
  padding: 0; }

html, body {
  height: 100%; }

img {
  line-height: 0;
  font-size: 0;
  border: 0; }

a img, fieldset, img {
  border: 0; }

blockquote, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, ul, li, ol, p, pre, span, td, th {
  margin: 0;
  padding: 0; }

h1, h2, h3, h4, h5, h6, p, address {
  font-size: 100%;
  font-weight: normal; }

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

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%; }

a:link, a:visited {
  color: #000;
  text-decoration: none; }

a:hover, a:active {
  color: #333;
  text-decoration: none; }

.cf:before,
.cf:after {
  content: " ";
  display: table; }

.cf:after {
  clear: both; }

.cf {
  *zoom: 1; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body {
  background: #000 url("../img/cbg.jpg") center top repeat/120% auto;
  color: #333; }

#container {
  margin: 0 auto;
  text-align: center;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","Meiryo", "メイリオ","ＭＳ Ｐゴシック","MS PGothic", "Osaka",sans-serif;
  font-size: 3.6vw;
  line-height: 160%; }

.fit {
  width: 100%;
  height: auto;
  display: block; }

.pc {
  display: none; }

.cInner {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  padding: 0 3vw; }

a.blank {
  background: url(../img/link_blank.png) center right no-repeat/5vw auto;
  padding: 1vw 7vw 1vw 0;
  text-decoration: underline; }

.btnB {
  width: 100%;
  margin: 3vw auto 0 auto;
  text-align: center; }
  .btnB a {
    display: inline-block;
    font-weight: bold;
    color: #cb3d28;
    padding: 2vw 14vw;
    border-radius: 1vw;
    position: relative;
    background: -moz-linear-gradient(90deg, #c09556 0%, #ebc793 48%, #c09556 100%);
    background: -webkit-linear-gradient(90deg, #c09556 0%, #ebc793 48%, #c09556 100%); }
    .btnB a:after {
      content: "";
      display: block;
      width: 3vw;
      height: 2vw;
      background: url(../img/arrow_red.png) center top no-repeat/3vw auto;
      position: absolute;
      right: 3vw;
      top: 50%;
      margin-top: -1vw; }

/*-------------------------------------------------
	++ MAIN 
-------------------------------------------------*/
#main {
  background: url("../img/main_bg.jpg") center top no-repeat/180% auto; }
  #main #mainHeader {
    padding: 3vw 0; }
    #main #mainHeader p {
      color: #3483a0;
      line-height: 140%;
      font-weight: bold; }
    #main #mainHeader h1 {
      margin-top: 3vw; }
      #main #mainHeader h1 span {
        display: block;
        margin: 0 auto;
        text-align: center; }
        #main #mainHeader h1 span.mainTitle {
          margin-bottom: 3vw; }
        #main #mainHeader h1 span.logo {
          padding: 0 15vw; }
  #main .mainMenu {
    margin: 0 auto;
    text-align: center; }
    #main .mainMenu ul {
      position: relative;
      letter-spacing: -.4em; }
      #main .mainMenu ul li {
        display: inline-block;
        letter-spacing: normal; }
        #main .mainMenu ul li a {
          display: block; }
      #main .mainMenu ul.modalmenu {
        padding: 0 2vw;
        margin-bottom: 3vw; }
        #main .mainMenu ul.modalmenu li {
          width: 49%; }
      #main .mainMenu ul.evMenu li {
        width: 33%;
        padding: 0 1vw; }

/*-------------------------------------------------
	++ SECTION COMMON 
-------------------------------------------------*/
.section {
  background: url("../img/main_title_logo.png") center top no-repeat/16vw auto;
  position: relative;
  text-align: left;
  padding: 0 0 0 0;
  line-height: normal;
  margin-bottom: 10vw;
  color: #FFF; }
  .section .secHead {
    padding-top: 27vw; }
    .section .secHead h2 {
      font-size: 4.4vw;
      font-weight: bold;
      margin-bottom: 3vw; }
    .section .secHead .read {
      padding: 0 5vw;
      font-weight: bold; }
    .section .secHead .time {
      padding: 1vw 3vw; }
  .section .secBlock {
    border-radius: 3vw;
    position: relative;
    margin-top: 16vw;
    padding: 3vw 4vw; }
    .section .secBlock.noneEn {
      margin-top: 5vw; }
    .section .secBlock.first {
      margin-top: 12vw; }
    .section .secBlock .enTitle {
      width: 100%;
      height: 6vw;
      position: absolute;
      top: -5.5vw;
      left: 0; }
      .section .secBlock .enTitle img {
        margin: 0 auto;
        text-align: center;
        width: auto;
        height: 6vw; }
    .section .secBlock .timeBadge {
      position: absolute;
      top: -10vw;
      left: 0;
      width: 18%; }
    .section .secBlock .title {
      background-color: #000;
      color: #FFF;
      padding: 2vw 3vw;
      margin-bottom: 2vw;
      font-size: 4vw;
      font-weight: bold;
      text-align: center; }
    .section .secBlock .secWrap {
      text-align: left; }
      .section .secBlock .secWrap .secLeft .cap {
        font-size: 2.6vw;
        margin-top: 1vw; }
      .section .secBlock .secWrap .secRight {
        margin-top: 2vw; }
      .section .secBlock .secWrap.secWrapW {
        background-color: #FFF;
        padding: 3vw;
        border-radius: 3vw;
        margin-bottom: 3vw;
        color: #333; }
        .section .secBlock .secWrap.secWrapW .title {
          background-color: transparent;
          color: #000; }
      .section .secBlock .secWrap.secWrapY {
        margin-bottom: 5vw; }
    .section .secBlock .att {
      text-align: left;
      font-size: 3.4vw;
      margin-top: 3vw; }

/*-------------------------------------------------
	++ TWITTER 
-------------------------------------------------*/
#twitter {
  margin-top: 7vw;
  background-image: none; }
  #twitter .cInner {
    padding: 0 5vw; }

/*-------------------------------------------------
	++ INFORMATION 
-------------------------------------------------*/
#information {
  background: url("../img/main_title_logo.png") center 7vw no-repeat/16vw auto;
  position: relative;
  text-align: left;
  line-height: normal;
  margin-bottom: 10vw;
  padding: 28vw 0 0 0;
  color: #FFF; }
  #information .informationInner {
    background: rgba(0, 0, 0, 0.8);
    position: relative;
    padding: 5vw 3vw; }
    #information .informationInner:before, #information .informationInner:after {
      content: "";
      display: block;
      background: url("../img/intro_line_sp.png") center top no-repeat/100% auto;
      width: 100%;
      height: 2px;
      position: absolute;
      top: 0;
      left: 0; }
    #information .informationInner:after {
      top: auto;
      bottom: 0; }
    #information .informationInner .secHead {
      margin-bottom: 3vw; }
      #information .informationInner .secHead h2 {
        margin: 0 auto 3vw auto;
        text-align: center; }
      #information .informationInner .secHead p {
        line-height: 160%;
        padding: 0 2vw; }
        #information .informationInner .secHead p strong {
          color: #e9ca00; }
    #information .informationInner .secBlock {
      text-align: left;
      margin-bottom: 3vw; }
      #information .informationInner .secBlock.date {
        background: #FFF;
        color: #333;
        padding: 2vw;
        border-radius: 3vw; }
        #information .informationInner .secBlock.date dl dt {
          width: 15%;
          float: left;
          text-align: right; }
        #information .informationInner .secBlock.date dl dd {
          padding-left: 16%;
          margin-bottom: 1vw; }
          #information .informationInner .secBlock.date dl dd:last-child {
            margin-bottom: 0; }
      #information .informationInner .secBlock.att ul {
        margin-left: 1.5em;
        line-height: 170%;
        font-size: 3.2vw; }
        #information .informationInner .secBlock.att ul li {
          text-indent: -1.5em; }

/*-------------------------------------------------
	++ LIVE
-------------------------------------------------*/
#live .secHead {
  background: url("../img/live_title.png") center -2vw no-repeat/100% auto; }
  #live .secHead h2 {
    color: #e74931; }
  #live .secHead .read {
    color: #e74931; }
#live .mcPhoto {
  margin-top: 3vw;
  padding: 0 16vw; }
#live .secBlock {
  background-color: #e74931; }
  #live .secBlock.first {
    background-color: transparent;
    border: 1vw solid #e74931; }
    #live .secBlock.first .enTitle {
      top: -6vw; }
    #live .secBlock.first .title {
      background-color: #e74931; }
    #live .secBlock.first .btnB {
      position: relative;
      width: 100%;
      padding-top: 8vw; }
      #live .secBlock.first .btnB a {
        font-size: 5vw; }
      #live .secBlock.first .btnB .badge {
        width: 30%;
        position: absolute;
        top: -10vw;
        right: -0; }

.acList {
  margin-top: 2vw; }
  .acList dl dt {
    width: 24%;
    margin-right: 1%;
    float: left;
    clear: both;
    border: 1px dotted #FFF;
    padding: 1vw;
    text-align: center;
    margin-bottom: 1vw; }
  .acList dl dd {
    float: left;
    padding: 1vw;
    margin-bottom: 1vw;
    width: 75%; }

/*-------------------------------------------------
	++ WORKSHOP
-------------------------------------------------*/
#workshop .secHead {
  background: url("../img/workshop_title.png") center -2vw no-repeat/90% auto; }
  #workshop .secHead h2 {
    color: #3483a0; }
  #workshop .secHead .read {
    color: #3483a0; }
#workshop .secBlock {
  background-color: #3483a0; }
  #workshop .secBlock .secWrapW .secLeft img {
    width: 50%;
    margin: 0 auto;
    text-align: center; }
  #workshop .secBlock .secWrapW .title {
    color: #3483a0;
    padding: 2vw 0;
    margin-bottom: 0; }

/*-------------------------------------------------
	++ ACTIVITIES
-------------------------------------------------*/
#activities .secHead {
  background: url("../img/activities_title.png") center -2vw no-repeat/90% auto; }
  #activities .secHead h2 {
    color: #ffdd00; }
  #activities .secHead .read {
    color: #ffdd00; }
#activities .secBlock {
  background-color: #ffdd00;
  color: #333; }

/*-------------------------------------------------
	++ PHOTO SPOT
-------------------------------------------------*/
#photospot .secHead {
  background: url("../img/photospot_title.png") center -2vw no-repeat/100% auto; }
  #photospot .secHead h2 {
    color: #b57dfa; }
  #photospot .secHead .read {
    color: #b57dfa; }
#photospot .psWrap {
  border: 1vw solid #b57dfa;
  border-radius: 15px;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 3vw;
  margin-top: 15vw;
  position: relative; }
  #photospot .psWrap .title {
    background: url("../img/photospot_titlebg_sp.png") center top no-repeat/100% auto;
    height: 15vw;
    position: absolute;
    top: -7vw;
    left: 5%;
    font-size: 4vw;
    padding-top: 2vw;
    font-weight: bold;
    width: 90%;
    margin: 0 auto;
    text-align: center;
    line-height: 130%; }
  #photospot .psWrap .badge {
    width: 22%;
    position: absolute;
    top: -13vw;
    right: -3vw; }
  #photospot .psWrap .secWrap {
    text-align: left;
    padding-top: 7vw; }
    #photospot .psWrap .secWrap .secRight {
      margin-top: 3vw; }
      #photospot .psWrap .secWrap .secRight img {
        float: right;
        margin-left: 1vw;
        width: 33%; }
  #photospot .psWrap .btnR {
    width: 100%;
    margin: 3vw auto 0 auto;
    text-align: center; }
    #photospot .psWrap .btnR a {
      display: inline-block;
      font-weight: bold;
      padding: 2vw 10vw;
      border-radius: 1vw;
      position: relative;
      background-color: #e74931;
      color: #FFF; }
  #photospot .psWrap .profile {
    text-align: left;
    font-size: 3.2vw;
    border: 1px dotted #DDD;
    margin-top: 3vw;
    padding: 3vw; }
    #photospot .psWrap .profile img {
      float: right;
      margin-left: 1vw;
      width: 30%; }
    #photospot .psWrap .profile h4 {
      font-weight: bold;
      font-size: 3.6vw;
      color: #954eeb; }
    #photospot .psWrap .profile a {
      color: #FFF;
      text-decoration: underline; }
#photospot .secBlock {
  background-color: #b57dfa; }
  #photospot .secBlock .secWrapY .secRight {
    position: relative; }
    #photospot .secBlock .secWrapY .secRight .badge {
      width: 22%;
      position: absolute;
      top: -13vw;
      right: -3vw; }

/*-------------------------------------------------
	++ FOOD and DRINK
-------------------------------------------------*/
#food .secHead {
  background: url("../img/food_title.png") center -2vw no-repeat/100% auto; }
  #food .secHead h2 {
    color: #de48d5; }
  #food .secHead .read {
    color: #de48d5; }
#food .secBlock {
  background-color: #de48d5; }

/*-------------------------------------------------
	++ T-SHIRTS
-------------------------------------------------*/
#specialitems .secHead {
  background: url("../img/tshirts_title.png") center -2vw no-repeat/100% auto; }
  #specialitems .secHead h2 {
    color: #097c25; }
  #specialitems .secHead .read {
    color: #097c25; }
#specialitems .secBlock {
  background-color: #097c25; }

/*-------------------------------------------------
	++ SCREENING
-------------------------------------------------*/
#screening {
  margin-bottom: 10vw; }
  #screening .secHead {
    background: url("../img/screening_title.png") center -2vw no-repeat/100% auto; }
    #screening .secHead h2 {
      color: #FFF; }
  #screening .sereenWrap {
    background-color: #FFF;
    margin-top: 3vw;
    border-radius: 3vw;
    color: #333;
    padding: 3vw; }
    #screening .sereenWrap h2 {
      font-size: 4.4vw;
      font-weight: bold; }
    #screening .sereenWrap h3 {
      font-size: 4vw;
      margin-top: 3vw;
      font-weight: bold; }
    #screening .sereenWrap .poster {
      margin: 3vw auto 0 auto;
      text-align: center; }
      #screening .sereenWrap .poster img {
        display: inline-block;
        width: 46%;
        margin: 0 0.5vw; }
    #screening .sereenWrap .text {
      margin-top: 3vw;
      text-align: left;
      line-height: 180%; }
      #screening .sereenWrap .text span {
        display: block;
        padding-left: 4vw; }
      #screening .sereenWrap .text .att {
        font-size: 3.2vw;
        margin-top: 3vw; }

/*-------------------------------------------------
	++ FORM 
-------------------------------------------------*/
body.form .section#live,
body.form .section#photospot {
  background-image: none;
  padding-top: 0; }
  body.form .section#live h4,
  body.form .section#photospot h4 {
    margin: 2vw auto;
    text-align: center; }
  body.form .section#live .formcontent,
  body.form .section#photospot .formcontent {
    margin-top: 3vw; }
    body.form .section#live .formcontent .message,
    body.form .section#photospot .formcontent .message {
      background-color: #FFF;
      border-radius: 3vw;
      color: #333;
      padding: 3vw 3vw; }
      body.form .section#live .formcontent .message .message-subtitle,
      body.form .section#photospot .formcontent .message .message-subtitle {
        background-color: #e74931;
        color: #FFF;
        margin: 3vw 0;
        padding: 2vw; }
      body.form .section#live .formcontent .message .sub-link,
      body.form .section#photospot .formcontent .message .sub-link {
        margin: 3vw 0; }
        body.form .section#live .formcontent .message .sub-link a,
        body.form .section#photospot .formcontent .message .sub-link a {
          margin: 0 3vw; }
      body.form .section#live .formcontent .message #form-notice,
      body.form .section#photospot .formcontent .message #form-notice {
        margin: 3vw 0;
        text-align: left; }
        body.form .section#live .formcontent .message #form-notice .formAtt,
        body.form .section#photospot .formcontent .message #form-notice .formAtt {
          margin-bottom: 3vw; }
      body.form .section#live .formcontent .message a,
      body.form .section#photospot .formcontent .message a {
        text-decoration: underline; }
      body.form .section#live .formcontent .message table,
      body.form .section#photospot .formcontent .message table {
        width: 100%;
        border-collapse: collapse; }
        body.form .section#live .formcontent .message table tr th,
        body.form .section#photospot .formcontent .message table tr th {
          display: block;
          text-align: left;
          padding-bottom: 1vw; }
        body.form .section#live .formcontent .message table tr td,
        body.form .section#photospot .formcontent .message table tr td {
          display: block;
          text-align: left;
          padding-bottom: 5vw; }
          body.form .section#live .formcontent .message table tr td input.fname,
          body.form .section#photospot .formcontent .message table tr td input.fname {
            width: 45%;
            margin-bottom: 2px;
            vertical-align: middle; }
          body.form .section#live .formcontent .message table tr td input.fage,
          body.form .section#photospot .formcontent .message table tr td input.fage {
            width: 15%;
            margin-right: 3px;
            margin-bottom: 2px;
            vertical-align: middle; }

body.form .section#photospot .formcontent .message .message-subtitle {
  background-color: #954eeb; }

#hw-message input[type="text"],
#hw-message input[type="password"],
#hw-message input[type="tel"],
#hw-message input[type="email"],
#hw-message input[type="number"],
#hw-message table textarea {
  width: 100%;
  border: 1px solid #d1d1d1;
  background: #fff;
  -webkit-appearance: none;
  padding: 2vw;
  border-radius: 0; }

#hw-message input[type="text"],
#hw-message input[type="password"],
#hw-message input[type="tel"],
#hw-message input[type="email"],
#hw-message input[type="number"] {
  vertical-align: top; }

.custom-selectbox {
  position: relative; }
  .custom-selectbox .inner {
    position: relative;
    z-index: 0;
    height: 32px;
    line-height: 32px;
    margin-top: -2px;
    border: 1px solid #d1d1d1; }
    .custom-selectbox .inner:before, .custom-selectbox .inner:after {
      content: "";
      position: absolute;
      display: block; }
    .custom-selectbox .inner:after {
      top: 50%;
      right: 7px;
      margin-top: -3px;
      width: 0;
      height: 0;
      border: solid transparent;
      border-top-color: #d1d1d1;
      border-width: 5px 5px 0; }
  .custom-selectbox select {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 32px;
    display: block; }

#form-submit,
#form-reset {
  -webkit-appearance: none;
  border: 1px solid #d1d1d1;
  height: 12vw;
  width: 80%; }

#form-submit {
  background: #333;
  border: 1px solid #333;
  color: #fff;
  margin-bottom: 3vw; }

/*-------------------------------------------------
	++ MODAL
-------------------------------------------------*/
.remodal .modalInner {
  margin: 0 auto;
  text-align: center;
  color: #FFF; }
  .remodal .modalInner h3, .remodal .modalInner h2 {
    margin-bottom: 15px; }
    .remodal .modalInner h3 img, .remodal .modalInner h2 img {
      margin: 0 auto;
      text-align: center; }
  .remodal .modalInner h2 span {
    display: block;
    font-size: 5vw;
    margin-top: 3vw; }
  .remodal .modalInner table tr th, .remodal .modalInner table tr td {
    text-align: left;
    padding: 1vw;
    vertical-align: top;
    font-weight: bold;
    padding-bottom: 3vw;
    font-size: 3.6vw; }
  .remodal .modalInner table tr th {
    width: 20%;
    text-align: center; }
    .remodal .modalInner table tr th .label {
      display: block;
      text-align: center;
      font-size: 3.2vw;
      margin-top: 1vw;
      padding: 0.5vw 1vw; }
  .remodal .modalInner table tr td {
    width: 80%; }
  .remodal .modalInner table tr.live th, .remodal .modalInner table tr.live td {
    color: #e74931; }
    .remodal .modalInner table tr.live th .label, .remodal .modalInner table tr.live td .label {
      background-color: #e74931;
      color: #FFF; }
  .remodal .modalInner table tr.screening th, .remodal .modalInner table tr.screening td {
    color: #FFF; }
    .remodal .modalInner table tr.screening th .label, .remodal .modalInner table tr.screening td .label {
      background-color: #FFF;
      color: #000; }
  .remodal .modalInner table tr.activities th, .remodal .modalInner table tr.activities td {
    color: #ffdd00; }
    .remodal .modalInner table tr.activities th .label, .remodal .modalInner table tr.activities td .label {
      background-color: #ffdd00;
      color: #000; }
  .remodal .modalInner table thead {
    display: none; }
  .remodal .modalInner .closeBtn button {
    -webkit-appearance: none;
    background-color: #ffdd00;
    color: #000;
    font-weight: bold;
    border: none;
    padding: 2vw 10vw;
    display: inline-block; }

#pageTop {
  position: fixed;
  bottom: 10vw;
  right: 0;
  width: 14vw; }

/*-------------------------------------------------
	++ FOOTER
-------------------------------------------------*/
#jwaveFooter {
  background-color: #FFF;
  padding: 20px 10px 20px 10px; }

#jwaveFooter .commonSet {
  text-align: left; }

#jwaveFooter .commonSet table tr td {
  padding-left: 10px; }

/* overrides common styles */
#commonFooter {
  width: 100% !important;
  position: static !important; }

#commonFooterInner {
  padding: 15px 0 !important;
  width: 100% !important;
  background-color: #282828 !important;
  text-align: center !important; }

#commonFooter li {
  display: inline-block !important;
  float: none !important; }
