@charset "utf-8";
.company .item {margin-bottom: 54px; display:flex; align-items: center;}
.company .item .text {margin-left: 100px;}
.company .item:nth-of-type(even) {justify-content: space-between;}
.company .item h3 {margin-bottom: 14px; color:#2c2c2c; font-size:30px; font-weight:500; letter-spacing:-.03em; line-height: 1.533em;}
.company .item h3 span {color:#e52c2c;}
.company .item p {color:#878787; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.875em;}
.company .item .tit {color:#e52c2c; font-size:30px; font-weight:700; letter-spacing:-.03em; line-height: 1.3em; margin-bottom: 30px;}
.company .item:nth-of-type(2) {flex-direction: row-reverse;}
.company .item:nth-of-type(2) .text {margin-left: 0; }
.company .con {z-index: -1; position: relative; margin-top: 120px; background-color: #f4f4f4; height: 425px; display:flex; align-items: center}
.company .con:before {content:""; position: absolute; top:0; left:50%; transform:translateY(-50%); width: 1px; height: 100px; background-color: #2c2c2c;}
.company .con .text {margin-top: -60px;}
.company .con h3 {margin-bottom: 30px; text-align: center; color:#2c2c2c; font-size:30px; font-weight:700; letter-spacing:-.03em; line-height: 1.4em;}
.company .con ul {margin-left: 150px;}
.company .con ul li {margin-bottom: 16px; color:#505050; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.4em;}
.company .con ul li strong {position: relative; color:#fff; font-size:14px; font-weight:500; margin-right: 20px; z-index: 2;}
.company .con ul li strong:before {content:""; position: absolute; background-color: #e52c2c; width: 25px; height: 25px;z-index: -1; border-radius:50%; left: -8px;}
.company .con ul li span {font-weight: 500;}
.company .con2 {position: relative; margin-top: -120px; display:flex; align-items: center; justify-content: center}
.company .con2:before {z-index: -1;content:""; position: absolute; width: 1200px; height: 100%; background-color: #fff; top:26px; left: 50%; transform:translateX(-50%);}
.company .con2 p {color:#2c2c2c; font-size:30px; font-weight:700; letter-spacing:-.03em; line-height: 1.8em;}
.company .con2 p span {color: #e52c2c;}

.history .group {margin-bottom: 100px;}
.history .group:last-of-type {margin-bottom: 0;}
.history .group .text {display:flex; flex-wrap:wrap; margin-top: 50px;}
.history .left {padding-left: 200px; width: 50%; color:#e52c2c; font-size:30px; font-weight:500; letter-spacing:-.03em; line-height: 1.533em;}
.history .left span {font-weight:700;}
.history .left2 {color:#454545;}
.history .right {width: 50%;}
.history .right li {padding-left: 5.8em; text-indent: -5.8em; margin-bottom: 8px; color:#878787; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.4em;}
.history .right li span {color:#2c2c2c; font-weight: 500; margin-right: 34px;}

.map {position: relative; margin-bottom: 250px; }
.map-box {position: absolute; height: 251px; width: 440px; background: url(../images/sub/map-box.jpg); right: 60px;  z-index: 2; bottom: -163px;}
.map-box .img {position: absolute; top: -32px; left: 46px;}
.map-box p {padding:55px 0 0 55px; color:#fff; font-size:30px; font-weight:700; letter-spacing:-.03em; line-height: 1.533em;}

.title {padding: 60px 0 28px 0;}
.title .logo {display:flex; justify-content: center;}
.title .logo .tit {margin-left: 12px; color:#242424; font-size:44px; font-weight:700; letter-spacing:-.04em; line-height: 1.4em;}
.title .tt {margin-top: 8px; text-align: center; color:#454545; font-size:18px; font-weight:500; letter-spacing:-.04em; line-height: 1.4em;}

.introduce {text-align:center;}
.introduce .tit {margin-bottom: 48px; color:#2c2c2c; font-size:30px; font-weight:700; letter-spacing:-.04em; line-height: 1.4em;}
.introduce .tit span {color: #e52c2c;}
.introduce .txt {margin-bottom: 70px; color:#878787; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.875em;}
.introduce .txt p {margin-bottom: 30px;}
.introduce .txt span {color:#2c2c2c; font-weight: 500;}
.introduce .image {display:flex; flex-wrap:wrap; margin: 0 -50px;}
.introduce .image .img {width: 50%; padding: 0 50px;}

.doc-tit h3 {position: relative; color:#2c2c2c; font-size:20px; font-weight:700; letter-spacing:-.03em; line-height: 1.3em; padding-left: 30px;}
.doc-tit h3:before {content:""; position: absolute; width: 20px; height: 20px; background:url(../images/sub/mark.png); top:4px; left: 0; }

.list {padding: 70px; height: 285px; text-align: left; display:flex; background: url(../images/sub/introduce-bg.jpg);}
.list .doc-tit {width: 37.5%;}
.list .doc-txt ul {height: 200px; display: flex; flex-direction: column; flex-wrap: wrap;}
.list .doc-txt ul li {padding-right: 30px; margin-bottom: 35px;}

.doc-txt ul li {margin-bottom: 20px; padding-left: 16px; position: relative; color:#505050; font-size:16px; font-weight:500; letter-spacing:-.03em; line-height: 1.4em;}
.doc-txt ul li:before {content:""; position: absolute; width: 5px; height: 5px; background-color: #e52c2c; top:10px; left: 0;}

.study .group {display:flex; margin-bottom: 100px;}
.study .group:last-of-type {margin-bottom: 0;}
.study .group .doc-tit {width: 28.57%; padding-left: 50px;}
.study .group .doc-txt p {margin-bottom: 50px;}

.develop p {margin-bottom: 35px; text-align:center; color:#505050; font-size:16px; font-weight:400; letter-spacing:-.04em; line-height: 1.875em;}

.Recruit .doc-txt {flex:1 1 auto; min-width: 0; width: 1%;}
.Recruit .doc-txt li:before {display:none;}
.Recruit .doc-txt ul {display:flex; flex-wrap:wrap;}
.Recruit .doc-txt ul li {width: 25%; text-align:center;}
.Recruit .doc-txt ul li .img {margin-bottom: 15px;}
.Recruit .doc-txt ul li .tit {margin-bottom: 10px; color:#2c2c2c; font-size:18px; font-weight:700; letter-spacing:-.03em; line-height: 1.4em;}
.Recruit .doc-txt ul li .txt {color:#878787; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.5em;}
.Recruit .doc-txt .images {display:flex !important; flex-wrap:wrap;}
.Recruit .doc-txt .images .img {width: 50%;}
.Recruit .doc-txt .images .img:nth-of-type(2) {border:1px solid #ddd;}
.Recruit2 .doc-txt ul li {width: 20%; margin-bottom: 80px;}

.Recruit .doc-txt .re li {width: 50%;}
.Recruit .doc-txt .re li .re-tit {display:inline-block; color:#fff; font-size:16px; font-weight:500; letter-spacing:-.03em; line-height: 1.4em; padding: 6px 20px; background-color: #e52c2c; border-radius:20px; margin-bottom: 16px;}
.Recruit .doc-txt .re li .re-txt {color:#505050; font-size:16px; font-weight:500; letter-spacing:-.03em; line-height: 1.5em;}
.Recruit .doc-txt .re li .re-txt span {color:#878787; font-weight:400;}
.Recruit .doc-txt .re-list li {width: 20%;} 
.Recruit .doc-txt .re2 {margin-top: 50px;}
.Recruit .doc-txt .re2 li {width: 25% !important;}
.Recruit .doc-txt .re2 li .re-txt {color:#878787; font-weight: 400;} 
.Recruit .doc-txt .grey {margin-top: 50px; background-color: #f4f4f4; height: 120px;}
.Recruit .doc-txt .grey p {position: relative; align-items: center; justify-content: center; height: 120px; display:flex;  color:#878787; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.4em;}
.Recruit .doc-txt .grey p:before {content:""; position: absolute; width: 60px; height: 60px; background:url(../images/sub/point.png)50% 50% no-repeat; left: 40px;}

.re-notice {display:flex; flex-wrap:wrap; margin: 0 -22px;}
.re-notice .img {width: 50%;padding: 0 22px;}
.re-notice .text {width: 50%; padding: 0 22px;}
.re-notice .text ul {border-top:1px solid #ddd;}
.re-notice .text li {border-bottom:1px solid #ddd;}
.re-notice .text li a {display:block; display:flex; align-items: center; padding: 27px 0;}
.re-notice .text .d-day {padding-right:20px; color:#e52c2c; font-size:15px; font-weight:700; letter-spacing:-.03em; line-height: 1.6em;}
.re-notice .text .d-day span {font-size:38px;}
.re-notice .text .con .date {margin-bottom: 5px; color:#878787; font-size:16px; font-weight:400; letter-spacing:-.03em; line-height: 1.4em;}
.re-notice .text .con .date span {color:#fff; font-size:14px; font-weight:500; letter-spacing:0; line-height: 1.4em; background-color: #e52c2c; padding: 2px 12px; border-radius:10px; margin-right: 10px;}
.re-notice .text .con .tt {color:#505050; font-size:18px; font-weight:500; letter-spacing:-.03em; line-height: 1.4em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}

.re-notice .text li:hover .d-day, .re-notice .text li.active .d-day  {color: #999;}
.re-notice .text li:hover .con .date span, .re-notice .text li.active .con .date span {background-color: #888;}

