@charset "UTF-8";

@font-face {
    font-family: "myriad pro";
    src: url(../fonts/MyriadPro-Semibold.otf)
}

@font-face {
    font-family: MyriadPro;
    src: url(../fonts/MyriadPro-Semibold.otf)
}

@font-face {
    font-family: MyriadPro-Light;
    src: url(../fonts/MyriadPro-Light.ttf)
}

@font-face {
    font-family: MyriadPro-Regular;
    src: url(../fonts/MyriadPro-Regular.otf)
}

@font-face {
    font-family: "301CAI987";
    src: url(../fonts/301-CAI978.TTF)
}

@font-face {
    font-family: Hiragino-Sans-GB-W6;
    src: url(../fonts/Hiragino-Sans-GB-W6.otf)
}

:root {
	--initial-font-size: 1vw;
    --logo-width: 17vw;
    --foot-left-white-width: 15vw;
	--foot-item-width: 1.68rem
}

a,a:focus,a:hover,a:visited {
    text-decoration: none;
    cursor: pointer;
    color: #bebdbd
}

a:hover {
    color: #4857ea
}

body,dd,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,html,img,legend,li,ol,p,section,ul {
    margin: 0;
    padding: 0
}

* {
    margin: 0;
    padding: 0
}


input,select {
    vertical-align: middle
}

input,select,textarea {
    margin: 0
}

textarea {
    resize: none
}

table {
    border-collapse: collapse
}

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

.clearfix:after {
    clear: both
}

a {
    text-decoration: none
}

h1,h2,h3,h4,h5,h6 {
    text-decoration: none;
    font-weight: 400;
    font-size: 100%
}

em,i,s {
    font-style: normal;
    text-decoration: none
}

.w {
    width: 1200px;
    margin: 0 auto
}

.fl {
    float: left
}

.fr {
    float: right
}

.al {
    text-align: left
}

.ac {
    text-align: center
}

.ar {
    text-align: right
}

.ac img {
    margin-left: auto;
    margin-right: auto
}

.nopadding {
    padding: 0
}

h1,h2,h3,h4,h5,h6 {
    position: relative;
    font-weight: 400;
    margin: 0;
    background: 0 0;
    line-height: 1.4
}

body,html {
    font-family: MyriadPro-Regular,sans-serif,Arial;
    font-size: var(--initial-font-size);
    line-height: 1.4;
    color: #000;
    width: 100%;
}

.white {
    color: #fff
}

.black {
    color: #000
}

.upp {
    text-transform: uppercase
}

.relative {
    position: relative
}

.absolute {
    position: absolute
}

.container-fluid {
    width: 100%
}

@media (min-width: 768px) {
    .container {
        width:720px
    }
}

@media (min-width: 992px) {
    .container {
        width:960px
    }
}

@media (min-width: 1200px) {
    .container {
        width:1140px
    }
}

@media (min-width: 1400px) {
    .container {
        width:1340px
    }
}

@media (min-width: 1920px) {
    .container {
        width:1570px
    }
}

@media (max-width: 575px) {
    .container {
        width:100%
    }
}

.child-same-height,.flex {
    display: flex
}

@media (max-width: 767px) {
    .child-same-height {
        display:block
    }
}

.valign-center {
    display: flex;
    justify-content: center;
    flex-direction: column
}

@media (max-width: 767px) {
    :root {
        --initial-font-size:2.6vw;
        --logo-width: 40vw
    }
}

.footer_1 {
    background-color: #232323;
    padding: 1.2rem var(--foot-left-white-width) 1rem
}

.foot_logo {
    width: 17.46rem
}

.footer_2 {
    width: 100%;
    background-color: #060731;
    padding: 2.5rem var(--foot-left-white-width)
}

.footer_2 dt {
    color: #fff;
    font-size: 1.1rem;
    padding-bottom: 1em
}

.footer_2 dd a {
    color: #878585;
    font-size: .9rem;
    line-height: 1.6
}

.footer_2 dd a:hover {
    color: #5c6bfb
}

.footer_2 .item {
    display: inline-block;
    width: var(--foot-item-width);
    height: var(--foot-item-width);
    margin-right: 2rem;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s;
    overflow: hidden
}

.footer_2 .item:last-child {
    margin-right: 0
}

.footer_2 .item .img {
    width: 100%;
    -webkit-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out
}

.footer_2 .item:hover .img {
    -moz-transform: translateY(calc(var(--foot-item-width) * -1));
    -webkit-transform: translateY(calc(var(--foot-item-width) * -1));
    -o-transform: translateY(calc(var(--foot-item-width) * -1));
    transform: translateY(calc(var(--foot-item-width) * -1))
}

.footer_2 h3 {
    color: #fff;
    font-size: 1.2rem;
    padding-top: .2em;
    padding-bottom: .2em
}

.footer_2 input {
    width: 100%;
    height: 1.7rem;
    font-size: 1rem;
    line-height: 1.4;
    color: #fff;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: .8em;
    padding-top: .2em;
    border: 0.5px solid #fff
}

.footer_2 button {
    width: auto;
    height: 1.7rem;
    padding: .2em .6em 0;
    background-color: #fff;
    color: #000;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
    font-size: 1rem;
    line-height: 1.4;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s;
    cursor: pointer;
    border: 0;
}

.footer_2_2 p {
    color: #878585;
    font-size: 14px;
    line-height: 1.2;
	padding: 1em 1vw;
}

.footer_2_2>div {
    padding: 0 1vw
}

.footer_2_3 {
    font-size: .88rem;
    line-height: 1.2;
    text-align: left;
    color: #878585;
    padding-top: 3.8rem
}

.age {
    position: fixed;
    z-index: 1020;
    display: none;
    font-family: "301CAI987"
}

.age .shadow {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,.9)
}

.age .age-con {
    position: fixed;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    z-index: 2;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    text-align: center
}

.age .age-con .img {
    width: 3rem
}

.age .age-con .text1 {
    font-family: "301CAI987";
    font-weight: 100;
    font-size: 60px;
    line-height: 1;
    color: #fefefe
}

@media only all and (max-width: 1440px) {
    .age .age-con .text1 {
        font-size:36px
    }
}

@media only all and (max-width: 414px) {
    .age .age-con .text1 {
        font-size:20px
    }
}

.age .age-con .text1 span {
    font-size: 80px;
    display: block
}

@media only all and (max-width: 1440px) {
    .age .age-con .text1 span {
        font-size:50px
    }
}

@media only all and (max-width: 414px) {
    .age .age-con .text1 span {
        font-size:30px
    }
}

.age .age-con .two-btn {
    display: inline-block;
    margin-top: 13px;
    padding-bottom: 60px;
    border-bottom: 1px solid #fefefe;
    font-size: 0
}

@media only all and (max-width: 1440px) {
    .age .age-con .two-btn {
        margin-top:40px;
        padding-bottom: 40px
    }
}

@media only all and (max-width: 414px) {
    .age .age-con .two-btn {
        width:100%
    }
}

.age .age-con .two-btn .item {
    width: 240px;
    height: 50px;
    line-height: 50px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    background-color: #4857ea;
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    color: #fefefe;
    margin-right: 10px;
    cursor: pointer;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s
}

@media only all and (max-width: 1440px) {
    .age .age-con .two-btn .item {
        width:170px;
        height: 40px;
        line-height: 40px;
        -webkit-border-radius: 20px;
        border-radius: 20px;
        font-size: 14px
    }
}

@media only all and (max-width: 414px) {
    .age .age-con .two-btn .item {
        width:130px;
        font-size: 12px
    }
}

.age .age-con .two-btn .item:hover {
    opacity: .9
}

.age .age-con .two-btn .item2 {
    margin-right: 0;
    background-color: #2e2e2e
}

.age .age-con .text2 {
    color: #fefefe;
    font-size: 16px;
    line-height: 24px;
    margin-top: 25px
}

@media only all and (max-width: 1440px) {
    .age .age-con .text2 {
        font-size:14px;
        line-height: 22px;
        margin-top: 20px
    }
}

.age .age-con .text3 {
    color: #fefefe;
    font-size: 14px;
    line-height: 24px
}

@media only all and (max-width: 1440px) {
    .age .age-con .text3 {
        font-size:12px;
        line-height: 22px
    }
}

.age-ie {
    position: fixed;
    z-index: 1020;
    display: none
}

.age-ie .shadow {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,.9)
}

.age-ie .age-con {
    position: fixed;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    z-index: 2;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    text-align: center
}

.age-ie .age-con .img {
    width: 46px
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .img {
        width:30px
    }
}

@media only all and (max-width: 414px) {
    .age-ie .age-con .img {
        width:20px
    }
}

.age-ie .age-con .text1 {
    font-size: 60px;
    line-height: 1;
    color: #fefefe
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .text1 {
        font-size:36px
    }
}

@media only all and (max-width: 414px) {
    .age-ie .age-con .text1 {
        font-size:20px
    }
}

.age-ie .age-con .text1 span {
    font-size: 80px;
    display: block
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .text1 span {
        font-size:50px
    }
}

@media only all and (max-width: 414px) {
    .age-ie .age-con .text1 span {
        font-size:30px
    }
}

.age-ie .age-con .two-btn {
    display: inline-block;
    margin-top: 73px;
    padding-bottom: 60px;
    border-bottom: 1px solid #fefefe;
    font-size: 0
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .two-btn {
        margin-top:40px;
        padding-bottom: 40px
    }
}

@media only all and (max-width: 414px) {
    .age-ie .age-con .two-btn {
        width:100%
    }
}

.age-ie .age-con .two-btn .item {
    width: 240px;
    height: 50px;
    line-height: 50px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    background-color: #004ea1;
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    color: #fefefe;
    margin-right: 10px;
    cursor: pointer;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .two-btn .item {
        width:170px;
        height: 40px;
        line-height: 40px;
        -webkit-border-radius: 20px;
        border-radius: 20px;
        font-size: 14px
    }
}

@media only all and (max-width: 414px) {
    .age-ie .age-con .two-btn .item {
        width:130px;
        font-size: 12px
    }
}

.age-ie .age-con .two-btn .item:hover {
    opacity: .9
}

.age-ie .age-con .two-btn .item2 {
    margin-right: 0;
    background-color: #2e2e2e
}

.age-ie .age-con .text2 {
    font-size: 16px;
    line-height: 24px;
    margin-top: 25px
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .text2 {
        font-size:14px;
        line-height: 22px;
        margin-top: 20px
    }
}

.age-ie .age-con .text3 {
    font-size: 14px;
    line-height: 24px
}

@media only all and (max-width: 1440px) {
    .age-ie .age-con .text3 {
        font-size:12px;
        line-height: 22px
    }
}

.content--intro {
    z-index: 100;
    height: 200vh;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%
}

.content__inner {
    width: 100%;
    height: 100vh;
    position: relative;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #000021d1
}

.main-bottom {
    position: relative
}

.main-bottom-1 {
    width: 100%
}

.main-bottom-2 {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding: 8.52vw var(--foot-left-white-width) 0
}

.SUPPORT_icon {
    padding-bottom: 5.47vw
}

.SUPPORT_icon img {
    width: 6.64vw
}

.SUPPORT_icon p {
    font-family: MyriadPro-Regular;
    font-size: 1.37vw;
    color: #dfdfdf;
    line-height: 1.2;
    margin-top: 1em;
    text-transform: uppercase
}

.SUPPORT_1 h2 {
    padding-bottom: .6rem;
    color: #5c6bfb;
    font-size: 2.4rem;
    font-family: MyriadPro-Regular
}

.SUPPORT_1 p {
    font-size: 1rem;
    font-family: MyriadPro-Regular;
    color: #bebdbd;
    height: 5rem;
    width: 25rem;
    margin: 0 auto
}

.SUPPORT_1 a {
    font-size: 1.2rem;
    font-family: MyriadPro-Regular;
    color: #9b9a9e;
    line-height: 1.8;
    width: 8em;
    display: inline-block;
    border: 1px solid #5c6bfb;
    border-radius: .5rem;
    white-space: nowrap;
    transition: all .5s;
    position: relative
}

.SUPPORT_1 a::before {
    content: "";
    left: 0;
    bottom: 0;
    position: absolute;
    height: 0;
    width: 100%;
    transition: all .5s;
    background-color: #5c6bfb;
    border-radius: .3rem;
    z-index: -1
}

.SUPPORT_1 a:hover::before {
    height: 100%
}

.SUPPORT_1 a:hover {
    color: #fff
}

.SUPPORT_2 {
    position: relative
}

.SUPPORT_2::after {
    content: "";
    width: 2px;
    height: 60%;
    background-color: #5c6bfb;
    position: absolute;
    top: 25%;
    right: 0
}

@media (max-width: 1199px) {
    .SUPPORT_1 p {
        height:6rem
    }
}

@media(max-width: 1600px) {
    :root {
        --foot-item-width:2.2rem
    }

    .footer_2 .item {
        margin-right: 1.4rem
    }
}

@media (max-width: 991px) {
    .SUPPORT_1 p {
        height:auto;
        padding-bottom: 1em
    }

    .SUPPORT_1 h2 {
        font-size: 1.8rem
    }
    .footer_2_2{
        margin-top: 20px;
    }
    .footer_2_2>div {
        text-align: left;
        padding: 1rem 8vw 0 0;
    }

    :root{
        --foot-item-width: 4rem
    }

    .footer_2 .item {
        margin-right: calc(var(--foot-item-width) * .6)
    }

    .footer_2 h3 {
        float: left;
        font-size: 2rem;
        line-height: 1.7;
        display: inline-block;
        padding: 0
    }

    .footer_2 button {
        right: 8vw
    }

    .footer_2 input {
        width: calc(100% - 12rem);
        height: 3.5rem;
        font-size: 2rem
    }

    .footer_2 button {
        height: 3.5rem;
        font-size: 2rem
    }
}

@media (max-width: 767px) {
    :root {
        --foot-item-width:2.5rem;
        --foot-left-white-width: 5vw
    }

    .logo {
        margin-left: 8vw
    }

    .logo-forward-thinking {
        position: relative;
        bottom: auto;
        left: auto;
        margin-left: calc(var(--logo-width) + 13vw);
        margin-top: -4vw
    }


    .main-bottom-1 {
        width: 100%;
        margin-left: 0
    }

    .SUPPORT_2 {
        margin-bottom: 2rem;
        padding-bottom: 3rem
    }

    .SUPPORT_2::after {
        width: 100%;
        height: 2px;
        top: auto;
        right: 0;
        bottom: 0
    }

    .SUPPORT_1 p {
        height: auto;
        padding-bottom: 1em
    }

    .SUPPORT_1 h2 {
        font-size: 4.5vw
    }

    .SUPPORT_1 a {
        font-size: 2.6vw
    }

    .SUPPORT_icon img {
        width: 10vw
    }

    .SUPPORT_icon {
        padding-bottom: 12vw
    }

    .main-bottom-2 .col-xs-3 {
        padding: 0
    }

    .footer_1 {
        text-align: center;
        padding: 1rem 0 .6rem
    }

    .foot_logo {
        margin: 0 auto
    }

    .footer_2_3 {
        padding-top: 2rem
    }

    .footer_2 h3 {
        font-size: 1rem
    }

    .footer_2 input {
        width: calc(100% - 7rem);
        height: 1.8rem;
        font-size: 1rem
    }

    .footer_2 button {
        height: 1.8rem;
        font-size: 1rem
    }

    .footer_2 .col-xs-3 {
        padding-left: 0;
        padding-right: 0
    }
}

@media (max-width: 480px) {
    .footer_2 dt {
        font-size:1rem
    }

    :root {
        --initial-font-size: 12px
    }

    .SUPPORT_icon img {
        width: 14vw
    }

    .SUPPORT_icon {
        padding-bottom: 7vw
    }
}
