header {position: absolute; top: 250px; left: 50%; transform: translateX(-50%); z-index: 2;}
header .logo {width: 788px; height: auto;}
header .logo img {width: 100%; height: auto;}

/* wrap */
#wrap {width: 100%; height: auto; padding-bottom: 840px; background: url(./../img/main_bg.webp)no-repeat 50% 50%; background-size: cover; background-attachment: fixed;}
.container {max-width: 1520px; width: 100%; height: auto; margin: 0 auto;}
/* //wrap */

/* main-item */
.main-item {width: 100%; height: auto; padding-top: 960px;}
.main-item ul {display: flex; align-items: center; justify-content: center; gap: 40px;}
.main-item ul li {width: calc(100% / 3);}
.main-item ul li .child-box {position: relative; display: block; width: 100%; z-index: 1;}
.main-item ul li:nth-child(even) .child-box {top: -350px;}
.main-item ul li .child-box:before {content: ''; display: block; width: 100%; height: 10px; background: var(--red);}
.main-item ul li .child-box:after {position: absolute; top: -100px; left: 50%; transform: translateX(-50%); content: ''; display: block; width: 200px; height: 200px; border-radius: 100%; background: var(--red); z-index: -1;}
.main-item ul li .child-box .img-box {width: 100%;}
.main-item ul li .child-box .img-box img {width: 100%; object-fit: cover;}
.main-item ul li .child-box .txt-box {position: absolute; top: 45px; left: 56px;}
.main-item ul li .child-box .txt-box .tit {display: block; margin-bottom: 40px; font-size: 50px; font-weight: 800; line-height: 1.2; color: var(--wt);}
.main-item ul li .child-box .txt-box .sub {font-size: 26px; font-weight: 400; line-height: 1.19; color: var(--wt);}
.main-item ul li .child-box .item-arrow {position: absolute; bottom: 61.9px; left: 50%; transform: translateX(-50%); width: calc(100% - 112px);}