/* common */
.welfare .title-area {text-align: center;}
.welfare .title-area .title {font-size: 50px; font-weight: 700; color: #000; margin-bottom: 25px;}
.welfare .title-area .title::before {content: ''; display: block; width: 50px; height: 3px; background: #e50050; margin: 0 auto 10px;}
.welfare .title-area .desc {font-size: 16px; font-weight: 300; line-height: 1.88; color: #4c4c4c;}


/* welfare */
.welfare {overflow: hidden;}
.welfare::after {content: ''; display: block; width: 100%; height: 400px; background: url("../img/welfare_bg.jpg") no-repeat center/cover;}
.welfare .inner {padding: 80px 0 95px;}

.welfare .welfare-list {display: flex; justify-content: space-between; margin-top: 60px;}
.welfare .welfare-list .welfare-item {width: calc((100% - 66px) / 3); background: #fff; border-radius: 20px; border: 1px solid #ddd; padding: 50px 45px;}
.welfare .welfare-list .title-box {position: relative; border-bottom: 1px solid #ddd; padding-bottom: 35px; margin-bottom: 35px;}
.welfare .welfare-list .title-box::before {content: ''; position: absolute; left: 0; bottom: -1px; height: 3px;}
.welfare .welfare-item:nth-child(2n) .title-box::before {background: #11b0a8; width: 62%;}
.welfare .welfare-item:nth-child(2n+1) .title-box::before {background: #e50050; width: 47%;}
.welfare .welfare-list .num {font-family: 'Montserrat', sans-serif; font-size: 29px; font-weight: 700; margin-right: 10px;}
.welfare .welfare-item:nth-child(2n) .num {color: #11b0a8;}
.welfare .welfare-item:nth-child(2n+1) .num {color: #e50050;}
.welfare .welfare-list .title {font-size: 25px; font-weight: 500; color: #000;}
.welfare .welfare-list .desc-box p {position: relative; padding-left: 12px; font-size: 17px; font-weight: 400; color: #666; line-height: 1.76;}
.welfare .welfare-list .desc-box p + p {margin-top: 12px;}
.welfare .welfare-list .desc-box p span {font-weight: 300;}
.welfare .welfare-list .desc-box p::before {content: '·'; position: absolute; left: 0; top: 0;}

/* media query */
@media screen and (max-width: 1700px) {
    /* common */
    .welfare .inner {padding: 80px 20px 95px;}
}

@media screen and (max-width: 1500px) {

}

@media screen and (max-width: 1400px) {
    /* common */
    .welfare .inner {padding: 80px 60px 95px;}
}

@media screen and (max-width: 1300px) {

}

@media screen and (max-width: 1200px) {
    .welfare .welfare-list .welfare-item {padding: 45px 35px;}
}

@media screen and (max-width: 1023px) {
    /* common */
    .welfare br {display: none;}
    .welfare .title-area .title {font-size: 40px;}

    .welfare .welfare-list {flex-wrap: wrap;}
    .welfare .welfare-list .welfare-item {width: 100%; padding: 40px 25px;}
    .welfare .welfare-item  + .welfare-item  {margin-top: 15px;}
    .welfare .welfare-list .title {font-size: 23px;}
    .welfare .welfare-list .desc-box p {font-size: 16px;}
}

@media screen and (max-width: 767px) {
    /* common */
    .welfare .inner {padding: 60px 40px;}
    .welfare .title-area .title {font-size: 35px; margin-bottom: 20px;}
    .welfare .title-area .desc {font-size: 15px;}

    .welfare .welfare-list .welfare-item {padding: 35px 25px;}
    .welfare .welfare-list .title {font-size: 20px;}
    .welfare .welfare-list .desc-box p {font-size: 15px;}
}

@media screen and (max-width: 640px) {
    .welfare::after {height: 300px;}
}

@media screen and (max-width: 480px) {
    /* common */
    .welfare .inner {padding: 60px 20px;}
    .welfare .title-area .title {font-size: 30px;margin-bottom: 15px;}
    .welfare .title-area .desc {font-size: 14px;}

    .welfare::after {height: 200px;}
    .welfare .welfare-list {margin-top: 40px;}
    .welfare .welfare-list .title-box {margin-bottom: 25px; padding-bottom: 25px;}
}
