.firstview {
    padding-top: 80px;
    border-bottom: 5px solid #D90429
}

.firstview .inner {
    padding: 5em 0
}

.firstview .inner .title {
    text-align: center;
    width: 100%
}

.firstview .inner .title h1 {
    font-size: 2.6em;
    margin-bottom: .3em
}

.firstview .inner .title .subtitle {
    color: #D90429;
    font-weight: bold
}

.firstview .inner .button {
    width: 100%
}

.firstview .inner .button a {
    width: 100%
}

@media screen and (max-width: 600px) {
    .firstview .inner {
        padding: 3em 0
    }

    .firstview .inner .title h1 {
        font-size: 2em
    }
}

.section {
    padding: 2em 0;
}
.main-box .box{
    align-items: stretch;
}

.how-to-choice h2 {
    padding: 0.3em 0.8em;
    border-bottom: 3px solid #D90429;
    display: inline-block;
    font-size: 2.3em;
    margin-bottom: 1em;
}

.how-to-choice .text-left {
    text-align: left;
}

.main-box .text {
    margin: 1em;
    padding: 1em;
    width: calc(50% - 1em);
    border: 1px solid #707070;
}

.main-box .text .sub-title {
    background: #fff;
    text-align: center;
    width: fit-content;
    padding: 0.2em 1em;
    margin: 0 auto;
    font-size: 24px;
    transform: translateY(-1.5em);
}

.main-box .text .product-name {
    font-size: 18px;
    transform: translateY(-1em);
    text-align: center;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: center;
    -webkit-box-align: center;
    align-items: flex-end;
}
.main-box .text .product-name img{
    margin-right: 0.5em;
}

.content-box .casebox {
    border: 1px solid #707070;
    position: relative;
    padding: 2em 1em;
    margin: 5em 0;
}

.content-box .casebox .casetitle {
    position: absolute;
    width: fit-content;
    top: 0;
    left: 1em;
    transform: translateY(-50%);
    font-size: 24px;
    background: #fff;
    padding: 0 0.5em;
}

.content-box .casebox .casetitle span {
    background: #707070;
    margin-right: 0.5em;
    padding: 0.3em;
    color: #fff;
    border-radius: 10px;
}

.content-box .casetext {
    width: calc(60% - 1em);
    margin: 1em;

}

.content-box .caseimg {
    width: calc(40% - 1em);
    margin: 1em;
}

@media screen and (max-width: 600px) {
    .main-box .box {
        display: block;
    }

    .main-box .text {
        width: 100%;
        margin: 3em 0;
    }

    .content-box .casebox {
        padding: 1em;
    }

    .content-box .caseimg,
    .content-box .casetext {
        width: 100%;
        margin: 1em 0;
    }

    .content-box .casebox .casetitle {
        font-size: 18px;
        text-align: left;
        padding: 0;
    }

    .content-box .casebox .casetitle span {
        display: block;
        width: fit-content;
        margin-bottom: 0.5em;
    }

    .content-box .casebox .casetitle span::after {
        content: '\A';
        white-space: pre;
    }

    .content-box .casebox .casetitle {
        font-size: 18px;
        text-align: left;
        position: static;
        transform: translateY(0);
    }
}