﻿/* #14938 by LJ 2020-12-23 */
/* reset */
* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0; } 
html { font-size: 5.3334vw; /* 20px = 1rem; */ }
@media screen and (min-width: 750px){
    html { font-size: 40px; }
}
html,body { height: 100%; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,input,textarea,p,th,td,button { margin:0; padding:0; }
body { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; color: #333; font-size: 0.8rem; line-height: 1.1rem; max-width: 750px; margin: auto; } 
input, textarea, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }
input, textarea, select, button {
    border: none; background: none; resize: none; border-radius: 0; 
    -webkit-appearance: none; -moz-appearance: none; appearance: none; 
}
input::placeholder, textarea::placeholder { color: #bbb; }
input:-webkit-autofill, 
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active { 
    box-shadow: 0 0 0px 1000px white inset !important;
}
em, i { font-style:normal; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; text-align: center; }
img { border: 0; vertical-align: middle; }
ol, ul, li { list-style: none; }
a { color: #333; text-decoration: none; }
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: ""; clear: both; height: 0; line-height: 0; }

/**/
.mt14 { margin-top: 0.7rem; }
.mt18 { margin-top: 0.9rem; }
.mt24 { margin-top: 1.2rem; }
.mt30 { margin-top: 1.5rem; }
.mt34 { margin-top: 1.7rem; }
.mt38 { margin-top: 1.9rem; }
.mt46 { margin-top: 2.3rem; }
.mt205 { margin-top: 10.25rem; }
.mlr15 { margin-right: .75rem; margin-left: .75rem; }
.mlr20 { margin-right: 1rem; margin-left: 1rem; }
.tc { text-align: center; }
.tr { text-align: right; }
.s-primary { color: #fff; }
.f10 { font-size: .5rem; }
.f11 { font-size: .55rem; }
.f12 { font-size: .6rem; }
.f14 { font-size: .7rem; }
.lh22 { line-height: 1.1rem; }
.op5 { opacity: .5; }
.none { display: none; }
.unline { text-decoration: underline; }

.page-box { position: relative; }

/* page-conts */
.page-conts { position: relative; z-index: 1; padding-bottom: 1rem; }

/* bg-color */
.bg-color { background-color: #020E40; min-height: 100%; }

/* banner-img */
.banner-img {
    position: absolute; top: 0; right: 0; left: 0;
    width: 100%; display: block;
}

/* top-logo */
.top-logo {
    display: inline-block; margin: 1.53rem 0 0 0.98rem;
}
.top-logo img {
    display: block; width: 7.2rem; height: 1.5rem;
}

/* title-img */
.title-img img {
    display: block; margin: auto; width: 16.75rem; height: auto;
}

/* box-blue */
.box-blue {
    position: relative; margin-right: 1rem; margin-left: .75rem; margin-bottom: .25rem;
    padding-top: 1rem; padding-bottom: 1rem; background-color: #0B1B97;
}
.box-blue:after {
    content: ''; position: absolute; right: 0; bottom: 0; left: 0;
    border-bottom: .125rem solid #FFE9C5;
}
.box-blue:before {
    content: ''; position: absolute; top: .25rem; right: -.25rem; bottom: -.25rem; left: .5rem; z-index: -1; border: .03rem solid #fff;
}

/* year-data */
.year-data {
    display: flex; text-align: center;
    padding: 0 .4rem;
}
.year-data li {
    flex: 1; line-height: 1rem; position: relative;
}
.year-data li:after {
    content: ''; position: absolute; top: .03rem; right: 0;
    width: .03rem; height: .83rem; background-color: #2435BD;
}
.year-data li:last-child:after { display: none; }
.year-data b {
    font-size: 1rem; color: #FFE9C5; position: relative;
}
.year-data .star b:after {
    content: '*'; position: absolute; top: -0.25rem; 
    font-size: 0.8rem; color: #ffe9c5; margin-left: 0.25rem;
}
.year-data p {
    margin-top: .25rem;
    font-size: .55rem; color: #fff;
}

/* process-swiper */
.process-swiper { position: relative; padding: 0 .25rem; height: auto; }
.process-swiper:before {
    content: ''; position: absolute; top: .2rem; right: 0; left: 0;
    height: .03rem; 
    background: linear-gradient(to right, rgba(240,240,240,.1) 0%, rgba(240,240,240,.7) 50%, rgba(240,240,240,.2) 100%);
}
.process-swiper .swiper-slide {
    width: auto; padding: 0 1rem; text-align: center;
}
.process-swiper .dot {
    display: block; margin: auto; position: relative;
    width: .45rem; height: .45rem; border-radius: 50%;
    background-color: rgba(240,240,240,.3);
}
.process-swiper .dot:before {
    content: ''; position: absolute; top: 50%; left: 50%;
    width: .2rem; height: .2rem; border-radius: 50%;
    background-color: #f0f0f0; margin: -.1rem 0 0 -.1rem;
}
.process-swiper .tit {
    font-size: .7rem; line-height: 1rem; font-weight: bold;
    color: #fff; margin-top: .6rem;
}
.process-swiper .tit.is-this { color: #FFC662; }
.process-swiper .date {
    display: flex; justify-content: center; line-height: .9rem;
    color: #fff; margin-top: .5rem;
}
.process-swiper .date b { font-size: .5rem; }
.process-swiper .date strong {
    display: block; font-size: .9rem;
}
.process-swiper .date li { position: relative; margin-right: .9rem; }
.process-swiper .date li:before {
    content: '-'; position: absolute; bottom: 0; right: -.55rem;

}
.process-swiper .date li:last-child { margin-right: 0; }
.process-swiper .date li:last-child:before { display: none; }
.process-swiper .txt {
    margin-top: .4rem; font-size: .55rem; line-height: .8rem;
    color: #fff; opacity: .5;
}

/* swiper-pag-box */
.swiper-pag-box .swiper-pagination { position: static; }
.swiper-pag-box .swiper-pagination .swiper-pagination-bullet {    
    width: .5rem; height: .13rem; border-radius: 0;
    margin: 0 .125rem; opacity: .3;
}
.swiper-pag-box .swiper-pagination .swiper-pagination-bullet-active {
    width: 1rem; opacity: 1;
}

/* proficient-swiper */
.proficient-swiper .swiper-slide { 
    width: 8rem; margin-left: .925rem;
}
.proficient-swiper .swiper-slide:last-child { margin-right: .925rem; }
.proficient-swiper .conts {
    width: 8rem; margin: auto;
    position: relative;
}
.proficient-swiper .conts .photo {
    display: block; width: 100%;
}
.proficient-swiper .conts .info {
    position: absolute; right: 0; bottom: 1.5rem; left: 0;
    text-align: center;
}
.proficient-swiper .conts .info .name {
    font-size: .9rem; line-height: 1rem; font-weight: bold;
    color: #ffe9c5;
}
.proficient-swiper .conts .info .txt {
    margin-top: .7rem; font-size: .55rem; line-height: .75rem;
    color: #fff; opacity: .6; height: 1.5rem;
}
.proficient-swiper .swiper-pagination { margin-top: 1.5rem; }

/* rule-list */
.rule-list {
    display: flex; justify-content: center;
    padding: 0 2rem 0 1.5rem; text-align: center; margin-top: -1rem;
}
.rule-list li:nth-child(2) { 
    margin: 1rem 4.4rem 0; 
}
.rule-list .tag {
    font-size: .7rem; color: #FFE9C5; line-height: 1rem;
}
.rule-list .txt {
    margin: .4rem auto 0; writing-mode: vertical-lr; writing-mode: tb-lr;
}
.rule-list .txt p {
    color: #fff; text-align: left;
    font-weight: bold; font-size: .6rem; line-height: .75rem;
}

/* prize-list */
.prize-list { margin: 1rem 1rem 0; }
.prize-list li {
    margin-bottom: 1px; background-color: #222D5F;
    color: #fff; overflow: hidden;
}
.prize-list .tit {
    position: relative; height: 2.25rem;
    padding: 0 2.35rem; line-height: 2.25rem;
}
.prize-list .tit .ico {
    position: absolute; top: .55rem; left: .8rem;
    width: 1.08rem; height: 1.02rem; background: url('../pic/activity/goodlawyer_2020/top10.png') no-repeat; background-size: 100% 100%;
}
.prize-list .tit .down {
    position: absolute; right: 1rem; top: .93rem;
    width: .63rem; height: .38rem; background: url('../pic/activity/goodlawyer_2020/down.png') no-repeat; background-size: 100% 100%;
}
.prize-list .tit b { font-size: .8rem; }
.prize-list .txt {
    display: none; padding: 0 2.35rem .75rem; font-size: .65rem;
    color: #fff; opacity: .6; margin-top: -.2rem;
}
.prize-list li.is-this { background-color: #1B2553; }
.prize-list li.is-this .tit { color: #FFE9C5; }
.prize-list li.is-this .tit .down { background-image: url('../pic/activity/goodlawyer_2020/up.png'); }
.prize-list li.is-this .txt { display: block; }

/* prize-tab */
.prize-tab { 
    display: flex; justify-content: center; align-items: center;
}
.prize-tab .nav {
    margin: 0 .375rem; padding: .25rem .53rem; height: 1.5rem;
    line-height: 1.1rem; font-size: .7rem; font-weight: bold;
    background-color: rgba(255, 233, 197, .5); color: #484237;
}
.prize-tab .nav.is-this { background-color: #FFE9C5; color: #492E00; }

/* prize-conts */
.prize-conts {
    position: relative; margin: 1.25rem auto 0;
    max-width: 16.75rem;
}
.prize-conts .bg {
    display: block; width: 100%; height: auto;
}
.prize-conts .conts {
    position: absolute; top: 0; left: 3.5rem;
}
.prize-conts .conts dl { margin-top: 1rem; }
.prize-conts .conts dl dt {
    line-height: 1.2rem; font-size: .8rem; font-weight: bold;
    color: #FFE9C5;
}
.prize-conts .conts dl dt img {
    display: inline-block; vertical-align: middle;
    width: .75rem; margin-right: .35rem; margin-top: -.13rem;
}
.prize-conts .conts dl dd {
    margin-top: .4rem;
    font-size: .6rem; line-height: .9rem; color: #fff; opacity: .5;
}

/* enroll-btn */
.enroll-btn {
    display: block; width: 100%; height: 2.25rem; text-align: center;
    background-color: #FFC662; color: #492E00;
    font-size: .9rem; line-height: 2.3rem; text-align: center;
    opacity: .5;
}
.enroll-btn.is-click { opacity: 1; }

/* company-swiper */
.company-swiper .swiper-slide { 
    width: 5.1rem; margin-left: .8625rem;
}
.company-swiper .swiper-slide:last-child { margin-right: .8625rem; }
.company-swiper .swiper-pagination { margin-top: .83rem; }
.company-swiper .pic {
    display: block; width: 5.1rem; height: auto;
}

/* previous-swiper */
.previous-swiper .swiper-slide {
    width: 6.5rem; margin-left: 1.92rem;
}
.previous-swiper .swiper-slide:last-child { margin-right: 1.92rem; }
.previous-swiper .swiper-pagination { margin-top: .75rem; }
.previous-swiper .previous-item { display: block; }
.previous-swiper .previous-item img { 
    display: block; width: 6.5rem; height: 5rem; 
}

/* right-enroll */
.right-enroll {
    position: fixed; right: 1rem; bottom: 3.5rem; z-index: 50;
    padding: .65rem;
    width: 3rem; height: 3rem; border-radius: 50%;
    background-color: #FFC662; line-height: .85rem;
    font-size: .8rem; color: #492E00; font-weight: bold;
}

/**/
.h50 { height: 2.5rem; }

/* bottom-nav */
.bottom-nav { 
    position: fixed; right: 0; bottom: 0; left: 0; display: flex; align-items: center; background-color: #fff; z-index: 50; text-align: center; max-width: 750px; margin: auto;
}
.bottom-nav a { 
    flex: 1; font-size: 0.7rem; height: 2.5rem; line-height: 2.5rem; 
}
.bottom-nav .active { 
    background-color: #2435BD; color: #fff; font-weight: bold; 
}

@supports (bottom: constant(safe-area-inset-bottom)) or (bottom: env(safe-area-inset-bottom)) {
    /* 底部漂浮 增加样式*/
    .h50, .bottom-nav {
        box-sizing: unset;
        padding-bottom: 0;
        padding-bottom: constant(safe-area-inset-bottom);  
        padding-bottom: env(safe-area-inset-bottom);
    }
    .right-enroll {
        margin-bottom: 0;
        margin-bottom: constant(safe-area-inset-bottom);  
        margin-bottom: env(safe-area-inset-bottom);
    }
}

/* popup-msg */
.popup-msg { 
    position: fixed; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); z-index: 1002; transition: all .1s linear;
    padding: 1rem 0; background-color: rgba(0,0,0, .8); border-radius: 0.5rem; line-height: 1.1rem; width: 7.5rem;
    font-size: 0.7rem; color: #fff; text-align: center;
}


/** #14938 by LJ 2020-12-28 */
.lh18 { line-height: 0.9rem; }
.title-img2 img {
    display: block; margin: auto;
    width: 10rem; height: 2.15rem;
}

/* shortlist-box */
.shortlist-box { 
    position: relative; margin-top: 3.5rem;
}
.shortlist-box .more-prise { 
    position: absolute; top: 0; right: 1rem; z-index: 5; padding: 0 0.5rem; height: 1.25rem; line-height: 1.3rem; color: #fff; background-color: #020E40; font-size: 0.6rem;
}
.shortlist-box .more-prise:before { 
    content: ''; position: absolute; top: 0; left: 0; width: 199.9%; height: 199.9%; border: 1px solid #fff; -webkit-transform: scale(.5,.5) translate(-50%,-50%); transform: scale(.5,.5) translate(-50%,-50%);  -webkit-box-sizing: border-box; box-sizing: border-box; 
}
.shortlist-box .more-prise.fixed { position: fixed; margin-top: 1.5rem; }
.shortlist-box .title-type { 
    margin: 0 1rem;
    font-size: 0.9rem; line-height: 1.3rem; height: 1.25rem;
    font-weight: bold; color: #fff;
}
.shortlist-box .standard { 
    line-height: 0.85rem; color: #fff; font-size: 0.6rem;
    margin-top: 1rem; padding: 0 1rem; opacity: .5; line-height: 0.9rem;
}
.shortlist-box .explain { 
    line-height: 0.8rem; color: #fff; margin-bottom: 1rem;
    opacity: .5; font-size: 0.55rem;
}

/* shortlist-swiper */
.shortlist-swiper { margin-top: 0.75rem; }
.shortlist-swiper .swiper-pagination { margin-top: 1.5rem; }

/* shortlist-lawyer */
.shortlist-lawyer li { position: relative; font-size: 0.6rem; }
.shortlist-lawyer li:before { 
    content: ''; position: absolute; right: 0; bottom: 0; left: 3.7rem; height: 1px; background-color: #fff; opacity: .1; 
    -webkit-transform: scaleY(.5);  transform: scaleY(.5); 
}
.shortlist-lawyer .item { 
    position: relative; display: block; padding: 0.8rem 0 0.8rem 3.7rem; 
}
.shortlist-lawyer .photo { 
    position: absolute; top: 0.8rem; left: 0; width: 3rem; height: 3rem; border-radius: 50%; margin-right: 1rem; 
}
.shortlist-lawyer .name { 
    font-size: 0.8rem; font-weight: bold; color: #FFE9C5; 
}
.shortlist-lawyer .info { 
    margin-top: 0.2rem; color: #fff; line-height: 0.9rem; 
    opacity: .5;
}
.shortlist-lawyer .info span { 
    position: relative; margin-right: .8rem; 
}
.shortlist-lawyer .info span:last-child { margin-right: 0; }
.shortlist-lawyer .law { 
    color: #fff; line-height: 0.9rem; opacity: .5;
}

/* */
.shortlist-box.have-prise .title-type {
    padding-left: 1.85rem; position: relative;
}
.shortlist-box.have-prise .title-type:before {
    content: ''; position: absolute; top: 0.15rem; left: 0;
    width: 1.4rem; height: 0.85rem;
    background: url('../pic/activity/goodlawyer_2020/ico-prize.png') no-repeat; background-size: 100% 100%;
}
.shortlist-box.have-prise .shortlist-lawyer .item:after {
    content: ''; position: absolute; top: 0.4rem; left: 1.95rem;
    width: 1rem; height: 0.8rem;
    background: url('../pic/activity/goodlawyer_2020/ico-prize-s.png') no-repeat; background-size: 100% 100%;
}

/* prise-pop */
.prise-pop {
    position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 110;
    display: none;
}
.prise-pop .bg {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background-color: #000; opacity: .5;
}
/* prise-nav */
.prise-nav { 
    position: absolute; top: 0; right: 0; bottom: 0;
    background-color: #fff; width: 9rem; padding-top: 1.9rem; -webkit-transform: translateX(100%); transform: translateX(100%); -webkit-transition: all linear .15s; transition: all linear .15s; 
}
.prise-nav .tit { 
    text-align: center; font-size: 0.9rem; line-height: 1.2rem; font-weight: bold; 
}
.prise-nav .list { 
    margin-top: 1.35rem; padding: 0 0.4rem; text-align: center; 
}
.prise-nav .list li { 
    font-size: 0.7rem; line-height: 1.75rem; margin-top: 0.25rem; 
}
.prise-nav .list .active { 
    background-color: #0B1B97; color: #fff; 
}
.prise-pop .prise-nav.show { 
    -webkit-transform: translateX(0); transform: translateX(0); 
}

/* expert-show */
.expert-show { 
    display: -webkit-flex; display: flex; flex-wrap: wrap; padding: 0 1rem 0.5rem; margin-left: -0.75rem;  
}
.expert-show li { 
    position: relative; -webkit-flex: auto; flex: auto; width: 8rem; margin-top: 1.8rem; margin-left: 0.75rem;  text-align: center; 
}
.expert-show .photo { 
    display: block; overflow: hidden; 
}
.expert-show .photo img { display: block; width: 100%; }
.expert-show .name { 
    margin-top: 0.75rem; font-size: 0.9rem; line-height: 1rem; 
    color: #FFE9C5; font-weight: bold;
}
.expert-show .disc { 
    margin-top: 0.6rem; line-height: 15pzx; color: #fff; 
    font-size: 0.55rem; opacity: .6;
}
