/*color*/
:root {--mainColor:#2833a6;}

.pc- {
    display: block;
}
.sp- {
    display: none;
}

/*lead-box*/
.lead-box{
    margin:2em 0 1em;
    font-family:"Noto Sans JP", sans-serif;
    font-weight: 400;
}
.lead-box__title{
    font-size: 24px;
    margin-bottom:56px;
    color:var(--mainColor);
    line-height: 1.5;
    text-align: center;
}
.lead-box__subtitle{
    font-size:20px;
    text-align: center;
    margin-bottom:32px;
    color: #fff;
    background: var(--mainColor);
    padding: 0.6em 0.8em;
}
.lead-box__text{
    margin:20px;
    font-size: 18px;
}
.lead-box__bg{
    background-color: #F2F9FF;
    padding: 20px;
    text-align: center;
    width:80%;
    margin: 0 auto;
}

/*overview-box*/
.overview-box{
    margin: 0 0 32px 16px;
    font-size: 18px;
}
.overview-box:last-of-type{
    margin-bottom: 0;
}
.overview-box dt{
    margin-bottom:16px;
    padding-left:8px;
    font-weight: bold;
    border-left:8px solid var(--mainColor);
}
.overview-box dd{
    margin-left:16px;
}

/*t-caution*/
.t-caution{
    display:block;
    margin-top:1em;
    font-size:12px;
}

/*cw-prod-ttl-main*/
.cw-prod-ttl-main{
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.01em;
    line-height: 1.5;
    text-align: center;
    margin-top: 0px;
}


/*img*/
.u-img--100 img{width: 100%;}

.goods-box img{
    display: block;
}

.pic-box .pic img{
    max-width: 100%;
    height: auto;
}
.pic-box .pic img{
    max-width: 80%;
    height: auto;
    margin: 0 auto;
}

/*layout*/
.goods-box {
    font-family: "Noto Sans JP", sans-serif;
    margin: 36px auto 24px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
    gap:16px;
    overflow: hidden;
    width: 100%;
}


.goods-box .goods {
    /* width: 32vw; */
    width: calc(100% / 2 - 16px);
    min-width: 432px;
    min-height: 542px;
}
.goods-box .goods .goods_inner {
    background: #F5F9FA;
    min-height: 650px;
    padding: 20px 0 30px;
    box-sizing: border-box;
}

.goods-box .goods.last .goods_inner {
    background: #F5F9FA;
    min-height: 342px;
    box-sizing: border-box;
}

.goods-box .goods .box-no {
    margin-bottom: 0.7638888889vw;
    font-size: 22px;
    font-weight: 500;
}
.goods-box .goods .box-no em {
    font-size: 52px;
    letter-spacing: .1em;
}
.goods-box .goods .box-start {
    margin: 0 auto 14px;
    width: 400px;
    height: 30px;
    font-size: 18px;
    line-height: 30px;
}
.goods-box .goods .box-start {
    margin: 0 auto 14px;
    width: 80%;
    height: 40px;
    font-size: 18px;
    line-height: 46px;
    font-weight: 600;
}

.goods-box .goods .box-tit {
    font-size: 28px;
    color:#1D41B7;
    line-height: 1.5;
    font-weight: 600;
}
.goods-box .goods .box-tit span {
    margin-bottom: -0.0694444444vw;
    font-size: 18px;
}
.goods-box .goods .box-tit  img{
    max-width: 100%;
    height: auto;
}
.goods-box .goods .pic-box {
    margin: 0.9722222222vw auto 1.0416666667vw;
    /* width: 27.7777777778vw; */
    width: 80%;
}

.goods-box li {
    text-align: center;
}
.goods-box li:nth-child(3) {
    /* width: 67vw; */
    width: 99%;
    min-height: 342px;
}
.goods-box li:nth-child(3) .pic{
    height: auto;
}
.goods-box li:nth-child(3) .set-info-box {
    margin: 36px 30px auto 6vw;
    width: 100%;
    font-weight: 400;
    text-align: left;
}

.goods-box li:nth-child(3) .set-info-box p {
    font-size: 13px;
    color: #0F2E8E;
}

.goods-box li .pic-box .pic {
    position: absolute;
    top: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.3s ease-out;
}
.goods-box li .pic-box .pic.on {
    position: relative;
    opacity: 1;
    z-index: 2;
}

.warning-box {
    color: #0F2E8E;
    border: 1px solid #0F2E8E;
    font-weight: 400;
    line-height: 1.75;
    margin: 1.3194444444vw auto 64px;
    padding: 0.9027777778vw;
    width: 97.5%;
    font-size: 15px;
}

.note {
    font-size: 14px;
    text-align: left;
    display: block;
    width: 100%;
    margin: 0 auto;
}
.note-text {
    margin: 0 auto;
    text-align: left;
    width: auto;
    text-indent: -1em;
    padding-left: 1em;
    font-size: 12px;
}
.overview-box--present .note-text {
    text-align: center;
}

.goods-box-inner{
    display: flex;
    flex-direction: row;
    width: 80%;
    margin: 24px auto 50px 19%;
}

.warning{
    font-size: 14px;
    width: 39%;
    color: #0F2E8E;
    border: 1px solid #0F2E8E;
    text-align: center;
    padding: 24px;
    margin-top: 24px;
}

@media screen and (max-width:760px) {

    .pc- {
        display: none;
    }
    .sp- {
        display: block;
    }

    /*lead-box*/
    .lead-box{
        margin:2em 0 1em;
        font-family:"Noto Sans JP", sans-serif;
        font-weight: 400;
    }
    .lead-box__title{
        margin: 0 0 16px;
        color:var(--mainColor);
        text-align:center;
        line-height: 1.8;
        font-size: 4.2vw;
    }
    .lead-box__title strong{
        font-size: 4.2vw;
        color: var(--mainColor)
    }
    .lead-box__subtitle{
        font-size:15px;
        margin-bottom:32px;
        color:var(--mainColor);
    }
    .lead-box__subtitle strong{
        font-size: 3.6vw;
        margin-bottom: 0px;
        color: #fff;
        background: var(--mainColor);
        padding: 0.6em 0.5em;
        width: 95.8%;
        display: block;
    }
    .lead-box__text{
        margin:1em 0 1.5em;
    }
    .lead-box__bg{
        background-color: #F2F9FF;
        padding: 20px;
        text-align: center;
        width:80%;
        margin: 0 auto 30px auto;
    }

    /*overview-box*/
    .overview-box{
        margin-bottom:46px;
        margin-left: 0;
    }
    .overview-box-span{
        font-weight: 600;
        color:var(--mainColor);
    }
    .overview-box dt{
        margin-bottom:16px;
        padding-left:8px;
        font-weight: bold;
        border-left:8px solid var(--mainColor);
    }
    .overview-box dd{
        margin-left:16px;
    }

    /*cw-prod-ttl-main*/
    .cw-prod-ttl-main{
        font-size: 18px;
        font-weight: 400;
        letter-spacing: 0.01em;
        line-height: 2;
        text-align: center;
        margin: 40px auto 0;
    }

    /* img */
    .goods-box .goods .pic-box {
        margin: 3.7333333333vw 0 3.2vw;
        width: 90vw;
    }
    .goods-box li:nth-child(3) .pic {
        width: 70vw;
        height: auto;
        margin-left: 0;
    }
    .goods-box li:nth-child(3) .set-info-box {
        font-weight: 400;
        text-align: left;
        margin: 26px 18vw auto 0;
    }

    /* layout */
    .goods-box {
        display: flex; 
        justify-content: center;
        flex-direction: column;
        align-items: center;
        width: 100%;
        gap: 3vw;
        margin-top: 0;
        margin-bottom: 4.5vw;
    }
    .goods-box .goods {
        padding-bottom: 4.5vw;
        width: 100%;
        min-width: 100%;
        min-height: auto;
    }
    .goods-box .goods .goods_inner {
        min-height: auto;
    }
    .goods-box .goods .box-tit {
        font-size: 5vw;
        width: 90vw;
    }
    .goods-box .goods .box-tit span {
        margin-bottom: -0.5333333333vw;
        font-size: 3.7333333333vw;
    }
    .goods-box-inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 24px auto 0;
    }
    .goods-box li:nth-child(3) {
        width: 100%;
        height: auto;
    }
    .goods-box li:nth-child(3) .set-info-box p{
        font-size: 13px;
        padding-left: 6vw;
    }

    .warning-box {
        margin: 4.5vw auto 0;
        padding: 3.4666666667vw 4.3333333333vw;
        width: auto;
        font-size: 11.5px;
        text-align: left;
    }
    .product .p-product__header {
        margin: 50px 0 0;
        padding: 0 5.2%;
    }
    .warning{
        width: auto;
        padding: 12px;
        font-size: 12px;
    }

    .overview-box--present .note-text {
        text-align: left;
    }
}