@import url("common.css");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..500,0..1,-50..200");

.header{position: absolute;}
.footer{padding: 100px 0;}


.tit_eff{overflow: hidden;}
.tit_eff span{display: block; transform: translateY(100%); opacity: 0; animation:tit_eff 0.6s 0.2s ease forwards;}

@keyframes tit_eff {
	from { transform: translateY(100%); opacity: 0; }
	to { transform: translateY(0); opacity: 1; }
}


#visual{position: relative; width: 100%; height: 600px; overflow: hidden; background:var(--black);}
#visual .v_bg{position: absolute; left:0; top:0; width: 100%; height: 100%; background-repeat:no-repeat; background-position:center; background-size:cover; -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); animation: v_bg 3s linear forwards;}
#visual .v_txt{position: absolute; left: 50%; top:50%; transform:translate(-50%,-50%); text-align:center; z-index: 9999; }
#visual .v_txt h2{color:var(--white);}


@keyframes v_bg {
	0% { -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); }
	20% { -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); }
	100% { -webkit-transform:scale(1); -ms-transform:scale(1); transform:scale(1); }
}


@keyframes lnb_eff {
	0% { opacity: 0; }
	100% { opacity: 1; }
}


#contents{margin: -77px auto 0; padding: 77px 0 0; position: relative; z-index: 9;}

.lnb{overflow: hidden; position: absolute; top:0; width: 100% !important; z-index: 99999; transition:all .4s ease; background: rgba(1, 59, 125, 0.40); backdrop-filter: blur(10px); opacity: 0; animation:lnb_eff 0.6s 0.4s ease forwards;}
.lnb .lnb_in{}
.lnb .lnb_in ul{font-size:0; display: block; white-space: nowrap; text-align:center;}
.lnb .lnb_in ul li{width: auto; line-height: 120%; display: inline-block; margin: 0; padding: 0;}
.lnb .lnb_in ul li a{display: block; font-size:1rem; letter-spacing: var(--letter-spacing-default); line-height: 77px; font-weight: 400; color:var(--white); opacity: 0.5; transition:all .4s ease; padding: 0 5px; box-sizing:border-box; margin: 0 25px; position: relative;}
.lnb .lnb_in ul li a::after{content:''; display: block; width: 0; height: 3px; background:var(--white); position: absolute; left:50%; top:0; transform:translateX(-50%); transition:all .4s ease;}
.lnb .lnb_in ul li a:hover{opacity: 1;}
.lnb .lnb_in ul li a:hover::after{width: 100%;}
.lnb .lnb_in ul li.left_linktop a{font-weight: 700; opacity: 1;}
.lnb .lnb_in ul li.left_linktop a::after{width: 100%;}


.lnb.is-sticky{background:var(--white); box-shadow: 0 10px 20px rgba(0,0,0,.02);}
.lnb.is-sticky .lnb_in ul li a{color:var(--black);}
.lnb.is-sticky .lnb_in ul li a::after{bottom: 0; top:auto; background:var(--main);}
.lnb.is-sticky .lnb_in ul li.left_linktop a{color:var(--main);}




.menu_wrap {position: absolute; left: 0; top:0; width: 100% !important; overflow: hidden; transition:all .4s ease;  background: rgba(1, 59, 125, 0.40); backdrop-filter: blur(10px); z-index: 99991; opacity: 0; animation:lnb_eff 0.6s 0.4s ease forwards;}
.menu_wrap .in_Layer {overflow: hidden;}
.menu_wrap .menu {display: block; white-space: nowrap; text-align:center;}
.menu_wrap .menu > li{width: auto; line-height: 120%; display: inline-block; margin: 0; padding: 0;}
.menu_wrap .menu > li:last-child {padding-right: 0;}
.menu_wrap .menu > li a{display: block; font-size:1rem; letter-spacing: var(--letter-spacing-default); line-height: 77px; font-weight: 400; color:var(--white); opacity: 0.5; transition:all .4s ease; padding: 0 5px; box-sizing:border-box; margin: 0 25px; position: relative;}
.menu_wrap .menu > li a::after{content:''; display: block; width: 0; height: 3px; background:var(--white); position: absolute; left:50%; top:0; transform:translateX(-50%); transition:all .4s ease;}
.menu_wrap .menu > li a:hover{opacity: 1;}
.menu_wrap .menu > li a:hover::after{width: 100%;}
.menu_wrap .menu > li.active a {font-weight: 700; opacity: 1;}
.menu_wrap .menu > li.active a::after{width: 100%;}

.menu_wrap.is-sticky{background:var(--white); box-shadow: 0 10px 20px rgba(0,0,0,.02);}
.menu_wrap.is-sticky .menu > li a{color:var(--black);}
.menu_wrap.is-sticky .menu > li a::after{bottom: 0; top:auto; background:var(--main);}
.menu_wrap.is-sticky .menu > li.active a{color:var(--main);}



.subtitle{padding: 100px 0 50px; text-align:center;}

.mobile_snb{display: none;}

.compad{padding: 200px 0; box-sizing:border-box;}
.compad_t{padding: 200px 0 0; box-sizing:border-box;}
.compad_b{padding: 0 0 200px; box-sizing:border-box;}

.marT100{margin-top: 100px;}







.dot_list{}
.dot_list li{font-size:1rem; letter-spacing: var(--letter-spacing-default); line-height: 150%; padding-left: 8px; box-sizing:border-box; position: relative; text-align:left;}
.dot_list li + li{margin-top: 8px;}
.dot_list li b{font-weight: 500; display: inline; letter-spacing: inherit; line-height: inherit; color:var(--black);}
.dot_list li::before{content:''; width:3px; aspect-ratio: 3 / 3; border-radius:100%; background:var(--main); display:block; position: absolute; left: 0; top:12px;}




.inquiry_cont{}
.inquiry_cont .fs40{font-weight: 300; padding-bottom: 35px;}
.inquiry_cont .fs40 b{display: inline; letter-spacing: inherit; line-height: inherit; font-weight: 700;}



.policy_cont{position:relative; overflow:hidden; font-size:1rem;}
.policy_cont br{display:block;}
.policy_cont strong{font-weight:500; color:var(--black);}
.policy_cont .cont_title{font-size:1.412rem; color:var(--black); padding-bottom:18px; letter-spacing:var(--letter-spacing-default); font-weight:500;}
.policy_cont p.cont_tit {display:block; font-size:1.2em !important; padding-bottom:10px; font-weight:500; color:var(--black) !important; letter-spacing:var(--letter-spacing-default);}
.policy_cont .cont_txt {padding:0px 0px 35px 0;}
.policy_cont .cont_txt2 {padding-bottom:35px;}
.policy_cont .cont_box {padding:25px; background:var(--grayBg); margin:7px 0px 10px 0px; display:block;  letter-spacing:var(--letter-spacing-default); line-height:1.7;}

.privacy_list {width:91%; overflow:hidden; clear:both; *zoom:1; padding:4% 4% 3% 4%; border:1px solid var(--border); margin-bottom:30px;}
.privacy_list li {width:50%; float:left; padding-bottom:1%;}
.privacy_list li a {font-weight:500; color:var(--black);} 





/*******************************************************************************
    @media 1500px
*******************************************************************************/
@media all and (max-width:1500px){




}
/*******************************************************************************
    @media ~1300px
*******************************************************************************/
@media all and (max-width:1300px){


#visual{height: 500px;}


.compad{padding: 150px 0;}
.compad_t{padding: 150px 0 0;}
.compad_b{padding: 0 0 150px;}

}

/*******************************************************************************
    @media  ~980px               
*******************************************************************************/
@media all and (max-width:980px){


.footer{padding: 80px 0;}

#visual{height: 350px;}
#contents{margin: -60px auto 0; padding: 60px 0 0;}

.lnb{}
.lnb .lnb_in ul li a{line-height: 60px; padding: 0 5px; margin: 0 20px;}
.menu_wrap .menu > li a{line-height: 60px; padding: 0 5px; margin: 0 20px;}


.subtitle{padding: 80px 0 30px;}


.marT100{margin-top: 70px;}



.compad{padding: 100px 0;}
.compad_t{padding: 100px 0 0;}
.compad_b{padding: 0 0 100px;}


.dot_list{}
.dot_list li::before{top:10px;}
.dot_list li br{display: none;}


.inquiry_cont .fs40{padding-bottom: 25px;}

.policy_cont{}
.policy_cont p.cont_tit {font-size:1.2em !important; padding-bottom:5px;}
.policy_cont .cont_txt {padding:0px 0px 25px 0; }
.policy_cont .cont_txt2 {padding-bottom:25px;}
.policy_cont .cont_box {padding:18px 18px; }

.privacy_list {margin-bottom:30px;}
.privacy_list li {width:100%;  }


}
/*******************************************************************************
    @media 481~680px
*******************************************************************************/
@media all and (max-width:680px){



.footer{padding: 50px 0;}


#visual{height: 250px;}

#contents{margin: -50px auto 0; padding: 50px 0 0;}

.lnb{display: none;}

.menu_wrap .in_Layer{padding: 0 10px; box-sizing:border-box;}
.menu_wrap .menu > li a{padding: 0; line-height: 50px; margin: 0 10px;}
.menu_wrap .menu > li a::after{height: 2px;}



.mobile_snb{display:block; position: absolute; left:0; top:0; width: 100% !important; z-index: 99991; transition:all .4s ease; opacity: 0; animation:lnb_eff 0.6s 0.4s ease forwards;}
.mobile_snb.none{display: none !important;}
.mobile_snb.is-sticky{background:var(--main);}
.mobile_snb .tbox{display:flex;}
.mobile_snb .tbox .box{width:50%; box-sizing:border-box;}
.mobile_snb .tbox .box .dropLst{position: relative;}
.mobile_snb .tbox .box .dropLst .title{display:block; font-size:1rem; font-weight: 700; line-height:50px; letter-spacing:-0.35pt; box-sizing:border-box; padding:0 40px 0 10%; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block; position: relative; background: rgba(1, 59, 125, 0.40); backdrop-filter: blur(10px); color:var(--white);}
.mobile_snb .tbox .box .dropLst .title:after{content:'\e313'; font-family:var(--icon); font-size:18px; display:block; position: absolute; right:15px; top:0; transition:all .3s linear; color:var(--white); font-weight: 400;}
.mobile_snb .tbox .box .dropLst .title.on{}
.mobile_snb .tbox .box .dropLst .title.on:after{transform:rotate(180deg);}
.mobile_snb .tbox .box .dropLst .title::before{content:''; display: block; width: 1px; height: 100%; background:rgba(255,255,255,.2); position: absolute; left: 0; top:0;}
.mobile_snb .tbox .box.dep1 .dropLst .title::before{display: none;}
.mobile_snb .tbox .box .dropLst .dlst{display:none; position: absolute; left: 0; top:50px; width: 200%; background:var(--white); z-index: 99999; box-shadow:0 20px 20px rgba(0,0,0,.05);}
.mobile_snb .tbox .box.dep2 .dropLst .dlst{left: -100%;}
.mobile_snb .tbox .box .dropLst .dlst ul{}
.mobile_snb .tbox .box .dropLst .dlst ul li{}
.mobile_snb .tbox .box .dropLst .dlst ul li a{display: block; padding: 0 5%; font-size:1rem; line-height:50px; letter-spacing:-0.35pt; box-sizing:border-box; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.mobile_snb .tbox .box .dropLst .dlst ul li a.on{background:var(--main); font-weight: 700; color:var(--white);}
.search_none .mobile_snb{display: none;}


.subtitle{padding: 50px 0 25px;}

.marT100{margin-top: 40px;}



.compad{padding: 60px 0;}
.compad_t{padding: 60px 0 0;}
.compad_b{padding: 0 0 60px;}


.dot_list{}
.dot_list li + li{margin-top: 6px;}
.dot_list li::before{top:9px;}

.inquiry_cont .fs40{padding-bottom: 15px;}

}