@charset "utf-8";
.real-cont {padding:100px 0 250px;}

@keyframes text-right {
    0% {
        transform: translateX(-50px); opacity: 0;
    }
    100% {
        transform: translateX(0px);
        opacity: 1;
    }
}

.yj {font-family: "yj_obang";}
.jg {font-family: 'JalnanGothic';}
.mo {display: none;}

/* splitting */
.page-header > .container.motion h2.chars .char {animation:textAni 1.5s both; animation-delay:calc(0.15s * var(--char-index));}

@keyframes textAni {
    0% {opacity:0;}
    30% {opacity:0;}
}

/* page-header */
.page-header {position: relative; width: 100%; height: 560px; background: url() 50% 50% no-repeat; background-size: cover;}
.page-header > .container {padding-top: 260px;}
.page-header.type1 {background-image: url(../images/sub/s-visual01.jpg);}
.page-header.type2 {background-image: url(../images/sub/s-visual02.jpg);}
.page-header.type3 {background-image: url(../images/sub/s-visual03.jpg);}
.page-header.type4 {background-image: url(../images/sub/s-visual04.jpg);}
.page-header.type5 {background-image: url(../images/sub/s-visual05.jpg);}
.page-header.type6 {background-image: url(../images/sub/s-visual06.jpg);}

.page-header .container h2 {font-size: 63px; font-weight: 400; color: #fff; text-align: center; font-family: "yj_obang";}

.lnb {position: absolute; bottom: 0; left: 0; width: 100%; z-index: 5; background-color: #fff; border-bottom: 1px solid #ddd;}
.lnb ul {display: table; table-layout:fixed; width: 100%;}
.lnb ul li {display: table-cell; position: relative;}
.lnb ul li:not(:last-child)::after {position: absolute; content:''; width: 1px; height: 15px; right: 0; top: 50%; transform: translateY(-50%); background-color: #ddd;}
.lnb ul li a {position: relative; display: block; width: 100%; line-height: 69px; font-size: 20px; color: #5d5d5d; text-align: center; font-weight: 500;}
.lnb ul li a::after {position: absolute; content:''; width: 100%; height: 2px; background-color: #190083; bottom: -1px; left: 0; opacity: 0;}
.lnb ul li a > span {position: relative; display: inline-block; padding-left: 0px;}
.lnb ul li a > span::before {position: absolute; content:''; top: 50%; left: 0; transform: translateY(-50%); width: 10px; height: 16px; background-color: #ff6600; clip-path: polygon(50% 1%, 100% 0%, 50% 100%, 0 100%); opacity: 0;}
.lnb ul li.active a {color: #190083; font-weight: 600;}
.lnb ul li.active a::after {opacity: 1;}
.lnb ul li.active a > span {padding-left: 15px;}
.lnb ul li.active a > span::before {opacity: 1;}
.lnb .btn-drop {position: relative; display: block; width: 100%; line-height: 50px; background-color: #190083; padding: 0 15px; text-align: left; font-size: 16px; color: #fff; font-weight: 500;}
.lnb .btn-drop::after {position: absolute; content:''; width: 9px; height: 5px; top: 50%; right: 15px; transform: translateY(-50%); background:url(../images/sub/btn-drop.png) 50% 50% no-repeat; background-size: auto; transition: all .2s linear;}


.lnb.on .btn-drop::after {transform: rotate(-180deg);}

.sub_3_1_ .lnb,
.sub_5_1_ .lnb {display: none;}

.lnb .btn-drop {display: none;}

.tab-3dep {width: 100%; margin-top: 90px; margin-bottom: 120px;}
.tab-3dep ul {width: 100%; display: table; table-layout: fixed; border: 1px solid #242424;}
.tab-3dep ul li {display: table-cell;}
.tab-3dep ul li a {display: block; width: 100%; line-height: 56px; text-align: center; font-size: 19px; font-weight: 500; color: #242424; transition: all .2s linear;}
.tab-3dep ul li:not(:last-child) a {border-right: 1px solid #242424;}
.tab-3dep ul li.active a {background-color: #190083; color: #fff;}


/* 공통 */
section {padding: 100px 0 250px;}
.section-header {margin-bottom: 120px;}
.section-header h3 {position: relative; text-align: center; color: #1d1d1d; font-weight: 700; font-size: 46px; padding-top: 35px;}
.section-header h3::before {position: absolute; content: ''; width: 30px; height: 10px; border-radius: 10px; background: url(../images/sub/ico_dot.png) 50% 50% no-repeat; background-size: auto;  top: 0; left: 50%; transform: translateX(-50%);}
.section-header p {font-size: 24px; line-height: 1.6; color: #666; text-align: center; padding-top: 40px; letter-spacing: -.03em;}


.article-header h4 {position: relative; font-size: 40px; font-weight: 600; color: #1d1d1d; text-align: center; padding-top: 40px;}
.article-header h4::before {position: absolute; content: ''; width: 10px; height: 10px; background-color: #05327a; top: 0; left: 50%; transform: translateX(-50%); border-radius: 50%;}
.article-header p {font-size: 24px; line-height: 1.6; color: #666; padding-top: 40px; text-align: center;}

.arti {width: 100%; display: flex; gap: 48px; align-items: flex-start;}
.arti ~ .arti {margin-top: 110px;}
.arti-tit {max-width: 225px; width: 100%; border-top: 1px solid #190083; margin-top: 10px;}
.arti-tit h4 {position: relative; display: inline-block; padding-top: 15px; font-size: 22px; font-weight: 600; color: #1d1d1d;}
.arti-tit h4::before {position: absolute; content: ''; width: 100%; height: 5px; top: -3px; left: 0; background-color: #190083;}

.arti-cnt {width: 1%; flex: 1 1 auto;}
.arti-cnt p {font-size: 18px; color: #4b4b4b; line-height: 1.6;}
.arti-cnt .img-box {display: flex; width: calc(100% + 56px); margin: 0 -28px;}
.arti-cnt .img-box li {width: 33.3333%; padding: 0 28px;}
.arti-cnt .img-box.col {width: calc(100% + 26px); margin: 0 -13px;}
.arti-cnt .img-box.col li {width: 16.6666%; padding: 0 13px;}
.arti-cnt .img-box li figure {width: 100%;}
.arti-cnt .img-box li figure img {display: block; max-width: 100%; margin: 0 auto; width: 100%;}
.arti-cnt .img-box li figure figcaption {font-size: 14px; color: #4b4b4b; text-align: center; margin-top: 15px;}
.arti-cnt .img-bg {display: flex; width: 100%; margin: 0; height: 330px; align-items: center; justify-content: center; background:url(../images/sub/img_s12_01.jpg) 50% 50% no-repeat; background-size: cover; border-radius: 20px;}
.arti-cnt .img-bg > h5 {font-weight: 500; color: #fff; font-size: 26px; line-height: 1.7; text-align: center;}
.arti-cnt .img-bg > h5 > strong {font-weight: 700;}

.philosophy {margin-top: 45px; width: 100%;}
.philosophy ul {width: calc(100% + 27px); display: flex; margin: 0 -13.5px;}
.philosophy ul li {width: 33.3333%; padding: 0 13.5px; min-height: 316px;}
.philosophy ul li dl {position: relative; width: 100%; height: 100%; border: 1px solid #ddd; border-radius: 20px; padding-top: 40px;}
.philosophy ul li dl::before {position: absolute; content: ''; width: 30px; height: 10px; border-radius: 10px; background-color: #ff6600; top: -5px; left: 50%; transform: translateX(-50%); z-index: 2;}
.philosophy ul li dl dt {max-width: 96px; width: 100%; margin: 0 auto;}
.philosophy ul li dl dt img {max-width: 100%; display: block; margin: 0 auto;}
.philosophy ul li dl dd {margin-top: 40px; text-align: center;}
.philosophy ul li dl dd strong {display: block; width: 100%; font-size: 20px; color: #1d1d1d; line-height: 1.6; font-weight: 600;}
.philosophy ul li dl dd p {font-size: 16px; color: #666; line-height: 1.75; margin-top: 20px;}

.bg {width: 100%; border-radius: 20px; overflow: hidden;}
.bg img {display: block; margin: 0 auto; max-width: 100%;}

.box_dot {position: relative;}
.box_dot::before {position: absolute; content: ''; width: 10px; height: 10px; border-radius: 50%; background-color: #190083; top: -5px; left: 50%; transform: translateX(-50%); z-index: 2;}
.box_dot.or::before {position: absolute; content: ''; width: 10px; height: 10px; border-radius: 50%; background-color: #ff6600; top: -5px; left: 50%; transform: translateX(-50%);}

.dot {position: relative; font-size: 20px; color: #666; padding-left: 20px; line-height: 1.9 !important;}
.dot::before {position: absolute; content: ''; width: 5px; height: 5px; border-radius: 50%; background-color: #190083; top: 13px; left: 0;}

/* s1_1 */
.s1_1 .arti01 {margin-top: 70px;}
.s1_1 .arti01 h4 {font-size: 28px; font-weight: 700; color: #1d1d1d; line-height: 1.6;}
.s1_1 .arti01 span {color: #ff6600; font-weight: 700;}
.s1_1 .arti01 p {font-size: 20px; color: #666; line-height: 1.9; margin-top: 15px; letter-spacing: 0;}
.s1_1 .arti01 p > strong {font-weight: 700; color: #1d1d1d;}
.s1_1 .arti01 p.last {margin-top: 20px; text-align: right; font-weight: 500; color: #333; letter-spacing: -.03em;}

.s1_1 .table-wrap {margin-top: 50px; width: 100%; border-top: 1px solid #3a4555;}
.s1_1 .table-wrap table {width: 100%; table-layout: fixed;}
.s1_1 .table-wrap table tr {border-bottom: 1px solid #ddd;}
.s1_1 .table-wrap table tr td {padding:15px 10px; text-align: center;}
.s1_1 .table-wrap table tr td p {font-size: 16px; line-height: 1.8; color: #666;}
.s1_1 .table-wrap table tr td.item {background-color: #f5f5f5; vertical-align: middle;}
.s1_1 .table-wrap table tr td.item p {color: #3a4555; font-weight: 600;}

/* s1_2 */

.s1_2 .inner {width: 100%; display: flex; gap: 27px;}
.s1_2 .inner .left {max-width: 374px; width: 100%; min-height: 273px;}
.s1_2 .inner .left .box {position: relative; width: 100%; height: 100%; border: 1px solid #ddd; border-radius: 20px; padding-top: 45px; padding-left: 30px;}
.s1_2 .inner .left .box::after {position: absolute; content: ''; width: 111px; height: 76px; bottom: 50px; right: 40px; background: url(../images/sub/ico_s12_04.png) 50% 50% no-repeat; background-size: auto;}
.s1_2 .inner .left .box h5 {font-size: 20px; font-weight: 600; color: #1d1d1d; line-height: 1.4;}
.s1_2 .inner .right {width: 1%; flex: 1 1 auto; background: url(../images/sub/ico_s12_05.png) calc(100% - 260px) 50% no-repeat; background-size: auto;}
.s1_2 .inner .right .improve {width: calc(100% + 27px); display: flex; margin: 0 -13.5px; align-items: center;}
.s1_2 .inner .right .improve .item {width: 50%; padding: 0 13.5px;}
.s1_2 .inner .right .improve .item h5 {position: relative; font-size: 20px; font-weight: 600; color: #ff6600; text-align: center; line-height: 1.6; padding: 20px 10px; border: 1px solid #ddd; border-radius: 20px; background-color: #fff;}
.s1_2 .inner .right .improve .item ul {width: 100%;}
.s1_2 .inner .right .improve .item ul li {position: relative; width: 100%; border: 1px solid #ddd; border-radius: 20px; padding: 20px 10px; background-color: #fff;}
.s1_2 .inner .right .improve .item ul li ~ li {margin-top: 30px;}
.s1_2 .inner .right .improve .item ul li p {font-size: 20px; color: #1d1d1d; font-weight: 500; line-height: 1.6; text-align: center;}

.s1_2 article:last-child .arti-cnt .img-bg {background-image: url(../images/sub/img_s12_02.jpg);}
.s1_2 article:last-child .arti-cnt > ul {position: relative; margin-top: 45px; display: flex; flex-wrap: wrap;}
.s1_2 article:last-child .arti-cnt > ul::after {position: absolute; content: ''; width: 1px; height: 40px; background-color: #ddd; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.s1_2 article:last-child .arti-cnt > ul li {width: 50%; padding-left: 40px;}

/* s1_3 */
.history-wrap {margin-top: 95px; width: 100%; display: flex; gap: 130px;}
.history-wrap .img-area {max-width: 500px; width: 100%; padding-top: 2px;}
.history-wrap .img-area h4 {font-size: 32px;font-weight: 700; color: #ff6600; font-family: 'montserrat'; text-align: right;}
.history-wrap .img-area p {font-size: 18px; font-weight: 300; color: #666; line-height: 1.55; margin-top: 25px; text-align: right;}
.history-wrap .img-area figure {margin-top: 30px; width: 100%;}
.history-wrap .img-area figure img {max-width: 100%; display: block; margin: 0 auto;}
.history-wrap .history {position: relative; width: 1%; flex: 1 1 auto;}
.history-wrap .history::before {position: absolute; content: ''; width: 1px; height: calc(100% - 15px); background-color: #190083; left: 0; top: 15px;}
.history-wrap .history .year {position: relative; width: 100%; padding-left: 125px;}
.history-wrap .history .year::before {position: absolute; content: ''; top: 15px; left: -9px; width: 19px; height: 19px; border-radius: 50%; background-color: #fff; border: 2px solid #190083; z-index: 2;}
.history-wrap .history .year::after {position: absolute; content: ''; top: 25px; left: 0; width: 95px; height: 1px; background-color: #ddd; z-index: 1;}
.history-wrap .history .year ~ .year {margin-top: 95px;}
.history-wrap .history .year:last-child {padding-bottom: 20px;}
.history-wrap .history .year h5 {font-size: 50px; font-weight: 500; color: #190083; font-family: 'montserrat';}
.history-wrap .history .year dl {width: 100%; display: flex; margin-top: 45px;}
.history-wrap .history .year dl ~ dl {margin-top: 35px;}
.history-wrap .history .year dl dt {max-width: 80px; width: 100%; font-size: 20px; font-weight: 600; color: #333; line-height: 1.6;}
.history-wrap .history .year dl dd {width: 1%; flex: 1 1 auto; font-size: 20px; color: #666; line-height: 1.6;}

.history-wrap .history .year.animated * {animation: text-right 1.2s both .3s;}



/* s1_4 */
.s1_4 .symbol {width: 100%; display: flex; gap: 40px; align-items: center;}
.s1_4 .symbol figure {max-width: 441px; width: 100%;}
.s1_4 .symbol .symbol_txt {width: 1%; flex: 1 1 auto;}
.s1_4 .symbol .symbol_txt h5 {font-size: 20px; font-weight: 700; color: #1d1d1d; line-height: 1.6;}
.s1_4 .symbol .symbol_txt h5 > span {color: #ff6600;}
.s1_4 .symbol .symbol_txt p {position: relative; padding-left: 20px; font-size: 18px; color: #4b4b4b; line-height: 1.6; margin-top: 40px; letter-spacing: -0.03em;}
.s1_4 .symbol .symbol_txt p ~ p {margin-top: 35px;}
.s1_4 .symbol .symbol_txt p::before {position: absolute; content: ''; width: 5px; height: 5px; border-radius: 50%; background-color: #ff6600; top: 10px; left: 0;}

.s1_4 .logo {display: flex; width: 100%; gap: 40px;}
.s1_4 .logo figure img {max-width: 100%; display: block; margin: 0 auto;}
.s1_4 .logo figcaption {font-size: 20px; font-weight: 700; color: #1d1d1d; line-height: 1.6; margin-top: 25px; text-align: center;}
.s1_4 .logo figcaption > span {color: #ff6600;}

.s1_4 .arti-cnt > p {font-size: 18px; line-height: 1.6; color: #666; letter-spacing: -0.025em;}
.s1_4 .arti-cnt > p > strong {color: #4b4b4b; font-weight: 600;}
.s1_4 .arti-cnt > p ~ p {margin-top: 40px;}
.s1_4 .color {margin-top: 45px; width: 100%;}
.s1_4 .color ul {width: calc(100% + 63px); margin: 0 -31.5px; display: flex;}
.s1_4 .color ul li {width: 33.3333%; padding: 0 31.5px;}
.s1_4 .color ul li dl {width: 100%;}
.s1_4 .color ul li dl dt {width: 100%; height: 117px;}
.s1_4 .color ul li:nth-of-type(1) dl dt {background-color: #ff6600;}
.s1_4 .color ul li:nth-of-type(2) dl dt {background-color: #5d5d5d;}
.s1_4 .color ul li:nth-of-type(3) dl dt {background-color: #000000;}
.s1_4 .color ul li dl dd {margin-top: 25px; font-size: 16px; color: #666; line-height: 1.5;}
.s1_4 .color ul li dl dd b {font-size: 20px; font-weight: 700; display: block; margin-bottom: 10px;}
.s1_4 .color ul li:nth-of-type(1) dl dd b {color: #ff6600;}
.s1_4 .color ul li:nth-of-type(2) dl dd b {color: #5d5d5d;}
.s1_4 .color ul li:nth-of-type(3) dl dd b {color: #000000;}

.s1_4 .down-btn {margin-top: 100px; width: 100%; display: flex; gap: 30px; align-items: center; justify-content: center;}
.s1_4 .down-btn > a {display: block; max-width: 200px; width: 100%; border: 1px solid #000; color: #000; font-size: 18px; text-align: center; line-height: 48px; border-radius: 30px; font-weight: 500; transition: all .2s linear;}
.s1_4 .down-btn > a:hover {background-color: #ff6600; color: #fff; border-color: #ff6600}

/* s1_5 */
.certi-pop {display: none; position: fixed; width: 100%; height: 100%; background-color: rgba(0,0,0, .3); z-index: 1001; top: 0; left: 0;}
.certi-pop .popup {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 700px; max-height: calc(100dvh - 50px); width: 100%; padding: 0 15px; overflow: auto;}
.certi-pop .popup::-webkit-scrollbar {display: none;}
.certi-pop .popup .inner {padding-top:100px; position: relative; width: 100%; background-color: #fff; border-radius: 20px; overflow: hidden;}
/* .certi-pop .popup .inner a {display: block; position: absolute; width: 20px; height: 20px; top: 30px; right: 30px;} */
.certi-pop .popup .inner a {display: block; width: 100%; position: absolute; height: 70px; background-color: #190083; top: 0; left: 0; cursor: default; padding-top: 22px;}
.certi-pop .popup .inner a img {margin-left: auto; margin-right: 25px; display: block; cursor: pointer; }
.certi-pop .popup .inner .pop-img {width: 100%; padding: 0 30px;}
.certi-pop .popup .inner .pop-img img {display: block; width: 100%; max-width: 75%; margin: 0 auto; box-shadow: 5px 0px 15px rgba(0,0,0,0.1);}
.certi-pop .popup .inner .pop-tit {position: relative; font-size: 22px; padding: 25px 10px; color: #202020; font-weight: 500; text-align: center; border: 1px solid #ddd; border-radius: 14px; margin-top: 30px;}
.certi-pop .popup .inner .pop-tit::before {position: absolute; content:''; width: 40px; height: 14px; top: -7px; left: 50%; transform: translateX(-50%); background-color: #190083; border-radius: 30px;}

/* s1_6 */
.s1_6 article {position: relative; width: 100%; padding: 53px 20px; border-bottom: 1px solid #ddd;}
.s1_6 article .inner { display: flex; gap: 40px; align-items: center;}
.s1_6 article .img {max-width: 371px; border: 1px solid #ddd; width: 100%;}
.s1_6 article .img img {max-width: 100%; display: block; margin: 0 auto; width: 100%;}
.s1_6 article .info {width: 1%; flex: 1 1 auto;}
.s1_6 article .info h5 {font-size: 24px;font-weight: 600; color: #1d1d1d; margin-bottom: 20px;}
.s1_6 article .info dl {display: flex; width: 100%;}
.s1_6 article .info dl dt.dot {max-width: 190px; width: 100%; font-size: 16px; font-weight: 600; color: #3a4555;}
.s1_6 article .info dl dd {font-size: 16px; color: #666; line-height: 1.9;}
.s1_6 article .mark {position: absolute; width: 62px; height: 62px; border-radius: 50%; top: 53px; right: 55px; background: url(../images/sub/ico_mark.png) 50% 50% no-repeat; background-size: auto; background-color: #ccc; transition: all .3s linear; cursor: pointer;}
.s1_6 article .mark.on {background-color: #190083;}
.s1_6 .arti01 { border-top: 1px solid #333;}

.s1_6 .map-box {width: 100%; height: 0; margin-top: 40px; overflow: hidden; visibility: hidden; transition: all .3s linear;}
.s1_6 .map-box.show {height: 350px; visibility: visible;}
.root_daum_roughmap {width: 100% !important; height: 100% !important;}
.root_daum_roughmap .wrap_map {height: 100% !important;}
.root_daum_roughmap .map_border {display: none !important;}
.s1_6 .map-box.show .root_daum_roughmap {width: 100% !important; height: 350px !important;}
.s1_6 .map-box.show .root_daum_roughmap .wrap_map {height: 350px !important;}

/* s2_1 */
.s2_1 figure {width: 100%;}
.s2_1 figure img {max-width: 100%; display: block; margin: 0 auto;}


/* s2_2 */
.s2_2 .section-header {margin-bottom: 0;}

/* s2_2_3 */
.s2_2_3 .arti-cnt .img-box li {width: auto;}

/* s2_2_5 */
.s2_2_5 .arti-cnt .img-box li figure figcaption {font-size: 13px;}

/* s3_1 */
.s3_1 .inner .left .box::after {background-image: url(../images/sub/ico_s31_01.png); width: 104px; height: 89px;}
.s3_1 .inner .right {background-image: url(../images/sub/ico_s31_02.png);}
.s3_1 .inner .right .improve .item h5 {color: #190083;}

.s3_1 .research {width: 100%;}
.s3_1 .research ul {display: flex; width: calc(100% + 34px); margin: 0 -17px; flex-wrap: wrap;}
.s3_1 .research ul li {width: 50%; padding: 0 17px; min-height: 325px;}
.s3_1 .research ul li:nth-of-type(2) ~ li {margin-top: 34px;}
.s3_1 .research ul li figure {position: relative; width: 100%; height: 100%; border-radius: 20px; overflow: hidden;}
.s3_1 .research ul li figure img {max-width: 100%; display: block; margin: 0 auto; width: 100%; height: 295px;}
.s3_1 .research ul li figcaption {position: absolute; width: 100%; border: 1px solid #ddd; border-radius: 20px; background-color: #fff; padding: 15px 10px; z-index: 2; bottom: 0; left: 0;}
.s3_1 .research ul li figcaption::before {position: absolute; content: ''; width: 30px; height: 10px; background-color: #ff6600; top: -5px; left: 50%; transform: translateX(-50%); z-index: 2; border-radius: 10px;}
.s3_1 .research ul li figcaption p {font-size: 20px; font-weight: 500; text-align: center; color: #1d1d1d; line-height: 1.5;}

.s3_1 .certification ul {display: flex; width: calc(100% + 27px); margin: 0 -13.5px;}
.s3_1 .certification ul li {width: 33.3333%; padding: 0 13.5px; min-height: 525px;}
.s3_1 .certification ul li figure {position: relative; border: 1px solid #ddd; width: 100%; height: 100%; border-radius: 20px; overflow: hidden;}
.s3_1 .certification ul li figure img {max-width: 100%; display: block; margin: 0 auto; height: calc(100% - 61px);}
.s3_1 .certification ul li figcaption {position: absolute; width: 100%; border-top: 1px solid #ddd; border-radius: 20px; background-color: #fff; padding: 15px 10px; z-index: 2; bottom: 0; left: 0;}
.s3_1 .certification ul li figcaption::before {position: absolute; content: ''; width: 30px; height: 10px; background-color: #190083; top: -5px; left: 50%; transform: translateX(-50%); z-index: 2; border-radius: 10px;}
.s3_1 .certification ul li figcaption p {font-size: 20px; font-weight: 500; text-align: center; color: #1d1d1d; line-height: 1.5;}

.s3_1 .research.ty2 .box_dot {padding: 25px 20px 40px; border-radius: 20px; border: 1px solid #ddd}
.s3_1 .research.ty2 .box_dot h5 {font-size: 20px; font-weight: 500; color: #1d1d1d; text-align: center; line-height: 1.5; margin-bottom: 20px;}
.s3_1 .research.ty2 .box_dot img {max-width: 100%; display: block; margin: 0 auto;}

/* s4_1 */
.s4_1 article .arti-cnt .img-bg {background-image: url(../images/sub/img_s41_01.jpg);}
.s4_1 .philosophy {margin-top: 130px;}
.s4_1 .philosophy ul li {min-height: 275px;}
.s4_1 .philosophy ul li dl {padding-top: 45px;}
.s4_1 .philosophy ul li dl::before {width: 38px; height: 38px; border-radius: 50%; color: #fff; font-size: 22px; font-weight: 600; line-height: 38px; text-align: center; top: -19px;}
.s4_1 .philosophy ul li:nth-of-type(1) dl::before {content: 'E';}
.s4_1 .philosophy ul li:nth-of-type(2) dl::before {content: 'S';}
.s4_1 .philosophy ul li:nth-of-type(3) dl::before {content: 'G';}
.s4_1 .philosophy ul li dl dt {max-width: 80px;}
.s4_1 .philosophy ul li dl dd {margin-top: 20px;}
.s4_1 .philosophy ul li dl dd strong {color: #ff6600;}
.s4_1 .philosophy ul li dl dd p {margin-top: 15px;}
.s4_1 article .arti-cnt figure {width: 100%; margin-top: 110px;}
.s4_1 article .arti-cnt figure img {max-width: 100%; margin: 0 auto; display: block;}

/* s4_2 */
.s4_2 article {margin-top: 30px;}
.s4_2 article .tit {width: 100%; border-radius: 20px; background-color: #f4f4f4; padding: 30px 10px; text-align: center; font-size: 20px; font-weight: 600; color: #1d1d1d;}
.s4_2 .charter.box_dot.or::before {width: 16px; height: 16px; top: -8px;}
.s4_2 .charter {position:relative; margin-top: 35px; border: 1px solid #ddd; border-radius: 20px; padding: 55px 0 85px; display: flex;}
.s4_2 .charter ol {position: relative; width: 50%; padding-left: 70px;}
.s4_2 .charter ol:nth-of-type(2n)::before {position: absolute; content: ''; width: 1px; height: calc(100% - 40px); top: 50%; left: 0; transform: translateY(-50%); background-color: #ddd;}
.s4_2 .charter ol li {width: 100%;}
.s4_2 .charter ol li ~ li {margin-top: 30px;}
.s4_2 .charter ol li dl {width: 100%;}
.s4_2 .or_txt {font-size: 18px; font-weight: 500; color: #ff6600; line-height: 1.6;}
.s4_2 .dash {font-size: 18px; color: #4b4b4b; line-height: 1.6; margin-top: 5px;}
.s4_2 .top_txt {padding: 0 70px; width: 100%; margin-bottom: 45px;}
.s4_2 article .s_tit {padding: 20px 5px; font-size: 18px; margin-bottom: 35px; border-radius: 15px;}


/* s4_2_2 */
.s4_2_2 .charter {flex-wrap: wrap;}
.s4_2_2 .charter ol {padding: 0 70px;}

/* s4_3 */
.s4_3 .tab-3dep {display: none;}
.s4_3 .quality {margin-top: 35px;}
.s4_3 .quality ul {width: calc(100% + 48px); margin: 0 -24px; display: flex; position: relative;}
.s4_3 .quality ul::after {position: absolute; content:''; width: 827px; height: 61px; bottom: -55px; left: 50%; transform: translateX(-50%); background:url(../images/sub/ico_arrow_l.png) 50% 50% no-repeat; background-size: auto;}
.s4_3 .quality ul li {position: relative; width: 33.3333%; padding: 0 24px; min-height: 280px;}
.s4_3 .quality ul li:not(:last-child)::after {position: absolute; content:''; width: 60px; height: 12px; background:url(../images/sub/ico_arrow_s.png) 50% 50% no-repeat; background-size: auto; top: 50%; right: -30px; transform: translateY(-50%); z-index: 2;}
.s4_3 .quality ul li dl {position: relative; width: 100%; height: 100%; border-radius: 20px; border: 1px solid #ddd; padding-top: 70px;}
.s4_3 .quality ul li dl dt {position: absolute; width: calc(100% + 2px); top: -1px; left: 50%; transform: translateX(-50%); padding: 20px 10px; font-size: 20px; font-weight: 500; background-color: #f4f4f4; border-radius: 20px; text-align: center; line-height: 1.6; color: #1d1d1d;}
.s4_3 .quality ul li dl dd {width: 100%; height: calc(100% - 70px); padding: 20px 40px 0;}
.s4_3 .dot {font-size: 18px; color: #4b4b4b; letter-spacing: -0.05em;} 
.s4_3 .dot ~ .dot {margin-top: 25px;}
.s4_3 .box_dot::before {display: none;}

.s4_3 .step {overflow: hidden; width: 100%; padding-right: 95px; position: relative;}
.s4_3 .step::after {position: absolute; content: ''; width: 102px; height: 611px; background: url(../images/sub/ico_arrow2.png) 50% 50% no-repeat; background-size: auto; bottom: 120px; right: 0;}
.s4_3 .step ul {display: flex; flex-wrap: wrap; width: calc(100% + 95px); margin: 0 -47.5px; position: relative;}
.s4_3 .step ul li {width: 50%; padding: 0 47.5px;}
.s4_3 .step ul li:nth-of-type(2) ~ li {margin-top: 95px;}
.s4_3 .step ul li figure {width: 100%;}
.s4_3 .step ul li figure img {max-width: 100%; display: block; margin: 0 auto;}
.s4_3 .step ul li figcaption {position: relative; margin-top: 20px; width: 100%; border: 1px solid #ddd; border-radius: 20px; padding: 30px; min-height: 255px; height: 100%;}
.s4_3 .step ul li figcaption::before {position: absolute; content: ''; width: 30px; height: 10px; border-radius: 10px; background-color: #ff6600; top: -5px; left: 50%; transform: translateX(-50%);}
.s4_3 .step ul li figcaption::after {position: absolute; content: ''; width: 106px; height: 12px; top: 50%; right: -100px; transform: translateY(-50%); background: url() 50% 50% no-repeat; background-size: auto; z-index: 2;}
.s4_3 .step ul li:nth-of-type(1) figcaption::after {background-image: url(../images/sub/ico_arrow.png);}
.s4_3 .step ul li:nth-of-type(3) figcaption::after {background-image: url(../images/sub/ico_arrow.png); transform: rotate(180deg); right: -102px;}
.s4_3 .step ul li figcaption strong {font-size: 22px; font-weight: 600; color: #ff6600; line-height: 1.6; display: block; text-align: center;}
.s4_3 .step ul li figcaption strong > span {font-size: 18px; font-weight: 500;}
.s4_3 .step ul li figcaption p {font-size: 16px; color: #666; text-align: center; line-height: 1.75; margin-top: 20px;}

.s4_3 .certification ul {width: calc(100% + 18px); margin: 0 -9px;}
.s4_3 .certification ul li {width: 25%; padding: 0 9px; min-height: 412px;}

.s4_4_1 .top_txt {margin-bottom: 10px; width: 100%;}
.s4_4_1 .charter { margin-top: 80px; min-height: auto; flex-wrap: wrap;}
.s4_4_1 .charter ol {padding: 0 70px;}
.s4_4_1 article {margin-top: 0;}
.s4_4_1 article .tit {width: calc(100% - 140px); margin: 45px auto 35px; border-radius: 15px; padding: 15px 10px; font-size: 18px;}

.s4_4_2 .top_txt.mb20 {margin-bottom: 20px;}

/* s4_5 */
.s4_5 article:nth-of-type(1) {margin-bottom: 85px;}
.s4_5 .report {width: 100%; margin-top: 85px;}
.s4_5 .report ul {width: calc(100% + 130px); margin: 0 -65px; display: flex;}
.s4_5 .report ul li {position: relative; width: 25%; padding: 0 65px; min-height: 370px;}
.s4_5 .report ul li:not(:last-child)::after {position: absolute; content: ''; width: 144px; height: 12px; top: 50%; right: -72px; transform: translateY(-50%); background: url(../images/sub/ico_arrow_b.png) 50% 50% no-repeat; background-size: auto; z-index: 2;}
.s4_5 .report ul li dl {position: relative; width: 100%; height: 100%; border: 1px solid #ddd; border-radius: 20px; padding: 50px 20px 20px;}
.s4_5 .report ul li dl::before {position: absolute; content: ''; width: 30px; height: 10px; border-radius: 10px; background-color: #190083; top: -5px; left: 50%; transform: translateX(-50%);}
.s4_5 .report ul li dl dt {max-width: 80px; width: 100%; margin: 0 auto;}
.s4_5 .report ul li dl dt img {max-width: 100%; display: block; margin: 0 auto;}
.s4_5 .report ul li dl dd {margin-top: 35px;}
.s4_5 .report ul li dl dd b {display: block; text-align: center; font-size: 18px; font-weight: 600; color: #190083; line-height: 1.6;}
.s4_5 .report ul li dl dd p {font-size: 16px; color: #666; line-height: 1.75; text-align: center; margin-top: 15px;}

.s4_5 .arti-cnt p {color: #190083; margin-bottom: 20px;}
.s4_5 .arti-cnt p.dot {color: #4b4b4b; margin-bottom: 0; line-height: 1.65 !important;}
.s4_5 .privacy {width: 100%; margin-top: 35px;}
.s4_5 .privacy ul {display: flex; gap: 18px; width: 100%;}
.s4_5 .privacy ul li {flex: 1 1 auto;}
.s4_5 .privacy ul li dl {width: 100%;}
.s4_5 .privacy ul li dl dt {padding: 20px 0; font-size: 20px; font-weight: 600; color: #1d1d1d; background-color: #f4f4f4; border-radius: 14px; text-align: center;}
.s4_5 .privacy ul li dl dd {position: relative; width: 100%; margin-top: 25px; text-align: center; font-size: 18px; font-weight: 500; color: #1d1d1d; line-height: 1.6; padding: 15px 30px; border: 1px solid #ddd; border-radius: 15px; white-space: nowrap;}

.type.radio {display:flex; flex-wrap:wrap; gap: 13px; justify-content: center;}
.radio label {font-size:18px; font-weight:500; color:#ff6600; line-height:1.6;}
/* .radiobox {display:inline-block; position:relative; vertical-align:middle; margin-top:-.2em; font-size:20px; color:#000;}
.radiobox input {position:absolute; top:0; left:0; width:0; height:0; border:0; opacity:0; z-index:-1;}
.radiobox label {display:inline-block;}
.radiobox label:before {content:""; display:inline-block; vertical-align:middle; margin:-.2em 7px 0 0; width:16px; height:16px; background-color:#fff; border:1px solid #ededed; border-radius:3px;}
.radiobox input:checked + label:before {background:#ff6600 url(../images/sub/checkbox_s.png) 50% 50% no-repeat; border-color: #ff6600;}
.radiobox input:focus + label:before {outline:0;} */

.s4_5 .inquiry-wrap {border-bottom: 1px solid #000;}

/* s6_1 */
.talent {width: 100%; display: flex; align-items: center;}
.talent ~ .talent {margin-top: 80px;}
.talent.rev {flex-direction: row-reverse;}
.talent > div {width: 50%;}
.talent .img-box {border-radius: 20px; overflow: hidden;}
.talent .img-box img {max-width: 100%; display: block; margin: 0 auto; width: 100%;}
.talent .txt-box {padding-left: 120px;}
.talent .txt-box h5 {position: relative; padding-bottom: 5px; line-height: 1.6; font-size: 22px; font-weight: 600; color: #1d1d1d;}
.talent .txt-box h5::after {position: absolute; content: ''; width: 38px; height: 3px; background-color: #ff6600; bottom: 0; left: 0;}
.talent .txt-box p {font-size: 16px; color: #666; line-height: 1.75; margin-top: 10px;}

/* s6_2 */
.bg-box {width: 100%; height: 337px; border-radius: 20px; background: url(../images/sub/img_s52_01.jpg) 50% 50% no-repeat; background-size: cover; display: flex; align-items: center; justify-content: center;}
.bg-box h5 {font-size: 30px; font-weight: 700; color: #fff; line-height: 1.6; text-align: center;}
.s6_2 .philosophy {margin-top: 115px;}
.s6_2 .philosophy ul {width: calc(100% + 34px); margin: 0 -17px;}
.s6_2 .philosophy ul li {padding: 0 17px; min-height: 360px;}
.s6_2 .philosophy ul li dl {padding-top: 60px;}
.s6_2 .philosophy ul li dl dt {max-width: 90px;}

/* s6_3 */
.s6_3 .philosophy {margin-top: 0;}
.s6_3 .philosophy ul {width: calc(100% + 35px); margin: 0 -17.5px; flex-wrap: wrap;}
.s6_3 .philosophy ul li {min-height: 255px; padding: 0 17.5px; width: 25%;}
.s6_3 .philosophy ul li:nth-of-type(4) ~ li {margin-top: 35px;}
.s6_3 .philosophy ul li dl {padding-top: 55px;}
.s6_3 .philosophy ul li dl dt {max-width: 81px;}
.s6_3 .philosophy ul li dl dd {margin-top: 25px;}
.s6_3 .philosophy ul li dl dd p {color: #333; font-size: 18px; line-height: 1.6;}
.s6_3 article:nth-of-type(2) .philosophy ul li dl::before {background-color: #190083;}

/* s6_4 */
.s6_4 .bg-box {background-image: url(../images/sub/img_s54_01.jpg); margin-bottom: 120px;}
.s6_4 .doc-review {position: relative;width: 100%; padding-right: 98px;}
.s6_4 .doc-review::after {position: absolute; content: ''; width: 106px; height: 368px; top: 50%; right: -1px; transform: translateY(-50%); background: url(../images/sub/ico_arrow_b2.png) 50% 50% no-repeat; background-size: auto;}
.s6_4 .doc-review ul {width: calc(100% + 143px); margin: 0 -71.5px; display: flex; flex-wrap: wrap;}
.s6_4 .doc-review ul li {position: relative; width: 33.3333%; padding: 0 71.5px; min-height: 270px;}
.s6_4 .doc-review ul li::after {position: absolute; content: ''; width: 157px; height: 12px; background: url(../images/sub/ico_arrow2_b.png) 50% 50% no-repeat; background-size: auto; top: 50%; right: -78px; transform: translateY(-50%); z-index: 2;}
.s6_4 .doc-review ul li:nth-of-type(3)::after, .s6_4 .doc-review ul li:nth-of-type(4)::after {display: none;}
.s6_4 .doc-review ul li:nth-of-type(5)::after {transform: translateY(-50%) rotate(180deg); right: -79px;}
.s6_4 .doc-review ul li:nth-of-type(6)::after {background-image: url(../images/sub/ico_arrow3.png); right: -79px;}
.s6_4 .doc-review ul li:nth-of-type(3) ~ li {margin-top: 90px;}
.s6_4 .doc-review ul li:nth-of-type(4) {order: 6;}
.s6_4 .doc-review ul li:nth-of-type(5) {order: 5;}
.s6_4 .doc-review ul li dl {position: relative; width: 100%; height: 100%; border: 1px solid #ddd; border-radius: 14px; padding-top: 50px;}
.s6_4 .doc-review ul li dl::before {position: absolute; content: ''; width: 30px; height: 10px; border-radius: 10px; background-color: #190083; top: -5px; left: 50%; transform: translateX(-50%);}
.s6_4 .doc-review ul li dl dt {max-width: 80px; margin: 0 auto; width: 100%;}
.s6_4 .doc-review ul li dl dt img {max-width: 100%; margin: 0 auto; display: block;}
.s6_4 .doc-review ul li dl dd {margin-top: 40px; text-align: center;}
.s6_4 .doc-review ul li dl dd strong {display: block; font-size: 18px; font-weight: 600; color: #190083;}
.s6_4 .doc-review ul li dl dd p {margin-top: 20px; font-size: 18px; color: #666;}
.s6_4 .doc-review ul li:nth-of-type(6) dl::before {background-color: #ff6600;}
.s6_4 .doc-review ul li:nth-of-type(6) dl dd strong {color: #ff6600;}

.s6_4 .doc-info {margin-top: 110px; width: 100%;}
.s6_4 .doc-info ul {width: 100%; display: flex; gap: 52px;}
.s6_4 .doc-info ul li {flex: 1 1 auto; width: 1%;}
.s6_4 .doc-info ul li dl {width: 100%;}
.s6_4 .doc-info ul li dl dt {width: 100%; padding: 25px 10px; font-size: 20px; font-weight: 600; color: #1d1d1d; background-color: #f4f4f4; border-radius: 14px; text-align: center;}
.s6_4 .doc-info ul li dl dd {margin-top: 40px; border: 1px solid #ddd; border-radius: 14px; padding: 30px 30px 30px 40px; min-height: 130px;}
.s6_4 .doc-info ul li dl .box_dot.or::before {width: 16px; height: 16px; top: -8px;}
.s6_4 .doc-info ul li dl dd p {font-size: 18px; font-weight: 500; line-height: 1.9; color: #666;}
.s6_4 .doc-info ul li dl dd p a {display: block; color: #666;}
.s6_4 .doc-info .dot::before {background-color: #ff6600;}

.go_site {display: block; font-size: 20px; font-weight: 600; color: #fff; max-width: 450px; width: 100%; padding: 25px 10px; background-color: #ff6600; border-radius: 14px; margin: 80px auto 0; text-align: center; transition: all .3s linear;}
.go_site:hover {background-color: #190083;}



