@charset "utf-8";
.company-info .company-img {margin-bottom: 60px;}
.company-info .boxes {display:flex; flex-wrap:wrap; margin: 0 -15px;}
.company-info .boxes .box {width: 33.33333%; padding: 0 15px;}
.company-info .boxes .box .text {padding: 25px; border:1px solid #ddd; border-top:none; height: 180px;}
.company-info .boxes .box .text .blue {margin-bottom: 15px; color:#2e4797; font-size:20px; font-weight:700; line-height:1.5em; letter-spacing: -0.03em;}
.company-info .boxes .box .text ul li {padding-left: 0.67em; text-indent: -0.67em; color:#505050; font-size:16px; font-weight:300; line-height:1.5em; letter-spacing: -0.03em;}

.group .it-com {display:flex; flex-wrap:wrap; margin: 0 -40px;}
.group .it-com .com {width: 50%; padding: 0 40px;}
.group .it-com .com .con .img {position: relative; border:1px solid #ddd; height: 568px; display: flex; align-items: center; justify-content: center;}
.group .it-com .com .con .img:before {content:""; position: absolute; width: 54px; height: 42px; background: url(../images/sub/it-arrow.png); left: -68px;}
.group .it-com .com:first-of-type .con .img:before {display:none;}
.group .it-com .com:nth-of-type(2) .con .img {background-color: #fafafa;}
.group .it-com .com .con .tt {padding: 25px 0; background-color: #104b86; text-align: center; color:#fff; font-size:20px; font-weight:700; line-height:1.5em; letter-spacing: -0.03em;}

.it-text {text-align: center; margin-top: 60px;}
.it-text .tit {color:#104b86; font-size:30px; font-weight:700; line-height:1.5em; letter-spacing: -0.03em;}
.it-text .txt {margin-top: 23px;color:#505050; font-size:18px; font-weight:300; line-height:1.556em; letter-spacing: -0.03em;}

.history-img {margin-bottom: 50px; background: url(../images/sub/history-img.jpg)50% 50% no-repeat; background-size: cover; height: 440px;}
.history-img .text {width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center;}
.history-img .text h2 {color: #fff; font-size:58px; line-height: 1.5em; font-weight: 900; letter-spacing: -.03em;}
.history-img .text p {color: #fff; font-size:16px; line-height: 1.5em; font-weight: 400; letter-spacing: -.04em; margin-top: 10px;}

.history .group {position: relative; margin-bottom: 30px;}
.history .group:before {content:""; position: absolute; left:50%; width:1px; bottom:-70%; top:-50px; background:#ddd; z-index:-1; }
.history .group:last-of-type {margin-bottom: 100px;}
.history .group:last-of-type:before {bottom:-80px;}
.history .group:last-of-type:after {content:""; position: absolute; width: 34px; height: 34px; background: url(../images/sub/his-circle.png); left: 50%; bottom: -90px;  transform:translateX(-50%);}
.history .group .inner {position: relative; }
.history .group .inner .bullet {position:absolute; width:12px; height:12px; background-color: #d5d6da; border-radius:50px; top:10px; right: 0; transform:translateX(50%);}
.history .group:nth-child(odd) .inner {margin-left: 50%; padding-left: 24px;}
.history .group:nth-child(odd) .inner .bullet {left: 0; transform:translateX(-50%);}
.history .group:nth-child(even) .inner {width: 50%; text-align: end; padding-right: 24px;}

.certificate ul {display:flex; flex-wrap:wrap; margin: -16px;}
.certificate ul li {width: 33.33333%; padding: 16px;}
.certificate ul li .txt {margin-top: 12px; text-align: center; color: #505050; font-size:18px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}

.client .tit {text-align: center; margin-bottom: 30px;}
.client .tit p {margin-top: 18px; color: #2e4797; font-size:24px; line-height: 1.5em; font-weight: 700; letter-spacing: -.03em;}
.client .tit .img img {height: 92px;}
.client ul {display:flex; flex-wrap:wrap; margin: -15px;}
.client ul li {width: 33.33333%; padding: 15px;}
.client ul li .tt {margin-top: 12px; text-align: center; color: #505050; font-size:18px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}

.map-info {margin-top: 30px;}
.map-info ul {display:flex; flex-wrap:wrap;}
.map-info ul li {position: relative; padding: 40px; width: 50%; border:1px solid #ddd; overflow: hidden;}
.map-info ul li:first-of-type {border-right:none;}
.map-info ul li:first-of-type:before {content:""; position: absolute; width: 123px; height: 120px; background: url(../images/sub/map-icon.png)50% 50% no-repeat; right: 60px; bottom: -10px;}
.map-info ul li:nth-of-type(2):before {content:""; position: absolute; width: 123px; height: 123px; background: url(../images/sub/tel-icon.png)50% 50% no-repeat; right: 60px; bottom: -10px;}
.map-info ul li .tit {margin-bottom: 20px; color: #2e4797; font-size:18px; line-height: 1.5em; font-weight: 700; letter-spacing: -.03em;}
.map-info ul li .txt {color: #505050; font-size:22px; line-height: 1.273em; font-weight: 400; letter-spacing: -.03em;}

.business .group {margin-bottom: 100px;}
.business .group:last-of-type {margin-bottom: 0;}
.business .group-bg {background-color: #fafafa; padding: 60px 0;}
.business .group-bg .txt {margin-top: 30px; text-align: center; color: #505050; font-size:18px; line-height: 1.8em; font-weight: 300; letter-spacing: -.03em;}
.business .group-bg .txt span {color: #2e4797; font-size:20px; font-weight: 700;}
.business .group-bg3 .contain {display:flex; flex-wrap:wrap;}
.business .group-bg3 .contain .bg-images {width: 50%;}
.business .group-bg3 .contain .bg-images:first-of-type {padding-right: 16px;}
.business .group-bg3 .contain .bg-images:last-of-type {padding-left: 16px;}
.business .group-bg3 .contain .bg-images .tt {text-align: center; margin-top: 6px;}
.business .group-bg3 .contain .bg-images .tt p {}

.business .image {position: relative;}
.business .image .text {padding: 50px; position: absolute; top: 0; left: 0; height: 100%; width: 50%; display: flex; flex-direction: column; justify-content: center;}
.business .image .text.t1 {background: url(../images/sub/snp-business-text.png);}
.business .image .text.t2 {background: url(../images/sub/snp-business-text2.png);}
.business .image .text.t3 {background: url(../images/sub/snp-business-text3.jpg);}
.business .image .text .tit {margin-bottom: 22px; color: #fff; font-size:30px; line-height: 1.5em; font-weight: 700; letter-spacing: -.03em;}
.business .image .text .txt p {margin-bottom: 12px; color: #fff; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.business .items {display:flex; flex-wrap:wrap; margin: -16px;}
.business .items .item {width: 50%; padding: 16px;}
.business .items2 {margin-top: 15px;}
.business .items2 .item {width: 25%;}
.business .items2 .tt {margin-top: 10px; text-align: center; color: #505050; font-size:18px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}
.business .items .tt2 {margin-top: 10px; text-align: center; color: #505050; font-size:18px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}

.business .items .item ul {display:flex; flex-wrap:wrap; margin: 0 -33px;}
.business .items .item ul li {position: relative; width: 50%; padding: 0 33px;}
.business .items .item ul li:nth-of-type(2):before {content:""; position: absolute; width: 54px; height: 42px; background: url(../images/sub/it-arrow.png); left:-29px; top: 50%; transform:translateY(-50%);}

.technology .group {padding: 100px 0;}
.technology .group:last-of-type {padding-bottom: 0;}
.technology .group-bg:last-of-type {padding-bottom: 100px;}
.technology .group-bg {background-color: #fafafa;}
.technology .group .con {display:flex; flex-wrap:wrap; margin: 0 -15px;  padding-bottom: 50px;}
.technology .group .con > div {width: 50%; padding: 0 15px;}
.technology .group h2 {margin-bottom: 60px; color: #104b86; font-size:30px; line-height: 1.5em; font-weight: 700; letter-spacing: -.03em;}
.technology .group .con .table table {width: 100%; border-collapse: collapse; border-top:1px solid #a8a8a8;}
.technology .group .con .table table th {border:1px solid #ddd; border-top:none; padding: 15px 0; color: #2c2c2c; font-size:18px; line-height: 1.5em; font-weight: 500; letter-spacing: -.03em;}
.technology .group .con .table table td {border:1px solid #ddd; padding: 15px 0; text-align: center; color: #505050; font-size:16px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con .table table td.sum {font-weight: 500;}
.technology .group .con .table table tr th:first-child,
.technology .group .con .table table tr td:first-child {border-left:0;}
.technology .group .con .table table tr th:last-child,
.technology .group .con .table table tr td:last-child {border-right:0;} 

.technology .group .con2 h3 {margin-bottom: 25px; position: relative; color: #2c2c2c; font-size:20px; line-height: 1.5em; font-weight: 700; letter-spacing: -.03em; padding-left: 20px;}
.technology .group .con2 h3.only {margin-bottom: 0; line-height: 2em;}
.technology .group .con2 h3.only:before {top: 15px;}
.technology .group .con2 h3:before {content:""; position: absolute; width: 10px; height: 10px; background: url(../images/sub/con2-mark.png); left: 0; top:10px;}
.technology .group .con2 p {padding-left: 0.67em; text-indent: -0.67em;color: #505050; font-size:16px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em; margin-left: 20px;}
.technology .group .con2 .white-box {display:flex; flex-wrap:wrap;}	
.technology .group .con2 .white-box > div {padding: 40px; width: 50%; background-color: #fff; border:1px solid #ddd; display: flex; flex-direction: column;}
.technology .group .con2 .white-box2 > div {padding: 0;}
.technology .group .con2 .white-box .img {border-right:none; display:flex; justify-content: center; align-items: center;}
.technology .group .con2 .white-box2 .list {padding: 30px;}
.technology .group .con2 .white-box .list .tit {margin-bottom: 18px; position: relative; color: #2c2c2c; font-size:18px; line-height: 1.4em; font-weight: 500; letter-spacing: -.03em; padding-left: 30px;}
.technology .group .con2 .white-box .list .tit:before {content:""; position: absolute; width: 22px; height: 19px; background: url(../images/sub/con2-whitebox-mark.png); left: 0; top:3px;}
.technology .group .con2 .white-box .list .txt {color: #505050; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con2 .white-box .list ul {}
.technology .group .con2 .white-box .list ul li {padding-left: 0.67em; text-indent: -0.67em; color: #505050; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con2 .white-box .list .sub-tit {color: #2c2c2c; font-size:16px; line-height: 1.625em; font-weight: 500; letter-spacing: -.03em;}

.technology .group2 .con {margin: 0;}
.technology .group2 .con .img {padding: 0;}
.technology .group2 .con .text {display:flex; align-items: center; padding: 50px; border:1px solid #ddd; color: #505050; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.technology .group2 .img-list {margin-bottom: 60px;}
.technology .group2 .img-list ul {display:flex; flex-wrap:wrap; margin: 0 -16px;}
.technology .group2 .img-list ul li {width: 20%; padding: 0 16px;}
.technology .group2 .con2 .white-box {display:block;}
.technology .group2 .con2 .white-box ul {display:flex; flex-wrap:wrap; margin: -15px;}
.technology .group2 .con2 .white-box ul li {width: 50%; padding: 15px;}
.technology .group2 .con2 .white-box ul li .img {border:1px solid #ddd;}
.technology .group2 .con2 .white-box ul li .img.img_H {height: 346px;}
.technology .group2 .con2 .white-box ul li .text {margin-top: 10px; text-align: center; color: #505050; font-size:16px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}
.technology .group2 .con2 .white-box ul li .text span {color: #2c2c2c; font-size:18px; line-height: 1.5em; font-weight: 500; letter-spacing: -.03em;}

.technology2 .group .con {margin: -15px;  padding-bottom: 0;}
.technology2 .group .con > div {width: 100%; padding: 15px;}
.technology2 .group .con img {border:1px solid #ddd;}

.technology .group .images {margin-bottom: 60px; background-color: #fff; border:1px solid #ddd;display:flex; align-items: center; justify-content: center;}
.technology5 .group .images {padding: 40px 0;}
.technology5 .group h2.tech5-tit {margin-bottom: 20px;}
.technology5 .group p.tech5-txt {margin-bottom: 60px; color: #505050; font-size:17px; line-height: 1.588em; font-weight: 300; letter-spacing: -.03em;}
.technology5 .group .con2 ul {margin-bottom: 60px;}
.technology5 .group .con2 ul li {margin-bottom: 3px; color: #505050; font-size:16px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}

.technology .group .con2 .tech4-txt {margin-bottom: 50px;}
.technology .group .con2 .tech4-txt:last-of-type {margin-bottom: 0;}
.technology .group .con2 .tech4-txt .txt {margin-bottom: 25px; color: #505050; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt ul {margin-bottom: 30px;}
.technology .group .con2 .tech4-txt ul li {padding-left: 0.67em; text-indent: -0.67em; color: #505050; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .items {display:flex; flex-wrap:wrap; margin: 0 -15px;}
.technology .group .con2 .tech4-txt .items .item {width: 50%; padding: 0 15px;}

.technology .group .con2 .tech4-txt .table table {width: 100%; border-collapse: collapse; border-top:1px solid #a8a8a8;}
.technology .group .con2 .tech4-txt .table table .yellow {background-color: #f8f8b4; border-bottom:1px solid #f79503 !important;}
.technology .group .con2 .tech4-txt .table table th {border:1px solid #ddd; background-color: #f0f0f0; border-top:none; padding: 10px 0; color: #2c2c2c; font-size:16px; line-height: 1.5em; font-weight: 500; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .table table td {border:1px solid #ddd; padding: 9px 0; text-align: center; color: #505050; font-size:16px; line-height: 1.5em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .table table td.tt {font-weight: 500; color:#2c2c2c;}
.technology .group .con2 .tech4-txt .table table tr th:first-child,
.technology .group .con2 .tech4-txt .table table tr td:first-child {border-left:0;}
.technology .group .con2 .tech4-txt .table table tr th:last-child,
.technology .group .con2 .tech4-txt .table table tr td:last-child {border-right:0;} 

.technology .group .con2 .tech4-txt .text {margin-bottom: 30px;}
.technology .group .con2 .tech4-txt .text:last-of-type {margin-bottom: 0;}
.technology .group .con2 .tech4-txt .text .tit {margin-bottom: 25px; color: #104b86; font-size:18px; line-height: 1.5em; font-weight: 700; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .text .image {display:flex; margin: 0 -15px;}
.technology .group .con2 .tech4-txt .text .image .im {padding: 0 15px;}
.technology .group .con2 .tech4-txt .text .image .im .img {border:1px solid #ddd;}

.technology .group .con2 .tech4-txt .image3 {margin-top: 60px !important;}

.technology .group .con2 .tech4-txt .tech3-table {margin-top: 60px;}
.technology .group .con2 .tech4-txt .tech3-table table th {background-color: transparent; padding: 15px 0; color: #2c2c2c; font-size:18px; line-height: 1.625em; font-weight: 500; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .tech3-table table td {padding: 20px 0;}
.technology .group .con2 .tech4-txt .tech3-table table td p {margin-bottom: 20px; margin-left: 0; padding-left: 0; text-indent: 0; color: #2c2c2c; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .tech3-table table td .tit {color: #2c2c2c; font-size:18px; line-height: 1.5em; font-weight: 500; letter-spacing: -.03em;}
.technology .group .con2 .tech4-txt .tech3-table table td .tit span {color: #505050; font-size:16px; line-height: 1.625em; font-weight: 300; letter-spacing: -.03em;}

.technology .group .con2 .white-box .list ul li.col {padding-left: 7.3em; text-indent: -7.3em;}

.technology .group3 .con2 .white-box > div {width: 33.33333%;}
.technology .group3 .con2 .white-box > div:last-of-type {border-left:none;}

.technology .group4 .con2 .white-box .img {width: 33.33333%;}
.technology .group4 .con2 .white-box .list {flex:1 1 auto; min-width: 0; width: 1%;}
.technology .group4 .con2 .white-box .list ul li {padding-left: 1.5em; text-indent: -1.5em;}
