@charset 'UTF-8';
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

img{
    max-width:100%;
    vertical-align:top;
}

:root{
    --color-base:#292320;
    --color-white:#FFF;
    --color-orange:#ff8c21;
    --color-yellow:#ffe88d;
    --color-blue:#00b2db;
    --color-dblue:#004ea6;
    --color-bgblue:#e1f3f9;

    --font-base: "Noto Sans JP", sans-serif;
    --font-en: "Poppins", sans-serif;

    --transition:0.3s;
}

body{
    font-optical-sizing: auto;
    font-weight:500;
    margin:0;
    padding:0;
    color:var(--color-base);
    background:var(--color-white);
}

.page-inner{
    width:100%;
    max-width:1520px;
    padding:0 40px;
    margin:0 auto;
}

.font-en{
    font-family:var(--font-en);
}

/* HEADER */

.sslp2026-header{
    position:relative;
}

.sslp2026-header__mainmv{
    position:relative;
    width:100%;
    margin:0;
    overflow:hidden;
    line-height:1;
}
.sslp2026-header__mainmv__main{
    position:absolute;
    bottom: -39%;
    width: 54%;
    left: 26%;
    transform:translateY(100%);
    transition:1s;
}
.sslp2026-header.scrollin .sslp2026-header__mainmv__main{
    transform:none;
}
@keyframes mainmv-iconanim{
    0%{
        transform:rotate(6deg);
    }
    50%{
        transform:rotate(-6deg);
    }
    100%{
        transform:rotate(6deg);
    }
}
.sslp2026-header__mainmv__icon{
    position:absolute;
    animation:infinite mainmv-iconanim 2s ease-in-out;
}
.sslp2026-header__mainmv__icon.icon01{
    width: 11.5%;
    left: 10%;
    top: 61%;
    opacity:0;
    transition:0.2s;
    transition-delay:1s;
}
.sslp2026-header__mainmv__icon.icon02{
    width: 11.5%;
    left: 23%;
    top: 35%;
    opacity:0;
    transition:0.2s;
    transition-delay:1.5s;
}
.sslp2026-header__mainmv__icon.icon03{
    width: 11.5%;
    left: 66%;
    top: 34%;
    opacity:0;
    transition:0.2s;
    transition-delay:2s;
}
.sslp2026-header__mainmv__icon.icon04{
    width: 11.5%;
    left: 82%;
    top: 56%;
    opacity:0;
    transition:0.2s;
    transition-delay:2.5s;
}
.sslp2026-header.scrollin .sslp2026-header__mainmv__icon{
    opacity:1;
}


/* ASIDE LINKBOX */

.sslp2026-header__linkbox{ 
    position:sticky;
    z-index:999;
    bottom:50px;
    top:50px;
    left:0;
    margin:0 100px;
    width:100%;
    max-width:1120px;
    background:#FFF;
    display:flex;
    border-radius:100vh;
    gap:60px;
    padding:20px 38px;
}
.sslp2026-header__linkbox__title{
    font-size:32px;
    color:var(--color-blue);
}

.sslp2026-header__links{
    display:flex;
    align-items:center;
    gap:30px;
    padding:0;
    margin:0;
    list-style:none;
}
.sslp2026-header__links li a{
    font-size:21px;
    font-weight:600;
    position:relative;
    padding-left:1.4em;
}
.sslp2026-header__links li a::before{
    content:'●';
    color:var(--color-orange);
    position:absolute;
    top:4px;
    left:0;
    line-height:1;
    opacity:0;
    transition:var(--transition);
}
.sslp2026-header__links li a:hover::before{
    opacity:1;
}

.sslp2026-aside{
    position:fixed;
    top:55px;
    right:55px;
    z-index:9999;
}
.sslp2026-aside__contact{
    position:relative;
    width:224px;
    height:224px;
}
.sslp2026-aside__contact__main,
.sslp2026-aside__contact__ring{
    display:block;
    line-height:1;
}
.sslp2026-aside__contact__ring{
    pointer-events:none;
    position:absolute;
    top:0;
    left:0;
    animation:forwards contactring-rotate 36s infinite linear;
}
@keyframes contactring-rotate{
    0%{
        transform:rotate(0);
    }
    100%{
        transform:rotate(-360deg);
    }
}


.sslp2026-header__mainmv__hvbg{
    position:absolute;
    bottom:100%;
    right:0;
    width:23%;
}
.sslp2026-header__mainmv__hvmain{
    position:absolute;
    bottom:100%;
    right:5%;
    width:10%;
    transition:2s;
    opacity:0;
    transform:translateX(-5%);
}
.sslp2026-header__mainmv__hvmain.scrollin{
    opacity:1;
    transform:translateX(0);
}



/* BANNERS */

.sslp2026-banners{
    position:relative;
    z-index:2;
    padding:90px 0;
    background:#FFF;
    border-bottom-right-radius:300px;
}
.sslp2026-banners__wrap{
    width:100%;
    padding: 0 100px;
}

.sslp2026-banners__title{
    text-align:center;
    font-size:31px;
    color:var(--color-dblue);
    font-weight:600;
    letter-spacing:0.2em;
    margin-bottom:100px;
}
.sslp2026-banners__banners{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:60px 100px;
}
.sslp2026-banners__banner{
    width:calc((100% - 300px) / 4);
    text-align:center;
}
.sslp2026-banners__banner.banner-banso{
    padding:0 5%;
}


/* ABOUT */

.sslp2026-about{
    background:var(--color-blue);
    padding-top:500px;
    margin-top:-300px;
    position:relative;
    z-index:1;
    padding-bottom:300px;
}
.sslp2026-about__flex{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items: flex-start;
}
.sslp2026-about__flex__content{
    width:61%;

    color:#FFF;
}
.sslp2026-about__flex__images{
    width:36%;
    position:sticky;
    top:100px;
    left:0;
}

.sslp2026-about__title{
    font-size:70px;
    font-weight:400;
    margin-bottom:60px;
}
.sslp2026-about__text{
    font-size:22px;
    font-weight:600;
    line-height:calc(43/24);
}
.sslp2026-about__text b{
    font-size:26px;
    color:var(--color-yellow);
}

.sslp2026-about__image:not(:last-child){
    margin-bottom:50px;
}
.sslp2026-about__image:nth-of-type(2){
    padding:0 3%;
    margin-bottom:30px;
}


/* MEMBER */

.sslp2026-member__member__popup{
    text-align:center;
    height:120px;
    margin-bottom:20px;
}
.balloon-transparent {
  position: relative;
  display: inline-flex;
  align-items:center;
  justify-content:center;
  height:110px;
  background: transparent; /* 背景を完全に透明に */
  border: 3px solid var(--color-yellow); /* 枠線の色と太さ */
  border-radius: 12px;
  color: #ffffff;
  width:100%;
  max-width:267px;
  margin:0 auto;
}

/* しっぽの外枠（枠線と同じ色） */
.balloon-transparent::before {
  content: "";
  position: absolute;
  top: 100%; /* 本体の一番下 */
  left: 50%; /* 親要素の50%の位置へ */
  transform: translateX(-50%); /* 自身の幅の半分戻して中央寄せ */
  border: 12px solid transparent;
  border-top: 12px solid var(--color-yellow);; /* 枠線の色と合わせる */
}

.balloon-transparent::after {
  content: "";
  position: absolute;
  top: calc(100% - 3px); /* 枠線の太さ分（3px）だけ上にずらす */
  left: 50%;
  transform: translateX(-50%);
  border: 12px solid transparent;
  border-top: 12px solid transparent; 
}
.balloon-transparent p{
    font-size:20px;
    line-height:1.2;
}


.sslp2026-member{
    position:relative;
    z-index:3;
    padding:200px 0 115px;
    margin-top:-200px;
}
.sslp2026-member__bg{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:-1;
    overflow-x:hidden;
}
.sslp2026-member__bg img{
    max-width:unset;
    width:1920px;
    position:absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
}

.sslp2026-member__title{
    text-align:center;
    color:#FFF;
    font-size:70px;
    margin-bottom:60px;
}
.sslp2026-member__members{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:75px;
}
.sslp2026-member__member__name{
    color:#FFF;
    font-size:32px;
    margin-top:26px;
    text-align:center;
}
.sslp2026-member__member__detail{
    font-size:18px;
    text-align:center;
    margin-top:16px;
    color:#FFF;
    line-height:calc(26 / 18);
}
.sslp2026-member__text{
    font-size:24px;
    color:#FFF;
    text-align:center;
    margin-top:120px;
}



/* CASES */

.sslp2026-cases{
    background:var(--color-bgblue);
    padding-top:370px;
    margin-top:-200px;
    padding-bottom:200px;
    position:relative;
}
.sslp2026-cases::after{
    content:'';
    position:absolute;
    top:calc(100% - 1px);
    left:calc(50% - 75px);
    width:150px;
    height:56px;
    background:var(--color-bgblue);
    clip-path:polygon(0 0, 100% 0, 50% 100%);
}

.sslp2026-cases__title{
    position:relative;
    text-align:center;
    color:var(--color-blue);
}
.sslp2026-cases__title--bg{
    max-width:1100px;
    margin:0 auto;
}
.sslp2026-cases__title--text{
    position:absolute;
    top:40px;
    left:0;
    width:100%;
    font-size:70px;
}

.sslp2026-cases__cases{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:50px;
}

.sslp2026-cases__case{
    position:relative;
    background:#FFF;
    padding:40px;
    border-radius:24px;
}
.sslp2026-cases__case__num{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding-left:6px;
    left:-50px;
    width:192px;
    height:51px;
    background:no-repeat center/contain url('../imgs/label-case.svg');
}
.sslp2026-cases__case__num--text{
    position:relative;
    padding-left:1em;
    color:#FFF;
    font-size:30px;
}
.sslp2026-cases__case__num--text::before{
    content:'・';
    position:absolute;
    left:0;
    top:0;
    color:#fefefe;
}

.sslp2026-cases__case__tags{
    margin-top:20px;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.sslp2026-cases__case__tag{
    color:#FFF;
    background:var(--color-orange);
    font-size:20px;
    border-radius:100vh;
    padding:4px 20px;
    font-weight:bold;
}
.sslp2026-cases__case__title{
    margin:20px 0;
    font-size:36px;
    font-weight:bold;
    line-height:1.2;
}

.sslp2026-cases__case__typename{
    margin-top:24px;
}
.sslp2026-cases__case__typename span{
    font-size:18px;
    font-weight:bold;
    color:#FFF;
    background:var(--color-blue);
    border-radius:100vh;
    padding:5px 20px;
}
.sslp2026-cases__case__type{
    margin-top:20px;
    font-size:24px;
    line-height:1.2;
    font-weight:bold;
}

.sslp2026-cases__case__detailbox{
    margin-top:24px;
    padding-top:22px;
    border-top:2px dotted var(--color-blue);
}
.sslp2026-cases__case__detailbox.noborder{
    border:0;
    padding-top:0;
}
.sslp2026-cases__case__detailbox__title{
    font-size:19px;
    color:var(--color-blue);
    font-weight:bold;
}
.sslp2026-cases__case__detailbox__text{
    font-size:19px;
    line-height:calc(30 / 19);
    margin-top:17px;
}

.sslp2026-cases__case__links{
    list-style:none;
    padding:0;
    margin-top:30px;
    line-height:1.4;
    font-size:19px;
}
.sslp2026-cases__case__links li a{
    color:var(--color-blue);
}
.sslp2026-cases__case__link__icon{
    line-height:1;
}
.sslp2026-cases__case__link__icon img{
    vertical-align:middle;
}



/* CT */

.sslp2026-ct{
    background:var(--color-blue);
    padding-top:100px;
    padding-bottom:100px;
}
.sslp2026-ct__title{
    font-size:50px;
    font-weight:bold;
    color:var(--color-dblue);
    text-align:center;
    margin-bottom:60px;
}

.sslp2026-ct__visual{
    overflow:hidden;
}
.sslp2026-ct__visual__infinitesliderwrap .swiper-wrapper {
    transition-timing-function: linear !important;
}
.sslp2026-ct__visual__infiniteslide{
    width: 1920px;
}
.sslp2026-ct__visual__infiniteslide img{
    width: 100%;
    display: block;
}

.sslp2026-ct__visual__pops{
    position:relative;
    z-index:2;
    height:15.625vw;
    margin-top:-2.6vw;
}
.sslp2026-ct__visual__pop{
    position:absolute;
}
.sslp2026-ct__visual__pop.pop01{
    width:17%;
    top:0;
    left:2%;
}
.sslp2026-ct__visual__pop.pop02{
    width:20%;
    top:0;
    left:30%;
}
.sslp2026-ct__visual__pop.pop03{
    width:19%;
    top:0;
    left:67%;
}
.sslp2026-ct__visual__pop.pop04{
    width:17%;
    bottom:0%;
    left:15%;
}
.sslp2026-ct__visual__pop.pop05{
    width:26%;
    bottom:0;
    left:44%;
}
.sslp2026-ct__visual__pop.pop06{
    width: 19%;
    bottom: 0;
    right: 0;
}

.sslp2026-ct__maintext{
    margin-top:33px;
    text-align:center;
    color:#FFF;
    font-size:27px;
    font-weight:bold;
    line-height:calc(43/27);
}
.sslp2026-ct__maintext b{
    color:var(--color-yellow);
    font-size:30px;
}

.page-inner.narrow{
    max-width:1210px;
}

.sslp2026-ct__themebox{
    position:relative;
    background:#FFF;
    border-radius:100vh;
    margin-top:120px;
    padding:80px 100px 40px;
}
.sslp2026-ct__themebox__title{
    position:absolute;
    top:0;
    left:50%;
    transform:translate(-50%,-50%);
    color:#FFF;
    background:var(--color-dblue);
    border-radius:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    width:330px;
    height:64px;
    font-size:28px;
    font-weight:bold;
}
.sslp2026-ct__themebox__hv{
    position:absolute;
    top:-80px;
    right:200px;
}

.sslp2026-ct__themebox__lists{
    display:flex;
    justify-content:space-between;
}
.sslp2026-ct__themebox__list{
    padding:0;
    margin:0;
    list-style:none;
    line-height:2.2;
    font-size:24px;
    font-weight:bold;
}
.sslp2026-ct__themebox__list li::before{
    content:'●';
    color:var(--color-orange);
}

.sslp2026-ct__flow{
    margin-top:75px;
}
.sslp2026-ct__flow__title {
    margin-bottom:24px;
}
.sslp2026-ct__flow__title span{
    color:#FFF;
    background:var(--color-dblue);
    border-radius:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    width:330px;
    height:64px;
    font-size:28px;
    font-weight:bold;
    margin:0 auto;
}
.sslp2026-ct__flow__flows{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
}
.sslp2026-ct__flow__flow{
    position:relative;
    background: var(--color-bgblue);
    border-radius:16px;
    padding:40px;
    text-align:center;
}
.sslp2026-ct__flow__flow:not(:last-child)::after{
    content:'';
    width:15px;
    height:190px;
    background:no-repeat center/contain url('../imgs/img-flow-div.svg');
    position:absolute;
    left:100%;
    top:50%;
    transform:translateY(-50%);
    z-index:2;
}
.sslp2026-ct__flow__flow__num{
    color:var(--color-dblue);
    font-size:18px;
    display:flex;
    align-items:center;
    line-height:1;
    justify-content:center;
    gap:0.4em;
}
.sslp2026-ct__flow__flow__num em{
    font-size:35px;
    font-style:normal;
    font-weight:normal;
}
.sslp2026-ct__flow__flow__title{
    margin-top:20px;
    font-size:24px;
    font-weight:bold;
    display:flex;
    align-items:center;
    justify-content:center;
    height:5em;
    line-height:1.4;
}

.sslp2026-ct__flow__att{
    margin-top:30px;
    color:#FFF;
    text-align:center;
    font-size:17px;
    font-weight:bold;
}


/* CONTACT FORM */

.sslp2026-cf{
    padding:120px 0 140px;
}
.sslp2026-cf__title{
    text-align:center;
    color:var(--color-dblue);
    font-size:52px;
    font-weight:bold;
    margin-bottom:90px;
}
.sslp2026-footer__sections{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:0;
}
.sslp2026-footer__section{
    padding:50px 80px;
}
.sslp2026-footer__section.section01{
    background:#ffe2c7;
}
.sslp2026-footer__section.section02{
    background:#cdebf5;
}
.sslp2026-footer__section__maintext{
    font-size:19px;
    line-height:1.5;
    margin-bottom:20px;
}

.sslp2026-footer__section__flex{
    display:flex;
    gap:40px;
}
.sslp2026-footer__section__icon{
    width:100px;
}
.sslp2026-footer__section__content{
    width:calc(100% - 140px);
}
.sslp2026-footer__section__title{
    font-size:23px;
    font-weight:bold;
    line-height:1.2;
}
.sslp2026-footer__section__title small{
    font-size:18px;
}
.sslp2026-footer__section__address{
    font-size:18px;
    line-height:1.2;
    margin-top:6px;
}
.sslp2026-footer__copyright{
    padding:28px 0;
    text-align:center;
    font-size:18px;
}


/* CF DLS */
.sslp2026-cf-dls{
    font-size:22px;
    font-weight:bold;
}
.sslp2026-cf-dls dl:not(:last-child){
    margin-bottom:50px;
}
.sslp2026-cf-dls dl dt{
    margin-bottom:10px;
}
.sslp2026-cf-dls dl dt sup{
    color:red;
    font-size:18px;
    vertical-align:top;
}
.sslp2026-cf-dls input[type="text"],
.sslp2026-cf-dls input[type="email"],
.sslp2026-cf-dls textarea{
    font-size:18px;
    line-height:1.4;
    padding:12px 18px;
    border-radius:10px;
    background:#f4f1ef;
    width:100%;
    border:0;
}

.mod-form__agree{
    margin:80px 0 40px;
    font-size:22px;
    line-height:1.4;
    text-align: center;
}
.mod-form__agree a{
    color:var(--color-orange);
    text-decoration:underline;
}

.sslp2026-cf-submit button{
    width:485px;
    height:100px;
    border-radius:100vh;
    border:0;
    color:#FFF;
    display:flex;
    margin:0 auto;
    align-items:center;
    justify-content:center;
    font-size:28px;
    font-weight:bold;
    background:linear-gradient(to bottom, #ffac1c, #ff8c21);
}




/* RSP 1600px */

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

    /* HEADER */
    .sslp2026-header__linkbox{
        bottom: 20px;
        top: 20px;
        max-width:860px;
        margin: 0 20px;
        gap:30px;
    }
    .sslp2026-header__linkbox__title{
        font-size:24px;
    }
    .sslp2026-header__links{
        gap:14px;
    }
    .sslp2026-header__links li a{
        font-size:18px;
    }

    .sslp2026-aside{
        top:20px;
        right:20px;
    }
    .sslp2026-aside__contact{
        width:150px;
        height:150px;
    }


    /* FOOTER */
    .sslp2026-footer__section__maintext{
        font-size:16px;
    }
    .sslp2026-footer__section{
        padding:50px;
    }

}


/* RSP 1440px */

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

    /* MEMBER */

    .sslp2026-member{
        padding-bottom:162px;
    }
    .sslp2026-member__member__detail{
        font-size:16px;
    }

}




/* RSP 1280px */

@media only screen and (max-width:1280px){
    body{
        min-width:1280px;
    }

}


.sp-toggler,
.sslp2026-drawer{
    display:none;
}


/* RSP 1024px */

@media only screen and (max-width:1024px){
    body{
        min-width:unset;
    }


    /* HEADER */
    .sslp2026-header__linkbox{
        display:none;
    }


    .sp-toggler,
    .sslp2026-drawer{
        display:block;
    }

    .sp-toggle{
        position:fixed;
        top:20px;
        left:20px;
        z-index:9999;
        cursor:pointer;
        display:block;
        width:50px;
        height:50px;
        background:#FFF;
        border-radius:50%;
    }
    .sp-toggle span{
        position:absolute;
        width:50%;
        left: 25%;
        height:2px;
        background:var(--color-orange);
        transition:var(--transition);
    }
    .sp-toggle span:nth-of-type(1){
        top:calc(46% - 1px);
    }
    .sp-toggle span:nth-of-type(2){
        top:calc(56% - 1px);
    }
    .sp-toggle.open span:nth-of-type(1){
        top:calc(50% - 1px);
        transform:rotate(45deg);
    }
    .sp-toggle.open span:nth-of-type(2){
        top:calc(50% - 1px);
        transform:rotate(-45deg);
    }



    /* DRAWER */

    .sslp2026-drawer{
        position:fixed;
        top:80px;
        left:20px;
        width:300px;
        height:auto;
        max-height:calc(100vh - 140px);
        background:#FFF;
        border-radius:20px;
        padding:30px;
        z-index:9998;
        transition:var(--transition);
        transform:translateY(calc(-100% - 140px));
    }
    .sslp2026-drawer.open{
        transform:translateY(0);
    }
    .sslp2026-drawer__links li{
        margin-bottom:0.5em;
        font-size:16px;
    }
    .sslp2026-drawer__links li a{
        position:relative;
        padding-left:1.2em;
    }
    .sslp2026-drawer__links li a::before{
        content:'●';
        color:var(--color-orange);
        position:absolute;
        top:0;
        left:0;
    }



    /* FOOTER */

    .sslp2026-footer__sections{
        grid-template-columns:1fr;
    }



    /* BANNERS */
    .sslp2026-banners{
        border-bottom-right-radius:50px;
    }
    .sslp2026-banners__wrap{
        padding:0 40px;
    }
    .sslp2026-banners__banners{
        gap:20px;
    }
    .sslp2026-banners__banner{
        width: calc((100% - 60px) / 4)
    }

    /* ABOUT */
    .sslp2026-about{
        padding-bottom:100px;
    }
    .sslp2026-about__text{
        font-size:16px;
    }
    .sslp2026-about__text b{
        font-size:18px;
    }

    /* MEMBER */
    .sslp2026-member{
        margin:0;
        padding:120px 0;
        background:linear-gradient(to bottom, #ffac1c, #ff8c21);
    }
    .sslp2026-member__bg{
        display:none;
    }
    .sslp2026-member__members{
        grid-template-columns:repeat(2,1fr);
        gap:60px;
    }
    .sslp2026-member__member__popup{
        height:80px;
    }
    .balloon-transparent{
        height:80px;
    }
    .balloon-transparent p{
        font-size:16px;
    }
    .sslp2026-member__member__name{
        font-size:26px;
    }
    .sslp2026-member__text{
        margin-top:80px;
        font-size:18px;
    }


    /* CASE */
    .sslp2026-cases__title--text{
        top:0;
    }
    .sslp2026-cases{
        padding-top:120px;
        margin-top:0;
    }
    .sslp2026-cases__cases{
        gap:30px;
    }
    .sslp2026-cases__case{
        padding:24px;
    }
    .sslp2026-cases__case__num{
        left:-34px;
    }
    .sslp2026-cases__case__num--text{
        font-size:26px;
    }
    .sslp2026-cases__case__tag{
        font-size:16px;
        padding:2px 12px;
    }
    .sslp2026-cases__case__title{
        font-size:26px;
    }
    .sslp2026-cases__case__type{
        font-size:20px;
    }
    .sslp2026-cases__case__detailbox__text{
        font-size:16px;
    }


    /* CT */
    .sslp2026-ct__title{
        font-size:42px;
    }
    .sslp2026-ct__themebox{
        padding:80px 50px 50px;
        border-radius:80px;
    }
    .sslp2026-ct__themebox__hv{
        right:10px;
    }
    .sslp2026-ct__themebox__lists{
        gap:20px;
    }
    .sslp2026-ct__themebox__list{
        font-size:20px;
    }

    .sslp2026-ct__flow__flow{
        padding:30px 20px;
    }
    .sslp2026-ct__flow__flow__title{
        font-size:18px;
    }



    /* CONTACT FORM */

    .sslp2026-cf__title{
        font-size:42px;
    }

    .sslp2026-cf-dls{
        font-size:18px;
    }
    .mod-form__agree{
        font-size:18px;
    }
}


.upc{
    display:none;
}

/* RSP 1024px */

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

    .pc_only{
        display:none;
    }
    .upc{
        display:block;
    }

    /* HEADER */

    .sslp2026-aside{
        top:unset;
        bottom:10px;
        right:10px;
    }
    .sslp2026-aside__contact{
        width:90px;
        height:90px;
    }

    .sp-toggle{
        top:10px;
        left:10px;
        width:44px;
        height:44px;
    }

    /* DRAWER */

    .sslp2026-drawer{
        top:66px;
    }


    /* MV */
    .sslp2026-header__mainmv__main {
        bottom: -10%;
        width: 81%;
        left: 14%;
    }
    .sslp2026-header__mainmv__icon.icon01 {
        width: 21.5%;
        left: 3%;
        top: 57%;
    }
    .sslp2026-header__mainmv__icon.icon02 {
        width: 21.5%;
        left: 18%;
        top: 32%;
    }
    .sslp2026-header__mainmv__icon.icon03 {
        width: 21.5%;
        left: 65%;
        top: 32%;
    }
    .sslp2026-header__mainmv__icon.icon04 {
        width: 21.5%;
        left: 77%;
        top: 61%;
    }

    .sslp2026-header__mainmv__hvbg{
        width:36%;
    }
    .sslp2026-header__mainmv__hvmain{
        bottom: calc(100% - 6vw);
        right: 6%;
        width: 21%;
    }


    /* BANNERS */
    .sslp2026-banners{
        padding:80px 0;
        border-radius:0;
    }
    .sslp2026-banners__title{
        font-size:24px;
        margin-bottom:2em;
    }
    .sslp2026-banners__banners{
        gap:30px 20px;
    }
    .sslp2026-banners__banner {
        width: calc((100% - 20px) / 2);
    }



    /* ABOUT */

    .sslp2026-about{
        padding-top:80px;
        margin-top:0;
    }
    .sslp2026-about__flex{
        gap:40px;
    }
    .sslp2026-about__flex__content,
    .sslp2026-about__flex__images{
        width:100%;
    }
    .sslp2026-about__title{
        font-size:32px;
        margin-bottom:1em;
    }


    /* MEMBER */
    .sslp2026-member{
        padding:80px 0;
    }
    .sslp2026-member .page-inner{
        padding:0 20px;
    }
    .sslp2026-member__title{
        font-size:32px;
        margin-bottom:1em;
    }

    .sslp2026-member__members{
        gap:40px 20px;
    }
    .balloon-transparent p{
        font-size:12px;
    }
    .sslp2026-member__member__name{
        font-size:20px;
    }
    .sslp2026-member__member__detail{
        font-size:12px;
    }
    .sslp2026-member__text{
        text-align:left;
        font-size:14px;
    }


    /* CASE */
    .sslp2026-cases{
        padding:80px 0;
        margin:0;
    }
    .sslp2026-cases .page-inner{
        padding:0 20px;
    }
    .sslp2026-cases__title--text{
        font-size:32px;
    }
    .sslp2026-cases__cases{
        grid-template-columns:1fr;
    }

    .sslp2026-cases__case__num{
        width:168px;
        height:42px;
    }
    .sslp2026-cases__case__num--text{
        font-size:23px;
    }
    .sslp2026-cases__case__tag{
        font-size:13px;
    }
    .sslp2026-cases__case__title{
        font-size:22px;
    }
    .sslp2026-cases__case__typename span{
        font-size:16px;
    }
    .sslp2026-cases__case__type{
        font-size:17px;
    }
    .sslp2026-cases__case__detailbox__title{
        font-size:17px;
    }
    .sslp2026-cases__case__detailbox__text{
        font-size:14px;
    }
    .sslp2026-cases__case__links{
        font-size:14px;
    }

    .sslp2026-cases::after{
        width:60px;
        height:30px;
        left:calc(50% - 30px);
    }


    /* CT */
    .sslp2026-ct{
        padding:80px 0;
    }

    .sslp2026-ct__title{
        font-size:20px;
    }

    .sslp2026-ct__visual__pops{
        height:auto;
        margin-top:30px;
    }
    .sslp2026-ct__visual__pop{
        width:100% !important;
        top:0 !important;
        left:0 !important;
        position:relative;
        text-align:center;
    }
    .sslp2026-ct__visual__pop img{
        width:calc(100% - 40px);
    }
    .sslp2026-ct__maintext{
        font-size:16px;
    }
    .sslp2026-ct__maintext b{
        font-size:18px;
    }

    .sslp2026-ct__themebox__hv{
        display:none;
    }

    .sslp2026-ct__themebox__title,
    .sslp2026-ct__flow__title span{
        width: 250px;
        height: 50px;
        font-size: 20px;
    }
    .sslp2026-ct__themebox{
        padding:40px 20px;
        border-radius:20px;
    }
    .sslp2026-ct__themebox__lists{
        flex-wrap:wrap;
        gap:0;
    }
    .sslp2026-ct__themebox__list {
        font-size: 16px;
    }

    .sslp2026-ct__flow__flows{
        grid-template-columns:1fr;
    }
    .sslp2026-ct__flow__flow:not(:last-child)::after{
        width:190px;
        height:15px;
        background:no-repeat center/contain url('../imgs/img-flow-div-sp.svg');
        left:calc((100% - 190px) / 2);
        top:100%;
    }
    .sslp2026-ct__flow__flow__title{
        margin-top:0;
        font-size:16px;
    }
    .sslp2026-ct__flow__att{
        font-size:14px;
    }


    /* CONTACT */
    .sslp2026-cf{
        padding:80px 0;
        background:#FFF;
    }
    .sslp2026-cf .page-inner.narrow{
        padding: 0 20px;
    }
    .sslp2026-cf__title{
        font-size:32px;
        margin-bottom:1em;
    }
    .sslp2026-cf-dls{
        font-size:16px;
    }
    .sslp2026-cf-dls dl dt{
        margin-bottom:5px;
    }
    .sslp2026-cf-dls dl:not(:last-child){
        margin-bottom:20px;
    }
    .mod-form__agree{
        font-size:16px;
    }
    .sslp2026-cf-submit button{
        width:100%;
        max-width:445px;
        height:60px;
        font-size:20px;
    }

    .sslp2026-footer__section{
        padding:30px 20px;
    }
    .sslp2026-footer__section__maintext{
        font-size:14px;
    }
    .sslp2026-footer__section__flex{
        gap:20px;
    }
    .sslp2026-footer__section__icon{
        width:60px;
    }
    .sslp2026-footer__section__content{
        width:calc(100% - 80px);
    }
    .sslp2026-footer__section__title{
        font-size:18px;
    }
    .sslp2026-footer__section__title small{
        font-size:16px;
    }
    .sslp2026-footer__section__address{
        font-size:14px;
    }

    .sslp2026-footer__copyright{
        font-size:12px;
    }


}

.mwform-checkbox-field{
    display:inline-block;
}