.key_t {
    position: absolute;
    z-index: 11;
    left: 12vw;
    top: 15vw;
    width: 12vw;
}

.flex-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.jcsb {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.jcc {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.tac {
    text-align: center;
}

.ta {
    text-align: left;
}

.btn-popup {
    padding-bottom: 6vw;
}

#sec1 {
    padding: 12% 0 12%;
    background: url("../img/bluefish/s1_bg.jpg") no-repeat center/cover;
}

#sec1 .group1 {
    margin: 0 5% 10%;
    background: rgba(255, 255, 255, 0.9);
    padding: 7% 4% 12%;
}

#sec1 .group2 {
    margin: 0 5%;
    background: rgba(255, 255, 255, 0.9);
    padding: 7% 4% 12%;
}

#sec1 .group2 .box {
    padding: 7% 0 7%;
    margin: 5% 0;
    text-align: center;
    background: url("../img/bluefish/s1_border_1.png") no-repeat center/100% 100%;
}

#sec1 .group2 .box h3 {
    font-weight: 700;
    font-size: 4vw;
    color: #19194d;
}

#sec1 h2 {
    text-align: center;
    border-bottom: 1px dashed #000;
    font-weight: 700;
    font-size: 6vw;
    line-height: 1.5;
    color: #19194d;
    margin-bottom: 20px;
    padding-bottom: 2%;
}

#sec1 .box {
    margin: 5% 0;
    background: url("../img/bluefish/s1_border_1.png") no-repeat center/100% 100%;
    padding: 3% 0 3% 10%;
}

#sec1 .box ul li {
    font-size: 15px;
    line-height: 1.8;
}

#sec1 .box ul li span {
    color: #20758d;
    font-size: 15px;
}

#sec1 p.txt {
    padding-left: 7px;
}

#sec2 {
    padding-bottom: 20%;
}

#sec2 p.txt {
    padding: 20% 7% 0;
    position: relative;
    z-index: 2;
}

#sec2 .group {
    background: url("../img/bluefish/s2_deco.png") no-repeat top center/100% auto;
    margin-top: -20vw;
    position: relative;
    z-index: 1;
    padding-top: 52%;
}

#sec2 .group .box {
    padding: 0 10% 10%;
    background: url("../img/bluefish/s2_deco_t.png") no-repeat top left/100% auto, url("../img/bluefish/s2_deco_b.png") no-repeat bottom right/100% auto;
}

#sec2 .group .box h4 {
    text-align: center;
    font-weight: 700;
    color: #16162d;
    font-size: 6vw;
    padding: 10% 0 7%;
}

#sec2 .group .box h4:before {
    content: '';
    background: url("../img/bluefish/s2_icon.png") no-repeat center/100% auto;
    width: 9vw;
    height: 8vw;
    display: inline-block;
    margin-right: 3px;
    vertical-align: middle;
}

#sec2 .group .box p.txt {
    padding: 0 3%;
}

#sec3 {
    padding: 15% 0;
    background: url("../img/bluefish/s3_deco_b.png") repeat-x bottom/100% auto, url("../img/bluefish/s3_deco_t.png") repeat-x top/100% auto, url("../img/bluefish/s3_bg.jpg");
}

#sec3 .note {
    text-align: center;
}

#sec3 .box {
    color: #fff;
    margin: 0 3%;
    background: url("../img/bluefish/s3_bg_1.jpg");
    padding-bottom: 12%;
    margin-bottom: 12%;
}

#sec3 .box h3 {
    text-align: center;
    font-weight: 700;
    font-size: 6vw;
    line-height: 1.5;
    padding-top: 10%;
    padding-bottom: 10%;
}

#sec3 .box h3 small {
    font-size: smaller;
    display: block;
}

#sec3 .box .right ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto;
    max-width: 400px;
}

#sec3 .group1 {
    background: url("../img/bluefish/s3_deco.png") no-repeat top center/100% auto;
}

#sec3 .box1 {
    padding: 0 5%;
    position: relative;
    margin: -5% 10% 15%;
    background: url("../img/shared/bg_1.jpg");
    padding-top: 15%;
    position: relative;
    z-index: 2;
    padding-bottom: 7%;
}

#sec3 .box1 dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 7%;
    border-bottom: 2px solid #20758d;
    font-weight: 700;
    padding-bottom: 3%;
}

#sec3 .box1 dl dt {
    font-size: 7vw;
}

#sec3 .box1 dl dd {
    font-size: 7vw;
    color: #cf4400;
}

#sec3 .box1 dl dd small {
    color: #16162d;
    font-size: 7vw;
}

#sec3 .box1 p.txt {
    padding: 0;
}

#sec3 .slide1 .right {
    padding: 0 5%;
    position: relative;
    margin: -5% 10% 0%;
    background: url("../img/shared/bg_1.jpg");
    padding-top: 12%;
    position: relative;
    z-index: 2;
    padding-bottom: 7%;
}

#sec3 .slide1 .right h3 {
    margin-bottom: 7%;
    border-bottom: 2px solid #20758d;
    font-weight: 700;
    padding-bottom: 3%;
    text-align: center;
    font-size: 7vw;
}

#sec3 .slide1 .right p.txt {
    padding: 0;
}

#sec4 {
    padding-bottom: 12%;
    background: url("../img/bluefish/s4_deco_3.png") no-repeat bottom/100% auto, url("../img/bluefish/s4_deco_1.png") no-repeat top center/100% auto;
}

#sec4 .note {
    text-align: center;
    margin-bottom: 12%;
}

#sec4 h2 {
    text-align: center;
    font-weight: 700;
    font-size: 7.5vw;
    letter-spacing: 0.1em;
    color: #16162d;
    margin-bottom: 6%;
}

#sec4 .group2 {
    background: url("../img/bluefish/s4_deco_2.png") no-repeat bottom/100% auto;
}

#sec4 .right {
    margin-top: 7%;
    padding: 10% 12% 12% 12%;
    background: url("../img/bluefish/s4_border.png") no-repeat top left/100% auto;
}

#sec4 .right dl {
    font-weight: 700;
    font-size: 6.5vw;
    line-height: 1.7;
    color: #16162d;
    letter-spacing: 0.1em;
    margin-bottom: 7%;
}

#sec4 .right dl dt small {
    font-size: 5vw;
    display: block;
    letter-spacing: 0;
}

#sec4 .right dl dd {
    color: #cf4400;
}

#sec4 .right dl dd small {
    color: #16162d;
    font-size: 6.5vw;
}

#sec4 .right p.txt {
    padding: 0;
}

#sec5 dl {
    padding-top: 40px;
    margin: 0 5% 0 7%;
    font-weight: 700;
    font-size: 6vw;
    color: #16162d;
    padding-bottom: 3%;
    border-bottom: 2px solid #000;
    margin-bottom: 20px;
    text-align: center;
}

#sec5 dl dd {
    font-size: 5.5vw;
}

#sec5 dl dd span {
    display: inline-block;
    margin-left: 10px;
    font-size: 6vw;
    color: #cf4400;
}

#sec5 .txt2 {
    padding-top: 10px;
    margin: 5% 5% 0 7%;
    padding-bottom: 3%;
    border-top: 2px solid #000;
    margin-bottom: 20px;
}

#sec6 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url("../img/bluefish/s6_deco.png") no-repeat center/100% auto;
    position: relative;
    padding-top: 30%;
    padding-bottom: 20%;
}

#sec6 p.img1 {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}

#sec6 p.img2 {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
}

#sec6 .box {
    margin: 0 10%;
    color: #fff;
    background: url("../img/shared/bg_2.jpg");
    padding-top: 12%;
    padding-bottom: 16%;
}

#sec6 .box h3,
#sec6 .box p.txt,
#sec6 .box p.btn {
    position: relative;
    z-index: 2;
}

#sec6 .box h3 {
    text-align: center;
    font-weight: 700;
    font-size: 7.5vw;
    line-height: 1.7;
    margin-bottom: 5%;
}

#sec6 .box p.txt {
    padding: 0 7% 4%;
    text-align: justify;
}

#sec6 .box p.btn {
    text-align: center;
}

#sec7 {
    background: url("../img/bluefish/s7_bg.jpg") no-repeat center/cover;
    text-align: center;
    color: #fff;
    padding-bottom: 15%;
}

#sec7 h3 {
    padding-top: 25%;
    font-weight: 700;
    font-size: 6vw;
    margin-bottom: 30px;
}

#sec7 p.btn {
    width: 60%;
    margin: 0 auto;
}

#sec8 {
    position: relative;
    padding-top: 12%;
    padding-bottom: 10%;
    background: url("../img/bluefish/s8_pt.jpg");
}

#sec8 h3 {
    padding-left: 5%;
    font-weight: 700;
    color: #16162d;
    font-size: 6vw;
    margin-bottom: 10%;
}

#sec8 p.btn {
    position: absolute;
    right: 5%;
    top: 14vw;
    width: 25%;
    margin: 0;
    line-height: 1;
}

#sec8 dl {
    margin-bottom: 8%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 5%;
}

#sec8 dl dt {
    margin-right: 7%;
}

#sec8 dl dt span {
    display: block;
    width: 38vw!important;
    height: 30vw!important;
    background: url("../img/bluefish/s8_img.jpg") no-repeat center/cover;
}

#sec8 dl dd {
    line-height: 1.8;
}

#sec8 dl dd .date {
    display: block;
}

#sec4 .right h4 {
    font-weight: 600;
}

#sec4 .group3 .right dl {
    display: flex;
    justify-content: space-between;
}