@charset "UTF-8";
header,
main,
article {
  display: block; }

body {
  font-family: Circular, "Helvetica Neue", Helvetica, Arial, sans-serif; }

[lang="ja"] body {
  font-family: Circular, "Helvetica Neue", Helvetica, Arial, "\30D2\30E9\30AE\30CE\89D2\30B4   Pro", "Hiragino Kaku Gothic Pro", "\30E1\30A4\30EA\30AA", Meiryo,Osaka, "\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF", "MS PGothic", "MS Gothic", "\FF2D\FF33   \30B4\30B7\30C3\30AF", sans-serif; }

.btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  position: relative;
  padding: 24px 60px 23px 30px;
  background: #fff;
  -webkit-box-shadow: 0 0 2em rgba(0, 0, 0, 0.07);
          box-shadow: 0 0 2em rgba(0, 0, 0, 0.07);
  border: none;
  border-radius: 10em;
  text-decoration: none;
  text-transform: uppercase;
  font: inherit;
  font-size: 0.85em;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  color: #06c;
  -webkit-tap-highlight-color: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-transition: opacity 0.1s linear 0s;
  transition: opacity 0.1s linear 0s;
  overflow: hidden; }
  .btn:before, .btn:after,
  .btn img {
    display: block;
    position: absolute;
    -webkit-transform: translate(50%, -50%);
            transform: translate(50%, -50%); }
  .btn:before, .btn:after {
    content: ""; }
  .btn:before {
    top: 50%;
    right: 32px;
    width: 30px;
    height: 30px;
    background: #06c;
    border-radius: 100%; }
  .btn:after {
    background: url(/assets/sprites/parts.svg) no-repeat;
    background-position: -28px -199px;
    background-size: 275px 227px;
    width: 26px;
    height: 20px;
    z-index: 10;
    top: 50%;
    right: 32px; }
  
  .btn img {
    z-index: 10;
    top: 50%;
    right: 20px; }
  .btn:active {
    top: 0.1em; }

.pc .btn {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out; }
  .pc .btn:hover, .pc .btn:focus {
    text-decoration: underline; }

@media (max-width: 360px) {
  .btn[href="/en/summit/"] {
    padding: 24px 50px 23px 20px; } }

@media (max-width: 330px) {
  .btn[href="/en/summit/"] {
    padding: 24px 55px 23px 15px;
    font-size: 0.8em; } }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font: inherit;
  color: inherit;
  line-height: inherit;
  word-wrap: break-word;
  overflow-wrap: break-word; }

html,
body {
  margin: 0;
  padding: 0; }

body {
  background: #fff;
  color: #000;
  font-size: 1em;
  line-height: 1.5;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased; }

@media (min-width: 801px) {
  body[data-font-size="large"] {
    font-size: 1.4em; }
  body[data-font-size="xlarge"] {
    font-size: 2em; } }

a img {
  vertical-align: middle; }

abbr {
  text-decoration: none; }

hr {
  display: none; }

.word-break-all {
  word-wrap: break-word;
  word-break: break-all; }

article h2 .title.lazy,
article h2 .sub.lazy,
.text-container.lazy {
  opacity: 0;
  -webkit-transform: translate(-30px, 0);
          transform: translate(-30px, 0); }
  article h2 .title.lazy.show,
  article h2 .sub.lazy.show,
  .text-container.lazy.show {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
    -webkit-transition: opacity 0.3s linear 0.2s, -webkit-transform 0.6s ease-out 0.2s;
    transition: opacity 0.3s linear 0.2s, -webkit-transform 0.6s ease-out 0.2s;
    transition: opacity 0.3s linear 0.2s, transform 0.6s ease-out 0.2s;
    transition: opacity 0.3s linear 0.2s, transform 0.6s ease-out 0.2s, -webkit-transform 0.6s ease-out 0.2s; }
    article h2 .title.lazy.show.sub,
    article h2 .sub.lazy.show.sub,
    .text-container.lazy.show.sub {
      -webkit-transition-delay: 0.3s;
              transition-delay: 0.3s; }

.lazy {
  opacity: 0; }
  .lazy.show {
    opacity: 1; }

body {
  margin: 0;
  padding: 0;
  text-align: center; }

header {
  margin: 27px 0; }

img {
  vertical-align: top; }

hr {
  display: block;
  margin: 27px 0;
  height: 1px;
  border: none;
  border-top: 1px solid rgba(204, 204, 204, 0.6); }

section {
  padding: 70px 27px 20px; }
  section .sub-title {
    margin: 0;
    font-size: 0.8em;
    font-weight: bold;
    line-height: 1em;
    text-transform: uppercase;
    color: #000; }
  section h1 {
    margin: 15px 0;
    line-height: 1.2em;
    color: #000;
    font-size: 2em; }
  section .btn {
    margin: 50px auto 1em; }
  section .btn + p {
    margin: 1em auto 50px; }
  section a {
    color: #06c;
    text-decoration: none;
    border-bottom: 1px solid #06c; }
    section a:hover {
      border-bottom-width: 2px; }

footer {
  margin: 27px 0;
  padding: 0 27px;
  font-size: 0.8em; }
  footer p {
    margin: 0; }

@media (max-width: 800px) {
  main {
    padding: 10px 10px 0; }
    main h1 {
      font-size: 1.2em; }
    main p {
      font-size: 0.9em; }
    main .btn {
      margin: 30px auto; } }
