@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%; }

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; }

a {
  -webkit-transition: all 0.3s ease-in;
  -moz-transition: all 0.3s ease-in;
  -ms-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in; }

a:hover {
  filter: alpha(opacity=80);
  -moz-opacity: 0.80;
  opacity: 0.80; }

hr {
  display: none; }

.cf:before, #photospot .psWrap .profile:before,
.cf:after,
#photospot .psWrap .profile:after {
  content: " ";
  display: table; }

.cf:after, #photospot .psWrap .profile:after {
  clear: both; }

.cf, #photospot .psWrap .profile {
  *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;
  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: 18px;
  line-height: 150%;
  min-width: 1100px;
  overflow-x: hidden;
  background: url("../img/main_bg.jpg") center top no-repeat; }

.pc, #main img, #information img, .section img {
  display: block; }

.sp, img.sp {
  display: none !important; }

.cInner {
  width: 980px;
  margin: 0 auto;
  text-align: center;
  position: relative; }

a.blank {
  background: url(../img/link_blank.png) center right no-repeat;
  background-size: 23px;
  padding: 3px 26px 3px 0;
  text-decoration: underline; }

.btnB {
  width: 100%;
  margin: 10px auto 0 auto;
  text-align: center; }
  .btnB a {
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    color: #cb3d28;
    padding: 10px 50px;
    border-radius: 5px;
    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: 13px;
      height: 13px;
      background: url(../img/arrow_red.png) center top no-repeat;
      background-size: 13px auto;
      position: absolute;
      right: 5px;
      top: 50%;
      margin-top: -5px; }

/*-------------------------------------------------
	++ MAIN 
-------------------------------------------------*/
#main {
  min-height: 1024px; }
  #main #mainHeader {
    padding-top: 64px; }
    #main #mainHeader p {
      margin-bottom: 20px;
      color: #3483a0;
      line-height: 140%;
      font-size: 17px;
      font-weight: bold; }
    #main #mainHeader h1 span {
      display: block;
      width: 684px;
      margin: 0 auto;
      text-align: center; }
      #main #mainHeader h1 span.mainTitle {
        margin-bottom: 15px; }
      #main #mainHeader h1 span.logo {
        width: 398px; }
  #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 {
        margin: 15px 0; }
        #main .mainMenu ul.modalmenu li {
          margin: 0 10px;
          vertical-align: bottom; }
      #main .mainMenu ul.evMenu li {
        margin: 10px 25px; }

/*-------------------------------------------------
	++ SECTION COMMON 
-------------------------------------------------*/
.section {
  background: url("../img/main_title_logo.png") center 45px no-repeat;
  background-size: 100px;
  position: relative;
  text-align: left;
  padding: 40px 0 0 0;
  line-height: normal;
  margin-bottom: 30px;
  color: #FFF; }
  .section .secHead {
    padding-top: 180px; }
    .section .secHead h2 {
      font-size: 24px;
      font-weight: bold;
      margin-bottom: 5px; }
    .section .secHead .read {
      font-size: 20px;
      line-height: 32px;
      margin-bottom: 20px; }
    .section .secHead .time {
      width: 881px;
      margin: 0 auto;
      text-align: center; }
  .section .secBlock {
    border-radius: 15px;
    position: relative;
    margin-top: 80px;
    padding: 20px; }
    .section .secBlock.noneEn {
      margin-top: 40px; }
    .section .secBlock .enTitle {
      width: 100%;
      height: 40px;
      position: absolute;
      top: -38px;
      left: 0; }
      .section .secBlock .enTitle img {
        margin: 0 auto;
        text-align: center; }
    .section .secBlock .timeBadge {
      width: 108px;
      position: absolute;
      top: -35px;
      left: -25px; }
    .section .secBlock .title {
      background-color: #000;
      color: #FFF;
      padding: 5px 10px;
      margin-bottom: 15px; }
      .section .secBlock .title span {
        font-size: 16px; }
    .section .secBlock .secWrap {
      text-align: left; }
      .section .secBlock .secWrap .secLeft {
        width: 443px;
        float: left;
        margin-right: 20px; }
        .section .secBlock .secWrap .secLeft .cap {
          font-size: 10px;
          margin-top: 5px; }
      .section .secBlock .secWrap .secRight {
        width: 460px;
        float: left; }
        .section .secBlock .secWrap .secRight .title {
          margin-bottom: 5px; }
      .section .secBlock .secWrap.secWrapW {
        background-color: #FFF;
        padding: 20px;
        border-radius: 15px;
        margin-bottom: 15px;
        color: #333; }
        .section .secBlock .secWrap.secWrapW .secLeft {
          width: 140px; }
        .section .secBlock .secWrap.secWrapW .secRight {
          width: 740px; }
          .section .secBlock .secWrap.secWrapW .secRight .text {
            font-size: 16px; }
        .section .secBlock .secWrap.secWrapW .title {
          background-color: transparent;
          color: #000; }
      .section .secBlock .secWrap.secWrapY {
        margin-bottom: 15px; }
        .section .secBlock .secWrap.secWrapY .secLeft {
          width: 280px; }
        .section .secBlock .secWrap.secWrapY .secRight {
          width: 640px; }
          .section .secBlock .secWrap.secWrapY .secRight .text {
            font-size: 16px; }
    .section .secBlock .att {
      text-align: left;
      font-size: 14px;
      margin-top: 15px; }

/*-------------------------------------------------
	++ TWITTER 
-------------------------------------------------*/
#twitter {
  margin-top: 30px;
  background-image: none; }
  #twitter .cInner {
    width: 700px; }

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

/*-------------------------------------------------
	++ LIVE
-------------------------------------------------*/
#live .secHead {
  background: url("../img/live_title.png") center top no-repeat; }
  #live .secHead h2 {
    color: #e74931; }
  #live .secHead .read {
    color: #e74931; }
#live .mcPhoto {
  margin: 25px 0; }
  #live .mcPhoto img {
    margin: 0 auto;
    text-align: center; }
#live .secBlock {
  background-color: #e74931; }
  #live .secBlock.first {
    background-color: transparent;
    border: 5px solid #e74931; }
    #live .secBlock.first .enTitle {
      top: -40px; }
    #live .secBlock.first .title {
      background-color: #e74931; }
    #live .secBlock.first .btnB {
      position: relative;
      width: 100%; }
      #live .secBlock.first .btnB a {
        font-size: 20px; }
      #live .secBlock.first .btnB .badge {
        position: absolute;
        top: -100px;
        right: -30px;
        width: 120px;
        height: 120px; }

.acList {
  margin-top: 15px;
  font-size: 14px; }
  .acList dl dt {
    width: 80px;
    float: left;
    clear: both;
    border: 1px dotted #FFF;
    padding: 2px 4px;
    text-align: center;
    margin-bottom: 5px; }
  .acList dl dd {
    float: left;
    padding: 2px 6px;
    margin-bottom: 5px;
    width: 365px; }

/*-------------------------------------------------
	++ WORKSHOP
-------------------------------------------------*/
#workshop .secHead {
  background: url("../img/workshop_title.png") center top no-repeat; }
  #workshop .secHead h2 {
    color: #3483a0; }
  #workshop .secHead .read {
    color: #3483a0; }
#workshop .secBlock {
  background-color: #3483a0; }
  #workshop .secBlock .secWrapW {
    width: 49%;
    float: left;
    margin-bottom: 0;
    min-height: 430px; }
    #workshop .secBlock .secWrapW:nth-of-type(1) {
      margin-right: 2%; }
    #workshop .secBlock .secWrapW .secLeft {
      width: 240px;
      float: none;
      margin: 0 auto;
      text-align: center; }
    #workshop .secBlock .secWrapW .secRight {
      width: 100%;
      float: none; }
    #workshop .secBlock .secWrapW .title {
      padding: 0;
      color: #3483a0;
      margin: 5px 0; }

/*-------------------------------------------------
	++ ACTIVITIES
-------------------------------------------------*/
#activities .secHead {
  background: url("../img/activities_title.png") center top no-repeat; }
  #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 top no-repeat; }
  #photospot .secHead h2 {
    color: #b57dfa; }
  #photospot .secHead .read {
    color: #b57dfa; }
#photospot .psWrap {
  border: 5px solid #954eeb;
  border-radius: 15px;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
  margin-top: 65px;
  position: relative; }
  #photospot .psWrap .title {
    background: url("../img/photospot_titlebg.png") center top no-repeat;
    height: 60px;
    position: absolute;
    top: -30px;
    left: 0;
    width: 100%;
    font-size: 24px;
    padding-top: 12px; }
  #photospot .psWrap .badge {
    position: absolute;
    top: -60px;
    right: 80px; }
  #photospot .psWrap .secWrap {
    text-align: left;
    padding-top: 40px; }
    #photospot .psWrap .secWrap .secLeft {
      width: 320px;
      float: left;
      margin-right: 20px; }
    #photospot .psWrap .secWrap .secRight {
      width: 590px;
      float: left; }
      #photospot .psWrap .secWrap .secRight img {
        float: right;
        margin-left: 5px; }
  #photospot .psWrap .btnR {
    width: 100%;
    margin: 10px auto 0 auto;
    text-align: center; }
    #photospot .psWrap .btnR a {
      display: inline-block;
      font-size: 20px;
      font-weight: bold;
      padding: 10px 60px;
      border-radius: 5px;
      position: relative;
      background-color: #e74931;
      color: #FFF; }
  #photospot .psWrap .profile {
    text-align: left;
    font-size: 14px;
    border: 1px dotted #DDD;
    margin-top: 20px;
    padding: 10px; }
    #photospot .psWrap .profile img {
      float: right;
      margin-left: 5px; }
    #photospot .psWrap .profile h4 {
      font-weight: bold;
      font-size: 16px;
      color: #954eeb; }
    #photospot .psWrap .profile a {
      color: #FFF;
      text-decoration: underline; }
#photospot .secBlock {
  background-color: #954eeb; }
  #photospot .secBlock .secWrapY .secRight {
    position: relative; }
    #photospot .secBlock .secWrapY .secRight .text {
      font-size: 18px; }
    #photospot .secBlock .secWrapY .secRight .badge {
      position: absolute;
      top: -50px;
      right: -20px;
      width: 117px;
      height: 117px; }

/*-------------------------------------------------
	++ FOOD and DRINK
-------------------------------------------------*/
#food .secHead {
  background: url("../img/food_title.png") center top no-repeat; }
  #food .secHead h2 {
    color: #de48d5; }
  #food .secHead .read {
    color: #de48d5; }
#food .secBlock {
  background-color: #de48d5; }
  #food .secBlock .secWrap .secLeft {
    width: 400px; }
  #food .secBlock .secWrap .secRight {
    width: 520px; }

/*-------------------------------------------------
	++ T-SHIRTS
-------------------------------------------------*/
#specialitems .secHead {
  background: url("../img/specialitems_title.png") center top no-repeat; }
  #specialitems .secHead h2 {
    color: #097c25; }
  #specialitems .secHead .read {
    color: #097c25; }
#specialitems .secBlock {
  background-color: #097c25; }
  #specialitems .secBlock .secWrap .secLeft {
    width: 400px; }
  #specialitems .secBlock .secWrap .secRight {
    width: 520px; }

/*-------------------------------------------------
	++ SCREENING
-------------------------------------------------*/
#screening {
  margin-bottom: 50px; }
  #screening .secHead {
    background: url("../img/screening_title.png") center top no-repeat; }
    #screening .secHead h2 {
      color: #FFF; }
  #screening .sereenWrap {
    background-color: #FFF;
    margin-top: 30px;
    border-radius: 15px;
    color: #333;
    padding: 30px; }
    #screening .sereenWrap h2 {
      font-size: 30px;
      line-height: 42px; }
    #screening .sereenWrap h3 {
      font-size: 24px;
      margin-top: 15px; }
    #screening .sereenWrap .poster {
      margin: 30px auto 0 auto;
      text-align: center; }
      #screening .sereenWrap .poster img {
        display: inline-block;
        margin: 0 5px; }
    #screening .sereenWrap .text {
      margin-top: 30px;
      text-align: left;
      padding: 0 70px;
      line-height: 180%; }
      #screening .sereenWrap .text .att {
        font-size: 14px; }

/*-------------------------------------------------
	++ FORM 
-------------------------------------------------*/
body.form #main {
  min-height: 600px; }

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: 10px auto;
    text-align: center; }
  body.form .section#live .acList dl dt,
  body.form .section#photospot .acList dl dt {
    width: 100px; }
  body.form .section#live .acList dl dd,
  body.form .section#photospot .acList dl dd {
    width: 345px; }
  body.form .section#live .formcontent,
  body.form .section#photospot .formcontent {
    margin-top: 20px; }
    body.form .section#live .formcontent .message,
    body.form .section#photospot .formcontent .message {
      background-color: #FFF;
      border-radius: 15px;
      color: #333;
      padding: 20px 40px; }
      body.form .section#live .formcontent .message .message-subtitle,
      body.form .section#photospot .formcontent .message .message-subtitle {
        background-color: #e74931;
        color: #FFF;
        margin: 20px 0; }
      body.form .section#live .formcontent .message .sub-link,
      body.form .section#photospot .formcontent .message .sub-link {
        margin: 20px 0;
        font-size: 14px; }
        body.form .section#live .formcontent .message .sub-link a,
        body.form .section#photospot .formcontent .message .sub-link a {
          margin: 0 20px; }
      body.form .section#live .formcontent .message #form-notice,
      body.form .section#photospot .formcontent .message #form-notice {
        margin: 20px 0;
        text-align: left;
        font-size: 14px; }
        body.form .section#live .formcontent .message #form-notice .formAtt,
        body.form .section#photospot .formcontent .message #form-notice .formAtt {
          margin-bottom: 20px; }
      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 {
          vertical-align: top;
          padding-top: 9px;
          width: 30%;
          padding-left: 30px;
          padding-right: 24px;
          text-align: right;
          font-size: 14px; }
        body.form .section#live .formcontent .message table tr td,
        body.form .section#photospot .formcontent .message table tr td {
          padding: 1px 0px 7px 0;
          width: 70%;
          text-align: left;
          font-size: 14px; }
          body.form .section#live .formcontent .message table tr td input.fname,
          body.form .section#photospot .formcontent .message table tr td input.fname {
            width: 50%;
            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: 10%;
            margin-right: 3px;
            margin-bottom: 2px;
            vertical-align: middle; }

body.form .section#photospot .formcontent .message .message-subtitle {
  background-color: #954eeb; }
body.form .section#photospot .acList dl dt {
  width: 100px; }
body.form .section#photospot .acList dl dd {
  width: 825px; }

#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: 1rem;
  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"] {
  height: 32px;
  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: 44px;
  width: 264px;
  margin-right: 16px;
  font-size: 14px; }

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

/*-------------------------------------------------
	++ MODAL
-------------------------------------------------*/
.remodal {
  max-width: 1000px !important; }
  .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: 36px;
      margin-top: 10px; }
    .remodal .modalInner table tr.pc {
      display: table-row; }
    .remodal .modalInner table tr th, .remodal .modalInner table tr td {
      text-align: left;
      padding: 5px;
      font-size: 16px;
      font-weight: bold;
      vertical-align: top; }
      .remodal .modalInner table tr th.pc, .remodal .modalInner table tr td.pc {
        display: table-cell; }
      .remodal .modalInner table tr th.lived, .remodal .modalInner table tr td.lived {
        color: #e74931 !important; }
      .remodal .modalInner table tr th.screend, .remodal .modalInner table tr td.screend {
        color: #FFF !important; }
      .remodal .modalInner table tr th.activities, .remodal .modalInner table tr td.activities {
        color: #ffdd00 !important; }
    .remodal .modalInner table tr th {
      width: 10%;
      text-align: center;
      padding-right: 5px; }
    .remodal .modalInner table tr td {
      width: 30%; }
    .remodal .modalInner table tr.live th, .remodal .modalInner table tr.live td {
      color: #e74931; }
    .remodal .modalInner table tr.screening th, .remodal .modalInner table tr.screening td {
      color: #FFF; }
    .remodal .modalInner table tr.activities th, .remodal .modalInner table tr.activities td {
      color: #ffdd00; }
    .remodal .modalInner table thead td {
      text-align: center; }
    .remodal .modalInner table thead .live h4 {
      background-color: #e74931;
      color: #FFF; }
    .remodal .modalInner table thead .screening h4 {
      background-color: #FFF;
      color: #000; }
    .remodal .modalInner table thead .activities h4 {
      background-color: #ffdd00;
      color: #000; }
    .remodal .modalInner .closeBtn button {
      -webkit-appearance: none;
      margin-top: 30px;
      background-color: #ffdd00;
      color: #000;
      font-weight: bold;
      border: none;
      padding: 5px 30px;
      display: inline-block; }

#pageTop {
  position: fixed;
  bottom: 130px;
  right: 30px; }

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

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

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