@charset "UTF-8";
/*------------------------------------------------------------
  Reset
------------------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

html {
  font-size: 62.5%;
}

body {
  -webkit-text-size-adjust: 100%;
}

body, table,
input, textarea, select, option,
h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
}

table,
input, textarea, select, option {
  line-height: 1.1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

:focus {
  outline: 0;
}

ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

img {
  vertical-align: top;
}

a,
a img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover,
a:hover img {
  opacity: 0.80;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}

img {
  max-width: 100%;
}

.sp-only {
  display: none;
}

@media only screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
}

/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Layout .l-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/* Header
------------------------------------------------------------*/
.c-header {
  position: absolute;
  top: 30px;
  left: 35px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  z-index: 1000;
}

/* Main menu
------------------------------------------------------------*/
.c-gnav li {
  display: inline-block;
}

.c-gnav li + li {
  margin-left: 20px;
}

.c-gnav a {
  font-size: 1.6rem;
  text-transform: capitalize;
}

/*------------------------------------------------------------
footer
------------------------------------------------------------*/
.c-footer {
  position: relative;
  height: 400px;
}

.c-footer:before {
  content: "";
  background-color: #000000;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.5;
}

.c-footer > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-footer__inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  text-align: center;
  padding-top: 70px;
}

.c-footer__inner > img {
  width: 305px;
}

@media only screen and (max-width: 767px) {
  .c-footer__inner > img {
    width: 280px;
  }
}

/*------------------------------------------------------------
sidebar
------------------------------------------------------------*/
/* Breadcrumb
------------------------------------------------------------*/
/* layout
------------------------------------------------------------*/
body {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1.4rem;
  min-width: 320px;
  line-height: 1.5;
}

.l-container {
  width: 1000px;
  margin: 0 auto;
}

.c-mainvisual {
  height: 100vh;
  overflow: hidden;
  position: relative;
}

.c-mainvisual:before {
  content: "";
  background-color: #000000;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.5;
}

.c-mainvisual__inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.c-mainvisual__cnt {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #ffffff;
}

@media only screen and (max-width: 1199px) {
  .c-mainvisual__cnt {
    overflow: hidden;
    padding: 5vw;
  }
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__cnt {
    padding: 8vw;
  }
}

.c-mainvisual video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}

.c-mainvisual__text {
  text-align: center;
  position: relative;
  width: 25.0131371519vw;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__text {
    width: 200px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-mainvisual__text {
    width: 150px;
  }
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__text {
    width: 220px;
  }
}

.c-mainvisual__text a {
  display: block;
  opacity: 0;
  -webkit-transform: translate(0%, 50%);
  transform: translate(0%, 50%);
  width: 100%;
}

.c-mainvisual__text a:hover {
  opacity: 1;
}

.c-mainvisual__text a.is-active {
  opacity: 1;
  -webkit-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
  -webkit-transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.c-mainvisual__countdown {
  display: -webkit-box;
  display: flex;
  padding-top: 5.78034682081vw;
  opacity: 0;
  -webkit-transform: translate(0%, 50%);
  transform: translate(0%, 50%);
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__countdown {
    padding-top: 55px;
  }
}

.c-mainvisual__countdown.is-active {
  opacity: 1;
  -webkit-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
  -webkit-transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.c-mainvisual__countdown p {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  text-align: center;
  padding: 0 2.6274303731vw;
  position: relative;
  background-image: -webkit-gradient(linear, left top, right top, from(#f70c0c), color-stop(20%, #fff822), color-stop(40%, #27ee49), color-stop(60%, #23caf7), color-stop(80%, #9323f7), to(#f72385));
  background-image: linear-gradient(90deg, #f70c0c, #fff822 20%, #27ee49 40%, #23caf7 60%, #9323f7 80%, #f72385);
  background-clip: text;
  text-fill-color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-filter: hue-rotate(360deg);
  filter: hue-rotate(360deg);
  -webkit-animation: ani 15s infinite;
  animation: ani 15s infinite;
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__countdown p {
    padding: 0 15px;
  }
}

.c-mainvisual__countdown p:before {
  content: "";
  position: absolute;
  height: 3.94114555964vw;
  width: 2px;
  background-color: #ffffff;
  top: 0.78822911192vw;
  right: 0;
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__countdown p:before {
    width: 1px;
    top: 7px;
    height: 38px;
  }
}

.c-mainvisual__countdown p:last-child:before {
  display: none;
}

.c-mainvisual__countdown p span {
  line-height: 1;
}

.c-mainvisual__countdown p span:first-child {
  font-size: 5.25486074619vw;
  font-weight: bold;
  font-family: "Arial", sans-serif;
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__countdown p span:first-child {
    font-size: 4.5rem;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-mainvisual__countdown p span:first-child {
    font-size: 3rem;
  }
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__countdown p span:first-child {
    font-size: 14vw;
  }
}

.c-mainvisual__countdown p span:last-child {
  font-family: 'Impact', sans-serif;
  font-size: 1.05097214924vw;
}

@media only screen and (max-width: 1199px) {
  .c-mainvisual__countdown p span:last-child {
    font-size: 1.55097214924vw;
  }
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__countdown p span:last-child {
    font-size: 1.7rem;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-mainvisual__countdown p span:last-child {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__countdown p span:last-child {
    font-size: 5vw;
  }
}

.c-mainvisual__date {
  font-family: "Arial", sans-serif;
  font-size: 2.10194429848vw;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding-top: 2.36468733579vw;
  background-image: -webkit-gradient(linear, left top, right top, from(#f70c0c), color-stop(20%, #fff822), color-stop(40%, #27ee49), color-stop(60%, #23caf7), color-stop(80%, #9323f7), to(#f72385));
  background-image: linear-gradient(90deg, #f70c0c, #fff822 20%, #27ee49 40%, #23caf7 60%, #9323f7 80%, #f72385);
  background-clip: text;
  text-fill-color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-filter: hue-rotate(360deg);
  filter: hue-rotate(360deg);
  -webkit-animation: ani 15s infinite;
  animation: ani 15s infinite;
  opacity: 0;
  -webkit-transform: translate(0%, 50%);
  transform: translate(0%, 50%);
}

@media only screen and (max-width: 767px) {
  .c-mainvisual__date {
    font-size: 2.5rem;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-mainvisual__date {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__date {
    padding-top: 35px;
    font-size: 3rem;
  }
}

.c-mainvisual__date.is-active {
  opacity: 1;
  -webkit-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
  -webkit-transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.c-mainvisual--speaker {
  height: 400px;
}

.c-mainvisual--speaker > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-mainvisual--speaker .c-mainvisual__inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .c-mainvisual--speaker .c-mainvisual__inner img {
    width: 280px;
  }
}

.c-mainvisual__freeadmission {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  padding-top: 2.10194429848vw;
  -webkit-animation: ani 15s infinite;
  animation: ani 15s infinite;
  opacity: 0;
  -webkit-transform: translate(0%, 50%);
  transform: translate(0%, 50%);
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__freeadmission {
    padding-top: 35px;
  }
}

.c-mainvisual__freeadmission.is-active {
  opacity: 1;
  -webkit-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
  -webkit-transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.c-mainvisual__freeadmission p:first-child {
  width: 26.274303731vw;
  height: 4.20388859695vw;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  font-family: 'Noto Serif JP', serif;
  font-size: 1.57645822386vw;
  line-height: 1.2;
  color: #ffffff;
  border: 1px solid #ffffff;
}

@media only screen and (max-width: 1199px) {
  .c-mainvisual__freeadmission p:first-child {
    font-size: 1.4rem;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-mainvisual__freeadmission p:first-child {
    font-size: 1.3rem;
  }
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__freeadmission p:first-child {
    width: 200px;
    height: 40px;
    font-size: 1.5rem;
    line-height: 1.2;
  }
}

.c-mainvisual__freeadmission p:last-child {
  font-size: 0.73568050446vw;
  line-height: 1.2;
  font-family: 'Noto Sans JP', sans-serif;
  padding-top: 1.05097214924vw;
}

@media only screen and (max-width: 1450px) {
  .c-mainvisual__freeadmission p:last-child {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 1199px) {
  .c-mainvisual__freeadmission p:last-child {
    font-size: 1.2rem;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-mainvisual__freeadmission p:last-child {
    font-size: 1.1rem;
  }
}

@media only screen and (max-width: 479px) {
  .c-mainvisual__freeadmission p:last-child {
    font-size: 1rem;
    line-height: 1.2;
    padding-top: 15px;
  }
}

@-webkit-keyframes ani {
  0%,
  100% {
    -webkit-filter: hue-rotate(0deg);
    filter: hue-rotate(0deg);
  }
  50% {
    -webkit-filter: hue-rotate(360deg);
    filter: hue-rotate(360deg);
  }
}

@keyframes ani {
  0%,
  100% {
    -webkit-filter: hue-rotate(0deg);
    filter: hue-rotate(0deg);
  }
  50% {
    -webkit-filter: hue-rotate(360deg);
    filter: hue-rotate(360deg);
  }
}

/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Component .c-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*------------------------------------------------------------
btn
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-btn1 {
  display: inline-block;
  padding: 10px 50px;
  font-size: 1.6rem;
  border: 2px solid #fff;
  border-radius: 20px;
  line-height: 1;
}

.c-btn__top {
  position: fixed;
  z-index: 1000;
  bottom: 30px;
  right: 20px;
  opacity: 0;
  display: block;
  -webkit-transform: translateY(100px);
  transform: translateY(100px);
  -webkit-transition: all 1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 1s cubic-bezier(0.645, 0.045, 0.355, 1);
  -webkit-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
  transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}

.c-btn__top--none {
  opacity: 1;
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
}

/*------------------------------------------------------------
title
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.c-title1 {
  text-align: center;
  color: #ffffff;
  position: relative;
}

.c-title1:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  top: 90px;
  background-image: -webkit-gradient(linear, left top, right top, from(#129fda), color-stop(#2e2f82), color-stop(#e30a7e), color-stop(#e30a7e), color-stop(#fcec08), to(#00974a));
  background-image: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

@media only screen and (max-width: 767px) {
  .c-title1:before {
    top: 37px;
    height: 1px;
  }
}

@media only screen and (max-width: 767px) {
  .c-title1 img {
    width: calc(100% - 50px);
    max-width: 320px;
  }
}

.c-title1 p {
  font-size: 2.4rem;
  line-height: 1.2;
  font-family: 'Noto Sans JP', sans-serif;
  padding-top: 78px;
}

@media only screen and (max-width: 767px) {
  .c-title1 p {
    font-size: 1.6rem;
    padding-top: 25px;
  }
}

@media only screen and (max-width: 767px) {
  .c-title1--diff img {
    max-width: 100px;
  }
}

/*------------------------------------------------------------
icon
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
form
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
text
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
navi
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
img
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
list
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
table
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
line
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
video
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
video
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
/*------------------------------------------------------------
other
------------------------------------------------------------*/
/*
------------------------------------------------------------*/
.loading {
  background-color: #fff;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 9999;
  top: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
}

.logo_animate {
  position: absolute;
  /*overflow: hidden;*/
}

@media only screen and (max-width: 767px) and (orientation: portrait) {
  .logo_animate img {
    width: 38% !important;
  }
}

.logo_animate1 {
  bottom: 0.78822911192vw;
  left: -6.30583289543vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate1 {
    bottom: 0px;
    left: -68px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate1 {
    bottom: 0px;
    left: -40px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate1 {
    bottom: 3px;
    left: -69px;
  }
}

.logo_animate1 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 4.04624277457vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate1 img {
    width: 24px;
  }
}

.logo_animate2 {
  top: -2.8901734104vw;
  left: 11.035207567vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate2 {
    top: -22px;
    left: 66px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate2 {
    top: -18px;
    left: 66px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate2 {
    top: -21px;
    left: 78px;
  }
}

.logo_animate2 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.75s;
  animation-delay: 1.75s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 4.04624277457vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate2 img {
    width: 24px;
  }
}

.logo_animate3 {
  right: -4.46663163426vw;
  bottom: 3.41565948502vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate3 {
    bottom: 29px;
    right: -57px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate3 {
    bottom: 20px;
    right: -28px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate3 {
    bottom: 34px;
  }
}

.logo_animate3 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.75s;
  animation-delay: 1.75s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate2;
  animation-name: animate2;
  width: 4.04624277457vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate3 img {
    width: 24px;
  }
}

.logo_animate4 {
  bottom: -0.78822911192vw;
  left: 11.6657908565vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate4 {
    left: 68px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate4 {
    bottom: -10px;
    left: 71px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate4 {
    left: 80px;
    bottom: 0px;
  }
}

.logo_animate4 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate2;
  animation-name: animate2;
  width: 4.04624277457vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate4 img {
    width: 24px;
  }
}

.logo_animate5 {
  bottom: -1.05097214924vw;
  right: 1.57645822386vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate5 {
    right: -9px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate5 {
    bottom: -3px;
  }
}

.logo_animate5 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.25s;
  animation-delay: 1.25s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate2;
  animation-name: animate2;
  width: 4.93956910142vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate5 img {
    width: 30px;
  }
}

.logo_animate6 {
  bottom: -4.72937467157vw;
  left: 2.6274303731vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate6 {
    bottom: -36px;
    left: -11px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate6 {
    bottom: -30px;
    left: 14px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate6 {
    left: -8px;
  }
}

.logo_animate6 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate2;
  animation-name: animate2;
  width: 4.93956910142vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate6 img {
    width: 30px;
  }
}

.logo_animate7 {
  left: 3.15291644771vw;
  top: 1.15606936416vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate7 {
    top: 2px;
    left: 11px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate7 {
    top: 10px;
    left: 19px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate7 {
    top: 6px;
    left: 14px;
  }
}

.logo_animate7 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 2.31213872832vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate7 img {
    width: 14px;
  }
}

.logo_animate8 {
  top: 2.25959012086vw;
  left: -5.62270099842vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate8 {
    top: 16px;
    left: -78px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate8 {
    top: 8px;
    left: -35px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate8 {
    top: 20px;
  }
}

.logo_animate8 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.25s;
  animation-delay: 1.25s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 6.46347871781vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate8 img {
    width: 40px;
  }
}

.logo_animate9 {
  right: -1.5vw;
  top: -3.5vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate9 {
    top: -22px;
    right: -25px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate9 {
    top: -22px;
    right: -13px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate9 {
    top: -24px;
  }
}

.logo_animate9 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 3.3105622701vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate9 img {
    width: 20px;
  }
}

.logo_animate10 {
  bottom: -0.78822911192vw;
  left: -2.10194429848vw;
  height: 1.4vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate10 {
    bottom: -10px;
    left: -21px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate10 {
    bottom: -9px;
    left: -14px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate10 {
    bottom: -3px;
  }
}

.logo_animate10 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 1.15606936416vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate10 img {
    width: 7px;
  }
}

.logo_animate11 {
  top: 1.41881240147vw;
  left: 8.4077771939vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate11 {
    top: 9px;
    left: 56px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate11 {
    top: 12px;
    left: 50px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate11 {
    top: 13px;
    left: 64px;
  }
}

.logo_animate11 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.75s;
  animation-delay: 1.75s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate1;
  animation-name: animate1;
  width: 1.15606936416vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate11 img {
    width: 7px;
  }
}

.logo_animate12 {
  right: -5.67524960589vw;
  bottom: 1.89174986863vw;
  height: 1.6vw;
}

@media only screen and (max-width: 767px) {
  .logo_animate12 {
    bottom: 18px;
    right: -50px;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate12 {
    bottom: 9px;
    right: -36px;
  }
}

@media only screen and (max-width: 479px) {
  .logo_animate12 {
    bottom: 27px;
  }
}

.logo_animate12 img {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.75s;
  animation-delay: 1.75s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: animate2;
  animation-name: animate2;
  width: 1.15606936416vw;
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .logo_animate12 img {
    width: 7px;
  }
}

@-webkit-keyframes animate1 {
  from {
    top: 0px;
    -webkit-transform: translate(-550px, -550px);
    transform: translate(-550px, -550px);
  }
  to {
    top: 0px;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@keyframes animate1 {
  from {
    top: 0px;
    -webkit-transform: translate(-550px, -550px);
    transform: translate(-550px, -550px);
  }
  to {
    top: 0px;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@media only screen and (max-width: 1199px) {
  @-webkit-keyframes animate1 {
    from {
      top: 0px;
      -webkit-transform: translate(-350px, -350px);
      transform: translate(-350px, -350px);
    }
    to {
      top: 0px;
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
    }
  }
  @keyframes animate1 {
    from {
      top: 0px;
      -webkit-transform: translate(-350px, -350px);
      transform: translate(-350px, -350px);
    }
    to {
      top: 0px;
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
    }
  }
}

@-webkit-keyframes animate2 {
  from {
    top: 0px;
    -webkit-transform: translate(-600px, -600px);
    transform: translate(-600px, -600px);
  }
  to {
    top: 0px;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@keyframes animate2 {
  from {
    top: 0px;
    -webkit-transform: translate(-600px, -600px);
    transform: translate(-600px, -600px);
  }
  to {
    top: 0px;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@media only screen and (max-width: 1199px) {
  @-webkit-keyframes animate2 {
    from {
      top: 0px;
      -webkit-transform: translate(-350px, -350px);
      transform: translate(-350px, -350px);
    }
    to {
      top: 0px;
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
    }
  }
  @keyframes animate2 {
    from {
      top: 0px;
      -webkit-transform: translate(-350px, -350px);
      transform: translate(-350px, -350px);
    }
    to {
      top: 0px;
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
    }
  }
}

.slick-dots {
  bottom: -63px;
}

@media only screen and (max-width: 767px) {
  .slick-dots {
    bottom: -17px;
  }
}

@media only screen and (max-width: 767px) {
  .slick-dots li {
    margin: 0 2px;
  }
}

.slick-dots li button:before {
  content: "■";
  color: #4d4d4d;
  font-size: 40px;
  opacity: 1;
}

@media only screen and (max-width: 767px) {
  .slick-dots li button:before {
    font-size: 30px;
  }
}

.slick-dots li.slick-active button:before {
  color: #39b54a;
}

.slick-dotted.slick-slider {
  margin-bottom: 70px;
}

@media only screen and (max-width: 767px) {
  .slick-dotted.slick-slider {
    margin-bottom: 30px;
  }
}

.c-copyright {
  position: absolute;
  font-size: 1.8rem;
  line-height: 1.2;
  font-family: "Arial";
  text-align: center;
  color: #ffffff;
  bottom: 30px;
  z-index: 100;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  width: 100%;
}

.c-scroll {
  position: absolute;
  left: 50%;
  bottom: 25px;
  height: 50px;
  z-index: 100;
  font-size: 1.4rem;
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 1px;
  color: #ffffff;
  opacity: 0;
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-scroll {
    font-size: 1.2rem;
    bottom: 5px;
    height: 40px;
  }
}

.c-scroll.is-active {
  opacity: 1;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  -webkit-transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.c-scroll:after {
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 30px;
  background: #eee;
  -webkit-animation: pathmove 1.4s ease-in-out infinite;
  animation: pathmove 1.4s ease-in-out infinite;
  opacity: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  .c-scroll:after {
    height: 20px;
  }
}

@-webkit-keyframes pathmove {
  0% {
    height: 0;
    top: 20px;
    opacity: 0;
  }
  30% {
    height: 30px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: 70px;
    opacity: 0;
  }
}

@keyframes pathmove {
  0% {
    height: 0;
    top: 20px;
    opacity: 0;
  }
  30% {
    height: 30px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: 70px;
    opacity: 0;
  }
}

@media all and (min-width: 480px) and (max-width: 999px) and (orientation: landscape) {
  @-webkit-keyframes pathmove {
    0% {
      height: 0;
      top: 20px;
      opacity: 0;
    }
    30% {
      height: 20px;
      opacity: 1;
    }
    100% {
      height: 0;
      top: 50px;
      opacity: 0;
    }
  }
  @keyframes pathmove {
    0% {
      height: 0;
      top: 20px;
      opacity: 0;
    }
    30% {
      height: 20px;
      opacity: 1;
    }
    100% {
      height: 0;
      top: 50px;
      opacity: 0;
    }
  }
}

/* Light box */
body.lb-disable-scrolling {
  overflow: hidden;
}

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: none;
}

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10000;
  text-align: center;
  line-height: 0;
  font-weight: normal;
  outline: none;
}

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  max-height: none;
  border-radius: 3px;
  /* Image border */
  border: 4px solid white;
}

.lightbox a img {
  border: none;
}

.lb-outerContainer {
  position: relative;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;
  /* Background color behind image.
     This is visible during transitions. */
  background-color: white;
}

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url("../img/loading.gif") no-repeat;
}

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}

.lb-container > .nav {
  left: 0;
}

.lb-nav a {
  outline: none;
  background-image: url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==");
}

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block;
}

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url("../img/prev.png") left 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url("../img/next.png") right 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-data {
  padding: 0 4px;
  color: #ccc;
}

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em;
}

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: bold;
  line-height: 1em;
}

.lb-data .lb-caption a {
  color: #4ae;
}

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999999;
}

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url("../img/close.png") top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lightboxOverlay {
  position: fixed !important;
  width: 100% !important;
  height: 100% !important;
}

.lightbox {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Project .p-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*------------------------------------------------------------
Css of home page
------------------------------------------------------------*/
.p-top {
  line-height: 2;
}

.p-top1 {
  background-color: #000000;
  padding-top: 115px;
  padding-bottom: 115px;
}

@media only screen and (max-width: 767px) {
  .p-top1 {
    padding-top: 30px;
    padding-bottom: 60px;
  }
}

.p-top1__cnt {
  color: #ffffff;
  padding-top: 53px;
  overflow: hidden;
}

@media only screen and (max-width: 767px) {
  .p-top1__cnt {
    padding-top: 20px;
  }
}

.p-top1__slide {
  width: 100%;
  height: 100%;
}

.p-top1__item {
  position: relative;
  width: 25%;
}

.p-top1__item__bg {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  position: relative;
  padding-top: 100%;
  background-color: #333333;
}

.p-top1__item__bg:before {
  content: "";
  position: absolute;
  border: 20px solid rgba(0, 0, 0, 0.5);
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  z-index: 100;
}

@media only screen and (max-width: 767px) {
  .p-top1__item__bg:before {
    border: 10px solid rgba(0, 0, 0, 0.5);
  }
}

.p-top1__item__bg:after {
  content: "";
  position: absolute;
  border: 5px solid red;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  top: 20px;
  left: 20px;
  width: calc(100% - 40px);
  height: calc(100% - 40px);
  box-sizing: border-box;
  border: 5px solid;
  border-image-slice: 1;
  border-image-source: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

@media only screen and (max-width: 767px) {
  .p-top1__item__bg:after {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    top: 10px;
    left: 10px;
    border: 2px solid;
    border-image-slice: 1;
    border-image-source: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
  }
}

.p-top1__item__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.p-top1__item__bg p {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  font-family: 'Arial';
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.75;
}

@media only screen and (max-width: 767px) {
  .p-top1__item__bg p {
    font-size: 1.6rem;
  }
}

.p-top1__item--diff .p-top1__item__bg:before {
  content: "";
  position: absolute;
  border: 20px solid rgba(0, 0, 0, 0.5);
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  z-index: 100;
}

.p-top1__item__text {
  padding: 18px 25px;
  border-right: 1px solid #1a1a1a;
}

@media only screen and (max-width: 767px) {
  .p-top1__item__text {
    padding: 15px;
  }
}

@media only screen and (max-width: 480px) {
  .p-top1__item__text {
    padding: 2.666666666vw;
  }
}

.p-top1__item__text p:first-child {
  font-size: 1.15667718191vw;
  line-height: 1;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
}

@media only screen and (max-width: 1450px) {
  .p-top1__item__text p:first-child {
    font-size: 2.2rem;
  }
}

@media only screen and (max-width: 1080px) {
  .p-top1__item__text p:first-child {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 900px) {
  .p-top1__item__text p:first-child {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 479px) {
  .p-top1__item__text p:first-child {
    font-size: 4vw;
  }
}

.p-top1__item__text p:last-child {
  padding-top: 15px;
  font-size: 0.94637223974vw;
  line-height: 1.2;
  overflow: hidden;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  word-break: break-all;
  height: 3.10199789695vw;
}

@media only screen and (max-width: 1450px) {
  .p-top1__item__text p:last-child {
    font-size: 1.8rem;
    -webkit-line-clamp: 3;
    height: 80px;
  }
}

@media only screen and (max-width: 1080px) {
  .p-top1__item__text p:last-child {
    font-size: 1.4rem;
    height: 70px;
  }
}

@media only screen and (max-width: 900px) {
  .p-top1__item__text p:last-child {
    font-size: 1.2rem;
    height: 60px;
  }
}

@media only screen and (max-width: 767px) {
  .p-top1__item__text p:last-child {
    font-size: 1.1rem;
    height: 40px;
  }
}

@media only screen and (max-width: 479px) {
  .p-top1__item__text p:last-child {
    font-size: 2.933333333vw;
    padding-top: 2.666666666vw;
    overflow: hidden;
    -webkit-line-clamp: 2;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    word-break: break-all;
    height: 40px;
  }
}

.p-top1__singleslide {
  display: -webkit-box !important;
  display: flex !important;
  flex-wrap: wrap;
  position: relative;
  margin-bottom: 15px;
}

.p-top1__singleslide:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
  background-image: -webkit-gradient(linear, left top, right top, from(#129fda), color-stop(#2e2f82), color-stop(#e30a7e), color-stop(#e30a7e), color-stop(#fcec08), to(#00974a));
  background-image: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

.p-top1__layout {
  position: relative;
}

.p-top1__layout:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: -1px;
  background-image: -webkit-gradient(linear, left top, right top, from(#129fda), color-stop(#2e2f82), color-stop(#e30a7e), color-stop(#e30a7e), color-stop(#fcec08), to(#00974a));
  background-image: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

@media only screen and (max-width: 767px) {
  .p-top1__layout:before {
    display: none;
  }
}

.p-top1__layout .p-top1__item {
  width: 50%;
}

.p-top1__btn {
  color: #ffffff;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.8rem;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  padding-top: 60px;
}

@media only screen and (max-width: 767px) {
  .p-top1__btn {
    padding-top: 22px;
    font-size: 1.5rem;
  }
}

.p-top1__btn a {
  width: 400px;
  height: 60px;
  background-image: -webkit-gradient(linear, left top, right top, from(#1378be), color-stop(#822887), to(#f19d20));
  background-image: linear-gradient(to right, #1378be, #822887, #f19d20);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  border-radius: 10px;
}

@media only screen and (max-width: 767px) {
  .p-top1__btn a {
    width: calc(100% - 34px);
    height: 45px;
  }
}

.p-top1__btn--diff {
  padding-top: 30px;
}

@media only screen and (max-width: 767px) {
  .p-top1__btn--diff {
    padding-top: 15px;
  }
}

.p-top1__btn--diff a {
  background-color: #39b54a;
  background-image: none;
}

.p-top2 {
  background-color: #000000;
  padding-bottom: 77px;
}

.p-top2__cnt {
  text-align: center;
  padding-top: 50px;
  overflow: hidden;
}

.p-top2__comment{
  font-size: 18px;
  font-weight: 700;
  color: #ffffff;
  transform: skewX(-7deg);
  margin-bottom: 20px;
}

.p-top2__map {
  width: 1080px;
  margin: 0 auto;
  position: relative;
}

@media only screen and (max-width: 1080px) {
  .p-top2__map {
    width: calc(100% - 40px);
  }
}

.p-top2__map--1, .p-top2__map--2, .p-top2__map--3, .p-top2__map--4, .p-top2__map--5 {
  position: absolute;
}

.p-top2__map--1 {
  width: 290px;
  height: 45px;
  top: 90px;
  left: 52px;
}

@media only screen and (max-width: 1080px) {
  .p-top2__map--1 {
    width: 24.851852vw;
    height: 3.166667vw;
    top: 8.33333333333vw;
    left: 4.81481481481vw;
  }
}

@media only screen and (max-width: 600px) {
  .p-top2__map--1 {
    top: 7.333333vw;
    left: 3.814815vw;
  }
}

.p-top2__map--2 {
  width: 290px;
  height: 45px;
  top: 115px;
  left: 410px;
}

@media only screen and (max-width: 1080px) {
  .p-top2__map--2 {
    width: 24.851852vw;
    height: 3.5vw;
    top: 10vw;
    left: 34.962963vw;
  }
}

@media only screen and (max-width: 600px) {
  .p-top2__map--2 {
    left: 32.962963vw;
  }
}

.p-top2__map--3 {
  width: 290px;
  height: 45px;
  top: 245px;
  right: 125px;
}

@media only screen and (max-width: 1080px) {
  .p-top2__map--3 {
    width: 24.851852vw;
    height: 3.166667vw;
    top: 21.6851851852vw;
    right: 10.5740740741vw;
  }
}

@media only screen and (max-width: 600px) {
  .p-top2__map--3 {
    top: 20.685185vw;
    right: 8.574074vw;
  }
}

.p-top2__map--4 {
  width: 390px;
  height: 40px;
  top: 290px;
  right: 25px;
}

@media only screen and (max-width: 1080px) {
  .p-top2__map--4 {
    width: 33.111111vw;
    height: 3.7037037037vw;
    top: 24.851852vw;
    right: 2.31481481481vw;
  }
}

@media only screen and (max-width: 600px) {
  .p-top2__map--4 {
    top: 23.8vw;
    right: 1.314815vw;
  }
}

.p-top2__map--5 {
  width: 280px;
  height: 45px;
  bottom: 140px;
  right: 50px;
}

@media only screen and (max-width: 1080px) {
  .p-top2__map--5 {
    width: 23.925926vw;
    height: 4.16666666667vw;
    bottom: 11.962963vw;
    right: 4vw;
  }
}

@media only screen and (max-width: 600px) {
  .p-top2__map--5 {
    bottom: 11.3vw;
  }
}

.p-top3 {
  background-color: #000000;
  padding-bottom: 77px;
  padding-top: 100px;
}

@media only screen and (max-width: 1080px) {
  .p-top3__inner {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
}

.p-top3__map {
  text-align: center;
  padding-top: 50px;
}

.p-top4 {
  background-color: #000000;
  padding-bottom: 77px;
  padding-top: 100px;
}

@media only screen and (max-width: 1080px) {
  .p-top4__inner {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
}

.p-top4__map {
  text-align: center;
  max-width: 1100px;
  margin: 50px auto 0;
}

.p-top4__category{
  border-radius: 10px;
  padding: 20px;
  background-color: #ffffff;
  margin-bottom: 40px;
}

@media only screen and (max-width: 1080px) {
  .p-top4__category{
    padding: 20px 10px;
  }
}

.p-top4__category-t{
  position: relative;
  align-items: center;
  margin: 0 auto 40px;
  padding: 0 20px;
  color: #e30a7d;
  transform: skewX(-7deg);
  font-size: 18px;
  font-weight: 700;
}

.p-top4__category-t:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  left: 0;
  top: 50px;
  background-image: -webkit-gradient(linear, left top, right top, from(#129fda), color-stop(#2e2f82), color-stop(#e30a7e), color-stop(#e30a7e), color-stop(#fcec08), to(#00974a));
  background-image: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

.p-top4__logo-list{
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  flex-wrap: wrap;
  margin: 10px 0;
}

.p-top5 {
  background-color: #000000;
  padding-top: 115px;
}

@media only screen and (max-width: 767px) {
  .p-top5 {
    padding-top: 30px;
  }
}

.p-top5__cnt {
  width: 1000px;
  margin: 0 auto;
  padding-top: 55px;
}

@media only screen and (max-width: 1080px) {
  .p-top5__cnt {
    width: calc(100% - 40px);
    padding-top: 28px;
    margin: 0 20px;
  }
}

.p-top5__youtube {
  padding-top: 56.25%;
  position: relative;
}

.p-top5__youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
}


/*------------------------------------------------------------
Css of home page
------------------------------------------------------------*/
.p-about {
  line-height: 2;
}

/*------------------------------------------------------------
Css of speaker page
------------------------------------------------------------*/
.p-speaker1 {
  background-color: #000000;
  padding-top: 115px;
  padding-bottom: 230px;
}

@media only screen and (max-width: 767px) {
  .p-speaker1 {
    padding-top: 55px;
    padding-bottom: 115px;
  }
}

.p-speaker1__cnt {
  color: #ffffff;
  padding-top: 53px;
  overflow: hidden;
}

.p-speaker1__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.p-speaker1__list:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0px;
  background-image: -webkit-gradient(linear, left top, right top, from(#129fda), color-stop(#2e2f82), color-stop(#e30a7e), color-stop(#e30a7e), color-stop(#fcec08), to(#00974a));
  background-image: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

.p-speaker1__list + .p-speaker1__list {
  padding-top: 45px;
}

.p-speaker1__item {
  position: relative;
  width: 25%;
}

@media only screen and (max-width: 1024px) {
  .p-speaker1__item {
    width: 50%;
  }
}

.p-speaker1__item__bg {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  position: relative;
  padding-top: 100%;
  background-color: #333333;
}

.p-speaker1__item__bg:before {
  content: "";
  position: absolute;
  border: 20px solid rgba(0, 0, 0, 0.5);
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  z-index: 100;
}

@media only screen and (max-width: 767px) {
  .p-speaker1__item__bg:before {
    border: 10px solid rgba(0, 0, 0, 0.5);
  }
}

.p-speaker1__item__bg:after {
  content: "";
  position: absolute;
  border: 5px solid red;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  top: 20px;
  left: 20px;
  width: calc(100% - 40px);
  height: calc(100% - 40px);
  box-sizing: border-box;
  border: 5px solid;
  border-image-slice: 1;
  border-image-source: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
}

@media only screen and (max-width: 767px) {
  .p-speaker1__item__bg:after {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    top: 10px;
    left: 10px;
    border: 2px solid;
    border-image-slice: 1;
    border-image-source: linear-gradient(to right, #129fda, #2e2f82, #e30a7e, #e30a7e, #fcec08, #00974a);
  }
}

.p-speaker1__item__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.p-speaker1__item__bg p {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  font-family: 'Arial';
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.75;
}

@media only screen and (max-width: 767px) {
  .p-speaker1__item__bg p {
    font-size: 1.6rem;
  }
}

.p-speaker1__item--diff .p-speaker1__item__bg:before {
  content: "";
  position: absolute;
  border: 20px solid rgba(0, 0, 0, 0.5);
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  z-index: 100;
}

.p-speaker1__item__text {
  padding: 18px 25px;
  border-right: 1px solid #1a1a1a;
}

@media only screen and (max-width: 767px) {
  .p-speaker1__item__text {
    padding: 15px;
  }
}

@media only screen and (max-width: 480px) {
  .p-speaker1__item__text {
    padding: 2.666666666vw;
  }
}

.p-speaker1__item__text p:first-child {
  font-size: 1.15667718191vw;
  line-height: 1;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
}

@media only screen and (max-width: 1450px) {
  .p-speaker1__item__text p:first-child {
    font-size: 2.2rem;
  }
}

@media only screen and (max-width: 1080px) {
  .p-speaker1__item__text p:first-child {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 900px) {
  .p-speaker1__item__text p:first-child {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 479px) {
  .p-speaker1__item__text p:first-child {
    font-size: 4vw;
  }
}

.p-speaker1__item__text p:last-child {
  padding-top: 15px;
  font-size: 0.94637223974vw;
  line-height: 1.2;
  overflow: hidden;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  word-break: break-all;
  height: 3.10199789695vw;
}

@media only screen and (max-width: 1450px) {
  .p-speaker1__item__text p:last-child {
    font-size: 1.8rem;
    -webkit-line-clamp: 3;
    height: 80px;
  }
}

@media only screen and (max-width: 1080px) {
  .p-speaker1__item__text p:last-child {
    font-size: 1.4rem;
    height: 70px;
  }
}

@media only screen and (max-width: 900px) {
  .p-speaker1__item__text p:last-child {
    font-size: 1.2rem;
    height: 60px;
  }
}

@media only screen and (max-width: 767px) {
  .p-speaker1__item__text p:last-child {
    font-size: 1.1rem;
    height: 40px;
  }
}

@media only screen and (max-width: 479px) {
  .p-speaker1__item__text p:last-child {
    font-size: 2.933333333vw;
    padding-top: 2.666666666vw;
    overflow: hidden;
    -webkit-line-clamp: 2;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    word-break: break-all;
    height: 40px;
  }
}

/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Utility .u-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/

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