@charset "utf-8";
:root {
    --color-blue:#130A8F;
    --maxwidth:1220px;
}
/*BiBiOとは*/
.about .container_wide{background: linear-gradient(180deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 20%, rgba(232, 232, 232, 1) 50%);}
/*intro*/
#about{
    background: #fff;
}
#about .intro{
    padding-bottom: 100px;
    text-align: center;
}
#about .intro .intro_heading{
    margin-bottom: 1em;
    font-size: 33px;
    font-weight: 500;
}
#about .intro .intro_txt{
    margin-bottom: 1em;
    font-size: 14px;
}
#about .intro .intro_txt:last-of-type{
    margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
    
}
@media screen and (max-width: 768px) {
    
}
@media screen and (max-width: 767px) {
    #about .intro{
        padding-bottom: 17.33cqw;
    }
    #about .intro .intro_heading{
        font-size: 5.86cqw;
    }
    #about .intro .intro_txt{
        font-size: 3.2cqw;
    }
}
/*END　intro*/

/*about_content*/
#about .about_content{
    color: #fff;
}
#about .about_content .bg_nv{
    position: relative;
    padding: 0 0 382px;
}
#about .about_content .bg_nv::before{
    content: '';
    position: absolute;
    top: -160px;
    left: 0;
    z-index: 1;
    width: 100%;
    height: calc(100% + 160px);
    background: var(--color-blue);
    clip-path: polygon(0 400px, 100% 0%, 100% 100%, 0% 100%);
}
#about .about_content .bg_nv::after{
    content: '';
    position: absolute;
    bottom: 277px;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background:center bottom/1550px auto no-repeat url("../img/about/about_bg.webp") 
}
#about .about_content .about_inner{
    position: relative;
    z-index: 3;
    max-width: 944px;
    margin: 0 auto;
}
#about .about_content .content_2col{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 96%;
    margin: 0 auto;
}
#about .about_content .content_2col li{
    max-width: 450px;
    width: 48%;
}
#about .about_content .content_2col li:last-child{
    max-width: 414px;
}
#about .about_content .content_2col .ti{
    margin-bottom: 1em;
    font-size: 31px;
    font-weight: 500;
}
#about .about_content .content_2col .txt{
    margin-bottom: 1em;
    font-size: 14px;
}
#about .about_content .content_2col .txt:last-of-type{
    margin-bottom: 0;
}
#about .about_content .content_2col:first-child{
    margin-bottom: 160px;
}
#about .about_content .content_2col:first-child li.txt_box{
    align-self: flex-end;
}
#about .about_content .content_2col:last-of-type li.txt_box{
    align-self: center;
}
#about #what{
    position: absolute;
    bottom: -100px;
}
@media screen and (max-width: 940px) {
    #about .about_content .content_2col .txt{
        font-size: 1.48cqw;
    }
}
@media screen and (max-width: 870px) {
    #about .about_content .bg_nv::before{
        clip-path: polygon(0 300px, 100% 0%, 100% 100%, 0% 100%);
    }
    #about .about_content .content_2col .ti{
        font-size: 3.56cqw;
    }
}
@media screen and (max-width: 768px) {
    #about .intro .intro_txt .sp_br{
        display: inline;
    }
}
@media screen and (max-width: 767px) {
    #about .about_content .bg_nv{
        padding-bottom: 88vw;
    }
    #about .about_content .bg_nv::before{
        top:0;
        clip-path: polygon(0 90.66cqw, 100% 12.8cqw, 100% 100%, 0% 100%);
    }
    #about .about_content .content_2col{
        max-width: 85.33cqw;
        margin: 0 auto 45.86cqw;
    }
    #about .about_content .content_2col li{
        max-width: 100%;
        width: 100%;
    }
    #about .about_content .content_2col li.txt_box{
        padding-top: 8cqw;
    }
    #about .about_content .content_2col:last-of-type{
        position: relative;
        margin: 0 0 0 auto;
    }
    #about .about_content .content_2col:last-of-type::before{
        content: '';
        position: absolute;
        top: -160cqw;
        right: 0;
        z-index: 1;
        width: 100cqw;
        height: 100%;
        background: center bottom / 100% auto no-repeat url(../img/about/about_bg01_sp.webp);
    }
    #about .about_content .content_2col:last-of-type::after{
        content: '';
        position: absolute;
        bottom: -30cqw;
        right: 0;
        z-index: 1;
        width: 100cqw;
        height: 100%;
        background: center bottom / 100% auto no-repeat url(../img/about/about_bg02_sp.webp);
    }
    #about .about_content .content_2col:last-of-type li:first-child{
        order: 2;
    }
    #about .about_content .content_2col:last-of-type li:nth-child(2){
        order: 1;
    }
    #about .about_content .content_2col .ti{
        font-size: 5.33cqw;
    }
    #about .about_content .content_2col .txt{
        font-size: 3.2cqw;
    }
    #about .about_content .bg_nv::after{
        display: none;
    }
    #about #what{
        bottom: -35vw;
    }
}
/*END about_content*/

/*what*/
.what{
    position: relative;
    z-index: 1;
    padding:0.1px 0 111px;
    background: #fff;
}
.what .box_gy{
    margin-top: -214px;
    text-align: center;
}
.what .box_gy .txt_box{
    padding: 68px 0 80px;
    background: #E8E8E8;
}
.what .box_gy .txt_box .ti{
    margin-bottom: 1em;
    font-size: 42px;
    font-weight: 500;
}
.what .box_gy .txt_box .ti .en{
    font-size: 20px;
    font-weight: 400;
}
.what .box_gy .txt_box .txt{
    margin-bottom: 1em;
    font-size: 14px;
}
@media screen and (max-width: 1024px) {
    
}
@media screen and (max-width: 768px) {
    #about .about_content .content_2col .ti{
        
    }
}
@media screen and (max-width: 767px) {
    .what{
        padding: 0.1px 0 18.66cqw;
    }
    .what .inner{
        width: 85.3%;
    }
    .what .box_gy{
        margin-top: -33.33cqw;
    }
    .what .box_gy .txt_box{
        padding: 9.6cqw 0 7.73cqw;
    }
    .what .box_gy .txt_box .ti{
        font-size: 7.46cqw;
    }
    .what .box_gy .txt_box .ti .en{
        font-size: 3.2cqw;
    }
    .what .box_gy .txt_box .txt{
        font-size: 3.2cqw;
    }
}
/*END what*/

/*product*/
.product{
    padding-top: 90px;
    background: #fff;
    text-align: center;
}
.product .inner > .ti{
    margin-bottom: 0.5em;
    font-size: 42px;
    font-weight: 500;
}
.product .inner > .ti .en{
    font-size: 20px;
    font-weight: 400;
}
.product .nv_bg{
    padding: 0.1px 0 254px;
    background: var(--color-blue);
}
.product .copy{
    margin-bottom: 207px;
    font-size: 31px;
    font-weight: 500;
}
.product .product_3col{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 60px;
}
.product .product_3col{
    max-width: 944px;
    width: 100%;
    margin: -152px auto 60px;
}
.product .product_3col li{
    max-width: 270px;
    width: 30.53%;
}
.product .product_3col .txt{
    padding-top:1.5em;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
}
@media screen and (max-width: 950px) {
    .product .product_3col .txt{
        font-size: 2.3cqw;
    }
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 767px) {
    .product{
        padding-top: 18.66cqw;
    }
    .product .nv_bg{
        padding: 0.1px 0 52.53cqw;
    }
    .product .inner > .ti{
        font-size: 7.46cqw;
    }
    .product .inner > .ti .en{
        font-size: 3.2cqw;
    }
    .product .copy{
        margin-bottom: 41.33cqw;
        font-size: 5.33cqw;
    }
    .product .product_3col{
        margin: -25.06cqw auto 14.66cqw;
        justify-content: center;
    }
    .product .product_3col li{
        max-width: 100%;
        width: 64cqw;
    }
    .product .product_3col .txt{
        padding: 0.5em 0 2em;
        font-size: 5.33cqw;
    }
    .product .product_3col li:last-child .txt{
        padding: 0.5em 0 0;
    }
}
/*END product*/

/*creator*/
#creator{
    position: absolute;
    top: -130px;
}
.creator{
    padding-top: 0.1px;
    background: #fff;
    position: relative;
}
.creator .inner{
    position: relative;
    z-index: 1;
    margin-top: -130px;
    padding-top: 80px;
    background: #E8E8E8;
}
.creator .inner > .ti{
    margin-bottom: 0.5em;
    text-align: center;
    font-size: 42px;
    font-weight: 500;
}
.creator .inner > .ti .en{
    font-size: 20px;
    font-weight: 400;
}
.creator .txt_box{
    padding:30px 0 50px;
    margin: 0 80px 60px;
    background:right center / auto 100% no-repeat url("../img/about/creator_sho.webp");
}
.creator .txt_box .ti{
    margin-bottom: 1em;
    font-size: 31px;
    font-weight: 500;
}
.creator .txt_box .txt{
    margin-bottom: 1em;
    font-size: 14px;
}
.creator .txt_box .txt:last-of-type{
    margin-bottom: 0;
}
.creator .creator_2col{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap:6.35%;
    background: var(--color-blue);
}
.creator .creator_2col li:first-child{
    max-width: 348px;
    width: 36.9%;
}
.creator .creator_2col li:nth-child(2){
    color: #fff;
}
.creator .creator_2col .ti{
    font-size: 31px;
    font-weight: 500;
}
.creator .creator_2col .name{
    margin-bottom: 1em;
    font-size: 22px;
    font-weight: 500;
}
.creator .creator_2col .txt{
    margin-bottom: 1em;
    font-size: 14px;
}
.creator .creator_2col .txt:last-of-type{
    margin-bottom: 0;
}
.notasextoy{
    position: relative;
    z-index: 0;
    margin-top: -215px;
    padding: 284px 0 0;
    background: #E8E8E8;
    text-align: center;
}
.notasextoy img{
    max-width: 945px;
}
@media screen and (max-width: 1024px) {
    .creator .txt_box{
        margin: 0 calc(7.81cqw + (3cqw - 7.81cqw) * ((100vw - 1024px) / (769px - 1024px))) 60px;
    }
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 767px) {
    #creator{
        top: -23.2cqw;
    }
    .creator .inner{
        width: 85.33%;
        margin-top: -23.2cqw;
        padding-top: 16vw;
    }
    .creator .inner > .ti{
        font-size: 7.46cqw;
    }
    .creator .inner > .ti .en{
        font-size: 3.2cqw;
    }
    .creator .txt_box{
        padding: 51.73cqw 0 17.86cqw;
        margin: 0;
        background: center top / 48cqw auto no-repeat url(../img/about/creator_sho_sp.webp);
        text-align: center;
    }
    .creator .txt_box .ti{
        font-size: 5.33cqw;
    }
    .creator .txt_box .txt{
        font-size: 3.2cqw;
    }
    .creator .creator_2col{
        justify-content:center;
        gap:9.6cqw;
    }
    .creator .creator_2col li:first-child{
        max-width:100%;
        width: 100%;
    }
    .creator .creator_2col li:nth-child(2){
        padding-bottom: 9.06cqw;
        text-align: center;
    }
    .creator .creator_2col .ti{
        font-size: 5.33cqw;
    }
    .creator .creator_2col .name{
        font-size: 4.26cqw;
    }
    .creator .creator_2col .txt{
        font-size: 3.2cqw;
    }
    .notasextoy{
        margin-top: -25.33cqw;
        padding-top: 38.66cqw;
    }
}
/*END */


/**/
@media screen and (max-width: 1024px) {
    
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 767px) {
}
/*END */



