<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<div class="page page-5">
    <div class="title-box">
        <h1 class="text-align-center">
            Franchise
        </h1>
        <div class="des text-align-center">
            브랜드 창업을 검토하실 때 꼭 필요합니다.
        </div>
    </div>
    
    <div class="list-box con">
        <ul class="row">
            <li class="cell">
                <div class="height-sync" data-height-sync-group-no="1_401up_750down,3_751up">
                    <div class="img-box"><img src="http://rolling-pasta.com/_imgs/franchise_ico1.png" alt=""></div>
                    <div class="no-box"><span>1</span></div>
                    <h1>창업설명회</h1>
                    <div class="des text-align-center">
                        더본코리아 모든 브랜드의 창업은
                        <br>
                        창업설명회 참석으로부터 시작됩니다.
                    </div>
                </div>
            </li>
            <li class="cell">
                <div class="height-sync" data-height-sync-group-no="1_401up_750down,3_751up">
                    <div class="img-box"><img src="http://rolling-pasta.com/_imgs/franchise_ico2.png" alt=""></div>
                    <div class="no-box"><span>2</span></div>
                    <h1>타겟 입지</h1>
                    <div class="des text-align-center">
                        브랜드는 주로 메인상권
                        <br>
                        지역에 개설됩니다.
                    </div>
                </div>
            </li>
            <li class="cell">
                <div class="height-sync" data-height-sync-group-no="2_401up_750down,3_751up">
                    <div class="img-box"><img src="http://rolling-pasta.com/_imgs/franchise_ico3.png" alt=""></div>
                    <div class="no-box"><span>3</span></div>
                    <h1>필요 면적</h1>
                    <div class="des text-align-center">
                        브랜드는 지상 1층,<br>
                        전용면적 최소 99m<sup>2</sup>(30PY)/<br>
                        지상2층, 전용면적 최소 132m<sup>2</sup>(40PY)의<br>
                        공간이 필요합니다.
                    </div>
                </div>
            </li>
            <li class="cell">
                <div class="height-sync" data-height-sync-group-no="2_401up_750down,3_751up">
                    <div class="img-box"><img src="http://rolling-pasta.com/_imgs/franchise_ico4.png" alt=""></div>
                    <div class="no-box"><span>4</span></div>
                    <h1>창업 가능 지역</h1>
                    <div class="des text-align-center">
                        현재 서울 및 수도권 지역에서 브랜드를<br>
                        개설할 수 있습니다.
                    </div>
                </div>
            </li>
        </ul>
    </div>

    <div class="des-box text-align-center">
        본사와 가맹점주가 상생할 수 있는 지속성 있는 브랜드의 개발과 경영방침을 추구합니다.
    </div>

    <div class="btn-box text-align-center line-height-0-ch-only">
        <div class="btn inline-block">
            창업설명회 신청 / 문의
        </div>
    </div>
</div>
/*  폰트 적용 */
@import url(//fonts.googleapis.com/earlyaccess/notosanskr.css);

html {
    font-family: "Noto Sans KR", sans-serif;
}

/* 노말라이즈 */
body, ul, li, h1 {
    margin:0;
    padding:0;
    list-style:none;
}

a {
    color:inherit;
    text-decoration:none;
}

/* 라이브러리 */
.con {
    margin:0 auto;
}

.img-box > img {
    width:100%;
    display:block;
}

.row::after {
    content:"";
    display:block;
    clear:both;
}

.cell {
    float:left;
    box-sizing:border-box;
}

.cell-right {
    float:right;
    box-sizing:border-box;
}

.margin-0-auto {
    margin:0 auto;
}

.block {
    display:block;
}

.inline-block {
    display:inline-block;
}

.text-align-center {
    text-align:center;
}

.line-height-0-ch-only {
    line-height:0;
}

.line-height-0-ch-only > * {
    line-height:normal;
}

.relative {
    position:relative;
}

.absolute-left {
    position:absolute;
    left:0;
}

.absolute-right {
    position:absolute;
    right:0;
}

.absolute-middle {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
}

.width-100p {
    width:100%;
}

.table {
    display:table;
}

.table-cell {
    display:table-cell;
}

.vertical-align-top {
    vertical-align:top;
}

.vertical-align-middle {
    vertical-align:middle;
}

.vertical-align-bottom {
    vertical-align:bottom;
}

/* 커스텀 */

html, body {
    overflow-x:hidden;
}

.con {
    max-width:1440px;
}

.page-5 .list-box > ul {
    margin:0 -12.5px;
}

.page-5 .list-box > ul > li {
    width:25%;
    padding: 0 12.5px;
    margin-top:20px;
}

@media ( max-width:750px ) {
    .page-5 .list-box > ul > li {
        width:50%;
    }
}

@media ( max-width:400px ) {
    .page-5 .list-box > ul > li {
        width:100%;
    }
}

.page-5 .list-box > ul > li > div {
    border:1px solid #000;
    padding-top:20px;
    padding-bottom:20px;
}

.page-5 .list-box > ul > li > div > .img-box {
    width:97px;
    margin:0 auto;
}

.page-5 .list-box > ul > li > div > .no-box {
    background-color:#003E73;
    width:40px;
    height:40px;
    margin:0 auto;
    margin-top:30px;
    position:relative;
    border-radius:50%;
}

.page-5 .list-box > ul > li > div > .no-box > span {
    position:absolute;
    top:50%;
    left:50%;
    transform:translateX(-50%) translateY(-50%);
    color:white;
}

.page-5 .list-box > ul > li > div > h1 {
    color:#003E73;
    font-size:1.250rem;
    text-align:center;
    margin-top:30px;
}

.page-5 .list-box > ul > li > div > .des {
    margin-top:30px;
    color:#1E1E1E;
    line-height:1.9;
    padding-left:10px;
    padding-right:10px;
}

@media ( max-width:1440px ) {
    .page-5 .list-box > ul > li > div > .des > br {
        display:none;
    }
}

.page-5 .con {
    max-width:1440px;
}
console.clear();
HeightSync__nodes = {};

var HeightSync__windowWidth = $(window).width();

function HeightSync__init() {
    // 데이터를 모으는 작업, HeightSync__nodes 변수에 데이터를 채운다.
    $('.height-sync').each(function(index, node) {
        var $node = $(node);
        var groupNos = $node.attr('data-height-sync-group-no');
        
        groupNos = groupNos.split(',');
        
        for ( var i = 0; i < groupNos.length; i++ ) {
            var groupNo = groupNos[i];
            if ( groupNo.indexOf("up") == -1 ) {
                groupNo += "_0up";
            }

            if ( groupNo.indexOf("down") == -1 ) {
                groupNo += "_100000down";
            }

            if ( typeof HeightSync__nodes[groupNo] == 'undefined' ) {
                var bits = groupNo.replace('down', '');
                bits = groupNo.replace('up', '');
                bits = groupNo.split('_');
                var minWidth = parseInt(bits[1]);
                var maxWidth = parseInt(bits[2]);
                
                console.log(groupNo);
                
                HeightSync__nodes[groupNo] = {
                    minWidth:minWidth,
                    maxWidth:maxWidth,
                    nodes:[]
                };
            }

            HeightSync__nodes[groupNo].nodes.push($node);
        }
    });

    $(window).resize(Height_Sync__sync);
    Height_Sync__sync();
}

function Height_Sync__sync() {
    HeightSync__windowWidth = $(window).width();
    
    $('.height-sync').data('height-sync-group-no', 'N');
    
    for ( var key in HeightSync__nodes ) {
        var height = 0;
        var $tallNode = null;
        var tallNodeIndex = -1;
        
        for ( var i = 0; i < HeightSync__nodes[key].nodes.length; i++ ) {
            var $node = HeightSync__nodes[key].nodes[i];
            if ( $node.data('height-sync-group-no') != 'Y' ) {
                $node.css('height', '');
            }
        }
        
        if ( HeightSync__windowWidth < HeightSync__nodes[key].minWidth || HeightSync__windowWidth > HeightSync__nodes[key].maxWidth ) {
            continue;
        }
        
        for ( var i = 0; i < HeightSync__nodes[key].nodes.length; i++ ) {
            var $node = HeightSync__nodes[key].nodes[i];
            if ( $tallNode == null || $tallNode.height() < $node.height() ) {
                $tallNode = $node;
                tallNodeIndex = i;
            }
        }

        for ( var i = 0; i < HeightSync__nodes[key].nodes.length; i++ ) {
            var $node = HeightSync__nodes[key].nodes[i];
            if ( i != tallNodeIndex ) {
                $node.height($tallNode.height());
                $node.data('height-sync-group-no', 'Y');
            }
        }
    }
}

HeightSync__init();

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js