@charset "utf-8";



/* For modern browsers */

.cf:before,
.cf:after {
    content: "";
    display: table;
}

.cf:after {
    clear: both;
}

/* For IE 6/7 (trigger hasLayout) */

.cf {
    zoom: 1;
}



/* tags
---------------------------------------------------- */

body {
    margin: 0px;
    padding: 0px;
    color: #333;
    font: 15px "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Arial, Helvetica, sans-serif;
    -webkit-text-size-adjust: 100%;
}

a {
    color: #333;
    text-decoration: none;
}

a:hover {
    color: #e00;
    text-decoration: underline;
}

img {
    border: none;
    margin: 0px;
    padding: 0px;
    vertical-align: bottom;
    max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl,
dt,
dd,
div,
img {
    margin: 0px;
    padding: 0px;
    list-style: none;
    font-weight: normal;
}

@media screen and (max-width: 768px) {
    body {
        font-size: 14px;
    }
}

/* common
---------------------------------------------------- */

.inner1 {
    max-width: 1100px;
    margin: 0px auto;
}

.inner2 {
    max-width: 900px;
    margin: 0px auto;
}

.your-class img {
    width: 100%;
    height: auto;
    vertical-align: bottom!important;
    border: none!important;
    margin: 0px!important;
    padding: 0px!important;
}

.st1,
.st3 {
    background: url(../images/st1line.png) no-repeat center bottom;
    padding-bottom: 5px;
    margin-bottom: 50px;
}

.st2 {
    background: url(../images/st2line.png) no-repeat center bottom;
    padding-bottom: 5px;
    margin: 60px 0px 30px;
}

.st4 {
    background: url(../images/st3line.png) no-repeat center bottom;
    padding-bottom: 5px;
    margin: 0px 0px 30px;
}

.st1 h2 {
    font-size: 33px;
    font-weight: bold;
    color: #0ac1a7;
    line-height: 1;
    text-align: center;
}

.st2 h3,
.st3 h3,
.st4 h3 {
    font-size: 26px;
    font-weight: bold;
    color: #fba61f;
    line-height: 1;
    text-align: center;
}

.st3 h3 {
    color: #0ac1a7;
}

.st4 h3 {
    color: #f7487a;
}

.st1 p,
.st2 p,
.st3 p,
.st4 p {
    font-size: 16px;
    font-weight: bold;
    color: #666;
    line-height: 1;
    text-align: center;
    margin: 20px 0px;
}

@media screen and (max-width: 1140px) {
    .inner1 {
        margin: 0px 20px;
    }
}

@media screen and (max-width: 940px) {

    .inner2 {
        margin: 0px 20px;
    }
}

@media screen and (max-width: 768px) {
    .st1,
    .st3 {
        margin-bottom: 30px;
    }
    .st2 {
        margin: 30px 0px 20px;
    }
    .st1 h2 {
        font-size: 22px;
    }
    .st2 h3,
    .st3 h3,
    .st4 h3 {
        font-size: 18px;
    }
    .st1 p,
    .st2 p,
    .st3 p,
    .st4 p {
        font-size: 14px;
        margin: 10px 0px;
    }
}

/* header
---------------------------------------------------- */

#header {
    background: #fff0bb;
}

#header .inner1 {
    background: url(../images/himg1.jpg) no-repeat right top;
    padding: 38px 0px 30px;
}

#header h1 {
    float: left;
    margin: 0px 185px 0px 0px;
}

#header ul {
    float: left;
    margin: 59px 50px 0px 0px;
}

#header li {
    float: left;
}

#header li:first-child {
    margin: 0px 35px 0px 0px;
}

#header li a:hover img {
    opacity: 0.6;
}

#header p {
    float: left;
    margin: 43px 0px 0px;
}

@media screen and (max-width: 1100px) {
    #header h1 {
        margin: 0px 30px 0px 0px;
    }
    #header ul {
        margin: 59px 20px 0px 0px;
    }
    #header li:first-child {
        margin: 0px 20px 0px 0px;
    }
    #header p {
        margin: 50px 0px 0px;
    }
    #header p img {
        width: 235px;
        height: auto;
    }
}

@media screen and (max-width: 768px) {
    #header {
        border-bottom: 5px solid #ffd051;
    }
    #header .inner1 {
        background: none;
        padding: 15px 0px;
    }
    #header h1 {
        text-align: center;
        float: none;
        margin: 0px 15px 0px 0px;
    }
    #header h1 img {
        width: 180px;
        height: auto;
    }
    #header ul {
        display: none;
    }
    #header p {
        float: none;
        margin: 15px 0px 0px;
        text-align: center;
    }
    #header p img {
        width: 200px;
        height: auto;
    }
}

/* navi
---------------------------------------------------- */

#navi {
    background: url(../images/back1.png) repeat-x left 100px top;
}

#navi li {
    float: left;
}

#navi li:nth-child(1) {
    width: 33.33333%;
}

#navi li:nth-child(2) {
    width: 33.33333%;
}

#navi li:nth-child(3) {
    width: 33.33333%;
    background: url(../images/naviline.png) no-repeat right center;
}

#navi li:nth-child(4) {
    width: 27%;
    background: url(../images/naviline.png) no-repeat right center;
}

#navi a {
    display: block;
    height: 160px;
    text-align: center;
    position: relative;
    background: url(../images/naviline.png) no-repeat left center;
}

#navi img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 40px;
    margin: auto;
    padding-bottom: 7px;
    border-bottom: 3px solid #fff;
}

#navi a.on img,
#navi a:hover img {
    border-bottom: 3px solid #ffd051;
}

@media screen and (max-width: 768px) {
    #navi {
        display: none;
    }
}

/* title
---------------------------------------------------- */

#title {
    background: #fff0bb;
    padding: 50px 0px;
    border-top: 8px solid #ffd051;
}

#title h2 {
    font-size: 30px;
    text-align: center;
    font-weight: bold;
    color: #fba61f;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    #title {
        padding: 20px 0px;
        border-top: none;
    }
    #title h2 {
        font-size: 20px;
        line-height: 1.2;
    }
}

@media screen and (max-width: 480px) {
    #title h2 {
        font-size: 18px;
    }
}

/* drawer
---------------------------------------------------- */

header {
    display: none;
}

@media screen and (max-width: 768px) {
    header {
        display: block;
        z-index: 100;
        position: relative;
    }
    .drawer-menu-item {
        display: block;
        border-bottom: 1px solid #ccc;
        padding: 15px 20px 15px 15px;
        position: relative;
        line-height: 1.2;
        text-decoration: none;
    }
    .drawer-menu-item::after {
        position: absolute;
        top: 50%;
        right: 15px;
        display: block;
        content: '';
        width: 10px;
        height: 10px;
        margin-top: -6px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

/* contact1
---------------------------------------------------- */

#contact1 {
    margin-top: 50px;
}

#contact1 > p {
    line-height: 2;
    margin-bottom: 30px;
}

#contact1 > p.p1 {
    font-weight: bold;
    color: #f7487a;
    font-size: 18px;
}

#contact1 .tel {
    background: #d0f9f4;
    padding: 30px;
    border-radius: 5px;
    text-align: center;
    margin-bottom: 30px;
    border: 5px solid #8ee5da;
}

#contact1 .tel span {
    font-size: 24px;
    font-weight: bold;
    margin-right: 10px;
    color: #0ac1a7;
}

::-webkit-input-placeholder {
    color: #aaa;
}

:-ms-input-placeholder {
    color: #aaa;
}

::placeholder {
    color: #aaa
}


#contact1 input.size_m {
    width: 400px;
    padding: 5px 8px;
    font-size: 15px;
}

#contact1 textarea {
    width: 580px;
    height: 250px;
    padding: 5px 8px;
    font-size: 15px;
}

#contact1 .table1 + p {
    margin: 30px 0px;
    line-height: 2;
}

#contact1 .box1 {
    background: #d0f9f4;
    padding: 30px;
    text-align: center;
    font-size: 17px;
    border: 5px solid #8ee5da;
    border-radius: 5px;
}

#contact1 .box2 input {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    margin: 50px auto;
    cursor: pointer;
    display: block;
    background: #f7487a;
    border-bottom: 4px solid #ba395e;
    text-align: center;
    color: #fff;
    font-size: 18px;
    line-height: 1;
    padding: 20px 0px 19px;
    font-weight: bold;
    width: 300px;
    border-radius: 8px;
}

#contact1 .box2 input.btn2 {
    background: #999;
    width: 250px;
    padding: 15px 0px;
    font-size: 14px;
    border-bottom: 3px solid #666;
}

@media screen and (max-width: 768px) {
    #contact1 {
        margin-top: 20px;
    }
    #contact1 > p {
        margin-bottom: 20px;
    }

    #contact1 > p.p1 {
        font-size: 15px;
    }
    #contact1 .tel {
        padding: 10px;
        margin-bottom: 20px;
        border: 3px solid #8ee5da;
    }

    #contact1 .tel span {
        font-size: 18px;
        display: block;
        margin: 0px 0px 5px;
    }
    #contact1 input.size_m {
        width: 100%;
        font-size: 14px;
        box-sizing: border-box;
    }

    #contact1 textarea {
        width: 100%;
        height: 120px;
        font-size: 14px;
        box-sizing: border-box;
    }
    #contact1 .table1 + p {
        margin: 20px 0px;
    }
    #contact1 .box1 {
        padding: 15px 5px;
        font-size: 14px;
        border: 3px solid #8ee5da;
    }
    #contact1 .box2 input {
        margin: 30px auto;
        border-bottom: 4px solid #ba395e;
        font-size: 15px;
        padding: 15px 0px;
        width: 100%;
    }
    #contact1 .box2 input.btn2 {
        width: 80%;
        padding: 12px 0px;
        font-size: 13px;
    }
}


/* company1
---------------------------------------------------- */

#company1 img {
    float: right;
    margin: 0px 0px 5px 30px;
}

#company1 h4 {
    text-align: center;
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 40px;
    color: #fba61f;
}

#company1 > p {
    line-height: 2.2;
    margin-bottom: 30px;
}

#company1 .p1 {
    font-weight: bold;
    border-bottom: 1px dashed #bbb;
    padding-bottom: 30px;
}

#company2 {
    text-align: center;
}

#company2 > p {
    margin-bottom: 20px;
}

#company2 h4 {
    color: #f7487a;
    font-size: 18px;
    font-weight: bold;
    margin: 25px 0px 3px;
    line-height: 1.4;
}

#company2 li {
    display: inline-block;
    margin: 0px 10px 0px 0px;
}

#company2 a {
    display: inline-block;
    background: #f7487a url(../images/pdf.png)no-repeat 15px 10px;
    background-size: 16px auto;
    border-radius: 5px;
    padding: 14px 20px 11px 40px;
    color: #fff;
    line-height: 1.2;
    border-bottom: 4px solid #ba395e;
}

#company2 a:hover {
    opacity: 0.6;
    text-decoration: none;
}

#company3 img {
    float: right;
    width: 37%;
    height: auto;
}

#company4 iframe {
    width: 100%;
    vertical-align: bottom;
}

@media screen and (max-width: 768px) {
    #company1 img {
        float: none;
        margin: 0px auto 20px;
        display: block;
        width: 200px;
        height: auto;
    }

    #company1 h4 {
        font-size: 16px;
        margin-bottom: 20px;
    }

    #company1 > p {
        line-height: 2;
        margin-bottom: 20px;
    }
    #company1 .p1 {
        padding-bottom: 20px;
    }
    #company2 {
        text-align: center;
    }

    #company2 > p {
        margin-bottom: 10px;
    }

    #company2 h4 {
        font-size: 15px;
        margin: 10px 0px 3px;
    }

    #company2 li {
        display: inline-block;
        margin: 0px 0px 10px 0px;
    }

    #company2 a {
        background: #f7487a url(../images/pdf.png)no-repeat 10px 10px;
        background-size: 13px auto;
        padding: 10px 20px 7px 30px;
        border-bottom: 3px solid #ba395e;
        line-height: 1.4;
    }
    #company3 img {
        float: none;
        width: 200px;
        height: auto;
        display: block;
        margin: 0px auto 20px;
    }

    #company4 iframe {
        height: 300px;
    }

}

/* news
---------------------------------------------------- */

.cat_tab {
    text-align: center;
    width: 80%;
    margin: 50px auto;
}

.cat_tab li {
    display: block;
    float: left;
    width: 47%;
    margin-right: 6%;
}

.cat_tab li:last-child {
    margin: 0px;
}

.cat_tab a {
    display: block;
    background: #8ee5da;
    border-radius: 5px;
    padding: 12px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    position: relative;
    border: 3px solid #8ee5da;
    box-sizing: border-box;
}

.cat_tab li:last-child a {
    background: #f7487a;
    border: 3px solid #f7487a;
}

.cat_tab a::after {
    position: absolute;
    top: 50%;
    right: 12px;
    display: block;
    content: '';
    width: 6px;
    height: 6px;
    margin-top: -5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.cat_tab a:hover,
.cat_tab a.on {
    background: #fff;
    text-decoration: none;
    color: #0ac1a7;
}

.cat_tab li:last-child a:hover,
.cat_tab li:last-child a.on {
    background: #fff;
    text-decoration: none;
    color: #f7487a;
}

div.paging {
    text-align: center;
    margin: 40px 0px;
}

div.paging span.current,
div.paging span.paging-text {
    margin: 0px 2px;
    display: inline-block;
    zoom: 1;
    overflow: hidden;
    cursor: pointer;
}

div.paging span.paging-text a {
    display: inline-block;
    border-radius: 3px;
    line-height: 1;
    padding: 7px 9px;
    text-decoration: none;
    border: 1px solid #ccc;
    cursor: pointer;

}

div.paging span.current {
    display: inline-block;
    border-radius: 3px;
    line-height: 1;
    padding: 7px 9px;
    text-decoration: none;
    
    background: #f7487a;
    border: 1px solid #f7487a;
    color: #fff;
    cursor: pointer;
}

div.paging span.paging-text a:hover {
    text-decoration: none;
    background: #e7e7e7;
}

.post + div.paging {
    border-top: 1px dashed #ccc;
    padding-top: 40px;
}

.post {
    border-top: 1px dashed #ccc;
    padding: 40px 0px 0px;
}

.post p {
    line-height: 2;
    margin-bottom: 30px;
}

.post p.date {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 20px;
}

.post p.date span {
    background: #f7487a;
    color: #fff;
    font-size: 13px;
    line-height: 19px;
    height: 19px;
    width: 52px;
    text-align: center;
    display: inline-block;
    font-weight: normal;
    margin-left: 10px;
}

.post h4 {
    font-weight: bold;
    font-size: 20px;
    line-height: 1.8;
    border-left: 5px solid #f7487a;
    padding: 2px 0px 2px 20px;
    margin-bottom: 30px;
}

.imgbox {
    margin: 30px 0px;
}

.imgbox li {
    width: 24%;
    float: left;
    height: 163px;
    margin: 0px 1.333% 30px 0px;
    position: relative;
    box-sizing: border-box;
    border: 1px solid #ddd;
}

.imgbox li:nth-child(4n) {
    margin-right: 0px;
}

.imgbox li:nth-child(4n+1) {
    clear: both;
}

.imgbox li img {
    max-height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    display: block;
}

@media screen and (max-width: 768px) {
    .cat_tab {
        width: auto;
        margin: 20px 0px;
    }

    .cat_tab li {
        width: 49%;
        margin-right: 2%;
    }

    .cat_tab a {
        padding: 10px 0px;
        font-size: 14px;
        border: 2px solid #8ee5da;
    }

    .cat_tab li:last-child a {
        border: 2px solid #f7487a;
    }

    .cat_tab a::after {
        right: 5px;
    }
    div.paging {
        margin: 20px 0px;
    }

    .post + div.paging {
        padding-top: 20px;
    }

    .post {
        padding: 20px 0px 0px;
    }

    .post p {
        margin-bottom: 20px;
    }

    .post p.date {
        font-size: 12px;
        margin-bottom: 10px;
    }

    .post p.date span {
        font-size: 10px;
        line-height: 17px;
        height: 17px;
        width: 42px;
        margin-left: 5px;
    }

    .post h4 {
        font-size: 16px;
        line-height: 1.6;
        border-left: 4px solid #f7487a;
        padding: 0px 0px 0px 10px;
        margin-bottom: 20px;
    }
    .imgbox {
        margin: 20px 0px;
    }

    .imgbox li,
    .imgbox li:nth-child(4n) {
        width: 48%;
        height: 130px;
        margin: 0px 4% 20px 0px;
    }

    .imgbox li:nth-child(2n) {
        margin-right: 0px;
    }

    .imgbox li:nth-child(4n+1) {
        clear: none;
    }
    .imgbox li:nth-child(2n+1) {
        clear: both;
    }
}

/* service
---------------------------------------------------- */

#service11 .p1 {
    font-size: 16px;
    line-height: 2.4;
    text-align: center;
}

#service11 h4 {
    font-weight: bold;
    font-size: 18px;
    line-height: 1.2;
    margin: 0px 0px 20px;
    text-align: center;
}

#service11 .table1 + h4 {
    margin-top: 40px;
}

#service11 .table1 + p {
    margin: 30px auto 0px;
    font-size: 14px;
    line-height: 2;
    background: #f1f1f1;
    padding: 20px 30px;
}

.table1 {
    width: 100%;
    border-collapse: collapse;
    margin: 0px auto;
    border-bottom: 1px solid #ddd;
}

.table1 th,
.table1 td {
    border-top: 1px solid #ddd;
    padding: 15px 15px 15px 25px;
    line-height: 2;
}

.table1 th {
    width: 25%;
    background: #fff0bb;
    padding: 15px 0px;
}

#service12 {
    padding: 55px 0px 30px;
    background: #d0f9f4;
    margin-top: 70px;
}

#service12 li {
    width: 48%;
    float: left;
    margin: 0px 4% 30px 0px;
}

#service12 li:nth-child(2n) {
    margin-right: 0px;
}

#service12 li:nth-child(2n+1) {
    clear: both;
}

#service12 li img {
    width: 36%;
    height: auto;
    float: right;
    border-radius: 50%;
}

#service12 h4 {
    font-weight: bold;
    font-size: 16px;
    background: #0ac1a7;
    border-radius: 5px;
    padding: 10px 20px;
    display: inline-block;
    margin-bottom: 20px;
    color: #fff;
}

#service12 li p {
    line-height: 2;
    margin-right: 40%;
    font-size: 14px;
}

#service13 {
    background: #ffe9ef url(../images/back2.png) repeat-x left 100px top;
    padding: 115px 0px 30px;
}

#service13 h4 {
    font-size: 20px;
    font-weight: bold;
    color: #f7487a;
    line-height: 1.8;
    text-align: center;
}

#service13 p.p1 {
    text-align: center;
    line-height: 2.2;
    margin: 20px 0px 50px;
}

#service13 li {
    float: left;
    width: 32%;
    margin: 0px 2% 30px 0px;
}

#service13 li:nth-child(3n) {
    margin-right: 0px;
}

#service13 li:nth-child(3n+1) {
    clear: both;
}

#service13 li p {
    text-align: center;
    margin: 10px 0px 0px;
}

#service11 .img1 {
    float: right;
    width: 37%;
    height: auto;
}

.table2 {
    border-collapse: collapse;
    border-bottom: 1px dashed #ccc;
    width: 60%;
    margin-bottom: 20px;
}

.table2 th,
.table2 td {
    border-top: 1px dashed #ccc;
    padding: 7px 0px;
    line-height: 2;
}

.table2 th {
    width: 30%;
}

.table2 tr:nth-child(odd) th,
.table2 tr:nth-child(odd) td {
    background: #e3faf7;
}

@media screen and (max-width: 768px) {
    #service11 .p1 {
        font-size: 14px;
        line-height: 2;
        text-align: left;
    }
    #service11 .p1 br {
        display: none;
    }

    #service11 h4 {
        font-size: 16px;
    }

    #service11 .table1 + h4 {
        margin-top: 30px;
    }

    #service11 .table1 + p {
        margin: 20px auto 0px;
        padding: 15px 20px;
    }

    .table1 th,
    .table1 td {
        display: block;
        padding: 10px;
        line-height: 1.8;
    }

    .table1 th {
        width: auto;
        padding: 5px 0px;
        line-height: 1.6;
    }
    #service12 {
        padding: 30px 0px 10px;
        margin-top: 40px;
    }

    #service12 li {
        width: auto;
        float: none;
        margin: 0px 0px 20px;
    }

    #service12 li img {
        margin: 0px 0px 5px 10px;
    }

    #service12 h4 {
        font-size: 15px;
        padding: 8px 15px;
        margin-bottom: 15px;
        display: block;
    }

    #service12 li p {
        margin-right: 0px;
    }
    #service13 {
        background-color: #ffe9ef;
        background-image: none;
        padding: 30px 0px 10px;
    }

    #service13 h4 {
        font-size: 16px;
        text-align: left;
    }

    #service13 p.p1 {
        text-align: left;
        line-height: 2;
        margin: 15px 0px 20px;
    }

    #service13 li,
    #service13 li:nth-child(3n) {
        width: 48%;
        margin: 0px 4% 10px 0px;
    }

    #service13 li:nth-child(2n) {
        margin-right: 0px;
    }

    #service13 li:nth-child(3n+1) {
        clear: none;
    }
    #service13 li:nth-child(2n+1) {
        clear: both;
    }

    #service13 li p {
        font-size: 13px;
        margin: 5px 0px 0px;
    }
    #service11 .img1 {
        display: none;
    }

    .table2 {
        width: 100%;
        margin-bottom: 10px;
    }

    .table2 th,
    .table2 td {
        display: block;
        padding: 5px;
    }
    .table2 tr:nth-child(odd) td {
        background: #fff;
    }
    .table2 tr:nth-child(odd) th,
    .table2 th {
        width: auto;
        line-height: 1.6;
        background: #e3faf7;
    }
}

/* home1
---------------------------------------------------- */

#home1 {
    background: #fff0bb;
    padding: 50px 0px 30px;
    margin-top: -20px;
}

#home1 h2 {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.7;
    text-align: center;
    color: #ffba00;
    position: relative;
    margin-bottom: 35px;
}

#home1 h2 .img1 {
    position: absolute;
    left: 13%;
    top: 4px;
}

#home1 h2 .img2 {
    position: absolute;
    right: 10%;
    top: 15px;
}

@media print {
    #home1 h2 .img1,
    #home1 h2 .img2 {
        display: none;
    }
}

#home1 p {
    border: 3px solid #ffd051;
    border-radius: 20px;
    background: #fff;
    padding: 35px 55px;
    line-height: 2.2;
    font-size: 16px;
}

@media screen and (max-width: 1050px) {
    #home1 h2 .img1,
    #home1 h2 .img2 {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    #home1 {
        padding: 20px 0px 30px;
        border-bottom: 5px solid #ffd051;
        margin-top: -10px;
    }

    #home1 h2 {
        font-size: 18px;
        line-height: 1.6;
        margin-bottom: 20px;
    }

    #home1 p {
        border: 3px solid #ffd051;
        border-radius: 10px;
        padding: 15px 20px;
        line-height: 2;
        font-size: 14px;
    }
}

@media screen and (max-width: 480px) {
    #home1 h2 {
        text-align: left;
        margin-bottom: 10px;
        font-size: 16px;
    }
    #home1 h2 br {
        display: none;
    }
}

/* home2
---------------------------------------------------- */

#home2 {
    background: url(../images/back1.png) repeat-x left 100px top;
    padding: 110px 0px 40px;
    text-align: center;
}

#home2 h2 {
    font-size: 33px;
    font-weight: bold;
    color: #f7487a;
    line-height: 1;
}

#home2 p {
    font-size: 16px;
    font-weight: bold;
    color: #666;
    margin: 20px 0px;
}

#home2 .btn1 a {
    display: inline-block;
    background: #f7487a;
    color: #fff;
    font-size: 14px;
    line-height: 33px;
    height: 33px;
    width: 180px;
    border-radius: 10px;
    position: relative;
    margin-bottom: 40px;
}

#home2 .btn1 a::after {
    position: absolute;
    top: 50%;
    right: 12px;
    display: block;
    content: '';
    width: 6px;
    height: 6px;
    margin-top: -5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#home2 .btn1 a:hover {
    background: #ff97b5;
    text-decoration: none;
}

#home2 dl {
    margin: 0px 80px;

}

#home2 dt {
    font-weight: bold;
    float: left;
    width: 165px;
    text-align: left;
    line-height: 2;
    position: relative;
}

#home2 dt span {
    background: #f7487a;
    color: #fff;
    font-size: 13px;
    line-height: 19px;
    height: 19px;
    width: 52px;
    text-align: center;
    display: block;
    position: absolute;
    right: 0px;
    top: 4px;
    font-weight: normal;
}

#home2 dd {
    margin: 0px 0px 10px 185px;
    text-align: left;
    line-height: 2;
}

@media screen and (max-width: 1140px) {
    #home2 dl {
        margin: 0px;
    }
}

@media screen and (max-width: 768px) {
    #home2 {
        background: none;
        padding: 30px 0px;
    }

    #home2 h2 {
        font-size: 22px;
    }

    #home2 p {
        font-size: 14px;
        margin: 10px 0px 20px;
    }
    #home2 .btn1 a {
        margin-bottom: 30px;
    }
    #home2 dt {
        float: none;
        width: auto;
    }

    #home2 dt span {
        display: inline-block;
        position: static;
        font-size: 12px;
        line-height: 17px;
        height: 17px;
        margin-left: 8px;
    }
    #home2 dd {
        margin: 0px 0px 10px;
    }
}

/* home3
---------------------------------------------------- */

#home3 {
    padding: 55px 0px;
    background: #d0f9f4;
}

#home3 img {
    float: right;
    margin-top: -20px;
}

#home3 ul {
    max-width: 700px;
}

#home3 li {
    border-bottom: 1px dashed #00ddc2;
    padding: 10px 0px;
    line-height: 2;
}

@media screen and (max-width: 768px) {
    #home3 {
        padding: 30px 0px;
        border-bottom: 5px solid #8ee5da;
    }
    #home3 img {
        float: none;
        display: block;
        width: 200px;
        height: auto;
        margin: 0px auto 20px;
    }
}

/* home4
---------------------------------------------------- */

#home4 {
    background: #ffe9ef url(../images/back2.png) repeat-x left 100px top;
    padding: 125px 0px 70px;
}

#home4 h2 {
    color: #f7487a;
    font-size: 24px;
    line-height: 1.2;
    text-align: center;
    font-weight: bold;
    margin-bottom: 50px;
}

#home4 li {
    background: url(../images/home41.png) no-repeat left top;
    width: 534px;
    height: 361px;
    float: left;
    position: relative;
}

#home4 li:last-child {
    background: url(../images/home42.png) no-repeat left top;
    /* float: right; */
    float: none;
    margin: auto;
}

#home4 a {
    display: block;
    width: 534px;
    height: 361px;
}

#home4 h3 {
    width: 178px;
    height: 178px;
    border-radius: 50%;
    background: #f7487a;
    position: absolute;
    top: 17px;
    right: 48px;
    color: #fff;
    font-size: 22px;
    line-height: 1.8;
    text-align: center;
    padding-top: 48px;
    font-weight: bold;
    box-sizing: border-box;
}

#home4 li:last-child h3 {
    right: 321px;
}

#home4 p {
    background: rgba(255, 255, 255, 0.6);
    position: absolute;
    width: 320px;
    box-sizing: border-box;
    height: 80px;
    left: 25px;
    bottom: 30px;
    font-weight: bold;
    line-height: 2;
    padding: 15px 0px 0px 10px;
}

#home4 a:hover {
    color: #333;
    opacity: 0.6;
}

@media screen and (max-width: 1140px) {
    #home4 li,
    #home4 li:last-child {
        float: none;
        display: block;
        margin: 0px auto 30px;
    }
}

@media screen and (max-width: 768px) {
    #home4 {
        background-color: #ffe9ef;
        background-image: none;
        padding: 30px 0px 10px;
    }

    #home4 h2 {
        font-size: 18px;
        line-height: 1.6;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 534px) {
    #home4 li,
    #home4 li:last-child {
        background: none;
        width: auto;
        height: auto;
        margin: 0px 0px 20px;
        position: static;
    }
    #home4 a {
        width: auto;
        height: auto;
    }
    #home4 h3 {
        width: auto;
        height: auto;
        border-radius: 5px 5px 0px 0px;
        position: relative;
        font-size: 15px;
        line-height: 1.2;
        text-align: center;
        padding: 10px;
        top: 0;
        left: 0;
        right: 0;
    }
    #home4 h3::after {
        position: absolute;
        top: 50%;
        right: 12px;
        display: block;
        content: '';
        width: 6px;
        height: 6px;
        margin-top: -5px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    #home4 li h3 br {
        display: none;
    }
    #home4 p {
        background: rgba(255, 255, 255, 1);
        position: static;
        width: auto;
        height: auto;
        padding: 10px;
        font-weight: normal;
        border-radius: 0px 0px 5px 5px;
    }
    #home4 a:hover {
        color: #333;
        opacity: 1;
        text-decoration: none;
    }
}

@media screen and (max-width: 480px) {
    #home4 h2 {
        font-size: 16px;
        text-align: left;
        margin-bottom: 20px;
    }
    #home4 h3 {
        font-size: 14px;
    }
}

/* footer
---------------------------------------------------- */

#footer {
    background: #fff0bb;
    border-top: 11px solid #ffd051;
    padding: 58px 0px 80px;
}

#footer1 {
    width: 480px;
    float: left;
}

#footer1 img {
    width: 198px;
    height: auto;
}

#footer1 p {
    margin-bottom: 5px;
    line-height: 2;
    font-size: 13px;
}

#footer1 p:first-child {
    margin-bottom: 20px;
}

#footer1 p:last-child {
    font-size: 12px;
}

#footer1 p span {
    font-size: 18px;
    font-weight: bold;
}

#footer2 {
    float: left;
}

#footer2 li {
    background: url(../images/ar1.png) no-repeat left 10px;
    padding: 0px 0px 0px 15px;
    line-height: 2.1;
}

#footer3 {
    float: right;
    margin-top: 10px;
}

#footer3 a:hover img {
    opacity: 0.6;
}

#footer3 p {
    text-align: center;
    margin-top: 10px;
    font-size: 14px;
}

@media screen and (max-width: 1050px) {
    #footer1 {
        width: 400px;
    }
}

@media screen and (max-width: 960px) {
    #footer2 {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    #footer {
        border-top: 5px solid #ffd051;
        padding: 30px 0px;
    }

    #footer1 {
        width: auto;
        float: none;
        text-align: center;
    }

    #footer1 img {
        width: 150px;
        height: auto;
    }

    #footer1 p {
        margin-bottom: 0px;
        line-height: 1.8;
        font-size: 12px;
    }

    #footer1 p:last-child {
        font-size: 10px;
        margin: 20px 0px;
    }

    #footer1 p span {
        font-size: 16px;
    }
    #footer3 {
        float: none;
        margin-top: 20px;
        text-align: center;
    }
    #footer3 img {
        width: 220px;
        height: auto;
    }

    #footer3 p {
        font-size: 12px;
    }
}

@media screen and (max-width: 480px) {
    #footer {
        padding: 20px 0px;
    }
    #footer1 {
        text-align: left;
    }
}
