@charset "utf-8";

/* common
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

/* *{
    border: 1px solid #000 !important;
} */
/* p {
    font-family: "ryo-gothic-plusn", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .5px;
    line-height: 1.35;
    font-size: 1.6rem;
    word-break: break-word;
} */

a{
  transition: all .4s;
}

a > img{
    display: block;
}

@media screen and (max-width: 750px) {
    #Wrapper{
        width: 100vw;
        /* overflow: hidden; */
    }
}
/* font
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.ft-anisette{
    font-family: anisette-std, sans-serif;
    font-weight: 400;
    font-style: normal;
}
.ft-anisette_bold{
    font-family: anisette-std, sans-serif;
    font-weight: 700;
    font-style: normal;
}
.ft-ryo_gothic{
    font-family: ryo-gothic-plusn, sans-serif;
    font-weight: 400;
    font-style: normal;
}
.ft-noto_emoji{
    font-family: "Noto Color Emoji", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.ft-a1_gothic{
    /* font-family: gothic-a1, sans-serif; */
    /* font-family: "MFW-PA1GothicStdN-Bold",gothic-a1, sans-serif; */
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}
.ft-syncopate {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.txt-v_rl{
  writing-mode: vertical-rl;
  text-orientation: upright;
}
.txt-s_lr{
    writing-mode: sideways-lr;
}
/* .txt-v_rl .ft-a1_k{
    position: relative;
    top: -.75em;
    left: .75em;
} */

.clr-pink{
    color: #f92bf9;
}

.clr-blue{
    color: #0025ff;
}
/* frame
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.l-wrapper{
    position: relative;
}

/* icon
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.icn_w_01{
    width: 1.2em;
    height: 1.2em;
    background: url(../img/icon/icn_dvl_01.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    margin: -.5em 1em 0 0;
    vertical-align: middle;
}
.icn_w_02{
    width: 1.2em;
    height: 1.2em;
    background: url(../img/icon/icn_dvl_02.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    margin: -.5em 1em 0 0;
    vertical-align: middle;
}
.icn_w_03{
    width: 1.2em;
    height: 1.2em;
    background: url(../img/icon/icn_dvl_03.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    margin: -.5em 1em 0 0;
    vertical-align: middle;
}
.icn_w_04{
    width: 1.2em;
    height: 1.2em;
    background: url(../img/icon/icn_dvl_04.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    margin: -.5em 1em 0 0;
    vertical-align: middle;
}
.icn_w_05{
    width: 1.2em;
    height: 1.2em;
    background: url(../img/icon/icn_dvl_05.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    margin: -.5em 1em 0 0;
    vertical-align: middle;
}
.icn_w_06{
    width: 1.2em;
    height: 1.2em;
    background: url(../img/icon/icn_dvl_06.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    margin: -.5em 1em 0 0;
    vertical-align: middle;
}

/* HEADER
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.l-header{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 5;
    padding: 2.2% 0;
}
@media screen and (max-width: 750px) {
    .l-header{
        padding: 6% 3%;
    }
}
.l-header .sw-inner-box{
    max-width: 1175px;
}
.l-header *{
    color: #fff;
}
.l-header .h-logo img{
    height: 1em;
    width: auto;
}
.l-header .h-logo a:hover img,
.l-header .h-logo img{
  transform-origin: bottom center;
  animation: pop 4s infinite;
  transform-origin: center;
}
.l-header .h-logo a:hover img{
  animation: pop2 .4s infinite;
}
.l-header .sw-flex-box{
    justify-content: space-between;
    align-items:center;
}
.l-header .h-nav_menu ul{
    align-items: center;
}
.l-header .h-nav_menu ul li{
    margin: 0 .8em;
}
@media screen and (min-width: 751px) {
    .l-header .h-nav_menu ul li.item_menu,
    .l-header .h-nav_menu ul li.menu_lang{
        font-size: clamp(.7rem, 1.15vw, 1.3rem);
    }
}
@media screen and (max-width: 750px) {
    .l-header .h-nav_menu ul li{
        margin: 0;
    }
}
.l-header .h-nav_menu ul li.link_instagram a {
  display: inline-block;
  transition: transform .3s ease;
}

.l-header .h-nav_menu ul li.link_instagram a:hover {
  transform: scale(1.15);
}
@media screen and (max-width: 750px) {
    .l-header .h-nav_menu ul li.item_menu{
        display: none;
    }
}

.l-header .h-nav_menu ul li.item_menu a{
    display: block;
    padding: 0 .8em;
}
.l-header .h-nav_menu ul li.item_menu a:hover {
  animation: text-blur 0.5s;
}

.l-header .h-nav_menu ul li.menu_lang{
    margin: 0 1.8em 0 4.6em;
}

@media screen and (max-width: 750px) {
    .l-header .h-nav_menu ul li.menu_lang {
        margin: 0 2.4em 0 1.8em;
    }
}
.l-header .h-nav_menu ul:after{
    content: "";
    width: 7em;
    height: 1em;
    display: block;
    font-size: clamp(.7rem,1.0vw,1.3rem);
}
#Slide_Menu .move_face{
    justify-content: flex-start;
}
#Slide_Menu .sw-fukidashi {
    margin-left: 2em;
    padding: 1.5em 3em 1.5em;
    width: 15em;
    margin-bottom: 3em;
}
#Menu{
    position: fixed;
    top: 0;
    right: 0;
    width: 5em;
    height: 2em;
    z-index: 100;
}

/* FOOTER
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
.sw-footer-wrap{
    /* position: sticky;
    top: 0; */
    min-height: 100vh;
    background: #f00;
}

.l-footer{
    position: sticky;
    top: 0;

    background: #090909;
    z-index: 1;

    height: 100vh;
    /* height: 100dvh; */

    /* overflow: hidden; */

    /* -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform-style: preserve-3d; */
}

.l-footer::before{
    content: "";
    position: absolute;
    inset: 0;
    background: #090909;

    transform: translate3d(0, var(--before-y, 100%), 0);

    will-change: transform;

    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;

    z-index: 1;
}

.l-footer > .sw-inner-box{
    position: relative;
    z-index: 6;
}
.l-footer .sw-contact-btn{
    position: relative;
}
.l-footer .sw-contact-btn a{
    border: 1px solid #fff;
}
.l-footer .sw-contact-btn .txt-serif{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
@media screen and (max-width: 750px) {
    .l-footer .sw-contact-btn .txt-serif {
        position: absolute;
        top: 1.2em;
        left: -1.3em;
    }
}
.l-footer .sw-contact-btn .txt-serif span{
    background: #ff6600;
    color: #000;
    line-height: 1;
    padding: .15em .25em;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
.l-footer .sw-contact-btn .move_face {
    position: absolute;
    right: .3em;
    bottom: 0;
    justify-content: flex-start;
    padding-left: 11%;
}
@media screen and (max-width: 750px) {
    .l-footer .sw-contact-btn .move_face {
        right: .5em;
        top: 7.4em;
        bottom: inherit;
    }
}
.l-footer .sw-contact-btn .move_face.eye_white .eye{
    background: #000;
}

.l-footer .sw-contact-btn a:hover {
  animation: jelly 0.7s;
}

.l-footer .f-logo a:hover img,
.l-footer .f-logo img{
    height: 1em;
    width: auto;
  transform-origin: bottom center;
  animation: pop 4s infinite;
  transform-origin: center;
}
.l-footer .f-logo a:hover img{
  animation: pop2 .4s infinite;
}

.l-footer nav ul li a{
    color: #fff;
}
.l-footer .txt-copy_right{
    color: #fff;
}
.l-footer .sw-inner-box{
    max-width: 1150px;
}
.l-footer .f-box_01 .sw-flex-box{
    justify-content: space-between;
}
@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-flex-box{
        flex-direction: column-reverse;
    }
}
.l-footer .f-box_01 .sw-content-box_01{
    width: 52%;
    padding: 13.4% 0 0;
    position: relative;
    z-index: 1;
}
@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_01{
        width: 90%;
        padding: 0;
        margin: 0 auto;
    }
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_01 nav ul li{
        line-height: 1.35;
    }
}
.l-footer .f-box_01 .sw-content-box_01 nav ul li a{
    display: block;
    padding: .1em 0;
  transition: .3s;
}

.l-footer .f-box_01 .sw-content-box_01 nav ul li a:hover {
    color: #ff6600;
}
.l-footer .f-box_01 .sw-content-box_02{
    width: 48%;
    position: relative;
    padding: 10% 0 0;
}
@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_02{
        width: 100%;
        padding: 4% 0 0;
    }
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_02 .sw-flex-box{
        flex-direction: row-reverse;
        justify-content: center;
        width: 92%;
        margin: 0 auto -17vw
    }
}
.l-footer .f-box_01 .sw-content-box_02 .f-logo{
    position: absolute;
    top: -.9em;
    right: -.4em;
    z-index: 5;
}

@media screen and (max-width: 1280px) {   
    .l-footer .f-box_01 .sw-content-box_02 .f-logo{
        right: 0;
    }
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_02 .f-logo {
        right: 1em;
        top: -1.6em;
    }
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_02 .sw-recruit-btn {
        margin-right: -3.5vw;
        margin-top: 29vw;
    }
}
@media screen and (max-width: 750px) {
    .l-footer .f-box_01 .sw-content-box_02 .sw-contact-btn {
        margin-right: -16vw;
    }
}

.l-footer .f-box_02{
    margin-top: 2.5%;
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_02 {
        width: 90%;
        margin: 8.5% auto 0;
    }
}

.l-footer .f-box_02 .sw-flex-box{
    justify-content: space-between;
    align-content: flex-end;
    align-items: flex-end;
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_02 > .sw-flex-box{
        flex-direction: column;
        align-content: flex-start;
        align-items: flex-start;
    }
}
.l-footer .f-box_02 .f-nav_menu_02{
    width: 50%;
}
@media screen and (max-width: 750px) {
    .l-footer .f-box_02 .f-nav_menu_02 {
        width: 100%;
    }
}
.l-footer .f-box_02 .f-nav_menu_02 li{
    margin-right: 1em;
    margin-bottom: .5em;
    color: #fff;
    position: relative;
}
.l-footer .f-box_02 .f-nav_menu_02 ul:last-child li{
    margin-right: 2em;
}
.l-footer .f-box_02 .f-nav_menu_02 ul:last-child li:not(:last-child):after{
    content: "";
    width: 1px;
    height: 1em;
    position: absolute;
    right: -1em;
    top: .5em;
    background: #fff;
}
.l-footer .f-box_02 .f-nav_menu_02 .sw-flex-box{
    justify-content: flex-start;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_02 .f-nav_menu_02 .sw-flex-box:nth-child(2) {
        margin-top: 9.5%;
    }
}
.l-footer .f-box_02 .txt-copy_right{
    width: 50%;
    text-align: right;
}

@media screen and (max-width: 750px) {
    .l-footer .f-box_02 .txt-copy_right {
        width: 100%;
        text-align: left;
        line-height: 1.1;
    }
}


/* Box / btn / txt
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
.sw-btn-view_more a{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    background: #000;
    border-radius: 50%;
    color: #fff;
}

.sw-contact-btn a{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    background: #000;
    border-radius: 50%;
    color: #fff;
    position: relative;
}

.sw-contact-btn a .ft-ja{
    background: #fff;
    color: #000;
    line-height: 1.6;
    padding: .1em;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
@media screen and (max-width: 750px) {

    .sw-contact-btn a .ft-ja{
        padding: 0 .1em;
    }
}

.sw-recruit-btn a{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    background: #ff6600;
    border-radius: 50%;
    color: #fff;
}
.sw-recruit-btn a:hover {
  animation: jelly 0.7s;
}

.logo_roblox,
.logo_roblox_b{
    background: url(../img/logo/logo_roblox_w.png) no-repeat 50% 50%;
    background-size: contain;
    width: 5em;
    height: 1em;
    display: inline-block;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    position: relative;
    top: .1em;
}
.logo_roblox_b{
    background-image: url(../img/logo/logo_roblox_b.png);
}

.logo_instagram{
    background: url(../img/logo/logo_instagram_w.png) no-repeat 50% 50%;
    background-size: contain;
    width: 1em;
    height: 1em;
    display: inline-block;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    position: relative;
    top: .1em;
}

.logo_youtube{
    background: url(../img/logo/logo_youtube_w.png) no-repeat 50% 50%;
    background-size: contain;
    width: 1.5em;
    height: 1em;
    display: inline-block;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    position: relative;
    top: .1em;
}
.move_face{
  display: flex;
  justify-content: center;
}

.move_face .eye {
    font-size: inherit;
    width: 1.3em;
    height: 1.7em;
    background: white;
    border: 1px solid black;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    top: .3em;
}

.move_face .pupil {
    font-size: inherit;
    width: .65em;
    height: 1em;
    background-color:black;
    border-radius:50%;
    position:absolute;

    top:50%;
    left:50%;

    transform:translate(-50%, -50%);
    transition:transform .1s linear;
}
.move_face.eye_white .eye{
    background: none;
    border-color: #fff;
}
.move_face.eye_white .pupil {
    background-color: #fff;
}
.roblox_logo-wrap{
    justify-content: flex-start;
    align-items: flex-end;
}
.roblox_logo-wrap .move_face{
    margin-left: .5em;
}



.sw-fukidashi{
    background: #fff;
    padding: 1.95em 2.4em;
    border-radius: .7em;
    position: relative;
    margin: 0 0 2em 3.6em;
}
.sw-fuki-box.fuki-bk .sw-fukidashi{
    color: #fff;
    background: #000;
}
.sw-fuki-box .sw-fukidashi::before{
    content: "";
    width: 1.5em;
    height: 1.2em;
    position: absolute;
    left: .5em;
    top: calc(100% - 2px);
    background: url(../img/icon/icn_fuki.png) no-repeat 50% 50%;
    background-size: contain;
}

.sw-fuki-box.fuki-bk .sw-fukidashi::before{
    background-image: url(../img/icon/icn_fuki_bk.png);
}
.sw-fuki-box .sw-fukidashi p{
    color: #000 !important;
    line-height: 1.5;
}
.sw-fuki-box.fuki-bk .sw-fukidashi p{
    color: #fff !important;
}

.sw-copyright{
    position: relative;
    padding-left: 3.5em;
}

@media screen and (max-width: 750px) {
    .sw-copyright{
    padding-left: 2.5em;
    }
}
.sw-copyright p{
    position: relative;
    padding: .5em 0 .7em;
    letter-spacing: .05em;
}

.sw-copyright p:after{
    content: "";
    width: 13em;
    height: .3em;
    position: absolute;
    left: 0;
    bottom: 0;
    background: url(../img/icon/icn_copy_02.png) no-repeat 0% 100%;
    background-size: contain;
}
.sw-copyright:before{
    content: "";
    width: 2.2em;
    height: 2.2em;
    border: 1px solid #fff;
    position: absolute;
    top: .1em;
    left: .2em;
    background: url(../img/icon/icn_copy_01.png) no-repeat 50% 50%;
    background-size: 1em auto;
}
@media screen and (max-width: 750px) {
    .sw-copyright:before {
        width: 1.5em;
        height: 1.5em;
        top: .1em;
        left: .2em;
        background-size: .7em auto;
    }
}


/* WE MAKE AMAZING WORLDS
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.sw-txt-box_amazing{
    overflow: hidden;
    margin-bottom: 2%;
    /* cursor: url(../img/icon/icn_knowmore.png), pointer; */
}

.sw-txt-box_amazing .cursor-area{
    cursor: none;
}

.sw-txt-box_amazing .cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  pointer-events: none;
  z-index: 9999;

  background: url(../img/icon/icn_knowmore_02.png) center/contain no-repeat;

  opacity: 0;
  transform: translate(-50%, -50%) scale(.6);

  transition:
    opacity .3s ease,
    transform .3s ease;
}

.sw-txt-box_amazing .cursor.is-active {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
@media screen and (max-width: 750px) {
    .sw-txt-box_amazing{
        margin-bottom: 7%;
    }
}

.sw-txt-box_amazing .sw-txt{
    text-align: center;
    line-height: 1.05;
}
@media screen and (max-width: 750px) {
    .sw-txt-box_amazing .sw-txt{
        line-height: 1;
    }
}
.sw-txt-box_amazing .sw-txt .img-in_txt{
    background: url('../img/top/img_txt_01@2x.png') no-repeat 50% 50%;
    background-size: contain;
    height: .77em;
    width: auto;
    aspect-ratio: 340 / 172;
    display: inline-block;
    margin: 0 -.1em;
}

/* KV
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/


  .tp-section_kv {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    background-color: #ff1540;
  }

  .tp-section_kv .background_movie_wrap,
  .tp-section_kv .background_movie_wrap iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  /* 上に重ねるSVG */
  .overlay-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none; 
  }

  /* マスクを適用する白い壁 */
  .white-wall {
    fill: #ff1540;
    mask: url(#hole-mask);
  }
.kv-wrapper {
  min-height: 200vh;
  display: none;
}


/* KVは画面に固定 */
.tp-section_kv {
  position: sticky;
  top: 0;

  width: 100vw;

  overflow: hidden;
  background: #ff1540;
}

  /* 調整 */
  .tp-section_kv{
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: none;
  }
  .tp-section_kv .sw-inner-box{
    opacity:1;
    transform:translateY(0);
    transition:opacity .05s linear;
    will-change:opacity,transform;
}
/* 動かす対象 */
.kv-motion {
  position: absolute;
  inset: 0;

  will-change: transform;
}


/* 動画 */
.background_movie_wrap,
.background_movie_wrap iframe {
  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 100%;
}

/* @media screen and (max-width: 750px) {
    .background_movie_wrap iframe {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        pointer-events: none;
        width: 177.78vh;
        height: 100vh;
    }
} */


/* SVG */
.overlay-svg {
  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 100%;

  pointer-events: none;
}


.white-wall {
  fill: #ff1540;
  mask: url(#hole-mask);
}


/* 次セクション */
.next-section {
  min-height: 100vh;
  background: #ff1540;
}
  /* 透明なマウス検知エリア */
  .hover-trigger {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
      cursor: url(https://twilight.bitter.jp/crackin/0623/assets/img/icn_hand_cursor.png),pointer;
    z-index: 10;
  }

/* kv main
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.tp-section_kv-wrapper{
    background: #ff1540;
    overflow: hidden;
    width: 100vw;
}
.tp-section_kv_main{
    /* border-top: 1px solid; */
    color: #fff;
    position: relative;
    padding: 7.6% 0 1.8%;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_main{
        padding: 23% 0 1.8% 2.5%;
    }
}
.tp-section_kv_main .sw-inner-box{
    max-width: 1195px;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-inner-box{
        width: 100%;
    }
}

.tp-section_kv_main .sw-content-box_wrap{
    flex-direction: row-reverse;
    justify-content: space-between;
}

.tp-section_kv_main .sw-content-box_01{
    width: 25%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    background: url(../img/icon/icn_mv_03.png) no-repeat 44% 20.5%;
    background-size: 4.7em auto;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01{
        position: absolute;
        right: 2%;
        top: -3.5%;
        height: 100%;
        justify-content: space-between;
        width: 98%;
        background-position: 98% 50%;
        background-size: 10% auto;
    }
}

.tp-section_kv_main .sw-content-box_01 .sw-ttl_ja .ttl_ja{
    margin-top: -.25em;
    letter-spacing: -.06em;
    margin-right: .7em;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01 .sw-ttl_ja .ttl_ja{
        width: 1em;
        line-height: 1.2;
    }
}

.tp-section_kv_main .sw-content-box_01 .sw-contact-btn{
    margin: .06em .12em;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01 .sw-contact-btn{
        margin: 0 .05em;
    }
}

.tp-section_kv_main .sw-content-box_01 .sw-contact-btn a{
    background: none;
}
.tp-section_kv_main .sw-content-box_01 .sw-contact-btn a:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 50%;
    background: #000;
    width: 100%;
    height: 100%;
    animation: poyopoyo 2s ease-out infinite;
}

.tp-section_kv_main .sw-content-box_01 .sw-contact-btn a>*{
    position: relative;
}

.tp-section_kv_main .sw-content-box_01 .sw-contact-btn a:after {
    content: "";
    width: .4em;
    height: auto;
    aspect-ratio: 191 / 181;
    display: inline-block;
    /* border: 1px solid #fff; */
    vertical-align: middle;
    margin: -.2em -.1em 0 .2em;
    background: url(../img/icon/icn_hand.png) no-repeat 100% 50%;
    background-size: contain;
    position: absolute;
    top: calc(100% + .02em);
    right: .16em;
  animation: poke 1s ease-in-out infinite;
  transform-origin: center;
}

.tp-section_kv_main .sw-content-box_01 .sw-contact-btn a .ft-ja:after {
    content: "";
    width: 1.3em;
    height: 1.5em;
    display: inline-block;
    /* border: 1px solid #fff; */
    vertical-align: middle;
    margin: -.2em -.1em 0 .2em;
    background: #000 url(../img/icon/icn_arw_04.png) no-repeat 100% 50%;
    background-size: .8em auto;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01 .sw-contact-btn a .ft-ja:after{
        height: 1.7em;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01 .sw-contact-btn{
        order: 4;
        margin: -.01em .05em;
    }
}

.tp-section_kv_main .smalltxt {
    display: block;
    background: url(../img/icon/icn_mv_02.png) no-repeat 50% 50%;
    background-size: contain;
}

.tp-section_kv_main .sw-content-box_01 .smalltxt {
    display: block;
    width: 15em;
    height: 7.3em;
    margin: -3.1em 0 1em;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01 .smalltxt{
        order: 2;
        position: absolute;
        bottom: .5em;
        left: 0;
        width: 8.5em;
        height: 5.5em;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_01 .sw-copyright{
        order: 3;
        position: absolute;
        left: 1.5%;
        bottom: -1.5%;
    }
}

.tp-section_kv_main .sw-content-box_02{
    width: 75%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_02{
        width: 100%;
        padding-bottom: 30%;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_02 .sw-ttl_en {
        margin-bottom: 20%;
    }
}

.tp-section_kv_main .sw-content-box_02 .sw-ttl_en span{
    display: block;
    line-height: .88em;
    position: relative;
}
.tp-section_kv_main .sw-content-box_02 .sw-ttl_en span:nth-child(1):after {
    content: "";
    display: inline-block;
    width: .5em;
    height: .75em;
    background: url(../img/txt/txt_kanji_01.png) no-repeat 50% 50%;
    background-size: contain;
    position: absolute;
    left: 4.5em;
    top: 0;
}
.tp-section_kv_main .sw-content-box_02 .sw-ttl_roblox .ttl_ja{
    display: block;
    white-space: nowrap;
    line-height: 1.3;
    letter-spacing: -.12em;
}

.tp-section_kv_main .sw-content-box_02 .progressbar{
    display: block;
    width: 12em;
    height: 6em;
    background: url(../img/icon/icn_mv_01.png) no-repeat 50% 50%;
    background-size: contain;
    margin-left: 1em;
}

.tp-section_kv_main .sw-content-box_02 .smalltxt {
    display: block;
    width: 9em;
    height: 7.3em;
    margin-left: 1em;
    margin-bottom: 4em;
}

.tp-section_kv_main .sw-content-box_02 .logo_roblox{
    margin-left: .45em;
}


@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_02 .sw-ttl_ja {
        overflow: hidden;
        margin-left: -.2em;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_02 .sw-txt-box {
        width: 66%;
        margin: 1.5% 0 0 2%;

    }
}
@media screen and (max-width: 750px) {
    .tp-section_kv_main .sw-content-box_02 .sw-txt-box p{
        line-height: 1.75;
    }
}
/* message
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.tp-section_kv_message{
    /* min-height: 100vh; */
  /* background: #ff1540; */
  /* border-top: 1px solid; */
  color: #fff;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_message{
        padding-top: 25vw;
    }
}

.tp-section_kv_message .sw-inner-box{
    max-width: 1160px;
}

.tp-section_kv_message .sw-num{
    position: relative;
}

.tp-section_kv_message .sw-num .ft-num {
    display: inline-block;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    background: url(../img/logo/bg_num_01_r.png?ver02) no-repeat 20% 50%;
    background-size: contain;
    width: 2.2em;
    height: .77em;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-num .ft-num {
        margin-left: -.53em;
    }
}
.tp-section_kv_message .sw-num .txt-message{
    position: absolute;
    top: calc(50% - 1.2em);
    left: 4.8em;
}

@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-num .txt-message{
        left: 1.3em;
    }
}
.tp-section_kv_message .sw-num .txt-message:after{
    content: "";
    width: 1em;
    height: 1em;
    background: url(../img/icon/icn_arw_zoom.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    margin-left: .5em;
}

.tp-section_kv_message .sw-flex-box{
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: flex-start;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-flex-box{
        justify-content: space-between;
    }
}

.tp-section_kv_message > .sw-inner-box:after {
    content: "";
    width: 45%;
    height: 100%;
    position: absolute;
    left: 74%;
    top: -2%;
    background: url(../img/logo/bg_o.png) no-repeat 100% 100%;
    background-size: contain;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message > .sw-inner-box:after {
        display: none;
    }
}

.tp-section_kv_message .sw-ttl{
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: flex-start;
    line-height: 1.2;
    white-space: nowrap;
    font-weight: bold;
    padding: 1.5% 0;
    letter-spacing: -.08em;

}
@media screen and (max-width: 750px) {
.tp-section_kv_message .sw-ttl .txt-v_rl .ft-a1_k {
        position: relative;
        top: 0;
        left: 0;
    }
}
.tp-section_kv_message .sw-ttl .ft-ja{
    writing-mode: vertical-rl;
    margin-left: 2em;
    letter-spacing: .17em;
    margin-top: .8em;
}

.tp-section_kv_message .sw-txt-box{
    width: 46.5%;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-txt-box {
        width: calc(100% - 12em);
        padding-top: 26vw;
    }
}

.tp-section_kv_message .sw-txt-box .sw-roblox-ttl{
    padding-left: 22%;
    margin-top: 1.5em;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-txt-box .sw-roblox-ttl{
        padding-left: 8%;
    }
}

.tp-section_kv_message .sw-txt-box .sw-roblox-ttl .logo_roblox{
    margin-right: .2em;
}

.tp-section_kv_message .sw-txt-box .sw-txt-wrap{
    padding-left: 22%;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-txt-box .sw-txt-wrap{
        padding-left: 8%;
    }
}
.tp-section_kv_message .sw-txt-box .sw-txt-wrap p{
    margin-top: .85em;
    line-height: 2.2;
    margin-bottom: 2.3em;
}
@media screen and (max-width: 750px) {
    .tp-section_kv_message .sw-txt-box .sw-txt-wrap p {
        margin-top: 1.2em;
        line-height: 1.53;
        margin-bottom: 1.5em;
    }
}

.tp-section_kv-wrapper {
    position: relative;
}

#js-kv-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition: transform 1s cubic-bezier(.22,.61,.36,1);
}
.tp-box_roblox_next{
    position: relative;
    padding-bottom: 3.5%;
    margin-top: -4.5%;
    /* background: #ff1640; */
    z-index: 1;
    overflow: hidden;
    padding: 5% 0;
    /* margin: -10% 0; */
    background: #fff;
    margin-top: -5px;
}
@media screen and (max-width: 750px) {
    .tp-box_roblox_next{
        /* margin-top: 1.5%; */
        margin-top: -1.5%;
        padding-bottom: 8%;
        padding-top: 6%;
    }
}

/* .tp-box_roblox_next:before{
    content: "";
    width: 100%;
    height: calc(100% - 13vw);
    position: absolute;
    bottom: 0;
    left: 0;
  clip-path: polygon(0 13vw, 100% 0%, 100% 100%, 0% 100%);
  background: #fff;
} */
 .tp-box_roblox_next:before {
    content: "";
    width: 100%;
    height: 50%;
    position: absolute;
    bottom: inherit;
    top: 0;
    left: 0;
    clip-path: polygon(0 0, 100% 0%, 100% 2.5vw, 0 14.5vw);
    background: #ff1640;
    z-index: 0;
}

@media screen and (min-width: 1400px) {
    .tp-box_roblox_next:before{
        /* height: calc(100% + 84px); */
        height: 90%;
    }
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next:before {
        content: "";
        width: 100%;
        height: 50%;
        position: absolute;
        bottom: inherit;
        top: 0;
        left: 0;
        clip-path: polygon(0 0, 100% 0%, 100% 1.5vw, 0 13.5vw);
        background: #ff1640;
        z-index: 0;
    }
}
.tp-box_roblox_next .sw-inner-box{
    transform: rotate(-7deg);
    max-width: 1180px;
}
@media screen and (max-width: 750px) {
    .tp-box_roblox_next .sw-inner-box{
        transform: unset;
    }
}

.tp-box_roblox_next .txt-roblox_next{
    position: relative;
}
@media screen and (max-width: 750px) {
    .tp-box_roblox_next .txt-roblox_next{
        transform: rotate(-7deg);
    }
}
.tp-box_roblox_next .txt-roblox_next p {
    display: block;
    line-height: 1.2;
    margin-bottom: .2em;
    transform: translateX(5em);
    opacity: 0;   
}
.tp-box_roblox_next .txt-roblox_next.is-show p {
  animation: slideInRight 0.8s ease-out forwards;
}

.tp-box_roblox_next .txt-roblox_next.is-show p:nth-child(1) {
    animation-delay: .1s;
}

.tp-box_roblox_next .txt-roblox_next.is-show p:nth-child(2) {
    animation-delay: .4s;
}

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

    .tp-box_roblox_next .txt-roblox_next p {
        position: relative;
        letter-spacing: .015em;

    }
    .tp-box_roblox_next .txt-roblox_next p:nth-child(1){
        left: -3vw;
    }
    .tp-box_roblox_next .txt-roblox_next p:nth-child(2){
        left: -7.5vw;
    }
}

.tp-box_roblox_next .txt-roblox_next .txt-bg_black {
    background: #000;
    color: #fff;
    display: inline-block;
    line-height: 1.3;
    padding: 0 .15em;
    white-space: nowrap;
}
@media screen and (max-width: 750px) {
    .tp-box_roblox_next .txt-roblox_next .txt-bg_black {
        padding:0 .4em 0 .4em;
    }
}

.tp-box_roblox_next .box-roblox_list{
    display: flex;
    justify-content: flex-end;
    position: relative;
}

@media screen and (min-width: 751px) and (max-width: 1480px) {
    .tp-box_roblox_next .box-roblox_list{
        padding-right: 7%;
    }
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next .box-roblox_list{
        display: block;
    }
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next .box-roblox_list:before {
        content: "";
        width: 41.5%;
        height: 88%;
        background: url(../img/icon/icn_arw_02.png) no-repeat 0 0;
        background-size: contain;
        position: absolute;
        top: 11%;
        left: -2.5%;
        opacity: 0;
    }
    .tp-box_roblox_next.is-show .box-roblox_list:before{
        animation: arrowPop .4s ease-out forwards;
        animation-delay: 1.8s;
    }
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next .box-roblox_list .logo_roblox-wrap{
        text-align: right;
        margin-top: 2.2em;
        margin-bottom: 1.8em;
    }
}
.tp-box_roblox_next .box-roblox_list ul{
    max-width: 50%;
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next .box-roblox_list ul{
        max-width: 100%;
    }
}

.tp-box_roblox_next .box-roblox_list li{
    color: #000;
    margin-left: 1em;
    text-align: right;
    line-height: 1.7;
    transform: translateX(5em);
    opacity: 0;   
}
.tp-box_roblox_next .box-roblox_list.is-show li{
  animation: slideInRight 0.8s ease-out forwards;
}

@media screen and (min-width: 751px) {
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(2) li:nth-child(1){
        animation-delay: .4s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(3) li:nth-child(1){
        animation-delay: .6s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(2) li:nth-child(2){
        animation-delay: .8s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(3) li:nth-child(2){
        animation-delay: 1s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(2) li:nth-child(3){
        animation-delay: 1.2s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(3) li:nth-child(3){
        animation-delay: 1.4s;
    }
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(2) li:nth-child(1){
        animation-delay: .4s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(2) li:nth-child(2){
        animation-delay: .6s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(2) li:nth-child(3){
        animation-delay: .8s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(3) li:nth-child(1){
        animation-delay: 1s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(3) li:nth-child(2){
        animation-delay: 1.2s;
    }
    .tp-box_roblox_next .box-roblox_list.is-show ul:nth-child(3) li:nth-child(3){
        animation-delay: 1.4s;
    }
}

@media screen and (max-width: 750px) {
    .tp-box_roblox_next .box-roblox_list li{
        line-height: 1.65;
    }
}

.tp-box_roblox_next .box-roblox_list li span {
    vertical-align: middle;
}

/* works
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.tp-section_works-wrap{
}
.tp-section_works{
    padding: 3.5% 0 2.5%;
    position: relative;
    /* overflow: hidden; */
}

.tp-section_works-wrap .tp-section_works:before{
    content: "";
    background-color: #e6eb00;
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all .5s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.tp-section_works-wrap.is-show .tp-section_works:before{
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}

@media screen and (max-width: 750px) {
    .tp-section_works{
        padding: 12.5% 0 7.5%;
        /* background-image: url(../img/icon/icn_arw_03.png);
        background-position: 0% -17%;
        background-size: 22vw auto; */
    }
}

.tp-section_works-wrap .tp-section_works > *{
    position: relative;
}

.tp-section_works-wrap .tp-section_works::after {
    content: "";
    width: 16.8em;
    height: 37em;
    position: absolute;
    right: 0;
    bottom: calc(100% - 9.2em);
    z-index: 6;
    background: url(../img/icon/icn_arw_01.png) no-repeat 0% 100%;
    background-size: 14.8em auto;
  opacity: 0;
  transform: scale(0);
  transform-origin: center;
}

.tp-section_works-wrap.is-show .tp-section_works::after {
  animation: arrowPop .4s ease-out forwards;
}

@media screen and (min-width: 1700px) {
    .tp-section_works-wrap .tp-section_works::after {
        right: calc(50vw - 845px);
    }
}

@media screen and (min-width: 751px) and (max-width: 1480px) {
    .tp-section_works-wrap .tp-section_works::after {
        width: 15%;
        height: 100%;
        bottom: 92%;
        background-size: 100% auto;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_works-wrap .tp-section_works::after {
        display: none;
    }
}

.tp-section_works .sw-inner-box{
    max-width: 1100px;
    position: relative;
}

.tp-section_works-wrap .tp-section_works .sw-inner-box:after {
    content: "";
    width: 16em;
    height: auto;
    aspect-ratio: 255/152;
    position: absolute;
    top: 1.5em;
    left: calc(100% - 2em);
    z-index: 5;
    background: url(../img/icon/icn_arw_05.png) no-repeat 50% 50%;
    background-size: contain;
}

@media screen and (min-width: 751px) and (max-width: 1580px) {
    .tp-section_works-wrap .tp-section_works .sw-inner-box:after{
        display: none;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_works-wrap .tp-section_works .sw-inner-box:after{
        display: none;
    }
}


.tp-section_works .logo_roblox_b{
    margin-right: 2.1em;
    margin-top: .5em;
}
@media screen and (max-width: 750px) {
    .tp-section_works .logo_roblox_b{
        display: none;
    }
}
.tp-section_works .sw-ttl_wrap{
    margin-bottom: 1em;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-ttl_wrap{
        margin-bottom: 1.5em;
    }
}
.tp-section_works .sw-ttl_wrap .sw-flex-box{
    justify-content: space-between;
    align-items: center;
}
.tp-section_works .sw-ttl_wrap .sw-ttl{
    line-height: 1.1;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-ttl_wrap .sw-ttl {
        line-height: 1.1;
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        width: 100%;
    }
}

.tp-section_works .sw-ttl_wrap .sw-ttl .ft-ja{
    font-weight: 600;
    letter-spacing: .2em;
    display: inline-block;
    margin: 0 0 .5em 1em
}
.tp-section_works .sw-img{
    position: relative;
}
.tp-section_works .sw-img .sw-flex-box{
    flex-direction: row-reverse;
    display: block;
    position: relative;
}

.tp-section_works .sw-img .sw-flex-box .sw-picture{
    width: 86%;
    margin: 0 auto;
    position: relative;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-img .sw-flex-box .sw-picture {
        width: 93%;
    }
}
.tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en{
    position: absolute;
    top: 1em;
    left: 0;
    z-index: 1;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en {
        top: .5em;
        left: -1.8em;
        line-height: 1.75;
        text-indent: 3.5em;
    }
}
.tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en span{
    background: #fff;
    opacity: 0;
    display: inline-block;
    transition: transform 0.25s linear,
    opacity 0.05s linear;
    transform: rotate(-12deg) scale(1);
    line-height: 1.2;
    padding: 0 .4em;
}
.tp-section_works .sw-img .sw-flex-box .sw-picture.is-show .sw-txt_en span{
    animation: bangBang 0.2s linear forwards;
}
.tp-section_works .sw-img .sw-flex-box .sw-picture picture img{
    opacity: 0;
}
.tp-section_works .sw-img .sw-flex-box .sw-picture.is-show picture img{
  animation: poyoyon2 1s ease-in-out forwards;
}

@media screen and (max-width: 750px) {
    .tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en span {
        transform: rotate(-12deg);
    }
}

.tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en span:nth-child(1) {
    margin-left: -2.3em;
    margin-bottom: 1em;
    animation-delay: .6s;
    text-indent: 0;
}

.tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en span:nth-child(3) {
    margin-left: -4.5em;
    animation-delay: 1.6s;
}

@media screen and (max-width: 750px) {
    .tp-section_works .sw-img .sw-flex-box .sw-picture .sw-txt_en span{
        padding: .1em .5em;
    }
}
.tp-section_works .sw-btn-view_more{
    position: absolute;
    top: calc(100% - .42em);
    right: 0;
    animation: poyopoyo 2s ease-out infinite;
}

@media screen and (max-width: 750px) {
    .tp-section_works .sw-btn-view_more{
        top: calc(100% + .7em);
    }
}
.tp-section_works .sw-txt-cat{
    padding-bottom: 5em;
    padding-right: 1em;
    position: absolute;
    bottom: 0;
    left: 3%;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-txt-cat {
        bottom: inherit;
        left: inherit;
        top: calc( 100% + 3em );
        right: 6em;
        padding: 0;
        writing-mode: unset;
        line-height: 1.25;
    }
}
.tp-section_works .sw-ttl_02{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: -1em;
    position: relative;
    z-index: 2;
    width: 93%;
    margin: -.9em auto .6em;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-ttl_02 {
        width: 100%;
        margin: -1.1em auto .8em;
    }
}
.tp-section_works .sw-ttl_02 .ft-ja{
    background: #000;
    color: #fff;
    display: inline-block;
    font-weight: 600;
    line-height: 1.5;
    padding: 0 .4em;
}
.tp-section_works .sw-txt-box {
    width: 93%;
    margin: 0 auto;
    padding-right: 11%;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-txt-box {
        width: 64%;
        padding: 0;
        margin: 0;
        padding-left: 4%;
    }
}
.tp-section_works .sw-txt-box p{
    line-height: 1.55;
}
@media screen and (max-width: 750px) {
    .tp-section_works .sw-txt-box p{
        line-height: 1.55;
    }
}
.tp-section_works-list{
    position: sticky;
    top: 0;
}
.tp-section_works-list > section{
    position: sticky;
    top: 0;
    z-index: 1;
    /* height: 100vh; */
    padding: 5.5% 0 7%;
    overflow: hidden;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list > section{
        padding: 16.5% 0 11%;
    }
}
.tp-section_works-list > section .sw-inner-box > *{
    position: relative;
    z-index: 2;
}
.tp-section_works-list > section .sw-inner-box{
    max-width: 1030px;
}
.tp-section_works-list > section .sw-inner-box:before {
    z-index: 1;
    content: "";
    width: 42%;
    height: 89%;
    position: absolute;
    left: 56%;
    bottom: 7%;
}
.tp-section_works-list > section:nth-child(1){
    top: 0;
    background: #000;
    color: #fff;
    z-index: 1;
    clip-path: polygon(0 0, 100% 0%, 100% calc(100% - 4vw), 0 100%);
}
.tp-section_works-list > section:nth-child(1) .sw-inner-box:before{
    background: url(../img/bg/bg_num_01.png) no-repeat 50% 50%;
    background-size: contain;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list > section:nth-child(1) .sw-inner-box:before{
        width: 72%;
        height: 43%;
        left: 21%;
        bottom: 7%;
    }
}
.tp-section_works-list > section:nth-child(2){
    top: 1.5vw;
    background: #fff;
    z-index: 2;
    clip-path: polygon(0 4vw, 100% 0, 100% 100%, 0 calc(100% - 1vw));
    padding: 10% 0 6.5%;
    margin-top: -4vw;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list > section:nth-child(2){
        padding: 16% 0 6.5%;
    }
}
.tp-section_works-list > section:nth-child(2) .sw-inner-box:before{
    background: url(../img/bg/bg_num_02.png) no-repeat 50% 50%;
    background-size: contain;
    width: 53%;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list > section:nth-child(2) .sw-inner-box:before{
        width: 77%;
        height: 39%;
        left: 23%;
        bottom: 15%;
        background-size: auto 100%;
        background-position: 0 0;
    }
}
.tp-section_works-list > section:nth-child(3){
    top: 10vw;
    background: #000;
    color: #fff;
    z-index: 3;
    clip-path: polygon(0 0, 100% 2.6vw, 100% calc(100% - 3.4vw), 0 100%);
    padding: 5.5% 0 7.5%;
}

@media screen and (max-width: 750px) {
    .tp-section_works-list > section:nth-child(3){
        padding: 11% 0 14.5%;
    }
}
.tp-section_works-list > section:nth-child(3) .sw-inner-box:before{
    background: url(../img/bg/bg_num_03.png) no-repeat 50% 50%;
    background-size: contain;
    height: 90%;
    width: 56%;
    bottom: 20%;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list > section:nth-child(3) .sw-inner-box:before{
        width: 77%;
        height: 31%;
        left: 23%;
        bottom: 21%;
        background-size: auto 100%;
        background-position: 0 0;
    }
}
.tp-section_works-list > section:nth-child(4){
    background: #fff;
    height: 4em;
    z-index: 4;
    clip-path: polygon(0 3.4vw, 100% 0%, 100% 100%, 0% 100%);
    padding:0;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list .sw-flex-box{
        flex-direction: column;
    }
}
@media screen and (max-width: 750px) {
    .tp-section_works-list .sw-box{
        width: 93%;
        margin: 7% auto 0;
    }
}
@media screen and (max-width: 750px) {
    .tp-section_works-list .sw-box p{
        line-height: 1.5;
    }
}

.tp-section_works-list .sw-ttl{
    line-height: 1.35;
    width: 68%;
    margin-bottom: .7em;
    white-space: nowrap;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list .sw-ttl{
        width: 100%;
        overflow: hidden;
    }
}

.tp-section_works-list > section:nth-child(3) .sw-ttl{
    margin-top: .7em;
    line-height: 1.45;
    margin-bottom: .65em;
}

@media screen and (max-width: 750px) {
    .tp-section_works-list > section:nth-child(3) .sw-ttl .bg_gray{
        background: none;
        padding: 0;
    }
}
.tp-section_works-list .sw-ttl span{
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    padding: 0 .2em .05em;
    line-height: 1;
}

.tp-section_works-list .bg_gray{
    background: #282828;
}

.tp-section_works-list .bg_l-gray{
    background: #e8e8e8;
}

.tp-section_works-list .sw-box p{
    letter-spacing: -.05em;
}
.tp-section_works-list .sw-fuki-box{
    width: 32%;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list .sw-fuki-box{
        width: auto;
        align-self: flex-end;
        padding: 2% 4.5% 0 0;
    }
}

.tp-section_works-list .sw-fuki-box .sw-flex-box{
    align-content: center;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 750px) {
    .tp-section_works-list .sw-fuki-box .sw-flex-box{
        flex-direction: row;
    }
}

.tp-section_works-list .sw-fuki-box .move_face{
    margin: 0 1.2em 0 .4em;
    height: 2em;
}

.tp-section_works-list .sw-fuki-box .sw-fukidashi{
    opacity: 0;
}
.tp-section_works-list .is-show .sw-fuki-box .sw-fukidashi{
    transform-origin: bottom center;
    animation: balloonShow 0.4s ease-out forwards;
    animation-delay: 0.6s;
}

.sw-section_works_top,
.tp-section_works_top{
    overflow: hidden;
}
/* ticker */
.tp-section_works_top .sw-ticker-bg-wrap{
  border-top: 1px solid #000;
}

.sw-section_works_top .sw-ticker-bg,
.tp-section_works_top .sw-ticker-bg {
  width: 100%;
  height: 4.2em; /* 表示したい高さ */
  padding: 1.5em 0;
  background-image: url('../img/ticker/img_ticker_01@2x.png?ver02');
  background-repeat: repeat-x; /* 横方向に背景画像を繰り返す */
  background-size: auto 1em;
  animation: loop 10s linear infinite; /* アニメーションの設定 */
  border-bottom: 1px solid #000;
}

.tp-section_works_top .ticker-bg-01 {
  background-image: url('../img/ticker/img_ticker_01@2x.png?ver02');
}
.tp-section_works_top .ticker-bg-02 {
  background-image: url('../img/ticker/img_ticker_02@2x.png');
  animation: loop2 10s linear infinite; /* アニメーションの設定 */
}
.tp-section_works_top .ticker-bg-03 {
  background-image: url('../img/ticker/img_ticker_03@2x.png');
}

.sw-section_wrap-works_news{
    border-top: 1px solid #000;    
}
.tp-section_wrap-works_news .sw-ticker-bg,
.sw-section_wrap-works_news .sw-ticker-bg {
  width: 100%;
  height: 1.46em;
  background-image: url('../img/ticker/img_ticker_01@2x.png');
  background-repeat: repeat-x; /* 横方向に背景画像を繰り返す */
  background-size: auto 1em;
  animation: loop 10s linear infinite; /* アニメーションの設定 */
}
.sw-section_wrap-works_news .sw-ticker-bg {
    padding: 1.5em 0;
    border-bottom: 1px solid #000;
}
.tp-section_wrap-works_news .ticker-bg-01,
.sw-section_wrap-works_news .ticker-bg-01 {
  background-image: url('../img/txt/img_ticker_txt_01@2x.png');
}
.tp-section_wrap-works_news .ticker-bg-02,
.sw-section_wrap-works_news .ticker-bg-02 {
  background-image: url('../img/txt/img_ticker_txt_02@2x.png');
  animation: loop2 10s linear infinite; /* アニメーションの設定 */
}
.sw-section_wrap-works_news .ticker-bg-04 {
    padding: 2.45em 0;
    background-color: #fff;
  background-image: url('../img/ticker/img_ticker_04@2x.png');
  animation: loop 10s linear infinite; /* アニメーションの設定 */
}
.sw-section_wrap-works_news .ticker-bg-05 {
    background-image: url('../img/ticker/img_ticker_05@2x.png');
    animation: loop 10s linear infinite; /* アニメーションの設定 */
}

.l-footer .sw-ticker-bg {
  width: 100%;
  height: 3.46em;
  background-image: url('../img/txt/img_ticker_txt_f.png?0720');
  background-repeat: repeat-x; /* 横方向に背景画像を繰り返す */
  background-size: auto 1em;
  animation: loop 10s linear;
}
.l-footer .sw-ticker-bg-wrap {
    position: absolute;
    top: -6%;
    left: 0;
    z-index: 5;
    height: 7em;
    width: 100%;
}
@media screen and (max-width: 750px) {
    .l-footer .sw-ticker-bg-wrap{
        top: -11%;
    }
}
.l-footer .sw-ticker-bg {
  width: 100%;
  height: 1.46em;
  background-image: url('../img/txt/img_ticker_txt_f.png');
  background-repeat: repeat-x; /* 横方向に背景画像を繰り返す */
  background-size: auto 1em;
  animation: loop 10s linear infinite; /* アニメーションの設定 */

}

.sw-animation_box{
    height: 18em;
    position: relative;
}
@media screen and (max-width: 750px) {
    .sw-animation_box{
        margin-bottom: 23.5%;
    }
}
.sw-animation_box .sw-inner-box{
    height: 100%;
    max-width: 920px;
    width: 80%;
}
@media screen and (max-width: 750px) {
    .sw-animation_box .sw-inner-box{
        width: 100%;
    }
}
.sw-animation_box .sw-box-catch {
    position: absolute;
    width: 35.5em;
    height: auto;
    aspect-ratio: 19/7;
    opacity: 0;
    transition: transform 0.25s linear,
    opacity 0.05s linear;
}
@media screen and (max-width: 750px) {
    .sw-animation_box .sw-box-catch {
        width: 38.5em;
    }
}
.sw-animation_box.is-show .sw-box-catch {
      animation: bangBang 0.6s cubic-bezier(.16, 1, .3, 1) forwards;
}
.sw-animation_box .sw-box-catch.catch-01 {
    background: url(../img/top/img_ticket_01.png) no-repeat 50% 50%;
    background-size: contain;
    right: 16em;
    top: -16.5em;
    transform: rotate(-7deg);
    z-index: 1;
    width: 31.5em;
    aspect-ratio: 19 / 8;
      transform: rotate(-7deg) scale(1); /* 開始時のスケール */
}
@media screen and (max-width: 750px) {
    .sw-animation_box .sw-box-catch.catch-01 {
        right: 13.5em;
        top: -17.5em;
        width: 34em;
    }
}
.sw-animation_box.is-show .sw-box-catch.catch-01 {
      animation-delay: 0.6s;
}
.sw-animation_box .sw-box-catch.catch-02 {
    background: url(../img/top/img_ticket_02.png) no-repeat 50% 50%;
    background-size: contain;
    right: 1em;
    top: -4.8em;
    transform: rotate(8deg);
    z-index: 2;
      transform: rotate(8deg) scale(1);
        opacity: 0;
        transition: transform 0.25s ease, opacity 0.05s ease;
        transition-delay: calc(var(0.0) + 1.2s);
}

@media screen and (max-width: 750px) {
    .sw-animation_box .sw-box-catch.catch-02 {
        right: 1em;
        top: -5em;
    }
}
.sw-animation_box.is-show .sw-box-catch.catch-02 {
      animation-delay: 0.2s;
}
.sw-animation_box .sw-box-catch.catch-03 {
    background: url(../img/top/img_ticket_03.png) no-repeat 50% 50%;
    background-size: contain;
    left: -5em;
    top: 2.7em;
    z-index: 3;
      transform: rotate(-3deg) scale(1);
}
@media screen and (max-width: 750px) {
    .sw-animation_box .sw-box-catch.catch-03 {
        left: 3em;
        top: 10.5em;
    }
}
.sw-animation_box.is-show .sw-box-catch.catch-03 {
      animation-delay: 1.0s;
}

.tp-section_works_top .sw-txt-box_01{
    margin-bottom: 6%;
}
.tp-section_works_top .sw-txt-box_01 .sw-ttl{
    text-align: center;
}
@media screen and (max-width: 750px) {
    .tp-section_works_top .sw-txt-box_01 .sw-ttl{
        line-height: 1.1;
    }
}
.tp-section_works_top .sw-txt-box_01 .sw-box{
    width: 80%;
    max-width: 930px;
    margin: 0 auto;
}
@media screen and (max-width: 750px) {
    .tp-section_works_top .sw-txt-box_01 .sw-box {
        width: 94%;
        margin: 5% auto;
    }
}
@media screen and (max-width: 750px) {
    .tp-section_works_top .sw-txt-box_01 .sw-box p {
        line-height: 1.5;
    }
}


.tp-section_works_top .sw-txt-box_03{
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}
@media screen and (max-width: 750px) {
    .tp-section_works_top .sw-txt-box_03{
        width: 100%;
        overflow: hidden;
    }
}
.tp-section_works_top .sw-txt-box_03 .sw-txt{
    text-align: center;
    line-height: 1.1;
    padding: 2.2em 0;
}

@media screen and (max-width: 750px) {
    .tp-section_works_top .sw-txt-box_03 .sw-txt{
        display: inline-block;
        white-space: nowrap;
        animation: marquee 15s linear infinite;
        padding: 1.7em 0 1.3em;
    }
}

/* other works
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
.tp-section_wrap-works_news{
    overflow: hidden;
}
.section_wrap-works_news_inner{
    position: relative;
    /* margin-top: 6%; */
    margin-top: 10%;
}
@media screen and (max-width: 750px) {
    .section_wrap-works_news_inner{
        margin-top: 17%;
    }
}
.section_wrap-works_news_inner:before{
    content: "";
    background: #f215ff;
    width: 100%;
    height: 100%;
    position: absolute;
    transform: rotate(-5deg);
    top: -2%;
    right: -5%;
    transition: all .4s;
}
.section_wrap-works_news_inner.is-show:before{
    transform: rotate(-2.5deg);
    top: -7%;
}
@media screen and (max-width: 750px) {
.section_wrap-works_news_inner.is-show:before {
    top: -5%;
    height: 104%;
    width: 107%;
    right: 0;
}
}
/* works */
.tp-section_other-works{
    position: relative;
    padding: 5% 0 5%;
}
.tp-section_other-works:before{
    content: "";
    background: #0077ff;
    width: 96%;
    height: 100%;
    position: absolute;
    transition: all .4s;
    transform: rotate(-1.5deg);
    top: 1%;
    left: -1.5%;
}
@media screen and (max-width: 750px) {
    .tp-section_other-works:before{
        width: 102%;
    }
}
.tp-section_other-works.is-show:before{
    transform: rotate(1.5deg);
    top: -1%;
}
.tp-section_other-works .sw-inner-box{
    width: 70%;
    position: relative;
    z-index: 1;
}
@media screen and (max-width: 750px) {
    .tp-section_other-works .sw-inner-box{
        width: 100%;
    }
}
.tp-section_other-works .sw-ttl_top{
    text-align: center;
}
.tp-section_other-works .sw-ttl_top span{
    display: block;
}
.tp-section_other-works .sw-other-works-list li{
    border-bottom:1px solid #000;
    padding:2.5em 3.5em;
    overflow:hidden;
}

@media screen and (max-width: 750px) {
    .tp-section_other-works .sw-other-works-list li{
        padding:2.5em 1.5em;
    }
}
@media screen and (max-width: 750px) {
    .sw-other-works-list {
        width: 90%;
        margin: 0 auto;
    }
}

/* 全体レイアウト */
.sw-other-works-list .sw-works-list-inner a{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}

@media screen and (max-width: 750px) {
    .sw-other-works-list .sw-works-list-inner a{
        flex-direction: column-reverse;
    }
}

/* 左側 */
.sw-other-works-list .sw-content-box{
    width:44%;
    display:flex;
}
@media screen and (max-width: 750px) {
    .sw-other-works-list .sw-content-box {
        width: 100%;
        display: flex;
    }
}
/* 番号 */
@media screen and (min-width: 751px) {
.sw-other-works-list .sw-num{
    opacity:0;
    transform:translateY(20px);
    max-height: 0;

    transition:
        opacity .45s linear,
        transform .45s linear;
}
}
@media screen and (max-width: 750px) {
.sw-other-works-list .sw-num{
    position: absolute;
        top: 1.5em;
        left: 1.2em;
}
}

/* タイトルは常時表示 */
.sw-other-works-list .sw-ttl-box-wrap{
    width:100%;
}

.sw-other-works-list .sw-ttl-box{
    display:flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction:row;
    flex-wrap: nowrap;
}

.sw-other-works-list .sw-ttl-box p{
    margin-left: 1em;
    line-height: 1.5;
}
@media screen and (min-width: 751px) {
/* 説明文だけ閉じる */
.sw-other-works-list .sw-txt-box{

    max-height:0;
    overflow:hidden;

    opacity:0;
    transform:translateY(-20px);

    transition:
        max-height .6s linear,
        opacity .45s linear,
        transform .45s linear;
}
}
@media screen and (max-width: 750px) {
    .sw-other-works-list .sw-img-box{
        width: 77%;
        margin-left: auto;
    }
}
@media screen and (min-width: 751px) {
/* 画像も閉じる */
.sw-other-works-list .sw-img-box{

    width:54%;

    max-height:0;
    /* overflow:hidden; */

    opacity:0;
    transform:translateY(-20px);

    transition:
        max-height .6s linear,
        opacity .45s linear,
        transform .45s linear;
}
}
@media screen and (min-width: 751px) {
/* hover */
.sw-other-works-list li:hover .sw-num,
.sw-other-works-list li:hover .sw-txt-box,
.sw-other-works-list li:hover .sw-img-box{

    max-height:500px;

    opacity:1;
    transform:translateY(0);

}
}

@media screen and (min-width: 751px) {
.sw-other-works-list li:after{
    content: "VIEW MORE";
    font-size: clamp(.7rem,.93vw,1.2rem);
    color: #000;
    border-radius: 50%;
    position: absolute;
    right: 0;
    bottom: calc( 50% - .5em);
    font-family: anisette-std, sans-serif;
    font-weight: 700;
    font-style: normal;
}
.sw-other-works-list li:hover:after{
    visibility: hidden;
    opacity: 0;
    height: 0;
}
.sw-other-works-list li .sw-img-box:after{
    transition: all .4s;
    visibility: hidden;
    opacity: 0;
    height: 0;
}
/* .sw-other-works-list li:hover .sw-img-box:after{
    content: "VIEW MORE";
    visibility: visible;
    opacity: 1;
    font-size: clamp(.7rem,.93vw,1.2rem);
    width: 10em;
    height: auto;
    aspect-ratio: 1/1;
    background: #000;
    color: #fff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    position: absolute;
    right: 0;
    bottom: -5em;
    font-family: anisette-std, sans-serif;
    font-weight: 400;
    font-style: normal;
} */
}

/* 展開高さ */
.sw-other-works-list li:hover .sw-num,
.sw-other-works-list li:hover .sw-txt-box,
.sw-other-works-list li:hover .sw-img-box{

    max-height:500px;

}
.tp-section_other-works .sw-btm-box{
    width: 94.5%;
    margin: 3.5% 0 0 auto;
}
@media screen and (max-width: 750px) {
    .tp-section_other-works .sw-btm-box {
        width: 80%;
        margin: 3% auto 4%;
    }
}
@media screen and (max-width: 750px) {
    .tp-section_other-works .sw-btm-box p {
        line-height: 1.5;
    }
}
/* news */

.tp-section_news{
    padding: 2% 0 12%;
}
@media screen and (max-width: 750px) {
    .tp-section_news{
        padding: 2% 0 9%;
    }
}
.tp-section_news .sw-inner-box{
    width: 70%;
    max-width: 1190px;
}
@media screen and (max-width: 750px) {
    .tp-section_news .sw-inner-box{
        width: 80%;
    }
}
@media screen and (max-width: 750px) {
    .tp-section_news .sw-ttl {
        flex-direction: column-reverse;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        line-height: 1.4;
    }
}
@media screen and (min-width: 751px) {
.tp-section_news .sw-ttl .ft-ja{
    margin-left: 1em;
}
}

.tp-section_news .sw-news-list{
    margin-top: 1.5%;
}
.tp-section_news .sw-news-list li a,
    .tp-section_news .sw-news-list li span{
    justify-content: space-between;
    padding: 1.25em 5em 1.25em 0;
    position: relative;
}
@media screen and (max-width: 750px) {
    .tp-section_news .sw-news-list li a,
    .tp-section_news .sw-news-list li span{
        flex-direction: column;
    }
}

.tp-section_news .sw-news-list li a:before{
    content: "";
    position: absolute;
    right: 1em;
    top: calc(50% + .25em);
    width: 1.5em;
    height: 1px;
    background: #000;
}
.tp-section_news .sw-news-list li a:after{
    content: "";
    position: absolute;
    right: 1.75em;
    top: calc(50% - .5em);
    height: 1.5em;
    width: 1px;
    background: #000;
}

.tp-section_news .sw-news-list li time{
    width: 23%;
}

.tp-section_news .sw-news-list li p{
    width: 77%;
}


/* member
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.tp-section_member{
    margin-top: 1%;
    margin-bottom: -40px;
}

.tp-section_member .sw-inner-box{
    max-width: 1190px;
    width: 70%;
}
@media screen and (max-width: 750px) {
    .tp-section_member .sw-inner-box{
        width: 81%;
    }
}
.tp-section_member .sw-ttl{
    margin-bottom: 2em;
}

@media screen and (max-width: 750px) {
    .tp-section_member .sw-ttl {
        margin-bottom: .8em;
        display: flex;
        flex-direction: column-reverse;
        line-height: 1.35;
    }
}
.tp-section_member .sw-ttl .ft-ja{
    margin-left: 1em;
    font-weight: 600;
}
@media screen and (max-width: 750px) {
    .tp-section_member .sw-ttl .ft-ja{
        margin-left: 0;
        letter-spacing: .1em;
    }
}

/* 親コンテナ：はみ出た部分を隠す */
.slide_ticker-container {
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
}

/* リスト：横並びにしてアニメーションを適用 */
.slide_ticker-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  animation: scroll-left 10s linear infinite;
}

/* リストアイテム：好みの間隔（ギャップ）を指定 */
.slide_ticker-list li {
  padding: 0 30px;
  width: 20%;
  max-width: 200px;
}

/* マウスホバー時にスクロールを一時停止させる場合 */
/* .slide_ticker-container:hover .ticker-list {
  animation-play-state: paused;
} */

/* スライダー全体 */
.slider-wrapper {
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
}
/* スライド3枚のグループ */
.slider {
  animation: scroll-left 20s infinite linear .5s both;
  display: flex; /* スライド3枚を横並び */
}
/* スライド */
.slider li {
  width: calc(100vw / 7); /* 3はスライドの枚数 */
    aspect-ratio: 1 / 1;
    margin: 0 1em;
    text-align: center;
}
@media screen and (max-width: 750px) {
    .slider li {
        width: calc(100vw / 3.5);
        margin:0 1.7em;
    }
}
.slider li img{
    height: 100%;
    width: auto;
}

/* マウスホバー時にスクロールを一時停止させる場合 */
/* .slider-wrapper:hover .slider {
  animation-play-state: paused;
} */


/* journey
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.tp-section_journey{
    background: #000;
    padding: 7% 0;
    position: sticky;
    top: 0;
    min-height: 100vh;
    overflow: hidden;
}
@media screen and (max-width: 750px) {
    .tp-section_journey{
        padding: 14% 0;
    }
}

.tp-section_journey .sw-inner-box{
    max-width: 1170px;
}

@media screen and (max-width: 750px) {
    .tp-section_journey .sw-inner-box {
        width: 86.5%;
    }
}
.tp-section_journey .sw-ttl{
    color: #fff;
    white-space: nowrap;
    line-height: 1.1;
    margin-bottom: .85em;
}

@media screen and (max-width: 750px) {
    .tp-section_journey .sw-ttl{
        color: #1a1a1a;
        writing-mode: vertical-rl;
        position: absolute;
        top: -1.1em;
        right: 0;
        z-index: -1;
    }
}

@media screen and (max-width: 750px) {
    .tp-section_journey .sw-txt-box_01 .sw-txt {
        margin: 10% 4% 0;
        line-height: 1.7;
    }
}
.tp-section_journey .sw-txt-box_01 .sw-txt span{
    background: #f60;
    display: inline-block;
    line-height: 1.1;
    padding: .2em 0 .05em .25em;
}
@media screen and (max-width: 750px) {
    .tp-section_journey .sw-txt-box_01 .sw-txt span{
        display: inline;
        -webkit-box-decoration-break: clone;
        box-decoration-break: clone;
        padding: 0 .2em;
        line-height: 1;
    }
}
.tp-section_journey .sw-txt-box_02 {
    margin-bottom: 2%;
    margin-top: 4%;
}
@media screen and (max-width: 750px) {
    .tp-section_journey .sw-txt-box_02 {
        margin: 8% 0 8% 3.5%;
    }
}
.tp-section_journey .sw-txt-box_02 p{
    color: #fff;
    margin-bottom: 1.5em;
}
@media screen and (max-width: 750px) {
    .tp-section_journey .sw-link{
        margin-left: 3.5%;
    }
}
.tp-section_journey .sw-link a{
    color: #f60;
}
/* .tp-section_journey_02{
    height: 150px;
    width: 100%;
    background: #f00;
    position: sticky;
    top: 10px;
}
.tp-section_journey_03{
    height: 150px;
    width: 100%;
    background: #f60;
    position: sticky;
    top: 20px;
} */


/* footer内 member
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
.sw-f_sticky{
    background: #000;
    position: sticky;
    top: 0;
    min-height: 30vh;
    overflow: hidden;
}
.sw-section_powers{
    background: #000;
    padding: 5.5% 0;
}

@media screen and (max-width: 750px) {
    .sw-section_powers{
        padding: 14% 0;
    }
}

.sw-section_powers *{
    color: #fff;
}

.sw-section_powers .sw-box-ttl{
    text-align: center;
}
@media screen and (max-width: 750px) {
    .sw-section_powers .sw-box-ttl .sw-ttl{
        line-height: 1.2;
        margin-bottom: 4%;
    }
}

.sw-section_powers .sw-box-ttl .sw-txt span{
    background: #fff;
    color: #000 !important;
    display: inline-block;
    padding: .22em .45em;
    line-height: 1;
    letter-spacing: -.04em;
    color: #000;
}
@media screen and (max-width: 750px) {
    .sw-section_powers .sw-box-ttl .sw-txt span{
        letter-spacing: .04em;
    }
}
.sw-section_powers .sw-power_list{
    margin-top: 4%;
}

@media screen and (max-width: 750px) {
    .sw-section_powers .sw-power_list{
        margin-top: 9%;
    }
}
.sw-section_powers .sw-power_list ul {
    justify-content: center;
    margin-bottom: 5%;
    left: 1%;
    position: relative;
    max-width: 980px;
    width: 95%;
    margin: 0 auto 2%;
}
@media screen and (max-width: 750px) {
    .sw-section_powers .sw-power_list ul {
        justify-content: space-between;
        margin-bottom: 5%;
        width: 78%;
        margin: 0 auto;
    }
}

.sw-section_powers .sw-power_list ul li {
	width: 25%;
	opacity: 0;
}
@media screen and (max-width: 750px) {
    .sw-section_powers .sw-power_list ul li{
        width: 45%;
        margin-bottom: 7%;
    }
}
.sw-section_powers .sw-power_list.is-show ul li {
	transform: translateY(40px);
	animation: fadeUp .7s ease forwards;
}

.sw-section_powers .sw-power_list.is-show li:nth-child(1) {
	animation-delay: 0s;
}

.sw-section_powers .sw-power_list.is-show li:nth-child(2) {
	animation-delay: .4s;
}

.sw-section_powers .sw-power_list.is-show li:nth-child(3) {
	animation-delay: .8s;
}

.sw-section_powers .sw-power_list.is-show li:nth-child(4) {
	animation-delay: 1.2s;
}

.sw-section_powers .sw-power_list li figure{
    display: block;
    margin: 0 auto;
    width: 85%;
}
.sw-section_powers .sw-power_list li figure img{
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 421 / 440;
}
.sw-section_powers .sw-power_list li p{
    text-align: center;
}

.sw-section_powers .sw-power_list .sw-inner-box > p{
    max-width: 950px;
    margin: 0 auto;
    line-height: 1.65;
}
@media screen and (max-width: 750px) {
    .sw-section_powers .sw-power_list .sw-inner-box > p{
        width: 88%;
        margin: 5% auto;
        line-height: 1.5;
    }
}
/*━―…‥・Slide_Menu・‥…―━━*/

#Menu {
    width: 66px;
    height: 18px;
    z-index: 10101;
    position: fixed;
    top: 3.6vw;
    right: calc(50% - 600px);
    cursor: pointer;
}
@media screen and (max-width: 1180px) {
    #Menu {
        right: 2.5%;
    }
}
@media screen and (max-width: 750px) {
    #Menu {
        right: 5%;
        width: 13.5vw;
        top: 7.5vw;
    }
}
#Menu span {
    height: 1px;
    width: 100%;
    background: #fff;
    display: block;
    transition: all 0.4s;
    position: absolute;
    left: 0;
}
#Menu span:nth-of-type(1) {
    top: 10px;
}
#Menu span:nth-of-type(2) {
    position: absolute;
    bottom: 10px;
}
body.open #Menu span{
        background: #fff;
        position: absolute;
        top: 50%;
        left: 0;
    }
    body.open #Menu span:nth-of-type(1) {
        -webkit-transform: translateY(-.5vw) rotate(-25deg);
        transform: translateY(-.5vw) rotate(-25deg);
        width: 95%;
    }
    body.open #Menu span:nth-of-type(2) {
        -webkit-transform: translateY(-.5vw) rotate(25deg);
        transform: translateY(-.5vw) rotate(25deg);
        width: 95%;
    }
#Slide_Menu{
    display: none;
    position: fixed;
    top: -100%;
    right: 0;
    width: 50%;
    max-width: ;
    height: auto;
    z-index: 10002;
    box-sizing:border-box;
    padding: 9.5vw 0 5.5vw 0;
    font-size:0;
    transition: all .4s;
}
@media screen and (min-width: 751px) {
    #Slide_Menu{
        width: 85%;
        max-width: 860px;
    }
}
@media screen and (max-width: 750px) {
    #Slide_Menu{
        width: 100%;
        padding: 28.5vw 0 17.5vw;
    }
}
#Slide_Menu:before{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 2.5%;
    background: #000;
    transform: rotate(-3deg) translateY(-7.5%) translateX(1%);
}
@media screen and (max-width: 750px) {
    #Slide_Menu:before{
        left: .5%;
    }
}
#Slide_Menu > *{
}
.open #Slide_Menu{
    display: block;
}
#Slide_Menu .sw-flex-box{
    align-items: flex-end;
    justify-content: flex-start;
}
#Slide_Menu > *{
    width:100%;
    height:100%;
    position: relative;
}
#Slide_Menu nav ul li{
    margin-bottom: 1.5em;
}
@media screen and (max-width: 750px) {
    #Slide_Menu nav ul li{
        margin-bottom: 1.2em;
    }
}
#Slide_Menu nav ul li a .ft-anisette_bold{
  transition: transform .25s;
}

#Slide_Menu nav ul li a:hover .ft-anisette_bold {
  transform: skewX(12deg);
  color: #ff6600;
}

#Slide_Menu nav ul li:nth-child(even) a:hover .ft-anisette_bold {
  transform: skewX(-12deg);
}
#Slide_Menu nav ul li span{
    display: block;
    text-align: left;
    line-height: 1.4;
}
#Slide_Menu .sw-slide_menu-inner{
    padding: 0 5% 0 12.5%;
}
@media screen and (max-width: 750px) {
#Slide_Menu .sw-fuki-box {
    position: absolute;
    right: 0;
    bottom: 0;
}
}
@media screen and (max-width: 750px) {
    #Slide_Menu .sw-slide_menu-inner{
        padding: 0 0 0 18.5%;
    }
}
    #Slide_Menu .Btn{
        margin-top: 5%;
    }
    #Slide_Menu #Navi_Menu {
        margin: 0;
        width: 100%;
        padding: 24vw 0 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: 123vw;
        transition: all .4s;
        visibility: hidden;
        opacity: 0;
    }
    body.open #Slide_Menu #Navi_Menu{
        visibility: visible;
        opacity: 1;
    }

    #Slide_Menu ul li {
        text-align: center;
    }
    #Slide_Menu ul li.about img {
        width: 30.54vw;
    }
    #Slide_Menu ul li.mode img {
        width: 27vw;
    }
    #Slide_Menu ul li.roadmap img {
        width: 46vw;
    }
    #Slide_Menu ul li a {
        color: #fff;
    }
    #Slide_Menu *{
        color: #fff;
    }
    #Slide_Menu img{
        width:100%;
    }

.layer{
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    background: transparent;
    z-index: 1;
    display: none;
}

/* accordion */

    /* 各アコーディオンパネル（初期状態は均等幅） */
    .accordion-item {
      cursor: pointer;
      /* 伸縮スピードを滑らかにする設定 */
      transition: flex 0.6s cubic-bezier(0.25, 1, 0.3, 1);
    }

    /* 【今回の肝】ホバーした要素を大きく広げる */
    .accordion-container:hover .accordion-item:hover {
      flex: 3; /* 他の要素を縮ませ、自分を3倍の比率に広げる */
    }

    /* 【今回の肝】ホバーされていない他の要素を自動で細く縮ませる */
    .accordion-container:hover .accordion-item:not(:hover) {
      flex: 0.6; /* 1未満にすることで、よりシャープに閉じます */
    }

    /* パネル内のコンテンツ領域 */
    .item-content {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 30px;
      box-sizing: border-box;
      background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      height: 100%;
    }

    /* パネルのタイトル */
    .item-title {
      font-size: 1.8rem;
      font-weight: bold;
      margin: 0 0 10px 0;
      white-space: nowrap; /* 幅が狭いときに文字が折り返して崩れるのを防ぐ */
    }

    /* パネル内の詳細説明テキスト（閉じてる時は隠す） */
    .item-text {
      margin: 0;
      font-size: 1rem;
      line-height: 1.5;
      color: #ccc;
      
      /* アニメーション：閉じている時は透明＆少し下へ、開くと浮き上がる */
      opacity: 0;
      transform: translateY(20px);
      transition: opacity 0.4s ease, transform 0.4s ease;
      transition-delay: 0.1s; /* 横幅が広がりきる直前に文字を出す */
    }

    /* ホバーされたパネルの中の詳細テキストだけを表示する */
    .accordion-item:hover .item-text {
      opacity: 1;
      transform: translateY(0);
    }

/* animation */

.js-animation.slideup{
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all .7s;
}

.js-animation.slideup.is-show{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}


/* 下層ページ共通 */
/* 黒背景 */
.l-pages .l-header{
    background: #000;
}

.l-pages .l-wrapper{
    background: #000 !important;
}


.l-pages .l-wrapper .l-contents{
    color: #fff;
    padding-top: 12.6%;
}

@media screen and (max-width: 750px) {
    .l-pages .l-wrapper .l-contents {
        color: #fff;
        padding-top: 32vw;
    }
}

/*色背景*/
.l-pages_main .l-header{
    background: #ccc;
}
@media screen and (min-width: 1601px) {
    .l-pages_main .l-header{
        padding: 35px 0 10px;
        max-height: 100px;
    }
}

.l-pages_main .l-wrapper{
}


.l-pages_main .l-wrapper .l-contents{
    padding-top: calc(2.8em + 4.4%);
    position: relative;
}

@media screen and (min-width: 1601px) {
    .l-pages_main .l-wrapper .l-contents {
    padding-top: 100px;
    }
}
@media screen and (max-width: 750px) {
    .l-pages_main .l-wrapper .l-contents {
        padding-top: 15.5vw;
    }
}
.l-pages_main .sw-page-header{
    padding: 0 0 2%;
    position: relative;
}

.l-pages_main .sw-page-header:before {
    content: "";
    background: #ccc;
    width: 100%;
    height: 85%;
    clip-path: polygon(0 0, 100% 0%, 200% 0, 0 calc(90% - .55vw));
    position: absolute;
    left: 0;
    top: 0;
}

.l-pages_main .sw-page-header:after{
    content: "";
    background: #ccc;
    width: 100%;
    height: 50%;
    position: absolute;
    left: 0;
    bottom: calc(100% - 5px);
    z-index: -1;
}

.sw-page-header{
    
}

@media screen and (max-width: 750px) {
    .sw-page-header .sw-ttl-title{
        text-align: left;
        padding-left: 2.5%;
    }
}

.sw-page-header .sw-ttl-title span{
    background: #fff;
    color: #000;
    display: inline-block;
    padding: .22em .45em;
    line-height: 1;
    letter-spacing: -.04em;
}
.l-pages_main .sw-page-header .sw-ttl-title{
    margin-top: 11%;
}

.sw-page-header .sw-title-list li{
    border-left: 1px solid #fff;
    padding: 0 1.45em;
    line-height: 1.1;
}
.l-pages_main .sw-page-header .sw-title-list li{
    border-color: #000;
}

@media screen and (max-width: 750px) {
    .l-pages_main .sw-page-header .sw-ttl-title{
        margin-top: 13%;
        padding-left: 14.5%;
    }
}
.l-pages_main .sw-page-header .sw-ttl-title span{
    background: #444;
    padding: .25em .45em;
    min-width: 7.25em;
    text-align: center;
    margin-left: .2em;
  transform-origin: top left;
  animation: signTilt 1.4s cubic-bezier(.2, 1, .3, 1) forwards;
  letter-spacing: .01em;
}

@media screen and (max-width: 750px) {
    .sw-page-header .sw-ttl-title span {
        padding: .3em .5em .3em .8em;
        letter-spacing: .08em;
    }
}

.sw-breadcrumbs ol{
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
}
.sw-breadcrumbs ol li{
    position: relative;
    /* border: 1px solid; */
}
.l-pages_main .sw-breadcrumbs ol li{
    color: #fff;
}
.sw-breadcrumbs ol li:not(:last-child){
    margin-bottom: 3em;
}
.sw-breadcrumbs ol li:not(:last-child):after{
    content: "";
    width: 1px;
    height: 3em;
    display: block;
    background: #fff;
    margin-left: auto;
    position: absolute;
    top: 100%;
    right: 0;
}

.sw-page-header .sw-box-wrap{
    justify-content: space-between;
}

.l-pages_main .sw-page-header .sw-box-wrap{
    margin-bottom: 3%;
}

@media screen and (max-width: 750px) {
    .sw-page-header .sw-box-wrap{
        display: block;
    }
}
@media screen and (max-width: 750px) {
    .sw-box-breadcrumbs{
        display: none;
    }
}
.sw-page-header .sw-inner-box{
    max-width: 1200px;
}
@media screen and (max-width: 750px) {
    .sw-page-header .sw-inner-box{
        width: 86%;
    }
}
.sw-page-header .sw-title-list-wrap{
    margin-top: 4.5%;
}

@media screen and (min-width: 751px) {
    .sw-page-header .sw-title-list-wrap{
        display: flex;
        justify-content: space-between;
        margin-top: 0;
    }
}
@media screen and (max-width: 750px) {
    .sw-page-header .sw-title-list-wrap{
        margin-top: 0;
    }
}

.sw-page-header .sw-title-list-wrap .sw-title-txt-box{
    border-top: 1px solid #fff;
    margin-top: 8%;
    padding-top: 7%;
}
@media screen and (max-width: 750px) {
.sw-page-header .sw-title-list-wrap .sw-title-txt-box {
    margin-top: 14%;
    padding-top: 9%;
}
}
.sw-page-header .sw-title-list {
    margin: 2em 2.5em 4em;
}

@media screen and (max-width: 750px) {
    .sw-page-header .sw-title-list {
        margin: 2em .75em 4.5em;
    }
}

.l-pages_main .sw-page-header .sw-title-list {
    margin: 0 2.5em 2em;
}

@media screen and (max-width: 750px) {
    .l-pages_main .sw-page-header .sw-title-list{
        display: none;
    }
}

.sw-page-header .sw-title-list-wrap .sw-title-list {
    margin: 3.5em 1em 5.2em;
}

@media screen and (min-width: 751px) {
    .sw-page-header .sw-title-list-wrap .sw-title-list {
        width: 67.5%;
    }
}
@media screen and (max-width: 750px) {
    .sw-page-header .sw-title-list-wrap .sw-title-list {
        margin: 5% auto 10%;
        width: 95%;
    }
}
.sw-page-header .sw-title-list-wrap .sw-chara-01 {
    /* border: 1px solid; */
}
@media screen and (min-width: 751px) {
    .sw-page-header .sw-title-list-wrap .sw-chara-01 {
        width: 30%;
    }
}
@media screen and (max-width: 750px) {
    .sw-page-header .sw-title-list-wrap .sw-chara-01.PC {
        display: none;
    }
}

/* chara 01 */

.sw-chara-01 {
        display: block;
        width: 70%;
}
@media screen and (max-width: 750px) {
    #ThanksPage .sw-page-header .sw-title-list-wrap .sw-chara-01 {
        position: absolute;
        top: 100%;
        right: 0;
    }
}
.sw-chara-01 .sw-chara{
    aspect-ratio: 320 / 220;
    /* border: 1px solid; */
    width: 90%;
    height: auto;
    position: relative;
}

.sw-chara-01 .sw-chara-body{
    position: absolute;
    top: 5%;
    left: 5%;
    width: 69%;
    height: auto;
    aspect-ratio: 223 / 182;
    background: url(../img/chara/img_chara_01_01.png) no-repeat 50% 50%;
    background-size: contain;
  transform-origin: bottom center;
  animation: wobble 1.6s ease-in-out infinite;
}

.sw-chara-01 .sw-chara-glass{
    position: absolute;
    left: 11%;
    top: 27%;
    width: 40%;
    height: auto;
    aspect-ratio: 125 / 50;
    background: url(../img/chara/img_chara_01_03.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: wobble 1.6s ease-in-out infinite;
}
.sw-chara-01 .sw-chara-glass::after {
    content: "";
    position: absolute;
    top: -1em;
    left: -1em;
    width: 2em;
    height: 2em;
    background: white;
    transform: rotate(45deg) scale(0);
    opacity: 0;
    clip-path: polygon(
    50% 0%,
    60% 40%,
    100% 50%,
    60% 60%,
    50% 100%,
    40% 60%,
    0% 50%,
    40% 40%
  );
    filter: drop-shadow(0 0 8px rgba(255,255,255,.9));
    animation: sparkle 10s infinite;
    z-index: 5;
}

.sw-chara-01 .sw-chara-left{
    position: absolute;
    left: -1%;
    top: -2%;
    width: 17%;
    height: auto;
    aspect-ratio: 54 / 53;
    background: url(../img/chara/img_chara_01_04.png) no-repeat 50% 50%;
    background-size: contain;
  animation: rotateOnce 5s infinite;
}

.sw-chara-01 .sw-chara-right{
    position: absolute;
    left: 50%;
    top: 38%;
    width: 50%;
    height: auto;
    aspect-ratio: 157 / 124;
    background: url(../img/chara/img_chara_01_02.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: purunMove 4s ease-in-out infinite;
}

/* chara 02 */

.sw-page-header .sw-title-list-wrap .sw-chara-02 {
}
@media screen and (min-width: 751px) {
    .sw-page-header .sw-title-list-wrap .sw-chara-02 {
        width: 30%;
        position: absolute;
        right: 0;
        top: 43%;
    }
}
@media screen and (max-width: 750px) {
    #ThanksPage .sw-page-header .sw-title-list-wrap .sw-chara-02 {
        /* border: 1px solid; */
        display: block;
        width: 70%;
        position: absolute;
        top: 100%;
        right: 0;
    }
}
.sw-chara-02 .sw-chara{
    aspect-ratio: 680 / 572;
    /* border: 1px solid; */
    width: 100%;
    height: auto;
    position: relative;
}

.sw-chara-02 .sw-chara-body{
    position: absolute;
    top: 40%;
    left: 20%;
    width: 53%;
    height: auto;
    aspect-ratio: 364 / 335;
    background: url(../img/chara/img_chara_02_01.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: wobble 1.6s ease-in-out infinite;
}

.sw-chara-02 .sw-chara-eye{
    position: absolute;
    left: 30.5%;
    top: 4.5%;
    width: 44.5%;
    height: auto;
    aspect-ratio: 306 / 110;
    background: url(../img/chara/img_chara_02_03.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: wobble 1.6s ease-in-out infinite;
}

.sw-chara-02 .sw-chara-eye.bk{
    background-image: url(../img/chara/img_chara_02_03_bk.png)
}

.sw-chara-02 .sw-chara-left{
    position: absolute;
    left: 8%;
    top: 84%;
    width: 15%;
    height: auto;
    aspect-ratio: 1 / 1;
    background: url(../img/chara/img_chara_02_04.png) no-repeat 50% 50%;
    background-size: contain;
    animation: rotateOnce 5s infinite;
}

.sw-chara-02 .sw-chara-right{
    position: absolute;
    left: 46%;
    top: 17%;
    width: 61%;
    height: auto;
    aspect-ratio: 414 / 354;
    background: url(../img/chara/img_chara_02_02.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: purunMove 4s ease-in-out infinite;
}

.sw-chara-02 .sw-chara-bottom {
    position: absolute;
    left: 85%;
    top: 80%;
    width: 26%;
    height: auto;
    aspect-ratio: 216 / 232;
    background: url(../img/chara/img_chara_02_05.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: purunMove 1s linear infinite;
}

/* chara 02 */

.sw-chara-03 {
}

.sw-chara-03 .sw-chara{
    aspect-ratio: 217 / 221;
    width: 100%;
    height: auto;
    position: relative;
    background: url(../img/chara/img_chara_03.png) no-repeat 50% 50%;
    background-size: contain;
    transform-origin: bottom center;
    animation: wobble 1.6s ease-in-out infinite;
}


/* privacy policy */

.sw-privacy-box-wrap .sw-inner-box {
    max-width: 1130px;
}

@media screen and (max-width: 750px) {
    .sw-privacy-box-wrap .sw-inner-box {
        width: 90%;
    }
}
.sw-privacy-box-list {
    border-top: 1px solid #4d4d4d;
}

.sw-privacy-box-list dt{
    padding: 3.5em 0 1.3em;
    font-weight: 800;
}
@media screen and (max-width: 750px) {
    .sw-privacy-box-list dt{
        padding: 2.8em 0 0.5em;
    }
}
.sw-privacy-box-list dd{
    border-bottom: 1px solid #4d4d4d;
    padding: 1em 0 4.3em;
}

@media screen and (max-width: 750px) {
    .sw-privacy-box-list dd{
        padding: 1em 0 3.7em;
    }
}

@media screen and (max-width: 750px) {
    .sw-privacy-box-list dd li{
        line-height: 1.45;
    }
}

.sw-privacy-box-wrap .sw-copyright-box .sw-flex-box{
    justify-content: space-between;
}
.sw-privacy-box-wrap .sw-date-box .sw-txt{
    text-align: right;
}

.sw-privacy-box-wrap .sw-copyright-box {
    margin-top: 2.5%;
}


@media screen and (max-width: 750px) {
    .sw-privacy-box-wrap .sw-copyright-box {
        margin-top: 6vw;
    }
}

/* company
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/

.cp-page-contents .sw-page-header .sw-title-list-wrap .sw-title-list {
    margin: 3em 2.5em 4.1em;
}

@media screen and (max-width: 750px) {
    .cp-page-contents .sw-page-header .sw-title-list-wrap{
        position: relative;
    }
}

@media screen and (max-width: 750px) {
    .cp-page-contents .sw-page-header .sw-title-list-wrap .sw-title-list {
        margin: 1.5em 1em 5.6em;
        position: relative;
        z-index: 3;
    }
}
.cp-page-contents .sw-page-header .sw-title-list-wrap .sw-chara-02 {
        background: #000;
        z-index: 1;
}
@media screen and (max-width: 750px) {
    .cp-page-contents .sw-page-header .sw-title-list-wrap .sw-chara-02 {
        position: absolute;
        right: -4%;
        top: 44%;
        width: 39%;
    }
}

@media screen and (max-width: 750px) {
    .cp-page-contents .sw-chara-02 .sw-chara-body{
        top: 55%;
    }
}

@media screen and (max-width: 750px) {
    .cp-page-contents .sw-chara-02 .sw-chara-left {
        left: -4%;
        top: 27%;
    }
}

@media screen and (max-width: 750px) {
    .cp-page-contents .sw-chara-02 .sw-chara-right {
        left: 44%;
        top: 28%;
    }
}
.sw-company-box-wrap .sw-inner-box{
    padding: 3.25% 0 1px;
    border-top: 1px solid #4d4d4d;
    max-width: 1180px;
}

@media screen and (max-width: 750px) {
    .sw-company-box-wrap .sw-inner-box{
        width: 80%;
        padding: 11% 0 1.5%;
    }
}

.sw-company-box-list{
    display: flex;
    flex-wrap: wrap;
}
@media screen and (min-width: 751px) {
    .sw-company-box-list{
        width: 73%;
    }
}

.sw-company-box-list dt{
    width: 37%;
    margin-bottom: 2.35em;
    line-height: 1.45;
}

@media screen and (min-width: 751px) {
    .sw-company-box-list dt{
        width: 22%;
        margin-bottom: 1.95em;
    }
}
.sw-company-box-list dd{
    width: 63%;
    margin-bottom: 2.35em;
    line-height: 1.45;
}
@media screen and (min-width: 751px) {
    .sw-company-box-list dd{
        width: 78%;
        margin-bottom: 1.95em;
    }
}

.sw-company-map-wrap{
    margin: 4.5% auto;
}

@media screen and (max-width: 750px) {
    .sw-company-map-wrap{
        margin: 0 auto;
    }
}

.sw-company-map-wrap .sw-inner-box{
    padding: 6% 0 1px;
    border-top: 1px solid #4d4d4d;
    max-width: 1180px;
}

@media screen and (max-width: 750px) {
    .sw-company-map-wrap .sw-inner-box{
        width: 80%;
        padding: 12.5% 0 14.75%;
        border-bottom: 1px solid #4d4d4d;
    }
}
.sw-company-map-wrap .sw-box-wrap{
    width: 100%;
}
@media screen and (min-width: 751px) {
    .sw-company-map-wrap .sw-box-wrap{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }
}

@media screen and (max-width: 750px) {
    .sw-company-map-wrap .sw-flex-box{
        width: 100%;
    }
}
@media screen and (min-width: 751px) {
    .sw-company-map-wrap .sw-company-info{
        width: 44%;
    }
}
@media screen and (max-width: 750px) {
    .sw-company-map-wrap .sw-company-info{
        margin-bottom: 7%;
    }
}
.sw-company-map-wrap .sw-company-info .sw-ttl-01 .ft-en{
    display: inline-block;
    background: #fff;
    color: #000;
    margin-right: .5em;
    line-height: 1.2;
    padding: 0 .5em;
}
@media screen and (max-width: 750px) {
    .sw-company-map-wrap .sw-company-info .sw-ttl-01 .ft-en {
        margin-right: .35em;
        padding: 0 .6em 0 .25em;
    }
}
.sw-company-map-wrap .sw-company-info .sw-ttl-02{
    line-height: 1.2;
    margin: 1.5em 0 1em;
}

@media screen and (min-width: 751px) {
    .sw-company-map-wrap .sw-company-map{
        width: 53%;
    }
}
.sw-company-map-wrap .sw-company-map iframe{
    width: 100%;
    height: 100%;
    aspect-ratio: 600 / 333;
}
/* contact
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
#ThanksPage .l-contents{
    min-height: 60vh;
}
.sw-contact-box-wrap{
    position: relative;
    padding-bottom: 17%;
}

.sw-contact-box-wrap:after{
    content: "";
    width: 90%;
    height: 1px;
    left: 5%;
    background: #fff;
    position: absolute;
    bottom: 0;
}
.sw-contact-box-wrap .sw-inner-box{
    max-width: 1180px;
}

@media screen and (max-width: 750px) {
    .sw-contact-box-wrap .sw-inner-box {
        width: 80%;
    }
}

.sw-contact-box-wrap .sw-inner-box table th,
.sw-contact-box-wrap .sw-inner-box table td{
    vertical-align: middle;
    padding-bottom: 1.5em;
}

@media screen and (min-width: 751px) {
    .sw-contact-box-wrap .sw-inner-box table th{
        width: 17.5%;
    }
}

@media screen and (min-width: 751px) {
    .sw-contact-box-wrap .sw-inner-box table td{
        width: 80.5%;
    }
}

@media screen and (max-width: 750px) {
    .sw-contact-box-wrap .sw-inner-box table td{
        padding-bottom: 2.3em;
    }
}

@media screen and (max-width: 750px) {
    .sw-contact-box-wrap .sw-inner-box table tbody,
    .sw-contact-box-wrap .sw-inner-box table tr,
    .sw-contact-box-wrap .sw-inner-box table th,
    .sw-contact-box-wrap .sw-inner-box table td{
        display: block;
    }
}

.radio_line {
    margin-top: .5em;
    margin-bottom: .5em;
}
/* Customize the label (the container) */
label.radio {
    display: block;
    position: relative;
    padding-left: 2.5em;
    cursor: pointer;
    line-height: 1.5em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    font-size: clamp(.8rem,1.16vw,1.5rem);
}


@media screen and (max-width: 750px) {
    label.radio {
        font-size: clamp(.9rem,2.93vw,2.2rem);
    }
}

/* Hide the browser's default checkbox */
label.radio input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  font-size: 1.6rem;
}

/* Create a custom checkbox */
label.radio .checkmark {
    position: absolute;
    top: .7em;
    left: 0;
    transform: translateY(-50%);
    height: 1.5em;
    width: 1.5em;
    max-width: 30px;
    max-height: 30px;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 100px;
}
label.radio .checkmark.s {
    border-radius: unset;
}

/* Create the checkmark/indicator (hidden when not checked) */
label.radio .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
label.radio input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
label.radio .checkmark:after {
    left: 50%;
    top: 50%;
    width: 60%;
    height: 60%;
    border-radius: 100px;
    background: #eb4a3d;
    transform: translate(-50%, -50%);
}
label.radio .checkmark.s:after {
    border-radius: unset;
}
label.radio .warning{
    color: #6e6e6e;
    display: block;
}

@media screen and (max-width: 750px) {
    label.radio .checkmark{
        height: 4vw;
        width: 4vw;
    }
}
.mail_item{
    color: #fff;
}
.txt_underline{
    color: #fff !important;
    display: inline-block;
    border-bottom: 1px solid #fff;
    margin-right: .5em;
}
.err {
    display:none;
    color:#eb4a3d;
}

.invalidField {
    border:1px solid #eb4a3d;
}

.sw-contact-box-wrap .btn_area{
    margin-top: 8%;
    margin-left: auto;
    width: 82%;
}

@media screen and (max-width: 750px) {
    .sw-contact-box-wrap .btn_area {
        margin-top: 3%;
        margin-left: 0;
        width: 100%;
    }
}

.sw-contact-box-wrap .btn_area button{
    width: 100%;
    border: none;
    display: block;
}

.sw-contact-box-wrap .btn_area p{
    letter-spacing: .1em;
    padding: 1.15em;
    font-weight: 600;
}


/* page-about
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
#AboutPage.l-pages_main .l-header,
#AboutPage.l-pages_main .sw-page-header:before,
#AboutPage.l-pages_main .sw-page-header:after{
    background: #1d1dff;
}
#AboutPage.l-pages_main .sw-page-header .sw-ttl-title span{
    background: #f2e716;
}
.ap-page-contents{

}

.ap-section_kv {
    padding: 4% 0 0;
}

@media screen and (max-width: 750px) {
    .ap-section_kv {
        padding: 10.5% 0 0;
    }
}

.ap-section_kv .sw-ttl{
    text-align: center;
}

.ap-section_kv .sw-ttl .ft-ja{
    display: inline-block;
    color: #fff;
    background: #000;
    font-weight: bold;
    padding: 0 .5em 0 1em;
    letter-spacing: .1em;
}

.ap-section_kv .sw-logo{
    text-align: center;
}
.ap-section_kv .sw-logo figure{
    width: 60%;
    text-align: center;
    display: block;
    margin: 3.5% auto 6.5%;
    max-width: 727px;
    animation: pop 4s infinite;
    transform-origin: center;
}

@media screen and (max-width: 750px) {
    .ap-section_kv .sw-logo figure {
        width: 72%;
        margin: 6.6% auto 7.5%;
    }
}
.ap-section_kv .sw-logo figure:hover img{
    animation: pop2 .4s infinite;
}
.ap-section_kv-inner .sw-flex-box{
    justify-content: center;
    max-width: 1448px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box{
        display: block;
        position: relative;
    }
}
.ap-section_kv-inner .sw-flex-box .sw-txt-box{
    width: 14em;
    padding-bottom: 5.5em;
}

@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-txt-box{
        width: 48%;
        margin: 0 auto;
    }
}

.ap-section_kv-inner .sw-flex-box .sw-txt-box p{
    margin-bottom: 1.2em;
}

.ap-section_kv-inner .sw-flex-box .sw-chara-box{
    width: calc((90% - 13em) / 2);
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box{
        width: 25%;
        position: absolute;
    }
}

@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box:first-child{
        top: 0;
        left: 0;
    }
}
.ap-section_kv-inner .sw-flex-box .sw-chara-box:last-child{
    align-self: flex-end;
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box:last-child{
        bottom: -9%;
        right: 0;
        width: 52%;
    }
}

.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01,
.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02{
    width: 100%;
}

.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01{
    position: relative;
    top: -1em;
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 {
        position: relative;
        top: -2.2em;
    }
}
.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara{
    width: 81%;
}

@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara{
        width: 92%;
        aspect-ratio: 336 / 815;
    }
}
.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara-glass{
    left: 45%;
    top: 18%;
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara-glass {
        left: 13%;
        top: 8%;
        width: 91%;
        transform: rotate(-23deg);
    }
}
.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara-body{
    background-image: url(../img/chara/img_chara_01_01_right.png);
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara-body {
        aspect-ratio: 188 / 218;
        top: -3%;
        left: 0;
        background-position: 100% 0;
        width: 110%;
        background-size: auto 100%;
        transform: rotate(-12deg);
        animation: purupuru 1.2s ease-in-out infinite;
        transform-origin: center;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara-right {
        top: 37%;
        left: -59%;
        width: 109%;
        transform: rotate(41deg);
        background-position: 100% 0;
        background-size: auto 100%;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-01 .sw-chara-left {
        top: 85%;
        left: 16%;
        width: 38%;
        transform: rotate(-12deg);
    }
}
.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02{
    position: relative;
    top: 1em;
    left: -1em;
    width: 85%;
}

@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 {
        top: 0;
        left: 0;
        width: 100%;
        overflow: hidden;
    }
}

.ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara{
    aspect-ratio: 876 / 827;
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara {
        aspect-ratio: 780 / 791;
    }
}


@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara-eye {
        position: absolute;
        left: 16.5%;
        top: 34.5%;
        width: 44.5%;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara-body {
        top: 54%;
        left: 28%;
        width: 53%;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara-left {
        left: 0;
        top: 60%;
        width: 17%;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara-right {
        left: 55%;
        top: 35%;
        width: 60%;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_kv-inner .sw-flex-box .sw-chara-box .sw-chara-02 .sw-chara-bottom {
        left: 68%;
        top: 1%;
        width: 19%;
        animation: purupuru 1.2s ease-in-out infinite;
    }
}
.ap-page-contents .sw-section_wrap-works_news .sw-ticker-bg{
    background-color: #000;
    padding: 2.45em 0;
}

@media screen and (max-width: 750px) {
    .ap-page-contents .sw-txt-box_amazing {
        margin-bottom: 7%;
        margin-top: 15.2%;
    }
}
.ap-page-contents .sw-txt-box_amazing .move_face_wrap{
    display: inline-block;
}
.ap-page-contents .sw-txt-box_amazing .move_face .eye{
    top: 0;
}
.ap-section_works .sw-img{
    margin: 5% auto 4.5%;
}
@media screen and (max-width: 750px) {
    .ap-section_works .sw-img {
        margin: 8.5% auto 12%;
    }
}
.ap-section_works .sw-img{
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    aspect-ratio: 1/1;
}

@media screen and (max-width: 750px) {
    .ap-section_works .sw-img {
        position: relative;
    }
}
/* 上に重ねるSVG */
.ap-section_works .sw-img .overlay-svg {
    position: absolute;
    top: 0;
    left: -10%;
    width: 120%;
    height: 120%;
    z-index: 9;
}

.ap-section_works .sw-img iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 150%;
    height: 150%;
    min-height: 150%;
    min-width: 150%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.ap-section_works .sw-img #js-kv-container {
    width: 120%;
    height: 120%;
    top: -20%;
    left: -10%;
    overflow: hidden;
}

/* マスクを適用する白い壁 */
.ap-section_works .sw-img .white-wall {
    fill: #ffffff;
    mask: url(#hole-mask);
}

/* 透明なマウス検知エリア */
.ap-section_works .sw-img .hover-trigger {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.ap-section_works .sw-img .sw-txt_en{
    position: absolute;
    top: 25%;
    right: 4em;
    z-index: 100;
}
@media screen and (max-width: 750px) {
    .ap-section_works .sw-img .sw-txt_en {
        top: 3.5em;
        right: 0;
        line-height: 1.75;
        /* text-indent: 3.5em; */
    }
}
.ap-section_works .sw-img .sw-txt_en span{
    background: #fcacd6;
    opacity: 0;
    display: inline-block;
    transition: transform 0.25s linear,
    opacity 0.05s linear;
    transform: rotate(-12deg) scale(1);
    line-height: 1.2;
    padding: 0 .4em;
}

.ap-section_works .sw-img.is-show .sw-txt_en span{
    animation: bangBang 0.2s linear forwards;
}
.ap-section_works .sw-img.is-show .sw-txt_en span:first-child{
    animation-delay: 1s;
}
.ap-section_works .sw-img.is-show .sw-txt_en span:last-child{
    animation-delay: 1.5s;
    margin-top: .7em;
    margin-left: -1em;

}

.ap-section_works .sw-img picture{
    display: block;
    overflow: hidden;
    border-radius: 100%;
    width: 96%;
    margin: 0 auto;
}
@media screen and (max-width: 750px) {
    .ap-section_works .sw-img picture{
        width: 93%;
    }
}
.ap-section_works .sw-img picture img{
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%;
}

@media screen and (min-width: 751px) {
    .ap-section_works_list{
        width: 92%;
        margin: 0 auto;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_works_list {
        width: 94.5%;
        margin: 0 auto;
    }
}
.ap-section_works_list .sw-works_01 {
    margin-bottom: 9.5%;
    border-bottom: 1px solid #000;
    padding-bottom: 6.2%;
}
@media screen and (max-width: 750px) {
    .ap-section_works_list .sw-works_01 {
        margin-bottom: 11.5%;
        padding-bottom: 10.5%;
    }
}
.ap-section_works_list li .sw-flex-box{
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .ap-section_works_list li .sw-flex-box{
        display: block;
    }
}
@media screen and (min-width: 751px) {
    .ap-section_works_list .sw-txt-box{
        width: 43%;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_works_list .sw-txt-box{
        margin-top: 7%;
    }
}
.ap-section_works_list .sw-txt-box p{
    line-height: 1.8;
}

@media screen and (max-width: 750px) {
    .ap-section_works_list .sw-txt-box p {
        line-height: 1.5;
    }
}
.ap-section_works_list .sw-txt-box p:not(:last-child){
    margin-bottom: 1.6em;
}

.ap-section_works_list .sw-txt-box .sw-ttl{
    margin-bottom: 5%;
}

.ap-section_works_list .sw-works_01 .sw-flex-box{
    flex-direction: column;
}

@media screen and (min-width: 751px) {
    .ap-section_works_list .sw-works_01 .sw-txt-box{
        align-self: flex-end;
        margin-top: 3%;
    }
}

@media screen and (min-width: 751px) {
    .ap-section_works_list .sw-works_02 .sw-ttl-box{
        width: 50%;
    }
}
.ap-section_works_list li .sw-ttl{
}

.ap-section_works_list li .sw-ttl .ft-en{
    line-height: 1.1;
    display: block;
    margin-bottom: .25em;
}

.ap-section_works_list li .sw-ttl .ft-ja{
    display: block;
    font-weight: 700;
}

.ap-section_what {
	position: relative;
}
@media screen and (min-width: 751px) {

    .ap-section_what {
        margin-bottom: -20vh;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_what {
        margin-bottom: -30vh;
    }
}
.ap-section_what .sw-ttl {
    text-align: center;
}
.ap-section_what .sw-ttl .ft-en{
    line-height: 1.1;
    display: block;
}
.ap-section_what .sw-ttl .ft-ja{
    text-align: center;
    font-weight: 700;
    display: block;
    margin: 1.5em auto 1.25em;
}
.ap-section_what .sw-txt-box .sw-flex-box{
    justify-content: center;
}
.ap-section_what .sw-txt-box p{
    margin: 1em 1.6em;
}


.ap-section_what .sw-sticky {
	position: sticky;
	top: 0;
	height: 100vh;
    padding-top: 4%;
    /* display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; */

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-bottom: 10%;
}

.ap-section_what .scroll-line {
	display: block;
	opacity: 0;
	filter: blur(6px);
	transform: translate(-10px, 10px);
	transition: opacity 1s ease, filter 1s ease, transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}

.ap-section_what .scroll-line.is-visible {
	opacity: 1;
	filter: blur(0);
	transform: translate(0, 0);
}

/* member */
.ap-section_member{
    margin-bottom: -2em;
    background: #fff;
}

.ap-section_member .sw-inner-box{
    max-width: 1070px;
}
@media screen and (max-width: 750px) {
    .ap-section_member .sw-inner-box{
        width: 82%;
        margin-bottom: 16.5%;
    }
}

.ap-section_member .sw-flex-box{
    justify-content: center;
}

@media screen and (max-width: 750px) {
    .ap-section_member .sw-flex-box {
        justify-content: center;
        left: 6%;
        position: relative;
        width: 97%;
    }
}
.ap-section_member .sw-flex-box li {
    width: 25%;
    perspective: 600px;
	transform: translateY(40px);
	animation: fadeUp .7s ease forwards;
    opacity: 0;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(1){
    animation-delay: .3s;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(2){
    animation-delay: .6s;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(3){
    animation-delay: .9s;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(4){
    animation-delay: 1.2s;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(5){
    animation-delay: 1.5s;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(6){
    animation-delay: 1.8s;
}

.ap-section_member .sw-flex-box li.is-show:nth-child(7){
    animation-delay: 2.1s;
}

@media screen and (max-width: 750px) {
    .ap-section_member .sw-flex-box li{
        width: 50%;
    }
}

.ap-section_member .sw-ttl{
    overflow: hidden;
}

@media screen and (max-width: 750px) {
    .ap-section_member .sw-ttl {
        overflow: hidden;
        display: flex;
        flex-direction: column-reverse;
    }
}
.ap-section_member .sw-ttl .ft-ja:after{
    content: "";
    width: 50vw;
    height: 1px;
    background: #000;
    position: absolute;
    left: calc(100% + 1em );
    top: 50%;
}
.ap-section_member .sw-ttl .ft-en{
    display: inline-block;
    position: relative;
    vertical-align: middle;
}
.ap-section_member .sw-ttl .ft-ja{
    font-weight: 600;
    display: inline-block;
    position: relative;
    vertical-align: middle;
}
@media screen and (min-width: 751px) {
    .ap-section_member .sw-ttl .ft-ja{
        padding-left: 1em;
    }
}
@media screen and (max-width: 750px) {
    .ap-section_member .sw-ttl .ft-ja{
        line-height: 1.1;
        letter-spacing: .16em;
    }
}

.ap-section_member .sw-flex-box li .member-image {
  animation: kawaiiPuru 1.4s ease-in-out infinite;
}

.ap-section_member .sw-flex-box li img {
  display: block;
  width: 100%;
  transform-origin: 35% 65%;
  transition: transform 1s cubic-bezier(.2,.8,.2,1);
  transform-style: preserve-3d;
  backface-visibility: hidden;
}

.ap-section_member .sw-flex-box li:hover img {
  transform: rotateY(360deg) scale(1.05);
}

.ap-section_member .sw-flex-box li:nth-child(1) img {
  animation-delay: 0s;
}

.ap-section_member .sw-flex-box li:nth-child(2) img {
  animation-delay: -0.25s;
}

.ap-section_member .sw-flex-box li:nth-child(3) img {
  animation-delay: -0.1s;
}

.ap-section_member .sw-flex-box li:nth-child(4) img {
  animation-delay: -0.15s;
}

.ap-section_member .sw-flex-box li:nth-child(5) img {
  animation-delay: -0.2s;
}

.ap-section_member .sw-flex-box li:nth-child(6) img {
  animation-delay: -0.25s;
}

.ap-section_member .sw-flex-box li:nth-child(7) img {
  animation-delay: -0.3s;
}

/* スライドイン */

.shapes-wrap{
    width: 100%;
    overflow: hidden;
}
.shapes {
    width: 100%;
    max-width: 1672px;
    height: 100%;
    aspect-ratio: 3344 / 781;
    position: relative;
  /* background: url(../img/about/img_shape.png) no-repeat 50% 50%;
  background-size: contain; */
  margin: 5% auto;
}
@media screen and (max-width: 750px) {
    .shapes{
        margin: 6% auto 23%;
        aspect-ratio: 750 / 461;
    }
}

.shape {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.shapes.is-show .shape {
  animation: poyonSlide 1.8s cubic-bezier(.34, 1.56, .64, 1) forwards;
}

.shape-01 {
    width: 26.5%;
    /* max-width: 231.5px; */
    height: auto;
    aspect-ratio: 925 / 584;
    background: url(../img/about/img_shape_01.png) no-repeat 50% 50%;
    background-size: contain;
    top: 5%;
    left: 1%;
}
@media screen and (max-width: 750px) {
    .shape-01 {
        width: 57%;
        aspect-ratio: 925 / 584;
        top: 20%;
        left: -23.5%;
    }
}
.shape-02 {
    width: 3.5%;
    max-width: 55.65px;
    height: auto;
    aspect-ratio: 113 / 127;
    background: url(../img/about/img_shape_02.png) no-repeat 50% 50%;
    background-size: contain;
    top: 23%;
    left: 28.5%;
}
@media screen and (max-width: 750px) {
    .shape-02 {
        width: 7%;
        top: 11%;
        left: 35%;
    }
}
.shape-03 {
    width: 20%;
    max-width: 356px;
    height: auto;
    aspect-ratio: 463 / 293;
    background: url(../img/about/img_shape_03.png) no-repeat 50% 50%;
    background-size: contain;
    top: 41%;
    left: 18%;
}
@media screen and (max-width: 750px) {
    .shape-03 {
        width: 44%;
        top: 52%;
        left: 4%;
    }
}
.shape-04 {
    width: 51%;
    max-width: 865px;
    height: auto;
    aspect-ratio: 1730 / 698;
    background: url(../img/about/img_shape_04.png) no-repeat 50% 50%;
    background-size: contain;
    z-index: -1;
    left: 21%;
    top: 11%;
}
@media screen and (max-width: 750px) {
    .shape-04 {
        width: 107%;
        left: 7%;
        top: 30%;
    }
}
.shape-05 {
    width: 4%;
    max-width: 63px;
    height: auto;
    aspect-ratio: 126 / 142;
    background: url(../img/about/img_shape_05.png) no-repeat 50% 50%;
    background-size: contain;
    top: 78%;
    left: 62.5%;
}
@media screen and (max-width: 750px) {
    .shape-05 {
        width: 7.5%;
        top: 86.5%;
        left: 75.5%;
    }
}
.shape-06 {
    width: 19%;
    max-width: 327px;
    height: auto;
    aspect-ratio: 654 / 467;
    background: url(../img/about/img_shape_06.png) no-repeat 50% 50%;
    background-size: contain;
    top: 24%;
    left: 68.5%;
}
@media screen and (max-width: 750px) {
    .shape-06 {
        width: 40.5%;
        top: 18%;
        left: 54.5%;
    }
}
.shape-07 {
    width: 22.5%;
    max-width: 371.5px;
    height: auto;
    aspect-ratio: 743 / 494;
    background: url(../img/about/img_shape_07.png) no-repeat 50% 50%;
    background-size: contain;
    left: 78%;
}
@media screen and (max-width: 750px) {
    .shape-07 {
        width: 46.5%;
        left: 77.5%;
        top: 0.5%;
    }
}
.shapes.is-show .shape:nth-child(1) {
  animation-delay: 0s;
}

.shapes.is-show .shape:nth-child(2) {
  animation-delay: 0.3s;
}

.shapes.is-show .shape:nth-child(3) {
  animation-delay: 0.5s;
}

.shapes.is-show .shape:nth-child(4) {
  animation-delay: 0.4s;
}

.shapes.is-show .shape:nth-child(5) {
  animation-delay: 0.8s;
}

.shapes.is-show .shape:nth-child(6) {
  animation-delay: 0.6s;
}

.shapes.is-show .shape:nth-child(7) {
  animation-delay: 1s;
}

/* page-service
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
#ServicePage.l-pages_main .l-header,
#ServicePage.l-pages_main .sw-page-header:before,
#ServicePage.l-pages_main .sw-page-header:after{
    background: #0077ff;
}
#ServicePage.l-pages_main .sw-page-header .sw-ttl-title span{
    background: #fcacd6;
}

#sec-result{
    border-top: 1px solid #000;
    padding-top: 10%;
}
.sw-dvl_list li {
    width: 50%;
    margin-bottom: 1.5em;
}

@media screen and (max-width: 750px) {
    .sw-dvl_list li {
        margin-bottom: 1.1em;
    }
}

.sw-dvl_list li .icn{
    width: 2.2em;
    height: 2.2em;
}

@media screen and (max-width: 750px) {
    .sw-dvl_list li .icn{
        width: 2em;
        height: 2em;
    }
}
.sp-section_kv{
    overflow: hidden;
    margin-bottom: 2.5%;
}
@media screen and (max-width: 750px) {
    .sp-section_kv{
        margin-top: 8.5%;
        margin-bottom: 9.5%;
    }
}

.sp-section_kv .sw-inner-box{
    max-width: 1150px;
}

@media screen and (max-width: 750px) {
    .sp-section_kv .sw-inner-box > .sw-flex-box{
        flex-direction: column-reverse;
    }
}

.sp-section_kv .sw-box{
    width: 60%;
    z-index: 10;
}

@media screen and (max-width: 750px) {
    .sp-section_kv .sw-box{
        width: 100%;
    }
}


@media screen and (max-width: 750px) {
    .sp-section_kv .roblox_logo-wrap {
        justify-content: center;
        align-items: center;
    }
}

.sp-section_kv .roblox_logo-wrap .move_face {
    margin: 0 1.8em .25em;
}


@media screen and (max-width: 750px) {
    .sp-section_kv .roblox_logo-wrap .move_face {
        margin: 0 1.7em 0.5em;
    }
}
.sp-section_kv .sw-ttl{
    letter-spacing: .01em;
    margin: 9% 0 8%;
    line-height: 1.55;
}
@media screen and (max-width: 750px) {
    .sp-section_kv .sw-ttl{
        position: relative;
        z-index: 10;
        text-align: center;
        letter-spacing: .25em;
        margin: 2.5em auto -5vw;
    }
}

.sp-section_kv .sw-img{
    width: 50%;
    position: relative;
}

.sp-section_kv .sw-img {
    position: absolute;
    right: -5%;
    top: 0;
    width: 60%;
    height: 100%;
}

@media screen and (max-width: 750px) {
    .sp-section_kv .sw-img {
        position: relative;
        right: 0;
        top: 0;
        width: 100%;
        height: 100%;
        aspect-ratio: 1 / 1;
    }
}
/* 上に重ねるSVG */
.sp-section_kv .sw-img .overlay-svg {
    position: absolute;
    top: 0;
    left: -10%;
    width: 120%;
    height: 120%;
    z-index: 9;
}

.sp-section_kv .sw-img iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 150%;
    height: 150%;
    min-height: 150%;
    min-width: 150%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.sp-section_kv .sw-img #js-kv-container {
    width: 120%;
    height: 120%;
    top: -20%;
    left: -10%;
    overflow: hidden;
}

/* マスクを適用する白い壁 */
.sp-section_kv .sw-img .white-wall {
    fill: #ffffff;
    mask: url(#hole-mask);
}

/* 透明なマウス検知エリア */
.sp-section_kv .sw-img .hover-trigger {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.sp-section_kv .sw-txt-box{
    margin-top: 5%;
}
@media screen and (max-width: 750px) {
    .sp-section_kv .sw-txt-box {
        position: relative;
        z-index: 10;
        width: 93%;
        margin: -11vw auto 0;
    }
}
.sp-section_kv p{
    line-height: 2;
    margin-bottom: 1.7em;
}
@media screen and (max-width: 750px) {
    .sp-section_kv p{
        line-height: 1.9;
    }
}
@media screen and (max-width: 750px) {
    .sp-section_kv p br{
        display: none;
    }
}

@media screen and (max-width: 750px) {
    /* sp調整 */
    .sp-section_kv .sw-inner-box > .sw-flex-box {
        display: grid;
        grid-template-columns: 1fr;
    }

    .sp-section_kv .sw-box {
        display: contents;
    }

    .sp-section_kv .roblox_logo-wrap {
        grid-row: 1;
    }

    .sp-section_kv .sw-ttl {
        grid-row: 2;
    }

    .sp-section_kv .sw-img {
        grid-row: 3;
    }

    .sp-section_kv .sw-txt-box {
        grid-row: 4;
    }
}

.sp-section_cards .sw-section_wrap-works_news{
    border: none;
}

.sp-section_cards .sw-section_wrap-works_news .sw-ticker-bg{
    padding: 0;
    border: none;
}
.sp-section_cards .sw-section_wrap-works_news{
    position: relative;
    z-index: 10;
}
.sp-section_cards .sw-ticker-bg-top{
    margin-bottom: -5.5em;
}
@media screen and (max-width: 750px) {
    .sp-section_cards .sw-ticker-bg-top {
        margin-bottom: 4.5%;
    }
}

/*一調整*/
#spPageNav{
	transition:transform 0.4s ease,opacity 0.4s ease;
}
#spPageNav.nav-hide{
	transform:translateY(-100%);
	opacity:0;
	pointer-events:none;
}
.sp-page-nav {
	position: sticky;
	top:0;
	z-index:1000;
	padding:10px 0;
    margin-bottom: 3.5%;
}

.sp-page-nav .sw-inner-box {
	width: 70%;
	max-width:874px;
	margin:0 auto;
	background:#fff;
	border:1px solid #000;
	border-radius:3em;
	overflow:hidden;
}
@media screen and (max-width: 750px) {
    .sp-page-nav .sw-inner-box {
        border: none;
        background: none;
    }
}
.sp-page-nav ul {
	display:flex;
	margin: 0;
	padding: 1.1em 2em;
	list-style:none;
}
@media screen and (max-width: 750px) {
    .sp-page-nav ul{
        padding: 0;
        width: 78%;
        margin: 0 auto;
    }
}

.sp-page-nav li {
	flex:1;
	padding:0 1em;
    font-size: clamp(.8rem,1.25vw,1.6rem);
}

@media screen and (max-width: 750px) {
    .sp-page-nav li {
        padding: 0 1%;
        text-align: center;
        margin: 0 auto;
        width: 20%;
    }
}

@media screen and (min-width: 751px) {
    .sp-page-nav li:not(:last-child){
        border-right:2px dotted #000;
    }
}

@media screen and (max-width: 750px) {
    /* sp調整 */
    .sp-page-nav li a {
    font-size: 0;
    }

    .sp-page-nav li a::before {
        font-size: clamp(1.05rem,3.2vw,2.4rem);
        margin-top: .2em;
    }

    .sp-page-nav li:nth-child(1) a::before {
    content: "01";
    }

    .sp-page-nav li:nth-child(2) a::before {
    content: "02";
    }

    .sp-page-nav li:nth-child(3) a::before {
    content: "03";
    }

    .sp-page-nav li:nth-child(4) a::before {
    content: "04";
    }

    .sp-page-nav li:nth-child(5) a::before {
    content: "05";
    }
}

.sp-page-nav a {
	display:block;
	padding:.5em;
	text-align:center;
	text-decoration:none;
	color:#000;
}
@media screen and (max-width: 750px) {
    .sp-page-nav li a {
        font-size: 0;
        display: flex;
        text-align: center;
        width: 100%;
        height: auto;
        border-radius: 100% !important;
        justify-content: center;
        aspect-ratio: 1/1;
        align-items: center;
        border: 1px solid #000;
        background: #fff;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-style: normal;
    }
}
.sp-page-nav a.active,
.sp-page-nav a:hover {
	color:#fff;
	background:#000;
	border-radius:.5em;
}

@media screen and (min-width: 751px) {
    .sp-sec-wrap_sticky{
        margin-bottom: -40vh;
    }
}

.sp-sec-wrap {
	padding:0 5% 5%;
}

.sp-sec-anchor {
	height:0;
	scroll-margin-top:80px;
}

.sp-sec-wrap section {
	position:sticky;
	top: 8%;
	max-width:1164px;
	width:calc(100% - 30px);
	margin:0 auto;
	/* min-height:calc(180vh - 60px); */
    min-height: 100vh;
	transition: transform .4s ease;
}

@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner {
        display: grid;
    }
}

@media screen and (min-width: 751px) {
    .sp-sec-wrap section .sw-box-inner:before {
        content: "";
        width: 17%;
        aspect-ratio: 414 / 198;
        position: absolute;
        top: 8%;
        right: 3.5%;
        z-index: 1;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: contain;
    }
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner > .sw-flex-box {
    display: contents;
    }
}
.sp-sec-wrap section:nth-of-type(1){
    z-index:101;
}
.sp-sec-wrap section:nth-of-type(1) .sw-box-inner{
    background: #fcacd6;
}
.sp-sec-wrap section:nth-of-type(1) .sw-box-inner:before{
    background-image: url(../img/service/icn_01.png);
}
.sp-sec-wrap section:nth-of-type(2){
    z-index:102;
}
.sp-sec-wrap section:nth-of-type(2) .sw-box-inner{
    background: #e6eb00;
}
.sp-sec-wrap section:nth-of-type(2) .sw-box-inner:before{
    background-image: url(../img/service/icn_02.png);
}
.sp-sec-wrap section:nth-of-type(3){
    z-index:103;
}
.sp-sec-wrap section:nth-of-type(3) .sw-box-inner{
    background: #0077ff;
}
.sp-sec-wrap section:nth-of-type(3) .sw-box-inner:before{
    background-image: url(../img/service/icn_03.png);
}
.sp-sec-wrap section:nth-of-type(4){
    z-index:104;
}
.sp-sec-wrap section:nth-of-type(4) .sw-box-inner{
    background: #fc3a5f;
}
.sp-sec-wrap section:nth-of-type(4) .sw-box-inner:before{
    background-image: url(../img/service/icn_04.png);
}
.sp-sec-wrap section:nth-of-type(5){
    z-index:105;
}
.sp-sec-wrap section:nth-of-type(5) .sw-box-inner{
    background: #ff9b43;
}
.sp-sec-wrap section:nth-of-type(5) .sw-box-inner:before{
    background-image: url(../img/service/icn_05.png);
}
.sp-sec-wrap section#sec5.is-fixed {
	position: fixed;
	top: 0;
	z-index: 10;
}

.sp-sec-wrap section#sec5.is-stopped {
	position: absolute;
	z-index: 10;
}
.sp-sec-wrap section .sw-box-inner > .sw-flex-box{
    justify-content: space-between;
}

@media screen and (min-width: 751px) {
    .sp-sec-wrap section .sw-box-inner .sw-box{
        width: 50%;
    }
}

@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-box {
        display: contents;
    }
}
.sp-sec-wrap section .sw-box-inner .sw-img{
    width: 44%;
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-img{
        width: 100%;
        margin: 5% auto;
    }
}
.sp-sec-wrap section .sw-box-inner .sw-txt-box{
    margin: 1em 0;
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-txt-box{
        margin: 0 auto;
    }
}
.sp-sec-wrap section .sw-box-inner .sw-txt-box p{
    line-height: 1.8;
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-txt-box p{
        line-height: 1.65;
    }
}
.sp-sec-wrap section .sw-box-inner .sw-ttl .ttl-sub{
    display: block;
    margin-bottom: 5%;
}

@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-ttl .ttl-sub{
        margin-bottom: 2%;
    }
}
.sp-sec-wrap section .sw-box-inner .sw-ttl .ttl-sub:after{
    content: "";
    width: .8em;
    height: .8em;
    background: url(../img/icon/icn_arw_zoom_bk.png) no-repeat 50% 50%;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    margin-left: .5em;
    margin-top: -.25em;
}

.sp-sec-wrap section .sw-box-inner .sw-ttl .ttl-box{
    background: #000;
    display: inline-block;
    color: #fff;
    line-height: 1.3;
    padding: 0 1em .2em;
    letter-spacing: .4em;
}

.sp-sec-wrap section .sw-box-inner .sw-ttl .ttl-box{
}
.sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap {
    margin-top: 1%;
}

@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap li{
        text-align: center;
        font-size: clamp(.65rem,2.16vw,1.7rem);
        padding: .5em 1em;
    }
}

@media screen and (min-width: 751px) {
    /*pc 調整 */
    /* 1〜3個目 */
    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap li:nth-child(-n+3) {
    order: 1;
    }

    /* 4個目以降 */
    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap li:nth-child(n+4) {
    order: 3;
    }

    /* 3個目と4個目の間で改行 */
    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap ul::before {
    content: "";
    flex-basis: 100%;
    width: 0;
    order: 2;
    }
}

@media screen and (max-width: 750px) {
    /* sp調整 */
    /* ２つずつ改行 */
    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap ul {
    display: flex;
    flex-wrap: wrap;
    }

    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap li {
        /* max-width: calc(50% - 0.5em); */
        box-sizing: border-box;
        margin-right: 1em;
        margin-bottom: 1em;
    }

    /* 2個目・4個目・6個目…は右マージンをなくす */
    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap li:nth-child(even) {
    /* margin-right: 0; */
    }
}

.sp-sec-wrap section .sw-box-inner {
	background:#fff;
	border-radius:2em;
	padding: 7% 6.5% 4% 7%;
    position: relative;
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner {
        border-radius: 1.2em;
        padding: 7% 6.5% 13% 7%;
    }
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner:after {
        content: "";
        width: 100%;
        height: 7em;
        background: #fff;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: -1;
    }
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section{
        width: 85%;
    }
}

.sp-sec-wrap section .sw-box-inner .sw-fuki-box{
    position: absolute;
    right: 3%;
    bottom: 11%;
    max-width: 230px;
}

@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-fuki-box{
        right: 8%;
        bottom: inherit;
        top: calc(100% - 2.7em);
    }
}

.sp-sec-wrap section .sw-box-inner .sw-fukidashi {
    color: #fff;
    background: #000;
    margin-left: 0;
    margin-bottom: .5em;
    padding: 2em 2em;
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sw-box-inner .sw-fukidashi {
        padding: 1.2em 1.2em;
    }
}
.sp-sec-wrap section .sw-box-inner .sw-fuki-box .sw-flex-box {
    justify-content: flex-end;
    margin-right: 2.7em;
}
.sp-sec-wrap section .sw-box-inner .sw-fuki-box .sw-fukidashi::before{
    left: calc(100% - 3em);
}

@media screen and (max-width: 750px) {
    /* sp位置調整 */
    .sp-sec-wrap section .sw-box-inner .sw-ttl {
    grid-row: 1;
    }

    .sp-sec-wrap section .sw-box-inner .sw-img {
    grid-row: 2;
    }

    .sp-sec-wrap section .sw-box-inner .sw-tag-list-wrap {
    grid-row: 3;
    }

    .sp-sec-wrap section .sw-box-inner .sw-txt-box {
    grid-row: 4;
    }

    .sp-sec-wrap section .sw-box-inner .sw-fuki-box {
    grid-row: 5;
    }
}

.sp-sec-wrap section .sp-sec-text{
	font-size:clamp(1.5rem,3vw,3rem);
	font-weight:bold;
	opacity:0;
	transform:translateY(20px);
	transition:opacity .1s ease,transform .1s ease;
	transition-delay:0s;
    text-align: center;
    margin-top: 1.5%;
}
@media screen and (max-width: 750px) {
    .sp-sec-wrap section .sp-sec-text{
        display: none;
    }
}

.sp-sec-wrap section.active .sp-sec-text{
	opacity:1;
	transform:translateY(0);
	transition-delay:.5s;
}

.sw-tag-list li{
    background: #fff;
    border-radius: 3em;
    font-size: clamp(.7rem,1.0vw,1.3rem);
    padding: .5em 1.5em;
    line-height: 1.3;
    margin-right: 1em;
    margin-bottom: 1em;
}

.sp-page-contents .sw-txt-box_amazing {
	position: relative;
	z-index: 2;
    overflow: visible;
}
@media screen and (max-width: 750px) {
    .sp-page-contents .sw-txt-box_amazing{
        background: #fff;
        z-index: 106;
        margin-bottom: 14%;
    }
}
.sp-page-contents .sw-txt-box_amazing .sw-txt {
  opacity: 0;
  line-height: 1;
}
.sp-page-contents .sw-txt-box_amazing.is-show .sw-txt {
  animation: fadeUp 0.8s ease forwards;
}

.sp-page-contents .sw-txt-box_amazing.is-show .sw-txt:nth-child(1) {
  animation-delay: 0.5s;
}

.sp-page-contents .sw-txt-box_amazing.is-show .sw-txt:nth-child(2) {
  animation-delay: 0.8s;
}

.sp-page-contents .sw-txt-box_amazing.is-show .sw-txt:nth-child(3) {
  animation-delay: 1.1s;
}

.sp-page-contents .sw-txt-box_amazing .sw-txt_en{
    position: absolute;
    bottom: 4.5em;
    right: 4%;
    z-index: 5;
}
@media screen and (max-width: 750px) {
    .sp-page-contents .sw-txt-box_amazing .sw-txt_en{
        bottom: -1.2em;
    }
}
.sp-page-contents .sw-txt-box_amazing .sw-txt_en span{
    background: #fcacd6;
    opacity: 0;
    display: inline-block;
    transition: transform 0.25s linear,
    opacity 0.05s linear;
    transform: rotate(-12deg) scale(1);
    line-height: 1.2;
    padding: 0 .4em;
}
.sp-page-contents .sw-txt-box_amazing.is-show .sw-txt_en span{
    animation: bangBang 0.2s linear forwards;
}
.sp-page-contents .sw-txt-box_amazing picture img{
    opacity: 0;
}
.sp-page-contents .sw-txt-box_amazing.is-show picture img{
  animation: poyoyon2 1s ease-in-out forwards;
}

@media screen and (max-width: 750px) {
    .sp-page-contents .sw-txt-box_amazing .sw-txt_en span {
        transform: rotate(-12deg);
    }
}

.sp-page-contents .sw-txt-box_amazing .sw-txt_en span:nth-child(1) {
    margin-left: -2.3em;
    margin-bottom: 1em;
    animation-delay: 1.4s;
    text-indent: 0;
}

.sp-page-contents .sw-txt-box_amazing .sw-txt_en span:nth-child(3) {
    margin-left: -4.5em;
    animation-delay: 1.6s;
}

@media screen and (max-width: 750px) {
    .sp-page-contents .sw-txt-box_amazing .sw-txt_en span{
        padding: .1em .5em;
    }
}

.sp-page-contents .sw-txt-box_amazing .sw-arw-kurun{
    position: absolute;
    top: -4em;
    z-index: 5;
    right: 0;
    width: 21.5%;
    opacity: 0;
    transform: scale(0);
    transform-origin: 0 0;
    overflow: hidden;
}
.sp-page-contents .sw-txt-box_amazing.is-show .sw-arw-kurun{
    animation: arrowPop .4s ease-out forwards;
    animation-delay: 2s;
}
@media screen and (max-width: 750px) {
    .sp-page-contents .sw-txt-box_amazing .sw-arw-kurun{
        top: -.1em;
        right: -2.5%;
        width: 32%;
    }
}
@media screen and (max-width: 750px) {
    .sp-page-contents .sw-txt-box_amazing .sw-arw-kurun img{
        position: relative;
        left: 4%;
    }
}
.sp-section_flow{
    margin-bottom: 8em;
    position: relative;
}

@media screen and (max-width: 750px) {
    .sp-section_flow{
        margin-bottom: 9em;
    }
}

.sp-section_flow:before {
    content: "";
    width: 30%;
    max-width: 640px;
    height: 3em;
    position: absolute;
    left: 50vw;
    bottom: -8em;
    background: url(../img/icon/icn_fuki_01.png) no-repeat 63% 0%;
    background-size: auto 120%;
}

@media screen and (max-width: 750px) {
    .sp-section_flow:before {
        height: 2.2em;
        left: 39.5vw;
        bottom: -9em;
    }
}
.sp-section_flow:after {
    content: "";
    width: 90%;
    height: 10em;
    position: absolute;
    left: 9.5%;
    top: 4em;
    background: #fcacd6;
    z-index: -1;
    transform: rotate(2.5deg);
}
@media screen and (max-width: 750px) {
    .sp-section_flow:after {
        width: 90%;
        height: 10em;
        left: 3.5%;
        top: .2em;
        transform: rotate(9.2deg);
    }
}
.sp-section_flow .sw-ttl-box{
    background: #e6eb00;
    clip-path: polygon(0 7vw, 100% 0, 100% 100%, 0 100%);
    padding-top: 8%;
    padding-bottom: 2%;
}
@media screen and (max-width: 750px) {
    .sp-section_flow .sw-ttl-box{
        padding-top: 11%;
        padding-bottom: 5%;
        clip-path: polygon(0 3vw, 100% 0, 100% 100%, 0 100%);
    }
}

.sp-section_flow .sw-ttl-box .sw-chara-03{
    top: 10%;
    right: 17%;
    width: 9%;
    transform: scaleX(-1) rotate(-45deg);
    min-width: 109px;
}
@media screen and (max-width: 750px) {
    .sp-section_flow .sw-ttl-box .sw-chara-03{
        display: none;
    }
}
.sp-section_flow .sw-ttl-box .sw-ttl{
    text-align: center;
}
.sp-section_flow .sw-ttl-box .sw-ttl .ft-ja{
    font-weight: 600;
    display: block;
}
.sp-section_flow .sw-ttl-box .sw-ttl .ft-en{
    display: block;
}
.sp-section_flow_list{
    border-bottom: 1px solid #000;
}
@media screen and (max-width: 750px) {
    .sp-section_flow_list{
        border-bottom: none;
    }
}
@media screen and (max-width: 750px) {
    .sw-section_wrap-works_news .sw-ticker-bg {
        padding: 2.2em 0;
        border-bottom: none;
    }
}
@media screen and (min-width: 751px) {
    .sp-section_flow_list .sw-inner-box{
        border-left: 1px solid #000;
        max-width: 1130px;
    }
}
@media screen and (max-width: 750px) {
    .sp-section_flow_list .sw-inner-box{
        border-top: 1px solid #000;
        width: 100%;
    }
}

@media screen and (max-width: 750px) {
    .sp-section_flow_list ol{
        display: block;
        overflow: hidden;
    }
}
@media screen and (min-width: 751px) {
    .sp-section_flow_list li{
        width: 25%;
        padding: 1% 1.5% 4%;
        border-right: 1px solid #000;
    }
}

@media screen and (max-width: 750px) {
    .sp-section_flow_list li{
        width: 100%;
        padding: 1.5%;
        border-bottom: 1px solid #000;
    }
}

.sp-section_flow_list ol.is-show li{
    opacity: 0;
  animation: slideInRight 0.8s ease-out forwards;
}

.sp-section_flow_list ol.is-show li:nth-child(0) {
    animation-delay: 0;
}

.sp-section_flow_list ol.is-show li:nth-child(1) {
    animation-delay: .4s;
}

.sp-section_flow_list ol.is-show li:nth-child(2) {
    animation-delay: .8s;
}

.sp-section_flow_list ol.is-show li:nth-child(3) {
    animation-delay: 1.2s;
}

.sp-section_flow_list ol.is-show li:nth-child(4) {
    animation-delay: 1.6s;
}

.sp-section_flow_list li .sw-ttl{
    text-align: center;
    margin: 5% auto;
}
.sp-section_flow_list li .sw-ttl .ft-ja{
    display: block;
    font-weight: 600;
    margin: 3% 0;
}

.sp-section_flow_list li figure img{
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
}

@media screen and (max-width: 750px) {
    /*sp調整 */
    .sp-section_flow_list li {
        display: grid;
        grid-template-columns: 30% 70%;
        grid-template-rows: auto 1fr;
    }

    .sp-section_flow_list li .sw-ttl {
        display: contents;
    }

    .sp-section_flow_list li figure {
        position: relative;
        grid-column: 1;
        grid-row: 1 / 3;
        width: 100%;
        margin: 0;
    }

    .sp-section_flow_list li .sw-ttl .ft-num {
        position: absolute;
        top: calc(29% - .5em);
        left: 7%;
        z-index: 2;
    }

    .sp-section_flow_list li .sw-ttl .ft-ja {
        grid-column: 2;
        grid-row: 1;
    }

    .sp-section_flow_list li .sw-txt {
        grid-column: 2;
        grid-row: 2;
    }
}

.sp-section_flow_list li figure{
    width: 54%;
    margin: 19% auto 16%;
}

@media screen and (max-width: 750px) {
}

@media screen and (max-width: 750px) {
    .sp-section_flow_list li {
        padding: 6% 3% 4.5% 7%;
    }
}

@media screen and (max-width: 750px) {
    .sp-section_flow_list li figure {
        width: 90%;
        margin: 37% auto 0;

    }
}

@media screen and (max-width: 750px) {
    .sp-section_flow_list li .sw-ttl .ft-ja {
        padding-left: 11%;
        text-align: left;
    }
}
@media screen and (max-width: 750px) {
    .sp-section_flow_list li .sw-txt {
        padding-left: 11%;
    }
}
.sp-section_flow_list li .sw-txt p {
    line-height: 1.65;
}
@media screen and (max-width: 750px) {
    .sp-section_flow_list li .sw-txt p {
        line-height: 1.5;
    }
}
.sp-section_flow_btm{
    position: relative;
    padding: 3% 0 12em;
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm{
        padding: 9% 0 15.5em;
    }
}
.sp-section_flow_btm:after{
    content: "";
    width: 100%;
    height:100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #e6eb00;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 2.3vw), 0 100%);
}
@media screen and (max-width: 750px) {
    .sp-section_flow_btm:after{
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 11.4vw), 0 100%);
    }
}

.sp-section_flow_btm > .sw-inner-box{
    max-width: 1100px;
    z-index: 1;
    position: relative;
}

.sp-section_flow_btm > .sw-inner-box > .sw-flex-box{
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm > .sw-inner-box > .sw-flex-box{
        display: block;
    }
}

.sp-section_flow_btm .sw-ttl {
    width: 9.4em;
    height: auto;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: url(../img/icon/icn_wave_circle.png) no-repeat 50% 50%;
    background-size: contain;
    color: #fff;
    border-radius: 50%;
    opacity: 0;
}
.sp-section_flow_btm .sw-ttl.is-show {
    animation: slideInRight 0.8s ease-out forwards;
    animation-delay: .2s;
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-ttl{
        margin: 0 auto;
        width: 8em;
    }
}

.sp-section_flow_btm .sw-area-list{
    width: calc(95.2% - 13em - 2.5%);
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-area-list{
        width: 89%;
        margin: 8% auto 3.5%;
    }
}

.sp-section_flow_btm .sw-area-list li{
    width: 50%;
    margin: .5em 0;
    opacity: 0;
}

@media screen and (min-width: 751px) {
.sp-section_flow_btm .sw-area-list li:nth-child(odd){
    width: 44%;
}
.sp-section_flow_btm .sw-area-list li:nth-child(even){
    width: 56%;
}
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-area-list li{
        text-align: center;
        margin-bottom: 1.1em;
    }
}

.sp-section_flow_btm .sw-area-list.is-show li{
  animation: slideInRight 0.8s ease-out forwards;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(0) {
    animation-delay: 0;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(1) {
    animation-delay: .4s;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(2) {
    animation-delay: .6s;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(3) {
    animation-delay: .8s;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(4) {
    animation-delay: 1s;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(5) {
    animation-delay: 1.2s;
}

.sp-section_flow_btm .sw-area-list.is-show li:nth-child(6) {
    animation-delay: 1.4s;
}

.sp-section_flow_btm .sw-txt-box{
    margin-top: 4em;
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-txt-box{
        margin-top: 1em;
    }
}
.sp-section_flow_btm .sw-txt-box.is-show{
    animation-delay: 1s;
    opacity: 0;
  animation: fadeIn 0.8s ease-out forwards;
}


.sp-section_flow_btm .sw-txt-box p{
    line-height: 1.7;
}
.sp-section_flow_btm .sw-area-list li .ft-en{
    background: #000;
    color: #fff;
    display: inline-block;
    padding: 0 .5em;
    margin-right: 1em;
    line-height: 1.5;
    min-width: 9em;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-area-list li .ft-en{
        display: block;
        margin: 0 auto .6em;
        width: 90%;
    }
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-txt-box{
        width: 88%;
        margin: 0 auto;
    }
}

@media screen and (max-width: 750px) {
    .sp-section_flow_btm .sw-txt-box p{
        line-height: 1.5;
    }
}

.sp-section_flow .sw-chara-03 {
    width: 20%;
    max-width: 221px;
    margin-left: auto;
    position: absolute;
    right: 7.5%;
    top: -10em;
}
@media screen and (max-width: 750px) {
    .sp-section_flow .sw-chara-03 {
        width: 41%;
        right: 3.5%;
        top: -11.5em;
    }
}

/* page-work
━━━━━━━━━━━━━━━━━━━―…‥・★・‥…―━━━━━━━━━━━━━━━━━━*/
#WorkPage.l-pages_main .l-header,
#WorkPage.l-pages_main .sw-page-header:before,
#WorkPage.l-pages_main .sw-page-header:after{
    background: #0077ff;
}
#WorkPage.l-pages_main .sw-page-header .sw-ttl-title span{
    background: #e6eb00;
}
#WorkPage.l-pages_main .sw-page-header .sw-title-list {
    margin: 5em 2.5em 0;
}
.wp-page-contents .sw-inner-box{
    max-width: 1200px;
}

@media screen and (max-width: 750px) {
    .wp-page-contents .sw-inner-box{
        width: 90%;
    }
}

.wp-page-contents .sw-section_wrap-works_news{
    border: none;
}
.wp-page-contents .sw-section_wrap-works_news .sw-ticker-bg{
    padding: 0;
    border: none;
}

@media screen and (max-width: 750px) {
    /*sp 調整*/
    .wp-page-contents .sw-top-ttl-box .sw-inner-box {
        display: flex;
        flex-direction: column;
        padding: 0 3%;
    }
    .wp-page-contents .sw-top-ttl-box .sw-ttl {
        order: 2;
    }
    .wp-page-contents .sw-top-ttl-box .sw-tag-list_02 {
        order: 1;
    }
    .wp-page-contents .sw-top-ttl-box .sw-world-btn {
        order: 3;
    }
}

.wp-page-contents .sw-top-ttl-box{
    margin-bottom: 1%;
}

@media screen and (max-width: 750px) {
    .wp-page-contents .sw-top-ttl-box {
        margin-bottom: 5%;
        margin-top: 4%;
    }
}
.wp-page-contents .sw-top-ttl-box .sw-ttl{
    font-weight: 600;
    line-height: 1.4;
}
@media screen and (max-width: 750px) {
    .wp-page-contents .sw-top-ttl-box .sw-ttl{
        margin: 1% auto 2.2%;
    }
}

.wp-page-contents .sw-tag-list_02{
    margin-top: 1%;
    margin-left: 0.5%;
}
.wp-page-contents .sw-tag-list_02 li{
    margin: 0 1em 1em 0;
    font-size: 1em;
}

@media screen and (min-width: 751px) {
    .wp-page-contents .sw-world-btn {
        position: absolute;
        right: 0;
        bottom: 1.2em;
    }
}
.wp-page-contents .sw-world-btn a{
    color: #0077ff;
    text-decoration: underline;
    letter-spacing: .1em;
}
.wp-page-contents .sw-world-btn a:after{
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background: url(../img/icon/icn_arw_06.png) no-repeat 50% 50%;
    background-size: contain;
    vertical-align: middle;
    margin: -.25em 0 0 .5em;
}

.sw-article-wrap{
    /* height: 150vh; */
}
@media screen and (min-width: 751px) {
    .sw-article-wrap{
        margin-right: 3.5%;
        margin-top: 5%;
    }
}
@media screen and (min-width: 751px) {
    .sw-article-wrap > .sw-inner-box{
        position: relative;
        left: 3.5%;
    }
}
@media screen and (min-width: 751px) {
    .sw-article-wrap > .sw-inner-box > .sw-flex-box{
        justify-content: space-between;
    }
}
@media screen and (max-width: 750px) {
    .sw-article-wrap > .sw-inner-box > .sw-flex-box{
        display: block;
    }
}

@media screen and (min-width: 751px) {
    .sw-article-wrap .sw-aritcle-contents{
        width: calc(97% - 210px);
        /* min-height: 150vh; */
    }
}
@media screen and (max-width: 750px) {
    .sw-article-wrap .sw-aritcle-aside{
        display: none;
    }
}
@media screen and (min-width: 751px) {
    .sw-article-wrap .sw-aritcle-aside{
        width: 210px;
        position: sticky;
        top: 0;
        height: auto;
        align-self: flex-start;
    }
}
.sw-article-wrap .sw-aritcle-aside a{
    color: rgba(0,0,0,.4);
    font-size: clamp(1rem,.93vw,1.2rem);
    padding-left: 2em;
    position: relative;
}

.sw-article-wrap .sw-aritcle-aside a:before{
    content: "";
    width: .5em;
    height: .5em;
    background: #fff;
    border-radius: 100%;
    position: absolute;
    top: calc(50% - .25em);
    left: .75em;
}

.sw-article-wrap .sw-aritcle-aside .active a{
    color: #000;
}

.sw-article-wrap .sw-aritcle-aside .active a:before{
    background: #0077ff;
}
.wp-section_member .sw-inner-box{
    border-top: 1px solid #4d4d4d;
    margin-top: 3.5%;
    padding: 3% 2% 9% 4%;
}
@media screen and (max-width: 750px) {
    .wp-section_member .sw-inner-box {
        margin-top: 8.5%;
        padding: 12% 0;
    }
}
.wp-section_member .sw-inner-box > .sw-flex-box{
    align-items: center;
    justify-content: space-between;
}

@media screen and (min-width: 751px) {
    .wp-section_member .sw-box{
        width: 45%;
    }
}

@media screen and (min-width: 751px) {
    .wp-section_member .sw-member-list{
        width: 44.5%;
    }
}

.wp-section_member .sw-member-list li{
    width: 50%;
}

.wp-section_member .sw-ttl .ft-en{
    line-height: 1.1;
}
.wp-section_member .sw-ttl .ft-ja{
    display: block;
    margin: 1em auto 2em;
}

.wp-section_member .sw-info-list{
    margin: 3em auto;

}

.wp-section_member .sw-txt-box p{
    line-height: 1.7;
}
.sw-work-info-list {
    color: #fff;
    padding: 6.5% 0 11vw;
    position: relative;
    overflow: hidden;
}

@media screen and (max-width: 750px) {
    .sw-work-info-list{
        padding-top: 10%;
    }
}

.sw-work-info-list > *{
    position: relative;
    z-index: 2;
}

@media screen and (min-width: 751px) {
    .sw-work-info-list .sw-inner-box{
        padding-left: 3.5%;
    }
}

.sw-work-info-list::after {
    content: "";
    width: 100%;
    height: calc( 100% - 6.4vw );
    background: #000;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 5vw));
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.sw-work-info-list:before {
    content: "";
    width: 89.5%;
    height: 15vw;
    background: #0077ff;
    position: absolute;
    top: calc( 100% - 21vw );
    left: 6.5%;
    transform: rotate(-3.2deg);
    z-index: 0;
    height: 0;
    transition: all .4s;
}

.sw-work-info-list.is-show:before{
    animation-delay: 2s;
    animation: slideDown .6s ease-out forwards;
}


@keyframes slideDown {
  from {
    opacity: 0;
    height: 0;
  }
  to {
    opacity: 1;
    height: 15vw;
  }
}

.sw-work-info-list ul li{
    margin: 0 auto 8.5%;
}
@media screen and (max-width: 750px) {
    .sw-work-info-list ul li {
        margin: 0 auto 10%;
        padding-bottom: 12%;
    }
    .sw-work-info-list ul li:not(:last-child) {
        border-bottom: 1px solid #444;
    }
}
@media screen and (max-width: 750px) {
    .sw-work-info-list ul > .sw-flex-box{
        display: block;
    }
}
@media screen and (min-width: 751px) {
    .sw-work-info-list .sw-ttl-box{
        width: 33%;
    }
}

.sw-work-info-list .sw-ttl-box .sw-ttl .ft-ja{
    display: block;
}

@media screen and (min-width: 751px) {
    .sw-work-info-list .sw-txt-box{
        width: 67%;
    }
}

.sw-work-info-list .sw-txt-box .sw-ttl{
    font-weight: 600;
    margin-bottom: 1.5em;
}
@media screen and (max-width: 750px) {
    .sw-work-info-list .sw-txt-box .sw-ttl {
        margin-bottom: 0.8em;
        margin-top: 2.5em;
    }
}

.sw-work-info-list .sw-txt-box dd{
    line-height: 1.45;
}

/* sw-img */

.sw-article-wrap .sw-img{
    margin-bottom: 5.5%;
}

/* .sw-aritcle-box_01 */

@media screen and (min-width: 751px) {
    .sw-aritcle-box_01{
        margin-bottom: 14%;
    }
    }

@media screen and (max-width: 750px) {
    .sw-aritcle-box_01{
        margin-top: 13%;
    }
}
@media screen and (max-width: 750px) {
    .sw-aritcle-box_01 > .sw-flex-box{
        display: block;
    }
}

@media screen and (min-width: 751px) {
    .sw-aritcle-box_01 .sw-ttl-box{
        width: 35%;
    }
}

.sw-aritcle-box_01 .sw-ttl-box .sw-ttl .ft-ja{
    display: block;
}

@media screen and (max-width: 750px) {
    .sw-aritcle-box_01 .sw-ttl-box .sw-ttl .ft-ja{
        display: inline-block;
        vertical-align: middle;
        margin-left: 1em;
    }
}

@media screen and (min-width: 751px) {
    .sw-aritcle-box_01 .sw-txt-box{
        width: 65%;
    }
}

.sw-aritcle-box_01 .sw-txt-box p{
    line-height: 1.75;
}

.sw-aritcle-box_01 .sw-txt-box .sw-ttl{
    font-weight: 600;
    margin-bottom: 1em;
}

/* .sw-aritcle-box_02 */

@media screen and (max-width: 750px) {
    .sw-aritcle-box_02{
        margin-top: 13%;
    }
}
.sw-aritcle-box_02 .sw-ttl-box{
    margin-bottom: 5%;
}

.sw-aritcle-box_02  .sw-ttl-box .sw-ttl .ft-ja{
    display: block;
}

.sw-aritcle-box_02 .sw-txt-box{
}

.sw-aritcle-box_02 .sw-txt-box p{
    line-height: 1.75;
}

.sw-aritcle-box_02 .sw-txt-box .sw-ttl{
    font-weight: 600;
    margin-bottom: 1em;
}

/* .sw-aritcle-box_03 */

.sw-aritcle-box_03{
    margin-bottom: 5%;
}

@media screen and (max-width: 750px) {
    .sw-aritcle-box_03 > .sw-flex-box{
        display: block;
    }
}

@media screen and (min-width: 751px) {
    .sw-aritcle-box_03 .sw-ttl-box{
        width: 35%;
    }
}

.sw-aritcle-box_03 .sw-ttl-box .sw-ttl .ft-ja{
    display: block;
}

@media screen and (min-width: 751px) {
    .sw-aritcle-box_03 .sw-txt-box{
        width: 65%;
    }
}

.sw-aritcle-box_03 .sw-txt-box p{
    line-height: 1.75;
}

.sw-aritcle-box_03 .sw-txt-box .sw-ttl{
    font-weight: 600;
    margin-bottom: 1em;
}

/* .sw-carousel-box */

.sw-carousel-box{
    margin-top: 19.5%;
    margin-bottom: 10.5%;
    padding: 0 3%;
}

@media screen and (max-width: 750px) {
    .sw-carousel-box > .sw-flex-box{
        display: block;
    }
}
@media screen and (min-width: 751px) {
    .sw-carousel-box > .sw-flex-box{
        align-items: flex-end;
        justify-content: space-between;
    }
}

@media screen and (min-width: 751px) {
    .sw-carousel-box.box_b > .sw-flex-box{
        flex-direction: row-reverse;
    }
}

@media screen and (min-width: 751px) {
    .sw-carousel-box .sw-aritcle{
        width: 45%;
    }
    .sw-carousel-box.box_a .sw-aritcle{
        padding-left: 5%;
    }
    .sw-carousel-box.box_b .sw-aritcle{
        padding-right: 5%;
    }
}

.sw-carousel-box .sw-carousel{
    margin: 0;
}

@media screen and (max-width: 750px) {
    .sw-carousel-box .sw-carousel {
        width: 81%;
        margin: 0 auto;
        position: relative;
        left: 4.5%;
    }
}

@media screen and (min-width: 751px) {
    .sw-carousel-box .sw-carousel{
        width: 55%;
    }
}

/* carousel */
.carousel {
	display: flex;
	align-items: flex-end;
	gap: 20px;
	width: 100%;
	max-width: 650px;
	margin: 0 auto;
}

.carousel-images {
	position: relative;
	flex: 1;
	touch-action: pan-y;
    aspect-ratio: 1 / 1;
    border-radius: .5em;
    overflow: hidden;

}

/* 画像 */
.carousel-images img {
	display: block;
	width: 100%;
    height: 100%;
    object-fit: cover;
	opacity: 0;
	transition: opacity 0.6s ease;
}

/* 2枚目以降は重ねる */
.carousel-images img + img {
	position: absolute;
	top: 0;
	left: 0;
}

/* active */
.carousel-images img.active {
	opacity: 1;
}

/* dot */
.carousel-dots {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-bottom: 5px;
}

@media screen and (max-width: 750px) {
    .carousel-dots {
        gap: .4em;
        padding-bottom: .2em;
    }
}
.carousel-dots button {
	width: .5em;
	height: .5em;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #ccc;
	cursor: pointer;
}

@media screen and (max-width: 750px) {
    .carousel-dots button {
        width: .3em;
        height: .3em;
    }
}

.carousel-dots button.active {
	background: #333;
}

.sw-article-page-nav .sw-flex-box{
    justify-content: space-between;
    align-content: center;
    height: 7em;
}
@media screen and (max-width: 750px) {
    .sw-article-page-nav .sw-flex-box {
        flex-direction: column-reverse;
        justify-content: space-between;
        align-content: flex-start;
        height: auto;
    }
}

@media screen and (max-width: 750px) {
    .sw-article-page-nav .btn-index{
        width: 100%;
    }
}
.sw-article-page-nav .btn-index a:hover{
    color: #0277ff;
}
.sw-article-page-nav .btn-index a::before{
    content: "";
    width: 1.5em;
    height: .7em;
    background: url(../img/icon/icn_arw_07.png) no-repeat 50% 0%;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    margin-right: .5em;
}

.sw-article-page-nav {
    margin-bottom: 4.5%;
}

.sw-article-page-nav .btn-next{
    width: 62%;
    letter-spacing: .05em;
    position: relative;
}

@media screen and (max-width: 750px) {
    .sw-article-page-nav .btn-next{
        width: 100%;
    }
}
.sw-article-page-nav .btn-next::before{
    content: "";
    width: 7em;
    height: 7em;
    border-radius: 100%;
    background: #f2e716;
    position: absolute;
    right: 0;
    top: calc(50% - 3.5em);
  transform-origin: center center;
  animation: circle-pulse 2.5s ease-in-out infinite;
}
@media screen and (max-width: 750px) {
    .sw-article-page-nav .btn-next::before {
        width: 4em;
        height: 4em;
        top: calc(50% - 2em);
    }
}

@keyframes circle-pulse {
  0%,
  100% {
    opacity: 0.35;
    transform: scale(0.95);
  }

  50% {
    opacity: 1;
    transform: scale(1.05);
  }
}
.sw-article-page-nav .btn-next a span{
    display: inline-block;
    background: #fff;
    position: relative;
    z-index: 1;
}
.sw-article-page-nav .btn-next a:hover{
    color: #0277ff;
}
.sw-article-page-nav .btn-next a::before {
  content: "";
  width: calc(100% - 23em);
  height: 1px;
  background: #000;
  position: absolute;
  right: 3em;
  top: 50%;
  animation: arrow-move 0.7s ease-in-out infinite;
}
@media screen and (max-width: 750px) {
    .sw-article-page-nav .btn-next a::before {
        width: calc(100% - 16em);
    }
}

.sw-article-page-nav .btn-next a::after {
  content: "";
  width: .5em;
  height: .5em;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  right: 3em;
  top: calc(50% - 0.25em);
  transform: rotate(45deg);
  animation: arrow-move 0.7s ease-in-out infinite;
}
@media screen and (max-width: 750px) {
    .sw-article-page-nav .btn-next a::after {
        width: .25em;
        height: .25em;
        top: calc(50% - 0.125em + .5px);
    }
}

@keyframes arrow-move {
  0%,
  100% {
    right: 3em;
  }

  20% {
    right: calc(3em - 5px);
  }

  35% {
    right: 3em;
  }

  50% {
    right: calc(3em - 5px);
  }

  65% {
    right: 3em;
  }
}

/* animation */


@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


@keyframes text-blur {
  0% {
    filter: blur(0);
  }
  50% {
    filter: blur(4px); /* ぼかしの強さ */
  }
  100% {
    filter: blur(0);
  }
}


@keyframes pop {
  /* 待機 */
  0%, 85%, 100% {
    transform: scale(1);
  }

  /* ポンッ */
  88% {
    transform: scale(1.15);
  }

  92% {
    transform: scale(0.96);
  }

  96% {
    transform: scale(1.03);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes pop2 {
  /* 待機 */
  0%, 50%, 100% {
    transform: scale(1);
  }

  /* ポンッ */
  50% {
    transform: scale(1.15);
  }

  55% {
    transform: scale(0.96);
  }

  60% {
    transform: scale(1.03);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes jelly {
  0%   { transform: scale(1); }
  20%  { transform: scale(0.9, 1.1); }
  40%  { transform: scale(1.1, 0.9); }
  60%  { transform: scale(0.97, 1.03); }
  80%  { transform: scale(1.02, 0.98); }
  100% { transform: scale(1); }
}


@keyframes poke {
  0%, 100% {
    transform: translate(0, 0);
  }

  20% {
    transform: translate(-6px, -6px);
  }

  35% {
    transform: translate(-2px, -2px);
  }

  50% {
    transform: translate(-6px, -6px);
  }

  65% {
    transform: translate(0, 0);
  }
}


@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}


@keyframes slideInRight {
  from {
    transform: translateX(5em); /* 開始位置：右に100pxずれた場所 */
    opacity: 0;                   /* 開始時は透明 */
  }
  to {
    transform: translateX(0);     /* 終了位置：元の位置 */
    opacity: 1;                   /* 終了時はくっきり表示 */
  }
}

@keyframes arrowPop {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  70% {
    opacity: 1;
    transform: scale(1.15);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes poyoyon2 {
  0%  {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  15% {
    transform: scale(0.98, 0.9) translate(0, 5px);
  }
  30% {
    transform: scale(1.02, 1.0) translate(0, 8px);
  }
  50% {transform: scale(0.98, 1.05) translate(0, -8px);
  }
  70% {
    transform: scale(1.0, 0.9) translate(0, 5px);
  }
  100% {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  0%, 100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes balloonShow {
  0% {
    opacity: 0;
    transform: scale(0.7) translateY(16px);
  }

  80% {
    opacity: 1;
    transform: scale(1.05) translateY(-2px);
  }

  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

@keyframes loop {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: -1000px 50%; /* 動かす距離（画像の横幅と同じピクセル数にすると途切れません） */
  }
}

@keyframes loop2 {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: 1000px 50%; /* 動かす距離（画像の横幅と同じピクセル数にすると途切れません） */
  }
}

@keyframes bangBang {
    0% {
        opacity: 0;
    }
    5% {
        opacity: 1;
        transform: scale(2) rotate(25deg);
    }
    100% {
        /* 各要素に指定した本来のtop位置、角度、サイズ(1)に収束 */
        opacity: 1;
        transform: rotate(inherit) scale(inherit);
    }
}

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

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@keyframes signTilt {
  /* しばらく静止 */
  0%,
  60% {
    transform: rotate(0deg);
  }

  /* ガタン！ */
  72% {
    transform: rotate(9deg);
  }

  /* 跳ね返り */
  82% {
    transform: rotate(2.5deg);
  }

  /* 余韻 */
  89% {
    transform: rotate(4.4deg);
  }

  94% {
    transform: rotate(2.8deg);
  }

  97% {
    transform: rotate(3.2deg);
  }

  /* ピタッ */
  100% {
    transform: rotate(3deg);
  }
}

@keyframes sparkle {
  /* 普段は非表示 */
  0%, 97%, 100% {
    opacity: 0;
    transform: rotate(45deg) scale(0);
  }

  /* 一瞬だけ表示 */
  98% {
    opacity: 1;
    transform: rotate(45deg) scale(1.3);
  }

  /* 少し縮んで消える */
  99% {
    opacity: 0.8;
    transform: rotate(45deg) scale(0.9);
  }
}

@keyframes rotateOnce {
  /* 最初は停止 */
  0%, 90% {
    transform: rotate(0deg);
  }
  /* 最後の10%（0.5秒）で1回転 */
  100% {
    transform: rotate(360deg);
  }
}

@keyframes wobble {
  0%, 100% {
    transform: rotate(0deg) scaleX(1) scaleY(1);
  }
  20% {
    transform: rotate(-8deg) scaleX(0.98) scaleY(1.06);
  }
  40% {
    transform: rotate(6deg) scaleX(1.02) scaleY(0.96);
  }
  60% {
    transform: rotate(-5deg) scaleX(0.99) scaleY(1.05);
  }
  80% {
    transform: rotate(3deg) scaleX(1.01) scaleY(0.97);
  }
}

@keyframes purunMove {
  /* 元の状態 */
  0%, 100% {
    transform:
      translate(0, 0)
      rotate(0deg)
      scaleX(1)
      scaleY(1);
  }
  /* 左上へゆっくり伸びる */
  20% {
    transform:
      translate(-5px, -6px)
      rotate(-8deg)
      scaleX(0.94)
      scaleY(1.10);
  }

  /* 左側でぷるんと反動 */
  32% {
    transform:
      translate(-3px, -3px)
      rotate(-5deg)
      scaleX(1.04)
      scaleY(0.98);
  }
  /* 中央へ戻る */
  50% {
    transform:
      translate(0, 0)
      rotate(0deg)
      scaleX(1)
      scaleY(1);
  }

  /* 右上へゆっくり伸びる */
  70% {
    transform:
      translate(5px, -6px)
      rotate(8deg)
      scaleX(0.94)
      scaleY(1.10);
  }

  /* 右側でぷるんと反動 */
  82% {
    transform:
      translate(3px, -3px)
      rotate(5deg)
      scaleX(1.04)
      scaleY(0.98);
  }
}

@keyframes kawaiiPuru {
  0%, 100% {
    transform: scale(1) rotate(0deg);
  }

  20% {
    transform: scale(1.06, 0.94) rotate(2deg);
  }

  35% {
    transform: scale(0.96, 1.06) rotate(-2deg);
  }

  50% {
    transform: scale(1.03, 0.98) rotate(1deg);
  }

  65% {
    transform: scale(0.99, 1.02) rotate(-1deg);
  }

  80% {
    transform: scale(1.01, 0.99) rotate(0.5deg);
  }
}

@keyframes poyonSlide {
  0% {
    transform: translateX(110vw) scale(0.82);
    opacity: 0;
  }

  45% {
    transform: translateX(-2px) scale(1.04);
    opacity: 1;
  }

  58% {
    transform: translateX(1.5px) scale(0.98);
  }

  70% {
    transform: translateX(-1px) scale(1.015);
  }

  82% {
    transform: translateX(0.5px) scale(0.995);
  }

  100% {
    transform: translateX(0) scale(1);
    opacity: 1;
  }
}

@keyframes purupuru {
  0%,
  100% {
    transform: scaleY(1);
  }

  25% {
    transform: scaleY(1.08);
  }

  50% {
    transform: scaleY(0.94);
  }

  75% {
    transform: scaleY(1.05);
  }
}