<div class="wrap">
  <div class="header">
    Header
  </div>

  <div class="content">
    <div class="main">
      Main Area
    </div>

    <div class="wing">
      <div class="inner">
        Wing Banner
      </div>
    </div>
  </div>
</div>
*{margin:0; padding:0;}
.wrap{width:1100px; margin:0 auto;}
.header{height:200px; background:palegreen;}
.content{position:relative;}
.content:after{display:block; clear:both; content:'';}
.main{float:left; margin-right:10px; background:skyblue; width:790px; height:1500px;}
.wing{overflow:hidden;}
.wing .inner{width:300px; height:300px; background:plum;}
.wing.fixed .inner{position:fixed; top:0;}
const content = document.querySelector('.content');
const wing = document.querySelector('.wing');

// 컨텐츠 영역부터 브라우저 최상단까지의 길이 구하기
const contentTop = content.getBoundingClientRect().top + window.scrollY;

window.addEventListener('scroll', function(){
  if(window.scrollY >= contentTop){
    wing.classList.add('fixed');
  }else{
    wing.classList.remove('fixed');
  }
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.