/* ==================================

    Company -  会社概要

================================== */

.wrapper {
    padding: 64px 0 0 0;
}

.wrapper section {
    width: 980px;
    margin: 0 auto 160px auto;
}

@media screen and (max-width: 1024px) {
    .wrapper section {
        width: 100%;
        margin: 0 auto 160px auto;
        padding: 0 16px;
    }
}

.wrapper section h2,
.wrapper section h3,
.wrapper section h4,
.wrapper section h5 {
    font-size: 3.0rem;
/*    font-weight: bold;*/
    line-height: 2.0;
}

@media screen and (max-width: 640px) {
    .wrapper section#prof {
        width: 100%;
        padding: 16px;
    }
}

.wrapper section h3 {
    text-align: right;
}

.wrapper section h4 {
    text-align: left;
}

.wrapper section h5 {
    text-align: center;
}

.wrapper section ul {
    padding: 8px 0;
}

.wrapper section ul:nth-child(even) {
    background-color: rgba(230, 230, 230, 0.3);
}

.wrapper section ul li {
    display: inline-block;
    letter-spacing: 0.08em;
/*    font-weight: bold;*/
    padding: 8px 16px;    
}

.wrapper section ul li:nth-of-type(1) {
    width: 120px;
    vertical-align: top;
}

@media screen and (max-width: 640px) {
    .wrapper section ul li:nth-of-type(1) {
        width: 35%;
    }

    .wrapper section ul li:nth-of-type(2),
    .wrapper section ul li:nth-of-type(3) {
        width: calc(65% - 8px);
    }
}

.message-img-box {
    width: 250px;
    margin-right: 64px;
    margin-top: 64px;
}

section#msg section {
    width: calc(100% - 250px);
    margin-bottom: 0;
}

@media screen and (max-width: 640px) {
    .message-img-box {
        width: 70%;
        margin: 0 auto;
        padding: 16px;
    }
    #msg .flex-around {
        display: block;
    }
    section#msg section {
        width: 100%;
        padding: 16px;
    }
}

section#msg section p {
/*    font-weight: bold;*/
    line-height: 1.8;
    letter-spacing: 0.08em;
    margin-bottom: 16px;
    text-align: justify;
}

.introduction-img-box {
    width: calc(980px - 50% - 32px);
}

section#intro section {
    width: 50%;
    margin-right: 32px;
}

section#intro section ul li:nth-of-type(3) {
    margin-left: 123px;
    padding: 8px 16px;
}

@media screen and (max-width: 1024px) {
    section#intro section {
        padding: 0;
        margin: 0 auto 0 0;
    }
}

@media screen and (max-width: 640px) {
    section#intro .flex-around-row-reverse {
        display: block;
    }

    .introduction-img-box {
        width: 100%;
        padding: 16px;
    }

    section#intro section {
        width: 100%;
        padding: 16px;
        margin: 0;
    }

    section#intro section ul li:nth-of-type(3) {
        width: calc(65% - 8px);
        margin: 0 0 0 36%;
    }
}

.wrapper section iframe {
    width: 100%;
    margin: 0;
}
