/* video */
.main_video {height:100dvh; height:100vh; position:relative; }
.main_video .main_video_obj {width:100%; height:100dvh; height:100vh;}
.main_video video {width:100%; height:100%; object-fit:cover;}

.main_video .main_video_text {position:absolute; top:50%; transform:translateY(-50%); padding-left:20%;
-moz-transform:translateY(-50%);
-webkit-transform:translateY(-50%);
-o-transform:translateY(-50%);
-ms-transform:translateY(-50%);}
.main_video .main_video_text > div {width:100%; margin:0 auto;}
.main_video .main_video_text > div p {color:#f1f1f5; font-size:5em; font-family:'Gmarket Sans B', sans-serif; line-height:1.3; text-shadow: 1px 1px 1px black;}

.scroll-icon {position:absolute; left:0; bottom:0; z-index:100; padding-bottom:87px; width:100%; line-height:20px; font-size:14px; color:#fff; font-weight:700; letter-spacing:1.4px; text-align:center;}
.scroll-icon .main-line {overflow:hidden; display:block; position:absolute; bottom:0; left:calc(50% - 1px); width:1px; height:70px; background:rgba(255,255,255, 0.2)}
.scroll-icon .main-line:before {content:''; display:block; position:absolute; top:0; left:0; width:1px; height:30px; background:rgba(255,255,255, 1); animation:scroll 3s linear infinite both;}
@keyframes scroll {
    0% {top:-30px;}
    100% { top:80px;}
}

/* section01 */
#section01 {width:100%;}
#section01 article {max-width:1660px; margin:0 auto; padding:150px 30px;}
.section01_top {width:100%; text-align:left;}
.section01_top01 {width:100%; margin-bottom:100px;}
.section01_top01 span {display:block; font-family:'Gmarket Sans M', sans-serif; color:#00477b;}
.section01_top01 strong {font-weight:normal; display:block; font-size:4em; color:#000; margin-bottom:10px; font-family:'Gmarket Sans M', sans-serif;}
.section01_top01 p {font-family:'Gmarket Sans L', sans-serif; font-size:2.5em; line-height:1.3; margin-bottom:30px;}
.section01_top01 a {border:1px solid #000; color:#000; border-radius:50px; color:#000; font-size:1em; height:48px; line-height:46px; background:#fff; padding:0 100px 0 30px; display:inline-block; text-align:left; position:relative;}
.section01_top01 a::before {content:"+"; position:absolute; top:0; right:30px;}
.section01_top01 a em {font-style:normal; font-weight:700; font-size:1.25em; color:#00477b;}

.service_box {width:100%;}
.service_box > ul {width:100%; display:flex; flex-wrap:wrap; justify-content:center; gap:50px;}
.service_box > ul > li {width:calc((100% - 150px) / 4); position:relative; text-align:left;}
.service_box > ul li img {width:100%; height:auto; border-radius:30px;}

.service_box_img {position:relative;}
.service_box_img::after {content:""; display:block; padding-bottom:100%;}
#service_box_bg01 {width:100%; background-size:cover !important; background:url("../image/main/main_b01.jpg") no-repeat center; border-radius:30px;}
#service_box_bg02 {width:100%; background-size:cover !important; background:url("../image/main/main_b02.jpg") no-repeat center; border-radius:30px;}
#service_box_bg03 {width:100%; background-size:cover !important; background:url("../image/main/main_b03.jpg") no-repeat center; border-radius:30px;}
#service_box_bg04 {width:100%; background-size:cover !important; background:url("../image/main/main_b04.jpg") no-repeat center; border-radius:30px;}
.service_box_img .inner {position:absolute; width:100%; height:100%; font-style:normal; top:20%; padding:0 30px; color:#fff;}
.service_box_img .inner em {display:block;font-size:1em; font-family:'Gmarket Sans M', sans-serif; color:#fae23c; margin-bottom:20px; font-style:normal;}
.service_box_img .inner span {display:block; font-size:1.5em; font-family:'Gmarket Sans L', sans-serif;}
.service_box_img .inner strong {display:block; font-size:2em; font-family:'Gmarket Sans B', sans-serif; margin-bottom:20px; font-weight:normal;}
.service_box_img .inner p {font-size:1.1em; line-height:1.5;}

/* section02 */
#section02 {width:100%; background-size:cover !important; background:url("../image/main/main_b05.jpg") center no-repeat;}
#section02 article {padding:250px 30px;}
.portfolio_inner {display:flex; position:relative; box-sizing:border-box;}
.portfolio_inner .portfolio_txt {width:30%; color:#fff; padding-left:calc(10% - 100px); padding-top:50px; padding-right:100px; text-align:right;}
.portfolio_txt span {display:block; font-size:1.25em; font-family:'Gmarket Sans B', sans-serif; color:#66ffff;}
.portfolio_txt strong {display:block; font-size:3.5em; font-family:'Gmarket Sans L', sans-serif; line-height:1.3; padding:10px 0 100px 0; font-weight:normal;}
.portfolio_txt a {border:1px solid #fff; color:#fff; border-radius:50px; font-size:1em; height:48px; line-height:48px; padding:0 100px 0 30px; display:inline-block; text-align:left; font-family:'SUIT-Regular', sans-serif; font-weight:300; position:relative;}
.portfolio_txt a:before {content:"+"; position:absolute; top:-2px; right:30px;}

.portfolio_inner .portfolio_img {width: calc(100% - 30%); color:#fff;}
.portfolio_img ul {width:100%; display:flex; flex-wrap:wrap; justify-content:left; gap:60px; padding-right:10%;}
.portfolio_img ul > li {width:calc((100% - 120px) / 3); position:relative; text-align:center;}
.portfolio_img ul li p {width:100%; display:block;}
.portfolio_img ul li p img {width:100%; height:auto; max-width:600px; border-radius:20px;}
.portfolio_img ul li .portfolio_box {width:100%;position:absolute; bottom:100px; left:0; text-align:center;}
.portfolio_box strong {font-size:2em; font-weight:normal;}
.portfolio_box p {font-size:1.25em; margin:5px 0 20px 0;}
.portfolio_box a {display:inline-block; color:#ccc; padding:10px 30px; border-top:1px solid #fff; border-bottom:1px solid #fff;}

/* section03 */
#section03 {width:100%; background:#fff;}
#section03 article {max-width:1460px; margin:0 auto; padding:150px 30px;}
.board_inner {display:flex; position:relative; box-sizing:border-box;}
.board_inner .board_txt {width:35%; color:#000; padding:10px 100px 0 0; text-align:right;}
.board_txt span {display:block; font-size:1.25em; font-family:'Gmarket Sans B', sans-serif; color:#00477b;}
.board_txt p {display:block; font-size:3.5em; font-family:'Gmarket Sans L', sans-serif; line-height:1.3; padding:10px 0 100px 0;}
.board_txt p strong {font-family:'Gmarket Sans M', sans-serif; font-weight:normal;}
.board_txt a {border:1px solid #000; color:#000; border-radius:50px; font-size:1em; height:48px; line-height:48px; padding:0 100px 0 30px; display:inline-block; text-align:left; font-family:'SUIT-Regular', sans-serif; font-weight:300; position:relative;}
.board_txt a:before {content:"+"; position:absolute; top:-2px; right:30px;}

.board_inner .board_con {width: calc(100% - 35%);}
.board_con_title {font-size:3em; font-weight:700; margin-bottom:20px;}
.board_con_list ul {max-width:100%; border-top:1px solid #000;}
.board_con_list ul li {border-bottom:1px solid #e1e1e1; padding:25px 110px 25px 10px; position:relative; width:100%; white-space:nowrap; text-overflow:ellipsis; overflow:hidden;}
.board_con_list ul li a {color:#333; font-size:1.5em;}
.board_con_list ul li span {position:absolute; top:30px; right:10px; color:#666;}

/* section04 */
#section04 {width:100%; background-size:cover !important; background:url("../image/main/main_b07.jpg") center no-repeat;}
#section04 article {max-width:1460px; margin:0 auto; padding:250px 30px;}
.customer_inner {display:flex; position:relative; box-sizing:border-box;}
.customer_inner_txt {width:100%; text-align:center;}
.customer_inner_txt span {display:block; color:#00ccff; font-size:1.5em; font-family:'Gmarket Sans L', sans-serif; line-height:1.3;}
.customer_inner_txt p {font-size:3em; color:#fff; margin:50px 0;}
.customer_inner_txt strong {display:block; font-weight:normal; color:#66ffff; font-size:4em; font-family:'Gmarket Sans B', sans-serif; line-height:1.3; margin-bottom:100px;}
.customer_inner_txt a {display:inline-block; color:#fff; border:1px solid #fff; padding:20px 80px; border-radius:50px; font-size:1.5em;}