@charset "UTF-8";

.title_green {
    background: #065446;
    color: #e5e5e5;
    display: flex;
    align-items: center;
    padding: 0.5em 0.5em 0.5em 35px;
    margin-bottom: 10px;
}

.title_green h2 {
    position: relative;
    font-size: 20px;
    font-weight: 100;
}

.title_green h2 span {
    font-family: "Gill Sans", 'Gill Sans Nova';
    font-size: 14px;
    font-weight: 100;
    padding-left: 0.2em;
}

/*=============================================================
#mainimage
=============================================================*/
#page_mainimage {
    width: 100%;
    height: 300px;
    background-image: url("../image/page_mainimage.jpg");
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: -1000;
    margin-top: -50px;
}

#page_mainimage::after {
    content: "";
    position: absolute;
    z-index: -10;
    width: 100%;
    height: 300px;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.3);
}

#page_mainimage .box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
    background-color: rgba(255, 255, 255, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
}

#page_mainimage h3 {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding: 0.5em 1em;
    font-size: 20px;
    font-weight: bold;
    color: #065446;
}

/*=============================================================
#greeting
=============================================================*/
#greeting .title_green h2::before {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    background: url("../image/icon_greeting.png");
    background-size: cover;
    top: 2%;
    left: -23%;
}

#greeting {
    margin: 60px 0;
}

#greeting .title {
    text-align: center;
    margin: 0 auto;
}

#greeting .left {
    text-align: left;
}

#greeting .left p {
    margin: 30px 0 30px 0;
}

#greeting .left p b {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4em;
}

#greeting .left img.name {
    max-width: 250px;
    min-width: 250px;
}

#greeting .right {
    padding-left: 100px;
    max-width: 600px;
    margin: 0 0 0 auto;
}

#greeting .right img {
    border-radius: 10px;
}

/*=============================================================
#business
=============================================================*/
#business .title_green h2::before {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    background: url("../image/icon_business.png");
    background-size: cover;
    top: 2%;
    left: -23%;
}

#business {
    margin: 60px 0;
}

#business dl {
    margin: 50px 0 80px;
}

#business dl:nth-of-type(1) dt,
#business dl:nth-of-type(3) dt {
    float: right;
    margin-top: 30%;
    width: 85%;
    height: auto;
    background: #065446;
    position: relative;
    z-index: 100;
    color: #fff;
    text-align: left;
    border-radius: 10px;
}

#business dl:nth-of-type(2) dt {
    float: left;
    margin-top: 30%;
    width: 85%;
    height: auto;
    background: #065446;
    position: relative;
    z-index: 100;
    color: #fff;
    text-align: left;
    border-radius: 10px;
}

#business dl dt h4 {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2em;
    padding: 30px 20px 0px;
}

#business dl dt p {
    font-size: 16px;
    padding: 20px;
}

#business dl:nth-of-type(1) dd {
    width: 90%;
    height: 0;
    /* (画像の高さ / 画像の横幅) × 100 */
    padding-top: 66.6666666667%;
    background: url("../image/business_img01.jpg");
    background-size: cover;
    border-radius: 10px;
}

#business dl:nth-of-type(2) dd {
    width: 90%;
    height: 0;
    /* (画像の高さ / 画像の横幅) × 100 */
    padding-top: 66.6666666667%;
    background: url("../image/business_img03.jpg");
    background-size: cover;
    border-radius: 10px;
    margin: 0 0 0 auto;
}

#business dl:nth-of-type(3) dd {
    width: 90%;
    height: 0;
    /* (画像の高さ / 画像の横幅) × 100 */
    padding-top: 66.6666666667%;
    background: url("../image/business_img05.jpg");
    background-size: cover;
    border-radius: 10px;
}

/*=============================================================
#history
=============================================================*/
#history .title_green h2::before {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    background: url("../image/icon_history.png");
    background-size: cover;
    top: 2%;
    left: -23%;
}

#history {
    margin: 60px 0;
}

#history .box {}

#history .left {
    padding-right: 110px;
    max-width: 600px;
}

#history .left img {
    border-radius: 10px;
}

#history .right {
    border-left: 5px solid #065446;
    text-align: left;
}

#history .right dl {
    margin: 30px 0;
}

#history .right dl dt {
    padding-left: 30px;
    font-weight: bold;
}

#history .right dl dd {
    padding-left: 30px;
}

/*=============================================================
#company
=============================================================*/
#company .title_green h2::before {
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    background: url("../image/icon_company.png");
    background-size: cover;
    top: 2%;
    left: -23%;
}

#company {
    margin: 60px 0;
}

#company .company_box {
    width: 100%;
    margin: 0 auto;
}

#company dl {
    padding: 20px;
    text-align: left;
    border-bottom: 1px solid #065446;
}

#company dl dt {
    padding-left: 30px;
    font-weight: bold;
}

#company dl dd {
    padding-left: 30px;
}