@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Oswald:700&display=swap');


/* COLOR
* --------------------------------------- */
/* Reset CSS
* --------------------------------------- */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre,
form, fieldset, input, textarea, p, blockquote, th, td {
  padding: 0;
  margin: 0; }

a {
  text-decoration: none; }

img {vertical-align: bottom;}

table {
  border-spacing: 0; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-weight: normal;
  font-style: normal; }

strong {
  font-weight: bold; }

ol, ul {
  list-style: none;
  margin: 0;
  padding: 0; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  margin: 0;
  padding: 0;}

q:before, q:after {
  content: ''; }

abbr, acronym {
  border: 0; }




/* Custom CSS
* --------------------------------------- */

*,
*::before,
*::after {box-sizing: border-box;}

a {color: #00a8ff; transition: color 0.2s;}
a:hover {color: #ffba00;}

body {
  color: #fff;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI",メイリオ, Meiryo, sans-serif;
    background-color: #000;
    -webkit-text-size-adjust: 100%;
}

body::before,
body::after {
position: fixed;
top: 0;
left: 0;
z-index: -1;
content: "";
display: block;
width: 100%;
height: 100vh;
background: #000 url(/info/event/summit/2019/images/bg.jpg) no-repeat top center;
background-size: cover;
filter: blur(10px);
-webkit-animation: blur 3.0s 2s ease-out 1 forwards;
animation: blur 3.0s 2s ease-out 1 forwards;
}
@keyframes blur {
0% {filter: blur(10px);}
100% {filter: blur(2px);}
}
@-webkit-keyframes blur {
0% {filter: blur(10px);}
100% {filter: blur(2px);}
}

body::after {
background: rgba(0,0,0,1);
filter: none;
-webkit-animation: fade 3.0s 2s ease-out 1 forwards;
animation: fade 3.0s 2s ease-out 1 forwards;
}

@keyframes fade {
0% {background: rgba(0,0,0,1);}
100% {background: rgba(0,0,0,.5);}
}
@-webkit-keyframes fade {
0% {background: rgba(0,0,0,1);}
100% {background: rgba(0,0,0,.5);}
}

.contents-inner {
max-width: 1000px;
margin: 0 auto;
}

th,td {vertical-align: top;}

/* button */
.btn-area {
clear: both;
padding: 24px 0;
text-align: center;
}


.btn-area a {
    position: relative;
    overflow: hidden;
    display: inline-block;
    min-width: 40%;
    padding: 16px 8px;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    background: linear-gradient(to right, #00a8ff 0%, #00f9e1 100%);
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
}

.btn-area a span {
    position: relative;
    z-index: 5;
    transition: 0.5s;
}
.btn-area a span::after {
    position: absolute;
    top: calc(50% - 7px);
    right: -5px;
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
    opacity: 0;
    transition: 0.5s;
}
.btn-area a:hover span {
    margin-right: 15px;
}
.btn-area a:hover span::after {
    right: -20px;
    opacity: 1;
}

.btn-area a::before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: -200%;
    width: 200%;
    height: 100%;
    background: linear-gradient(to right, #00a8ff 0%, rgba(0, 168, 255, 0) 100%);
    -webkit-transition: left 0.5s;
    -moz-transition: left 0.5s;
    -ms-transition: left 0.5s;
    -o-transition: left 0.5s;
    transition: left 0.5s;
}
.btn-area a:hover::before {
    left: 0;
}

#hero .btn-area a:hover span,
#summary .btn-area a:hover span {
    margin-right: 0;
}

#hero .btn-area a:hover span::after,
#summary .btn-area a:hover span::after {
    display: none;
}




/* heading */
h2 {
padding: 0 0 24px;
color: #fff;
font-family: 'Oswald', "游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI",メイリオ, Meiryo, sans-serif;
font-size: 48px;
font-weight: bold;
text-align: center;
line-height: 1em;
}
h2 span {
display: block;
font-size: 36px;
opacity: 0.3;
}


/* hero */
#hero {
position: relative;
overflow: hidden;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
-webkit-align-items: center;
-ms-align-items: center;
align-items: center;
flex-direction: column;
height: calc(80vh + 66px);
min-height: 600px;
padding-top: 66px;
font-feature-settings: "palt" 1;
font-size: 40px;
font-weight: bold;
text-align: center;
}

#hero::before {
content: "";
position: absolute;
display: block;
width: 100%;
height: 100%;
opacity: 1;
-webkit-transform: scale(1,1);
-o-transform: scale(1,1);
transform: scale(1,1);
background: url(/info/event/summit/2019/images/ring_blue_animated.svg) no-repeat center center;
-webkit-animation: ring 6.0s 0s linear 1 forwards;
animation: ring 6.0s 0s linear 1 forwards;
}

@keyframes ring {
0% {opacity: 1;transform: scale(1,1);}
50% {opacity: 1;transform: scale(1.2,1.2);}
100% {opacity: .5;transform: scale(1.4,1.4);}
}

@-webkit-keyframes ring {
0% {opacity: 1;transform: scale(1,1);}
50% {opacity: 1;transform: scale(1.2,1.2);}
100% {opacity: .5;transform: scale(1.4,1.4);}
}

#hero .contents-inner {
position: relative;
z-index: 5;}

#hero .ttl-main {text-shadow: 0 0 10px #000;}
#hero h1 span {
display: block;
font-size: 16px;
}

#hero .year,
#hero .date {font-family: 'Oswald',Impact,Arial,"游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI",メイリオ, Meiryo, sans-serif;}
#hero .date {padding: 24px 0 0;}
#hero .btn-area a {
width: 80%;}



/* lead */
#lead {
padding: 48px 0;
background: rgba(0,0,0,.5);
}

#lead .contents-inner {
position: relative;}

#lead h2 {
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -moz-transform-origin: left top;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    position: absolute;
    top: 0;
    left: 1em;
    text-align: center;
}
#lead h2 span {
display: inline-block;
font-size: 48px;
opacity: 1;
color: transparent;
background: linear-gradient(to right, #6bbd2f 0%, #d0eb70 100%);
-webkit-background-clip: text;
}
/* IE10以降 */
@media all and (-ms-high-contrast:none){
  #sponsor h2 span { 
    background: none;
    color: #6bbd2f;
  }
}

#lead p {margin-left: 64px;}




/* summary */
#summary {
padding: 48px 0;
color: #333;
background: linear-gradient(to right, rgba(56, 176, 238, 0.9) 0%, rgba(120, 221, 211, 0.9) 100%);
/*background: linear-gradient(to right, rgba(130,40,172,0.9) 0%, rgba(210,107,202,0.9) 100%);*/
}

#summary .contents-inner {
padding: 48px 48px 24px;
background-color: #fff;
}

#summary th,td {
padding: 4px 8px;

}
#summary th {white-space: nowrap; font-weight: bold; color: #00a8ff;}




/* program */
#program {
padding: 48px 0;
}
#program table {
width: 100%;
table-layout: fixed;
background-color: rgba(0,0,0,.6);
}
#program th,
#program td {
padding: 16px;
border-bottom: 1px solid #333;
}

#program th.time {
position: relative;
width: 5em;
word-wrap: break-word;
}
#program th.time::before {
position: absolute;
top: 0;
right: 0;
content: "";
width: 3px;
height: 100%;
background: linear-gradient(to bottom, rgba(130,40,172,1) 0%, rgba(210,107,202,1) 100%);
}


#program td:nth-of-type(2) {border-left: 1px solid #333;}

#program tr .session span {
display: inline-block;
margin-right: 16px;
padding: 0 8px;
font-family: 'Oswald',"游ゴシック Medium", "Yu Gothic Medium", YuGothicM, 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI",メイリオ, Meiryo, sans-serif;
background: linear-gradient(to bottom, rgba(130,40,172,1) 0%, rgba(210,107,202,1) 100%);
}
#program tr .session strong {
display: inline-block;
height: 24px;
padding: 0 8px;
background-color: #D50808;
color: #fff;
}

#program tr:nth-of-type(2) th.time::before {
background: linear-gradient(to bottom, rgba(56, 176, 238, 1) 0%, rgba(120, 221, 211, 1) 100%);
}
#program tr:nth-of-type(2) .session span {background: linear-gradient(to bottom, rgba(56, 176, 238, 1) 0%, rgba(120, 221, 211, 1) 100%);}

#program tr:nth-of-type(3) th.time::before {
background: linear-gradient(to bottom, #6bbd2f 0%, #d0eb70 100%);
}
#program tr:nth-of-type(3) .session span {background: linear-gradient(to bottom, #6bbd2f 0%, #d0eb70 100%);}

#program tr:nth-of-type(4) th.time::before {
background: linear-gradient(to bottom, #d06700 0%, #ffba00 100%);
}
#program tr:nth-of-type(4) .session span {background: linear-gradient(to bottom, #d06700 0%, #ffba00 100%);}


#program .schedule h3 {
min-height: 5em;
margin: 8px 0 16px;
font-size: 20px;
font-weight: bold;
font-feature-settings: "palt" 1;
}
#program .schedule h3 small {
display: block;
line-height: 1.2;
font-size: 14px;
font-weight: normal;
}

#program .schedule .summary {font-size: 14px; color: #ddd;}

#program .speaker {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
margin-top: 16px;
}
#program .speaker .speaker-thumb {
width: 100px;
-webkit-flex-shrink: 0;
flex-shrink: 0;
margin: 0 16px 16px 0;
}
#program .speaker .speaker-thumb img {max-width: 100%;}
#program .speaker .speaker-txt {
width: 100%;
font-size: 14px;
}
#program .speaker .speaker_profile {
color: #00a8ff;
cursor: pointer;
}
#program .speaker .profile_open {color: #ddd;}




/* apply */
#apply {
padding: 48px 0 64px;
}



/* sponsor */
#sponsor {
padding: 48px 0;
background-color: #fff;}

#sponsor h2 span {
opacity: 1;
display: inline-block;
color: #666;
}



.list-logo {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
-ms-flex-wrap: wrap;
-o-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: center;
justify-content: center;
margin-bottom: 48px;
}
.list-logo li {
width: 31%;
margin: 0 1% 16px;
}
.list-logo li img {max-width: 80%;}



/* inquiry */
#inquiry {padding: 48px 0; text-align: center;}





/* header and footer
* --------------------------------------- */
#header {
position: fixed;
z-index: 50;
top: 0;
left: 0;
width: 100%;
padding: 8px 0;
overflow: hidden;
background: rgba(0,0,0,.7);
}
#header .toplogo {float: left;}
#header .toplogo img {
max-height: 50px;}

#header .header-nav {
float: left;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
-webkit-align-items: center;
align-items: center;
height: 50px;
margin-left: 24px;
}
#header .header-nav a {
margin: 0 16px;
color: #fff;
}
#header .header-nav a:hover {color: #ffba00;}

#header .sns-btn {
float: right;
margin-top: 8px;
}
#header .sns-btn > div {display: inline-block; margin-left: 16px;}

footer {
padding: 48px;
font-size: 12px;
text-align: center;
background: rgba(0,0,0,0.5);
}
footer li {
display: inline-block;
padding: 8px;
}
footer li a {color: #ccc;}



/*個人情報*/
.privacy-area{
padding: 24px 0;
background-color: #000;
}

.privacy-area p{
color: #ccc;
font-size: 12px;
}








/*---------------------------------------------------
RESPONSIVE
---------------------------------------------------*/
@media screen and (max-width: 800px) {
.contents-inner {
margin: 0 24px;
}

}



@media screen and (max-width: 640px) {
.contents-inner {margin: 0 8px;}

h2 {font-size: 24px;}
h2 span {font-size: 18px;}

.btn-area a {width: 100%; font-size: 1.125rem;}

#header {
height: auto; 
overflow-x: scroll;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
white-space: nowrap; 
-webkit-overflow-scrolling: touch;
}
#header .contents-inner {
max-width: none; 
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
white-space: nowrap;
 }
#header .toplogo img {max-height: 40px;}
#header .header-nav {height: auto; margin-left: 16px;}
#header .header-nav a {font-size: 14px;}


#hero {
height: calc(70vh + 66px);
min-height: 0;
}
#hero {font-size: 26px;}
#hero h1 span {font-size: 12px;}
#hero .date {padding-top: 8px;}
#hero .btn-area a {padding: 8px;}

#lead {font-size: 14px;}
#lead h2,
#lead h2 span {font-size: 30px;}
#lead p {margin-left: 48px;}
#lead .contents-inner::after {
content: "";
position: absolute;
left: 13px;
bottom: 0;
width: 2px;
height: calc(100% - 200px);
background: linear-gradient(to bottom, #d0eb70 0%, #6bbd2f 100%);
}

#summary .contents-inner {
padding: 16px;}
#summary th, #summary td {display: block;}
#summary th {font-size: 12px; border-top: 1px solid #ddd;}
#summary td {margin-bottom: 16px; font-size: 14px;}

#program th, #program td {padding: 8px;}
#program td {display: block;}
#program th.time {font-size: 12px;}
#program .schedule h3 {min-height: 0; font-size: 16px;}
#program .schedule .summary,
#program .speaker .speaker-txt,
#program .speaker .profile_open {font-size: 12px;}


#program .speaker .speaker-thumb {
width: 40px;}

.list-logo li {
width: 48%;}

}
 