@charset "UTF-8";
.clear {
  clear: both; }

/* reset */
#hero, #section-name, footer {
  min-width: 1px; }

/* layout */
#jcsd2020.container {
  width: 100%;
  padding: 0;
  color: #666;
  background-color: #fff; }

.jcsd-inner {
  max-width: 1140px;
  margin: 0 auto; }

.ttl {
  position: relative;
  height: 245px;
  background: url(../img/jcsd2020/ttl_overview.png) no-repeat top center;
  opacity: 0;
  transition: opacity 1.2s; }
  .ttl.fadein {
    opacity: 1;
    transition: opacity 1.2s; }
  .ttl h2 {
    position: absolute;
    bottom: 32px;
    width: 100%;
    color: #666;
    font-size: 2rem;
    font-weight: bold;
    text-align: center; }

.col2 {
  display: flex;
  justify-content: space-between; }
  .col2 .col2-inner {
    width: 48%; }

.box-w-line {
  position: relative;
  margin-bottom: 16px;
  padding: 24px;
  background-color: #fff; }
  .box-w-line::before {
    content: "";
    display: block;
    position: absolute;
    top: 8px;
    left: 8px;
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    border: 2px dotted #dec510; }
  .box-w-line .box-w-line-inner {
    position: relative;
    z-index: 5; }

/* button */
.btn-orange {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 430px;
  height: 72px;
  margin: 0 auto;
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  background-color: #fcac00;
  text-decoration: none;
  transition: 0.5s; }
  .btn-orange:hover {
    text-decoration: none;
    color: #fff;
    background-color: #fc7d00; }
    .btn-orange:hover span {
      right: 8px; }
  .btn-orange::before {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: 1px solid #fff; }
  .btn-orange span {
    position: absolute;
    width: 48px;
    height: 2px;
    right: 32px;
    background-color: #fff;
    transition: right 0.5s; }
    .btn-orange span::before {
      content: "";
      display: block;
      position: absolute;
      right: 0;
      bottom: 1px;
      width: 2px;
      height: 16px;
      background-color: #fff;
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      -o-transform: rotate(-45deg);
      transform: rotate(-45deg);
      transform-origin: bottom right; }

/* hero */
#hero {
  padding: 72px 0;
  background: url(../img/jcsd2020/bg_leaf.png) repeat-x center center; }
  #hero .jcsd-inner {
    position: relative; }
  #hero .hero-ttl {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    color: #2e98b7; }
    #hero .hero-ttl h2 {
      height: 90px;
      padding: 0 24px 24px;
      font-size: 1.875rem;
      font-weight: bold;
      background-color: #fff; }
      #hero .hero-ttl h2 small {
        display: block;
        font-size: 1.5rem;
        color: #90cddf; }
    #hero .hero-ttl .hero-date {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      width: 160px;
      height: 135px;
      padding: 16px;
      color: #fff;
      font-size: 3rem;
      text-align: center;
      line-height: 0.7em;
      letter-spacing: -0.01em;
      background-color: #2e98b7; }
      #hero .hero-ttl .hero-date small, #hero .hero-ttl .hero-date span {
        font-size: 1.5rem; }
  #hero .btn {
    position: absolute;
    top: 90px;
    left: 160px;
    padding: 0;
    border: none; }
  #hero .btn-orange {
    justify-content: flex-start;
    min-width: 260px;
    padding-left: 24px; }

/* slider add style */
#slider-jcsd {
  margin: 0 72px; }
  #slider-jcsd .slick-slide img {
    width: 100%; }

/* jcsd news */
#jcsd-news {
  padding: 48px 0 86px; }
  #jcsd-news h3 {
    margin-bottom: 16px;
    color: #2e98b7;
    font-weight: bold;
    font-size: 1.25rem; }
  #jcsd-news li {
    padding: 8px 0;
    font-size: 1rem;
    border-bottom: 1px dotted #ccc; }

/* lead */
#lead, .lead-bg {
  position: relative;
  overflow: hidden; }
  #lead::before, #lead::after, .lead-bg::before, .lead-bg::after {
    content: "";
    display: block;
    position: absolute;
    top: 300px;
    left: 40%;
    width: 100%;
    height: 300px;
    background: url(../img/jcsd2020/bg_watercolor.jpg) no-repeat left center; }
  #lead::after, .lead-bg::after {
    content: "";
    display: block;
    position: absolute;
    top: 400px;
    left: 30%;
    background: url(../img/jcsd2020/bg_leaf.png) no-repeat left center; }
  #lead .lead-bg, .lead-bg .lead-bg {
    padding-bottom: 72px; }
    #lead .lead-bg::before, .lead-bg .lead-bg::before {
      top: auto;
      bottom: 300px;
      left: auto;
      right: 40%;
      background-position: right center; }
    #lead .lead-bg::after, .lead-bg .lead-bg::after {
      top: auto;
      bottom: 400px;
      left: auto;
      right: 30%;
      background-position: right center; }
  #lead .lead-catch, .lead-bg .lead-catch {
    padding-bottom: 72px;
    color: #2e98b7;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center; }
  #lead .lead-txt, .lead-bg .lead-txt {
    position: relative;
    z-index: 5;
    display: flex;
    align-items: center;
    margin-bottom: 72px; }
    #lead .lead-txt > div, .lead-bg .lead-txt > div {
      width: 50%; }
    #lead .lead-txt .lead-txt-txt, .lead-bg .lead-txt .lead-txt-txt {
      padding-right: 48px;
      font-size: 1rem; }
      #lead .lead-txt .lead-txt-txt p, .lead-bg .lead-txt .lead-txt-txt p {
        line-height: 1.8; }
  #lead .lead-photo, .lead-bg .lead-photo {
    position: relative;
    z-index: 5;
    min-height: 720px; }
    #lead .lead-photo .lead-photo-photo, .lead-bg .lead-photo .lead-photo-photo {
      position: relative;
      max-width: 360px;
      border: 16px solid rgba(255, 255, 255, 0.5);
      opacity: 0; }
      #lead .lead-photo .lead-photo-photo.showup, .lead-bg .lead-photo .lead-photo-photo.showup {
        animation: showup 1.2s 0s ease 1 forwards; }
      #lead .lead-photo .lead-photo-photo::before, .lead-bg .lead-photo .lead-photo-photo::before {
        content: "";
        display: block;
        position: absolute;
        top: -16px;
        left: -16px;
        width: calc(100% + 32px);
        height: calc(100% + 32px);
        border: 2px solid #90cddf; }
      #lead .lead-photo .lead-photo-photo::after, .lead-bg .lead-photo .lead-photo-photo::after {
        content: "";
        display: block;
        position: absolute;
        content: "2019年開催の様子";
        bottom: -24px;
        left: 0;
        padding: 0 8px;
        color: #2e98b7;
        background-color: #fff; }
      #lead .lead-photo .lead-photo-photo:nth-of-type(2), .lead-bg .lead-photo .lead-photo-photo:nth-of-type(2) {
        position: absolute;
        left: 0;
        bottom: 0; }
      #lead .lead-photo .lead-photo-photo:nth-of-type(3), .lead-bg .lead-photo .lead-photo-photo:nth-of-type(3) {
        position: absolute;
        right: 0;
        bottom: 0; }
        #lead .lead-photo .lead-photo-photo:nth-of-type(3).showup, .lead-bg .lead-photo .lead-photo-photo:nth-of-type(3).showup {
          animation: showup 1.2s 0.4s ease 1 forwards; }
@keyframes showup {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
    #lead .lead-photo .lead-photo-movie, .lead-bg .lead-photo .lead-photo-movie {
      position: absolute;
      width: 100%;
      max-width: 560px;
      height: 360px;
      top: calc(50% - 180px);
      left: calc(50% - 280px);
      border: 16px solid rgba(255, 255, 255, 0.5); }
      #lead .lead-photo .lead-photo-movie::before, .lead-bg .lead-photo .lead-photo-movie::before {
        content: "";
        display: block;
        position: absolute;
        top: -16px;
        left: -16px;
        width: calc(100% + 32px);
        height: calc(100% + 32px);
        border: 2px solid #90cddf; }
      #lead .lead-photo .lead-photo-movie iframe, .lead-bg .lead-photo .lead-photo-movie iframe {
        width: 100%;
        height: 100%; }
  #lead .lead-news, .lead-bg .lead-news {
    position: relative;
    z-index: 5;
    margin-top: 48px;
    font-size: 1rem; }
    #lead .lead-news h3, .lead-bg .lead-news h3 {
      color: #2e98b7;
      font-weight: bold;
      font-size: 1.25rem; }
    #lead .lead-news li, .lead-bg .lead-news li {
      margin-top: 8px; }

/* register */
.register {
  padding: 72px 0;
  text-align: center;
  background-color: #e3eff3; }
  .register p {
    color: #2e98b7;
    font-size: 1.5rem;
    font-weight: bold; }
    .register p small {
      display: block;
      color: #90cddf; }

/* nav */
.nav-event ul {
  display: flex; }
.nav-event li {
  width: 100%; }
  .nav-event li a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 20px 0;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    background-color: #2e98b7;
    -webkit-transition: background-color 0.5s;
    -moz-transition: background-color 0.5s;
    -ms-transition: background-color 0.5s;
    -o-transition: background-color 0.5s;
    transition: background-color 0.5s; }
    .nav-event li a::before {
      content: "";
      display: block;
      position: absolute;
      top: calc(50% - 6px);
      right: 16px;
      width: 8px;
      height: 8px;
      border-right: 2px solid #fff;
      border-bottom: 2px solid #fff;
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg); }
    .nav-event li a:hover {
      background-color: #90cddf;
      text-decoration: none; }
  .nav-event li.nav-register a {
    background-color: #fcac00; }
    .nav-event li.nav-register a::before {
      display: none; }
    .nav-event li.nav-register a:hover {
      background-color: #fc7d00; }
.nav-event.fixed {
  position: fixed !important;
  top: 0;
  left: 0;
  z-index: 900;
  width: 100%;
  opacity: 0;
  animation: anime1 0.5s ease 0s 1 forwards; }

@keyframes anime1 {
  0% {
    top: 0;
    opacity: 0; }
  100% {
    top: 50px;
    opacity: 1; } }
/* overview */
#overview {
  padding: 48px 0;
  background-color: #fcfaec;
  overflow: hidden; }
  #overview .jcsd-inner {
    position: relative; }
  #overview span[class^="bg-leaf"] {
    position: absolute; }
  #overview span.bg-leaf01 {
    left: -150px;
    top: 100px; }
  #overview span.bg-leaf02 {
    right: -200px;
    top: 30%; }
  #overview span.bg-leaf03 {
    right: -200px;
    bottom: 0; }
  #overview span.bg-leaf04 {
    left: -300px;
    top: 50%;
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
    transform: rotateY(180deg); }
  #overview h3 {
    margin-bottom: 8px;
    color: #2e98b7;
    font-weight: bold; }
  #overview .box-w-line {
    position: relative;
    z-index: 3; }
    #overview .box-w-line p {
      margin-bottom: 16px;
      font-size: 1rem; }
      #overview .box-w-line p:last-of-type {
        margin-bottom: 0; }
  #overview iframe {
    width: 100%;
    min-height: 300px; }

/* schedule */
#schedule {
  overflow: hidden;
  position: relative;
  padding: 48px 0;
  background: linear-gradient(to bottom, white 0%, white 303px, #f6fcec 303px, #f6fcec 100%); }
  #schedule::before, #schedule::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 300px; }
  #schedule::before {
    top: 300px;
    left: 0;
    background: url(../img/jcsd2020/bg_watercolor.jpg) top center;
    -webkit-background-size: cover;
    background-size: cover; }
  #schedule::after {
    top: 130px;
    left: 50%;
    background: url(../img/jcsd2020/bg_schedule.jpg) no-repeat top left; }
  #schedule .ttl {
    width: 480px;
    background-image: url(../img/jcsd2020/ttl_schedule.png); }
  #schedule .schedule-table {
    position: relative;
    z-index: 5;
    display: flex;
    justify-content: space-between; }
    #schedule .schedule-table th.venue {
      color: #fff;
      font-size: 18px;
      background-color: #2e98b7; }
  #schedule .timetable {
    width: 100%;
    height: 100%;
    margin-top: 100px;
    background-color: #fff; }
    #schedule .timetable th, #schedule .timetable td {
      padding: 16px;
      vertical-align: top;
      border-bottom: 1px solid #ccc; }
    #schedule .timetable th {
      width: 10em;
      color: #2e98b7;
      font-weight: bold; }
    #schedule .timetable .timetable-label {
      display: inline-block;
      margin: 0 8px 16px 0;
      padding: 0 8px;
      color: #fff;
      background-color: #2e98b7;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px; }
    #schedule .timetable h3 {
      margin-bottom: 8px;
      color: #2e98b7;
      font-size: 1rem;
      font-weight: bold; }
    #schedule .timetable .timetable-speaker {
      overflow: hidden;
      margin: 24px 0 16px; }
      #schedule .timetable .timetable-speaker .timetable-speaker-img {
        width: 100px;
        float: left;
        margin: 0 16px 0 0; }
        #schedule .timetable .timetable-speaker .timetable-speaker-img img {
          max-width: 100%; }
      #schedule .timetable .timetable-speaker .timetable-speaker-name {
        margin-bottom: 8px;
        font-weight: bold; }
    #schedule .timetable .timetable-break {
      background-color: #f5f5f5; }
  #schedule .timetable-booth {
    position: relative;
    width: 30%;
    flex-shrink: 0;
    margin-left: 16px; }
    #schedule .timetable-booth .time {
      color: #2e98b7;
      font-weight: bold; }

/* exhibition */
#exhibition {
  padding: 48px 0; }
  #exhibition .ttl {
    background-image: url(../img/jcsd2020/ttl_exhibition.png); }
  #exhibition .exhibition-register {
    padding: 32px 0;
    text-align: center;
    background-color: #e3eff3; }
    #exhibition .exhibition-register h3 {
      color: #2e98b7;
      font-size: 1.5rem;
      font-weight: bold; }
  #exhibition .exhibition-company {
    display: flex;
    flex-wrap: wrap;
    margin-top: 24px; }
    #exhibition .exhibition-company li {
      width: 18%;
      margin: 0 1% 16px;
      padding-bottom: 16px;
      border-bottom: 1px dotted #ccc; }
    #exhibition .exhibition-company .exhibition-company-name {
      margin: 16px 0 8px;
      font-size: 1rem;
      font-weight: bold; }
    #exhibition .exhibition-company p {
      font-size: 0.75rem;
      line-height: 1.8; }

/* contact */
#contact {
  padding: 48px 0;
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  background-color: #fcfaec; }
  #contact .jcsd-inner {
    position: relative;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }
    #contact .jcsd-inner::before, #contact .jcsd-inner::after {
      content: "";
      display: block;
      position: absolute;
      top: calc(50% - 150px);
      left: 0;
      height: 300px;
      width: 300px;
      background: url(../img/jcsd2020/leaf2.png) no-repeat center left;
      -webkit-background-size: contain;
      background-size: contain; }
    #contact .jcsd-inner::before {
      -webkit-transform: rotateY(180deg);
      -moz-transform: rotateY(180deg);
      -ms-transform: rotateY(180deg);
      -o-transform: rotateY(180deg);
      transform: rotateY(180deg); }
    #contact .jcsd-inner::after {
      content: "";
      display: block;
      position: absolute;
      left: auto;
      right: 0;
      background-position: center right; }
  #contact h2 {
    margin-bottom: 24px;
    font-size: 2rem;
    font-weight: bold; }
  #contact p {
    position: relative;
    z-index: 5;
    line-height: 1.8; }

/* sponsor */
#sponsor-logo {
  padding: 48px 0; }
  #sponsor-logo .jcsd-inner {
    display: flex;
    justify-content: space-between; }

@media (max-width: 1140px) {
  .jcsd-inner {
    max-width: 100%;
    padding: 0 16px; } }
@media (max-width: 800px) {
  #hero {
    background-position: center top; }
    #hero .hero-ttl {
      position: static;
      overflow: hidden;
      margin-bottom: 24px; }
      #hero .hero-ttl h2 {
        height: auto;
        padding: 16px;
        font-size: 1.5rem;
        text-align: center; }
      #hero .hero-ttl .hero-date {
        display: block;
        width: 100%;
        height: auto;
        padding: 8px 16px;
        font-size: 1.25rem;
        text-align: center; }
        #hero .hero-ttl .hero-date div {
          display: inline-block; }
        #hero .hero-ttl .hero-date small, #hero .hero-ttl .hero-date span {
          font-size: 1rem; }
      #hero .hero-ttl .btn {
        display: block;
        position: static;
        margin-top: 16px;
        text-align: center; }
      #hero .hero-ttl .btn-orange {
        justify-content: center;
        padding: 0; }
        #hero .hero-ttl .btn-orange span {
          display: none; }

  #slider-jcsd {
    margin: 0; }

  #lead .lead-txt {
    display: block;
    margin-bottom: 48px; }
    #lead .lead-txt .lead-txt-txt {
      padding: 0; }
    #lead .lead-txt > div {
      width: 100%; }
  #lead .lead-txt-img {
    display: none; }
  #lead .lead-photo {
    position: relative;
    min-height: 0; }
    #lead .lead-photo .lead-photo-photo,
    #lead .lead-photo .lead-photo-movie {
      position: relative !important;
      clear: both;
      margin-bottom: 16px; }
    #lead .lead-photo .lead-photo-photo {
      float: left; }
      #lead .lead-photo .lead-photo-photo:nth-of-type(2) {
        float: right; }
      #lead .lead-photo .lead-photo-photo:nth-of-type(3) {
        margin-bottom: 24px; }
        #lead .lead-photo .lead-photo-photo:nth-of-type(3).showup {
          animation: showup 1.2s 0s ease 1 forwards; }
    #lead .lead-photo .lead-photo-movie {
      top: auto;
      left: auto;
      margin: 24px auto; }

  /* nav */
  .nav-event li a::before {
    display: none; }

  #schedule::after {
    display: none; }
  #schedule .ttl {
    width: auto; }

  #exhibition .exhibition-company li {
    width: 31%; } }
@media (max-width: 640px) {
  .col2 {
    display: block; }
    .col2 .col2-inner {
      width: 100%; }

  .ttl {
    height: 200px;
    -webkit-background-size: contain;
    background-size: contain; }

  .btn-orange span {
    display: none; }

  .box-w-line {
    margin-bottom: 8px; }

  #hero .hero-ttl h2 small {
    font-size: 1rem; }

  #lead .lead-photo .lead-photo-photo {
    float: none; }

  .register {
    padding: 24px; }
    .register p small {
      font-size: 0.75rem; }

  .nav-event li a {
    padding: 8px;
    font-size: 0.75rem; }

  #schedule .schedule-table {
    display: block; }
  #schedule .timetable {
    margin-top: 0;
    -webkit-box-shadow: 0 0 5px #cccccc;
    -moz-box-shadow: 0 0 5px #cccccc;
    box-shadow: 0 0 5px #cccccc; }
    #schedule .timetable th, #schedule .timetable td {
      display: block; }
    #schedule .timetable th {
      width: 100%;
      border-bottom: 1px dotted #ccc; }
    #schedule .timetable .timetable-speaker p {
      margin-left: 76px; }
    #schedule .timetable .timetable-speaker p:not([class="timetable-speaker-name"]) {
      font-size: 0.75rem; }
    #schedule .timetable .timetable-speaker .timetable-speaker-img {
      width: 60px; }
  #schedule .timetable-booth {
    width: 100%;
    margin: 20px 0 0; }

  #exhibition .exhibition-register {
    padding: 24px; }
  #exhibition .exhibition-company li {
    width: 48%; }

  /* sponsor */
  #sponsor-logo .jcsd-inner {
    flex-wrap: wrap; }
    #sponsor-logo .jcsd-inner > div {
      width: 50%; }

  /* contact */
  #contact .jcsd-inner::before, #contact .jcsd-inner::after {
    display: none; } }

/*# sourceMappingURL=jcsd2020.css.map */
