/*=================================================
			simulation 공통
=================================================*/
.sim-wrap {
    padding: 6.25rem 0;
}

/*****#####===== 타이틀 =====#####*****/
.sim-wrap .sim-title-wrap{
    text-align: center;
}

/*****#####===== 버튼 =====#####*****/
.sim-wrap .sim-btn-wrap .btn{
    padding: 0.844rem 0.5rem;

    font-weight: 600;
}

.sim-btn-wrap .sim-expire-btn{
    margin-bottom: 0.5rem;

    font-weight: 600;
    text-align: center;
}

/*****#####===== 라디오 버튼 =====#####*****/
.pretty input:checked~.state.p-danger-o label:before,
.pretty.p-toggle .state.p-danger-o label:before{
    border-color: #269A99;
}

.pretty.p-default:not(.p-fill) input:checked~.state.p-danger-o label:after{
    background-color: #269A99!important;
}

.pretty.p-default.p-thick .state label:after {
    -webkit-transform: scale(.5)!important;
    -ms-transform: scale(.5)!important;
    transform: scale(.5)!important;
}

.pretty.p-default.p-thick .state label:after,
.pretty.p-default.p-thick .state label:before {
    border-width: calc(1em / 8);
}

/*****#####===== 체크박스 =====#####*****/
.pretty.p-svg input:checked~.state label:before {
    border-color:#269A99;
}

/*=================================================
			simulation/theme - 테마선택
=================================================*/
/*****#####===== 타이틀 =====#####*****/
.sim-theme-wrap .sim-title-wrap{
    margin-bottom:3.75rem;
}

.sim-theme-wrap .sim-title{
    margin-bottom:1rem;
}

/*****#####===== 테마선택 =====#####*****/
.sim-theme-wrap .sim-theme-body{
    padding: 0;
}

/*****##### 이미지 #####*****/
.sim-theme-wrap .item-img svg{
    width:6.25rem;
    height:6.25rem;
}

.sim-theme-wrap .item-img svg path,
.sim-theme-wrap .item-img svg circle,
.sim-theme-wrap .item-img svg rect{
    fill:#999999;
}

/*****##### 버튼 #####*****/
.sim-theme-wrap .item-btn-wrap{
    margin-top: 1.25rem;

    cursor: pointer;
}

.fancy-oscar-template {
    padding: 0 2rem;
}

/*=================================================
			simulation/main - 메인
=================================================*/
.sim-main-wrap .sim-main-box {
    border: 1px solid #cccccc;
}

/*****#####===== 타이틀 =====#####*****/
.sim-main-wrap .sim-title-wrap{
    padding: 1.875rem 0.5rem;

    color:#ffffff;

    background-color:#269A99;
}

/*****#####===== 메인 =====#####*****/
.sim-main-wrap .sim-main-body{
    padding: 3.125rem 1.5rem 1.5rem;

    text-align: center;
}

.sim-main-wrap .sim-main-body .btn-wrap{
    text-align: right;
}

.sim-main-wrap .sim-main-body .btn-wrap .btn{
    padding:0.5rem 2rem;
}

/*****#####===== 버튼 =====#####*****/
.sim-main-wrap .sim-btn-wrap{
    margin-top:1.875rem;
}

/*=================================================
        simulation/group_info - 조직 정보 입력
=================================================*/
.sim-group-wrap .form-item-title{
    margin-bottom: 0.625rem;
}

/*****#####===== 폼 =====#####*****/
.sim-group-wrap .form-item-wrap:not(:last-child){
    margin-bottom: 2.5rem;
}

/*****##### 그룹 #####*****/
.sim-group-wrap .form-group{
    margin-top: -1px;
    margin-bottom: 0;
}

/*****##### 타이틀 #####*****/
.sim-group-wrap .form-title{
    width:10.38rem;
    height: 100%;

    text-align: center;
    line-height: 3.438rem;
    font-weight: 600;

    background-color:#eeeeee;
}

/*****##### 타이틀, 내용 #####*****/
.sim-group-wrap .form-title,
.sim-group-wrap .form-content{
    margin-right:-1px;

    border:1px solid #cccccc;
}

/*****##### 폼 #####*****/
.sim-group-wrap .form-control{
    height: 3.438rem;

    background-color:#fcfcfc;
    border:none;

    color: #333333;
}

.sim-group-wrap .form-control::placeholder{
    font-size:0.875rem;
}

/*****##### 내용 #####*****/
.sim-group-wrap .form-content{
    padding:0 1.875rem;

    background-color:#fcfcfc;
}

/*****##### 라디오 버튼 #####*****/
.sim-group-wrap .pretty .state label:after,
.sim-group-wrap .pretty .state label:before,
.sim-group-wrap .pretty.p-svg .state .svg {
    top: calc((0% - (100% - 1em)) - 7%);

    width: calc(1em + 2px);
    height: calc(1em + 2px);
}

.sim-group-wrap .pretty .state label {
    text-indent: 1.5em;
}

.sim-group-wrap .pretty:not(:last-child){
    margin-right: 1.875rem;
}

/*****##### 버튼 #####*****/
.sim-group-wrap .sim-btn-wrap{
    margin-top: 3.125rem;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** ~ md *****/
@media (max-width: 991.98px){
    .sim-group-wrap .form-content{
        padding: 0 1rem;
    }
}

/***** xs / sm *****/
@media (min-width: 100px) and (max-width: 767.98px){
    .sim-group-wrap .form-title {
        width: 7rem;
    }
}

/*=================================================
        simulation/simulation - 시뮬레이션
=================================================*/
.sim-simul{
    padding:3.75rem 0 1.25rem 0;
}

/*****#####===== 네비게이션 =====#####*****/
.sim-nav {
    text-align: center;

    background-color: #fcfcfc;
    border: 1px solid #cccccc;
}

.sim-nav .sim-nav-wrap{
    background-color: #ffffff;
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
}

.sim-nav .sim-nav-title{
    padding:0.75rem 0.5rem;
    
    font-weight: 600;
    color: #074645;

    background-color:#D0E3E3;
}

.sim-nav .sim-nav-item{
    position: relative;

    padding: 0.8rem 0;

    font-weight: 500;
    color: #999999;
}

.sim-nav .sim-nav-item:not(:last-child):after{
    content:'';
    position: absolute;
    
    width:0.75rem;
    height: 0.625rem;

    background: url('/front/data/img/simulation/down-arrow.svg') no-repeat center;
}

/*****##### active #####*****/
.sim-nav .sim-nav-item.active{
    color: #269A99;
}

/*****#####===== 폼 =====#####*****/
.sim-simul-wrap .form-wrap{
    padding-top:1px;

    border:1px solid #cccccc;
}

.sim-simul-wrap .form-group{
    margin-top:-1px;
    margin-bottom:0;
    padding: 1.875rem 4.375rem;

    border: 1px solid transparent;

    transition: all cubic-bezier(0.39, 0.575, 0.565, 1);
}

.sim-simul-wrap .form-group:not(:last-child){
    border-bottom:1px solid #cccccc;
}

.sim-simul-wrap .form-title{
    margin-bottom:1.5rem;

    font-weight: 600;
}

.sim-simul-wrap .form-control{
    position: relative;

    padding: 0;
    height: auto;

    background: transparent;
    border:none;
}

.sim-simul-wrap .form-textarea-content .form-control{
    padding: 0.375rem 1rem;
    border:1px solid #cccccc;
}

.sim-simul-wrap .form-content{
    position: relative;
}

.sim-simul-wrap .form-content .each-col{
    position: relative;

    text-align: center;
}

.sim-simul-wrap .form-content .each-col:after{
    content: '';
    position: absolute;
    top: 24%;
    
    height: 1px;
    left: 50%;
    
    width: 100%;
    
    background-color: #999999;

    transform: translateX(-50%);
}

.sim-simul-wrap .form-content .each-col:first-child:after{
    left: 50%;
    
    transform: translateX(0);
}

.sim-simul-wrap .form-content .each-col:last-child:after{
    right: 50%;
    left:initial;
    
    transform: translateX(0);
}

/*****##### 라디오 버튼 #####*****/
.sim-simul-wrap .pretty{
    padding-top:2rem;
    margin-right: 0;
}

.sim-simul-wrap .pretty .state label:after,
.sim-simul-wrap .pretty .state label:before,
.sim-simul-wrap .pretty.p-svg .state .svg {
    top: 0;
    left: 50%;

    width: 1.5rem;
    height: 1.5rem;

    z-index: 2;

    transform: translateX(-50%);
}

.sim-simul-wrap .pretty.p-default.p-thick .state label:after{
    -webkit-transform: translateX(-50%) scale(.7)!important;
    -ms-transform: translateX(-50%) scale(.7)!important;
    transform: translateX(-50%) scale(.7)!important;
}

.sim-simul-wrap .pretty .state label:before{
    background-color: #ffffff;
}

.sim-simul-wrap .pretty .state label {
    text-indent: 0;
}

/*****##### active #####*****/
.sim-simul-wrap .form-group.active{
    position: relative;

    background-color:#fbfbfb;
    border:1px solid #269A99;

    z-index: 2;
}

/*****#####===== 버튼 =====#####*****/
.sim-simul-wrap .sim-btn-wrap{
    margin: 1.875rem 0 3.125rem 0;
}

/*****#####===== 서브텍스트 =====#####*****/
.sim-simul-wrap .sim-subtext {
    text-align: center;
    line-height: 2em;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** md ~ *****/
@media (min-width: 768px){
    /***** 네비 *****/
    .sim-nav {
        margin-right: -1px;
        min-height: 43.2rem;
    }

    .sim-nav .sim-nav-item:not(:last-child):after{
        left: 50%;
        bottom: -0.25rem;
    
        transform: translateX(-50%);
    }
    
    /***** 폼 *****/
    .sim-simul-wrap .form-wrap{
        height: 43.2rem;

        overflow-y: scroll;
    }
    
    /* .sim-simul-wrap .form-group{
        height: 14.445rem;
    } */
}

/***** md *****/
@media (min-width: 768px) and (max-width: 991.98px){
    /***** 폼 *****/
    .sim-simul-wrap .form-group {
        padding: 1.875rem 2.5rem;
    }
}

/***** xs / sm *****/
@media (min-width: 100px) and (max-width: 767.98px){
    /***** 네비 *****/
    .sim-nav {
        margin-bottom: -2px;
    }

    .sim-nav .sim-nav-item {
        padding: 1.2rem 1rem;
    }

    .sim-nav .sim-nav-wrap{
        display: flex;
        white-space: nowrap;

        overflow-x: scroll;
    }

    .sim-nav .sim-nav-item:not(:last-child):after{
        top: 50%;
        right: -0.3rem;
    
        transform: translateY(-50%) rotate(270deg);
    }
    
    /***** 폼 *****/
    .sim-simul-wrap .form-group {
        padding: 2rem 1.5rem;
    }
}

/*=================================================
        simulation/result - 검사결과
=================================================*/
/*****#####===== 네비게이션 =====#####*****/
.sim-result-wrap .sim-nav .sim-nav-item{
    display: flex;
    align-items: center;
    justify-content:center;
}

.sim-result-wrap .sim-nav .sim-nav-item:not(:last-child){
    border-bottom: 1px solid #cccccc;
}

.sim-result-wrap .sim-nav .sim-nav-item:after{
    display: none;
}

.sim-result-wrap .sim-nav .sim-nav-item svg{
    margin-right:0.5rem;
    width: 1.6rem;
    height: 1.6rem;
}

.sim-result-wrap .sim-nav .sim-nav-item svg path,
.sim-result-wrap .sim-nav .sim-nav-item svg line{
    fill:#999999;
}

.sim-result-wrap .sim-nav .sim-nav-item svg rect,
.sim-result-wrap .sim-nav .sim-nav-item svg line{
    stroke: #999999;
}

/*****##### active #####*****/
.sim-result-wrap .sim-nav .sim-nav-item.active{
    color:#ffffff;
    
    background-color:#269A99;
}

.sim-result-wrap .sim-nav .sim-nav-item.active svg path,
.sim-result-wrap .sim-nav .sim-nav-item.active svg line{
    fill:#ffffff;
}

.sim-result-wrap .sim-nav .sim-nav-item:nth-child(5).active svg path{
    stroke: #ffffff;
}

.sim-result-wrap .sim-nav .sim-nav-item.active svg rect,
.sim-result-wrap .sim-nav .sim-nav-item.active svg line{
    stroke: #ffffff;
}

/*****#####===== 오른쪽 =====#####*****/
.result-right-wrap{
    position: relative;

    border:1px solid #cccccc;
}

/*****##### 오른쪽 상단, 하단 설명 공통 #####*****/
.sim-result-wrap .top-title,
.result-explain-wrap .explain-title {
    display: flex;
    align-items: center;
    justify-content: center;

    height: 100%;

    text-align: center;
    font-weight: 600;

    background-color: #eeeeee;
    border-right:1px solid #cccccc;
}

.sim-result-wrap .top-content,
.result-explain-wrap .explain-content{
    background-color:#fcfcfc;
}

/*****##### 오른쪽 상단 #####*****/
.sim-result-wrap .top-item{
    border-bottom:1px solid #cccccc;
}

.sim-result-wrap .top-content{
    padding: 0 0.5rem;
}

.sim-result-wrap .top-content .form-control{
    height: 3.438rem;

    border: none;
    background: transparent;
}

.sim-result-wrap .form-select-wrap{
    padding: 0;
}

/*****##### 그래프 #####*****/
.result-graph-wrap{
    padding:1.875rem;
}

.result-graph-wrap .graph-wrap{
    min-height: 15rem;
}

/*****##### 히트맵 #####*****/
/* .result-graph-wrap .each-hitmap{
    border: 1px solid #cccccc;
} */

.result-graph-wrap .each-chart:not(:first-child){
    margin-top: 1.5rem;
}

.result-graph-wrap .chart-title{
    margin-bottom:0.2rem;
    
    font-weight: 600;
}

.result-graph-wrap .hitmap-item.hitmap_1{
    background-color: #DFECEC;
}

.result-graph-wrap .hitmap-item.hitmap_2{
    background-color: #ACE1E1;
}

.result-graph-wrap .hitmap-item.hitmap_3{
    background-color: #78d1d1;
}

.result-graph-wrap .hitmap-item.hitmap_4{
    background-color: #42AEAD;
}

.result-graph-wrap .hitmap-item.hitmap_5{
    background-color: #207776;
}

.result-graph-wrap .hitmap-wrap .hitmap-item{
    position: relative;

    width: 100%;
    height: 60px;

    border: 1px solid #ffffff;
}

.result-graph-wrap .hitmap-wrap .hitmap-item .hitmap-item-info{
    display: none;
    position: absolute;
    top: 0;
    right: -230%;
    width: 10rem;
    padding: 0.2rem 0.3rem;
    z-index: 10;
    background: rgba(0,0,0,0.8);
    color: #ffffff;
    border-radius: 5px;
}

.result-graph-wrap .hitmap-wrap .hitmap-item:hover .hitmap-item-info{
    display: block;
}

/***** 체크박스 *****/
.result-graph-wrap .graph-sort{
    text-align: right;
}

.result-graph-wrap .pretty .state label:after,
.result-graph-wrap .pretty .state label:before,
.result-graph-wrap .pretty.p-svg .state .svg {
    top: calc((0% - (100% - 1em)) - 8%);

    width: 1rem;
    height: 1rem;
}

.result-graph-wrap .graph-sort .pretty:last-child {
    margin-right: 0;
}

/*****##### 하단 설명 #####*****/
.result-explain-wrap .each-row{
    border-top: 1px solid #cccccc;
}

.result-explain-wrap .explain-content,
.result-explain-wrap .inferiority-content{
    padding: 0.625rem 1.875rem;
}

/*****##### 버튼 #####*****/
.sim-result-wrap .sim-btn-wrap{
    margin-top: 1.875rem;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** xl ~ *****/
@media (min-width: 1200px){
    .sim-result-wrap .sim-nav {
        height: calc(100% - 5rem);
    }
}

/***** lg *****/
@media (min-width: 992px) and (max-width: 1199.98px){
    .sim-result-wrap .sim-nav {
        height: calc(100% - 5.05rem);
    }
}

/***** md ~ *****/
@media (min-width: 768px){
    .sim-result-wrap .sim-nav {
        min-height: auto;
    }
}

/***** md *****/
@media (min-width: 768px) and (max-width: 991.98px){
    .sim-result-wrap .sim-nav {
        height: calc(100% - 5.05rem);
    }
}

/***** xs / sm *****/
@media (min-width: 100px) and (max-width: 767.98px){
    .result-right-wrap {
        margin-top: -1px;
    }

    .sim-result-wrap .top-title{
        padding: 0.5rem;

        border-right: none;
        border-bottom : 1px solid #cccccc;
    }
}

/*=================================================
        simulation/contact - 진단문의
=================================================*/
/*****#####===== 타이틀 =====#####*****/
.sim-contact-wrap .sim-title-wrap{
    padding:1.25rem 0.5rem;

    color:#ffffff;

    background-color:#269A99;
}

/*****#####===== 폼 =====#####*****/
.sim-contact-wrap .form-textarea-content{
    padding: 0.5rem 1.875rem;
}

.sim-contact-wrap .form-control.form-textarea{
    height: auto;
}

/*****#####===== 동의 =====#####*****/
.sim-contact-wrap .terms-wrap{
    margin-top:0.5rem;
}

.sim-contact-wrap .terms-wrap .terms-item:not(:last-child){
    margin-bottom:0.5rem;
}

.sim-contact-wrap .terms-wrap .pretty .state label{
    font-weight: 500;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** ~ md *****/
@media (max-width: 991.98px){
    .sim-contact-wrap .form-textarea-content {
        padding: 0.5rem 1rem;
    }
}

/*=================================================
			user / login
=================================================*/
.custom-fancy-login .fancybox-content{
    max-width: 38rem;
}

.user-login-wrap{
    padding: 4rem 3rem;

    background-color: #f7f7f7;
}

/*****#####===== 로고 =====#####*****/
.user-login-wrap .logo-wrap{
    width: 17rem;
    margin: auto;
    margin-bottom:3rem;
}

/*****#####===== 로그인 박스 =====#####*****/
.user-login-wrap .login-box {
    margin: auto;
    padding: 2rem;

    background-color: #ffffff;

    border: none;
    border-radius: 0;
}

.user-login-wrap .login-box label {
    margin-bottom: 0.5rem;

    font-weight: 700;
}

.user-login-wrap .login-box .form-group {
    margin-bottom: 1.25rem;
}

.user-login-wrap .login-box .form-control{
    padding: 0.375rem 0;

    border: none;
    border-bottom:1px solid #cccccc;
}

/*****#####===== 하단 =====#####*****/
.user-login-wrap .login-bottom-wrap{
    margin: 2.5rem 0 0 0;

    text-align: center;
}

.user-login-wrap .login-bottom-wrap .btn{
    margin: 0.5rem 0 1.25rem 0;
}

#simulation-join-page .login-bottom-wrap {
    margin: 1.5rem 0 0 0;
}

/*****#####===== 버튼 =====#####*****/
.user-login-wrap .btn{
    font-weight: 500;
}


@media print{
    html, body{width:100%; height:auto; overflow: visible;}

    #print-area{
        width: 100%;
    }

    .container{
        max-width: 100% !important;
    }

    .col-md-3 {
        -ms-flex: 0 0 20% !important;
        flex: 0 0 20% !important;
        max-width: 20% !important;
    }

    .col-md-9 {
        -ms-flex: 0 0 75% !important;
        flex: 0 0 75% !important;
        max-width: 75% !important;
    }

    #gnb-wrap,.footer-wrap{
        display: none;
    }

    #print-area{
        position: absolute;
        height:100%;
        overflow: visible;
    }

    canvas{
        width: 100% !important;
    }

    .each-chart{
        width: 700px !important;
    }

    .chartjs-size-monitor{
        width: 100% !important;
    }

    #codeigniter_profiler{
        display: none;
    }

    .sim-btn-wrap{
        display: none;
    }

    .sim-result-wrap .sim-nav .sim-nav-item.active{
        color: #ffffff;
        background-color: #269A99;
    }
}

/*=================================================
			메인 팝업
=================================================*/
/*****#####===== 공통 =====#####*****/
.pop-wrap .pop-item-wrap{
    position: fixed;

    text-align:center;

    opacity: 0;

    z-index: 1040;
    visibility: hidden;

    transition: opacity 0.4s, visibility 0.4s;
}

.pop-wrap .pop-close-btn{
    position: absolute;
    top: 0;
    right: 0;

    padding: 1rem;
}

.pop-item-wrap.show{
    opacity: 1;
    visibility: visible;
}

.pop-wrap .pop-img {
    display: none;
}

/*****#####===== browser =====#####*****/
.pop-wrap .pop-item-wrap[data-type="browser"]{
    top: 50%;
    left: 50%;

    max-width: 27.38rem;
    width: 20rem;
    padding: 1.563rem 1rem 0.563rem;

    background-color:#FFFFFF;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);

    transform: translate(-50%, -50%);
}

.pop-wrap .pop-item-wrap[data-type="browser"] .title-subtitle{
    margin: 0.625rem 0 1.5rem;
}

.pop-wrap .pop-item-wrap[data-type="browser"] .pop-content-item{
    height: 8.5rem;
    margin-bottom: 6px;

    background-color:#F3F3F3;
    border-radius:0.625rem;
}

.pop-wrap .pop-item-wrap[data-type="browser"] .content-item-img{
    width: 3.375rem;
    margin: auto;
}

.pop-wrap .pop-item-wrap[data-type="browser"] .content-item-title{
    margin-top: 0.625rem;

    font-size: 0.875rem;
    font-weight: 500;
}

/*****##### 미디어 쿼리 #####*****/
/***** xs / sm / md *****/
@media (min-width: 100px) and (max-width: 991.98px){
    .pop-wrap .pop-item-wrap .pop-close-btn svg{
        width: 1.5rem;
        height: 1.5rem;
    }
}
