@charset "utf-8";
/* Common */
.point {color: #851c20;}

/* sub01 */
.about .greetings {display: flex;}
.about .greetings .txt {width: 47.5%; background: #333; }
.about .greetings .txt .inner {display: flex; flex-direction: column; max-width: 685px; margin-left: auto; padding-top: 60px; padding-bottom: 60px; padding-right: 80px; padding-left: 30px; justify-content: center; height: 100%; color: #fff;}
.about .greetings .txt .inner .head {font-size: 24px; margin-bottom: 16px; line-height: 1.417em;}
.about .greetings .txt .inner .head strong {font-weight: 600;}
.about .greetings .txt .inner p {color: #fff; line-height: 1.625em; margin-top: 16px;}
.about .greetings .txt .sign {font-weight: 500; font-size: 18px; text-align: right; margin-top: 65px;}
.about .greetings .txt .sign strong {font-weight: 600; font-size: 30px; margin-left: 12px;}
.about .greetings .imgs {flex: 1; padding-left: 20px; display: flex; align-items: center; flex-wrap: wrap; gap: 20px;}
.about .greetings .imgs .img {width: calc((100% - 20px) / 2);}
.about .greetings .imgs .img img {width: 100%;}

.history {background: #fafafa; padding: 60px 0;}
.history .contain {display: flex;}
.history .item {width: 46%;}
.history .item .item-tit {position: relative; font-weight: 600; font-size: 20px; color: #242424; font-family: "montserrat", sans-serif; padding-bottom: 75px; margin-bottom: 25px;}
.history .item .item-tit:before {content: ''; position: absolute; width: 1px; height: 50px; background: #242424; left: 12px; bottom: 0;}
.history .item .txt {display: flex; justify-content: space-between}
.history .item .txt .list-cnt ul li {display: flex; margin-bottom: 10px;}
.history .item .txt .list-cnt .tit {font-weight: 600; color: #333; width: 60px;}
.history .item:first-child .txt .list-cnt .tit {width: 155px;}

.about .service {padding-top: 100px;}
.about .service .doc-cnt {display: flex; justify-content: space-between;}
.about .service .doc-cnt:not(:last-child) {margin-bottom: 100px;}
.about .service .doc-tit p {font-size: 28px; color: #999; font-weight: 600; margin-bottom: 15px;}
.about .service .doc-tit h3 {font-size: 40px; font-weight: 600; color: #333; margin-bottom: 45px;}
.about .service .txt {display: flex; flex-direction: column; justify-content: center;}
.about .service .cards {display: flex; width: 63.5%; gap: 15px}
.about .service .cards .item {flex: 1; text-align: center; height: 344px; padding: 30px 20px 10px; border-radius: 15px; box-shadow: 0 0 10px rgba(0,0,0,.2)}
.about .service .cards .item:nth-child(2) {background: #fafafa;}
.about .service .cards .item:nth-child(3) {background: #333; color: #fff}
.about .service .doc-cnt:nth-child(2) .cards .item:nth-child(3) {background: #851c20;}
.about .service .cards .item:nth-child(3) .item-tit {color: #fff}
.about .service .cards .item .item-tit {margin-top: 35px; margin-bottom: 20px; font-size: 18px; font-weight: 600; color: #333;}
.about .service .cards .item p {line-height: 1.5em;}
.about .service .cards .item:nth-child(2) p br {display: none;}

/* sub02 */
.works .contain {display: flex; align-items: center; justify-content: space-between;}

/* detail_view */
.portfolio-detail .top {display: flex; padding-bottom: 100px; border-bottom: 1px solid #ddd;}
.portfolio-detail .top .img {width: 51.143%; position: relative; padding-bottom: 38.572%;}
.portfolio-detail .top .img img {position: absolute; width: 100%; height: 100%; object-fit: cover; top: 0; left: 0;}
.portfolio-detail .top .txt {flex: 1; padding-left: 115px; display: flex; flex-direction: column; justify-content: space-between;}
.portfolio-detail .top .txt .desc {margin-bottom: 30px;}
.portfolio-detail .top .txt .tit {font-weight: 600; font-size: 30px; color: #333; border-bottom: 1px solid #ddd; padding-bottom: 20px;}
.portfolio-detail .top .txt .info {padding-top: 20px;}
.portfolio-detail .top .txt .info p {color: #454545;}
.portfolio-detail .top .txt .list-cnt {margin-top: 50px;}
.portfolio-detail .top .txt .list-cnt li {font-weight: 500; color: #333;}
.portfolio-detail .btn-list {display: flex; align-items: center; justify-content: center; width: 130px; height: 50px; background: #851c20; color: #fff; font-family: "montserrat", sans-serif; font-weight: 18; font-weight: 500;}
.portfolio-detail .bot {padding-top: 40px;}
.portfolio-detail .bot .imgs {display: flex; justify-content: space-between;}

/* sub03 */
.contact {display: flex; justify-content: space-between;}
.contact .info {flex: 1;}
.contact .info .item {display: flex; margin-bottom: 35px;}
.contact .info .item .item-tit {margin-bottom: 5px;}
.contact .info .item .ico img {vertical-align: middle; margin-right: 15px;}
.contact .item-tit {font-size: 20px; font-weight: 600; color: #333; font-family: "montserrat", sans-serif;}
.contact address span {font-style: normal; display: block;}
.contact .inquiry {width: 58.58%;}
.contact .inquiry .item-tit {margin-bottom: 15px; display: inline-block;}
.contact .row {display: flex; width: 100%; gap: 20px;}
.contact .row:not(:last-child) {margin-bottom: 25px;}
.contact .row .col {flex: 1;}
.contact .form-agree {margin: 0;}
.contact .form-agree .check {text-align: left; margin-top: 0;}
.contact .submit-area {display: flex; justify-content: space-between; align-items: center; margin-top: 20px;}



