@charset "utf-8";

/** ▼▼▼ main ▼▼▼ **/
.main {
    width: 100%;
    height: 160px;
    margin: -70px 0 0 0;
    padding: 490px 0 0 0;
    background: url(../images/img_main.png) no-repeat center center / cover;
}

.main h2 {
    width: 1000px;
    /**margin: -260px auto 0 auto;**/
    margin: 0 auto;
    font-size: 1.87em;
    line-height: 130%;
    font-weight: 300;
    color: #333333;
    background: rgba(0,0,0,0);
}

.main h2 span {
    display: inline-block;
    padding: 10px 20px;
    background: rgba(255,255,255,0.6);
    border-radius: 3px;
}
/** ▲▲▲ main ▲▲▲ **/

/** ▼▼▼ about ▼▼▼ **/
.about p {
    margin: 50px 0 0 0;
}

.about div {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 50px 0 0 0;
}

.about div ul {
    width: 300px;
    margin: 50px 0 0 0;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;

    align-self: flex-start;
    list-style: none;
}

.about div ul li {
    width: 300px;
}

.about div ul li img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.about div ul li h4 {
    position: relative;
    top: -25px;
    width: 260px;
    padding: 15px 0 0 0;
    font-size: 0.81em;
    font-family: serif;
    font-weight: 700;
    color: #96A0A6;
    background: #F7F5F2;
    border-radius: 0 10px 0 0;
}

.about div ul li h4 span {
    display: block;
    margin: 20px 0 0 0;
    font-size: 1.92em;
    font-weight: 700;
    color: #333333;
}

.about div ul li p {
    width: 300px;
    margin: -5px 0 0 0;
}
/** ▲▲▲ about ▲▲▲ **/

/** ▼▼▼ works ▼▼▼ **/
/**.works {
    margin: 100px 0 75px 0;
    padding: 100px 0;
    background: #E5F4FD;
}**/

.works p {
    margin: 50px 0 0 0;
    padding: 0 0 50px 0;
}

.works ul {
    width: 650px;
    margin: 50px auto 0 auto;
    list-style: none;
    display: flex;
    flex-direction: column;
}

.works ul li img {
    width: 650px;
    height: auto;
    border-radius: 10px;
}

.works ul li h4 {
    position: relative;
    top: -20px;
    width: 500px;
    height: 20px;
    padding: 20px 0 0 0;
    font-size: 1.56em;
    font-family: serif;
    font-weight: 700;
    border-radius: 0 10px 0 0;
    background: #F7F5F2;
}

.works ul li p {
    width: 500px;
    margin: 0;
    padding: 0;
}
/** ▲▲▲ works ▲▲▲ **/

/** ▼▼▼ company ▼▼▼ **/
/**.company {
    margin: 150px 0;
}**/

.company p {
    margin: 50px 0 0 0;
}

.company ul {
    width: 650px;
    margin: 70px auto 0 auto;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
}

.company ul li {
    padding: 30px 0 30px 20px;
}

.company ul li.heading {
    width: 180px;
    font-family: serif;
    font-weight: 600;
    border-bottom: 1px solid #797979;
}

.company ul li.content {
    width: 430px;
    border-bottom: 1px solid #CCCCCC;
}

.company div {
    width: 650px;
    height: 500px;
    margin: 50px auto 0 auto;
}
/** ▲▲▲ company ▲▲▲ **/

/** ▼▼▼ contact ▼▼▼ **/
/**.contact {
    margin: 150px 0 0 0;
    padding: 100px 0 150px 0;
    background: #E5F4FD;
}**/

/**.contact h3 {
    width: 1000px;
    margin: 50px auto 0 auto;
}**/

.contact p {
    margin: 50px 0 0 0;
}

.contact form {
    margin: 100px 0 0 0;
}

.contact ul {
    width: 650px;
    display: flex;
    list-style: none;
    margin: 25px auto 0 auto;
}

/**.contact ul li {
    margin: 0 0 25px 0;
}**/

.contact ul li.headline {
    width: 220px;
    margin: 0;
    padding: 12px 0 0 0;
    font-family: serif;
    font-weight: 600;
}

.contact ul li.headline::after {
    content: "必須";
    width: 50px;
    height: 25px;
    margin: 0 0 0 10px;
    background: #797979;
    padding: 3px 6px;
    border-radius: 5px;
    font-family: sans-serif;
    font-weight: 300;
    color: #FFFFFF;
}

.contact ul li.input {
    width: 430px;
}

.contact ul li input {
    width: 410px;
    height: 50px;
    padding: 0 10px;
    border: 0;
    background: #FFFFFF;
    border: #CCCCCC 1px solid;
    border-radius: 10px;
    font-size: 1em;
    font-weight: 300;
    color: #333333;
}

.contact ul li textarea {
    width: 410px;
    height: 180px;
    padding: 10px;
    background: #FFFFFF;
    border: #CCCCCC 1px solid;
    border-radius: 10px;
    resize: none;
    font-size: 1em;
    font-weight: 300;
    color: #333333;
}

.contact .send {
    margin: 50px 0 0 0;
    text-align: center;
}

.button {
    width: 250px;
    height: 50px;
    background: #797979;
    border: 0;
    border-radius: 10px;
    font-weight: 700;
    color: #FFFFFF;
}

.error {
    color: #FF0000;
}

/** 確認 **/
.confirm {
    width: 800px;
    margin: 100px auto;
    padding: 0;
}

.confirm h2 {
    width: 800px;
}

.confirm p {
    width: 800px;
    margin: 50px auto 0 auto;
}

.confirm ul {
    width: 800px;
    margin: 100px auto 0 auto;
    padding: 0;
    display: flex;
    justify-content: space-between;
    list-style: none;
}

.confirm .headline {
    width: 200px;
}

.confirm .input {
    width: 600px;
    border-bottom: 1px solid #A99781;
    font-size: 1.2em;
}

.confirm .submit {
    width: 550px;
    margin: 100px auto 0 auto;
    display: flex;
    justify-content: space-between;
}

.button_02 {
    width: 250px;
    height: 50px;
    border: 1px solid #797979;
    border-radius: 10px;
    background: #FFFFFF;
    font-size: 0.93em;
    font-weight: 700;
    color: #797979;
}
/** //確認 **/
/** ▲▲▲ contact ▲▲▲ **/

@media (max-width: 640px) {
    /** ▼▼▼ main ▼▼▼ **/
    .main {
        height: 450px;
        margin: 70px 0 0 0;
        padding: 10px 0 0 0;
        background: url(../images/img_main.png) no-repeat -245px center / cover;
        /**width: 100%;**/
    }

    .main h2 {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        width: 100px;
        margin: 0 0 0 260px;
        font-size: 1.40em;
        /**margin: 0 auto;**/
        /**line-height: 130%;**/
        /**font-weight: 100;**/
        /**color: #333333;**/
        /**background: rgba(0,0,0,0);**/
    }

    .main h2 span {
        padding: 15px 10px;
        /**display: inline-block;
        background: rgba(255,255,255,0.6);
        border-radius: 3px;**/
    }
    /** ▲▲▲ main ▲▲▲ **/
    
    /** ▼▼▼ about ▼▼▼ **/
    /**.about p {
        margin: 50px 0 0 0;
    }**/

    .about div {
        /**display: flex;
        justify-content: space-between;
        flex-wrap: wrap;**/
        margin: 0;
    }

    .about div ul {
        width: 100%;
        /**margin: 50px 0 0 0;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        align-self: flex-start;
        list-style: none;**/
    }

    .about div ul li {
        width: 100%;
    }

    /**.about div ul li img {
        width: 100%;
        height: auto;
        border-radius: 10px;
    }**/

    /**.about div ul li h4 {
        position: relative;
        top: -25px;
        width: 260px;
        padding: 15px 0 0 0;
        font-size: 0.81em;
        font-family: serif;
        font-weight: 700;
        color: #96A0A6;
        background: #F7F5F2;
        border-radius: 0 10px 0 0;
    }**/

    /**.about div ul li h4 span {
        display: block;
        margin: 20px 0 0 0;
        font-size: 1.92em;
        font-weight: 700;
        color: #333333;
    }**/

    .about div ul li p {
        width: 100%;
        /**margin: -5px 0 0 0;**/
    }
    /** ▲▲▲ about ▲▲▲ **/

    /** ▼▼▼ works ▼▼▼ **/
    .works {
        margin: 100px auto 0 auto;
        /**padding: 100px 0;
        background: #E5F4FD;**/
    }

    .works p {
        /**margin: 50px 0 0 0;**/
        padding: 0;
    }

    .works ul {
        width: 100%;
        /**margin: 50px auto 0 auto;
        list-style: none;
        display: flex;
        flex-direction: column;**/
    }

    .works ul li img {
        width: 100%;
        /**height: auto;
        border-radius: 10px;**/
    }

    .works ul li h4 {
        width: 80%;
        /**position: relative;
        top: -20px;
        height: 20px;
        padding: 20px 0 0 0;
        font-size: 1.56em;
        font-family: serif;
        font-weight: 700;
        border-radius: 0 10px 0 0;
        background: #F7F5F2;**/
    }

    .works ul li p {
        width: 100%;
        /**margin: 0;
        padding: 0;**/
    }
    /** ▲▲▲ works ▲▲▲ **/

    /** ▼▼▼ company ▼▼▼ **/
    .company {
        margin: 100px auto 0 auto;
    }

    /**.company p {
        margin: 50px 0 0 0;
    }**/

    .company ul {
        width: 100%;
        margin: 0 auto;
        /**display: flex;
        flex-wrap: wrap;
        list-style: none;**/
    }

    .company ul li {
        padding: 50px 0 5px 0;
    }

    .company ul li.heading {
        width: 35%;
        /**font-family: serif;
        font-weight: 600;
        border-bottom: 1px solid #797979;**/
    }

    .company ul li.content {
        width: 100%;
        padding: 20px 0 5px 0;
        /**border-bottom: 1px solid #CCCCCC;**/
    }

    .company div {
        width: 100%;
        /**height: 500px;
        margin: 50px auto 0 auto;**/
    }
    /** ▲▲▲ company ▲▲▲ **/

    /** ▼▼▼ contact ▼▼▼ **/
    .contact {
        margin: 100px auto 0 auto;
        /**padding: 100px 0 150px 0;
        background: #E5F4FD;**/
    }

    /**.contact h3 {
        width: 1000px;
        margin: 50px auto 0 auto;
    }**/

    /**.contact p {
        margin: 50px 0 0 0;
    }**/

    /**.contact form {
        margin: 100px 0 0 0;
    }**/

    .contact ul {
        width: 100%;
        flex-direction: column;
        /**display: flex;
        list-style: none;
        margin: 25px auto 0 auto;**/
    }

    /**.contact ul li {
        margin: 0 0 25px 0;
    }**/

    .contact ul li.headline {
        width: 100%;
        margin: 0 0 15px 0;
        /**
        padding: 12px 0 0 0;
        font-family: serif;
        font-weight: 600;**/
    }

    /**.contact ul li.headline::after {
        content: "必須";
        width: 50px;
        height: 25px;
        margin: 0 0 0 10px;
        background: #797979;
        padding: 3px 6px;
        border-radius: 5px;
        font-family: sans-serif;
        font-weight: 300;
        color: #FFFFFF;
    }**/

    .contact ul li.input {
        width: 100%;
    }

    .contact ul li input {
        width: 95%;
        /**height: 50px;
        padding: 0 10px;
        border: 0;
        background: #FFFFFF;
        border: #CCCCCC 1px solid;
        border-radius: 10px;
        font-size: 1em;
        font-weight: 300;
        color: #333333;**/
    }

    .contact ul li textarea {
        width: 95%;
        /**height: 180px;
        padding: 10px;
        background: #FFFFFF;
        border: #CCCCCC 1px solid;
        border-radius: 10px;
        resize: none;
        font-size: 1em;
        font-weight: 300;
        color: #333333;**/
    }

    /**.contact .send {
        margin: 25px 0 0 0;
        text-align: center;
    }**/

    .button {
        width: 150px;
        font-size: 0.93em;
        /**height: 50px;
        background: #797979;
        border: 0;
        border-radius: 10px;
        font-weight: 700;
        color: #FFFFFF;**/
    }

    /**.error {
        color: #FF0000;
    }**/

    /** 確認 **/
    .confirm {
        width: 90%;
        margin: 150px auto;
        /**padding: 0;**/
    }

    .confirm h2 {
        width: 100%;
    }

    .confirm p {
        width: 100%;
        margin: 30px auto 0 auto;
    }

    .confirm ul {
        width: 100%;
        margin: 50px auto 0 auto;
        flex-direction: column;
        /**
        padding: 0;
        display: flex;
        justify-content: space-between;
        list-style: none;**/
    }

    .confirm .headline {
        width: 100%;
        font-family: serif;
    }

    .confirm .input {
        width: 100%;
        margin: 20px 0 0 0;
        /**border-bottom: 1px solid #A99781;
        font-size: 1.2em;**/
    }

    .confirm .submit {
        width: 90%;
        /**margin: 100px auto 0 auto;
        display: flex;
        justify-content: space-between;**/
    }

    .button_02 {
        width: 150px;
        /**height: 50px;
        border: 1px solid #4964A1;
        border-radius: 10px;
        background: #FFFFFF;
        font-size: 0.93em;
        font-weight: 700;
        color: #4964A1;**/
    }
    /** //確認 **/
    /** ▲▲▲ contact ▲▲▲ **/
}