@charset "utf-8";
/* 共通 */
main {
    padding-top: 5%;
    background-image: url(../img/about_bk.jpg);
    background-size: 110%;
    background-repeat: no-repeat;
    background-position: 20% -3%;
    background-color: rgba(255, 255, 255, 0.7);
    background-blend-mode: lighten;
}

h2 {
    font-size: 1.8vmax;
    font-weight: 400;
}

.title-p {
    font-family: "Montserrat Alternates", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2.2vmin;
    letter-spacing: .06em;
    color: #9c9c9c;
    padding-bottom: .2%;
}

/* about */
.about-wrap {
    max-width: 1100px;
    margin: 5% auto 8%;
}

.about {
    margin-bottom: 3%;
}

.about-text {
    line-height: 2em;
}

.profile-wrap {
    display: flex;
    align-items: center;
    margin-top: 6%;
}

.profile-wrap img {
    width: 30%;
    margin: 0 5%;
}

.profile {
    margin: 0 5% 0 1%;
}

.name h3 {
    font-weight: 400;
    font-size: 1.8vmax;
    margin-bottom: 3%;
}

.name p {
    font-family: "Montserrat Alternates", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 2.2vmin;
    color: #9c9c9c;
}

.profile-text {
    line-height: 2em;
}


/* skill */
.skill-wrap {
    max-width: 1100px;
    margin: 0 auto 10%;
}

.title {
    margin-bottom: 6%;
}

.skill_1-2 {
    max-width: 1100px;
    display: flex;
    justify-content: space-between;
}

.skill_1-2 img {
    width: 30%;
}

.skill-item {
    width: 50%;
}

.skill1 {
    margin-right: 5%;
}

.tool-text-p_top {
    padding-top: 4%;
}

.skill2 {
    margin-left: 5%;
}

.skill-item h3 {
    padding-bottom: 2%;
    letter-spacing: .06em;
    color: #6f6f6f;
    font-weight: 400;
    font-size: 2.8vmin;
    font-family: "Montserrat Alternates", sans-serif;
}

.skill-item h4 {
    font-weight: 500;
    font-size: 2.5vmin;
    margin: 10% 0 3%;
}

.skill-item p {
    text-align: start;
}

.skill_1-text {
    line-height: 2em;
}

.skill_2-text,
.tool-detail {
    line-height: 2em;
}

.tool-text {
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.08em;
    color: #9c9c9c;
    padding-bottom: 1%;
}


/* career */
.career-wrap {
    width: 100%;
    background-image: url(../img/suisai.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 40% 0;
    background-color: rgba(255, 255, 255, 0.5);
    background-blend-mode: lighten;
}

.max-1100 {
    max-width: 1100px;
    margin: 0 auto 6%;
}

.career {
    margin-left: 3%;
}

.career h2 {
    margin-bottom: 5%;
}

.career p {
    padding-top: 7%;
}


/* 年表 */
dd p {
    line-height: 2em;
}

dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 8%;
}

dl dt {
    text-align: right;
    width: 8.5em;
    padding: 0.5em 2em 0.5em 0.5em;
    position: relative;
    font-family: "Montserrat Alternates", sans-serif;
    font-style: normal;
    letter-spacing: 0.1em;
    font-weight: 400;
 }

dl dt::after {
    content: '●';
    position: absolute;
    right: -0.61em;
    top: 5px;
    font-size: 22px;
    color: #696969;
}

dl dd {
    width: calc(100% - 8.5em);
    padding: 0.5em 2.0em 3.0em;
    border-left: 2px solid #696969;
}

dl dd h2 {
    font-size: 22px;
    font-weight: bold;
    margin: 0 0 5px;
}


/* strength */
.strength-wrap {
    max-width: 1100px;
    margin: 0 auto;
}

.strength-item {
    text-align: center;
    margin: 9% 0;
}

.strength-item img {
    width: 20%;
}

.strength_1-3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6%;
}

.strength_1-3 img {
    width: 20%;
}

.strength_1-3 h3 {
    font-size: 2.8vmin;
    font-weight: 500;
    margin-bottom: 1.5%;
}

.strength_1-3 p {
    line-height: 2em;
    width: 75%;
}

.strength_1 {
    margin-top: 6%;
}

@media screen and (max-width: 800px) {
    main {
        background-position: 10% 1%;
    }

    /* about */
    .about-wrap {
        width: 80%;
        margin-top: 12%;
    }

    .about {
        margin-bottom: 6%;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .about h2 {
        font-size: 3.5vmax;
        padding: 0;
    }

    .about p {
        font-size: 5vmin;
        padding-top: 1%;
        padding-bottom: 1%;
    }

    .profile-wrap {
        flex-direction: column;
        margin-top: 0;
    }

    .profile-wrap img {
        width: 75%;
        margin: 11% auto 2%;
    }

    .profile {
        margin: 5% 0 0;
    }

    .name {
        flex-direction: column;
        align-items: center;
        margin-bottom: 5%;
        text-align: center;
    }

    .name h3 {
        font-size: 3.5vmax;
        margin: 0 auto;
        padding: 1% 0 0 0;
    }

    .name p {
        font-size: 5vmin;
        padding: 1% 0 0 0;
    }


    /* skill */
    .skill-wrap {
        width: 80%;
    }

    .title {
        flex-direction: column;
        margin-bottom: 10%;
        align-items: center;
        text-align: center;
    }

    .skill-wrap .title h2 {
        font-size: 3.5vmax;
        padding: 0 0 7% 0;
        margin-bottom: 2%;
    }

    .skill-wrap .title p {
        font-size: 5vmin;
        padding: 15% 0 0 0;
    }

    .skill_1-2 {
        flex-direction: column;
        align-items: center;
        padding: 0;
    }

    .skill-item {
        width: 100%;
    }

    .skill-item h3 {
        padding-bottom: 5%;
        font-size: 5vmin;
    }

    .skill-item h4 {
        font-size: 5vmin;
        margin: 10% 0 2%;
    }

    .skill2 {
        text-align: center;
        margin: 30% auto 8% 0;
    }

    .skill1 {
        text-align: center;
        margin-right: 0;
    }

    .skill_1-2 img {
        width: 45%;
    }

    .tool {
        font-size: 2.8vmin;
    }


    /* career */
    .career {
        margin-top: 18%;
        margin-left: 0;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .career h2 {
        font-size: 3.5vmax;
    }

    .career p {
        font-size: 5vmin;
        padding: 16% 0 1% 0;
    }

    dl {
        padding-bottom: 21%;
        margin-top: 13%;
    }


    /* strength */
    .strength-wrap {
        width: 80%;
    }

    .strength  {
        margin: 15% auto 11%;
        /* flex-direction: column;
        align-items: center; */
        text-align: center;
    }

    .strength h2 {
        font-size: 3.3vmax;
        padding: 0;
        white-space: nowrap;
    }

    .strength p {
        font-size: 5vmin;
        padding: 2% 0 3% 0;
    }

    .strength-item {
        margin: 0 0 15%;
    }

    .strength-item img {
        width: 32%;
    }

    .strength_1-3 {
        display: flex;
        flex-direction: column;
    }

    .strength_1-3 img {
        width: 70%;
    }

    .strength_1-3 h3 {
        font-size: 5vmin;
        margin-bottom: 6%;
    }

    .strength_1-3 p {
        padding: 10% 0 17%;
        width: 100%;
    }


    /* footer */
    footer {
        margin-top: 13%;
    }
}