.about01 {
    margin-bottom: 113px;
}

.about01__group {
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.about01__left,
.about01__right {
    width: 50%;
}

.about01__left {
    display: flex;
    justify-content: end;
    padding-right: 141px;

}

.photo__content {
    width: 280px;
    height: 420px;
    position: relative;

}

.about01__left-photo {
    z-index: 10;
    position: relative;
}

.photo__content::before {
    content: "";
    display: block;
    position: absolute;
    top: 25px;
    left: -25px;
    width: 280px;
    height: 420px;
    background-color: #FFF8D8;
    z-index: 1;
}

.about01__right-title {
    font-size: 23px;
    margin-bottom: 30px;
}

.about01__text {
    font-weight: 400;
    font-size: 20px;
}

.about01__text {
    display: inline;
    border-bottom: 1px solid transparent;
    border-image: repeating-linear-gradient(90deg,
            #C5C5C5 0,
            #C5C5C5 2px,
            transparent 2px,
            transparent 5px);
    border-image-slice: 1;
}

.about01__text-item02 {
    margin-bottom: 20px;
}

.about01__text-box {
    margin-bottom: 30px;
    font-weight: 400;
}

.about02__right-title {
    font-size: 20px;
    margin-bottom: 5px;
}

.about__title-sub {
    font-size: 15px;
    font-weight: 500;
    margin-left: 25px;
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    color: #7A6F66;
}

.text00 {
    margin-bottom: 20px;
}

.about01__group {
    margin-top: 60px;
}

.career__container {
    display: flex;
    justify-content: center;
    flex-direction: column;
    position: relative;
    margin-top: 47px;
}

.career__date,
.career__date00 {
    font-size: 18px;
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    position: relative;
    width: 103px;
}


.career__date::before,
.career__date00::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(./image/date_bg.svg);
    background-position: center;
    background-repeat: no-repeat;
    width: 106px;
    height: 90px;
    z-index: 1;
}

.career__date span,
.career__date00 span {
    z-index: 10;
    position: absolute;
    top: 30px;
    left: 33px;
}

.career__title {
    font-size: 23px;
    display: inline;
    position: relative;
    padding-bottom: 5px;
}

.career__title::after {
    background-image: url(./image/vector.svg);
    background-position: bottom;
    background-repeat: no-repeat;
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 80%;
    height: 6px;
    background-size: contain;
}

.career__date::after {
    content: "";
    display: block;
    position: absolute;
    border-left: 2px solid transparent;
    border-image: repeating-linear-gradient(180deg, #EFE8D8 0, #EFE8D8 2px, transparent 2px, transparent 5px);
    border-image-slice: 1;
    top: 0;
    left: 0;
    width: 261px;
    height: 441px;
    margin-left: 49.8%;
}

.career__date00::after {
    content: "";
    display: block;
    position: absolute;
    border-left: 2px solid transparent;
    border-image: repeating-linear-gradient(180deg, #EFE8D8 0, #EFE8D8 2px, transparent 2px, transparent 5px);
    border-image-slice: 1;
    top: 0;
    left: 0;
    width: 261px;
    height: 200px;
    margin-left: 49.8%;
}


.career__group {
    display: flex;
    justify-content: center;
}

.career__group:not(:last-of-type) {
    margin-bottom: 95px;
}

.career__box {
    padding-left: 15.1%;
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    margin-top: 25px;
    width: 800px;
}

.career__text {
    font-size: 20px;
    font-weight: 400;
}

.vision {
    margin-bottom: 113px;
}

.vision__top {
    display: flex;
    justify-content: space-evenly;
    position: relative;
    padding-bottom: 125px;
}

.vision__box-title {
    font-weight: 400;
    margin-bottom: 20px;
}

.vision__sub,
.vision__sub-text {
    font-size: 16px;
}

.vision__sub {
    display: inline-block;
    padding: 5px 15px;
    background-color: #F7F2E8;
    border-radius: 30px;
    margin-bottom: 10px;
}

.vision__item-group {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
}

.vision__box {
    width: 27.9%;
    z-index: 10;
}

.vision__bottom-text {
    text-align: center;
    font-size: 20px;
    font-weight: 400;
}

.vision__bottom-text span {
    text-transform: none;
}

.vision__top::before {
    content: "";
    display: block;
    position: absolute;
    background-image: url(./image/goal.svg);
    background-position: left;
    background-repeat: no-repeat;
    bottom: -10px;
    left: 0;
    width: 95%;
    height: 50%;
    z-index: 1;
}

.vision01 {
    margin-top: 60px;
}

.vision02 {
    margin-top: 30px;
}

.vision__container {
    margin-top: 72px;
}

.vision__sub-text {
    display: flex;
}

.vision__sub-text::before {
    content: "";
    display: block;
    width: 0.2em;
    height: 0.2em;
    background-color: #484543;
    border-radius: 50%;
    margin-right: 0.3em;
    margin-left: 0.3em;
    flex-shrink: 0;
    margin-top: 12px;
}

.vision__sub-text00::before {
    display: none;
}


.point__group02 {
    margin-top: 60px;
}

.can__group-title {
    font-size: 23px;
}

.can__group-text {
    font-size: 20px;
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    color: #6B5E52;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url(./image/circle.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    width: 142px;
    height: 121px;
}

.can__container {
    display: flex;
    flex-direction: column;
    row-gap: 75px;
    margin-top: 52px;
}

.can__group {
    display: flex;
    flex-direction: column;
    width: 526px;
    margin: 0 auto;
    row-gap: 40px;
}

.can__box {
    display: flex;
    column-gap: 50px;
}

.can {
    margin-bottom: 150px;
}

.strength {
    position: relative;
}

.strength::before {
    content: "";
    display: block;
    position: absolute;
    top: -193px;
    left: 0;
    width: 100%;
    height: 980px;
    background-image: url(./image/sakura.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* タブレット */
@media (max-width: 1020px) {
    .about01__group {
        flex-direction: column;
        margin-top: 50px;
        row-gap: 40px;
    }

    .photo__content {
        width: 180px;
        height: 270px;
    }

    .photo__content::before {
        content: "";
        display: block;
        position: absolute;
        top: 25px;
        left: -25px;
        width: 180px;
        height: 270px;
        background-color: #FFF8D8;
        z-index: 1;
    }

    .about01__left {
        padding-right: 0;
        justify-content: center;
    }

    .about01__right-title {
        font-size: 20px;
    }

    .about__title-sub {
        font-size: 14px;
    }

    .about01__right {
        width: 86.5%;
        text-align: center;
    }

    .about01__text-box {
        font-size: 18px;
    }

    .about01__text-box {
        margin-bottom: 20px;
    }

    .about01 {
        margin-bottom: 80px;
    }

    .career__date span,
    .career__date00 span {
        font-size: 15px;
        top: 22px;
        left: 24px;
    }

    .career__date::before,
    .career__date00::before {
        width: 82px;
        height: 70px;
        background-size: contain;
    }

    .career__date,
    .career__date00 {
        width: 82px;
    }

    .career__box {
        padding-left: 0;
        margin-top: 18px;
        width: 83%;
    }

    .career__title {
        font-size: 20px;
        padding-bottom: 10px;
    }

    .career__group {
        width: 100%;
        justify-content: space-between;
    }

    .career__group:not(:last-of-type) {
        margin-bottom: 50px;
    }

    .career__container {
        margin-top: 59px;
    }

    .career__text {
        font-size: 18px;
    }

    .vision__sub,
    .vision__sub-text {
        font-size: 15px;
        font-weight: 500;
    }

    .vision__box-title {
        font-size: 16px;
    }

    .vision__item-group {
        row-gap: 30px;
    }

    .vision__container {
        margin-top: 40px;
    }

    .vision02 {
        margin-top: 19px;
    }

    .vision__top::before {
        bottom: -150px;
        left: 50%;
        width: 102%;
        transform: translate(-50%, -50%);
    }

    .vision__bottom-text {
        font-size: 18px;
    }

    .vision__top {
        padding-bottom: 115px;
    }

    .vision {
        margin-bottom: 80px;
    }

    .about__point-group {
        width: 81.2%;
    }

    .about__point-img {
        width: 7.5%;
    }

    .point__group02 {
        margin-top: 30px;
    }

    .strength::before {
        top: -90px;
        width: 96%;
        height: 650px;
    }

    .can__title {
        margin-top: 80px;
    }

    .can__container {
        row-gap: 30px;
        margin-top: 40px;
    }

    .can__group {
        width: 483px;
        row-gap: 20px;
    }

    .can__group-text {
        font-size: 16px;
        width: 113px;
        height: 97px;
    }

    .can__box {
        margin-left: 41px;
    }

    .can {
        margin-bottom: 100px;
    }
}

/* スマホ */
@media (max-width: 768px) {
    .can__group {
        width: 100%;
        max-width: 393px;
    }

    .work02__title {
        margin-top: 52px;
    }

    .about01__left,
    .about01__right {
        width: 100%;
    }

    .photo__content {
        width: 42%;
        height: 100%;
        max-width: 250px;
    }

    .photo__content::before {
        top: 15px;
        left: -15px;
        width: 100%;
        height: 100%;
    }

    .about01__group {
        margin-top: 30px;
        row-gap: 25px;
    }

    .about01__right-title {
        font-size: 18px;
    }

    .about__title-sub {
        font-size: 13px;
    }

    .about01__text-box {
        font-size: 15px;
    }

    .about01__text {
        font-weight: 400;
        font-size: 15px;
    }

    .about02__right-title {
        font-size: 15px;
    }

    .about01 {
        margin-bottom: 62px;
    }

    .about__point-img {
        width: 13%;
        max-width: 65px;
    }


    .career__container {
        margin-top: 57px;
    }

    .career__date::before,
    .career__date00::before {
        width: 22px;
        height: 19px;
    }

    .career__date span,
    .career__date00 span {
        font-size: 12px;
        top: 0;
        left: 32px;
    }

    .career__date,
    .career__date00 {
        width: 82px;
        height: 20px;
    }

    .career__box {
        padding-left: 0;
        margin-top: 0;
        width: 91.3%;
        margin-left: auto;
        row-gap: 10px;
    }

    .career__group {
        flex-direction: column;
    }

    .career__title {
        font-size: 15px;
        padding-bottom: 5px;

        border-bottom: 1px solid #EFE8D8;
    }

    .career__text {
        font-size: 15px;
    }

    .career__date::after {
        margin-left: 11px;
    }

    .career__group:not(:last-of-type) {
        margin-bottom: 40px;
    }

    .career__date00::after {
        display: none;
    }

    .career__title::after {
        display: none;
    }

    .vision__title {
        margin-top: 82px;
    }

    .vision__top {
        flex-direction: column;
        padding-bottom: 85px;
    }

    .vision__box {
        width: 100%;
    }

    .vision01 {
        margin-top: 0;
    }

    .vision__item-group {
        row-gap: 20px;
    }

    .vision02,
    .vision03 {
        margin-top: 45px;
    }

    .vision__top::before {
        bottom: 0;
        left: 0;
        width: 104%;
        transform: translate(0);
        aspect-ratio: 392 / 65;
        background-size: contain;
        height: auto;
    }

    .vision__bottom {
        margin-top: 30px;
    }

    .vision__bottom-text {
        font-size: 17px;
    }

    .strength__title {
        margin-top: 60px;
    }

    .point__group02 {
        margin-top: 20px;
    }

    .can__title {
        margin-top: 60px;
    }

    .can__container {
        margin-top: 30px;
    }

    .can__group-title {
        font-size: 15px;
    }

    .can__group-text {
        font-size: 15px;
        width: 100px;
        height: 85px;
    }

    .can__box {
        margin-left: 0;
        column-gap: 24px;
    }

    .strength::before {
        top: -100px;
        width: 101%;
        height: 720px;
    }
















}