/* company_01 */
#company_01 {
    background: url(../img/com1_bg.png) right 80% no-repeat;
}
#company_01 .logoInfo {
    position: relative;
}
#company_01 .logoWrp {
    background: url(../img/checkPt.png) center center;
    border: 1px solid #eee;
    background-size: 14px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 5.5%;
}
#company_01 .logoWrp > div {
    padding: 20px;
}
@media (max-width:992px){
    #company_01 {
        background-size: 100%;
        overflow: hidden;
    }
}
/* spinItem */
.spinItem {
    position: relative;
}
.spinItem .spin {
    position: absolute;
    left: 0;
    top: 0;
    transform: translate3d(-50%, -50%, 0);
    width: 270px;
    height: 270px;
    border: 1px dashed #ddd;
    border-radius: 50%;
}
.spinItem .spin .spinInner {
    content: "";
    position: absolute;
    left: 0;
    top: calc(50% - 4px);
    width: 100%;
    height: 9px;

    -webkit-animation: rotateImg 15s linear infinite;
    -moz-animation: rotateImg 15s linear infinite;
    -ms-animation: rotateImg 15s linear infinite;
    -o-animation: rotateImg 15s linear infinite;
    animation: rotateImg 15s linear infinite;
}
.spinItem .spin .spinInner:after {
    content: "";
    display: inline-block;
    position: relative;
    transform: translate3d(-50%, 0, 0);
    width: 9px;
    height: 9px;
    background-color: #53b9df;
    border-radius: 50%;
}
@keyframes rotateImg {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
@media (max-width:992px){
    .spinItem .spin {
        width: 170px;
        height: 170px;
    }
}
@media (max-width:767px){
    .spinItem .spin {
        width: 90px;
        height: 90px;
    }
    .spinItem .spin .spinInner {
        content: "";
        position: absolute;
        left: 0;
        top: calc(50% - 2px);
        width: 100%;
        height: 5px;
    
        -webkit-animation: rotateImg 15s linear infinite;
        -moz-animation: rotateImg 15s linear infinite;
        -ms-animation: rotateImg 15s linear infinite;
        -o-animation: rotateImg 15s linear infinite;
        animation: rotateImg 15s linear infinite;
    }
    .spinItem .spin .spinInner:after {
        width: 5px;
        height: 5px;
    }
}
/* company_02 */
#company_02 .sec1 .imgWrp {
    position: relative;
}
#company_02 .sec1 .imgWrp .logoScr {
    position: absolute;
    right: 0;
    top: 0;
}
#company_02 .sec1 .imgWrp .logoScr.logoScr1 {
    z-index: -1;
}
#company_02 .sec1 .imgWrp .logoScr.logoScr2 {
    z-index: 1;
}
#company_02 .sec1 .imgWrp .img {
    position: unset;
    background: url(../img/com2_img.jpg) center center no-repeat;
    background-size: cover;
    height: 800px;
    overflow: hidden;
    width: 100%;
}
@media (max-width:768px){
    #company_02 .sec1 .imgWrp .img {
        height: 500px;
    }
}

/* txtSetList */
@media (min-width:1400px){
    #txtSetList {
        background: url(../img/logoSym.png) 20% center no-repeat;
        background-attachment: fixed;
    }
}
@media (min-width:768px){
    #txtScrWrp {
        position: relative;
    }
    #txtScrWrp .pin-wrapper {
        height: auto !important;
    }
    #txtScrWrp #txtSetList .img {
        display: none;
    }
    #txtScrWrp .img {
        padding: 80px 0;
    }
	
    #txtScrWrp .img img {
        max-width:600px;
    }
    #txtSetList {
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100% !important;
        padding: 25% 0;
    }
    #txtSetList::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100px;
        background: linear-gradient(to bottom, #fff, transparent);
    }
    #txtSetList::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100px;
        background: linear-gradient(to top, #fff, transparent);
    }
    #txtSetList .txtSet {
        opacity: 0;
        position: sticky;
        top: 50%;
        transform: translateY(-50%);
    
        -webkit-transition: all 0.2s ease-out;
        -moz-transition: all 0.2s ease-out;
        -o-transition: all 0.2s ease-out;
        transition: all 0.2s ease-out;
    }
    #txtSetList .txtSet.active {
        opacity: 1;
    }
    #txtSetList .txtSet .txt {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
    }
}
@media (max-width:768px){
    #txtSetList .txtSet .txt {
        padding: 30px 20px;
        background-color: #f7f7f7;
    }
    #txtSetList .txtSet .txt br {
        display: none;
    }
    #imgList {
        display: none;
    }
}

/* #numbering */
.numbering {
    padding-left: 50px;
    margin-top: 15px;
    position: relative;
    letter-spacing: -0.04em;
}
.numbering strong {
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
}
.numbering strong::before {
    content: "";
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 1px;
    background-color: #ddd;
}
/* #company_03 */
#company_03 {
    overflow: hidden;
}
#company_03 .sec1 {
    background: url(../img/com3_sec1_bg.png) center bottom no-repeat;
    background-size: 100%;
}
#company_03 .sec2 .row {
    margin: 0 -40px;
}
#company_03 .sec2 .row > div {
    padding: 0 40px;
}
#company_03 .sec3 .img {
    position: unset;
    background: url(../img/m3_img.jpg) center center no-repeat;
    background-size: cover;
    height: 580px;
    overflow: hidden;
    width: 100%;
}
#company_03 .sec3 .contxt {
    padding: 50px;
    background-color: #fff;
    position: relative;
    z-index: 3;
    margin-top: -5%;
}
@media (max-width:767px){
    #company_03 .sec3 .img {
        height: 330px;
    }
    #company_03 .sec3 .contxt {
        padding: 20px;
    }
}
/* company_04 */
#company_04 {
    overflow: hidden;
}
#company_04 .sec1 .ldBox {
    padding: 80px 60px;
    background-color: rgba(0,0,0,0.02);
}
#company_04 .sec1 .ldBox .spin {
    left: auto;
    top: auto;
    bottom: 0;
    right: 0;
    transform: translate3d(50%, 50%, 0);
}
@media (min-width:1400px){
    #company_04 .sec1 {
        background: url(../img/com4_sec1_bg.png) right top no-repeat;
    }
    #company_04.company_04_none .sec1 {
        background: none;
    }
}
@media (max-width:767px){
    #company_04 .sec1 .ldBox {
        padding: 40px 20px;
    }
}
/* pList */
.pList > li {
    position: relative;
    padding-left: 15px;
}
.pList > li:after {
    content: "";
    position: absolute;
    left: 0;
    top: 11px ;
    width: 4px;
    height: 4px;
    background-color: #aaa;
}
.pList > li p {
    font-weight: 300;
}
@media (max-width:768px){
    .pList > li:after {
        top: 8px ;
    }
}
/* hList */
.hList > li {
    position: relative;
    padding-left: 15px;
}
.hList > li:after {
    content: "";
    position: absolute;
    left: 0;
    top: 13px ;
    width: 4px;
    height: 4px;
    background-color: #aaa;
}
.hList > li h5{
    font-weight: 300;
    padding-left: 0px;
}
@media (max-width:768px){
    .hList > li:after {
        top: 9px ;
    }
}

/* table_basic */
.table.table_basic {
    border-top: 2px solid #333;
}
.table.table_basic tr.topTr {
    border-top: 2px solid #666;
}
.table.table_basic tr th,
.table.table_basic tr td {
    font-size: 17px;
    text-align: center;
    font-weight: 300;
    color: #222;
    border: 1px solid #ddd;
    padding: 15px;
    vertical-align: middle;
}
.table.table_basic tr td.text-left {
    text-align: left;
}
.table.table_basic thead tr th {
    font-size: 20px;
    font-weight: 700;
}
.table.table_basic.two thead tr th {
    border-width: 2px;
    border-color: #222 !important;
}
.table.table_basic tr th:first-child,
.table.table_basic tr td:first-child {
    border-left: 0px;
}
.table.table_basic tr th:last-child,
.table.table_basic tr td:last-child {
    border-right: 0px;
}
.table.table_basic tr th {
    font-weight: 500;
}
.table.table_basic thead tr th {
    background-color: #fff;
    border-bottom: 2px solid #333;
}
.table.table_basic tbody tr th {
    background-color: #f8f8f8;
}
.table.table_basic tr.this td {
    background-color: #fdf9ef;
}
.table.table_basic tr td p span {
    display: inline-block;
    line-height: 30px;
    padding: 0 10px;
    font-weight: 600;
    background-color: #fff8b7;
    border-radius: 4px;
    margin-bottom: 5px;
}
.table.table_basic tr td p span.tit2 {
    background-color: #ffebeb;
}
.table.table_basic tr td p span.tit3 {
    background-color: #ebffce;
}
.table.table_basic tr th.img{
	padding:0;
}
@media (max-width:768px) {
    .table.table_basic tr th,
    .table.table_basic tr td {
        font-size: 13px;
        padding: 8px 5px;
        word-break: keep-all;
    }
    #edu_01 .table.table_basic tr th,
    #edu_01 .table.table_basic tr td {
        word-break: break-all;
    }
    .table.table_basic thead tr th {
        font-size: 15px;
    }
}
@media (max-width:992px){
    .oft {
        overflow-x: scroll;
    }
    .oft .table.table_basic {
        width: 700px;
    }
}

#company_04 .c_wrp {
 display: flex;
}
#company_04 .c_wrp .lt {
	width:35%;
}
#company_04 .c_wrp .rt {
	width:65%;
}
#company_04 .slk_t {
    margin: 0 -25px;
}
#company_04 .slk_t .teamItem {
	/*height: 720px;*/
}
#company_04 .slk_t  li{
   /* margin: 0 -25px;*/
}
#company_04 .slk_t .slick-slide {
    padding: 0 25px;
}
#company_04 .img img {
    display: inline-block;
	border-radius: 40px;
}
#company_04 .name {
    padding: 15px 0;
    margin-bottom: 15px;
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
#company_04 .name span {
    font-size: .55em;
    opacity: .4;
}
@media (max-width:768px){
    #company_04 .img img {
        max-width: 70%;
    }
    #company_04 .slk_t {
        margin: 0 -10px;
    }
    #company_04 .slk_t .slick-slide {
        padding: 0 10px;
    }
		
	#company_04 .slk_t .teamItem {
		height: auto;
		padding: 20px 40px;
	}
	#company_04 .c_wrp {
	 display: table;
	}
	#company_04 .c_wrp .lt {
		width:100%;
	}
	#company_04 .c_wrp .rt {
		width:100%;
	}
}

/* slick-dots */
.slick-dots {
    text-align: center;
    padding: 0px;
    margin-top: 40px;
}
.slick-dots li {
    display: inline-block;
    line-height: 8px;
}
.slick-dots li button {
    display: inline-block;
    border: 0px;
    border-radius: 50px;
    padding: 0;
    color: transparent;
    width: 7px;
    height: 7px;
    margin: 0 5px;
    background-color: rgba(255,255,255,0.4);
}
.slick-dots li.slick-active button {
    background-color: #fff;
    opacity: 1;
}
#nv-slide .slick-dots li.slick-active button {
    background-color: #fff;
    opacity: 1;
}
@media (max-width:768px){
    .slick-dots {
        text-align: center;
        padding: 0px;
        margin-top: 10px;
    }
}



/* pipeline */
#pipeline > div {
    display: flex;
    align-items: stretch;
}
#pipeline > div > div {
    display: flex;
    align-items: center;
}
#pipeline .id {
    width: 15%;
}
#pipeline .indi {
    width: 25%;
}
#pipeline .pip {
    /* width: 60%; */
}
#pipeline .pipHeader {
    border-top: 2px solid #222;
    border-bottom: 2px solid #222;
}
#pipeline .pipHeader > div {
    padding: 20px 15px;
    position: relative;
}
#pipeline .pipHeader > .pip,
#pipeline .pipBody > .pip {
    /* padding: 0 20px; */
    position: relative;
}
#pipeline .pip .line {
    position: absolute;
    left: 25%;
    top: 0;
    height: 100%;
    border-left: 1px dashed #ddd;
}
#pipeline .pip .line {
    position: absolute;
    left: 25%;
    top: 0;
    height: 100%;
    border-left: 1px dashed #ddd;
}
#pipeline .pip .lined2 {
    left: 50%;
}
#pipeline .pip .lined3 {
    left: 75%;
}
#pipeline h6 {
    font-size: 15px;
}
#pipeline .pipHeader > .pip {
    justify-content: space-around;
}
#pipeline .pipHeader > .pip h6 {
    display: inline-block;
    line-height: 1em;
    width: 85px;
    text-align: center;
    color: #b1b1b1;
    border: 1px solid #d1d1d1;
    border-radius: 4px;
    padding: 10px 0;
}
#pipeline .pipBody {
    border-bottom: 1px solid #ddd;
}
#pipeline .pipBody > div {
    position: relative;
    padding: 20px 15px;
}
#pipeline .pipHeader > div::before,
#pipeline .pipBody > div::before {
    content: "";
    position: absolute;
    right: -1px;
    top: 0;
    height: 100%;
    width: 1px;
    background-color: #ddd;
}
/* #pipeline .pipHeader > div::after,
#pipeline .pipBody > div::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 1px;
    background-color: #ddd;
} */
#pipeline .id::after {
    background-color: #fff !important;
}
#pipeline .pip::before {
    background-color: #fff!important;
}
#pipeline .pipBody > .pip {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: auto;
}
#pipeline .pipBody > .pip > div {
    width: 100%;
    display: flex;
    justify-content: space-around;
}
#pipeline .pipBody > .pip .pipBarInner {
    background-color: #ddd;
    border-radius: 20px;
    height: 30px;
    position: relative;
    overflow: hidden;
    width: 100%;
}
#pipeline .pipBody > .pip > .pipBar {
    position: relative;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine {
    position: absolute;
    width: 3px;
    background-color: #fff;
    height: 100%;
    transform: translateX(-50%);
    z-index: 3;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine1 {
    left: 10%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine2 {
    left: 20%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine3 {
    left: 30%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine4 {
    left: 40%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine5 {
    left: 50%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine6 {
    left: 60%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine7 {
    left: 70%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine8 {
    left: 80%;
}
#pipeline .pipBody > .pip > .pipBar .dvdLine9 {
    left: 90%;
}
#pipeline .pipBody > .pip > .pipBar .pipBarColored {
    position: absolute;
    left: 0%;
    top: 0;
    height: 100%;
    background: linear-gradient(90deg, #57bbe1, #1c4889)
}
#pipeline .pipBody > .pip > .pipBar.w1 .pipBarColored {
    width: 6.25%;
}
#pipeline .pipBody > .pip > .pipBar.w2 .pipBarColored {
    width: 12.5%;
}
#pipeline .pipBody > .pip > .pipBar.w3 .pipBarColored {
    width: 18.75%;
}
#pipeline .pipBody > .pip > .pipBar.w4 .pipBarColored {
    width: 25%;
}
#pipeline .pipBody > .pip > .pipBar.w5 .pipBarColored {
    width: 31.25%;
}
#pipeline .pipBody > .pip > .pipBar.w6 .pipBarColored {
    width: 37.5%;
}
#pipeline .pipBody > .pip > .pipBar.w7 .pipBarColored {
    width: 43.75%;
}
#pipeline .pipBody > .pip > .pipBar.w8 .pipBarColored {
    width: 50%;
}
#pipeline .pipBody > .pip > .pipBar.w9 .pipBarColored {
    width: 56.25%;
}
#pipeline .pipBody > .pip > .pipBar.w10 .pipBarColored {
    width: 62.5%;
}
#pipeline .pipBody > .pip > .pipBar.w11 .pipBarColored {
    width: 68.75%;
}
#pipeline .pipBody > .pip > .pipBar.w12 .pipBarColored {
    width: 75%;
}
#pipeline .pipBody > .pip > .pipBar.w13 .pipBarColored {
    width: 81.25%;
}
#pipeline .pipBody > .pip > .pipBar.w14 .pipBarColored {
    width: 87.5%;
}
#pipeline .pipBody > .pip > .pipBar.w15 .pipBarColored {
    width: 93.75%;
}
#pipeline .pipBody > .pip > .pipBar.w16 .pipBarColored {
    width: 100%;
}
#pipeline .pipBody > .pip > .pipBar .chkCircle {
    position: absolute;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    background: linear-gradient(#fff, #eee);
    box-shadow: 0 5px 10px rgba(0,0,0,0.2);
    left: calc(0px - 22px);
    top: calc(50% - 22px);
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
}
#pipeline .pipBody > .pip > .pipBar.w1 .chkCircle {
    left: calc(6.25 - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w2 .chkCircle {
    left: calc(12.5% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w3 .chkCircle {
    left: calc(18.75% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w4 .chkCircle {
    left: calc(25% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w5 .chkCircle {
    left: calc(31.25% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w6 .chkCircle {
    left: calc(37.5% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w7 .chkCircle {
    left: calc(43.75% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w8 .chkCircle {
    left: calc(50% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w9 .chkCircle {
    left: calc(56.25% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w10 .chkCircle {
    left: calc(62.5% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w11 .chkCircle {
    left: calc(68.75% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w12 .chkCircle {
    left: calc(75% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w13 .chkCircle {
    left: calc(81.25% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w14 .chkCircle {
    left: calc(87.5% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w15 .chkCircle {
    left: calc(93.75% - 22px);
}
#pipeline .pipBody > .pip > .pipBar.w16 .chkCircle {
    left: calc(100% - 22px);
}
#pipeline .pipBody > .pip > .labels > h6 {
    width: 70px;
    text-align: center;
    margin-top: 8px;
    height: 20px;
}
#pipeline .pipBody > .pip > .labels > h6:nth-child(3) {
    text-align: center;
}
#pipeline .pipBody > .pip > .labels > h6:nth-child(4),
#pipeline .pipBody > .pip > .labels > h6:nth-child(5) {
    text-align: right;
}
@media (max-width:1000px){
    #pipelineWrp {
        overflow-x: auto;
    }
    #pipelineWrp #pipeline {
        min-width: 1000px;
    }
}
@media (max-width:767px){
    #pipeline .pipBody > .pip {
        min-height: auto;
    }
    #pipeline .pipBody > .pip .pipBarInner {
        height: 20px;
    }
    #pipeline .pipBody > .pip > .pipBar .chkCircle {
        width: 30px;
        height: 30px;
        left: calc(0px - 15px);
        top: calc(50% - 15px);
        font-size: 24px;
    }
    #pipeline .pipHeader > .pip h6 {
        width: 70px;
        padding: 5px 0;
    }
    #pipeline h6 {
        font-size: 13px;
    }
}
/* pipTable */
.pipTable {
    border-top: 1px solid #111;
}
.pipTable thead tr th,
.pipTable thead tr td {
    font-size: 17px;
    color: #000;
    line-height: 1.6em;
    text-transform: none;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #ddd;
    border-bottom-color: #111;
}
.pipTable tbody tr th,
.pipTable tbody tr td {
    font-size: 16px;
    line-height: 1.2em;
    color: #111;
    vertical-align: middle;
    border: 1px solid #ddd;
    text-align: left;
    font-weight: 500;
}
.pipTable tbody tr th {
    font-weight: 700;
    font-size: 17px;
}
.pipTable thead tr th:first-child,
.pipTable thead tr td:first-child,
.pipTable tbody tr th:first-child,
.pipTable tbody tr td:first-child {
    border-left: 0px;
}
.pipTable thead tr th:last-child,
.pipTable thead tr td:last-child,
.pipTable tbody tr th:last-child,
.pipTable tbody tr td:last-child {
    border-right: 0px;
}
.pipTable thead tr th,
.pipTable thead tr td,
.pipTable tbody tr th,
.pipTable tbody tr td {
    padding: 10px 15px;
}
.pipTable tbody tr th:not(.text-left),
.pipTable tbody tr td:not(.text-left) {
    text-align: center;
}
.pipTable .pipBody {
    padding: 0px !important;
}
@media (max-width:767px){
    .pipTable thead tr th,
    .pipTable thead tr td {
        font-size: 14px;
    }
    .pipTable tbody tr th,
    .pipTable tbody tr td {
        font-size: 13px;
    }
}
/* circleWrp */
.circleWrp .circleItem {
    width: 100%; 
}
.circleWrp .circleItem > li {
    width: 25%; 
    padding-top: calc(25% + 1px)
}
.circleItem {
    position: relative;
    margin:0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    top: 0;
}
.circleItem > li + li {
    margin-left: -20px;
}
.circleItem > li .txt {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    z-index: 12;
    height: 100%;
    width: 100%;
    justify-content: center;
    align-items: center;
}
.circleItem > li .txt:after {
    content: "";
    position: absolute;
    width: 90%;
    height: 90%;
    left: 5%;
    top: 5%;
    background-color: rgba(209, 230, 238, 0.2);
    border-radius: 50%;
}
.circleItem > li .txt h4 {
    position: relative;
    z-index: 2;
}
.circleItem .box {
    width:100%;
    height:100%;
    top: 0;
    left: 0;
    margin: auto;
    z-index:10;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items:center;
    border-radius: 50%; 
    flex-direction: column;
    z-index: 11;
}
.circleItem .circleWrapper {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    overflow: hidden;
    display:block;
}
.circleItem .circleWrapper-right {
    right: 0px;
}
.circleItem .circleWrapper-left {
    left: 0px;
}
.circleItem .reverse .box {
    transform: scale(-1, -1);
}
.circleItem .circle {    
    width: 200%;
    height: 100%;
    border: 1px solid transparent;
    border-radius: 50%;
    position: absolute;
    top: 0;
    transform: rotate(-135deg);
    display: block;
}
.circleItem .circle-right {
    border-top: 1px solid #5fa1ba;
    border-right: 1px solid #5fa1ba;
    right: 1px;
    visibility: hidden; 
}
.circleItem .circle-left {
    border-bottom: 1px solid #5fa1ba;
    border-left: 1px solid #5fa1ba;
    left: 1px;
    visibility: hidden; 
}
.circleItem .aos-animate .circle-right {
    visibility: visible; 
    animation: circleRight 1.5s linear forwards;
    animation-delay: 1s;
}
.circleItem .aos-animate .circle-left {
    visibility: visible; 
    animation: circleLeft 1.5s linear forwards;
    animation-delay: 1s;
}
.circleItem .aos-animate:nth-child(1) .circle-right,
.circleItem .aos-animate:nth-child(1) .circle-left {
    animation-delay: 1.05s;
}
.circleItem .aos-animate:nth-child(2) .circle-right,
.circleItem .aos-animate:nth-child(2) .circle-left {
    animation-delay: 1.025s;
}

@keyframes circleRight {
    0% {
        transform: rotate(-135deg);
    }
    50%, 100% {
        transform: rotate(45deg);
    }
}

@keyframes circleLeft {
    0%, 50% {
        transform: rotate(-135deg);
    }
    100% {
        transform: rotate(45deg);
    }
}
@media (max-width:992px){
    .circleItem > li .txt img {
        width: 50px;
    }
}
@media (max-width:768px){
    .circleWrp .circleItem > li {
        padding-top: 0;
        width: 40vw;
        height: 40vw;
    }
    .circleWrp .circleItem > li:nth-child(3),
    .circleWrp .circleItem > li:nth-child(4) {
        margin: 0px 0 0 0;
    }
    .circleItem > li + li {
        margin-left: 0px;
    }
    .circleItem > li .txt h4 {
        font-size: 4vw;
    }
    .circleItem > li .txt img {
        width: 35px;
    }
}
/* recruit_01 */
#recruit_01 .sec2 {
    background: url(../img/rc1_bg.jpg) center center no-repeat;
    background-size: cover;
}

/* recruit_02 */
#recruit_02 .sec1 ul li .item {
    padding: 50px 40px;
    background-color: rgba(209, 230, 238, 0.2);
}
#recruit_02 .sec1 ul li .item ul {
    min-height: 170px;
}
#recruit_02 .sec1 ul li .item .icon {
    width: 70px;
    margin-left: auto;
}
@media (max-width:768px){
    #recruit_02 .sec1 ul li .item {
        display: flex;
        align-items: center;
    }
    #recruit_02 .sec1 ul li .item ul {
        min-height: auto;
    }
}

/* locBox */
.locBoxWrp {
    border: 2px solid #eee;
    padding: 20px;
}
.locBox {
    /* background-color: #f6f6f6; */
}
.locBox > .lft {
    padding: 30px 0;
}
.locBox .lft h3 .sm {
    font-size: .6em;
}
.locBox .lft ul {
    display: flex;
    justify-content: space-around;
}
.locBox .lft ul li {
    display: flex;
}
.locBox .lft ul li .icon {
    width: 50px;
    font-size: 30px;
    color: #111;
    line-height: 1em;
    padding-top: 5px;
}
.locBox .lft ul li .info {
    width: calc(100% - 50px);
}
.locBox .lft ul li {
    padding: 10px 0;
}
.locBox .lft ul li h5 {
    margin-top: 3px;
}
@media (max-width:992px) {
    .locBox {
        flex-wrap: wrap;
    }
    .locBox .lft,
    .locBox .rt {
        width: 100%;
    }
}
@media (max-width:767px) {
    .locBoxWrp {
        padding: 15px;
    }
    .locBox > .lft {
        padding: 20px 0;
    }
    .locBox .lft ul {
        display: block;
    }
    .locBox .lft ul li {
        padding: 5px 0;
    }
    .locBox .lft ul li .icon {
        width: 30px;
        font-size: 17px;
    }
    .locBox .lft ul li .info {
        width: calc(100% - 25px);
    }
}
/* mapbox */
.mapbox .root_daum_roughmap .wrap_map {
    height: 350px !important;
}
.root_daum_roughmap_landing .border2 {
    display: block;
}
/* .mapbox .root_daum_roughmap .map_border {
    display: none !important; 
} */
@media (max-width:992px) {
	.mapbox .root_daum_roughmap .wrap_map {
		height: 250px !important;
	}
}
@media (max-width:600px) {
	.mapbox .root_daum_roughmap .wrap_map {
		height: 200px !important;
	}
}




/* tech_01 */

#tech_01 .c_wrp {
    display: flex;
}
#tech_01 .c_wrp .lt {
        width: 70%;
}
@media (max-width:1195px) {

	#tech_01 .c_wrp {
		display: block;
	}
	#tech_01 .c_wrp .lt {
			width: 100%;
	}
}

/* howList */
.howList  {
    padding-top: 20px;
}
.howList li {
    margin: 10px 0;
}
.howList li h5 {
    position: relative;
    padding-left: 35px;
}
.howList li h5 .num {
    position: absolute;
    left: 0;
    top: 3px;
    width: 25px;
    line-height: 25px;
    background-color: #45a3bd;
    color: #fff;
    font-weight: 600;
    border-radius: 50%;
    text-align: center;
}
@media (max-width:768px) {
    .howList  {
        padding-top: 10px;
    }
    .howList li h5 {
        padding-left: 25px;
    }
    .howList li h5 .num {
        width: 20px;
        line-height: 20px;
        font-size: 0.8em;
        top: 0;
    }
}

/* spec */
.spec h5 {
    display: inline-block;
    padding-left: 10px;
    position: relative;
    color: #666;
}
.spec h5:after {
    content: "";
    position: absolute;
    left: 0;
    top: calc(50% - 2px);
    width: 4px;
    height: 4px;
    background-color: #ccc;
}
@media (max-width:768px){
    .spec h5:after {
        top: 10px;
    }
}
#tech_01 .spec {
   padding-left:30px;
}



 .thum_item {
    position: relative;
    border: 1px solid #ddd;
}
 .thum_item .lnk_wrp {
    border-top: 1px solid #ddd;
    background-color: #fcfcfc;
    padding: 15px;
}
 .thum_item h4 {
    border-bottom: 1px solid #ddd;
    padding: 15px;
}






/* tech_02 */

#tech_02 .c_wrp {
    display: flex;
}
#tech_02 .c_wrp .lt {
        width: 50%;
}
@media (max-width:1195px) {

	#tech_02 .c_wrp {
		display: block;
	}
	#tech_02 .c_wrp .lt {
			width: 100%;
	}
}


/* tech_04 */

#tech_04 .c_wrp {
    display: flex;
}
#tech_04 .c_wrp .lt {
        width: 50%;
}
#tech_04 .con2 .c_wrp .lt {
        width: auto
}
@media (max-width:1195px) {

	#tech_04 .c_wrp {
		display: block;
	}
	#tech_04 .c_wrp .lt {
			width: 100%;
	}
}


/* tech_05 */

#tech_05 .c_wrp {
    display: flex;
}
#tech_05 .c_wrp .lt {
        width: 50%;
}
#tech_05 .con2 .c_wrp .lt {
        width: auto
}
@media (max-width:1195px) {

	#tech_05 .c_wrp {
		display: block;
	}
	#tech_05 .c_wrp .lt {
			width: 100%;
	}
}



#tech_07 .spec {
   padding-left:30px;
}






/* hisList */
.hisList {
    position: relative;
}
.hisList:after {
    content: "";
    position: absolute;
    left: calc(50% - 1px);
    background: url(../img/his_bg.png) center center no-repeat;
    background-attachment: fixed;
    background-color: #eee;
    top: 0;
    height: 100%;
    width: 3px;
}
.hisList > li {
    margin: 40px 0;
    padding-left: 40px;
    position: relative;
    z-index: 3;
}
.hisList > li ul {
    margin-top: 20px;
}
.hisList > li ul li {
    margin: 10px 0;
}
.hisList > li ul li h5 {
    position: relative;
    padding-left: 85px;
    word-break: keep-all;
    color: #444;
    font-weight: 300;
    position: relative;
}
.hisList > li ul li h5:after {
    content: "";
    position: absolute;
    top: calc(50% - 5px);
    left: -45px;
    height: 11px;
    width: 11px;
    border: 2px solid #0a2543;
    background-color: #fff;
    border-radius: 50%;
}
.hisList > li ul li h5 > strong {
    position: absolute;
    left: 0;
    color: #111;
    font-weight: 700;
	font-family: "Roboto";
}
@media (min-width:768px){
    .hisList > li {
        width: 50%;
    }
    .hisList > li:nth-child(odd) {
        margin-left: 50%;
    }
    .hisList > li:nth-child(even) {
        padding-left: 0;
        padding-right: 30px;
        text-align: right;
    }
    .hisList > li:nth-child(even) ul li h5 {
        padding-right: 85px;
        padding-left: 0;
    }
    .hisList > li:nth-child(even) ul li h5 > strong {
        left: auto;
        right: 0;
    }
    .hisList > li:nth-child(even) ul li h5:after {
        left: auto;
        right: -35px;
    }
}
@media (max-width:768px){
    .hisList:after {
        background: #eee;
        left: -2px;
    }
    .hisList > li {
        padding-left: 20px;
    }
    .hisList > li ul li h5 {
        padding-left: 70px;
    }
    .hisList > li ul li h5:after {
        left: -25px;
        height: 9px;
        width: 9px;
        top: 7px;
    }
}





/* product */

#product .c_wrp {
    display: flex;
}
#product .c_wrp .lt {
        width: 70%;
}
@media (max-width:1195px) {

	#product .c_wrp {
		display: block;
	}
	#product .c_wrp .lt {
			width: 100%;
	}
}




.costSection .costItem {
    box-shadow: 10px 10px 30px rgba(0,0,0,0.15);
    border-radius: 10px;
    background-color: #fff;
}
.costSection .costItem .top {
    padding: 20px;
    border-radius: 10px 10px 0 0;
    background-color: #2baab1c4;
}
.costSection .costItem .top h3 {
    font-weight: 700;
}
.costSection .costItem .top h5 {
    font-weight: 300;
    /*color: #666;*/
}
.costSection .costItem .top h5 strong {
    font-size: 1.2em;
    color: #333;
}
.costSection .costItem .con {
    padding: 20px;
	min-height: 280px;
}
.costSection .costItem .con .conImg {
    display: flex;
    justify-content: space-around;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    /*margin-bottom: 20px;*/
}
.costSection .costItem.bst .top {
    background-color: #2baab1c4;
}
.costSection .costItem.bst .top h3,
.costSection .costItem.bst .top h5 {
    color: #fff;
}
.costSection .costItem.pre .top {
    background-color: #14273f;
}
.costSection .costItem.pre .top h3,
.costSection .costItem.pre .top h5 {
    color: #fff;
}
@media (max-width:1400px){
    .studio .costList > ul > li {
        margin: 15px 0;
    }
}
@media (max-width:768px){
    .costSection .costItem .con .conImg {
        width: 200px;
    }
		
	.costSection .costItem .con {
		min-height: auto;
	}
}

.costSection .costItem .con .iconBox {
    width: 100px;
    position: relative;
    display: inline-block;
}
.costSection .costItem .con .iconBox:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background-color: #e63737;
    opacity: 0.1;
    border-radius: 50%;
}
.costSection .costItem .con .iconBox.iconBox2:after {
    left: 0;
    top: auto;
    bottom: 0;
}
.costSection .costItem .con .iconBox.iconBox3:after {
    left: auto;
    right: 0;
    top: 0;
}
.costSection .costItem .con .iconBox.iconBox4:after {
    left: auto;
    top: auto;
    bottom: 0;
    right: 0;
}
.costSection .costItem .con .iconBox {
    margin-bottom: 10px;
}
.costSection .costItem .con .iconBox i {
    font-size: 80px;
    line-height: 100px;
    color: #000 ;
}
@media (max-width:768px){
    .costSection .costItem .con .iconBox {
        width: 50px;
        margin-bottom: 0px;
    }
    .costSection .costItem .con .iconBox i {
        font-size: 35px;
        line-height: 50px;
    }
    .costSection .costItem .con .iconBox:after {
        width: 30px;
        height: 30px;
    }
}





/* donaWrpBox */
.donaWrpBox {
    /*max-width: 1200px;*/
    margin: 0 auto;
    border: 1px solid #eee;
    padding: 6rem;
}
@media (max-width:768px){
    .donaWrpBox {
        padding: 3rem 1.5rem;
    }
}

/* donation_type */
#donation_type {
    background-color: #f7f7f7;
}
.donation .form {
    padding: 50px;
    background-color: #fff;
}
@media (max-width:767px) {
    .donation .form {
        padding: 30px 15px;
    }
}

/* formContents */
.formContents {
    /* border-top: 1px solid #aaa; */
}
.formContents > li {
    display: flex;
    align-items: flex-start;
}
.formContents > li > div {
    padding: 15px 0;
}
.formContents > li.canvas {
    background-color: #fbfffb;
}
.formContents > li > .tit {
    width: 230px;
}
.formContents > li > .con {
    width: calc(100% - 230px);
}
.formContents > li > .con .checkbox-custom,
.formContents > li > .con .radio-custom {
    margin: 0 12px 0 0;
}
.formContents > li > .tit label {
    font-size: 17px;
    color: #333;
}
.formContents > li > .con .checkbox-custom label ,
.formContents > li > .con .radio-custom label  {
    font-size: 16px;
    color: #333;
}
.formContents > li > .tit label {
    font-weight: 600;
    margin: 0px;
}
@media (min-width:768px) {
    .formContents > li > .tit label,
    .formContents > li > .con .checkbox-custom,
    .formContents > li > .con .radio-custom {
        line-height: 40px;
    }
    .formContents > li > .con .checkbox-custom.line,
    .formContents > li > .con .radio-custom.line {
        line-height: 25px;
        margin-top: 5px;
    }
}
@media (max-width:767px) {
    .formContents > li {
        flex-wrap: wrap;
    }
    .formContents > li > .tit,
    .formContents > li > .con {
        width: 100%;
    }
    .formContents > li > .tit {
        padding: 10px 0 0;
    }
    .formContents > li > .con {
        padding: 5px 0 10px;
    }
    .formContents > li > .tit label {
        font-size: 15px;
    }
    .formContents > li > .con .checkbox-custom label ,
    .formContents > li > .con .radio-custom label  {
        font-size: 14px;
    }
}

/* formBtn */
.formBtn {
    line-height: 40px;
    background-color: #444;
    border: 0px;
    text-align: center;
    width: 100px;
    color: #fff;
}
.formBtn.gr {
    background-color: #126919;
}
/* form-flex */
.form-flex {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.form-flex.noflow {
    white-space: nowrap;
    gap: 8px;
}
.form-flex.spaceBetween {
    justify-content: space-between;
}
.form-flex + .form-flex:not(.noBorder) {
    margin-top: 10px;
    border-top: 1px solid #eee;
    padding-top: 10px;
}
.form-flex.fx > div {
    flex-grow: 1;
}
.form-flex,
.form-flex label {
    font-size: 17px;
}
.form-flex .form-control,
.form-flex .t,
.form-flex .modalBtn,
.form-flex .checkbox-custom label ,
.form-flex .radio-custom label  {
    font-size: 16px;
}
.form-flex .modalBtn {
    display: inline-block;
    cursor: pointer;
    color: #aaa;
}
.form-flex .form-control {
    border-radius: 0px;
    box-shadow: 0 0 0;
    border-color: #ddd;
}
.form-flex .form-control:not(textarea) {
    height: 40px;
}
.form-flex.infoItem {
    min-height: 40px;
}
@media (min-width:768px) {
    .form-flex.mx80 {
        width: 80%;
    }
    .form-flex .form-control.wr250 {
        max-width: 250px;
    }
    .form-flex .form-control {
        min-width: 100px;
    }
}
@media (max-width:767px) {
    .form-flex:not(.mobileFlex) {
        flex-wrap: wrap;
    }
    .form-flex.noflow {
        gap: 4px;
    }
    .form-flex,
    .form-flex label,
    .form-flex .modalBtn,
    .form-flex .form-control {
        font-size: 15px;
    }
    .form-flex .form-control {
        padding: 6px 8px;
    }
    .form-flex .form-control,
    .form-flex .checkbox-custom label ,
    .form-flex .radio-custom label  {
        font-size: 14px;
    }
    .form-flex.infoItem {
        min-height: auto;
    }
}

/* formAgrees */
.formAgrees {
    border-top: 1px solid #333;
}
.formAgrees > li {
    padding: 8px 0;
    font-size: 17px;
    border-bottom: 1px solid #ddd;
}
.formAgrees > li.all {
    border-bottom-color: #333;
}
.formAgrees > li .radio-custom {
    padding: 5px 0;
}
.formAgrees > li .checkbox-custom,
.formAgrees > li .radio-custom {
    padding: 0px;
    width: 100%;
}
.formAgrees > li .hasModal .checkbox-custom,
.formAgrees > li .hasModal .radio-custom {
    width: calc(100% - 70px);
}
.formAgrees > li .checkbox-custom label,
.formAgrees > li .radio-custom label {
    display: block;
    width: 100%;
    color: #848484;
    border-radius: 4px;
    height: 55px;
    padding-left: 40px;
    padding-right: 20px;
    display: flex;
    align-items: center;
}
.formAgrees > li .checkbox-custom.big label,
.formAgrees > li .radio-custom.big label {
    height: 90px;
}
.formAgrees > li .checkbox-custom.md label,
.formAgrees > li .radio-custom.md label {
    height: 70px;
}
.formAgrees > li .checkbox-custom.md label span strong,
.formAgrees > li .checkbox-custom.big label span strong,
.formAgrees > li .radio-custom.md label span strong,
.formAgrees > li .radio-custom.big label span strong {
    display: block;
    font-size: 20px;
    line-height: 1em;
}
.formAgrees > li .checkbox-custom input[type="checkbox"]:checked + label,
.formAgrees > li .radio-custom input[type="radio"]:checked + label {
    border-color: #111;
    color: #111;
    /* background-color: #f5f8ff;
    box-shadow: 5px 5px 20px rgba(141, 160, 214, 0.15); */
}
.formAgrees > li .checkbox-custom label::before,
.formAgrees > li .radio-custom label::before {
    left: 0px;
    right: auto;
    width: 27px;
    height: 27px;
    margin-top: 0px;
    transform: translateY(-50%);
    background-color: #c7c7c7;
    border-color: #c7c7c7;
    border-radius: 50%;
}
.formAgrees > li .checkbox-custom input[type="checkbox"] + label:after,
.formAgrees > li .radio-custom input[type="radio"] + label:after {
    content: "\eb7b";
    font-family: remixicon!important;
    font-style: normal;
    right: auto;
    left: 5px;
    background-color: transparent;
    font-size: 17px;
    position: absolute;
    width: 13px;
    height: 17px;
    margin-top: 0px;
    transform: translateY(-50%);
    top: 50%;
    line-height: 1;
    color: #fff;
}
.formAgrees > li .checkbox-custom input[type="checkbox"]:checked + label::before,
.formAgrees > li .radio-custom input[type="radio"]:checked + label::before {
    background-color: #099814;
    border-color: #099814;
}
.formAgrees > li .checkbox-custom input[type="checkbox"]:checked + label:after,
.formAgrees > li .radio-custom input[type="radio"]:checked + label:after {
    box-shadow: 0 0 0;
}
@media (max-width:767px) {
    .formAgrees > li {
        font-size: 15px;
    }
    .formAgrees > li .checkbox-custom label, 
    .formAgrees > li .radio-custom label {
        height: 40px;
        padding-left: 35px;
    }
    .formAgrees > li .checkbox-custom label::before, 
    .formAgrees > li .radio-custom label::before {
        width: 24px;
        height: 24px;
    }
    .formAgrees > li .checkbox-custom input[type="checkbox"] + label:after, 
    .formAgrees > li .radio-custom input[type="radio"] + label:after {
        font-size: 14px;
    }
}

/* totalDona */
.totalDona {
    border-bottom: 1px solid #ddd;
    background-color: #fbfffb;
    padding: 15px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 6px;
}
.totalDona .dvd {
    width: 1px;
    height: 10px;
    background-color: #ddd;
}
.totalDona strong {
    color: #099814;
    font-weight: 700;
    font-size: 1.2em;
}
/* formItem */
.formItem.dvd {
    border-top: 1px solid #aaa;
}
/* agreesCon */
.agreesCon {
    padding: 3rem;
    background-color: #f7f7f7;
}
@media (max-width:768px){
    .agreesCon {
        padding: 2rem 1rem;
    }
}