/*reset*/
*{
    box-sizing: border-box;
}
a,a:hover{text-decoration: none;}
img{
    max-width:100%;
}

:root {
    --color-bk:#4f4f4f;
    --color-bl:#3b579e;
    --color-lbl:#56c1b9;
    --color-pk:#ed6680;
    --color-hbl:#dbf0f0;
    
    --bg-color-lbl:rgb(219, 240, 240, 0.5);
    --bg-color-lpk:rgba(237, 102, 129, 0.1);
    --bg-color-lgy:rgba(79, 79, 79, 0.05);
    --sec-pd:64px;
    --cont-mg:48px;
    }

@media (min-width: 768px) {

    :root {
    --sec-pd:88px;
    --cont-mg:56px;
    }
    }


body{
    line-height: 1;
    font-family: YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}


.br-pc{
    display:none;
}

.font-en{
    font-family: minion-pro, serif;
    font-weight: 600;
    font-style: normal;
}


.contentWrapper {
    overflow: hidden;
    font-weight: 400;
    color: var(--color-bk);
    letter-spacing: .05em;
    /* background:rgb(237, 102, 128, 0.15); */
}

.mainContent{
    max-width:1200px;
    background:#fff;
    margin:0 auto;

}

.mainVisual__wrapper{
    text-align: center;
    max-width:1200px;
    margin:0 auto;
}

section.cont{
    padding:var(--sec-pd) 0;
}

.bgColor-bl{
    background: var(--bg-color-lbl);
}

.bgColor-pk{
    background: var(--bg-color-lpk);
    margin-top:40px;
}

.contentInner{
    padding:0 4%;
    margin: 0 auto;
    position: relative;
    z-index:2;
}

@media (min-width: 768px) {

    .br-pc{
        display:block;
    }
    .br-sp{
        display:none;
    }


    .contentInner{
        max-width: 1000px;
    }
}


/*intro
--------------------------------*/
.intro__inner{
    position: relative;
    padding:var(--sec-pd) 4%;
}

/* .intro__inner::before,.intro__inner::after{
    content:"";
    width:100px;
    height:100px;
    display: block;
    position: absolute;
    z-index:1;
}


.intro__inner::before{
    right:2%;
    top:2%;
    background:url(/img/usr/freepage/2025_jbday/intro-r.png) no-repeat right top/contain;
}

.intro__inner::after{
    left:2%;
    bottom:2%;
    background:url(/img/usr/freepage/2025_jbday/intro-l.png) no-repeat left bottom/contain;
} */

.intro__contents{
    position: relative;
    z-index:10;
}

.page__ttl-label{
    width:fit-content;
    background:var(--color-pk);
    text-align: center;
    font-weight: 600;
    font-size:13px;
    padding:8px 16px;
    border-radius: 40px;
    color:#fff;
    margin:0 auto 16px;
}

.page__ttl{
    text-align: center;
    font-size:26px;
    letter-spacing: 0.1em;
    margin-bottom:16px;
}

.page__copy{
    text-align: center;
    color:var(--color-bl);
    font-size:15px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom:12px;
}

.page__desc{
    font-size:13px;
    text-align: center;
    line-height: 2;
}



.page__desc .maker{
    font-weight: bold;
    font-size: 120%;
}

.page__desc .maker.bl{
    color: var(--color-lbl);
}

.page__desc .maker.pk{
    color: var(--color-pk);
}

.maker.line{
    border-bottom:1px solid var(--color-bk);
}

.page__desc-note{
    background:var(--bg-color-lgy);
    padding:24px 16px;
    margin-top:24px;
}

.page__desc-note ul{
    font-size:13px;
}

.page__desc-note li{
    display: grid;
    grid-template-columns: auto 1fr;
    gap:4px;
    margin-top:8px;
    line-height: 1.5;
    font-size: 13px;
}

.page__desc-note li::before{
    content:"※";
}

.event__date{
    max-width:300px;
    margin:24px auto 0;
}

@media (min-width: 768px) {

    .page__ttl{
        font-size:32px;
        margin-bottom:40px;
    }

    .intro__inner::before,.intro__inner::after{
        width:200px;
        height:150px;
    }

    .event__date{
        max-width:380px;
        margin:40px auto 0;
    }
    

        
    .page__desc{
        font-size:14px;
        padding:0;
    }

}

/*contents
--------------------------------*/
.cp_ttl_en{
    width:fit-content;
    text-align: center;
    position: relative;
    display: grid;
    place-items: center;
    margin:0 auto 24px;
}

.cp_ttl_en::before,.cp_ttl_en::after{
    content:"";
    display: block;
    width:20px;
    height:20px;
    position: absolute;
    z-index: 1;
}
.cp_ttl_en::before{
    left:-20px;
    top:-8px;
}
.cp_ttl_en::after{
    right:-20px;
    bottom:-8px;
}

.cont.bgColor-bl .cp_ttl_en::before{
    border-top:1px solid var(--color-lbl);
    border-left:1px solid var(--color-lbl);
}

.cont.bgColor-bl .cp_ttl_en::after{
    border-bottom:1px solid var(--color-lbl);
    border-right:1px solid var(--color-lbl);
}

.cont.bgColor-pk .cp_ttl_en::before{
    border-top:1px solid var(--color-pk);
    border-left:1px solid var(--color-pk);
}

.cont.bgColor-pk .cp_ttl_en::after{
    border-bottom:1px solid var(--color-pk);
    border-right:1px solid var(--color-pk);
}

.cp_ttl_en span{
    position: relative;
    z-index:2;
    font-size:32px;
    letter-spacing: 0.1em;
}
.cont.bgColor-bl .cp_ttl_en span, .cont.bgColor-bl .cp_ttl{
    color:var(--color-lbl);
}

.cont.bgColor-pk .cp_ttl_en span, .cont.bgColor-pk .cp_ttl{
    color:var(--color-pk);
}


.cp_ttl{
    text-align: center;
    margin-bottom:24px;
}
/* .cont.bgColor-bl .cp_ttl{
    color:var(--color-bl);
}

.cont.bgColor-pk .cp_ttl{
    color:var(--color-pk);
} */

.item-lists{
    display: flex;
    gap:16px;
    flex-wrap: wrap;
    margin-bottom:40px;
}

.item-lists li{
    width:calc((100% - 16px) / 2);
}

.item-lists li a p{
    font-size: 13px;
    line-height: 1.8;
    margin-top:8px;
    font-weight: 600;
}

.intro-link-txt{
    text-align: center;
}

.intro-link-txt {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    font-weight: bold;
    font-size:14px;
    margin:40px auto 24px;
}

.intro-link-txt::before,
.intro-link-txt::after {
content: "";
width: 25px;
height: 1px;
background: var(--color-bk);
margin: 0px 4px 4px;
}
.intro-link-txt::before {
transform: rotate(45deg);
}

.intro-link-txt::after {
transform: rotate(-45deg);
}

.intro-link-wrapper{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap:16px;
}

.more-link{
    display: block;
    width:fit-content;
    font-weight: bold;
    text-align: center;
    min-width:280px;
    padding:16px 24px;
    border-radius: 50px;
    color:#fff !important;
    margin:0 auto;

}
.more-link.bl{
    background:var(--color-lbl);
}

.more-link.pk{
    background:var(--color-pk);
}



@media (min-width: 768px) {



.cp_ttl_en{
    font-size:28px;
}


.item-lists li{
    width:calc((100% - 48px) / 4);
}

.intro-link-txt {
    font-size:18px;
    margin:64px auto 24px;
}

.intro-link-wrapper{
    flex-direction: row;
    gap:40px;
}

}

/*-------------------*/



.bottom__wrapper{
    background:#fff;
    border-top:2px solid var(--color-ye);
    padding:var(--cont-mg) 0;
}


.bottom_logo{
    max-width:240px;
    margin:24px auto 0;
}

@media (min-width: 768px) {


 
}






