@charset 'utf-8';

.fp-slide { float: left; }
.fp-slide, .fp-slidesContainer { height: 100%; display: block; }
.fp-slides { z-index:1; height: 100%; overflow: hidden; position: relative; -webkit-transition: all 0.3s ease-out; /* Safari<=6 Android<=4.3 */ transition: all 0.3s ease-out; }
.fp-section.fp-table, .fp-slide.fp-table { display: table; width: 100%; }
.fp-tableCell { display: table-cell; vertical-align: middle; width: 100%; height: 100%; position:relative; }
.fp-slidesContainer { float: left; position: relative; }
.fp-scrollable { overflow: scroll; }
.fp-notransition { -webkit-transition: none !important; transition: none !important; }
#fp-nav { position: fixed; z-index: 100; margin-top: -55px; top: 50%; opacity: 1; }
#fp-nav.right { right: 50px; }
#fp-nav.left { left: 50px; }
.fp-slidesNav{ position: absolute; z-index: 4; left: 50%; opacity: 1; }
.fp-slidesNav.bottom { bottom: 17px; }
.fp-slidesNav.top { top: 17px; }
#fp-nav li, .fp-slidesNav li { position:relative; display: block; width:10px; height:10px; margin: 20px 0; position:relative; background:#ccc; border-radius:50%; }
.fp-slidesNav li { display: inline-block; background:#ccc; border-radius:50%; }
#fp-nav li a, .fp-slidesNav li a { position:relative; display: block; width:10px; height:10px; cursor: pointer; z-index:1; border-radius:50%; }
#fp-nav li .active, .fp-slidesNav .active, #fp-nav li a:hover {  background: #1387d8; }
#fp-nav li .active:before, .fp-slidesNav .active:before, #fp-nav li:hover:before { content:''; display:block; position:absolute; left:-5px; top:-5px; width:20px; height:20px; background:rgba(255,255,255,.2); border-radius:50%; }

#mainVisual { position:relative; }
#mainVisual section { overflow:hidden; position:relative; width:100%; color:#fff; background-position:center; background-size:cover; }
#mainVisual.fp-responsive section { min-height:790px; }
#mainVisual.fp-responsive .fp-tableCell { min-height:790px; }
#mainVisual.fp-responsive .slimScrollDiv { min-height:790px; }
#mainVisual.fp-responsive .fp-scrollable { min-height:790px; }
#mainVisual .vs1 { background-image:url(/img/main/bg_sec1_1.jpg); }
#mainVisual .vs2 { background-image:url(/img/main/bg_sec2.jpg); }
#mainVisual .vs3 { background-image:url(/img/main/bg_sec3.jpg); }
#mainVisual .vs4 { background-image:url(/img/main/bg_sec4.jpg); }
#mainVisual section .inner_box { padding:100px 0; }
#mainVisual section .scroll { position:absolute; left:0; right:0; bottom:55px; width:47px; margin:0 auto; padding-bottom:35px; font-size:13px; font-weight:900; color:#f2f2f2; background:url(/img/main/btn_scroll.png) center bottom no-repeat; animation:scroll_ani 1.5s ease-in-out infinite; -webkit-animation:scroll_ani 1.5s ease-in-out infinite; -moz-animation:scroll_ani 1.5s ease-in-out infinite; }
@keyframes scroll_ani { 
	0% { bottom:45px; }
	50% { bottom:35px; }
	100% { bottom:45px; }
}
#mainVisual .tit { position:relative; padding-bottom:25px; margin-bottom:45px; text-align:center; font-weight:700; font-family: 'Nanum Square', sans-serif; }
#mainVisual .tit:after { content:''; display:block; position:absolute; left:0; right:0; bottom:1px; width:60px; height:1px; margin:0 auto; background:#fff; }
#mainVisual .tit.right { text-align:right; }
#mainVisual .tit.right:after { left:auto; }
#mainVisual .tit.left { text-align:left; }
#mainVisual .tit.left:after { right:auto; }
#mainVisual .tit h3 { margin-bottom:20px; line-height:1em; font-weight:inherit; font-size:36px; }
/* 22.11.07 */
#mainVisual section .inner_box,
#mainVisual .tit { flex-direction: column; }
#mainVisual section .inner_box { display: flex; }
#mainVisual .tit { display: inline-flex; margin: 0 auto; }
#mainVisual .tit { gap: 8px 0; }
#mainVisual .tit p { line-height:1em; font-size:32px; display: flex; align-items: center; gap: 0 10px; }
#mainVisual .tit p span { width: 120px; padding: 5px 0; font-size: 24px; display: inline-flex; align-items: center; justify-content: center; color: #021a50; background: rgba(255, 255, 255, 0.8); border-radius: 10px; }
/* 22.11.07 */
#mainVisual .btn_r { overflow:hidden; text-align:center; }
#mainVisual .btn_r a { display:inline-block; width:370px; line-height:54px; font-size:16px; color:#fff; border:3px solid #fff; border-radius:60px; box-sizing:border-box; background:url(/img/main/btn_r.png) right 25px center no-repeat; padding-inline: 20px 50px; }
#mainVisual .btn_r.posRight a { float:right; }
#mainVisual .btn_r.posLeft a { float:left; }
#mainVisual .v1_link { width:1180px; margin:50px auto 0; }
#mainVisual .v1_link li { float:left; width:220px; text-align:center; }
#mainVisual .v1_link li + li { margin-left:20px; }
#mainVisual .v1_link li a { color:#fff; font-weight:700; }
#mainVisual .v1_link li > a, #mainVisual .v1_link .no_a { display:block; position:relative; height:220px; font-size:16px; border:5px solid #fff; box-sizing:border-box; border-radius:50%; transition-duration:.4s; overflow:hidden; }
#mainVisual .v1_link li > a:hover, #mainVisual .v1_link .no_a:hover { border:none; background:rgba(2,26,80,.7); }
#mainVisual .v1_link li div { position:absolute; left:0; right:0; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%); transition-duration:.3s; }
#mainVisual .v1_link .hafter { -webkit-transform:translateY(200%); -ms-transform:translateY(200%); transform:translateY(200%); }
#mainVisual .v1_link li img { margin-bottom:15px; }
#mainVisual .v1_link li:hover .hbefore { -webkit-transform:translateY(-200%); -ms-transform:translateY(-200%); transform:translateY(-200%); opacity:0; }
#mainVisual .v1_link li:hover .hafter { -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%); }
.v1_link .no_a a { display:block; max-width:190px; line-height:45px; margin:0 auto; font-size:16px; border:2px solid #fff; border-radius:10px; }
.v1_link .no_a a:first-child { margin-bottom:3px; }

/* vs2 */
#mainVisual .vs2 .tit { padding-bottom:20px; margin-bottom:32px; }
#mainVisual .vs2 .tit h3 { margin-bottom:17px; font-size:35px; }
#mainVisual .vs2 .tit h3 span { color:#ccc; }
#mainVisual .vs2 .tit p { font-size:20px; font-weight:400; }
#mainVisual .vs2 ul { overflow:hidden; margin-bottom:50px; }
#mainVisual .vs2 li { float:left; width:316px; margin-left:12px; background:#ebf1f9; }
#mainVisual .vs2 li:first-child { margin-left:0; }
#mainVisual .vs2 li:nth-child(2n) { background:#fff; }
#mainVisual .vs2 li dl { height:175px; padding:15px 15px 0; box-sizing:border-box; }
#mainVisual .vs2 li dt { margin-bottom:10px; font-size:16px; color:#245099; font-weight:700; }
#mainVisual .vs2 li dd { font-size:14px; line-height:1.7em; color:#555; }

/* vs3 */
#mainVisual .vs3 .tit { padding-bottom:18px; margin-bottom:0; }
#mainVisual .vs3 .tit h3 { margin-bottom:16px; font-size:36px; }
#mainVisual .vs3 .tit p { font-size:32px; }
#mainVisual .vs3 .con_txt { margin:20px 0 33px; line-height:1.7em; font-size:16px; font-family: 'Nanum Square', sans-serif; }
#mainVisual .vs3 .infoTxt { position:absolute; left:0; right:0; bottom:0; }
#mainVisual .vs3 .infoTxt span { display:block; font-size:14px; text-align:right; }

/* vs4 */
#mainVisual .vs4 .tit { padding-bottom:21px; margin-bottom:130px; }
#mainVisual .vs4 .tit:after { width:50px; }
#mainVisual .vs4 .tit h3 { margin-bottom:14px; font-size:30px; }
#mainVisual .vs4 .tit p { font-size:30px; font-weight:400; }
#mainVisual .vs4 ul { overflow:hidden; width:1050px; margin-left:125px; border-left:1px solid rgba(255,255,255,.15); }
#mainVisual .vs4 li { float:left; width:33.33%; padding:40px 40px 50px; text-align:center; border-right:1px solid rgba(255,255,255,.15); box-sizing:border-box; }
#mainVisual .vs4 li dl { margin:31px 0 27px; }
#mainVisual .vs4 li dt { margin-bottom:12px; font-size:17px; font-weight:700; }
#mainVisual .vs4 li dd { font-size:14px; color:#ddd; }
#mainVisual .vs4 li a { display:block; line-height:48px; color:#fff; background:url(/img/main/v4_btn.png) 225px center no-repeat rgba(130,166,247,.2); }

