@charset "utf-8";

.doc-group {display: flex; margin-bottom: 80px;}
.doc-group:last-child {margin-bottom: 0;}
.doc-tit {position: relative; padding-top: 25px; width: 408px; color: #000; font-family: 'GmarketSans'; font-weight: 700; font-size: 32px; line-height: 1.5; letter-spacing: -.04em;}
.doc-tit:before {content:''; position: absolute; top: 0; left: 0; width: 34px; height: 4px; background-color: #e60012;}
.doc-cnt {padding-top: 25px; flex: 1 1 auto; min-width: 0; width: 1%;}

.sub-con-tit {color: #2c2c2c; font-family: 'GmarketSans'; font-weight: 700; font-size: 26px; line-height: 1.4; letter-spacing: -.04em; margin-bottom: 30px;}
.sub-con-tit span {position: relative; display: inline-block;}
/* .sub-con-tit span:after {content:''; position: absolute; top: .15em; left: calc(100% + 10px); width: 7px; height: 7px; background-color: #95000c; border-radius:100%;}
 */
.sub-con-tit strong {display: inline-block; background-color: #ff7e00; color: #fff; padding: 4px 10px 0; border-radius:4px;}

.table-wrap {overflow-x: auto; -webkit-overflow-scrolling: touch;}
.sub-table {width:100%; border-collapse:collapse; border-spacing:0px; line-height:1.65em; letter-spacing:-.04em;}
.sub-table th {padding:14px 10px; font-weight:500; background:#fff; border:1px solid #dfdfdf; border-top-color: #505050; border-bottom-color: #505050; font-size: 1.063em; color:#2c2c2c;}
.sub-table td {padding:14px 10px; border:1px solid #dfdfdf; color:#505050; text-align:center;}
.sub-table td.left {text-align: left; padding-left: 30px;}
.sub-table td .sm {display: block; color: #878787; font-size: 0.875em; line-height: 1.3;}
.sub-table tr th:first-child,
.sub-table tr td:first-child {border-left:0;}
.sub-table tr th:last-child,
.sub-table tr td:last-child {border-right:0;}

.top-box {position: relative; padding: 70px 6.5%; background-color: #f4f4f4; border-radius:20px; font-family: 'GmarketSans'; font-weight: 700; margin-bottom: 45px;}
.top-box.ty1 {padding-left: 385px; background-image:url("../images/sub/top_box1.png"); background-position:120px 50%; background-repeat:no-repeat;}
.top-box.ty2 {padding-right: calc(30% + 30px);}
.top-box.ty2:after {content:''; position: absolute; right: 20px; bottom: 20px; width: 30%; padding-bottom: 21.666%; background: no-repeat url("../images/sub/top_box2.png") center center / contain;}
.top-box .t1 {color: #878787; font-size: 1.125em; line-height: 1.5; letter-spacing: -.04em; margin-bottom: 12px;}
.top-box .t2 {color: #000; font-size: 38px; line-height: 1.3; letter-spacing: -.04em;}

.banner {display: table; width: 100%; min-height: 255px; margin-bottom: 80px; font-family: 'GmarketSans'; color: #2c2c2c; border-radius:20px; background-position:50% 50%; background-repeat:no-repeat; background-size:cover; text-align: center;}
.banner.bg1 {background-image:url("../images/sub/bnr_img1.png");}
.banner.bg2 {background-image:url("../images/sub/bnr_img2.png");}
.banner .cell {display: table-cell; vertical-align:middle; padding: 30px;}
.banner .t1 {font-size: 1.125em; font-weight: 500; line-height: 1.5; letter-spacing: -.04em; margin-bottom: 12px;}
.banner .t2 {font-size: 38px; font-weight: 700; line-height: 1.3; letter-spacing: -.04em;}

.hypen-list > li{padding-left: 0.438em; text-indent: -0.438em; margin-bottom: .2em;}
.hypen-list > li:last-child{margin-bottom: 0;}
.hypen-list.w2 {display: flex;flex-wrap:wrap;}
.hypen-list.w2 > li {width: 50%;}

.hypen-txt {padding-left: 0.438em; text-indent: -0.438em;}

.txt-red {color: #95000c !important;}
.txt-lightred {color: #e60012 !important;}
.txt-orange {color: #ff7e00 !important;}

/* 회사소개 */
.about .list {}
.about .list ul {display: flex;flex-wrap:wap; margin: 0 -10px;}
.about .list ul li {width: 33.3333333%; padding: 0 10px;}
.about .list ul li .num {color: #ff7e00; font-family: 'GmarketSans'; font-weight: 700; line-height: 1.3; letter-spacing: -.04em;}
.about .list ul li .icon {margin: 42px 0 30px;}
.about .list ul li .txt {}
.about .list ul li .txt strong {display: block; color: #000; font-family: 'GmarketSans'; font-weight: 700; font-size: 26px; line-height: 1.4; letter-spacing: -.04em; margin-bottom: 15px;}
.about .list ul li .txt p {color: #878787; font-size: 1.125em; line-height: 1.889em; letter-spacing: -.04em;}
.about .list ul li .txt p span {color: #2c2c2c;}
.about-banner {margin: 60px 0 80px;}
.about-banner img {width: 100%;}

.history {border-top: 2px solid #000;}
.history .group {display: flex; padding: 25px 0; border-bottom: 1px solid #ddd;}
.history .group:last-child {border-bottom: 0;}
.history .group .year {width: 28%; min-width: 153px; margin: 0 25px; color: #2c2c2c; font-family: 'GmarketSans'; font-weight: 700; font-size:38px; line-height: 1.3; letter-spacing:-.04em;}
.history .group .list {position: relative; flex: 1 1 auto; min-width: 0; width: 1%; color: #505050; font-size: 1.125em; line-height: 1.75; ; letter-spacing: -.04em;}
.history .group .list li {display: flex; margin-bottom: .2em;}
.history .group .list li:last-child {margin-bottom: 0;}
.history .group .list li .month {min-width: 72px; font-family: 'GmarketSans'; font-weight: 700; color: #ff7e00;}


.vision {background: no-repeat url("../images/sub/bg_vision.png") center center;}


.root_daum_roughmap {width:100% !important; border-radius:20px;}
.root_daum_roughmap .map_border {display:none;}
.root_daum_roughmap .wrap_controllers {display:none;}
.loc-info {margin-top: 50px;}
.loc-info .sub-title {display: inline-block; margin-right: 35px;}
.loc-info .info-wrap {display: inline-block; margin-left: -45px;}
.loc-info dl {position: relative; display: inline-block; margin: 30px 0 30px 45px; padding-left: 106px; font-family: 'GmarketSans'; font-weight: 700;}
.loc-info dl:before {content:''; position: absolute; top: 50%; left: 0; margin-top: -42px; width: 85px; height: 85px; background-position:50% 50%; background-repeat:no-repeat; background-size:contain;}
.loc-info dl.tel:before {background-image:url("../images/sub/icon_location1.png");}
.loc-info dl.fax:before {background-image:url("../images/sub/icon_location2.png");}
.loc-info dl dt {color: #878787;  font-size: 1.125em; line-height: 1.4; letter-spacing: -.04em; margin-bottom: 4px;}
.loc-info dl dd {color: #2c2c2c; font-size: 32px; line-height: 1.3; letter-spacing: -.06em;}


/* 몬테소리 교육 */
.education {color: #2c2c2c; font-size: 1.125em; line-height: 1.889em; letter-spacing: -.04em;}

.edu-con-ttl {}
.edu-con-ttl .backgound {height: 460px; background-position:50% 50%; background-repeat:no-repeat; background-size:cover;}
.edu-con-ttl .bg1 {background-image:url("../images/sub/edu_bg1.jpg");}
.edu-con-ttl .bg2 {background-image:url("../images/sub/edu_bg2.jpg");}
.edu-con-ttl .bg3 {background-image:url("../images/sub/edu_bg3.jpg");}
.edu-con-ttl .title {position: relative; width: 90%; max-width: 600px; padding: 95px 0 50px; background: #95000c no-repeat url("../images/sub/edu_bg_txt.png") 0% 120%;; border-radius:0 50vh 50vh 0; transform:translateY(-50%);}
.edu-con-ttl .title:before {content:''; position: absolute; top: 0; right: 100%; width: 200%; height: 100%; background-color: inherit;}
.edu-con-ttl .title .en {display: block; font-weight: 700; color: #f3a6ac; line-height: 1.3; letter-spacing: -.04em; margin-bottom: 26px;}
.edu-con-ttl .title h2 {font-family: 'GmarketSans'; font-weight: 700; color: #fff; font-size: 48px; line-height:1.333em; letter-spacing:-.04em;}

.edu-overview {}
.edu-overview .cnt { margin-bottom: 60px;}
.edu-overview .cnt1 p:last-child {margin-top: 1em;}
.edu-overview .cnt2 ul {color: #878787; font-size: 0.889em; line-height: 1.65; margin-top: 12px;}

.edu-b-txt {color: #2c2c2c; font-size: 1.222em; font-weight: 700; margin-bottom: 1em;}

.quoteBox {background-color: #f4f4f4; border-radius:20px; padding: 40px 48px 35px;}
.quoteBox .person {text-align: right; font-size: 0.889em; margin-top: 1.3em;}

.curriculum {}
.curriculum .group {margin-bottom: 65px;}
.curriculum .group:last-child {margin-bottom: 0;}
.curriculum .img {}
.curriculum .img img {width: 100%;}
.curriculum .txt {margin-top: 50px;}
.curriculum .txt .goal {margin-bottom: 45px;}
.curriculum .txt .goal p {color: #e60012; font-weight: 700; font-size: 1.125em; line-height: 1.3; letter-spacing: -.04em; margin-bottom: 22px;}
.curriculum .txt .goal .tags {display: flex;flex-wrap:wrap; margin: -4px -2px;}
.curriculum .txt .goal .tags span {display: inline-block; padding: 8px 18px; margin: 4px 2px; background-color: #2c2c2c; border-radius:50vh; color: #fff; font-size: 0.944em; font-weight: 500; line-height: 1.3; letter-spacing: -.04em;}

.program .banner {margin: 80px 0 50px;}

/* 교육연구소 */
.KSM {padding: 60px 20px 55px; background: no-repeat url("../images/sub/bg_ksm.jpg") center center / cover; border-radius:12px; margin-bottom: 80px; text-align: center; color: #2c2c2c; font-size: 1.125em; line-height: 1.889em; letter-spacing: -.04em;}
.KSM h3 {margin-bottom: 40px;}
.KSM p {margin-bottom: 1.222em;}
.KSM p:last-child {margin-bottom: 0;}
.KSM p strong {font-size: 1.222em; font-weight: 700;}

/* 가맹안내 */
.ul-list {}
.ul-list ul {display: flex;flex-wrap:wrap; margin: 0 -10px -45px;}
.ul-list ul li {width: 33.333333%; padding: 0 10px; margin-bottom: 45px;}
.ul-list ul li .icon {}
.ul-list ul li .txt {margin-top: 35px;}
.ul-list ul li .txt .num {display: block; font-size: 1.125em; color: #a8a8a8; font-weight: 700; line-height: 1.3; letter-spacing: -.04em; margin-bottom: 14px;}
.ul-list ul li .txt .tt {display: block; color: #e60012; font-weight: 700; line-height: 1.3; letter-spacing: -.04em; margin-bottom: 14px;}
.ul-list ul li .txt p {font-size: 1.125em; line-height: 1.65; letter-spacing: -.04em;}
.ul-list ul li .txt p .sm-t {display: block; color: #878787; font-size: 14px;}

/* 쇼뇨 몬테소리 교육센터 */
.recruit {}
.recruit .section {margin-bottom: 60px;}
.recruit .section:last-child {margin-bottom: 0;}
.recruit-info {display: flex;flex-wrap:wrap; margin: 0 -5px -35px;}
.recruit-info dl {width: 50%; padding: 0 5px; margin-bottom: 35px;}
.recruit-info dl dt {color: #e60012; font-weight: 700; line-height: 1.4; letter-spacing: -.04em; margin-bottom: 16px;}
.recruit-info dl dd {font-size: 1.125em; line-height: 1.65; letter-spacing: -.04em;}
