@charset 'utf-8';
.at-body > .at-container { padding: 0 10px; max-width: 1190px;}

.page-content { padding: 0 0 100px;}
.page-content .at-container { padding: 0; max-width: 1170px;}
.page-content h3 { position: relative; padding: 0 0 20px; margin:100px 0 80px ; text-align: center; font-size: 45px; font-weight: 500; color: #111;}
.page-content h3:after { content:''; display: block; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 34px; height: 2px; background: #015294;}

@media (max-width:991px){
    .page-content h3 {  margin:90px 0 60px; font-size: 43px; }
}
@media (max-width:768px){
    .page-content h3 {  margin:70px 0 50px; font-size: 41px;}
}
@media (max-width:576px){
    .page-content h3 {  margin:60px 0 50px;  font-size: 39px;}
}
@media (max-width:480px){
    .page-content h3 {  margin:50px 0 40px; font-size: 37px; }
}

.greeting {}
.greeting .con1 .at-container .txt { }
.greeting .txt { background: url(/page/imgs/greeting_ceo.png) no-repeat right center;}
.greeting .txt p { padding: 0 0 20px; color: #111; word-break: keep-all; }
.greeting .txt .p1 {  padding: 0 0 30px; font-size: 25px; font-weight: 500; }
.greeting .txt .p1 b { color: #015294;}
.greeting .txt .p2 b { font-weight: 500;}
.greeting .txt .sign { padding: 20px 0 50px;}
.greeting .history {}
.greeting .history dl { position: relative; padding: 0 0 35px 70px; justify-content: flex-start;  }
.greeting .history dl dt{   font-size: 20px; font-weight: 400; line-height: 20px;}
.greeting .history dl dd{ padding: 0 0 0 25px; font-weight: 400; line-height: 20px; word-break: keep-all;}
.greeting .history dl:before, .greeting .history dl:after,
.greeting .history dt:before, .greeting .history dt:after { content:''; display: block; position: absolute;}
.greeting .history dl:before { left: 0; top: 1px; width: 20px; height: 20px; border-radius:50%; border:1px solid #015294; background: #fff; z-index:2  }
.greeting .history dl:after { left: 8px; top: 9px; width: 4px; height: 4px; border-radius:50%; background: #015294; z-index:2   }
.greeting .history dt:before { left: 8px; top: 10px; width: 45px; height: 1px; background: #000; background: #015294;}
.greeting .history dt:after { left: 9px; top: 1px; width:1px; height: 100%; background: #015294; }
.greeting .history dl:last-of-type dt:after { display: none;}
.greeting .con2 { padding: 70px 0;  margin: 0 0 0 -10px; width: calc(100% + 20px); background: #f9f9f9; }
.greeting .con2 .flex dl { flex:1; padding: 135px 10px 0; background: no-repeat top center; text-align: center; color: #333}
.greeting .con2 .flex dl dt { font-size: 18px; font-weight: 400; }
.greeting .con2 .flex dl dd { font-size: 20px; font-weight: 500; }
.greeting .con2 .flex dl:nth-of-type(1) { background-image: url(/page/imgs/greeting_bg1.gif);}
.greeting .con2 .flex dl:nth-of-type(2) { background-image: url(/page/imgs/greeting_bg2.gif);}
.greeting .con2 .flex dl:nth-of-type(3) { background-image: url(/page/imgs/greeting_bg3.gif);}
.greeting .con2 .flex dl:nth-of-type(4) { background-image: url(/page/imgs/greeting_bg4.gif);}
.greeting .con3 ul { text-align: center;  }
.greeting .con3 ul li { display: inline-block; position: relative;  margin-left:-45px; width: 25.641025%; background: #015294; border-radius:50%; box-sizing: border-box; border:15px solid #fff}  
.greeting .con3 ul li:after { content:''; display: block; padding-bottom:100%}
.greeting .con3 ul li:first-of-type { margin-left: 0;}
.greeting .con3 ul li:nth-of-type(even) { background: #3f9fcc;}
.greeting .con3 ul li .wrap { position: absolute; top: 50%; left: 50%; width: 100%; transform: translate(-50%, -50%);}
.greeting .con3 ul li .wrap p { padding: 20px 0 0;  font-size: 25px; font-weight: 500; color: #fff;}
.greeting .con3 table { margin: 70px 0 0; width: 100%; border-top: 2px solid #015294;}
.greeting .con3 table tr { border-bottom: 1px solid #e1e1e1;}
.greeting .con3 table th,
.greeting .con3 table td { padding: 10px 30px;}
.greeting .con3 table th { text-align: center; background: #f2f5f9; font-weight: 500;}

@media (max-width:991px){
    .greeting .txt { background: none;}
    .greeting .con2 .flex dl dd { font-size: 18px;}
    .greeting .con3 ul li { width: 28%;}
    .greeting .con3 ul li .wrap img {height: 70px;}
    .greeting .con3 ul li .wrap p { padding: 15px 0 0; font-size: 22px;}
}

@media (max-width:768px){    
    .greeting .txt p br { display: none;}
    
    .greeting .con3 ul { display: flex; justify-content:space-between;}
    .greeting .con3 ul li { padding: 30px 0; margin: 0; width: 24%;  border:none; border-radius:10% 10% 0 10%; }
    .greeting .con3 ul li:after {display: none;}
    .greeting .con3 ul li .wrap { position: static; transform: none;}
    .greeting .con3 ul li .wrap img {height: 60px;}
    .greeting .con3 ul li .wrap p { padding: 10px 0 0; font-size: 18px;}
}
@media (max-width:576px){
    .greeting .txt p { padding: 0 0 15px;}
    .greeting .txt .p1 { padding: 0 0 25px; font-size: 21px;}
    .greeting .con2 { }
    .greeting .con2 .flex { flex-wrap:wrap; margin-bottom:-30px ;}
    .greeting .con2 .flex dl {  flex:auto;  padding: 125px 5px 0; margin: 0 0 30px; width: 50%;}
    .greeting .history dl { flex-direction: column; padding: 0 0 25px 50px; ;}
    .greeting .history dl dt { width: 100%; font-size: 16px;}
    .greeting .history dt:before { width: 30px;}
    .greeting .history dl dd { padding: 5px 0 0; width: 100%; }
    .greeting .con3 ul { flex-wrap:wrap;}
    .greeting .con3 ul li { margin: 0 0 10px; width: 49%; border-radius:0;}
    .greeting .con3 ul li:nth-of-type(3) { order:4}
    .greeting .con3 ul li:nth-of-type(4) { order:3}
    .greeting .con3 table th, .greeting .con3 table td { padding: 10px 10px;}
    .greeting .con3 table th { white-space: nowrap;}
}
@media (max-width:480px){
    .greeting .con2 .flex dl dt, .greeting .con2 .flex dl dd { font-size: 16px;}
}


.group {  }
.group .con1, .process .con1 { text-align: center;}
.group .con1 .mb, .process .con1 .mb { display: none;}

@media (max-width:768px){
    .group .con1 .pc, .process .con1 .pc { display: none;}
    .group .con1 .mb, .process .con1 .mb { display: block;}
}

.product { }
.product figure { display: flex; margin: 0 0 50px; }
.product figure .img { width: 50%;}
.product figure img { max-width:585px; width: 100%; height: 100%;}
.product figure figcaption {  padding: 45px ; width: 50%; border: 1px solid #e1e1e1; }
.product figure figcaption h4 { padding: 0 0 30px; font-size: 35px; font-weight: 500; color: #015294;}
.product figure figcaption li { padding: 0 0 5px 10px; font-weight: 400; text-indent: -10px;}

@media (max-width:991px){
    .product figure figcaption { padding: 30px  10px 30px 30px;}
}
@media (max-width:768px){
    .product figure {margin: 0 0 30px;}
    .product figure figcaption { padding: 25px 15px 10px}
    .product figure figcaption h4  { padding: 0 0 15px; font-size: 32px;}
    .product figure figcaption li { font-size: 16px;}
}
@media (max-width:576px){
    .product figure { flex-direction: column; margin: 0 0 40px;}
    .product figure .img { padding: 10px; width: 100%; text-align: center; border: 1px solid #e1e1e1;}
    .product figure .img img { max-width: 400px;}
    .product figure figcaption { padding: 25px 15px 10px; width: 100%; border: none;}
    .product figure figcaption h4  { padding: 0 0 15px; font-size: 28px;}
    .product figure figcaption li { font-size: 15px;}
}

.facility {}
.facility .con1 { flex-wrap:wrap; }
.facility .con1 .item {  padding: 0 0 30px; width:48.717%;}
.facility .con1 .item p.name {padding: 10px 0; font-size: 20px; text-align: center; color: #fff; font-weight: 500; background: #015294;}

.facility .con1 .item .img { padding: 0 10px; text-align: center; border-left: 1px solid #e1e1e1; border-right: 1px solid #e1e1e1;}
.facility .con1 .item .img.bg { background: #f2f2f2;}

.facility .con1 .item table { width: 100%;}
.facility .con1 .item table th,
.facility .con1 .item table td { padding: 14px 5px; text-align: center; border: 1px solid #e1e1e1;}

.facility .con1 .item table th { background: #dbe9f6; font-weight: 500; border-top: 2px solid #015294; white-space:nowrap}
.facility .con1 .item table td { font-size: 16px; }

@media (max-width:768px){
    .facility .con1 .item table th { font-size: 16px; }
    .facility .con1 .item table td { font-size: 15px; }
}

@media (max-width:576px){
    .facility .con1 { flex-direction: column;}
    .facility .con1 .item { width: 100%;}
    .facility .con1 .item p.name { font-size: 18px;}
    .facility .con1 .item table th, .facility .con1 .item table td { padding: 10px 5px; }
    .facility .con1 .item table th,
    .facility .con1 .item table td { font-size: 15px; }
}