.company {
    margin: 210px 140px;
}

.company hr {
    margin: 35px 0;
}

.flex-content {
    width: 100%;
    display: flex;
    font-size: 16px;
}

.flex-content .title {
    width: 140px;
    font-weight: bold;
}

.flex-content p {
    margin: 8px 0;
    display: block;
}

.flex-content .address {
    margin-bottom: 35px;
}

.flex-content .role p:nth-child(1) {
    width: 150px;
    margin-right: 10px;
    
}

.flex-content .number {
    display: inline-block;
    width: 200px;
}

.flex-content .role {
    display: flex;
}

.flex-content .role .sp {
    display: none;
}

@media screen and (max-width: 1250px) {
    .company {
        margin: 140px 35px 210px 35px;
    }

    .flex-content {
        width: 90%;
        flex-direction: column;
        padding-left: 35px;
    }

    .flex-content .title {
        transform: translate(-25%, 0%);
    }

    .flex-content .role p:nth-child(2) {
        width: 80%;      
    }

    .flex-content .number {
        width: 56%;
    }
}

@media screen and (max-width: 750px) {
    .flex-content .role .sp {
        display: block;
    }

    .flex-content .role p:nth-child(2) {
        line-height: 2;    
    }

    .flex-content {
        font-size: 14px;
    }
}

.philosophy-list {
	padding-left: 70px;
}

.philosophy-item {
    display: flex;
    flex-direction: column;
    margin: 0 2vw;
}

.philosophy-item img {
    width: 30%;
    height: 20%;
    object-fit: contain;
    margin: 0 auto;
}

.philosophy-item h3 {
    text-align: center;
    color: #4876DD;
    font-size: 21px;
}

@media screen and (max-width: 1500px) {
    .philosophy-list {
        flex-wrap: wrap;
        justify-content: center;
		padding-left: 0;
    }

    .philosophy-item {
        width: 100%;
        margin: 70px 0;
    }

    .philosophy-item img {
        width: 40%;
        height: 30%;
        object-fit: contain;
        margin: 0 auto;
    }
}

@media screen and (max-width: 1150px) {
    .philosophy-item h3 {
        display: block;
    }

    .philosophy-item img {
        width: 50%;
        height: 50%;
        object-fit: contain;
        margin: 0 auto;
    }
}

@media screen and (max-width: 1150px) {
    .philosophy-list {
        display: flex;
    }
}

@media screen and (max-width: 1000px) {
    .philosophy-list {
        padding-left: 0;
    }
}

@media screen and (max-width: 670px) {
    .philosophy-intro {
        padding: 70px 35px 0 35px;
    }
	
	.philosophy-item {
        width: 100%;
        margin: 0;
    }
}

.history {
    margin: 210px;
}

.history .flex-content {
    margin-bottom: 45px;
}

.history .flex-content span {
    display: inline-block;
    width: 20px;
}

.history .flex-content .history-content {
    display: flex;
}

.history .flex-content .history-content p:nth-child(1) {
    width: 20px;
}

@media screen and (max-width: 1050px) {
    .history {
        margin: 140px 20px 210px 20px;
    }
	
	.history .flex-content {
        width: 100%;
    }

    .history .flex-content p {
        line-height: 2;
    }
}