@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* sub-visual */
.sub-visual {padding-top:100px; height:476px; background-repeat:no-repeat; background-position:center center; background-size:cover; display:flex; flex-direction:column; font-family:'Roboto';}
.sub-visual01 {background-image:url('../img/sub/sub-visual01.jpg');}
.sub-visual02 {background-image:url('../img/sub/sub-visual02.jpg');}
.sub-visual03 {background-image:url('../img/sub/sub-visual03.jpg');}
.sub-visual04 {background-image:url('../img/sub/sub-visual04.jpg');}
.sub-visual .sub-title {height:1%; flex:1 1 auto; display:flex; align-items:center; justify-content:center; text-align:center;}
.sub-visual .sub-title h2 {font-size:48px; line-height:1.2em; color:#fff;}
.sub-visual #lnb {height:100%; max-height:70px;}
.sub-visual .lnb {background:#fff;}
.sub-visual .lnb ul {display:flex;}
.sub-visual .lnb ul li {width:100%; border-right:1px solid #eee; border-bottom:1px solid #eee;}
.sub-visual .lnb ul li:last-child {border-right:0;}
.sub-visual .lnb ul li a {font-size:22px; line-height:1.4em; color:#666; height:70px; display:flex; padding:5px; align-items:center; justify-content:center; text-align:center; transition:all 0.4s;}
.sub-visual .lnb ul li.active a {background:#0157D6; color:#fff; font-weight:700;}
/* sub */
.real-cont {padding:86px 0 200px;}
.doc-tit {text-align:center; margin-bottom:40px;}
.doc-tit h3 {font-size:40px; color:#070707; line-height:1.4em; position:relative; display:inline-block; font-family:'Roboto';}
.doc-tit h3:after {content:''; width:100%; height:3px; background:#0070C0; position:absolute; left:0; bottom:-6px;}
/* sub 01 01 */
.about .col {display:flex;}
.about .txt-box {width:1%; flex:1 1 auto; padding-right:100px; position:relative; z-index:1;}
.about .txt-box h4 {font-size:50px; line-height:1.3em; color:#222; margin-bottom:50px; white-space:nowrap;}
.about .txt-box p {font-size:24px; line-height:1.6em; color:#666; margin-bottom:30px;}
.about .txt-box p:last-child {margin-bottom:0;}
.about .txt-box p span {color:#0070C0;}
.about .img-box {width:100%; max-width:680px;}
/* sub 01 02 */
.vision .col {display:flex; margin:0 -20px 80px; padding-bottom:80px; border-bottom:1px solid #eee;}
.vision .col:last-child {margin-bottom:0; padding-bottom:0; border-bottom:0;}
.vision .col > div {margin:0 20px;}
.vision .inner {min-height:360px; height:100%;}
.vision .tit-box {width:100%; max-width:350px;}
.vision .tit-box .inner {background-repeat:no-repeat; background-size:cover; background-position:center center; border-radius:20px; display:flex; align-items:center; justify-content:center; color:#fff; padding:15px;}
.vision .tit-box .inner-bg01 {background-image:url('../img/sub/vision01.jpg');}
.vision .tit-box .inner-bg02 {background-image:url('../img/sub/vision02.jpg');}
.vision .tit-box .inner h4 {font-size:60px; line-height:1.6em;}
.vision .txt-box {width:100%; max-width:480px;}
.vision .txt-box .inner {padding:40px 50px; background:#F6F6F6; border-radius:20px; height:100%; position:relative;}
.vision .txt-box .inner .num {font-size:40px; font-weight:700; color:#0070c0; line-height:1.6em; opacity:0.4; margin-bottom:20px;}
.vision .txt-box .inner p {font-size:26px; line-height:1.6em; color:#222;}
.vision .txt-box .inner .icon {position:absolute; bottom:60px; right:50px;}
.vision .txt-box .box {padding-top:20px;}
.vision .txt-box .box p {font-size:22px; line-height:1.6em; color:#666; margin-bottom:40px;}
.vision .txt-box .box ul {border-top:3px solid #00165D;}
.vision .txt-box .box ul li {font-size:18px; line-height:1.6em; color:#222; border-bottom:1px dashed #999; padding:17px 20px 17px 58px; position:relative;}
.vision .txt-box .box ul li:before {content:''; width:5px; height:5px; background:#00165D; position:absolute; top:26px; left:20px;}
.vision .txt-box .box ul li:last-child {border-bottom:1px solid #00165d;}
/* sub 01 03 */
.history {position:relative; overflow:hidden;}
.history .tt {position:absolute; top:0; left:0;}
.history .col {display:flex; padding-bottom:140px; position:relative;}
.history .col:before {content:''; width:1px; height:100%; background:#999; position:absolute; top:25px; left:50%;}
.history .col:last-child {padding-bottom:210px}
.history .col > div {width:50%;}
.history .tit-box {padding-right:95px; position:relative; text-align:right;}
.history .tit-box .year {font-size:60px; line-height:1.6em; color:#070707; font-weight:700;}
.history .txt-box .txt {padding-left:55px; position:relative; margin-bottom:40px;}
.history .txt-box .txt:last-child {margin-bottom:0;}
.history .txt-box .txt:before {content:''; width:29px; height:29px; background:url('../img/sub/history-icon.png') no-repeat; position:absolute; top:50%; margin-top:-15px; left:-14px;}
.history .txt-box .txt p {padding:20px 40px; background:#f6f6f6; border-radius:20px; font-size:24px; line-height:1.6em; color:#222;}
/* sub 01 04 */
.core .img-box {background:#F6F6F6; border-radius:20px; padding:70px; text-align:center; margin-bottom:100px;}
.core .col {display:flex; margin-bottom:140px; align-items:flex-end;}
.core .col:last-child {margin-bottom:0;}
.core .col:nth-child(even) {flex-direction:row-reverse;}
.core .icon {width:100%; max-width:380px;}
.core .col:nth-child(even) .icon {text-align:right;}
.core .icon .img {display:inline-block; position:relative;}
.core .col:nth-child(odd) .icon .img {padding-right:128px;}
.core .col:nth-child(even) .icon .img {padding-left:128px;}
.core .icon .img:after {content:''; width:134px; height:28px; position:absolute; top:50%; margin-top:-14px; background:url('../img/sub/core-icon-arrow.png') no-repeat;}
.core .col:nth-child(odd) .icon .img:after {right:0;}
.core .col:nth-child(even) .icon .img:after {left:0; transform:rotate(180deg);}
.core .txt-box {width:1%; flex:1 1 auto;}
.core .txt-box p {font-size:28px; line-height:1.6em; color:#222; margin-bottom:40px;}
.core .txt-box ul {border:1px dashed #999; background:#f3f8ff; border-radius:20px; padding:40px;}
.core .txt-box ul li {font-size:24px; line-height:1.6em; color:#222; position:relative; padding-left:40px; margin-bottom:12px; font-weight:700;}
.core .txt-box ul li:last-child {margin-bottom:0;}
.core .txt-box ul li:before {content:''; width:32px; height:32px; background:url('../img/sub/core-check.png') no-repeat; position:absolute; top:2px; left:0;}
/* sub 02 */
.products-tit {margin-bottom:140px;}
.products-tit .tit {margin-bottom:40px;}
.products-tit .tit p {font-size:24px; line-height:1.5em; color:#222; text-align:center; font-weight:500;}
.products-tit .col {display:flex; margin:0 -12px -120px; position:relative; z-index:2;}
.products-tit .row {width:25%; padding:0 12px;}
.products-tit .inner {padding:44px 30px; height:200px; background-repeat:no-repeat; background-position:top center; background-size:contain;}
.products-tit .inner01 {background-image:url('../img/sub/products01.jpg');}
.products-tit .inner02 {background-image:url('../img/sub/products02.jpg');}
.products-tit .inner03 {background-image:url('../img/sub/products03.jpg');}
.products-tit .inner04 {background-image:url('../img/sub/products04.jpg');}
.products-tit .row.active .inner01 {background-image:url('../img/sub/products01-on.png');}
.products-tit .row.active .inner02 {background-image:url('../img/sub/products02-on.png');}
.products-tit .row.active .inner03 {background-image:url('../img/sub/products03-on.png');}
.products-tit .row.active .inner04 {background-image:url('../img/sub/products04-on.png');}
.products-tit .inner h4 {font-size:22px; line-height:1.4em; color:#222; margin-bottom:4px;}
.products-tit .row.active .inner h4 {color:#fff;}
.products-tit .inner p {font-size:18px; line-height:1.2em; color:#0070C0;}
.products-tit .row.active .inner p {color:#fff;}
.products-tit .txt {padding-top:186px; padding-bottom:80px; background:url('../img/sub/products-tit.jpg') center center no-repeat; background-size:cover;}
.products-tit .box {display:flex;}
.products-tit .box .img {width:100%; max-width:656px;}
.products-tit .box .list {width:1%; flex:1 1 auto;}
.products-tit .box .list li {padding:20px; border-bottom:1px dashed #999;}
.products-tit .box .list li:first-child {padding-top:0;}
.products-tit .box .list li p {font-size:24px; line-height:1.6em; color:#222; position:relative; padding-left:25px;}
.products-tit .box .list li p:before {content:''; width:5px; height:5px; background:#0070C0; position:absolute; top:15px; left:0;}
.products-cnt .tit-box {margin-bottom:50px;}
.products-cnt .tit-box h4 {font-size:36px; line-height:1.1em; color:#070707; text-align:center; margin-bottom:40px;}
.products-cnt .tit-box ul {margin:0 auto -6px; width:100%; max-width:820px; display:flex; flex-wrap:wrap;}
.products-cnt .tit-box ul li {width:50%; font-size:22px; line-height:1.6em; color:#222; margin-bottom:6px; padding:0 15px; position:relative;}
.products-cnt .tit-box ul li:before {content:''; width:5px; height:5px; background:#0070c0; position:absolute; top:15px; left:0;}
.products-cnt .table {display:block; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;}
.products-cnt table {width:100%; border-spacing:0; border-collapse:collapse; text-align:center;}
.products-cnt table thead th {font-size:22px; line-height:1.1em; font-weight:600; color:#fff; border-right:1px solid rgba(255,255,255,0.3); background:#6DB5E9; padding:14px 10px;}
.products-cnt table thead th:last-child {border-right:0;}
.products-cnt table thead th span {font-size:18px; line-height:1.3em; font-weight:400;}

.products-cnt table thead th.bdt {border-top:1px solid rgba(255,255,255,0.3); padding:10px;}
.products-cnt table thead th.bdl {border-left:1px solid rgba(255,255,255,0.3); padding:10px;}
.products-cnt table thead th .btn {display:flex; justify-content:center; align-items:center;}
.products-cnt table thead th button {display:block; border:0; background:transparent; text-align:center; width:20px; height:20px; margin:0 5px;}

.products-cnt table tbody th {font-size:20px; line-height:1.6em; color:#00165d; padding:16px 10px; font-weight:400; background:#f6f6f6; border-bottom:1px solid rgba(153, 153, 153, 0.3);}
.products-cnt table tbody td {font-size:20px; line-height:1.6em; color:#222; padding:16px 10px; border-bottom:1px solid rgba(153,153,153,0.3);}
.products-cnt .txt {margin-top:20px;}
.products-cnt .txt p {font-size:20px; line-height:1.6em; color:#444; margin-bottom:80px;}
.products-cnt .txt p span {color:#0070c0;}
.products-cnt .txt .more {text-align:center;}
.products-cnt .txt .more a {display:inline-block; width:320px; font-size:24px; font-weight:700; color:#fff; background:#0070c0; border-radius:12px; line-height:80px; padding:0 40px; text-align:left; position:relative;}
.products-cnt .txt .more a:after {content:''; width:24px; height:24px; background:url('../img/sub/products-more.png') no-repeat; position:absolute; top:50%; margin-top:-12px; right:30px;}
/* sub 03 */
.news .col {display:flex; margin-bottom:80px;}
.news .img-box {width:100%; max-width:490px;}
.news .txt-box {width:1%; flex:1 1 auto;}
.news .txt-box p {font-size:24px; line-height:1.6em; color:#070707; margin-bottom:36px;}
.news .txt-box p:last-child {margin-bottom:0;}
/* sub 04 01 */
.contact {margin-bottom:40px;}
.contact .col {display:flex; align-items:center; padding:30px 60px; border:1px solid #d3dce9; border-radius:20px; background:#f3f8ff;}
.contact .col .icon {width:100%; max-width:150px;}
.contact .col .txt {width:1%; flex:1 1 auto;}
.contact .col .txt p {font-size:20px; line-height:1.7em; color:#222; margin-bottom:8px;}
.contact .col .txt p:last-child {margin-bottom:0;}
.contact .col .txt p a {display:inline-block; color:#0070c0; text-decoration:underline;}
/* sub 04 02 */
.location .maps {height:520px; margin-bottom:40px; border-radius:20px; overflow:hidden;}
.location .maps iframe {width:100%; height:100%;}
.location .address {margin-bottom:40px;}
.location .address dl {display:flex; align-items:center;}
.location .address dt {width:100%; max-width:160px; position:relative; padding-left:48px; font-size:24px; line-height:1.6em; color:#00165d; font-weight:700;}
.location .address dt:before {content:''; width:38px; height:38px; background:url('../img/sub/location.png') no-repeat; position:absolute; top:50%; margin-top:-19px; left:0; background-size:cover;}
.location .address dd {width:1%; flex:1 1 auto; font-size:24px; line-height:1.6em; color:#222;}
.location .col {display:flex; margin:0 -20px;}
.location .col .row {width:25%; padding:0 20px;}
.location .col .row h5 {font-size:24px; line-height:1.6em; color:#0070c0;}
.location .col .row p {font-size:24px; line-height:1.6em; color:#222;}
