@charset "utf-8";

/* pageTit */
.cardInfo_wrap .pageTit {
    padding: 80px 0 30px;
}

.cardInfo_wrap .pageTit h2 {
    text-align: center;
    font-size: 44px;
    line-height: 1;
    font-weight: 700;
}


/* tbl_CardInfo */
.cardInfo_wrap .tbl_CardInfo {
    border: 4px solid #e9ecef;
    padding: 0 60px
}

.cardInfo_wrap .tbl_CardInfo h2{
    display: block;
    width: 30%;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    background: #1d2088;
    color: #fff;
    border-radius: 8px;
    padding: 5px 0;
    margin: 30px auto 0;
}

.cardInfo_wrap .tbl_CardInfo li {
    width: 100%;
    display: table;
    position: relative;
    padding: 50px 0 40px;
    border-top: 1px solid #e4e4e4
}

.cardInfo_wrap .tbl_CardInfo li:first-child {
    padding-top: 60px;
    border-top: 0
}

.cardInfo_wrap .tbl_CardInfo li .img {
    width: 310px;
    display: table-cell
}

.cardInfo_wrap .tbl_CardInfo li .img img {
    width: auto;
    height: 170px
}

.cardInfo_wrap .tbl_CardInfo li .info {
    width: 420px;
    display: table-cell
}

.cardInfo_wrap .tbl_CardInfo li .info h3 {
    font-size: 28px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: -0.025em
}

.cardInfo_wrap .tbl_CardInfo li .info .desc {
    font-size: 18px;
    margin-top: 10px
}

.cardInfo_wrap .tbl_CardInfo li .info .desc em {
    color: #fa5252;
    font-weight: 500
}

.cardInfo_wrap .tbl_CardInfo li .info .txt {
    margin-top: 15px;
    padding-top: 12px;
    border-top: 1px dotted #ddd
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl {
    width: 100%;
    display: table;
    line-height: 20px
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl:last-child {
    line-height: 36px
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl dd,
.cardInfo_wrap .tbl_CardInfo li .info .txt dl dt {
    display: table-cell;
    padding: 4px 0
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl dt {
    width: 28%
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl dd {
    width: 72%;
    color: #888;
    letter-spacing: -0.025em
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl dd em {
    display: inline-block;
    vertical-align: baseline;
    color: #000;
    letter-spacing: 0
}

.cardInfo_wrap .tbl_CardInfo li .info .txt dl dd a.btn.sm {
    vertical-align: baseline;
    margin-left: 3px
}

.cardInfo_wrap .tbl_CardInfo li .info .lstTxt {
    color: #aaa;
    margin-top: 10px;
    font-size: 12px
}

/* benefit_tabs */
.benefit_tabs ul {
    font-size: 0;
    padding-left: 1px
}

.benefit_tabs ul li {
    width: 20%;
    display: inline-block;
    text-align: center
}

.benefit_tabs ul.col4 li {
    width: 25%
}

.benefit_tabs ul li a {
    display: block;
    font-size: 14px;
    line-height: 46px;
    margin-left: -1px;
    background: #f5f6f8;
    border: 1px solid #e9ecef;
    color: #868e96;
    position: relative;
    z-index: 0
}

.benefit_tabs ul li a:hover {
    background: #fff;
    color: #495057;
    z-index: 1
}

.benefit_tabs ul li.active a {
    background: #fff;
    border-color: #212529;
    color: #212529;
    z-index: 2
}

/* benefit_tabs_02 */
.benefit_tabs_02 ul {
    font-size: 0;
    padding-left: 1px;
}

.benefit_tabs_02 ul li {
    width: 100%;
    text-align: center;
    border: 1px solid #D2D2D2;
    background: #f5f6f8;
    display: none;
}

.benefit_tabs_02 ul li button {
    width: 100%;
    font-size: 15px;
    line-height: 46px;
    color: #868e96;
    position: relative;
}

.benefit_tabs_02 ul li button:hover {
    background: #de8c69;
    color: #ffffff;
}

.benefit_tabs_02 ul li.active button {
    background: #FF671D;
    border-color: #FF671D;
    color: #FFF;
}

.all_429 {
    display: none;
}

.all_599 {
    display: block;
}


/* benefit_tab_content */
.benefit_tab_content {
    display: none
}

.benefit_tab_content.active {
    display: block
}

/* benefit_icon */
.benefit_icon {
    background: #f8f9fa;
    margin-top: 20px;
    padding: 50px
}

.benefit_icon ul {
    text-align: center;
    font-size: 0
}

.benefit_icon ul li {
    width: 280px;
    display: inline-block;
    position: relative
}

.benefit_icon ul li.arrow:after,
.benefit_icon ul li.equals:after,
.benefit_icon ul li.plus:after {
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 40px;
    color: #ced4da;
    position: absolute;
    left: -20px;
    top: 50%;
    margin-top: -20px
}

.benefit_icon ul li.plus:after {
    content: '\e9bc'
}

.benefit_icon ul li.equals:after {
    content: '\ea20'
}

.benefit_icon ul li.arrow:after {
    content: '\e911'
}

.benefit_icon ul li i {
    width: 120px;
    height: 120px;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: 64px auto !important;
    -webkit-background-size: 64px auto !important;
    background-position: center center;
    background-color: #fff;
    border-radius: 50%
}

.benefit_icon ul li p {
    font-size: 14px;
    margin-top: 16px
}

.benefit_icon ul li p em {
    color: #00659e
}

/* benefit_tbl */
.benefit_tbl {
    margin-top: 20px;
    border-bottom: 1px solid #495057
}

.benefit_tbl table {
    border-top: 2px solid #495057;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.benefit_tbl td,
.benefit_tbl th {
    font-size: 13px;
    text-align: left;
    line-height: 22px;
    font-weight: 400;
    padding: 15px 25px;
    border-top: 1px solid #f0f0f0;
    border-left: 1px solid #f0f0f0
}

.benefit_tbl td:first-child,
.benefit_tbl th:first-child {
    border-left: 0
}

.benefit_tbl tr:first-child td,
.benefit_tbl tr:first-child th {
    border-top: 0
}

.benefit_tbl th {
    background: #f8f9fa;
    color: #000
}

.benefit_tbl td {
    color: #495057
}

.benefit_tbl td strong {
    font-weight: 700
}

/* benefit_listTxt */
.benefit_listTxt {
    padding-top: 10px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.benefit_listTxt ul li {
    position: relative;
    font-size: 13px;
    line-height: 22px;
    margin-top: 4px
}

.benefit_listTxt ul.bul_num > li {
    color: #212529;
    padding-left: 16px
}

.benefit_listTxt ul.bul_num > li .bullet {
    position: absolute;
    top: 0;
    left: 0
}

.benefit_listTxt ul.bul_list {
    margin-bottom: 10px
}

.benefit_listTxt ul.bul_list > li {
    color: #60656c;
    padding-left: 10px
}

.benefit_listTxt ul.bul_list > li:before {
    content: '';
    width: 2px;
    height: 2px;
    background: #60656c;
    border-radius: 50%;
    position: absolute;
    top: 10px;
    left: 0
}

.benefit_wrap .pageTit {
    padding: 80px 0 30px;
}

.benefit_wrap .pageTit h2 {
    text-align: center;
    font-size: 44px;
    line-height: 1;
    font-weight: 700;
}

.benefit_list {
    width: 100%;
    margin: 10px 0 100px 0;
}

.benefit_list li img,
.benefit_list li a img {
    width: 100%;
}

/* present_list */
.present_list {
    overflow: hidden;
    position: relative
}

.present_list > ul {
    font-size: 0;
    line-height: 0;
    margin: 0 -20px
}

.present_list > ul > li {
    display: inline-block;
    padding: 40px 20px 0
}

.present_list > ul.col2 > li {
    width: 50%
}

.present_list > ul.col3 > li {
    width: 33.333333%
}

.present_list > ul.col4 > li {
    width: 25%
}

/* present_box */
.present_box {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(33, 37, 41, 0.05)
}

.present_box:focus {
    border: 1px dotted #212529;
    z-index: 10
}

.present_box .thumb:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #212529;
    opacity: 0.05;
    filter: alpha(opacity=5);
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
    z-index: 10
}

.present_box:focus .thumb:after,
.present_box:hover .thumb:after {
    opacity: 0.85;
    filter: alpha(opacity=85)
}

.present_box .thumb img {
    width: 100%;
    height: auto
}

.present_box .thumb img.hover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    min-height: 100%;
    opacity: 0;
    margin: 0;
    visibility: hidden;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out
}

.present_box:focus .thumb img.hover,
.present_box:hover .thumb img.hover {
    opacity: 1;
    visibility: visible;
    z-index: 9
}

.present_box .desc {
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    z-index: 20;
    text-align: left
}

.present_box:focus .desc, .present_box:hover .desc {
    bottom: auto;
    top: 40px
}

.present_box .desc > p {
    display: inline-block;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    font-weight: 700;
    background: #fff;
    padding: 0 12px;
    border-radius: 2em;
    margin-bottom: 12px
}

#present_A .present_box .desc > p {
    color: #f03e3e
}

#present_B .present_box .desc > p {
    color: #d6336c
}

#present_C .present_box .desc > p {
    color: #ae3ec9
}

#present_D .present_box .desc > p {
    color: #7048e8
}

.present_box:focus .desc > p,
.present_box:hover .desc > p {
    font-size: 22px;
    margin-bottom: 18px
}

.present_box .desc > h3 {
    font-size: 16px;
    letter-spacing: -0.025em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.4em;
    height: 2.8em
}

.present_box:focus .desc > h3,
.present_box:hover .desc > h3 {
    color: #fff;
    font-size: 20px;
    letter-spacing: 0;
    display: block;
    -webkit-line-clamp: inherit;
    -webkit-box-orient: inherit;
    height: auto
}

.present_box .desc > h3 > span {
    font-weight: 700
}

.present_box .desc > h3 br {
    display: none
}

.present_box:focus .desc > h3 br,
.present_box:hover .desc > h3 br {
    display: block
}

.present_box .desc .opt {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    display: none
}

.present_box:focus .desc .opt,
.present_box:hover .desc .opt {
    display: block
}

.present_box .desc .opt dl {
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
    overflow: hidden;
    margin-top: 8px
}

.present_box .desc .opt dl:first-child {
    margin-top: 0
}

.present_box .desc .opt dl dt {
    width: 26%;
    float: left
}

.present_box .desc .opt dl dd {
    width: 74%;
    float: left
}