@charset "utf-8";

.wrap{position: relative;}

header{position: absolute;left: 0;top: 0;width: 100%;background-color: #fff;padding: 0 20px;border-bottom: 1px solid #e1e1e1;}
header.main{box-shadow: 0 5px 15px rgba(0,0,0,0.1);border-bottom: none;}
header .head_in{position: relative;}
header h1{position: absolute;top: 50%;left: 60px;margin-top: -39px;z-index: 10;}
header h1 a{display: block;width: 118px;height: 71px;background: url(../images/logo.jpg?ver=10) no-repeat center;background-size: contain;}
header .menu{text-align: center;position: relative;transition: 0.3s;}
header .menu .depth{display: inline-flex;}
header .menu .depth li{padding: 0 20px;}
header .menu .depth li a{display: block;line-height: 90px;color: #1a1a1a;font-size: 1.063rem;}
header .menu .close {display: none;position: absolute;left: 20px;top: 20px;width: 20px;height: 20px;background: url(../images/close-btn.png) no-repeat center;background-size: contain;border: none;}
header .log_in{display: flex;position: absolute;top: 50%;right: 340px;transform: translate(0,-50%);}
header .log_in li ~ li{margin-left: 10px;padding-left: 10px;border-left: 1px solid #bbb;}
/* header .log_in li ~ li{display: none;} */
header .log_in li a{display: block;color: #1a1a1a;font-size: 0.75rem;}
header .nav_btn{display: none;position: absolute;left: 0;top: 50%;width: 25px;height: 24px;margin-top: -12px;border: none;background: url(../images/nav-btn.png) no-repeat center;background-size: contain;}
header .tel{position: absolute;top: 50%;right: 60px;transform: translate(0, -50%);}
header .tel a{display: block;padding-left: 30px;background: url(../images/tel-icon.png?ver=2) no-repeat left center;background-size:20px auto;}
header .tel a span{color: #063054;font-weight: 700;font-family: 'Montserrat';font-size: 1.875rem;}
header .tel a span b{color: #139fa2;font-weight: 700;font-family: 'Montserrat';font-size: 1.875rem;}
header .dim{position: fixed;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,0.5);z-index: 10;display: none;}

footer{background-color: #222;padding: 60px 80px 80px;}
footer .foot_logo{position: absolute;right: 0;top: 0;}
footer .foot_in{position: relative;}
footer .name{color: #fff;font-size: 0.75rem;margin-bottom: 10px;}
footer .name br{display:none;}
footer .info{color: #a7a9a8;font-size: 0.75rem;margin-bottom: 20px;}
footer .info em{color: #555;padding: 0 5px;}
footer .ori{color: #aaa;font-size: 0.75rem;font-weight: 300;line-height: 1.5em;margin-bottom: 30px; margin-top: 35px;}
footer address{color: #666;font-size: 0.75rem;}

.btn_area{margin-top: 60px;}
.btn_area ul{display: flex;justify-content: center;}
.btn_area ul li ~ li{margin-left: 20px;}
.btn_area ul li .btn{display: block;background: none;font-size: 1.25rem;width: 240px;line-height: 68px;text-align: center;letter-spacing: -0.08em;word-spacing: -0.08em;transition: 0.3s;}
.btn_area ul li .btn.bl{color: #222;border: 1px solid #222;}
.btn_area ul li .btn.gr{color: #999;border: 1px solid #999;}
.btn_area ul li .btn.bl:hover{background-color: #222;color: #fff;}
.btn_area ul li .btn.gr:hover{background-color: #999;color: #fff;}

.con_ori{text-align: center;margin-top: 30px;font-size: 0.75rem;color: #777;line-height: 1.5em;}

.vis{background-color: #fafafa;display: flex;height: calc(100vh - 90px);}
.vis .lef{width: 50%;background: no-repeat center;background-size: cover;}
.vis .rig{width: 50%;display: flex;align-items: center;justify-content: center;text-align: center;padding: 0 20px;}
.vis .rig .tit{font-size: 3.5rem;color: #222;line-height: 1.2em;margin-bottom: 40px;}
.vis .rig .tit span{font-weight: 500; color: #063054;}
.vis .rig .tit strong{font-weight: 700;}
.vis .rig p{font-size: 1.5rem;color:#063054;font-weight: 500;line-height: 1.444em;margin-bottom: 50px;}
.vis .rig b{font-size: 1.5rem;color:#b29887;font-weight: 500;line-height: 1.444em;margin-bottom: 50px;}
.vis .rig ul{max-width: 480px;margin: 0 auto;}
.vis .rig ul li ~ li{margin-top: 15px;}
.vis .rig ul li a{display: block;height: 55px;background-color: #fff;box-shadow: 0 0 15px rgba(0,0,0,0.15);border-radius: 8px;position: relative;transition: 0.5s;}
.vis .rig ul li a span{position: absolute;color: #222;font-size: 1.25rem;font-weight: 600;line-height: 55px;white-space: nowrap;top: 0;left: 50%;transform: translate(-50%,0);transition: 0.5s;}
.vis .rig ul li a::before{content: "";position: absolute;right: 60px;top: 50%;background: url(../images/arr-wh.png) no-repeat center;background-size: contain;width: 13px;height: 12px;opacity: 0;;margin-top: -6px;transition: 0.3s;transition-delay: 0.3s;}
.vis .rig ul li a:hover{background-color: #063054;}
.vis .rig ul li a:hover span{left: 40px;transform: none;color:#fff;}
.vis .rig ul li a:hover::before{right: 40px;opacity: 1;}

.contents{padding-top: 90px;}
.inner{max-width: 1200px;margin: 0 auto;}
.con_wrap{padding: 100px 20px 150px;}
.con_tit{color: #121212;font-size: 3.375rem;font-weight: 600;margin-bottom: 80px;text-align: center;line-height: 1.2em;}
.step ul{display: flex;}
.step ul li{width: 33.33%;text-align: center;padding: 60px 0 65px;}
.step ul li ~ li{border-left: 1px solid #d5d5d5;}
.step ul li p{font-family: 'Montserrat';color: #222;letter-spacing: 0;margin-bottom: 35px;}
.step ul li p strong{font-weight: 700;padding-left: 3px;}
.step ul li.step1 dl{background-image: url(../images/step-icon1.png);}
.step ul li.step2 dl{background-image: url(../images/step-icon2.png);}
.step ul li.step3 dl{background-image: url(../images/step-icon3.png);}
.step ul li dl{padding-top: 115px;background-repeat: no-repeat;background-position: center top;}
.step ul li dl dt{color: #222;font-size: 2rem;font-weight: 600;margin-bottom: 25px;}
.step ul li dl dd{color: #555;font-weight: 300;font-size: 1.125rem;line-height: 1.444em;}

.write_tbl .ori{font-size: 0.75rem;color: #777;margin-bottom: 15px;}
.write_tbl .ori i{color: #fe0000;font-style: normal;padding-right: 3px;}
.write_tbl table{width: 100%;border-top: 1px solid #222;text-align: left;}
.write_tbl table th{padding: 15px 0 15px 40px;color: #222;font-size: 1.125rem;font-weight: 600;border-bottom: 1px solid #e1e1e1;}
.write_tbl table th i{color: #ff0000;font-style: normal;}
.write_tbl table td{padding: 15px 20px;border-bottom: 1px solid #e1e1e1;}
.write_tbl table .inp_wrap{display: flex;align-items: center;flex-wrap: wrap;}
.write_tbl table .inp_wrap input[type=text],
.write_tbl table .inp_wrap input[type=password]{border: 1px solid #e1e1e1;padding: 0 20px;height: 50px;width: 100%;outline: none;color: #555;}
.write_tbl table .inp_wrap select{border: 1px solid #e1e1e1;padding: 0 20px;height: 50px;width: 100%;outline: none;color: #555;background: url(../images/sel-arr.png) no-repeat right 20px center;}
.write_tbl table .inp_wrap.w_43 input[type=text],
.write_tbl table .inp_wrap.w_43 input[type=password]{max-width: 430px;}
.write_tbl table .inp_wrap .inp_3{display: flex;justify-content: space-between;max-width: 430px; width: 100%;}
.write_tbl table .inp_wrap .inp_3 input[type=text],
.write_tbl table .inp_wrap .inp_3 input[type=password],
.write_tbl table .inp_wrap .inp_3 select{width: calc(33.33% - 7px);}

.write_tbl table .inp_wrap.radio{display: flex; height: 50px; gap: 16px;}
.write_tbl table .inp_wrap.radio input{display: none;}
.write_tbl table .inp_wrap.radio .radio-item label{display: flex; align-items: center; gap: 0px;}
.write_tbl table .inp_wrap.radio .radio-item span{display: block; width: 18px;height: 18px;border: 1px solid #d5d5d5;border-radius: 50%;background-color: #fff;margin-right: 6px;position: relative;}
.write_tbl table .inp_wrap.radio .radio-item span::before{content: "";position: absolute;top:50%;left: 50%;transform: translate(-50%,-50%);width: 8px;height: 8px;background-color: #222;border-radius: 50%;opacity: 0;}
.write_tbl table .inp_wrap.radio .radio-item input:checked + label > span{border-color: #222;}
.write_tbl table .inp_wrap.radio .radio-item input:checked + label > span::before{opacity: 1;}

.write_tbl table .inp_wrap button{margin-left: 10px;background-color: #222;color: #fff;border: none;width: 140px;height: 50px;}
.write_tbl table .inp_wrap p{padding-left: 20px;color: #555;}

.terms{margin-top: 60px;}
.terms .tit{color: #222;font-weight: 600;font-size: 1.25rem;margin-bottom: 20px;}
.terms .box{background-color: #fafafa;border: 1px solid #dcdcdc;padding: 10px;height: 200px;overflow-y: auto;}
.terms .box p{font-size: 0.813rem;color: #888;line-height: 1.5em;}
.terms .box span{color: red;}
.terms .agree{margin-top: 20px;background-color: #fafafa;border: 1px solid #dcdcdc;padding: 25px 30px;display: flex;align-items: center;justify-content: space-between;}
.terms .agree p{color: #222;font-weight: 500;line-height: 1.3em;}
.terms .agree ul{display: flex;align-items: center;}
.terms .agree ul li ~ li{margin-left: 30px;}
.terms .agree ul li label{display: flex;align-items: center;}
.terms .agree ul li input{display: none;}
.terms .agree ul li span{width: 18px;height: 18px;border: 1px solid #d5d5d5;border-radius: 50%;background-color: #fff;margin-right: 10px;position: relative;}
.terms .agree ul li span::before{content: "";position: absolute;top:50%;left: 50%;transform: translate(-50%,-50%);width: 8px;height: 8px;background-color: #222;border-radius: 50%;opacity: 0;}
.terms .agree ul li input:checked ~ span{border-color: #222;}
.terms .agree ul li input:checked ~ span::before{opacity: 1;}
.terms .agree.chk{justify-content:center;gap: 0 20px;}
.terms .agree.chk ul li span{border-radius:2px;margin-right:0;}
.terms .agree.chk ul li span::before{border-radius:2px;}

.notice{text-align: center;margin-top: 80px;}
.notice strong{display: block;margin-bottom: 25px;color: #222;font-weight: 600;font-size: 2.25rem;}
.notice p{color: #555;font-size: 1.125rem;font-weight: 300;line-height: 1.556em;margin-bottom: 15px;}
.notice span{display: block;color: #777;font-size: 0.8rem;line-height: 1.5em;}

.list_tbl .sch{margin-bottom: 40px;}
.list_tbl .sch form{display: flex;justify-content: flex-end;}
.list_tbl .sch select{border: 1px solid #e1e1e1;padding: 0 20px;color: #555;width: 135px;height: 50px;background: url(../images/sel-arr.png) no-repeat right 20px center;margin-right: 10px;outline: none;}
.list_tbl .sch input{border: 1px solid #e1e1e1;border-right: none;width: 360px;height: 50px;outline: none;padding: 0 20px;color: #555;}
.list_tbl .sch button{border: 1px solid #222;width: 50px;height: 50px;background: url(../images/sch-icon.png) no-repeat center;background-size:18px auto;}
.list_tbl table{width: 100%;text-align: center;border-top: 1px solid #222;table-layout: fixed;}
.list_tbl table th{background-color: #fafafa;color: #222;font-size: 0.875rem;font-weight: 500;padding: 20px 5px;border-bottom: 1px solid #e1e1e1;}
.list_tbl table td{color: #222;font-size: 0.875rem;padding: 20px 5px;border-bottom: 1px solid #e1e1e1;line-height: 1.4em;word-break: break-all;}

.list_tbl table td .ck{display:block;}
.list_tbl table td .ck input{display:none;}
.list_tbl table td .ck span{display:block;width: 16px;height: 16px;border: 1px solid #d5d5d5;border-radius: 2px;background-color: #fff;position: relative;margin: 0 auto;}
.list_tbl table td .ck span::before{content: "";position: absolute;top:50%;left: 50%;transform: translate(-50%,-50%);width: 7px;height: 7px;background-color: #222;border-radius: 2px;opacity: 0;}
.list_tbl table td .ck input:checked ~ span{border-color: #222;}
.list_tbl table td .ck input:checked ~ span::before{opacity: 1;}

.list_tbl .tbl_bot{position:relative;margin-top:40px;height:40px;}
.list_tbl .tbl_bot .delete{position:absolute;right:0;top:0;}
.list_tbl .tbl_bot .delete button{border:1px solid #b32800;color:#b32800;background:none;font-size:1rem;height:33px;width:60px;}

.pagination{margin-top: 40px;}
.pagination ul{display: flex;align-items: center;justify-content: center;}
.pagination ul li{padding: 0 20px;}
.pagination ul li.arr a{display: block;border: 1px solid #e1e1e1;width: 40px;height: 40px;}
.pagination ul li.prev a{background: url(../images/prev-arr.png) no-repeat center;}
.pagination ul li.next a{background: url(../images/next-arr.png) no-repeat center;}
.pagination ul li a{color: #888;}
.pagination ul li.on a{color: #222;font-weight: 600;padding-bottom: 5px;border-bottom: 2px solid #888;}

.login{max-width: 480px;margin: 0 auto;}
.login .inp_form ul li ~ li{margin-top: 15px;}
.login .inp_form ul li input{width: 100%;border: 1px solid #ddd;height: 50px;padding: 0 20px;outline: none;}
.login .inp_form ul li input::placeholder{color: #888;}
.login .inp_form .submit{margin-top: 30px;}
.login .inp_form .submit button{width: 100%;background-color: #222;border: none;height: 55px;color: #fff;font-weight: 600;}
.login .login_info{margin-top: 30px;display: flex;}
.login .login_info li{width: 50%;text-align: center;}
.login .login_info li ~ li{border-left: 1px solid #ddd;}
.login .login_info li a{display: block;color: #555;padding: 15px 0;line-height: 1.3em;}
.login .ori{color: #777;font-size: 0.75rem;text-align: center;line-height: 1.5em;margin-top: 30px;}

@media screen and (max-width:1600px){
    header h1{left: 0;}
    header .tel{right: 0;}
    header .log_in{right: 280px;}
    header .menu .depth li{padding: 0 15px;}
    footer{padding: 60px 20px 80px;}
}

@media screen and (max-width:1500px) {
    header .log_in{right: 240px;}
}

@media screen and (max-width:1400px){
    html{font-size: 14px;}
    header .log_in{right: 220px;}
    header .menu .depth{margin-left: -50px;}
}
@media screen and (max-width:1200px){
    html{font-size: 13px;}
    header h1{margin-top: -22px;}
    header h1 a{width: 180px;height: 44px; background: url(../images/m_logo.jpg?ver=10) no-repeat center; background-size: contain;}
    header .tel a{padding-left: 20px;background-size: 15px auto;}
    header .tel a span{font-size: 1.5rem;}
    header .tel a span b{font-size: 1.5rem;}
    header .menu .depth li{padding: 0 10px;}
    header .log_in{right: 170px;}
}
@media screen and (max-width:1024px){
    html{font-size: 12px;}

    header h1{left: 50%;margin-left: -90px;}
    header .tel a{padding-left: 0;width: 20px;height: 20px;background-size: contain;}
    header .tel a span{display: none;}
    header .head_in{height: 60px;}
    header .menu{position: fixed;top: 0;left: -75%;z-index: 100;background-color: #fff;height: 100%;width: 75%;}
    header .menu.on{left: 0;}
    header .menu .close{display: block;}
    header .menu .depth{padding-top: 60px;display: block;margin-left:0;border-bottom: 1px solid #ddd;}
    header .menu .depth li{padding: 0;text-align: left;border-top: 1px solid #ddd;}
    header .menu .depth li a{line-height: 50px;padding: 0 20px;font-size: 1.25rem;}
    header .log_in{top: 30px;right: 20px;}
	header .log_in li a{font-size: 1rem;}
    header .nav_btn{display: block;}

    footer{padding: 40px 20px 60px;}
    footer .foot_logo{position: static;max-width: 250px;width: 42vw;margin-bottom: 15px;}
    footer .info{margin-bottom: 15px;}
    footer .ori{margin-bottom: 20px; margin-top: 25px;}

    .btn_area{margin-top: 40px;}
    .btn_area ul li{width: calc(50% - 5px);}
    .btn_area ul li ~ li{margin-left: 10px;}
    .btn_area ul li .btn{width: 100%;line-height: 40px;font-size: 1.15rem;}

    .con_ori{margin-top: 15px;}

    .contents{padding-top: 60px;}
    .vis{display: block;padding: 60px 0 70px;height: auto;}
    .vis .lef{display: none;}
    .vis .rig{width: 100%;display: block;}
    .vis .rig .tit{font-size: 2.9rem;margin-bottom: 20px}
    .vis .rig p{margin-bottom: 40px;}
    .vis .rig ul{max-width: none;}
    .vis .rig ul li ~ li{margin-top: 10px;}
    .vis .rig ul li a{height: 50px;box-shadow: 0 0 5px rgb(0 0 0 / 15%);}
    .vis .rig ul li a span{line-height: 50px;}

    .con_wrap{padding: 60px 20px 70px;}
    .con_tit{font-size: 2.5rem;margin-bottom: 50px;}
    .step ul{display: block;}
    .step ul li{width: 100%;padding: 30px 0;}
    .step ul li ~ li{border-left: none;border-top: 1px solid #d5d5d5;}
    .step ul li p{margin-bottom: 20px;}
    .step ul li dl{background-size: 50px auto;padding-top: 80px;}
    .step ul li dl dt{font-size: 1.8rem;margin-bottom: 10px;}

    .write_tbl table tr{display: block;}
    .write_tbl table th{display: block;padding: 15px 5px 0 5px;width: 100%;border-bottom: none;}
    .write_tbl table td{display: block;padding: 10px 5px 15px 5px;width: 100%;}
    .write_tbl table .inp_wrap input[type=text],
	.write_tbl table .inp_wrap input[type=password]{height: 35px;padding: 0 10px;}
    .write_tbl table .inp_wrap button{height: 35px;width: 75px;margin-left: 5px;}

    .write_tbl table .inp_wrap.radio{display: flex; height: 30px; gap: 10px;}    
    .write_tbl table .inp_wrap.radio .radio-item span{width: 16px; height: 16px;}
    .write_tbl table .inp_wrap p{width: 100%;padding-left: 0;margin-top: 5px;font-size: 0.9rem;}
    .write_tbl table .inp_wrap.w_43.w_btn input[type=text],
	.write_tbl table .inp_wrap.w_43.w_btn input[type=password]{max-width: calc(100% - 80px);}
    .write_tbl table .inp_wrap.w_43 input[type=text],
	.write_tbl table .inp_wrap.w_43 input[type=password]{max-width: 100%;}
    .write_tbl table .inp_wrap .inp_3{max-width: 100%;width: 100%;}
    .write_tbl table .inp_wrap select{height: 35px;padding: 0 10px;background-position: right 10px center;}
    .write_tbl table .inp_wrap .inp_3 input[type=text],
	.write_tbl table .inp_wrap .inp_3 input[type=password],
    .write_tbl table .inp_wrap .inp_3 select{width: calc(33.33% - 3px);}
    .write_tbl table .inp_wrap .inp_3.location_form select{font-size: 11px;}

    .terms{margin-top: 50px;}
    .terms .tit{margin-bottom: 15px;}
    .terms .box{height: 130px;}
    .terms .agree{margin-top: 10px;display: block;padding: 15px 10px;}
    .terms .agree ul{margin-top: 10px;}
    .terms .agree ul li ~ li{margin-left: 20px;}
    .terms .agree ul li span{width: 16px;height: 16px;margin-right: 5px;}
	.terms .agree.chk{display:flex;gap: 0 10px;}
	.terms .agree.chk ul{margin-top:0;}

    .notice{margin-top: 50px;}
    .notice strong{font-size: 1.8rem;margin-bottom: 15px;}
    .notice p{font-size: 1rem;line-height: 1.4em;}

    .list_tbl .sch{margin-bottom: 20px;}
    .list_tbl .sch select{width: 30%;height: 35px;padding: 0 10px;margin-right: 5px;background-position: right 10px center;}
    .list_tbl .sch input{height: 35px;width: calc(70% - 40px);padding: 0 10px;}
    .list_tbl .sch button{height: 35px;width: 35px;}
    .list_tbl table th,
    .list_tbl table td{padding: 15px 3px;}
	.list_tbl table td .ck span{width:14px;height:14px;}
	.list_tbl table td .ck span::before{width:6px;height:6px;}
	.list_tbl .tbl_bot{margin-top:30px;}
	.list_tbl .tbl_bot .delete{height:35px;}
	.list_tbl .tbl_bot .delete button{width:50px;height:29px;}

    .pagination ul li{padding: 0 15px;}
    .pagination ul li.arr a{width: 35px;height: 35px;}
    .pagination ul li.prev{padding-left: 0;padding-right: 10px;}
    .pagination ul li.next{padding-right: 0;padding-left: 10px;}

    .login .inp_form ul li ~ li{margin-top: 10px;}
    .login .inp_form ul li input{padding: 0 10px;height: 40px;}
    .login .inp_form .submit{margin-top: 15px;}
    .login .inp_form .submit button{height: 45px;}

}