@charset "UTF-8";
/*=======================================================================

          Browser Reset CSS
          Last Up Date 15/10/08

=======================================================================*/
/*=======================================================================

          Bass CSS

=======================================================================*/
html, body {
  background: #fff;
  background-attachment: fixed;
  color: #414150;
  font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic"; }
  @media only screen and (max-width: 530px) {
    html, body {
      font: 16px/1.5 "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif; } }

a:link {
  text-decoration: none;
  color: #fff; }

a:visited {
  text-decoration: none;
  color: #fff; }

a:active {
  text-decoration: none;
  color: #fff; }

a:hover {
  text-decoration: none;
  color: #fff; }

strong {
  font-weight: bold; }

/* cleafix
------------------------------------*/
.cleafix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.cleafix {
  display: inline-block; }

/* Hides from IE Mac */
* html .cleafix {
  height: 1%; }

.cleafix {
  display: block; }

/* End Hack */
/*------------------------------------*/
.mgnT0 {
  margin-top: 0px !important; }

.mgnT10 {
  margin-top: 10px !important; }

.mgnT20 {
  margin-top: 24px !important; }

.mgnT40 {
  margin-top: 40px; }

.mgnR0 {
  margin-right: 0px !important; }

.mgnR5 {
  margin-right: 5px !important; }

.mgnR10 {
  margin-right: 10px !important; }

.mgnR20 {
  margin-right: 20px !important; }

.mgnR30 {
  margin-right: 30px !important; }

.mgnR40 {
  margin-right: 40px !important; }

.mgnR50 {
  margin-right: 50px !important; }

.mgnR60 {
  margin-right: 60px !important; }

.mgnBtm0 {
  margin-bottom: 0px !important; }

.mgnBtm5 {
  margin-bottom: 5px !important; }

.mgnBtm10 {
  margin-bottom: 10px !important; }

.mgnBtm20 {
  margin-bottom: 20px !important; }

.mgnBtm30 {
  margin-bottom: 30px !important; }

.mgnBtm40 {
  margin-bottom: 40px !important; }

.mgnBtm60 {
  margin-bottom: 55px !important; }

.mgnBtm2em {
  margin-bottom: 2em !important; }

.pdBtm0 {
  padding-bottom: 0px !important; }

.pdBtm10 {
  padding-bottom: 10px !important; }

.pdBtm20 {
  padding-bottom: 20px !important; }

.taC {
  text-align: center; }

.btmline {
  border-bottom: 1px solid #ddd; }

.btmline2 {
  background: url(../../../img/line_btm.gif) repeat-x bottom; }

.noneline {
  border: none !important; }

/* Font */
.text10 {
  font-size: 10px; }

.text11 {
  font-size: 11px; }

.blue {
  color: #3fb0e8; }

.blue18 {
  color: #3fb0e8;
  font-size: 18px; }

.explain {
  font-size: 11px;
  line-height: 1.4; }

.lh140 {
  line-height: 1.4 !important; }

.red16, .red16 a {
  font-size: 16px;
  color: red; }

.red16 a:hover {
  color: black; }

/* font */
.NexaHeavy {
  font-family: NexaHeavy; }

.Nexa-Book-Italic {
  font-family: Nexa-Book-Italic; }

.NexaThin {
  font-family: NexaThin; }

.Nexa-Book {
  font-family: Nexa-Book; }

.Nexa-Light-Italic {
  font-family: Nexa-Light-Italic; }

.Nexa-Bold-Italic {
  font-family: Nexa-Bold-Italic; }

.Nexa-Heavy-Italic {
  font-family: Nexa-Heavy-Italic; }

.NexaRegular {
  font-family: NexaRegular; }

.Nexa-XBold-Italic {
  font-family: Nexa-XBold-Italic; }

.Nexa-Black-Italic {
  font-family: Nexa-Black-Italic; }

.Nexa-Thin-Italic {
  font-family: Nexa-Thin-Italic; }

.Nexa-Bold {
  font-family: Nexa-Bold; }

.Nexa-XBold {
  font-family: Nexa-XBold; }

.NexaBlack {
  font-family: NexaBlack; }

.Nexa-Light {
  font-family: Nexa-Light; }

.Nexa-Regular-Italic {
  font-family: Nexa-Regular-Italic; }

a.link_purple {
  color: #acacc3; }

/* 
=======================================================================*/
#container {
  width: 100%; }
  @media only screen and (max-width: 530px) {
    #container {
      width: 530px; } }

/* Header
=======================================================================*/
#fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  /* GLOBAL MENU */ }
  @media only screen and (max-width: 768px) {
    #fixed {
      display: none; } }

#globalHeader {
  position: relative;
  width: 100%;
  height: 60px;
  background: #fff; }
  @media only screen and (max-width: 960px) {
    #globalHeader {
      height: 120px; } }
  #globalHeader h1 {
    position: absolute;
    top: 10px;
    left: 20px;
    height: 60px;
    width: 208px; }
    @media only screen and (max-width: 960px) {
      #globalHeader h1 {
        position: relative;
        margin: 0 auto; } }

/* Global Menu
------------------------------------------*/
.grArea {
  position: absolute;
  right: 0;
  background: #424151;
  height: 60px; }
  @media only screen and (max-width: 960px) {
    .grArea {
      position: relative;
      right: auto; } }

#gnavi {
  position: absolute;
  right: 120px;
  width: 400px;
  height: 60px;
  font-size: 13px; }
  @media only screen and (max-width: 960px) {
    #gnavi {
      left: 0; } }
  #gnavi ul {
    position: relative; }
    #gnavi ul li {
      position: absolute;
      width: 200px;
      text-align: center;
      font-family: NexaRegular; }
      #gnavi ul li a {
        width: 200px;
        height: 37px;
        display: block;
        text-align: center;
        color: #fff;
        padding-top: 23px; }
      #gnavi ul li#home {
        top: 0;
        left: 0;
        background-color: #a1449d;
        position: relative;
        height: 60px;
        overflow: hidden; }
        #gnavi ul li#home a:hover {
          color: #a1449d; }
        #gnavi ul li#home a div {
          padding-top: 18px;
          position: absolute;
          left: 5px;
          top: 5px;
          width: 190px;
          height: 32px;
          color: #fff; }
          #gnavi ul li#home a div:hover {
            background: #fff;
            color: #a1449d; }
      #gnavi ul li#programs {
        position: absolute;
        top: 0;
        left: 200px;
        background-color: #3eb1e7;
        height: 60px;
        overflow: hidden; }
        #gnavi ul li#programs a:hover {
          color: #3eb1e7; }
        #gnavi ul li#programs a div {
          padding-top: 18px;
          position: absolute;
          left: 5px;
          top: 5px;
          width: 190px;
          height: 32px;
          color: #fff; }
          #gnavi ul li#programs a div:hover {
            background: #fff;
            color: #3eb1e7; }

/* Sub Navigation */
ul.sub-nav,
ul.sub-nav-2 {
  position: relative;
  background-color: #a1449d;
  height: 170px; }

ul.sub-nav-2 {
  background-color: #3eb1e7;
  height: 100px; }

ul.sub-nav li,
ul.sub-nav-2 li {
  position: absolute; }

ul.sub-nav li#nav-about {
  top: 10px; }

ul.sub-nav li#nav-pgm {
  top: 40px; }

ul.sub-nav li#nav-speaker {
  top: 40px; }

ul.sub-nav li#nav-contact {
  top: 70px; }

ul.sub-nav li#nav-news {
  top: 100px; }

ul.sub-nav-2 li#nav-programs {
  top: 10px; }

ul.sub-nav-2 li#nav-schedule {
  top: 40px; }

#gnavi li ul.sub-nav li a,
#gnavi li ul.sub-nav-2 li a {
  width: 175px;
  height: 20px;
  margin: 0 5px;
  padding-top: 10px;
  padding-left: 15px;
  text-align: left; }

ul.sub-nav li a:hover,
ul.sub-nav-2 li a:hover {
  background: #fff; }

/* Social Nav */
#gR {
  position: absolute;
  right: 0;
  width: 120px;
  background: #424151;
  height: 50px;
  padding-top: 10px;
  font-family: NexaRegular;
  -webkit-font-smoothing: antialiased;
  font-size: 10px; }
  #gR ul.share_outlink {
    margin-top: 10px;
    width: 120px;
    float: left; }
    #gR ul.share_outlink li {
      display: inline;
      margin-left: 9px; }
  #gR .head_share {
    float: right;
    margin-top: 2px;
    margin-right: 20px;
    color: #fff;
    width: 150px;
    text-align: center; }
    #gR .head_share .share_text {
      border-bottom: 1px solid #fff;
      padding-bottom: 5px;
      margin-bottom: 2px; }
    #gR .head_share .head_share_btn ul li {
      display: inline-block;
      margin-right: 2px;
      height: 20px;
      background-repeat: no-repeat;
      background-size: 39px 20px;
      background-position: 0 0;
      text-align: left; }
      #gR .head_share .head_share_btn ul li:last-child {
        margin-right: 0; }
      #gR .head_share .head_share_btn ul li a {
        width: 25px;
        height: 20px;
        line-height: 20px;
        display: inline-block;
        padding-left: 18px; }
        #gR .head_share .head_share_btn ul li a:hover {
          color: #a1449d; }
      #gR .head_share .head_share_btn ul li.head_share_fb {
        background-image: url(../../../img/head_share_fb.gif); }
        #gR .head_share .head_share_btn ul li.head_share_fb:hover {
          background-image: url(../../../img/head_share_fb_on.gif);
          background-size: 50px 20px; }
        #gR .head_share .head_share_btn ul li.head_share_fb a {
          width: 30px; }
      #gR .head_share .head_share_btn ul li.head_share_tw {
        background-image: url(../../../img/head_share_tw.gif); }
        #gR .head_share .head_share_btn ul li.head_share_tw:hover {
          background-image: url(../../../img/head_share_tw_on.gif); }
      #gR .head_share .head_share_btn ul li.head_share_gplus {
        background-image: url(../../../img/head_share_gplus.gif); }
        #gR .head_share .head_share_btn ul li.head_share_gplus a {
          padding-left: 23px; }
        #gR .head_share .head_share_btn ul li.head_share_gplus:hover {
          background-image: url(../../../img/head_share_gplus_on.gif);
          background-color: #fff; }

/* COVER
=======================================================================*/
#cover {
  height: 660px;
  width: 100%;
  background-image: url(../../../img/cover.jpg);
  background-repeat: no-repeat;
  background-position: center bottom; }
  @media only screen and (max-width: 960px) {
    #cover {
      height: 720px; } }
  @media only screen and (max-width: 768px) {
    #cover {
      height: 660px; } }
  @media only screen and (max-width: 530px) {
    #cover {
      height: 440px;
      background-size: 1200px;
      background-position: center bottom; } }

/* ABOUT
=======================================================================*/
#about, #news, #featured, #speakers, #satellites, #outline, #contact, #supporters, #schedule {
  padding: 60px 0;
  width: 100%;
  background: #3eb1e7;
  color: #fff; }

#about {
  box-sizing: border-box;
  padding: 60px 10px; }

#about #about-wrap {
  width: 400px;
  margin: 0 auto;
  margin-bottom: 40px;
  font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
  @media only screen and (max-width: 530px) {
    #about #about-wrap {
      width: 490px; } }
  #about #about-wrap h1 {
    font-size: 18px;
    border: 2px solid #fff;
    text-align: center;
    padding: 10px;
    font-family: NexaRegular;
    margin-bottom: 30px; }
  #about #about-wrap h2 {
    font-size: 24px;
    letter-spacing: -1px;
    font-weight: normal;
    margin-bottom: 30px; }
    #about #about-wrap h2 span {
      letter-spacing: -10px; }
  #about #about-wrap #about-text {
    font-size: 16px;
    line-height: 2;
    margin-bottom: 30px; }
    @media only screen and (max-width: 530px) {
      #about #about-wrap #about-text {
        font-size: 12px; } }
    #about #about-wrap #about-text span {
      letter-spacing: -6px; }
    #about #about-wrap #about-text p {
      margin-bottom: 1em; }

nav.btn-link li, nav.btn-link-2 li {
  margin-bottom: 1em;
  line-height: 1.4; }
  nav.btn-link li a, nav.btn-link-2 li a, nav.btn-link li .pastTW, nav.btn-link-2 li .pastTW {
    margin-left: 60px;
    padding-top: 12px;
    padding-left: 46px;
    display: block;
    height: 24px;
    background: url(../../../img/ic_arrow_1.png) no-repeat;
    background-size: 36px 36px;
    font-size: 15px;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic";
    color: #fff; }
    @media only screen and (max-width: 530px) {
      nav.btn-link li a, nav.btn-link-2 li a, nav.btn-link li , nav.btn-link-2 li  {
        margin-left: 0 !important;
        padding-left: 46px !important;
        font-size: large; } }
  nav.btn-link li .pastTW, nav.btn-link-2 li  {
    padding-top: 0;
    height: 36px;
    line-height: 1.6;
    margin-bottom: 2em; }
  nav.btn-link li a.pastTW__link, nav.btn-link-2 li  {
    display: inline-block;
    margin: 0;
    padding: 0;
    background: none; }

nav.btn-link-2 li a {
  margin-left: 60px !important;
  padding-left: 46px; }
  @media only screen and (max-width: 530px) {
    nav.btn-link-2 li a {
      margin-left: 100px !important; } }

/* outline nav */
nav.nav-outline li a , .pastTW {
  margin-left: 160px;
  color: #3eb1e7;
  background: url(../../../img/ic_arrow_2.gif) no-repeat;
  background-size: 36px 36px; }

#about #about-pgm {
  text-align: center; }
  #about #about-pgm h3 {
    text-align: center;
    font-family: NexaRegular;
    font-size: 18px;
    margin: 0 20px 30px 20px;
    background: url(../../../img/line_white.gif) repeat-x 0 7px; }
    #about #about-pgm h3 span {
      background: #3eb1e7;
      padding: 0 10px; }
  #about #about-pgm h4 {
    text-align: center;
    margin-bottom: 50px; }

#pgm-wrap {
  margin: 0 auto;
  max-width: 1000px; }
  @media only screen and (max-width: 530px) {
    #pgm-wrap {
      max-width: none;
      width: 490px;
      margin: 0 atuo; } }

.pgm-box {
  width: 120px;
  margin: 0 40px 20px;
  float: left; }
  @media only screen and (max-width: 530px) {
    .pgm-box {
      margin: 0 20px 20px; } }
  .pgm-box figure img {
    margin-bottom: 10px; }
  .pgm-box a {
    color: #fff;
    display: block; }

/* NEWS
=======================================================================*/
#news {
  background: #fff;
  color: #3eb1e7;
  min-height: 360px; }

#news-wrap {
  margin: 0 auto;
  width: 600px; }
  @media only screen and (max-width: 530px) {
    #news-wrap {
      width: 490px; } }
  #news-wrap h1 {
    width: 400px;
    margin-left: 104px;
    font-size: 18px;
    border: 2px solid #3eb1e7;
    text-align: center;
    padding: 10px;
    font-family: NexaRegular;
    margin-bottom: 30px; }
    @media only screen and (max-width: 530px) {
      #news-wrap h1 {
        width: 470px;
        margin-left: 0; } }
  #news-wrap h2 {
    margin-bottom: 40px;
    padding-bottom: 20px;
    text-align: center;
    background: url(../../../img/h2_line_featured.gif) no-repeat center bottom;
    line-height: 1.4; }

.fbArea {
  width: 500px;
  margin: 0 auto 40px; }

ul.social-button {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  ul.social-button li {
    line-height: 0; }

.social-button {
  text-align: center;
  width: 100%; }
  .social-button li {
    margin: 0 5px 0 0;
    padding: 0;
    display: inline-block;
    line-height: 0; }
    .social-button li .facebook_like {
      width: 160px;
      line-height: 0.7; }

/* FEATURED PROGRAMS
=======================================================================*/
#featured {
  background: #fff; }
  #featured #featured-wrap {
    margin: 0 auto;
    width: 400px;
    margin-bottom: 40px;
    font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
    @media only screen and (max-width: 530px) {
      #featured #featured-wrap {
        width: 490px; } }
    #featured #featured-wrap h1 {
      font-size: 18px;
      border: 2px solid #3eb1e7;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px;
      color: #3eb1e7; }
    #featured #featured-wrap h2 {
      padding-bottom: 20px;
      color: #3eb1e7;
      text-align: center;
      background: url(../../../img/h2_line_featured.gif) no-repeat center bottom;
      line-height: 1.4;
      font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic"; }

#featured-box-wrap {
  padding: 0 10px;
  max-width: 1020px;
  margin: 0 auto; }

.featured-box {
  float: left;
  margin: 0 10px 20px;
  width: 490px;
  height: 320px;
  text-align: center;
  background: #3eb1e7; }
  .featured-box h1 {
    margin: 20px 0;
    font-size: 30px;
    font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho";
    line-height: 1.2; }
  .featured-box p {
    font-size: 13px;
    line-height: 1.4; }

.all-pgm-link {
  background: #a1449d;
  max-width: 1020px;
  margin: 0 auto;
  font-size: 18px;
  text-align: center;
  border: 2px solid #a1449d;
  color: #fff; }
  .all-pgm-link a {
    display: block; }
    .all-pgm-link a div {
      text-align: left;
      width: 320px;
      height: 35px;
      margin: 0 auto;
      display: block;
      background: url(../../../img/ic_arrow_white.png) no-repeat 0 8px;
      background-size: 36px 36px;
      padding-top: 18px;
      padding-left: 46px; }
      @media only screen and (max-width: 530px) {
        .all-pgm-link a div {
          height: 40px;
          padding-top: 15px; } }
    .all-pgm-link a:hover {
      background-color: #fff;
      color: #a1449d; }
      .all-pgm-link a:hover > div {
        background: url(../../../img/ic_arrow_purple.png) no-repeat 0 8px;
        background-size: 36px 36px; }

/* SPEAKERS
=======================================================================*/
#speakers {
  background: #424151;
  color: #fff; }

#speakers-box-f {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media only screen and (max-width: 530px) {
    #speakers-box-f {
      margin: 0 auto;
      width: 408px; } }

#speakers-wrap {
  margin: 0 auto;
  width: 400px;
  margin-bottom: 40px;
  font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
  @media only screen and (max-width: 530px) {
    #speakers-wrap {
      width: 490px; } }
  #speakers-wrap h1 {
    font-size: 18px;
    border: 2px solid #fff;
    text-align: center;
    padding: 10px;
    font-family: NexaRegular;
    margin-bottom: 30px; }
  #speakers-wrap h2 {
    padding-bottom: 20px;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic";
    text-align: center;
    background: url(../../../img/h2_line_speakers.gif) no-repeat center bottom;
    line-height: 1.4; }

#speakers-box-wrap {
  padding: 0 10px;
  max-width: 1020px;
  margin: 0 auto; }

.speakers-box {
  float: left;
  margin: 0 10px 40px;
  width: 184px;
  text-align: center; }
  .speakers-box figure {
    position: relative; }
  .speakers-box h1 {
    margin: 20px 0 4px;
    font-size: 20px;
    font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
  .speakers-box h2 {
    font-size: 13px;
    line-height: 1.4; }

.show_pgm, .show_naiyou {
  position: absolute;
  top: 0;
  left: 0;
  width: 184px;
  height: 160px;
  box-sizing: border-box;
  border: 2px solid #a1449d;
  background-color: #424151;
  text-align: center;
  opacity: 0.9;
  display: none; }
  .show_pgm span, .show_naiyou span {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    height: 16px;
    display: inline-block;
    line-height: 1.4; }
    .show_pgm span.stage_text, .show_naiyou span.stage_text {
      height: 32px; }
  @media only screen and (max-width: 530px) {
    .show_pgm, .show_naiyou {
      font-size: 13px; } }

.show_naiyou {
  color: #fff;
  width: 100%; }

#all-speakers {
  margin: 0 10px 45px;
  background: #4D4D59;
  padding: 60px 100px; }
  @media only screen and (max-width: 530px) {
    #all-speakers {
      margin: 0;
      padding: 60px 40px; } }
  #all-speakers h1 {
    text-align: center;
    font-family: NexaRegular;
    font-size: 18px;
    margin: 0 100px 40px 100px;
    background: url(../../../img/line_white.gif) repeat-x 0 7px; }
    @media only screen and (max-width: 530px) {
      #all-speakers h1 {
        text-align: center;
        margin: 0 0 40px 0; } }
    #all-speakers h1 span {
      background: #4D4D59;
      padding: 0 10px; }
      @media only screen and (max-width: 530px) {
        #all-speakers h1 span {
          background: #4D4D59;
          padding: 0 10px; } }

.all-speakers-text {
  width: 250px;
  float: left;
  margin-right: 16px; }
  @media only screen and (max-width: 530px) {
    .all-speakers-text {
      width: 100%;
      float: none;
      margin-right: 0; } }
  .all-speakers-text li {
    width: 250px;
    float: left;
    line-height: 1.4;
    margin-bottom: 7px; }
    @media only screen and (max-width: 530px) {
      .all-speakers-text li {
        width: 100%;
        float: none;
        margin-bottom: 1em; } }

/* SATELLITES
=======================================================================*/
#satellites {
  background: #3eb1e7;
  color: #fff; }
  #satellites #satellites-wrap {
    margin: 0 auto;
    width: 400px;
    margin-bottom: 40px; }
    @media only screen and (max-width: 530px) {
      #satellites #satellites-wrap {
        width: 490px; } }
    #satellites #satellites-wrap h1 {
      font-size: 18px;
      border: 2px solid #fff;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px; }
    #satellites #satellites-wrap h2 {
      padding-bottom: 20px;
      text-align: center;
      background: url(../../../img/h2_line_speakers.gif) no-repeat center bottom;
      line-height: 1.4; }

#satellites-box-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 10px;
  max-width: 1020px;
  margin: 0 auto; }
  @media only screen and (max-width: 530px) {
    #satellites-box-wrap {
      padding: 0 10px;
      max-width: none;
      width: 408px; } }

.satellites-box {
  position: relative;
  margin: 0 10px 40px;
  width: 184px;
  text-align: center; }
  .satellites-box figure {
    position: relative; }
  .satellites-box .stage_map {
    font-family: NexaRegular;
    margin-top: 5px;
    text-align: right; }
    @media only screen and (max-width: 530px) {
      .satellites-box .stage_map {
        margin-top: 10px;
        text-align: center;
        font-size: 24px; } }

/* OUTLINE
=======================================================================*/
#outline {
  background: #fff; }
  #outline #outline-wrap {
    margin: 0 auto;
    width: 600px;
    margin-bottom: 40px;
    color: #3eb1e7; }
    @media only screen and (max-width: 530px) {
      #outline #outline-wrap {
        width: 490px; } }
    #outline #outline-wrap h1 {
      width: 400px;
      margin-left: 104px;
      font-size: 18px;
      border: 2px solid #3eb1e7;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px; }
      @media only screen and (max-width: 530px) {
        #outline #outline-wrap h1 {
          width: 470px;
          margin-left: 0; } }
    #outline #outline-wrap h2 {
      margin-bottom: 40px;
      padding-bottom: 20px;
      text-align: center;
      background: url(../../../img/h2_line_featured.gif) no-repeat center bottom;
      line-height: 1.4; }
    #outline #outline-wrap p {
      line-height: 2; }

dl#outline-info {
  margin: 40px 0 20px;
  color: #000;
  position: relative;
  line-height: 2; }
  dl#outline-info dt {
    position: absolute;
    left: 0;
    width: 8em; }
    @media only screen and (max-width: 530px) {
      dl#outline-info dt {
        position: relative;
        left: 0;
        width: 100%;
        font-size: 20px;
        font-weight: bold; } }
  dl#outline-info dd {
    margin-left: 8em; }
    @media only screen and (max-width: 530px) {
      dl#outline-info dd {
        margin-left: 0;
        padding-bottom: 1em; } }

#out-mail-mag {
  padding: 60px 100px;
  background: #3eb1e7;
  width: 596px;
  margin: 0 auto;
  color: #fff;
  line-height: 2; }
  @media only screen and (max-width: 960px) {
    #out-mail-mag {
      padding: 60px 60px; } }
  @media only screen and (max-width: 768px) {
    #out-mail-mag {
      padding: 40px 20px;
      width: 450px; } }

#out-mail-mag-l {
  padding-left: 30px;
  width: 276px;
  float: left;
  background: url(../../../img/ic_mail.png) no-repeat 0 5px;
  background-size: 19px 13px; }
  @media only screen and (max-width: 530px) {
    #out-mail-mag-l {
      padding-left: 30px;
      width: 420px;
      float: none;
      font-size: 18px;
      line-height: 1.4; } }

#out-mail-mag-form {
  margin-top: 20px;
  margin-left: 20px;
  width: 265px;
  float: left; }
  @media only screen and (max-width: 530px) {
    #out-mail-mag-form {
      margin-top: 20px;
      margin-left: 20px;
      width: 450px;
      float: none; } }

#out-mail-mag-form input[type="email"] {
  width: 195px;
  border: none;
  padding: 10px 10px;
  vertical-align: bottom; }
  @media only screen and (max-width: 530px) {
    #out-mail-mag-form input[type="email"] {
      width: 300px;
      padding: 10px 10px;
      font-size: 18px; } }

#out-mail-mag-form button {
  background-color: #a1449d;
  color: #fff;
  cursor: pointer;
  border: none;
  padding: 9px 10px; }
  @media only screen and (max-width: 530px) {
    #out-mail-mag-form button {
      background-color: #3eb1e7;
      color: #fff;
      cursor: pointer;
      border: none;
      padding: 9px 10px;
      font-size: 18px; } }

/* COMMENT
=======================================================================*/
#comment {
  background: url(../../../img/cover_comment.jpg) no-repeat center;
  max-height: 420px;
  color: #fff;
  padding: 115px 0;
  box-sizing: border-box; }
  @media only screen and (max-width: 960px) {
    #comment {
      padding: 40px 0;
      max-height: 500px;
      background-size: 3000px; } }
  @media only screen and (max-width: 530px) {
    #comment {
      background-color: #a1449d;
      padding: 20px 0;
      max-height: 520px; } }

#comment-wrap {
  margin: 0 auto;
  width: 800px; }
  @media only screen and (max-width: 960px) {
    #comment-wrap {
      width: 490px; } }
  @media only screen and (max-width: 530px) {
    #comment-wrap {
      width: 490px; } }

.comment-box {
  float: left;
  width: 400px; }
  @media only screen and (max-width: 960px) {
    .comment-box {
      float: none;
      margin-bottom: 40px; } }
  @media only screen and (max-width: 530px) {
    .comment-box {
      width: 490px;
      margin-bottom: 40px;
      font-size: x-small; } }
  .comment-box p {
    margin-bottom: 20px;
    line-height: 2; }

.comment-lead {
  font-size: 18px;
  font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
  @media only screen and (max-width: 530px) {
    .comment-lead {
      font-size: small; } }

/* CONTACT
=======================================================================*/
#contact {
  background: #424151; }
  #contact #contact-wrap {
    margin: 0 auto;
    width: 400px;
    margin-bottom: 60px; }
    @media only screen and (max-width: 530px) {
      #contact #contact-wrap {
        width: 490px; } }
    #contact #contact-wrap h1 {
      width: 400px;
      font-size: 18px;
      border: 2px solid #fff;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px;
      text-align: center; }
      @media only screen and (max-width: 530px) {
        #contact #contact-wrap h1 {
          width: 470px; } }
    #contact #contact-wrap h2 {
      margin-bottom: 20px;
      padding-bottom: 20px;
      text-align: center; }

.joinF {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

#join-team {
  margin: 0 10px 20px;
  position: relative;
  width: 390px;
  box-sizing: border-box;
  background: #4D4D59;
  padding: 60px 40px; }
  @media only screen and (max-width: 530px) {
    #join-team {
      width: 490px;
      padding: 60px 20px !important; } }
  #join-team h1 {
    text-align: center;
    font-family: NexaRegular;
    font-size: 18px;
    margin-bottom: 40px;
    background: url(../../../img/line_white.gif) repeat-x 0 7px; }
    #join-team h1 span {
      background: #4D4D59;
      padding: 0 10px; }
  #join-team p {
    line-height: 2;
    margin-bottom: 40px;
    height: 120px; }
    @media only screen and (max-width: 530px) {
      #join-team p {
        height: auto; } }
    #join-team p a {
      text-decoration: underline; }

/* SUPPORTERS
=======================================================================*/
#supporters {
  background: #3eb1e7;
  color: #fff; }
  #supporters #supporters-wrap {
    margin: 0 auto;
    width: 400px;
    margin-bottom: 40px; }
    @media only screen and (max-width: 530px) {
      #supporters #supporters-wrap {
        width: 490px; } }
    #supporters #supporters-wrap h1 {
      font-size: 18px;
      border: 2px solid #fff;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px; }
    #supporters #supporters-wrap h2 {
      padding-bottom: 20px;
      line-height: 1.4;
      text-align: center;
      background: url(../../../img/h2_line_speakers.gif) no-repeat center bottom; }

#all-supporters {
  max-width: 796px;
  margin: 0 auto 30px; }
  @media only screen and (max-width: 530px) {
    #all-supporters {
      max-width: none;
      width: 380px;
      margin: 0 auto 30px; } }

#all-supporters-text li {
  width: 198px;
  float: left;
  line-height: 1.2;
  margin-bottom: 7px; }
  @media only screen and (max-width: 530px) {
    #all-supporters-text li {
      width: 380px;
      float: none;
      font-size: 20px; } }

#fbarea {
  background: #fff;
  margin: 0 20px;
  padding: 20px; }

/* Facebook Like Box width:100% */
.fbcomments,
.fb_iframe_widget,
.fb_iframe_widget[style],
.fb_iframe_widget iframe[style],
.fbcomments iframe[style],
.fb_iframe_widget span {
  width: 100% !important; }

/* PROGRAM
=======================================================================*/
/* About */
#pgm-about {
  background: #fff;
  padding: 120px 0 60px;
  width: 100%; }
  @media only screen and (max-width: 960px) {
    #pgm-about {
      padding-top: 180px; } }
  @media only screen and (max-width: 768px) {
    #pgm-about {
      padding-top: 120px;
      padding-bottom: 0px; } }
  #pgm-about #pgm-about-wrap {
    margin-bottom: 40px;
    color: #3eb1e7; }
    #pgm-about #pgm-about-wrap h1 {
      width: 400px;
      margin: 0 auto;
      font-size: 18px;
      border: 2px solid #3eb1e7;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px; }
      @media only screen and (max-width: 530px) {
        #pgm-about #pgm-about-wrap h1 {
          padding: 10px 0;
          width: 490px; } }
    #pgm-about #pgm-about-wrap h2 {
      margin-bottom: 40px;
      padding-bottom: 20px;
      text-align: center;
      background: url(../../../img/h2_line_featured.gif) no-repeat center bottom; }

#pgm-about-f {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  #pgm-about-f .pgm-about-box {
    position: relative;
    width: 302px;
    border: 2px solid #3eb1e7;
    box-sizing: border-box;
    margin: 0 10px 20px; }
    @media only screen and (max-width: 960px) {
      #pgm-about-f .pgm-about-box {
        width: 100%;
        background: none; } }
    @media only screen and (max-width: 530px) {
      #pgm-about-f .pgm-about-box {
        width: 490px; } }
    @media only screen and (max-width: 960px) {
      #pgm-about-f .pgm-about-box .pgm-about-box-l {
        float: left;
        width: 35%; } }
    #pgm-about-f .pgm-about-box .pgm-about-box-l figure {
      text-align: center; }
      @media only screen and (max-width: 960px) {
        #pgm-about-f .pgm-about-box .pgm-about-box-l figure img {
          width: 100%; } }
    #pgm-about-f .pgm-about-box .pgm-about-box-l .pgm-about-title {
      padding: 20px 10px;
      font-size: 20px;
      font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho";
      text-align: center;
      line-height: 1;
      background-color: #f3f3f3;
      background-image: url(../../../img/dot_btm_blue.gif);
      background-repeat: repeat-x;
      background-position: left bottom;
      line-height: 1.4; }
      @media only screen and (max-width: 960px) {
        #pgm-about-f .pgm-about-box .pgm-about-box-l .pgm-about-title {
          background-image: none; } }
      @media only screen and (max-width: 768px) {
        #pgm-about-f .pgm-about-box .pgm-about-box-l .pgm-about-title {
          font-size: 18px; } }
      @media only screen and (max-width: 530px) {
        #pgm-about-f .pgm-about-box .pgm-about-box-l .pgm-about-title {
          color: #424151;
          font-size: 16px;
          padding: 54px 0; } }
    #pgm-about-f .pgm-about-box .pgm-about-box-r {
      padding: 20px; }
      @media only screen and (max-width: 960px) {
        #pgm-about-f .pgm-about-box .pgm-about-box-r {
          position: absolute;
          padding-left: 38%;
          width: 59%; } }
      #pgm-about-f .pgm-about-box .pgm-about-box-r p {
        font-size: 13px;
        line-height: 1.6; }
        @media only screen and (max-width: 530px) {
          #pgm-about-f .pgm-about-box .pgm-about-box-r p {
            font-size: 16px;
            line-height: 1.6;
            color: #000; } }
        @media only screen and (max-width: 768px) {
          #pgm-about-f .pgm-about-box .pgm-about-box-r p.taC {
            display: none; } }
        #pgm-about-f .pgm-about-box .pgm-about-box-r p.out-link {
          margin-top: 5px; }
        #pgm-about-f .pgm-about-box .pgm-about-box-r p.pht_credit {
          margin-top: 5px;
          text-align: right;
          font-size: 10px;
          color: #424151; }
          @media only screen and (max-width: 530px) {
            #pgm-about-f .pgm-about-box .pgm-about-box-r p.pht_credit {
              margin-top: 0px; } }

/* SCHEDULE */
#schedule {
  background-color: #f1f1f1;
  color: #fff; }
  #schedule #schedule-wrap {
    margin: 0 auto;
    width: 400px;
    margin-bottom: 40px;
    font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
    #schedule #schedule-wrap h1 {
      color: #3eb1e7;
      font-size: 18px;
      border: 2px solid #3eb1e7;
      text-align: center;
      padding: 10px;
      font-family: NexaRegular;
      margin-bottom: 30px; }
    #schedule #schedule-wrap h2 {
      padding-bottom: 20px;
      text-align: center;
      background: url(../../../img/h2_line_speakers.gif) no-repeat center bottom; }

/* ---------- */
#schedule-area {
  margin: 0 0;
  /*仮*/ }
  #schedule-area li {
    background: #f1f1f1;
    margin-bottom: 20px; }
  #schedule-area h3.schedule-title {
    padding-top: 30px;
    height: 90px;
    text-align: center;
    font-size: 60px;
    font-family: NexaRegular;
    color: #3eb1e7;
    line-height: 1;
    cursor: pointer;
    background: url(../../../img/arrow_schedule_down.gif) no-repeat right 20px top 25px;
    background-size: 50px 70px; }
    #schedule-area h3.schedule-title:hover {
      background: url(../../../img/arrow_schedule_down_ov.gif) no-repeat right 20px top 25px;
      background-size: 50px 70px; }
    #schedule-area h3.schedule-title span {
      font-size: 30px;
      color: #acacc3; }
  #schedule-area .schedule-open {
    background: url(../../../img/arrow_schedule_up.gif) no-repeat right 20px top 25px !important;
    background-size: 50px 70px !important; }
    #schedule-area .schedule-open:hover {
      background: url(../../../img/arrow_schedule_up_ov.gif) no-repeat right 20px top 25px !important;
      background-size: 50px 70px !important; }
  #schedule-area .schedule-body {
    color: #000;
    padding-bottom: 60px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    #schedule-area .schedule-body .schedule-box {
      position: relative;
      width: 490px;
      background: #fff;
      margin: 0 10px 20px 10px; }
    #schedule-area .schedule-body .schedule-box-label {
      background-color: #424151;
      color: #fff;
      text-align: center;
      padding: 10px 0;
      font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho"; }
    #schedule-area .schedule-body .schedule-box-l {
      position: relative;
      width: 100%; }
    #schedule-area .schedule-body .schedule-box-r {
      width: 100%; }
      #schedule-area .schedule-body .schedule-box-r h4 {
        line-height: 1.2;
        background-color: #3eb1e7;
        background-repeat: no-repeat;
        background-size: 30px 30px;
        background-position: 20px 5px;
        font-size: 20px;
        font-family: "游明朝体", "游明朝", YuMincho, "Yu Mincho";
        color: #fff;
        padding: 10px 0;
        text-align: center; }
        #schedule-area .schedule-body .schedule-box-r h4.h4-wepon {
          background-image: url(../../../img/ic_pgm_wepon.gif); }
        #schedule-area .schedule-body .schedule-box-r h4.h4-exp {
          background-image: url(../../../img/ic_pgm_exp.gif); }
        #schedule-area .schedule-body .schedule-box-r h4.h4-bar {
          background-image: url(../../../img/ic_pgm_bar.gif); }
        #schedule-area .schedule-body .schedule-box-r h4.h4-mother {
          background-image: url(../../../img/ic_pgm_mother.gif); }
        #schedule-area .schedule-body .schedule-box-r h4 div {
          margin-top: 8px;
          font-size: 11px;
          line-height: 1.2; }
      #schedule-area .schedule-body .schedule-box-r .schedule-detailes {
        padding: 10px 20px;
        font-size: 13px;
        line-height: 1.6; }
        #schedule-area .schedule-body .schedule-box-r .schedule-detailes .schedule-cast {
          width: 280px;
          float: left; }
        #schedule-area .schedule-body .schedule-box-r .schedule-detailes .pgm_cap {
          font-size: 9px;
          line-height: 1.4; }
        #schedule-area .schedule-body .schedule-box-r .schedule-detailes .place-ticket {
          width: 160px;
          float: right; }
          #schedule-area .schedule-body .schedule-box-r .schedule-detailes .place-ticket .place {
            border-bottom: 1px dotted #000;
            padding-bottom: 5px;
            margin-bottom: 5px; }
          #schedule-area .schedule-body .schedule-box-r .schedule-detailes .place-ticket nav.ticket-nav li {
            background: #fff;
            margin: 0; }
            #schedule-area .schedule-body .schedule-box-r .schedule-detailes .place-ticket nav.ticket-nav li a {
              display: block;
              background: url(../../../img/arrow_ticket.gif) no-repeat 0 8px;
              background-size: 27px 26px;
              color: #a1449d;
              padding-left: 30px;
              min-height: 40px; }

/* Box
-----------------------------------------------------------------------*/
.twitterbox {
  margin-bottom: 10px; }

.topDate {
  text-align: right;
  line-height: 1.4;
  padding-bottom: 5px; }

.topboxL {
  float: left; }

.topboxR {
  float: right; }

#twitterload li {
  padding-bottom: 20px;
  position: relative;
  line-height: 1.4; }

#twitterload time {
  position: absolute;
  left: 0;
  width: 6em; }
  @media only screen and (max-width: 530px) {
    #twitterload time {
      position: relative;
      padding-bottom: 0.5em;
      width: 6em;
      font-size: large !important; } }

#twitterload p {
  padding: 0;
  margin-left: 7em; }
  @media only screen and (max-width: 530px) {
    #twitterload p {
      padding: 5px 0 5px 0;
      margin-left: 0em; } }
  #twitterload p a {
    color: #fff;
    text-decoration: underline; }

/* Footer
=======================================================================*/
footer#siteFooter {
  background: #424151; }
  footer#siteFooter small {
    display: block;
    text-align: center;
    color: #fff;
    font-family: NexaRegular;
    padding-top: 20px;
    padding-bottom: 20px;
    letter-spacing: 0.5px;
    line-height: 1.6; }
    footer#siteFooter small a {
      text-decoration: underline; }

/* Smart Phone Navigation */
#logo-twdw {
  display: none;
  z-index: 10000; }
  @media only screen and (max-width: 768px) {
    #logo-twdw {
      position: fixed;
      display: block;
      top: 20px;
      left: 20px; } }

#sp-nav-click {
  display: none;
  position: fixed;
  width: 100%;
  height: 70px;
  padding: 13px;
  box-sizing: border-box;
  background: #fff;
  text-align: right;
  z-index: 999; }
  @media only screen and (max-width: 768px) {
    #sp-nav-click {
      display: block; } }
  #sp-nav-click a {
    color: #000; }

nav#sp-nav {
  position: absolute;
  left: -9999px; }
  nav#sp-nav li {
    font-family: NexaRegular; }

/* Smart Phone Hack
=======================================================================*/
@media only screen and (max-width: 530px) {
  .list-menu {
    z-index: 9999; } }
