.page_nav ul {
    max-width: 850px;
    width: 95%;
    margin: 30px auto 0;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 0 2%;
}

.page_nav ul li a {
    display: block;
    background-color: #7cc2e6;
    padding: 10px 0;
    position: relative;
}

.page_nav ul li a::after {
    position: absolute;
    translate: 0 -50%;
    right: 20px;
    top: 50%;
    content: '\0232A\0232A';
    font-size: 1.5em;
    letter-spacing: -0.7em;
    margin-left: 10px;
}

.page_nav ul li .black_bg_txt {
    font-size: clamp( 13px, 1.5vw, 17px);
    width: calc(100% - 50px);
    clip-path: polygon(95% 0, 100% 50%, 95% 100%, 0 100%, 0 0);
    display: block;
    background-color: #231815;
    color: #fff;
    letter-spacing: 0.1em;
    padding: 5px 10px;
}

.page_nav ul li .txt {
    font-size: clamp( 12px, 1.3vw, 16px);
    width: calc(100% - 50px);
    display: block;
    padding: 8px 0 0 10px;
    font-weight: 400;
}


.sec_wrap {
    display: flex;
    flex-direction: column;
    gap: 120px 0;
    margin-top: 80px;
}

.sec_ttl_wrap {
    max-width: 900px;
    margin: 0 auto 30px;
    display: grid;
    grid-template-columns: 45% 1fr;
}

.sec_ttl_wrap .txt_wrap {
    background-color: #7cc2e6;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px 10px;
    align-self: center;
}

.sec_ttl_wrap .txt_wrap .black_bg_txt {
    font-size: clamp( 13px, 1.5vw, 17px);
    clip-path: polygon(90% 0, 100% 50%, 90% 100%, 0 100%, 0 0);
    background-color: #231815;
    color: #fff;
    letter-spacing: 0.1em;
    padding: 1px 30px 1px 10px;
}

.sec_ttl_small {
    font-weight: 400;
    font-size: clamp( 15px, 1.5vw, 16px);
}

.sec_ttl {
    font-size: clamp( 20px, 2.5vw, 25px);
    font-weight: 400;
}

.sec_inner {
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 80px 8%;
}

.sec_lead {
    font-weight: 400;
    font-size: clamp( 18px, 2vw, 24px);
    margin-bottom: 15px;
}

.sec_txt {
    font-size: clamp( 14px, 1.5vw, 16px);
    line-height: 1.8;
}

.sec_txt .blue {
    color: #187fc3;
}

.sec_txt .orange {
    color: #db5434;
}

.sec_txt .underline {
    background: linear-gradient(
        to bottom,
        transparent 60%,
        #fff697 60%
    );
}

.dashed {
    grid-column: 1/3;
    background-image : linear-gradient(to right,
        #888888, 
        #888888 6px,
        transparent 6px    
    );
    background-size: 9px 1px;
    background-position: left bottom;
    background-repeat: repeat-x;
    padding-bottom: 50px;
    position: relative;
    margin-bottom: -20px;
}

.dashed::after {
    content: '';
    background-image: url(../images/interview/dashed_deco.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    bottom: -7px;
    left: 0;
    width: 25px;
    height: 15px;
}

/* SP調整 */
@media screen and (max-width:730px) {

    .page_nav ul {
        width: 90%;
        display: flex;
        flex-direction: column;
        gap: 10px 0;
        margin-top: 20px;
    }

    .page_nav ul li a {
        display: flex;
        align-items: center;
        gap: 0 10px;
    }

    .page_nav ul li .black_bg_txt {
        width: auto;
        clip-path: polygon(90% 0, 100% 50%, 90% 100%, 0 100%, 0 0);
        padding: 5px 30px 5px 10px
    }

    .page_nav ul li .txt {
        width: auto;
        padding: 0;
    }

    .sec_wrap {
        margin-top: 40px;
    }

    .sec_ttl_wrap {
        display: flex;
        flex-direction: column;
    }

    .sec_ttl_wrap .txt_wrap .black_bg_txt {
        clip-path: polygon(92% 0, 100% 50%, 92% 100%, 0 100%, 0 0);
        padding: 2px 30px 2px 10px;
    }

    .sec_inner {
        gap: 40px 0;
    }

    .dashed {
        margin-bottom: 0;
        padding-bottom: 40px;
    }

    .dashed::after {
        bottom: -7px;
        width: 24px;
        height: 14px;
    }

    .bottom_note {
        margin-top: 50px;
    }
}

.sec01 .sec_inner {
    display: grid;
    grid-template-columns: repeat(2,1fr);
}

.sec01 .container02 {
    grid-column: 1/3;
    display: grid;
    grid-template-columns: 1fr 50%;
    gap: 30px;
}

.sec01 .container02 .box01 {
    grid-column: 2;
    grid-row: 1;
}

.sec01 .container03 {
    grid-column: 1/3;
    display: grid;
    grid-template-columns: 53% 1fr;
    gap: 50px;
}

.sec01 .container04 .box02 {
    margin-top: 30px;
}

.sec01 .container05 {
    grid-column: 2;
    grid-row: 5/7;
}

.sec01 .container05 .box02 {
    margin-top: 30px;
}

.sec01 .container06 .box02 {
    margin-top: 30px;
}

.sec01 .container07 .image {
    max-width: 800px;
    margin: 20px auto 0;
}

/* SP調整 */
@media screen and (max-width:730px) {

    .sec01 .sec_inner {
        display: flex;
        flex-direction: column;
    }

    .sec01 .container02 {
        display: flex;
        flex-direction: column;
        gap: 20px 0;
    }

    .sec01 .container03 {
        display: flex;
        flex-direction: column;
        gap: 20px 0;
    }

    .sec01 .container04 .box02 {
        margin-top: 20px;
    }

    .sec01 .container05 .box02 {
        margin-top: 20px;
    }

    .sec01 .container06 .box02 {
        margin-top: 20px;
    }
}


.sec02 .container02 {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 10px 40px;
}

.sec02 .container02 .sec_lead {
    grid-column: 1/3;
}

.sec02 .container03 {
    margin-top: -20px;
}

.sec02 .container04 {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 0 40px;
}

.sec02 .container05 .box02 {
    margin-top: 30px;
    max-width: 900px;
}



/* SP調整 */
@media screen and (max-width:730px) {

    .sec02 .container02 {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .sec02 .container02 .box02 {
        margin-top: 20px;
    }

    .sec02 .container03 {
        margin-top: 0;
    }

    .sec02 .container04 {
        display: flex;
        flex-direction: column;
        gap: 20px 0;
    }
}


.sec03 .container02 {
    display: grid;
    grid-template-columns: 51% 1fr;
    gap: 0 50px;
}

.sec03 .container02 .sec_lead {
    grid-column: 1/3;
    margin-bottom: 25px;
}

.sec03 .container02 .box01 .image_wrap {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 0 15px;
    margin-top: 20px;
}

.sec03 .container02 .box02 {
    margin-top: 20px;
}

.sec03 .container02 .box03 {
    grid-column: 2;
    grid-row: 2/4;
}

.sec03 .container03 {
    display: grid;
    grid-template-columns: 51% 1fr;
    gap: 0 50px;
}

.sec03 .container03 .sec_lead {
    grid-column: 1/3;
    margin-bottom: 25px;
}

.sec03 .container04 .image {
    margin-top: 30px;
    max-width: 900px;
}

/* SP調整 */
@media screen and (max-width:730px) {

    .sec03 .container02 {
        display: flex;
        flex-direction: column;
    }

    .sec03 .container02 .sec_lead {
        margin-bottom: 20px;
    }

    .sec03 .container02 .box03 {
        margin-top: 20px;
    }

    .sec03 .container03 {
        display: flex;
        flex-direction: column;
    }

    .sec03 .container03 .sec_lead {
        margin-bottom: 20px;
    }

    .sec03 .container03 .box02 {
        margin-top: 20px;
    }

    .sec03 .container04 .image {
        margin-top: 20px;
    }
}