.visual-area {
    max-width: 2000px;
    height: auto;
    margin: 0 auto;
}

.visual-area-content {
    position: relative;
    height: 700px;
    background: #F2F2F2;
    perspective : 25vw;
}

@media screen and (max-width: 1200px) {
    .visual-area-content {
        height: 100vh;
    }
}

.visual-area-title {
    display: flex;
    justify-content: space-around;
    box-sizing: border-box;
    width: 100%;
    height: 700px;
    color: #fff;
    font-size: 0;
}

.visual-area-title h1 {
    display: block;
    width: 40%;
    font-family: 'Noto Sans KR', sans-serif;
    color: #5096F2;
    font-size: 50px;
    font-weight: 800;
    line-height: 700px;
}

@media screen and (max-width: 1200px) {
    .visual-area-title h1 {
        display: none;
    }
}

.visual-area-title h1:nth-child(2) {
    text-align: right;
}

.visual-area-logo svg {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 30%;
    max-width: 200px;
    text-align: center;
    transform: translateX(-50%) translateY(-50%);
}

.visual-area-logo svg:nth-child(1) {  
    transform-origin: 0%;
    animation: spin 4s ease infinite normal;
}

@keyframes spin {
    0% {
        transform: rotateY(0deg) translateX(-50%) translateY(-50%);
    }
    100% {
        transform: rotateY(360deg) translateX(-50%) translateY(-50%);
    }
}

@media screen and (max-width: 1200px) {
    .visual-area-content p {
        display: block;
    }
}

.contents {
    max-width: 2000px;
    margin: 0 auto;
    font-family: 'Noto Sans KR', sans-serif;
    text-align: center;
}

.content {
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
    background: #F2F2F2;
}

.content .content-benner {
    padding: 30px;
    box-sizing: border-box;
    margin: 0 auto;
    width: 100%;
}

@media screen and (max-width: 1200px) {
    .content .content-benner {
        padding: 10px;
    }
}

.content .content-benner .logo-canvas {
    display: inline-block;
    margin: 0 auto;
    width: 100px;
    background: #fff;
    border-radius: 25px;
}

.content .content-benner .logo-canvas img {
    width: 100%;
}

.content .content-benner .name {
    display: inline-block;
    padding: 0 0 0 20px;
    text-align: left;
    vertical-align: top;
}

.content .content-benner .name h1 {
    font-size: 50px;
    font-weight: 900;
    line-height: 70px;
    transition: .5s all;
}

.content .content-benner .name p {
    padding: 0 0 0 10px;    
    font-size: 20px;
    font-weight: 900;
    line-height: 20px;
    transition: .5s all;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .logo-canvas {
        display: block;
        margin: 10vw auto;
        width: 25vw;
        border-radius: 15px;
    }

    .content .content-benner .name {
        display: block;
        padding: 10px;
        text-align: center;
    }

    .content .content-benner .name h1 {
        font-size: 10vw;
        line-height: 10vw;
    }
    
    .content .content-benner .name p {
        padding: 10px 0 0 0;
        font-size: 4vw;
        line-height: 4vw;
    }
}

.content .content-benner .info {
    position: relative;
    display: flex;
    align-items: flex-start;
    margin: 50px auto;
    max-width: 1600px;
    text-align: left;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info {
        display: block;
    }
}

.content .content-benner .info .title {
    width: 50%;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .title {
        padding: 10px 10px 30px 0;
        box-sizing: border-box;
        width: 100%;
    }
}

.content .content-benner .info .title > div ~ div {
    padding: 30px 0 0 0;
}

.content .content-benner .info .title div h1 {
    font-size: 30px;
    font-weight: 900;
    transition: .5 all;
}

.content .content-benner .info .title div p {
    font-size: 15px;
    font-weight: 400;
    transition: .5 all;
}

.content .content-benner .info .title div span.new {
    padding: 0 0 0 19px;
    background: url(../images/gc/refresh-fill.svg) no-repeat left 3px top 5px;
    background-size: 13px;
}

.content .content-benner .info .title div span.normal {
    padding: 0 0 0 19px;
    background: url(../images/gc/information-fill.svg) no-repeat left 3px top 5px;
    background-size: 13px;
}

.content .content-benner .info .title div span.test {
    padding: 0 0 0 19px;
    background: url(../images/gc/checkbox-fill.svg) no-repeat left 3px top 5px;
    background-size: 13px;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .title div h1 {
        font-size: 7vw;
    }
    
    .content .content-benner .info .title div p {
        font-size: 4vw;
    }
}

.content .content-benner .info .title .os img {
    width: 100px;
}

.content .content-benner .info .title .os img ~ img {
    padding: 0 20px;
    width: 100px;
}

.content .content-benner .info .title .pwa p {
    display: inline-block;
    font-size: 15px;
    line-height: 18px;
    vertical-align: top;
}

.content .content-benner .info .title .pwa img {
    padding: 0 0 0 10px;
    display: inline-block;
    width: 50px;
}

.content .content-benner .info .title .support a {
    display: inline-block;
    margin: 10px 0 0 0;
    background: #fff;
    border-radius: 30px;
    font-size: 0;
}


.content .content-benner .info .title .support p {
    display: inline-block;
    padding: 5px 0 5px 8px;
    box-sizing: border-box;
    font-size: 15px;
    line-height: 20px;
    vertical-align: top;
}

.content .content-benner .info .title .support img {
    padding: 0 0 0 5px;
    display: inline-block;
    border-radius: 0 30px 30px 0;
    width: 30px;
}

.content .content-benner .info .shortcut {
    position: relative;
    width: 50%;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .shortcut {
        width: 100%;
    }
}

.content .content-benner .info .shortcut button {
    position: absolute;
    top: 50%;
    padding: 15px;
    background: #fff;
    border: none;
    border-radius: 50%;
    font-size: 0;
    box-shadow: 0px 1px 2px 0px #adadad;
    cursor: pointer;
    z-index: 1;
}

.content .content-benner .info .shortcut button:nth-child(1) {
    left: 0;
    transform: translateX(-50%) translateY(-50%);
}

.content .content-benner .info .shortcut button:nth-child(2) {
    right: 0;
    transform: translateX(50%) translateY(-50%);
}

.content .content-benner .info .shortcut button img {
    width: 30px;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .shortcut button {
        display: none;
    }
}

.content .content-benner .info .shortcut ul {
    overflow-x: scroll;
    scroll-snap-type: x mandatory;
    white-space: nowrap;
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
    font-size: 0;
    scroll-behavior: smooth;
}


.content .content-benner .info .shortcut ul::-webkit-scrollbar{
    display: none; /* Chrome, Safari, Opera*/
}

.content .content-benner .info .shortcut ul li{
    overflow: hidden;
    scroll-snap-align: start;
    display: inline-block;
    width: 250px;
    border-radius: 10px;
    transition: .5s all;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .shortcut ul li{
        width: 35vw;
    }
}

.content .content-benner .info .shortcut ul li ~ li{
    margin: 0 0 0 10px;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .shortcut ul li ~ li{
        margin: 0 0 0 5px;
    }
}

.content .content-benner .info .shortcut ul li.youtube {
    overflow: visible;
    vertical-align: top;
    padding: 0;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .shortcut ul li.youtube {
        width: 80vw;
    }
}

.content .content-benner .info .shortcut ul li.youtube div {
    position:relative;
    padding-bottom: 222%;
    height: 0;
    overflow: hidden;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .shortcut ul li.youtube div {
        padding-top: calc(100% / 16 * 15.5);
        padding-bottom: 0;
    }
}

.content .content-benner .info .shortcut ul li.youtube div iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 10px;
}

.content .content-benner .info .shortcut ul li img {
    width: 100%;
}

.content .content-benner .info .start {
    position: absolute;
    bottom: 0;
    right: 0;
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
}

.content .content-benner .info .start::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera*/
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .start {
        position: static;
        padding: 5px 0;
        text-align: right;
        white-space: nowrap;
    }
}

.content .content-benner .info .start a {
    display: inline-block;
    padding: 10px 30px;
    margin: 0 5px;
    box-sizing: border-box;
    background: #5096F2;
    border-radius: 50px;
    color: #fff;
    text-align: center;
    font-size: 30px;
    font-weight: 100;
    line-height: 30px;
    transition: .5s all;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .start a {
        display: block;
        padding: 10px 30px;
        margin: 10px 2.5px;
        border-radius: 5vw;
        font-size: 3vw;
        font-weight: 400;
        line-height: 5vw;
    }
}

.content .content-benner .info .start a label {
    cursor: pointer;
}

.content .content-benner .info .start a:hover {
    box-shadow: 0px 0px 20px 1px #5096F2;
}

@media screen and (max-width: 1200px) {
    .content .content-benner .info .start a:hover {
        box-shadow: none;
    }
}

.content-1 {
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
}

.content-1 .content-1-benner {
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    height: 10vw;
}

.content-1 .content-1-text {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    -webkit-text-stroke: 1px #5096F2;
    font-size: 5vw;
    font-weight: 900;
    line-height: 5vw;
    transform: translateX(-50%) translateY(-50%);
    cursor: default;
}

.content-1 .content-1-subtext {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #5096F2;
    font-size: 3vw;
    font-weight: 900;
    transform: translateX(-50%) translateY(-50%);
}

@media screen and (max-width: 1200px) {
    .content-1 .content-1-benner {
        height: 30vw;
    }

    .content-1 .content-1-text {
        -webkit-text-stroke: .5px #5096F2;
        font-size: 10vw;
        line-height: 10vw;
    }
    
    .content-1 .content-1-subtext {
        font-size: 10vw;
    }
}

.content-1 .content-1-bottom-button {

}

.content-1 .content-1-button {

}

.content-2 {
    padding: 50px;
    box-sizing: border-box;
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
    font-size: 0;
    background: #F2F2F2;
}

.content-2 h1 {
    padding: 10px;
    color: #5096F2;
    font-size: 50px;
    font-weight: 800;
    box-sizing: border-box;
    transition: .5s all;
}

.content-2 p {
    padding: 10px 0 0 0;
    color: #000;
    font-size: 30px;
    font-weight: 300;
    transition: .5s all;
}

.content-2 span {
    color: #5096F2;
}

@media screen and (max-width: 1200px) {
    .content-2 {
        padding: 10px;
    }

    .content-2 h1 {
        padding: 0;
        font-size: 5vw;
    }

    .content-2 p {
        padding: 5px 0 0 0;
        font-size: 3.5vw;
    }
}


.content-3 {
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
    font-size: 0;
    background: #F2F2F2;
}

.content-3 .content-1-manual {
    background: #fff;
}

.content-3 .content-1-manual input {
    position: absolute;
    left: -5000px;
}

.content-3 .content-1-manual label {
    display: inline-block;
    padding: 30px;
    box-sizing: border-box;
    width: 50%;
    font-size: 50px;
    font-weight: 600;
    -webkit-text-stroke: 1px #5096F2;
    color: #fff;
    cursor: pointer;
}

.content-3 .content-1-manual input.install:checked + label {
    color: #5096F2;
    background: #F2F2F2;
    border-radius: 0 25px 0 0;
}

.content-3 .content-1-manual input.use:checked + label {
    color: #5096F2;
    background: #F2F2F2;
    border-radius: 25px 0 0 0;
}

.content-3 .content-1-manual input.install:checked ~ div div.install {
    display: block;
}

.content-3 .content-1-manual input.use:checked ~ div div.use {
    display: block;
}

.content-3 .content-1-manual div {
    width: 100%;
    background: #F2F2F2;
}

.content-3 .content-1-manual div > div{
    display: none;
}

.content-3 .content-1-manual div div ul {
    padding: 50px 10px;
    margin: 0 auto;
    max-width: 1200px;
}

.content-3 .content-1-manual div div ul li {
    display: flex;
    flex-direction: row-reverse;
    margin: 50px 0;
}

.content-3 .content-1-manual div div ul li div {
    width: 50%;
}


.content-3 .content-1-manual div div ul li .title {
    padding: 20px;
    box-sizing: border-box;
    text-align: left;
}

.content-3 .content-1-manual div div ul li .title h1 {
    font-size: 30px;
    font-weight: 900;
    transition: .5s all;
}

.content-3 .content-1-manual div div ul li .title h2 {
    font-size: 20px;
    font-weight: 900;
    line-height: 15px;
    transition: .5s all;
}

.content-3 .content-1-manual div div ul li .title b {
    padding: 20px 0 0 0;
    font-size: 20px;
    transition: .5s all;
}

.content-3 .content-1-manual div div ul li .title p {
    padding: 20px 0 0 0;
    font-size: 20px;
    font-weight: 300;
    transition: .5s all;
}

.content-3 .content-1-manual div div ul li .title a.button {
    display: block;
    margin: 10px;
    padding: 5px;
    box-sizing: border-box;
    background: #fff;
    border-radius: 20px;
    border: 1px solid #5096F2;
    text-align: center;
    font-size: 20px;
    line-height: 20px;
    transition: .5s all;
}

.content-3 .content-1-manual div div ul li .title a.button:hover {
    background: #F2F2F2;

}

.content-3 .content-1-manual div div ul li .title img.qr {
    padding: 10px;
    width: 10%;
    min-width: 100px;
}

.content-3 .content-1-manual div div ul li .img {
    margin: 0 auto;
    width: 300px;
    font-size: 0;
}

.content-3 .content-1-manual div div ul li .img img {
    width: 100%;
    border-radius: 10px;
}

.content-3 .content-1-manual div div ul li .img video {
    width: 101%;
    border-radius: 10px;
}

@media screen and (max-width: 1200px) {
    .content-3 .content-1-manual label {
        padding: 0;
        font-size: 8vw;
        -webkit-text-stroke: .5px #5096F2;
    }

    .content-3 .content-1-manual div div ul li {
        display: block;
        margin: 0 auto;
        width: 100%;
    }

    .content-3 .content-1-manual div div ul li ~ li{
        margin: 50px 0 0 0;
    }

    .content-3 .content-1-manual div div ul li .title {
        padding: 5vw 0;
        width: 100%;
        text-align: center;
    }

    .content-3 .content-1-manual div div ul li .title h1 {
        font-size: 8vw;
    }

    .content-3 .content-1-manual div div ul li .title p {
        font-size: 3.5vw;
    }
    
    .content-3 .content-1-manual div div ul li .title a.button {
        margin: 20px auto 0;
        width: 80%;
        font-size: 5vw;
        line-height: 7vw;
        border-radius: 7vw;
    }

    .content-3 .content-1-manual div div ul li .title img.qr {
        padding: 20px 0 0 0;
        width: 30%;
    }

    .content-3 .content-1-manual div div ul li .img {
        width: 70%;
    }
}


.content-4 {
    padding: 50px;
    box-sizing: border-box;
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
    font-size: 0;
    background: #F2F2F2;
}

.content-4 h1 {
    padding: 10px;
    color: #5096F2;
    font-size: 50px;
    font-weight: 800;
    box-sizing: border-box;
}

.content-4 p {
    padding: 10px 0 0 0;
    color: #000;
    font-size: 30px;
    font-weight: 300;
}

.content-4 span {
    color: #5096F2;
}

.content-4 a {
    display: inline-block;
    margin: 50px 0 0 0;
    padding: 10px 50px;
    box-sizing: border-box;
    background: #edd600;
    border-radius: 50px;
    text-align: center;
    font-size: 50px;
    font-weight: 100;
    line-height: 50px;
}

@media screen and (max-width: 1200px) {
    .content-4 {
        padding: 10px;
    }

    .content-4 h1 {
        padding: 0;
        font-size: 30px;
    }
    
    .content-4 p {
        font-size: 20px;
    }

    .content-4 a {
        margin: 30px 0;
        padding: 10px 30px;
        font-size: 25px;
        line-height: 25px;
    }
}