@charset "UTF-8";
/* CSS Document */

body {
	background: #FFF;
	word-break: break-all;
    line-height: 1.4em;
    box-sizing: border-box;
}

.h2_top {
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 600;
    font-style: normal;
    text-align: center;
    font-size: 260%;
    line-height: 1em;
    letter-spacing: 5px;
    margin-bottom: 0.75em;
    margin-left: -10px;
}
.h2_top span {
    font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif" ;
    font-size: 50%;
    display: block;
}
.h2_top:before {
    content: "";
    background: url(../img/ico_index01.svg) no-repeat top center;
    background-size: contain;
    width: 70px;
    height: 42px;
    display: block;
    vertical-align: top;
    margin: 0 auto 10px;
}

.h3_top {
    color: #ff5f14;
    font-size: 150%;
    letter-spacing: 1px;
    font-weight: 500;
    margin-bottom: 0.75em;
    text-align: center;
    line-height: 1.4em;
}


@media screen and (max-width: 780px) {
    .h2_top {
        padding-left: 1em;
        font-size: 190%;
    }
    
    .h3_top {
        font-size: 130%;
    }
}


/*---------------------------------------------------------
#メインイメージ
----------------------------------------------------------*/
#mainimg {
    background: url(../img/bg_main.png) repeat-x bottom center,url(../img/bg01.png) repeat,#ff9600; 
    padding: 100px 0 180px;
    text-align: center;
    position: relative;
}
#mainimg .open {
    position: absolute;
    bottom: -3em;
    left: 5%;
}
.open {
    animation-name: fuwafuwa;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1s;
}
@keyframes fuwafuwa {
    0% {
        transform: translate(0,0px);
    }

    100% {
        transform: translate(0,-20px)
    }
}

#mainimg .inner{
    max-width: 1290px;
    margin: 0 auto;
    background: url(../img/bg_main2.png) no-repeat top left;
    padding-top:150px;
}



@media screen and (max-width: 780px) {
    #mainimg {
        background-size: auto 70px;
        padding-top: 70px;
        padding-bottom: 80px;
    }
    #mainimg .open {
        width: 100px;
        left: 10px;
        bottom: -2em;
    }
    
    #mainimg .inner {
        padding: 60px 30px 0;
        background-size: contain;
    }
    
    @keyframes fuwafuwa {
    0% {
        transform: translate(0,0px);
    }

    100% {
        transform: translate(0,-10px)
    }
}
}

/*---------------------------------------------------------
#ごあいさつ
----------------------------------------------------------*/
#message {
    background: url(../img/bg01.png) repeat,#fff4cc;
    padding: 3em 0 4em;
}
#message .h2_top {
    color: #90bd29;
}

#message .inner {
    background: url(../img/img_message01.png) no-repeat;
    background-position: center right;
    padding: 3em 43% 3em 4em;
    box-sizing: border-box;
    line-height: 2.2em;
    color: #ff5f14;
    font-size: 115%;
    max-width: 1200px;
    margin: 0 auto;
}

#message .inner h3 {
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 190%;
    line-height: 1.4em;
    margin-bottom: 0.65em;
    letter-spacing: 1px;
    line-height: 1.6em;
}

@media screen and (max-width: 780px) {
    #message .inner {
        background-size: contain;
        background-position: bottom center !important;
        padding: 0 15px 280px 15px;
        margin-bottom: 0;
        width: 100%;
        line-height: 2em;
    }
    #message .inner h3 {
        font-size: 150%;
        line-height: 1.6em;
    }
}


/*---------------------------------------------------------
#サービスのご案内
----------------------------------------------------------*/
#servise {
    background: url(../img/bg01.png) repeat,#ff9600;
    padding: 3em 0 4em;
} 

#servise .h2_top {
    color: #FFF;    
}

#servise .h3_top {
    color: #FFF;
}

#servise .h3_service {
    background: #90bd29;
    color: #FFF;
    text-align: center;
    font-size: 130%;
    padding: 0.75em 1em;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}
.servicelist {
    background: url(../img/img_service03.png) no-repeat,#FFF;
    background-position: bottom right;
    padding: 2em 280px 2em 3em;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    color: #90bd29;
    margin-bottom: 2em;
}
.servicelist ul {
    margin-bottom: 15px;
}
.servicelist ul li {
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 140%;
    line-height: 2.2em;
    border-bottom: 2px dotted#90bd29;
}
.servicelist ul li:before {
    content: "●";
    color: #90bd29;
    margin-right: 3px;
    font-size: 90%;
}

#point {
    margin: 0 0 1em;
    font-size: 165%;
    line-height: 1.3em;
}
#point li {
    background: #90bd29;
    color: #FFF;
    border: 4px solid #FFF;
    margin-bottom: 10px;
    padding: 1.2em;
    border-radius: 15px;
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 400;
    font-style: normal;
}
#point li.point1:before {
    content: "";
    background: url(../img/ico_service01.png) no-repeat top center;
    background-size: contain;
    width: 135px;
    height: 100px;
    display: block;
    margin: 0 auto 1em;
}
#point li.point2:before {
    content: "";
    background: url(../img/ico_service02.png) no-repeat top center;
    background-size: contain;
    width: 135px;
    height: 100px;
    display: block;
    margin: 0 auto 1em;
}
#point li.point3:before {
    content: "";
    background: url(../img/ico_service03.png) no-repeat top center;
    background-size: contain;
    width: 140px;
    height: 100px;
    display: block;
    margin: 0 auto 1em;
}
#point li span {
    font-size: 85%;
}

.area {
    background: #FFF;
    padding: 2em;
    border-radius: 15px;
}
.area .h3_top {
    color: #ff5f14 !important;
}
.area .flL {
    width: 48%;
}
.area .flR {
    width:50%;
}
.area .box {
    border: 3px solid #90bd29;
    margin-bottom: 10px;
}
.area .box .tit {
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 600;
    font-style: normal;
    text-align: center;
    color: #f6f0cb;
    background: #90bd29;
    padding: 10px;
    font-size: 120%;
}
.area .box div {
    padding: 1em;
    color: #90bd29;
}
.area .box div span {
    color: #ff5f14;
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 600;
    font-style: normal;
    margin-right: 0.75em;
    font-size: 155%;
    line-height: 1.3em;
}
.area .box div span:before {
    content: "●";
    color: #90bd29;
    font-size: 90%;
    margin-right: 3px;
}
.area .box div span:last-child {
    margin-right: 0;
}
.area .box div span .fS {
    font-size: 62%;
    font-weight: 500;
}
.area .box div span .fS:before {
    content: none;
}


@media screen and (max-width: 780px) {
    .servicelist {
        padding: 1.5em;
        background: #FFF;
    }
    #point {
        font-size: 125%;
    }
    #point li.point1:before {
        width: 70px;
        height: 60px;
        float: left;
        margin-right: 15px;
        display: inline-block;
    }
    #point li.point2:before {
        width: 70px;
        height: 60px;
        float: left;
        margin-right: 15px;
        display: inline-block;
    }
    #point li.point3:before {
        width: 70px;
        height: 60px;
        float: left;
        margin-right: 15px;
        display: inline-block;
    }
    .area {
        padding: 1em;
    }
    .area .flL,
    .area .flR {
        display: block;
        width: 100%;
        float: none;
    }
    
    .area .box div span {
        font-size: 125%;
    }
}


/*---------------------------------------------------------
#スタッフの紹介
----------------------------------------------------------*/
#staff {
    background: url(../img/bg01.png) repeat,#fff4cc;
    padding: 4em 0;
}

#staff .h2_top {
    color: #ff5f14;
}

.stafflist li {
    background: #FFF;
    padding: 2em 2.5em;
    border-radius: 15px;
    margin-bottom: 1em;
}
.stafflist li figure {
    float: left;
    width: 24%;
    text-align: center;
}

.stafflist li figcaption {
    float: right;
    width: 72%;
    color: #603217;
    line-height: 1.8em;
    font-size: 105%;
    padding: 1em 0;
}
.stafflist li figcaption .name{
    font-family: dnp-shuei-mgothic-std,sans-serif;
    font-weight: 600;
    font-style: normal;
    color: #ff5f14;
    margin-bottom: 15px;
    font-size: 165%;
    letter-spacing: 1px;
}
.stafflist li figcaption .name span{
    font-size: 70%;
}

@media screen and (max-width: 780px) {
    .stafflist li {
        padding: 1em 1.5em;
    }
    .stafflist li figure {
        float: none;
        width: 100%;
    }
    .stafflist li figcaption{
        float: none;
        width: 100%;
    }
    .stafflist li figcaption .name {
        text-align: center;
    }
    .stafflist li figcaption .name .ml20 {
        display: block;
        margin-left: 0 !important;
    }
}


/*---------------------------------------------------------
#会社情報
----------------------------------------------------------*/
#about {
    background: #FFF;
    padding: 4em 0;
}

#about .h2_top {
    color: #ff5f14;
}

.table_basic1 {
    border-top: 1px solid #ff5f14;
    width: 48%;
    float: left;
}
.table_basic1 th {
    border-bottom: 1px solid #ff5f14;
    padding: 1.2em 2em 1.2em 1em;
    color: #ff5f14;
    text-align: left;
    vertical-align: middle;
    white-space: nowrap;
}
.table_basic1 td {
    border-bottom: 1px solid #ff5f14;
    padding: 1em;
    vertical-align: middle;
    color: #ff5f14;
}

.googlemap {
    width: 48%;
    float: right;
}

@media screen and (max-width: 780px) {
     .table_basic1 {
         float: none;
         width: 100%;
     }
     
     .googlemap {
         width: 100%;
         float: none;
     }
}
