@charset "utf-8";

.doc-cnt {margin-bottom:80px;}

.doc-tit {position:relative; font-size:32px; color:#242424; font-weight:600; letter-spacing:-.03em; line-height:1.50em; padding-left:15px; margin-bottom:25px;}
.doc-tit:before {position:absolute; content:""; width:6px; height:6px; background:#da3827; border-radius:50%; top:50%; margin-top:-2.5px; left:0;}

.doc-tt {font-size:18px; color:#454545; letter-spacing:-.03em; line-height:1.778em;}

.greetings {display:flex; align-items:center; margin-bottom:80px;}
.greetings .img {}
.greetings .greetings-box {padding-left:75px;}
.greetings .greetings-box .tit {font-size:32px; color:#da3827; font-weight:600; letter-spacing:-.03em; line-height:1.50em;}
.greetings .greetings-box .txt {font-size:18px; color:#454545; letter-spacing:-.03em; line-height:1.667em; margin-top:25px;}
.greetings .greetings-box .greetings-ico {margin-top:35px;}

.greetings-list {border-top:2px solid #da3827;}
.greetings-list ul {display:flex; flex-wrap:wrap;}
.greetings-list ul li {display:flex; flex-direction:column; justify-content:center; width:25%; min-height:300px; padding-left:45px; border-left:1px solid #ddd; border-bottom:1px solid #ddd;} 
.greetings-list ul li:nth-child(4n) {border-right:1px solid #ddd;}
.greetings-list ul li .ico {}
.greetings-list ul li .tit {font-size:18px; color:#da3827; letter-spacing:-.03em; line-height:1.22em; font-weight:700; margin:25px 0 15px;}
.greetings-list ul li .txt {min-height:84px;}

.table01 table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:1px solid #a8a8a8;}
.table01 th {text-align:center; font-size:16px; font-weight:700; padding:15px 20px; border:1px solid #dfdfdf; border-top:0; color:#242424; background:#fafafa; line-height:1.3em; border-spacing:0; height:60px;}
.table01 th.bgnone {background:#fff;}
.table01 td {font-size:15px; padding:15px; border:1px solid #dfdfdf; line-height:1.730em; color:#454545; letter-spacing:-.03em; height:190px; vertical-align:top;}
.table01 tr td.center {text-align:center; /* vertical-align:middle; */}
.table01 tr td strong {display:block;}
.table01 tr td span {color:#da3827; font-weight:700;}
.table01 tr td .mgt {margin-top:30px;}
.table01 tr:first-child {border-top:0;}
.table01 tr th:first-child,
.table01 tr td:first-child {border-left:0; border-top:0;}
.table01 tr th:last-child,
.table01 tr td:last-child {border-right:0;}

.table01.type02 td {height:auto;}


.philosophy-bg {display:flex; flex-direction:column; justify-content:center; background-size:cover; background-repeat:no-repeat; background-position:50% 50%; min-height:380px; text-align:center; color:#fff;}
.philosophy-bg .tit {font-size:38px; font-weight:700; letter-spacing:-.03em; line-height:1.47em;}
.philosophy-bg .tit span {display:inline-block; height:58px; line-height:58px; padding:0 5px; background:#da3827;}

.philosophy-box {text-align:center;}
.philosophy-box .txt-box {margin-top:50px;}
.philosophy-box .txt-box .lg-tit {font-size:24px; color:#242424; letter-spacing:-.03em; line-height:1.17em; font-weight:600;}
.philosophy-box .txt-box .txt {font-size:18px; letter-spacing:-.03em; line-height:1.667em; margin-top:30px;} 
.philosophy-box .txt-box .txt strong {color:#da3827; font-weight:600;}
.philosophy-box .txt-box .sign {font-size:18px; font-weight:600; color:#121212; letter-spacing:-.03em; line-height:1.56em; margin-top:30px;}

.business {}
.business .tit {font-size:24px; font-weight:500; color:#454545; letter-spacing:-.03em; line-height:1.50em; text-align:center;}
.business .business-list {display:flex; margin:0 -25px; margin-top:70px;}
.business .business-list li {width:20%; padding:0 25px;}
.business .business-list li:nth-child(even) {margin-top:50px;}
.business .business-list li .ico {border-radius:50%; box-shadow: 0px 3px 9px 0px rgba(0, 0, 0, 0.15);}
.business .business-list li .txt {font-size:18px; color:#242424; letter-spacing:-.03em; font-weight:600; line-height:1.3em; text-align:center; margin-top:25px;}

.history .logo img {border-radius:50%;}
.history .group {position:relative; padding-bottom:50px;}
.history .group:nth-child(2) {padding-top:45px;}
.history .group:before {content:""; position:absolute; top:-60px; z-index:-1; height:150%; left:50%; bottom:0; width:1px; background:#ddd;}
.history .group:last-child:before {display:none;}
.history .group .inner {position:relative;}
.history .group .bullet:after {position:absolute; content:""; width:7px; height:7px; top:30px; margin-top:-9px; left:50%; margin-left:-2.5px; background:#da3827; border-radius:50%;}
.history .group h3 {color:#da3827; font-size:38px; line-height:1.3em; font-weight:700; margin-bottom:30px; text-align:left;}
.history .group ul li {position:relative; color:#454545; font-size:18px; font-weight:400; line-height:1.556em; letter-spacing:-.03em; margin-bottom:12px;}
.history .group:nth-child(even) ul li:before {content:""; position: absolute; top:11px; left:0; width:5px; height: 5px; background-color: #ddd; border-radius:50%;}
.history .group:nth-child(odd) ul li:before {content:""; position: absolute; top:11px; right:0; width:5px; height: 5px; background-color: #ddd; border-radius:50%;}
.history .group ul li .day {color:#121212; padding-left:15px; position:absolute; top:0; font-weight:600; font-size:18px;}
.history .group:last-child {padding-bottom:0;}
.history .group:nth-child(odd) h3 {text-align:right;}
.history .group:nth-child(even) .inner {margin-left:50%; padding-left:20px;}
.history .group:nth-child(even) .bullet:after {left:0;}
.history .group:nth-child(even) .bullet:before {left:0;}
.history .group:nth-child(even) ul li { padding-left:70px;}
.history .group:nth-child(even) ul li .day {left:0;}
.history .group:nth-child(even) p {text-align:left; font-weight:400;}
.history .group:nth-child(odd) p {font-weight:400;}
.history .group:nth-child(odd) {text-align:right;}
.history .group:nth-child(odd) .inner {margin-right:50%; padding-right:20px;}
.history .group:nth-child(odd) .bullet:after {left:100%;}
.history .group:nth-child(odd) .bullet:before {right:0}
.history .group:nth-child(odd) ul li {padding-right:70px;}
.history .group:nth-child(odd) ul li .day {right:0; padding-right:20px;}
.history .group .sb {font-size:16px; color:#878787;}

.organization {text-align:center;}

.color-tt {font-size:28px; color:#da3827; font-weight:600; letter-spacing:-.03em; line-height:1.71em; margin-bottom:35px;}
.color-tt span {display:inline-block; font-size:16px; color:#878787; letter-spacing:-.03em; line-height:1.3em; padding-left:7px; font-weight:500;}

.location {margin-top:80px;}
.location ul {display:flex;}
.location ul li {width:25%; text-align:center; border-left:2px solid #ddd;}
.location ul li:first-child {border-left:0;}
.location ul li .ico {}
.location ul li .tit {font-size:18px; color:#da3827; letter-spacing:-.03em; font-weight:700; line-height:1.3em; margin:25px 0 15px;}
.location ul li .txt {}
.location ul li .txt strong {display:inline-block; margin-right:5px;}

.root_daum_roughmap {width:100% !important; height:450px !important;}
.root_daum_roughmap .wrap_map {height:450px !important;}

.purchase {}
.purchase .tit {font-size:18px; color:#454545; letter-spacing:-.03em; line-height:1.556em; margin-bottom:55px;}
.purchase .img {}
.purchase .img img {}

.step {background:#fafafa; padding:90px 0;}
.step .step-list {display:flex; margin-left:-80px; margin-top:55px;}
.step .step-list li {display:flex; flex-direction:column; justify-content:center; position:relative; width:calc(33.3333% - 80px); margin-left:80px; border:1px solid #ddd; background:#fff; min-height:420px; padding:0 50px;}
.step .step-list li:before {position:absolute; content:""; width:20px; height:20px; background:url('../images/sub/step-ico.png')50% 50% no-repeat; background-size:contain; top:50%; margin-right:-10px; right:0; margin-right:-50px;}
.step .step-list li:last-child:before {display:none;}
.step .step-list li .ico {}
.step .step-list li .tit {font-size:18px; font-weight:700; color:#da3827; letter-spacing:-.03em; margin:25px 0 10px;}
.step .step-list li .txt {font-size:15px; color:#878787; letter-spacing:-.03em; line-height:1.60em; padding-bottom:30px; border-bottom:2px dashed #ddd; margin-bottom:30px; min-height:104px;}
.step .step-list li .list-box {}
.step .step-list li .list-box .list-tt {font-size:16px; color:#242424; letter-spacing:-.03em; font-weight:600;}
.step .step-list li .list-box .list {}
.step .step-list li .list-box .list p {}

.work-list {display:flex; margin-top:50px; flex-wrap:wrap; justify-content:flex-end; margin-bottom:-55px;}
.work-list li {display:flex; flex-direction:column; justify-content:center; position:relative; width:16.6666%; background:#da3827; text-align:center; color:#fff; height:64px; font-weight:700; line-height:1.38em; border-radius:35px; margin-bottom:55px;} 
.work-list li.last {order:}
.work-list li:before {position:absolute; content:"→"; width:36px; height:36px; line-height:36px; background:#fff; border-radius:50%; text-align:center; color:#da3827; font-weight:700; font-size:18px; top:50%; margin-top:-18px; right:-18px; z-index:9;}
.work-list li:last-child:before {display:none;}
.work-list li:nth-child(7) {order:9}
.work-list li.block:before {position:absolute; content:"→"; width:36px; height:36px; line-height:36px; background:#fff; border-radius:50%; text-align:center; color:#da3827; font-weight:700; font-size:18px; top:50%; margin-top:-18px; left:-18px; z-index:9; display:block !important; transform: rotate(180deg);}
.work-list li:nth-child(7):before {display:none;}
.work-list li:nth-child(7):after {position:absolute; content:"↓"; font-size:18px; font-weight:700; color:#da3827; margin-top:-35px; top:0; left:50%; }
.work-list li:nth-child(n+9):before {display:block; position:absolute; content:"→"; width:36px; height:36px; line-height:36px; background:#fff; border-radius:50%; text-align:center; color:#da3827; font-weight:700; font-size:18px; top:50%; margin-top:-18px; right:-18px; z-index:9; transform:rotate(180deg);}
.work-list li:nth-child(8):before {transform:rotate(180deg);}
.work-list li:nth-child(8) {order:8}
.work-list li:nth-child(9) {order:7}
.work-list li.none:before {display:none;}

.flow-list {border-top:2px dashed #ddd; margin-top:40px; padding-top:20px;}
.flow-list li {display:flex; font-size:18px; color:#454545; letter-spacing:-.03em; margin-top:20px; line-height:1.556em;}
.flow-list li strong {display:inline-block; min-width:110px; font-weight:700; color:#242424;}
.flow-list li .txt {}

.counter-list {margin-top:30px;}
.counter-list ul {display:flex; margin-left:-30px;}
.counter-list ul li {width:calc(50% - 30px); margin-left:30px;}
.counter-list ul li .img {}
.counter-list ul li .tit  {font-size:18px; color:#242424; letter-spacing:-.03em; font-weight:700; line-height:1.556em; margin:25px 0 10px;}
.counter-list ul li .txt {font-size:18px; color:#454545; letter-spacing:-.03em; line-height:1.778em;}

.print-list {margin-top:30px;}
.print-list ul {display:flex; border:1px solid #ddd; padding:60px 0; align-items:center;}
.print-list ul li {width:33.3333%; text-align:center;}
.print-list ul li .img {}

.print-list-tt {margin-top:30px;}
.print-list-tt ul {}
.print-list-tt ul li {font-size:18px; color:#454545; letter-spacing:-.03em; line-height:1.778em;}

.facility-list {display:flex; flex-wrap:wrap; margin:0 -10px; margin-bottom:-25px;} 
.facility-list.mgb {margin-bottom:25px;}
.facility-list li {width:20%; padding:0 10px; margin-bottom:25px;}
.facility-list li .img {}
.facility-list li .txt {font-size:16px; color:#242424; font-weight:500; letter-spacing:-.03em; text-align:center; margin-top:15px;}

.youtube-video p {font-size:18px; color:#454545; letter-spacing:-.03em; line-height:1.556em; margin-top:30px;}

.assemblt-list {display:flex; flex-wrap:wrap; margin:0 -15px; margin-bottom:-40px;}
.assemblt-list li {width:33.3333%; padding:0 15px; text-align:center; margin-bottom:40px;}
.assemblt-list li .img {}
.assemblt-list li .tit {font-size:18px; font-weight:700; color:#242424; letter-spacing:-.03em; line-height:1.778em; margin-top:25px;}

.goods-list {display:flex; flex-wrap:wrap; margin-left:-30px;}
.goods-list li {position:relative; padding:30px; width:calc(50% - 30px); margin-left:30px; margin-bottom:30px; min-height:440px; background-position:50% 50%; background-repeat:no-repeat; background-size:cover;}
.goods-list li .tit {position:absolute; bottom:30px; left:30px; font-size:28px; color:#242424; font-weight:600; letter-spacing:-.03em; line-height:1.71em;}

.process-list {display:flex; margin-bottom:30px;}
.process-list li {margin-right:20px;}

.smt-list {display:flex; margin-left:-30px;}
.smt-list li {width:calc(33.3333% - 30px); margin-left:30px; background:#fff; padding:45px; border:1px solid #ddd;}
.smt-list li .ico {}
.smt-list li .tit {font-size:18px; font-weight:700; color:#da3827; letter-spacing:-.03em; line-height:1.22em; margin:20px 0 10px;}
.smt-list li .txt-list {}
.smt-list li .txt-list p {}

.pro-wrap {}
.pro-wrap .pro-list {display:flex; flex-wrap:wrap; margin:0 -15px; margin-bottom:-40px;}
.pro-wrap .pro-list li {width:25%; text-align:center; padding:0 15px; margin-bottom:40px;}
.pro-wrap .pro-list li .img {}
.pro-wrap .pro-list li .tit {font-size:18px; font-weight:500; color:#242424; letter-spacing:-.03em; line-height:1.33em; margin-top:25px;}

.flow {position:relative; text-align:center; overflow:hidden;}
.flow:before {position:absolute; content:""; width:100%; background:#ddd; height:3px; left:-90em; right:0; top:194px; z-index:-1;}
.flow:after {position:absolute; content:""; width:100%; background:#ddd; height:3px; bottom:49px; z-index:-1;} 
.flow .img {}

.youtube-video {position:relative; border:10px solid #ddd;}



