.section_tit_box {
    display: flex;
    align-items: center;
    gap:160px;
}
.section_tit_box h2 {
    align-items: baseline;
    gap:30px;
    mix-blend-mode: overlay;
    color:white;
}
.section_tit_box h2 .en {
    font-size:10.42vw;
}
.section_tit_box h2 .ja {
font-size: 1.875em;
font-weight: 500;
line-height:1.06; /* 106.667% */
}
.section_tit_box h2.grad_mask {
    background-image: url(../img/bg_grad.jpg);
    background-size: 150% auto;
    background-clip: text;
    color:rgb(0 0 0 / 0.15);
    mix-blend-mode: multiply;
}
.section_tit_box h2.grad_mask + .btn_more,.section_tit_box h2.grad_mask + .btn_more:after {
    border-color:#EC79A8;
}
.section_tit_box h2.grad_mask + .btn_more:before {
    background-color:#EC79A8;
}
.section p {
    font-family:var(--fontmaru);
}
@media (max-width:1024px)  {
    .section_tit_box {
        flex-direction: column;
        align-items: flex-start;
        gap:10px;
    }
    .section_tit_box .btn_more {
        margin-right:0;
        margin-left:auto;
    }
}
@media (max-width:769px)  {
    .section_tit_box {
        flex-direction: column;
        align-items: flex-start;
        gap:0;
    }
    .section_tit_box h2 {
        flex-direction: column;
        gap: 0;
    }
    .section_tit_box h2 .en {
        font-size: 15.26vw;
    }

}
@media (max-width:599px)  {

}

@keyframes loop {
    0% {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}

@keyframes loop2 {
    0% {
        transform: translateX(0);
    }
    to {
        transform: translateX(-200%);
    }
}
/*-------------------------
  KV
-------------------------*/
#mv {
    position:relative;
}
.obj_kv {
    width:100%;
    display: grid;
    place-content: center;
}
.obj_kv svg {
    width:1920px;
    height:auto;
    aspect-ratio:16/9;
    animation: glitch_effect 5s infinite;
}
.obj_kv svg .cls-1 {
    fill: #2ca6e0;
  }

  .obj_kv svg .cls-1, .obj_kv svg .cls-2, .obj_kv svg .cls-3, .obj_kv svg .cls-4, .obj_kv svg .cls-5, .obj_kv svg .cls-6, .obj_kv svg .cls-7 {
    stroke-width: 0px;
  }

  .obj_kv svg .cls-2 {
    fill: #fccf00;
  }

  .obj_kv svg .cls-3 {
    fill: #f29600;
  }

  .obj_kv svg .cls-4 {
    fill: #eeeeef;
  }

  .obj_kv svg .cls-5 {
    fill: #dbdcdc;
  }

  .obj_kv svg .cls-6 {
    fill: #e74382;
  }

  .obj_kv svg .cls-7 {
    fill: #87c022;
  }
.obj_kv svg g {
    animation: morphing 12s infinite ease-in-out;
}
/*
.obj_kv svg #kv01 {
    animation-delay: -15s;
}
*/
.obj_kv svg #kv02 {
    animation-delay: -12s;
}
.obj_kv svg #kv03 {
    animation-delay: -6s;
}
/*.obj_kv svg #kv02,*/ .obj_kv svg #kv03 {
    opacity:0;
}
@keyframes morphing {
    0%, 25%, 100% {
      filter: blur(0px);
      opacity: 1;
    }
    33%, 90% {
      filter: blur(50px);
      opacity: 0;
    }
}
@keyframes glitch_effect {
    0% {
      opacity: 1;
      transform: none;
    }
    33% {
      transform: none;
      /* filter: invert(0%); */
    }
    33.3% {
      opacity: 1;
      transform: skewY(20deg) translate(8px, 6px);
      /* filter: invert(100%); */
    }
    33.6% {
      opacity: 0;
      transform: skewY(-10deg) translate(-10px, -10px);
    }
    33.9% {
      opacity: 1;
      transform: none;
      /* filter: invert(0%); */
    }
    41% {
      opacity: 1;
    }
    41.4% {
      opacity: 0;
    }
    41.8% {
      opacity: 1;
    }
    42.2% {
      opacity: 0;
    }
    42.6% {
      opacity: 1;
    }
    66% {
      transform: none;
      /* filter: invert(0%); */
    }
    66.3% {
      opacity: 1;
      transform: skewX(5deg) translate(-4px, 10px);
      /* filter: invert(100%); */
    }
    66.6% {
      opacity: 0;
      transform: skewX(-7deg) translate(4px, -6px);
    }
    66.9% {
      opacity: 1;
      transform: none;
    }
    77% {
      transform: none;
    }
    77.3% {
      transform: skewY(10deg) translate(10px, -6px);
    }
    77.6% {
      transform: skewY(-22deg) translate(-5px, 8px);
      /* filter: invert(100%); */
    }
    77.9% {
      transform: none;
      /* filter: invert(0%); */
    }
    100% {
      opacity: 1;
      transform: none;
      /* filter: invert(0%); */
    }
  }
.h2_kv_wrapper {
    position:absolute;
    width:100%;
    height:100svh;
    left:0;
    top:0;
    overflow: hidden;
}
.h2_kv_wrapper .kv_inner {
    display: flex;
    align-items: flex-end;
    width:100%;
    height:100%;
    padding:0 4% 40px;
}
.h2_kv {
    width:100vw;
    display: flex;
    justify-content: center;
    align-items: center;
    position:relative
}
.h2_kv > span {
    display: block;
}
.h2_kv span.en {
    font-size:7.8125vw;
    color:white;
    opacity:0.85;
/*    mix-blend-mode: overlay;*/
    line-height: 1;
    text-transform: uppercase;
    font-weight:700;
}
.textAnime {
    height:1em;
    overflow: hidden;
    display: block;
}
.textAnime span{
    display: inline-block;
    transform: translateY(110%);
}
.show.textAnime span {
    animation: textAnime .5s var(--easeout) 1s forwards;
}
.kvtxt01 > span:nth-of-type(9), .kvtxt01 > span:nth-of-type(13){
    width:0.25em;
}
.kvtxt02 > span:nth-of-type(3), .kvtxt02 > span:nth-of-type(7){
    width:0.25em;
}

@keyframes textAnime {
    100%{
    transform: translateY(0px);
    }
}
.h2_kv span.ja {
    position:absolute;
    right:0;
    bottom:0.25em;
    font-size:2.08vw;
    color:white;
    opacity:0.9;
    mix-blend-mode: overlay;
    transform: translateY(50px);
    opacity:0;
    transition:all .5s var(--easeout);
}
.h2_kv span.ja.show {
    transform: translateY(0);
    opacity:1;
} 
/* .h2_kv span:nth-child(1) {
    animation: loop 50s -25s linear infinite;
}
.h2_kv span:nth-child(2) {
    animation: loop2 50s linear infinite;
} */

.h2_kv span svg {
    width:1731px;
    height:116px;
}
.h2_kv span .cls-1 {
    fill: #2f2e2f;
    stroke-width: 0px;
  }

@media (max-width:1024px)  {
    #mv {
        height: 100svh;
    }
    .h2_kv_wrapper .kv_inner {
        padding-bottom:80px;
    }
    .obj_kv svg {
        width: 960px;
    }
    .h2_kv {
        flex-direction: column;
    }
    .h2_kv span.en {
        font-size: 15vw;
    }
    .kvtxt01 > span:nth-of-type(9), .kvtxt01 > span:nth-of-type(13),.kvtxt02 > span:nth-of-type(3),.kvtxt02 > span:nth-of-type(7){
        width:auto;
    }
    .kvtxt02 > span:nth-of-type(4), .kvtxt04 > span:nth-of-type(3), .kvtxt04 > span:nth-of-type(7){
        width:0.25em;
    }
    .h2_kv span.ja {
        position: relative; 
        right: auto;
        bottom:auto;
        font-size: 5.5vw;
    }
}
@media (max-width:768px)  {

}
@media (max-width:599px)  {

}

/*-------------------------
  about
-------------------------*/
#top_about {
    width:100%;
    height:auto;
    position:relative;
    padding-top:175px;
    z-index: 3;
    overflow: visible;
}

#top_about .bg.bg_about {
    height:100svh;
}

#top_about .container {
    position:relative;
}

.about_contents {
   display: grid;
   grid-template-columns: 4fr 6fr;
   gap:20px;
   margin-bottom:175px;
}
.about_tit {
    padding-left:40px;
}
.about_tit h2.title {
    width:73%;
}
.about_tit h2.title img {
    width:100%;
    height:auto;
}
.about_txt {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    gap:var(--size80);
}
.about_text {
    line-height: 2.0;
    font-size:1.25em;
}
.scroll_txt {
    overflow: hidden;
    width:100%;
}
.scroll_txt span {display: block;}
.scroll_txt span:nth-child(1) {
    animation: loop 50s -25s linear infinite;
}
.scroll_txt span:nth-child(2) {
    animation: loop2 50s linear infinite;
}
.scroll_txt img {
    width:auto;
    max-width: none;
    height:227px;
    aspect-ratio:2769/227;
}
.about_index_wrap {
    gap:1px;
}
.about_index_wrap a {
    display: block;
    position:relative;
    text-decoration: none;
}
.about_index_wrap a:before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color: #000;
    opacity:0.8;
    transform-origin:right;
    transition:.5s var(--easeout);
} 
.about_index_wrap a:hover:before {
    opacity:0.25;
}
.about_index_wrap a:after{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:url(../img/about_index_deco.svg) no-repeat;
    background-size:100% auto;
}
.about_index_wrap a .txt {
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    z-index:2;
    padding:100px 60px;
    color:white;
}
.about_index_wrap a .txt h4 {
    font-size:2.25em;
    font-weight:600;
    letter-spacing: 0.1em;
}
.about_index_wrap a .txt .viewmore {
    position:absolute;
    right:30px;
    bottom:30px;
}
.about_index_wrap a .txt .viewmore:before  {
    content:"";
    position:absolute;
    left:0;
    width:100%;
    height:100%;
    background: var(--grd, linear-gradient(246deg, #21B8FF 15.86%, #FE39A3 79.98%));
    transition:.3s var(--easeout);
    transform:scaleX(0);
    transform-origin: left;
    display: inline-block;
    mix-blend-mode: overlay;
}
.about_index_wrap a:hover .txt .viewmore:before {
    transform:scaleX(1);
}
.bg_about > * {
    opacity:0.5;
}
.bg_about .deco01{top:28%;left:7.24%;}
.bg_about .deco02{top:25.98%;right:5.41%;}
.bg_about .deco03{top:30.3%;right:31.77%;}
.bg_about .deco04{top:9.38%;right:5.88%;}

.bg_about_dot .dot01{left:21.354%;top:-50px;}
.bg_about_dot .dot02{left:calc(21.35% + 100px);top:50px;}
.bg_about_dot .dot03{left:55.2%;top:0;}
.bg_about_dot .dot04{left:78.6%;top:100px;}
.bg_about_dot .dot05{left:calc(0.05% + 100px);top:340px;}
.bg_about_dot .dot06{left:0.05%;top:390px;}
.bg_about_dot .dot07{left:68.23%;top:690px;}
.bg_about_dot .dot08{left:3.125%;top:1030px;}

@media (max-width:1024px) {
    #top_about {
        padding-top: var(--size80);
    }
    .bg_about .deco01{width:20.35%;top:auto;left:7.6%;bottom:34%;}
    .bg_about .deco02{width:20%;top:33.795%;right:7.6%;}
    .bg_about .deco03{top:auto;right:auto;width:29.7%;left:8.9%;bottom:40px;}
    .bg_about .deco04{width:5%;}
    .bg_about_dot .dot01{top:-25px;}
    .bg_about_dot .dot02{left:calc(21.35% + 50px);top:25px;}
    .bg_about_dot .dot03{top:620px;}
    .bg_about_dot .dot04{right:0;top:150px;left:auto;}
    .bg_about_dot .dot05{left:calc(0.05% + 50px);top:170px;}
    .bg_about_dot .dot06{top:195px;}
    .bg_about_dot .dot07{top:auto;bottom:120px}
    .bg_about_dot .dot08{top:515px;}
     .scroll_txt img {
        height: 120px;
    }
    .about_index_wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:768px)  {
     #top_about {
        padding-bottom:60px;
    }
    .about_contents {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-bottom: var(--size60);
    }
    .about_tit {
        padding-left:0;
        margin-inline: calc(50% - 50cqi);
    }
    .about_tit h2.title {
        width:100%;
        gap:14px;
    }
    .about_tit h2.title .ja {
        width: calc((100% - var(--outergap)* 2 - var(--innergap)* 2));
        margin-left:auto;
        margin-right:auto;
    }
    .about_txt {
        max-width:86%;
        margin-left:auto;
        margin-right:auto;
       
    }
    .about_txt h1 {
        width:84%;
    }
    .about_txt .about_text {
         font-size:1em;
         text-align: justify;
    }
    .scroll_txt img {
        height: 80px;
    }
    .about_swiper.breaking-out.-bgl {
        padding-inline:0;
        padding-bottom:60px;
    }
    .about_index_wrap {
        display:flex;
    }
    .about_index_wrap .swiper-slide {
        width:max-content;
        position:relative;
    }
    .about_index_wrap a {
        width:300px;
    }
    .about_swiper .swiper-control {
        margin:auto;
        width:100%;
        justify-content: center;
    }
    .about_swiper .swiper-control .swiper-button-prev,  .about_swiper .swiper-control .swiper-button-next{
        margin-top:20px;
    }

}

/*-------------------------
  top_service
-------------------------*/

#top_service {
    padding-top:280px;
    padding-bottom:180px;
    top:-180px;
    margin-bottom:-180px;
}
#top_service:before {
    content:"";
    display: block;
    width:100%;
    height:100%;
    background: linear-gradient(180deg, #2CA6E0 0%, rgba(44, 166, 224, 0.00) 50.5%);
    position:absolute;
    top:0;
    left:0;
    mix-blend-mode: overlay;
}
#top_service .txt_box {
    margin-bottom:var(--size80);
}
#top_service .txt_box p {
    font-size:1.5em;
    color:white;
    text-shadow: 0px 0px 4px rgba(15,28,56,0.3);
}
.service_index_wrap {
    --item-width: calc((100% - 18px)/4);
    padding-inline:var(--outergap);
    gap:6px;
}
.service_index_wrap .service_box{
    width: var(--item-width); 
    transition:width .3s var(--easeout);
}
.service_index_wrap .service_box * {
    transition:all .3s var(--easeout);
}
.service_index_wrap .service_box:hover{
    width: calc(var(--item-width) * 2);
}
.service_index_wrap .service_box.ss {
    width: calc((var(--item-width) * 2 - 12px) / 3);
}
.service_index_wrap .service_box a {
    display:flex;
    border-radius:20px;
    background-color: rgb(255 255 255 / 0.9);
    overflow: hidden;
    position:relative;
    height:min(68svh,698px);
}
.service_index_wrap .service_box a .bg_img, .service_index_wrap .service_box a .ov_txtbox {
    opacity:0;
    position:absolute;
    width:100%;
    height:100%;
    inset: 0;
}
.service_index_wrap .service_box a .bg_img img {
    width:100%;
    height:100%;
    object-fit: cover;
    object-position: center;
}
.service_index_wrap .service_box:hover a .bg_img, .service_index_wrap .service_box:hover .ov_txtbox {
    opacity:1;
}
.service_index_wrap .service_box:hover .nov_txtbox {
    opacity:0;
}
.service_index_wrap .service_box:hover a:before {
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    background-color: transparent;
    transition: .3s var(--easeout);
}
.service_index_wrap .service01:hover a:before {
    background-color: #6BA505;
    mix-blend-mode: hard-light;
}
.service_index_wrap .service02:hover a:before {
    background-color: #F77790;
    mix-blend-mode: hard-light;
}
.service_index_wrap .service02 a .bg_img {
    mix-blend-mode: overlay;
}
.service_index_wrap .service03:hover a:before {
    background-color: #60CCFF;
    mix-blend-mode: hard-light;
}
.service_index_wrap .service03 a .bg_img {
    mix-blend-mode: overlay;
}
.service_index_wrap .service04:hover a:before {
    background-color: #B15FEA;
    mix-blend-mode: hard-light;
    opacity:0.5;
}
.service_index_wrap .service04 a .bg_img {
    mix-blend-mode: overlay;
}
.service_index_wrap .service_box a .ov_txtbox,.service_index_wrap .service_box a .nov_txtbox{
    padding:40px 30px 50px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width:100%;
}
.service_index_wrap .service_box a .ov_txtbox .box_tit {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
}
.service_index_wrap .service_box a .ov_txtbox .box_tit p {
    margin-top:1em;
    color:var(--black)
}
.service_index_wrap .service_box a .box_tit span{
    display: block;
    line-height: 1.2;
}
.service01 a .box_tit span {
    color:#87C022;
}
.service02 a .box_tit span {
    color:#E74382
}
.service03 a .box_tit span {
    color:#2CA6E0
}
.service04 a .box_tit span {
    color:#B15FEA
}
.service_index_wrap .service_box a .box_tit .num{
    font-size:3.75em;
}
.service_index_wrap .service_box.ss a .box_tit .num {
    text-align: center;
}
.service_index_wrap .service_box a .box_tit span.en {
    font-size:3em;
}
.service_index_wrap .service_box.ss a .box_tit span.en {
    writing-mode: vertical-lr;
    margin:auto;
}
.service_index_wrap .service_box a figure {
    width:150px;
    margin:auto;
}
.service_index_wrap .service_box a .ov_txtbox .box_tit figure {
    margin:0;
}
.service_index_wrap .service_box.ss .nov_txtbox figure{
    opacity:0;
    width:0;
}
.service_index_wrap .service_box a .box_footer {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    color:var(--black);
}
.service_index_wrap .service_box a .box_footer h5 {
    font-size:1.25em;
}
.service_index_wrap .service_box.ss .box_footer h5 {
    opacity:0;
}
.bg_service > * {
    opacity:0.5;
}
.bg_service .deco05{top:14.879%;left:52.3%;}
.bg_service .deco06{top:19.2%;right:3.125%;}
.bg_service .deco07{top:45.95%;left:14.48%;}
.bg_service .deco08{top:48%;left:5.15%;}
.bg_service .deco09{bottom:16.8%;left:3.07%;}
.bg_service .deco10{bottom:17.5%;right:2.08%; transform: rotate(-90deg);}

.bg_service_dot .dot09{left:3.125%;top:0;opacity:0.9;}
.bg_service_dot .dot10{left:20.57%;bottom:50px;opacity:0.9;}
.bg_service_dot .dot11{left:calc(20.57% - 50px);bottom:0;opacity:0.9;}
.bg_service_dot .dot12{right:21.3%;bottom:100px;}
.bg_service_dot .dot13{right:calc(21.3% + 100px);bottom:50px;}
.bg_service_dot .dot14{right:calc(21.3% + 100px);bottom:-50px;}
.bg_service_dot .dot15{right:21.3%;bottom:-50px;}
@media (max-width:1024px) {
    .bg_service .deco05{width:52%;top:0;left:48%;}
    .bg_service .deco06{transform: rotate(-90deg);width:12.7%;top:275px;left:30px;}
    .bg_service .deco07{width:35%;left:30px;top:45.95%;}
    .bg_service .deco08{width:8.9%;top:auto;left:115px;bottom:25%;}
    .bg_service .deco09{width:20%;bottom:35%;left:auto;right:25px;}
    .bg_service .deco10{bottom:17.5%;right:2.08%; transform: rotate(-90deg);}
    .bg_service .dot {
        opacity:0.6;
    }
    .bg_service_dot .dot09{width:50px;height:50px;}
    .bg_service_dot .dot10{left:auto;top:100px;bottom:auto;right:20px;}
    .bg_service_dot .dot11{left:50.8%;top:250px;bottom:auto;}
    .bg_service_dot .dot12{left:0;right:auto;top:30%;bottom:auto;}
    .bg_service_dot .dot13{left:75px;top:55%;}
    .bg_service_dot .dot14{left:21.3%;bottom:0;}
    .bg_service_dot .dot15{left:calc(21.3% + 50px);bottom:50px;width:25px;height:25px;}
    #top_service {
        padding-top:80px;
        padding-bottom:120px;
        margin-bottom:0;
        top:auto;
    }
    #top_service:before {
        mix-blend-mode: hard-light;
        opacity: 0.2;
    }
    #top_service .txt_box {
        margin-bottom:var(--size60);
    }
    #top_service .txt_box p {
    font-size:1.0em;
    color:white;
        
}
    .service_index_wrap {
        --item-width: calc(50% - 6px);
        flex-flow: wrap;
        margin-top:var(--size50);
    }
    .service_index_wrap .service_box a {
        height: auto;
        aspect-ratio: 1 / 1;
    }
    .service_index_wrap .service_box a .ov_txtbox, .service_index_wrap .service_box a .nov_txtbox {
        padding:var(--size25) var(--size25) var(--size30);
    }   
    .service_index_wrap .service_box .box_tit h4{
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        width:100%;
    } 
    .service_index_wrap .service_box a .box_tit .num {
        font-size: 3.42em;
    }
    .service_index_wrap .service_box a .box_tit span.en {
        font-size: 2.2em;
    }
    .service_index_wrap .service_box a .box_footer {
        align-items: center;
    }
    .service_index_wrap .service_box:hover {
        width: inherit;
    }
    .service_index_wrap .service_box a .ov_txtbox .box_tit figure, .service_index_wrap .service_box a .ov_txtbox .box_tit p {
        display: none;
    }
}
@media (max-width:768px)  {
    .service_index_wrap {
        --item-width: 100%;
        flex-direction: column;
    }
    
}

/*-------------------------
  member
-------------------------*/
#top_member {
    position:relative;
    background-color: white;
    padding-top:160px;
    padding-bottom:160px;
}
#top_member:before {
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    background-image: linear-gradient(rgba(238, 238, 239, 0.6) 1px, transparent 1px), linear-gradient(to right, rgba(238, 238, 239, 0.6) 1px, transparent 1px);
    background-size: 100px 100px;
    background-color: transparent;
    background-position: center -18px;
} 
.swiper-area {
    position:relative;
    border-radius: 80px 0 0 80px;
    background: url(../img/bg_grad.jpg) no-repeat;
    background-size: cover;
    padding:0 0 80px 80px;
}
.swiper-area .swiper {
    overflow: visible;
}
.swiper-area .swiper-slide {
    width:max-content;
    position:relative;
}

.swiper-area .slide {
    width:420px;
}
.swiper-area .slide .slide-media {
    width:100%;
    height:auto;
    aspect-ratio:42/47;
}
.swiper-area .slide .mask {
    position:absolute;
    overflow: hidden;
    width:390px;
    left:15px;
    height: auto;
    border-radius: 210px;
    aspect-ratio: 39 / 47;
    transition:.5s var(--easeout);
}
.swiper-area .swiper-slide:hover .slide .mask {
    aspect-ratio: 39 / 90;
}
.swiper-area .slide .mask:before {
    content:"";
    width:100%;
    height:auto;
    aspect-ratio:1/1;
    border-radius: 50%;
    background-color: white;
    opacity:0.7;
    position:absolute;
    top:17%;
    transition:all .3s var(--ease);
    transform:scale(1);
}
.swiper-area .swiper-slide:hover .slide .mask:before {
    opacity:0;
    transform:scale(0);
    border-radius: 0;
    top:10%;
}
.swiper-area .slide .mask img {
    width:420px;
    position:absolute;
    left:-10px;
    top:0;
    max-width: none;
}
.swiper-area .swiper-slide:hover .bg_dot .dot {
    animation:flash 0.3s linear infinite;
}
.swiper-area .swiper-slide:hover .bg_dot .dot01, .swiper-area .swiper-slide:hover .bg_dot .dot07,.swiper-area .swiper-slide:hover .bg_dot .dot11 {animation-delay: 0;} 
.swiper-area .swiper-slide:hover .bg_dot .dot02,.swiper-area .swiper-slide:hover .bg_dot .dot06 {animation-delay: 0.2s;} 
.swiper-area .swiper-slide:hover .bg_dot .dot03,.swiper-area .swiper-slide:hover .bg_dot .dot08 {animation-delay: 0.5s;} 
.swiper-area .swiper-slide:hover .bg_dot .dot04,.swiper-area .swiper-slide:hover .bg_dot .dot09,.swiper-area .swiper-slide:hover .bg_dot .dot12 {animation-delay: 0.3s;} 
.swiper-area .swiper-slide:hover .bg_dot .dot05,.swiper-area .swiper-slide:hover .bg_dot .dot10 {animation-delay: 0.1s;} 

.swiper-area .slide .slide-content {
    margin-top:var(--size20);
    color:black;
    position:relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:5px;
}
.swiper-area .slide .slide-content .name {
    font-size:1.5em;
    
}
.swiper-area .slide .slide-content p {
    transition:.3s var(--easeout);
    position:relative;
}
.swiper-area .slide .slide-content p span {position:relative;padding:4px;}
.swiper-area .slide .slide-content p:before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color: var(--white);
    transform:scaleX(0);
    transform-origin: left;
    transition:.3s var(--easeout);
}
.swiper-area .swiper-slide:hover p:before {
    transform:scaleX(1);
    transition:.3s var(--easeout);
}
 .swiper-control {
    display: flex;
    gap:20px;
}
#top_member .swiper-control {
    position:absolute;
    left:100px;
    bottom:-40px;
}
.swiper-control .swiper-button-prev,.swiper-control .swiper-button-next {
    width:80px;
    height:80px;
    background-color: rgb(0 0 0 / 0.8);
    border-radius: 50%;
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
}
.swiper-button-next:after, .swiper-button-prev:after {
    width:15px;
    height:24px;
    background-color: white;
    clip-path:polygon(0 0, 0% 100%, 100% 50%) ;
}
.swiper-button-prev:after {
    width:15px;
    height:24px;
    clip-path: polygon(100% 0, 100% 100%, 0 50%); 
}
.swiper-area .swiper-slide .dot {
    width:40px;
    height:40px;
    opacity:0.7;
}
.swiper-area .swiper-slide .dot_small {
    width:25px;
    height:25px;
} 
.swiper-slide .dot01 {left:75px;top:0;}
.swiper-slide .dot02 {left:0;top:280px;}
.swiper-slide .dot03 {right:0;top:235px;}
.swiper-slide .dot04 {left:25px;top:305px;}
.swiper-slide .dot05 {left:25px;bottom:0;}
.swiper-slide .dot06 {left:45px;bottom:65px;}
.swiper-slide .dot07 {right:0;top:295px;}
.swiper-slide .dot08 {right:-25px;top:270px;}
.swiper-slide .dot09 {right:25px;bottom:25px;}
.swiper-slide .dot10 {left:0;top:100px;}
.swiper-slide .dot11 {right:0;bottom:200px;}
.swiper-slide .dot12 {right:60px;bottom:0;}

@media (max-width:1024px) {
    #top_member:before {
        background-image: linear-gradient(rgba(238, 238, 239, 0.6) 1px, transparent 1px), linear-gradient(to right, rgba(238, 238, 239, 0.6) 1px, transparent 1px);
        background-size: 50px 50px;
        background-color: transparent;
        background-position: center -9px;
    }
    .swiper-slide .dot05 {
        left: -25px;
        bottom: -25px;
    }
    .member-swiper {
        margin-top:var(--size40);
    }
}
@media (max-width:768px)  {
    #top_member {
        padding-top: 100px;
        padding-bottom: 100px;
    }    
    #top_member .swiper-control {
        left: 0;
        bottom: -20px;
        width: calc(100% - var(--outergap) / 2 - var(--innergap) / 2);
        justify-content: center;
    }
    .swiper-area .slide {
        width: 240px;
    }
    .swiper-area .slide .mask {
        width: 223px;
        left: 14px;
        border-radius: 120px;
    }
    .swiper-area .slide .mask img {
        width: 240px;
        left: -5.7px;
    }
    .swiper-control .swiper-button-prev, .swiper-control .swiper-button-next{
        width:40px;
        height:40px;
    }
    .swiper-button-next:after,.swiper-button-prev:after{
        width: 7px;
        height: 12px;
    }
    .swiper-area {
        padding: 0 0 40px 80px;
    }

}
/*-------------------------
  top_recruit
-------------------------*/
#top_recruit {
    padding-top:200px;
    padding-bottom:240px;
    color:white;
}
#top_recruit:before {
    content:"";
    background: linear-gradient(180deg, #E74382 0%, rgba(231, 67, 130, 0.00) 53%);
    mix-blend-mode: hard-light;
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    opacity:0.8;
}
#top_recruit .section_tit_box {
    justify-content: space-between;
}
#top_recruit .cont_box {
    margin-top:60px;
}
#top_recruit .cont_box > * {
    padding:0 40px;
}
#top_recruit .cont_box .txt_box {
    width:60%;
    flex-shrink: 0;
}
#top_recruit .cont_box .txt_box p {
    line-height: 2;
    font-size:1.5em;
}
.bg_recruit > * {
    opacity:0.5;
}
.bg_recruit .deco11{left:21.354%;top:90px;transform: rotate(90deg);}
.bg_recruit .deco12{right:28.645%;top:180px; transform:rotate(180deg);}
.bg_recruit .deco13{right:4.6975%;top:90px;}
.bg_recruit .deco14{left:7.55%;bottom:70px;}
.bg_recruit .deco15{right:33%;bottom:340px;}
.bg_recruit .deco16{right:13.5%;bottom:120px;}
.dot16 {left:5.1729%;top:0;}
.dot17 {left:calc(5.1729% + 100px);top:50px;}
.dot18 {left:15.625%;top:0;}
.dot19 {left:34.8958%;top:0;}
.dot20 {left:calc(34.8958% + 100px);top:0;}
.dot21 {left:47.3958%;top:-50px;}
.dot22 {left:calc(47.3958% + 100px);top:0;}
.dot23 {right:10.9375%;top:0;}
.dot24 {left:calc(5.1729% - 50px);top:100px;}
.dot25 {left:calc(47.3958% + 150px);top:50px;}
.dot26 {right:calc(10.9375% - 50px);top:100px;}
.dot27 {left:20.8333%;bottom:25px;}
.dot28 {right:25.9583%;bottom:125px;}
.dot29 {right:calc(25.9583% - 50px);bottom: 75px;}
.dot30 {right:calc(25.9583% + 50px);bottom: 25px;}
.dot31 {right:calc(25.9583% + 50px);bottom:-75px;}
.dot32 {right:calc(25.9583% - 50px);bottom:-75px;}
.dot33 {left:calc(20.8333% - 50px);bottom:-25px;}

@media (max-width:1024px)  {
    #top_recruit .dot {
        opacity:0.6;
    }
    .bg_recruit .deco11{display: none;}
    .bg_recruit .deco12{display: none;}
    .bg_recruit .deco13{right:4.6975%;top:90px;}
    .bg_recruit .deco14{left:10px;top:auto;bottom:250px;width:10%;}
    .bg_recruit .deco15{width:100px;left:100px;bottom:100px;}
    .bg_recruit .deco16{width:18%;right:45px;bottom:50px;}
    .dot16 {left:0;top:auto;bottom:200px;}
    .dot17 {left:140px;top:125px;}
    .dot18 {left:auto;right:0;top:250px;width:12.5px;height:12.5px;}
    .dot19 {left:34.8958%;top:auto;bottom:0;}
    .dot20 {left:calc(34.8958% - 50px);top:auto;bottom:50px;}
    .dot21,.dot24,.dot25,.dot26,.dot27,.dot28,.dot29,.dot30,.dot31,.dot32,.dot33 {display: none}
    .dot22 {left:calc(34.8958% - 25px);top:auto;bottom:350px;}
    .dot23 {right:10;top:auto;bottom:175px;}
    
}
@media (max-width:768px)  {
    #top_recruit {
        padding-top:0;
    }
    #top_recruit .cont_box {
        display: block;
        margin-bottom: var(--size60);
    }
    #top_recruit .section_tit_box {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }
   #top_recruit .section_tit_box h2 .en {
        font-size: 23vw;
        line-height: 1;
        white-space: nowrap;
    }
    #top_recruit .cont_box .txt_box {
        width: 100%;
        padding-inline: var(--outergap);
    }
    #top_recruit .cont_box .txt_box p {
        font-size: 1.0em;
    }

}
/*-------------------------
  NEWS
-------------------------*/
#top_news {
    position:relative;
    background-color: white;
    padding-top:140px;
    padding-bottom:140px;
}
#top_news:before {
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    background-image: linear-gradient(rgba(238, 238, 239, 0.6) 1px, transparent 1px), linear-gradient(to right, rgba(238, 238, 239, 0.6) 1px, transparent 1px);
    background-size: 100px 100px;
    background-color: transparent;
    background-position: center -18px;
} 
.news_wrap {
    display: grid;
    grid-template-columns: 3fr 7fr;
    gap:20px;
}
.news_category_tab {
    display: flex;
    flex-direction: column;
    gap:1em;
    
}
.news_category_tab li {
    font-size:1.25em;
    color:black;
    cursor: pointer;
}

.news_category_tab li.current {
    text-decoration:underline;
}

.news_wrap article:not(.active){
    display: none;
}
.news_wrap .news_list a{
    display: flex;
    align-items: flex-start;
    gap:var(--size30);
    padding-top:var(--size30);
    padding-bottom:var(--size30);
    border-bottom:1px solid black;
    position:relative;

}
.news_wrap .news_list a > * {
    position:relative;
    transition:all .5s var(--ease);
}
.news_wrap .news_list a:before {
    content:"";
    width:0;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    z-index: 0;
    background: var(--grd, linear-gradient(246deg, #21B8FF 15.86%, #FE39A3 79.98%));
    transition:all .5s var(--easeout);
}
.news_wrap .news_list a:hover:before {
    width:100%;
}
.news_wrap .news_list a:hover * {
    color:white;
}
.news_wrap .news_list figure {
    width:min(23.375%,248px);
    aspect-ratio:248/160;
    overflow: hidden;
    flex-shrink: 0;
}
.news_wrap .news_list figure img {
    width:100%;
    height:100%;
    object-fit: cover;
}
.news_wrap .news_list .note {
    display: flex;
    gap:10px;
    margin-bottom:var(--size20);
}
.news_wrap .news_list time {
    font-family:var(--fonten);
    font-weight:700;
    color:black;
}
.news_wrap .news_list .cat {
    display: inline-block;
    width:115px;
    height:30px;
    text-align: center;
    line-height: 30px;
    color:white;
    border-radius: 15px;
    font-weight:600;
}
.info {
    background-color: var(--aqua);
}
.event {
    background-color: var(--yellow);
}
.service {
    background-color: var(--green);
}
.seminar {
    background-color: var(--mazenda);
}
.news_wrap .news_list a p {
    color:black;
    font-weight:600;
    padding-inline:0 1em;
    font-size:1.25em;
}
.bg_news *{
    mix-blend-mode: difference;
    opacity:0.1;
}
.bg_news .deco17 {left:5.729%;top:80px;opacity:0.15;}
.bg_news .deco18 {right:4.6875%;top:70px;opacity:0.15;}
.bg_news .deco19 {right:4.68%;top:250px;opacity:0.15;}
.bg_news .deco20 {left:10.9375%;top:50.9%;opacity:0.5;}
.bg_news .deco21 {left:5.729%;bottom:15.7%;opacity:0.1;transform:rotate(180deg);}
.bg_news .deco22 {left:22.9%;bottom:14.3%;opacity:0.15;}
.bg_news .deco23 {right:5.57%;bottom:10%;}
@media (max-width:1024px) {

    #top_news:before {
        background-size: 50px 50px;
        background-position: center -9px;
    }
    .bg_news .deco17 {width:45%;left:5px;top:30px;opacity:0.15;}
    .bg_news .deco18 {width:7.6%;right:25px;top:30px;opacity:0.15;}
    .bg_news .deco19 {width:4.58%;left:29%;right:auto;top:150px;opacity:0.15;}
    .bg_news .deco20 {left:10.9375%;top:50.9%;opacity:0.5;}
    .bg_news .deco21 {left:5.729%;bottom:15.7%;opacity:0.1;transform:rotate(180deg);}
    .bg_news .deco22 {left:22.9%;bottom:14.3%;opacity:0.15;}
    .bg_news .deco23 {right:5.57%;bottom:10%;}

}
@media (max-width:768px)  {
    #top_news {
        padding-top:80px;
        padding-bottom:100px;
    }
    .news_wrap {
        grid-template-columns: 1fr;
        gap: 40px;
        margin-top:60px;
    }
    .news_category_tab {
        display: flex;
        flex-direction: row; 
        gap: 1em;
        flex-flow: wrap;
        padding-left: 0;
    }
    .news_category_tab li {
        font-size: 1.0em;
    }
    .news_wrap .news_list a {
        gap: 10px;
        padding-top: var(--size20);
        padding-bottom: var(--size20);
    }
    .news_wrap .news_list figure {
        width:min(35%,120px);
    }
    .news_wrap .news_list .cat {
        width: 88px;
        height: 25px;
        line-height: 25px;
        border-radius: 13px;
        font-size:11px;
    }
    .news_wrap .news_list time {
        font-size:1em;
    }
    .news_wrap .news_list a p {
        font-size:1em;
    }
}

/*-------------------------
  contact
-------------------------*/
#top_contact {
    padding-top:var(--size80);
    padding-bottom:var(--size80);
    padding-inline:var(--size60);
    position:relative;
}
.bg_contact {
    mix-blend-mode: hard-light;
    opacity:0.8;
}
.contact_box {
    background-color:rgb(255 255 255 / 0.7);
    mix-blend-mode: screen;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width:100%;
    height:100%;
    border-radius: 100px;
    backdrop-filter: blur(25px);
    gap:var(--size30);
    padding:120px 0 180px;
    transition: all .3s var(--easeout);
}
a:hover .contact_box{
    border-radius: 300px;
    overflow: hidden;
    backdrop-filter: blur(0);
}

.contact_box .section_tit_box h2.grad_mask {
    background-image: url(../img/bg_grad.jpg);
    background-size: 150% auto;
    background-position: center;
    background-clip: text;
    color: rgb(0 0 0 / 1);
    mix-blend-mode: multiply;
    line-height: 1.2;
}
.arw_contact {
    display: block;
    width:80%;
    height:2px;
    background-color: black;
    margin-bottom:40px;
    position:relative;
    transition: width .3s var(--easeout);
}
a:hover .arw_contact {
    width:85%;
}
.arw_contact:after {
    content:"";
    width:80px;
    height:2px;
    background-color: black;
    position:absolute;
    right:0;
    bottom:0;
    transform: rotate(30deg);
    transform-origin: right;
}
.contact_box.contact_txt {
    mix-blend-mode: normal;
    position:absolute;
    top:var(--size80);
    bottom:var(--size80);
    left:var(--size60);
    right:var(--size60);
    width:calc(100% - var(--size60)*2);
    height:calc(100% - var(--size80)*2);
    background-color: transparent;
    backdrop-filter: blur(0);
}
.contact_box.contact_txt .section_tit_box h2.grad_mask,.contact_box.contact_txt .arw_contact{
    opacity:0;
}

@media (max-width:1024px) {

}

@media (max-width:768px)  {
    #top_contact {
        padding-top:var(--size30);
        padding-bottom:var(--size30);
        padding-inline:var(--size30);
    }
    .contact_box {
        border-radius: var(--size30);
        gap: var(--size30);
        padding: 40px 0 100px;
    }
   .contact_box .section_tit_box h2 .en {
        font-size: 12vw;
    }
    .arw_contact:after {
        width: 40px;   
        }
    .contact_txt p {
        text-align: left;
    }
    .bg_contact img {
        width:100%;
        height:100%;
        object-fit: cover;
    }
}
@media (max-width:699px)  {

}
