/*
    Theme Name: SKATEBOARD EVENT
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-font-smoothing:antialiased;
    font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
    /*font-size:62.5%;*/
}
body {
    font-family: "Jost", "Noto Sans JP",  sans-serif;
  font-optical-sizing: auto;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
    max-width:100%;
    vertical-align:bottom;
}
a {
    color:#444;
    text-decoration:none;
}
a:hover {
    color:#444;
}
a:focus {
    outline:0;
}
a:hover,
a:active {
    outline:0;
}
input:focus {
    outline:0;
    border:1px solid #04A4CC;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
    /*max-width:1280px;*/
    width:95%;
    margin:0 auto;
    position:relative;
}
/* header */
.header {

}
/* logo */
.logo {

}
.logo-img {

}
/* nav */
.nav {

}
/* sidebar */
.sidebar {

}
/* footer */
.footer {

}

/*------------------------------------*\
    PAGES
\*------------------------------------*/



/*------------------------------------*\
    IMAGES
\*------------------------------------*/



/*------------------------------------*\
    TYPOGRAPHY
\*------------------------------------*/


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (-webkit-min-device-pixel-ratio:1.5),
       only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
    background:#04A4CC;
    color:#FFF;
    text-shadow:none;
}
::-webkit-selection {
    background:#04A4CC;
    color:#FFF;
    text-shadow:none;
}
::-moz-selection {
    background:#04A4CC;
    color:#FFF;
    text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
    margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
    display:block;
    margin:5px auto 5px auto;
}
.alignright {
    float:right;
    margin:5px 0 20px 20px;
}
.alignleft {
    float:left;
    margin:5px 20px 20px 0;
}
a img.alignright {
    float:right;
    margin:5px 0 20px 20px;
}
a img.alignnone {
    margin:5px 20px 20px 0;
}
a img.alignleft {
    float:left;
    margin:5px 20px 20px 0;
}
a img.aligncenter {
    display:block;
    margin-left:auto;
    margin-right:auto;
}
.wp-caption {
    background:#FFF;
    border:1px solid #F0F0F0;
    max-width:96%;
    padding:5px 3px 10px;
    text-align:center;
}
.wp-caption.alignnone {
    margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
    margin:5px 20px 20px 0;
}
.wp-caption.alignright {
    margin:5px 0 20px 20px;
}
.wp-caption img {
    border:0 none;
    height:auto;
    margin:0;
    max-width:98.5%;
    padding:0;
    width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
    margin:0;
    padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}
.pb50 {
    padding-bottom: 50px!important;
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
    * {
        background:transparent !important;
        color:#000 !important;
        box-shadow:none !important;
        text-shadow:none !important;
    }
    a,
    a:visited {
        text-decoration:underline;
    }
    a[href]:after {
        content:" (" attr(href) ")";
    }
    abbr[title]:after {
        content:" (" attr(title) ")";
    }
    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content:"";
    }
    pre,blockquote {
        border:1px solid #999;
        page-break-inside:avoid;
    }
    thead {
        display:table-header-group;
    }
    tr,img {
        page-break-inside:avoid;
    }
    img {
        max-width:100% !important;
    }
    @page {
        margin:0.5cm;
    }
    p,
    h2,
    h3 {
        orphans:3;
        widows:3;
    }
    h2,
    h3 {
        page-break-after:avoid;
    }
}

/*------------------------------------*\
    EVENT
\*------------------------------------*/

html,body {
    margin: 0;
    padding: 0;
    overflow-x: clip;
}
img {width: 100%;}
img,a {
transition: 0.7s ;
}
a img:hover {
opacity: 0.8;
}
h1 {
}
h2 {
    font-size: 2em;
    font-family: "Jost", sans-serif;
    font-weight: 500;
    letter-spacing: 2px;
    text-align: center;
    margin: 0;
    padding: 40px 20px;
}
h2 img {
/*max-width: 60px;*/
}
h2 span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 0.5em;
    display: flex;
    align-items: center;
    width: 250px;
    box-sizing: border-box;
    margin: 0 auto;
}
h2 span:before,
h2 span:after {
border-top: 1px solid;
content: "";
flex-grow: 1;
}
h2 span:before {
margin-right: 1rem;
}
h2 span:after {
margin-left: 1rem;
}
h3 {
    /* font-family: "Jost", sans-serif; */
    margin: 10px 0;
    font-size: 1.5em;
}
h4 {
    font-family: "Jost", sans-serif;
    transform: rotate(0.05deg);
    font-weight: 500;
    text-align: center;
        font-size: 1.69em;
}
h5 {
    font-family: "Jost", sans-serif;
    transform: rotate(0.05deg);
}
header {
    position: absolute;
    z-index: 99;
    height: 50px;
    bottom: 0;
    width: 100%;
    padding: 0;
    background: rgb(255, 255, 255, 0.8);
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}
.page-template-events header {
    position: fixed;
    top: 0;
    border-bottom: 1px solid #000;
    background: rgba(255, 255, 255, .9);
    transition: all 0.5s ease;
}
header.sticky {
    position: fixed;
    top: 0;
    border-bottom: 1px solid #000;
    background: rgba(255, 255, 255, .9);
    transition: all 0.5s ease;
}
header h1 {
    margin: -1px 0 0 0;
    float: left;
    padding: 0 24px 0 20px;
    height: 49px;
    border-top: 1px solid #000;
}
header.sticky h1 {
    /* background: #fff;*/
    border-right: 1px solid #000;
}
header h1 img {
    /* width: 130px; */
    width: 78px;
}
header nav {
}
header nav ul {
    /* display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr; */
    list-style: none;
    margin: 0;
    padding: 12px 0 0 0;
    overflow: hidden;
    float: right;
    position: relative;
}
header nav ul li {
    /* clear: both; */
    overflow: hidden;
    float: left;
    padding: 0 20px 0 0;
    transform: rotate(0.05deg);
}
header nav ul li a {
    font-family: "Jost", sans-serif;
        text-decoration: none;
    color: #000;
    display: table;
    font-weight: 500;
    letter-spacing: 2px;
}
header.sticky nav ul li a {

}
header nav ul li a:hover {
    color: #cccccc;
}
header nav ul li img{
        width: 158px;
}
header nav ul li span {
        width: 100%;
    /* color: #004cff!important;*/
            text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.sticky_li {
    display: none;
}
header nav.sticky2 ul li img {
    display: none;
    transition: 0.7s;
}
header nav.sticky2 .sticky_li {
    display: block;
}
.wrapper {
    width: 100%;
    padding: 0;
    /* background: #c4e6a369; */
    /* margin: 68px 0 0 0; */
    margin: 0;
}
.page-template-events .wrapper {
    margin: 50px 0 0 0 !important;
}
section {
    width: 100%;
    padding: 0;
    /*background: #fcdff3;*/
}
section p {
}
#event-top {
        background: #fff;
    overflow: hidden;
    position: relative;
        padding: 0;
        z-index: -1;
        height: 100svh;
        width: 100%;
}
#event-top .w1000 {
    /* white-space: nowrap; */
position: absolute;
width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
#event-top img {
display: block;
}
#event-top p {
    text-align: center;
    color: #fff;
text-shadow: 3px 3px 2px #333;
}
#event-top .entryfree {   
display: inline-block;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: #fff;
    color: #fff;
    position: absolute;
    line-height: 33px;
    bottom: 0;
    right: 20px;
}
#event-top .entryfree span {
    position: absolute;
    display: inline-block;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 110px;
    text-align: center;
}
#event-top div.enki {
    max-width: 650px;
    margin: 0 auto;
}
.event-top-text {
    max-width:650px;
    width: 80%;
    margin: 0 auto;
    color: #fff;
    }
#event-top div.event-top-text p {
    text-align: center;
    margin: 0;
}
#event-top div.event-top-text h3 {
    margin: 25px 0 25px 0;
}
.w1000 {
    margin: 0 auto;
    max-width: 1000px;
    padding: 0 20px;
    z-index: 8;
    position: relative;
}
#SERVICE {
    display: grid;
    grid-template-columns: 60px 1fr;
    margin: 0;
}
#SERVICE h3 {
    text-align: center;
        margin: 0;
    padding: 0;
    font-size: 1.25em;
    line-height: 1.75em;
}
#SERVICE .w1000 {
/*    padding: 50px 0; */
}
#SERVICE .service-box {
    background: linear-gradient(180deg, #f5f5f5 0%, #f5f5f5 95%, #f3e166 95%, #f3e166 100%);
}
#SERVICE .service-box .catch {
  padding: 30px 200px 50px 200px;
  margin: 0;
    background: #156db9;
        background: rgb(242 114 0);
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 80%);
    color: #fff;
    font-size: 1.25em;
    z-index: 0;
}
.test02 #SERVICE .service-box .catch {
  padding: 30px 200px 50px 200px;
  margin: 0;
    background: #156db9;
        background: rgb(0 117 242);
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 80%);
    color: #fff;
    font-size: 1.25em;
    z-index: 0;
}
.sidenav {
    border-right:1px solid #666;
    background: rgb(255, 255, 255, 0.8);
}

.sidenav p {
    font-family: "Jost", sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
    color: #000;
  position: -webkit-sticky;
  position: sticky;
    padding: 0;
    margin: 100px 0px 50px 0px;
    top: 150px;
    z-index: 1;
    align-self: start;
    transform: rotate(-90deg);
    white-space: nowrap;
    /* transform-origin: right; */
}
#EVENT .sidenav p {
    top: 195px;
}
#CONTACT .sidenav p {
    top: 160px;
}
#ABOUT .sidenav p {
    margin: 87px 0px 50px 0px;
    top: 130px;
}
#SERVICE .service-inner .category {
    /*background: #cc0000; */
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
    padding: 0 20px 100px 20px;
}
#SERVICE .event-end {
    height: 70px;
    background: linear-gradient(-182deg, #f5f5f5 0%, #f5f5f5 50%, #f3e166 50%, #f3e166 100%);
        position: relative;
    top: -35px;
}
#SERVICE .service-inner .category div.category-list {
    /*display: grid;*/
    /*grid-template-columns: 1fr 1fr;*/
    display: block;
    margin: 0;
    padding: 20px 0 0 0;
}
#SERVICE .service-inner .category div.category-list div.picpic {
    display: none;
}
#SERVICE .service-inner .category div.category-list div.category-text {
    /*display: flex;*/
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: #fff;
}
#SERVICE .service-inner .category div.category-list div.category-text p {
    padding: 20px;
    margin: 0;
}
/*#SERVICE .service-inner .category .category-list:nth-child(1) {
  padding: 0;
  background: #156db9;
  clip-path: polygon(0 11%, 100% 0%, 100% 100%, 0 90%);
}
#SERVICE .service-inner .category .category-list:nth-child(2) {
  padding: 0;
  background: #156db9;
  clip-path: polygon(0% 0%, 100% 10%, 100% 89%, 0 100%);
}
#SERVICE .service-inner .category .category-list:nth-child(3) {
  padding: 0;
  background: #156db9;
  clip-path: polygon(0 11%, 100% 0%, 100% 100%, 0 90%);
}
#SERVICE .service-inner .category .category-list:nth-child(4) {
  padding: 0;
  background: #156db9;
  clip-path: polygon(0% 0%, 100% 10%, 100% 89%, 0 100%);
}
#SERVICE .service-inner .category .category-list:nth-child(5) {
  padding: 0;
  background: #156db9;
  clip-path: polygon(0 11%, 100% 0%, 100% 100%, 0 90%);
}
#SERVICE .service-inner .category .category-list:nth-child(6) {
  padding: 0;
  background: #156db9;
  clip-path: polygon(0% 0%, 100% 10%, 100% 89%, 0 100%);
}*/
.home #SERVICE .service-inner .category .category-list:nth-child(1) {
  background: #61758f;
  /*clip-path: polygon(0 11%, 100% 0%, 100% 100%, 0 90%);*/
}
.home #SERVICE .service-inner .category .category-list:nth-child(2) {
  background: #7faab7;
  /*clip-path: polygon(0% 0%, 100% 10%, 100% 89%, 0 100%);*/
}
.home #SERVICE .service-inner .category .category-list:nth-child(3) {
  background: #52bf69;
  /*clip-path: polygon(0 11%, 100% 0%, 100% 100%, 0 90%);*/
}
.home #SERVICE .service-inner .category .category-list:nth-child(4) {
  background: #ff8f00;
  /*clip-path: polygon(0% 0%, 100% 10%, 100% 89%, 0 100%);*/
}
.home #SERVICE .service-inner .category .category-list:nth-child(5) {
  background: #4f3c8a;
  /*clip-path: polygon(0 11%, 100% 0%, 100% 100%, 0 90%);*/
}
.home #SERVICE .service-inner .category .category-list:nth-child(6) {
  background: #444;
  /*clip-path: polygon(0% 0%, 100% 10%, 100% 89%, 0 100%);*/
}


#EVENT {
    display: grid;
    grid-template-columns: 60px 1fr;
    margin: 0;
}
#EVENT .w1000 {
    padding: 0 20px 100px 20px;
    width: 100%;
    max-width: inherit;
    margin: 0;
}
#EVENT .event-box {
    background: #f3e166;
    width: 100%;
}
#EVENT h3 {
    text-align: left;
    margin: 10px 0;
    font-size: 1em;
    font-weight: 500;
    padding: 0 10px;
}
.past-events #EVENT #EVENTITEM {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 8px;
}
#EVENT .event-list{
        /*max-width: 650px;
    margin: 0 auto 30px auto;*/
    /*padding: 0 0 40px 0;*/
    border: 1px solid #000;
}
.home #EVENT .event-list{
     /*   max-width: 650px;*/
    margin: 2px 5px;
    /*padding: 0 0 40px 0;*/
    border: 1px solid #000;
    background: #fff;
}
.home .l-masonry {
  &__list {
    display: flex;
    gap: 8px;
  }
  &__column {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  &__item {
    width: 100%;
    img {
      width: 100%;
      max-width: 100%;
      height: auto;
    }
  }
}
.l-masonry__column {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

/* #EVENT .event-list:last-child {
    border-bottom: none;
} */
#EVENT .event-list .event-list-inner {
    /*display: grid;
    grid-template-columns: 25% 1fr;
    grid-gap: 20px;*/
    padding: 0 10px 0;
}
#EVENT .event-list .event-list-inner img {
    max-width: 100%;
    padding: 0 0 10px 0;
}
#EVENT .event-list .event-list-inner p {
    font-size: 0.8em;
    padding: 0 0 10px 0;
    margin: 0;
    word-break: break-all;
}
#EVENT .event-list .event-list-inner p a {
    padding: 0 0 10px 0;
    margin: 0;
    text-decoration: underline;
}
#EVENT .event-list .event-list-inner p a:hover {
    text-decoration: none;
}
#EVENT .event-end {
    height: 50px;
    background: linear-gradient(182deg, #f3e166 0%, #f3e166 50%, #dedede 50%, #dedede 100%);
}
.btn,
a.btn,
button.btn {
    font-size: 1em;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 12px 30px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
a.btn-flat {
    overflow: hidden;
    color: #fff;
    border-radius: 0;
    background: #444;
    margin: 10px 0;
}

a.btn-flat span {
  position: relative;
  z-index: 1;
      font-weight: 500;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: calc(-150% + 50px);

  width: 150%;
  height: 500%;

  content: '';
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  -webkit-transform: rotate(30deg) translateX(0) translateY(0);
  transform: rotate(30deg) translateX(0) translateY(0);

  background: blue;
}
a.btn-flat:hover {
    color: #000;
}
a.btn-flat:after {
  position: absolute;
  top: -400%;
  right: calc(-150% + 50px);

  width: 150%;
  height: 500%;

  content: '';
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  -webkit-transform: rotate(30deg) translateX(0) translateY(0);
  transform: rotate(30deg) translateX(0) translateY(0);
  background: blue;
}

a.btn-flat:hover:before {
  -webkit-transform: rotate(30deg) translateX(0) translateY(-50%);
  transform: rotate(30deg) translateX(0) translateY(-50%);
}

a.btn-flat:hover:after {
  -webkit-transform: rotate(30deg) translateX(0) translateY(50%);
  transform: rotate(30deg) translateX(0) translateY(50%);
}
#CONTACT {
    display: grid;
    grid-template-columns: 60px 1fr;
    margin: 0;
}
#CONTACT .w1000 {
   /* padding: 50px 0; */
}
#CONTACT .contact-box {
    background: #dedede;
}
#CONTACT h2 {
    
}
#CONTACT form p {
        background: rgba(255,255,255,0.6);
        margin: 0;
    padding: 20px;
}
#CONTACT .wpcf7 {
    max-width: 500px;
    margin: 0 auto;
}
#CONTACT .message {
    display: grid;
    grid-template-columns: 25% 70%;
    grid-gap: 5%;
    margin: 0 0 -15px 0;
    background: #fff;
  border-radius: 15px;
  padding: 20px;
}
#CONTACT .message div p {
    text-align: center;
    margin: 0;
    padding: 0;
}
#CONTACT .absolutearrow {
    text-align: center;
}
#CONTACT .absolutearrow img {
max-width: 60px;
}
#CONTACT form p span{
    color: #fff;
}
#CONTACT .waku {
  position: relative;
  display: inline-block;
  margin: 0 0 50px 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #000;
  background: #fff;
  border-radius: 15px;
}
#CONTACT .contact-end {
    height: 50px;
    background: linear-gradient(182deg, #dedede 0%, #dedede 50%, #7f90c7 50%, #7f90c7 100%);
}


#ABOUT {
    display: grid;
    grid-template-columns: 60px 1fr;
    margin: 0;
    min-height: 100vh;
}
#ABOUT .w415 {
    margin: 0 auto;
    max-width: 415px;
    padding: 0 20px;
    z-index: 8;
    position: relative;
}
#ABOUT .about-box {
    background: #7f90c7;
    color: #fff;
    padding-bottom: 100px;
}
#ABOUT .about-end {
    height: 50px;
    background: linear-gradient(182deg, #7f90c7 0%, #7f90c7 50%, blue 50%, blue 100%);
}

footer {
    text-align: center;
    padding: 10px 0;
    background: #000;
}
footer p {
    color: #fff;
    margin: 0;
}


@keyframes slide {
  0% {
    transform:translateX(-25%);
  }
  100% {
    transform:translateX(25%);
  }
}
@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}


/* YouTube表示エリア */
#youtube-area{
  position: absolute;
  position: fixed;
  z-index: 1;
  top: 0;
  right:0;
  left:0;
  bottom:0;
  overflow: hidden;
  opacity: 0;    
}
#youtube-area.appear {
  animation-name:pageanimetuika;
  animation-duration:.6s;
  animation-fill-mode:forwards;
}
@keyframes pageanimetuika{
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#youtube {
  position: absolute;
  top: 49.5%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 178vh;
  height: 56vw;
  min-height: 150vh;
  min-width: 150vw;
}
#youtube-mask::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
width: 100vw;
    height: 100vh;
    background-color: rgb(97 173 255 / 40%);
    /*background-color: rgb(0 0 0 / 40%);*/
    background-image: radial-gradient(#000 30%, transparent 31%), radial-gradient(#000 30%, transparent 31%);
    background-size: 3px 3px;
    background-position: 0 0, 3px 4px;
}

/*YouTubeクリック防止マスクエリア*/
#youtube-mask{
    position: absolute;
    z-index: 2;
    top:0;
    width:100vw;
    height: 100vh;
}
h1{
  color:#000;
}


/* OPENING */
.loading {
  position: absolute;
  inset: 0;
  z-index: 999;
  height: 100svh;
  background-color: rgb(0 0 0 / 80%);
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 120%);
}

.loading__inner {
  width: 100%;
  height: inherit;
  display: grid;
  place-content: center;
  row-gap: 10px;
  /*clip-path: polygon(0px 20%, 100% 10%, 100% calc(90%), 0px 80%);
    background: rgba(0, 0, 255, 0.5); */
}

.loading__text {
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 2;
    padding: 0 25px;
  text-align: center;
  color: #fff;
}

.loading__logo {
  margin: 0 auto;
  width: min(200px, 100%);
}
.home .event-top-text {
/*clip-path: polygon(0px 20%, 100% 10%, 100% calc(90%), 0px 80%);
clip-path: polygon(4% 27%, 100% 16%, 96% 85%, 2% 75%);
    background: rgba(0, 0, 255, 0.5);
    background: rgb(57 171 61 / 50%);*/
    width: 100%;
    max-width: 95%;
    height: 100%;
    z-index: 1;
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -55%);
    padding: 0 20px;
}
.home .event-top-text h2 {
    font-size: 1.15em;
    font-family: "Jost", sans-serif;
    font-weight: 500;
    letter-spacing: 1px;
    width: 75%;
    position: absolute;
    top: 35%;
    padding: 0 20px;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: left;
    animation-name: event-top-text01;
    animation-duration: 7.4s;
    animation-fill-mode: forwards;
}
.home .event-top-text h2 img {
    margin: 0 auto 20px auto;
    max-width: 360px;
    width: 50%;
}
@keyframes event-top-text01 {
    0% {
    opacity: 0;
    top: 60%;
  }
  50% {
    opacity: 0;
    top: 60%;
  }
  65% {
    opacity: 0;
    top: 60%;
  }
  100% {
    opacity: 1;
    top: 45%;
  }
}
.home .event-top-text h2 p {
    position: absolute;
    padding: 20px 40px;
    text-shadow: 3px 3px 2px #333;
}
.home .event-top-text h2 p::before,
.home .event-top-text h2 p::after {
    content: '';
    position: absolute;
    width: 30px;
    height: 30px;
    text-shadow: 3px 3px 2px #333;
}

.home .event-top-text h2 p::before {
    border-left: solid 2px #fff;
    border-top: solid 2px #fff;
    top: 0;
    left: 0;
}

.home .event-top-text h2 p::after {
    border-right: solid 2px #fff;
    border-bottom: solid 2px #fff;
    bottom: 0;
    right: 0;
}

.animation-box02 {
    position: absolute;
    animation-name: animation-sample02;
    animation-duration: 25s;
    animation-iteration-count: infinite;
    background-color: rgb(146 75 210 / 30%);
        width: 100vw;
    height: 100vh;
    z-index: 1;
}


@keyframes animation-sample01 {
    0%{
    clip-path: polygon(0% 30%, 100% 60%, 100% 100%, 0% 100%);
    }
    46%{
    clip-path: polygon(0% 30%, 100% 60%, 100% 100%, 0% 100%);
    }
    50%{
        clip-path: polygon(0% 0%, 130% 0%, 0% 70%, 0% 100%);
    }
    96%{
        clip-path: polygon(0% 0%, 130% 0%, 0% 70%, 0% 100%);
    }
    100%{
        clip-path: polygon(0% 30%, 100% 60%, 100% 100%, 0% 100%);
    }
}
.animation-box01 {
    position: absolute;
    animation-name: animation-sample01;
    animation-duration: 20s;
    animation-iteration-count: infinite;
    background-color: rgb(0 255 173 / 15%);
        width: 100vw;
    height: 100vh;
    z-index: 1;
}
@keyframes animation-sample02 {
    0%{
    clip-path: polygon(0% 70%, 100% 35%, 100% 100%, 0% 100%);
    }
    46%{
    clip-path: polygon(0% 70%, 100% 35%, 100% 100%, 0% 100%);
    }
    50%{
         clip-path: polygon(0% 0%, 100% 0%, 100% 55%, 0% 40%);
    }
    96%{
        clip-path: polygon(0% 0%, 100% 0%, 100% 55%, 0% 40%);
    }
    100%{
        clip-path: polygon(0% 70%, 100% 35%, 100% 100%, 0% 100%);
    }
}
.animation-box02 {
    position: absolute;
    animation-name: animation-sample02;
    animation-duration: 20s;
    animation-iteration-count: infinite;
    background-color: rgb(146 75 210 / 15%);
        width: 100vw;
    height: 100vh;
    z-index: 1;
}
.scroll_down{
  animation: arrowmove 1s ease-in-out infinite;
}
.scroll-open {
  animation-name: scroll_down01;
    animation-duration: 6s;
  z-index: 1002;
  position:absolute;
  bottom:110px;
  right:50%;
}

@keyframes scroll_down01 {
    0% {
    opacity: 0;
    bottom:0;
  }
  70% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    bottom:110px;
  }
}
.scroll_down a{
  position: absolute;
  left: -24px;
  bottom: 30px;
  color: #fff;
  font-size: 14px;
  letter-spacing: .2em;
  text-transform: uppercase;
  width: 24px;
  height: 24px;
  text-decoration: none;
}

.text {
  display: block;
  margin-top: 70px;
  margin-left: -14px;
  font-size: 12px;
  color: #fff;
  text-transform: uppercase;
  white-space: nowrap;
  letter-spacing: 2px;
}

.arrow {
  position: absolute;
  width: 28px;
  height: 5px;
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
  animation: move 3s ease-out infinite;
}

.arrow:first-child {
  animation: move 3s ease-out 1s infinite;
}

.arrow:nth-child(2) {
  animation: move 3s ease-out 2s infinite;
}

.arrow:before,
.arrow:after {
  content: ' ';
  position: absolute;
  top: 0;
  height: 100%;
  width: 51%;
  background: #fff;
}

.arrow:before {
  left: 0;
  transform: skew(0deg, 30deg);
}

.arrow:after {
  right: 0;
  width: 50%;
  transform: skew(0deg, -30deg);
}

@keyframes move {
  25% { opacity: 1; }
  33% { opacity: 1; transform: translateY(30px); }
  67% { opacity: 1; transform: translateY(40px); }
  100% { opacity: 0; transform: translateY(55px) scale3d(0.5, 0.5, 0.5); }
}

#sort {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-gap: 1px;
    justify-content: center;
    margin: 0 0 20px 0;
    div {
        color: #fff;
        display: flex;
        text-align: center;
        font-size: 0.8em;
        padding: 10px 0;
        background: #000;
        cursor: pointer;
        align-items: center;
        justify-content: center;
        white-space: nowrap;
    }
    #Keyall {
    }
}

.kirikae {
    ul {
        display: none;
        text-align: center;
    }
}
.kirikaeBox {
    /*width: 900px;*/
    margin: 0 auto;
    .event-list {
        display: inline-block;
    }
}
.kirikae {
    .show {
        display: block;
    }
}
.fa-solid, .fas {
    font-weight: 900;
    font-size: 1.75em;
}
#CONTACT button,
#CONTACT input,
#CONTACT select,
#CONTACT textarea {
    font-family: inherit;
    font-size: 100%;
    margin: 0;
    width: 100%;
}

.pc {
    display: block;
}
.sp,
.sps {
    display: none;
}

@media only screen and (max-width:1200px) {

}
/* /max-width:1200px */

@media only screen and (max-width:980px) {
.past-events #EVENT #EVENTITEM {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
#event-top div.event-top-text p {
}
#event-top div.event-top-text h3 {
    margin: 18px 0 18px 0;
}
#SERVICE .service-inner .category {
    grid-template-columns: 1fr 1fr;
}

#sort {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows:  1fr 1fr;
    div {
    }
    #Keyall {
        grid-row: 1/3;
    }
}
.loading__text {
    font-size: 1.35em;
    padding: 0;
}

}
/* /max-width:980px */


@media only screen and (max-width:768px) {
.pc {
    display: none;
}
.sp {
    display: block;
}
.wrapper {
    margin: 59px 0 0 0;
}
.hamburger {
  display : block;
  position: fixed;
  z-index : 999;
  right : 5px;
  top   : 10px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #000;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#000;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#000;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}
nav.globalMenuSp {
  position: fixed;
  top  : 0;
  left : 0;
    margin: 0;
  z-index: 20;
    color: #000;
  text-align: center;
  width: 100%;
  height: 100vh;
  transform: translateX(100%);
  transition: all 0.6s;
  background: rgb(255, 255, 255, 0.97);
  display: flex;
  justify-content: center;
  align-items: center;
}
nav.globalMenuSp div {
        margin-bottom: 50px;
}
nav.globalMenuSp img {
    width: 50%;
}
nav.globalMenuSp ul {
margin: 50px auto 100px auto;
/* margin: 30px auto 50px auto; */
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  /* background :#ddd; */
}

nav.globalMenuSp ul li a {
  display: block;
  font-size: 1.5em;
  padding: 15px 0 0 0;
  text-decoration :none;
}
nav.globalMenuSp .infobanner {
    display: grid;
    grid-template-columns: none;
    grid-auto-columns: 1fr 1fr;
    grid-gap: 10px;
    float: inherit;
    margin: 0 auto;
    max-width: 48%;
}
nav.globalMenuSp.active {
  transform: translateX(0%);
}
header {
    height: 60px;
    position: fixed;
    top: 0;
}
header h1 {
    margin: 0;
    float: left;
    padding:13px 10px 0 4px;
    height: 100%;
    border-top: none;
}
header.sticky h1 {
    border-right: none;
}
header h1 a {
display: flex;
}
header h1 img {
    /* width: 100px; */
    width: 52px;
}
header div {
    padding: 0;
    width: inherit;
    float: inherit;
}
.home .event-top-text {
    max-width: 100%;
}
.home .event-top-text h2 {
    width: 100%;
}
#event-top div.event-top-text p {
    margin: 0 20px 0 0;
}
#SERVICE {
    grid-template-columns: 30px 1fr;
}
#EVENT {
    grid-template-columns: 30px 1fr;
}
#CONTACT {
    grid-template-columns: 30px 1fr;
}
#ABOUT {
    grid-template-columns: 30px 1fr;
}
}
/* /max-width:768px */

@media only screen and (max-width:680px) {
#SERVICE h3 {
    font-size: 1.1em;
    line-height: 2em;
}
#SERVICE .service-inner .category {
    grid-gap: 10px;
/*    padding: 0 10px 60px 10px; */
}
#SERVICE .service-inner .category div.category-list div.category-text p {
    padding: 10px;
    font-size: 0.9em;
}
#EVENT .w1000 {
    padding: 0 10px 60px 10px;
}
.past-events #EVENT #EVENTITEM {
        grid-template-columns: 1fr 1fr;
}
}
/* /max-width:680px */

@media only screen and (max-width:580px) {
    #SERVICE .service-inner .category {
        display: block;
}
.home #SERVICE .service-inner .category .category-list {
margin: 0 0 10px 0;
}
#SERVICE .service-inner .category div.category-list div.category-text p {
    padding: 15px;
}
.past-events #EVENT #EVENTITEM {
        display: block;
}
#sort {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows:  1fr 1fr 1fr;
    div {
        font-size: 0.75em;
    }
    #Keyall {
        grid-row: 1/2;
        grid-column: 1/4;
    }
}
#event-top div.event-top-text p {
        font-size: 0.9em;
}
.sps {
    display: block;
}
}

@media only screen and (max-width:480px) {
#event-top .w1000 {
        width: 100%;
            top: 46%;
}
#event-top .w1000 img {

}
blockquote {
    padding: 1px 20px 20px 20px;
    margin: 0;
}
blockquote p {
    margin: 60px 0;
}
blockquote p:before {
    top: -75px;
    left: 0;
    font-size: 7em;
}
blockquote p:after {
    bottom: -60px;
    right: 0;
    text-align: center;
    content: "”";
    font-size: 6em;
}

}
/* /max-width:480px */
