@charset "utf-8";

/********** common **********/
.siteHeaderOffset{display:block; width:100%; height:80px; flex:none;}

/********** popup **********/
.popup{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);}
.haoPopup{position:fixed; inset:0; z-index:9999; display:none;}
.haoPopup[aria-hidden="false"]{display:block;}
.haoPopupDim{position:absolute; inset:0; background:rgba(0,0,0,.55); backdrop-filter:blur(2px);}
.popup{width:min(90vw,520px); overflow:hidden;}
.haoPopupImg{display:block; width:100%; height:auto; -webkit-user-drag:none; user-select:none;}
.today,.close{cursor:pointer;}


/***************************
** index
***************************/
/** mainBanner **/
.mainBanner {background:url('/img/mainBanner.jpg'); background-position:center; background-size:cover;}
.mainBannerBtn {box-shadow:0 0 8px #000}
/** about **/
.aboutBg1 {left:0; top:0;}
.aboutBg2 {right:0; bottom:0;}
.aboputCnts {display:grid; grid-template-columns:repeat(6,1fr);}
.aboputCnt {border:1px solid #B8BAC1; box-shadow:2px 2px 8px rgba(0,0,0,.25);}
.aboutBanner {border-top:2px solid #91949F; border-bottom:2px solid #91949F;}
/** why **/
.why {background:linear-gradient(to bottom, #000, #2466D1);}
/** step **/
.stepCnts {display:grid; grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr) 48px minmax(0,1fr) 48px minmax(0,1fr);}
.stepCnt {min-width:0;}
.stepArrowWrap {width:48px; min-width:48px; justify-self:center;}
.stepCntThumb {aspect-ratio:1 / 1;}
.stepCntBox {box-shadow:0 0 8px #D9DADE;}
/** review **/
.review {background:url('/img/reviewBg.jpg'); background-position:center; background-size:cover;}
.reviewSliderWrap {width:100%; overflow:hidden;}
.reviewSlider {width:100%; --review-gap:40px; --review-slides:2.5; --review-duration:18s; --review-loop-width:0px;}
.reviewSlider .swiper-wrapper {display:flex; align-items:stretch; gap:var(--review-gap); width:max-content; animation:reviewMarquee var(--review-duration) linear infinite; will-change:transform;}
.reviewSlide {flex:0 0 calc((100vw - (var(--review-gap) * (var(--review-slides) - 1))) / var(--review-slides)); width:calc((100vw - (var(--review-gap) * (var(--review-slides) - 1))) / var(--review-slides)); height:auto;}
.reviewCnt1 {width:100%;}
.reviewCnt1 img {display:block; width:100%; height:auto;}
@keyframes reviewMarquee {
    from {transform:translate3d(0,0,0);}
    to {transform:translate3d(calc(-1 * var(--review-loop-width)),0,0);}
}
/** contact **/
.inputBox {border:1px solid #91949F;}
.policyCheckbox {position:absolute; opacity:0; pointer-events:none;}
.policyLabel {cursor:pointer;}
.policyCheckboxIcon {display:block; width:24px; height:24px; flex:none; background:url('/img/chkOff.svg') center / contain no-repeat;}
.policyCheckbox:checked + .policyLabel .policyCheckboxIcon {background-image:url('/img/chkOn.svg');}
.undLine {text-decoration:underline;}


/*************
** login 
*************/
.loginBg {background:url('/img/mainBanner.jpg'); background-position:center; background-size:cover;}


/*************
** contact
*************/
/** list **/
.contactTable tr {border-top:1px solid #D9DADE;}
.contactTable tr:last-child {border-bottom:1px solid #D9DADE;}
.contactTable th, 
.contactTable td {border-right:1px solid #D9DADE;}
.contactTable th:last-child, 
.contactTable td:last-child {border-right:0;}
/** view **/
.consiltCntLine {border-top:1px solid #D9DADE;}
.consiltCntLine:last-child {border-bottom:1px solid #D9DADE;}
.successBtnLine {border:1px solid #D9DADE;}
