.mincho {
    font-size: 0.8rem;
}
.p-design {
    background: #000 url(../images/design/bg.webp) no-repeat center/cover;
    padding-bottom: 40px;
}
.sec__intro {
    display: flex;
    align-items: center;
    position: relative;
    padding: 120px 0 40px;
    flex-direction: column;
    color: #fff;
}
.sec__intro h2 {
    width: 80%;
    margin: 0 auto 60px;
}
.sec__intro p {
    font-size: 1.1rem;
    letter-spacing: 0.2em;
    line-height: 2.8;
}
.sec__mv {
    display: flex;
    align-items: center;
    position: relative;
    padding: 40px 0;
}
.sec__mv .img {
    width: 60%;
}
.sec__mv .txt-blk {
    width: 40%;
    margin-left: -80px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.sec__mv .txt-blk h2 {
    margin-bottom: 20px;
}
.sec__mv .txt-blk p {
    color: #fff;
    text-align: left;
    line-height: 2.4;
    letter-spacing: 0.1em;
}
.txt_vertical-blk {
    position: absolute;
    top: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}
.txt_vertical-blk p {
    color: #fff;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
}
.sec_img {
    margin-bottom: 60px;
}
.sec_img .img {
    margin-bottom: 20px;
}
.sec_img h2 {
    width: 60%;
    margin: 0 auto 10px;
}
.sec_img p {
    color: #fff;
    line-height: 1.8;
}

@media screen and (max-width: 960px) {/*スマホ設定*/
    .sec__intro .txt-blk {
        width: 90%;
    }
    .sec__intro h2 {
        width: 100%;
        margin: 0 auto 40px;
    }
    .sec__intro .txt-blk p {
        font-size: 1.0rem;
        text-align: left;
        line-height: 2.1;
    }
    .sec__mv {
        padding: 80px 0 0;
        flex-direction: column-reverse;
        gap: 20px;
        margin-bottom: 60px;
    }
    .sec__mv .txt-blk {
        width: 90%;
        margin-left: 0;
        order: 1;
        padding: 0 16px;
    }
    .sec__mv .txt-blk h2 {
        margin: 0 auto 10px;
        width: 30%;
    }
    .sec__mv .txt-blk p {
        color: #fff;
        text-align: center;
        line-height: 1.8;
        letter-spacing: 0.1em;
    }
    .sec__mv > .img {
        width: 90%;
        order: 2;
    }
    .sec__mv .txt_vertical-blk {
        position: relative;
        order: 3;
        flex-direction: column;
        width: 96%;
        margin-bottom: 40px;
        top: 0;
        padding: 0 16px;
    }
    .sec__mv .txt_vertical-blk p {
        writing-mode: horizontal-tb;
        text-align: left;
        font-size: 0.8rem;
    }
    .txt_vertical-blk > .img {
        width: 25%;
    }
    .sec_img h2 {
        width: 90%;
    }
}