@font-face {
    font-family: 'ChosunKm';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@1.0/ChosunKm.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/* ------------- */

p{color: red;}
img{width: 100%;}

/* ------------- */

#container{
	margin-top: 90px;
}

.banner_wrap{
	width: 100%;
	height: 500px;
	/*height: auto;*/
	/*background: url(/theme/AT_WEB01/img/main_visual_03.jpg) center no-repeat;*/
	/*background: url(/theme/AT_WEB01/img/main_visual_banner1.png) center no-repeat;*/
	/*background-size: cover;*/
	/*background-size: cover;*/
}

.sub_wrap{
	/*display: none;*/
	/*max-width: 1200px;*/
	max-width: 1350px;
	margin: 50px auto;
	padding: 20px;
}

.tit_wrap{
	display: flex;
	justify-content: center;
}
.sub_tit{
	position: relative;
	margin-top: 30px;
	font-size: 34px;
	display: inline-block;
	font-weight: bold;
	margin-bottom: 30px;
}
.sub_tit:after{
	content: '';
	position: absolute;
	left:0;
	bottom: -15px;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, red, green, blue);
}
.sub_wrap h3{
	display: block !important;
	margin-bottom: 30px;
}
/* --------- */

.sub1_1{
	display: block;
}
.greetings_wrap{
	display: flex;
	margin-bottom: 50px;
	font-family: 'ChosunKm';
}

.greetings_wrap h3{
	font-size: 28px;
	margin-bottom: 30px;
	line-height: 2rem;
}
.greetings_wrap p{
	font-size: 24px;
	line-height: 2rem;
}
.greetings_wrap img{
	width: 250px;
}
.gr_name{
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.gr_name p{
	font-size: 28px;
	margin-right: 5px;
}
.gr_name img{
	width:100px;
}

/* --------- */
.org_img img{
	width: 100%;
}
/* --------- */

/* --------- */
.history p{
	font-size: 28px;
	margin-bottom: 30px;
	line-height: 40px;
	text-indent: -20px;
	padding: 30px 0 0 20px;
	border-top: 1px solid #ddd;
}
.history span{
	font-size: 20px;
	vertical-align: top;
}
.history b{
	float: right;
	width: 20%;
}
/* --------- */

/* --------- */
.license{
	display: flex;
	justify-content: center;
	overflow: auto;
	padding-top: 30px;
	/*border-top: 1px solid #ddd;*/
}
.license li{
	min-width: 300px;
	margin-right: 20px;
}
.license img{
	width: 100%;
	margin-right: 20px;
}
.license p{
	text-align: center;
	font-size: 24px;
	padding: 10px;
	background: #f3f3f7;
}
/* --------- */

/* --------- */
.manpower{
	width: 100%;
	text-align: center;
	border: 1px solid #000;
	border-width: 1px 0 0 1px;
	border-spacing: 0;
}
.manpower.mobile{
	display: none;
}
.manpower th,
.manpower td{
	font-size: 24px;
	border: 1px solid #000;
	border-width: 0 1px 1px 0;
}
.manpower td:after{
  content: "";
  display: inline-block;
  width: 100%;
}
.manpower td:before {
  content: "";
  display: inline-block;
  width: 100%;
}
.manpower td {
text-align: justify;
}

.manpower_img{
	margin-top: 30px;
}
.manpower_img img{
	width: 100%;
}
.manpower_text{
	margin: 30px 0;
}
.manpower_text p{
	text-align: center;
	font-size: 32px;
	font-weight: bold;
	line-height: 30px;
}
.manpower_text span{
	color: #3a3aa6;
}
/* --------- */

/* --------- */
.root_daum_roughmap{
	width: 100% !important;;
}
.map p{
	font-size: 20px;
	margin-top: 10px;
}
/* --------- */

/* --------- */
.root_daum_roughmap{
	width: 100% !important;;
}
.safty_text{
	font-size: 24px;
	padding: 40px 50px;
	line-height: 3rem;
	background: #eaf5ff;
	border-top-right-radius: 100px;
	border-bottom-left-radius: 100px;
}
.safty_img{
	margin-top: 30px;
}
.safty_img img{
	width: 100%;
}
.advantages{
	margin-top: 30px;
	font-size: 24px;
	/*background: url(../img/sub/advantages.png) no-repeat;*/
	/*background: url(../img/sub/advantages2.png) no-repeat;*/
	/*background-size: 30%;*/
	/*background-position: 90% 60%;*/
}
.advantages p{
	margin-bottom: 10px;
}
.safty_table{
	overflow: auto;
}
.safty_table h3{
	font-size: 24px;
	margin-bottom: 20px;
}
.safty_table table{
	min-width: 1160px;
	border: 1px solid #000;
	border-width: 1px 0 0 1px;
	border-spacing: 0;
}
.safty_table table th,
.safty_table table td{
	font-size: 20px;
	border: 1px solid #000;
	border-width: 0 1px 1px 0;
	padding: 0 10px;
}
.safty_table table th{
	color: #fff;
	background: #2e2eae;
}
.safty_table table td{
	vertical-align: top;
}
.safty_table table td:first-child{
	vertical-align: middle !important;
	text-align: center;
}
.safty_table table td span{
	font-size: 14px;
	color: orange;
}
/* --------- */

/* --------- */
.check_img{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: calc(100% + 20px);
	left: -10px;
}
.check_img li{
	width: calc(33% - 20px);
	margin: 10px;
	border: 1px solid;
	background: #ffeed0;
}
.check_img img{
	width: 100%;
}
.check_img li p{
	text-align: center;
	font-size: 20px;
	font-weight: 600;
}
/* --------- */

/* --------- */
.check_img.work img{
	margin-bottom: 50px;
}
/* --------- */

/* --------- */
.retardant{
	font-size: 24px;
	background-size: 30%;
	background-position: 90% 60%;
}
.retardant p{
	margin-bottom: 10px;
	padding-left: 25px;
	text-indent: -30px;
	line-height: 2rem;
}
/* --------- */

/* --------- */
.safty_text p{
	padding-left: 30px;
	text-indent: -30px;
}
.safty_text span{
	padding-left: 30px;
	text-indent: -30px;
}
/* --------- */

/* --------- */
.table_tit{
	margin: 30px 0;
	font-size: 24px;
	text-align: center;
}
/* --------- */

/* --------- */
.sub_tit.sub3{
	text-align: center;
}

/* --------- */

/* --------- */
.sub_tit .down_paper{
	display: block;
	font-size: 24px;
	color: red;
	margin-top: 10px;
}
.sub_tit .down_paper a{
	display: inline-block;
	width: 30px;
	margin-left: 10px;
}
.applicant_form li{
	display: flex;
	margin-bottom: 20px;
	border: 1px solid #ddd;
	padding: 10px;
}
.applicant_form li > div{
	display: flex;
	align-items: center;
}
.applicant_form li > div:nth-child(1){
	display: flex;
	width: 40%;
}
.applicant_form li > div:nth-child(2){
	width: 60%;
	border-left: 1px solid #ddd;
	padding-left: 30px;
}
.applicant_form li .birth_wrap{
	width: calc(100% - 100px);
}
.applicant_form li label{
	font-size: 26px;
	width: 100px;
	margin-left: 30px;
}
.applicant_form li label:first-child{
	margin:0;
}
.applicant_form li input,
.applicant_form li select{border: 1px solid; border-radius: 5px; font-size: 18px;}
.applicant_form li select{margin: 0 5px; width: calc(33% - 20px);}

.applicant_form.form2 li > div{
	width: 100%;
}
.applicant_form.form2 li .applicant_file .file_name{
	width: calc(100% - 110px);
	border: 1px solid #ddd;
	padding: 4px;
}
.applicant_form.form2 li .applicant_file #file{
	display: none;
}
.applicant_form.form2 li .applicant_file label{
	font-size: 18px;
	border: 1px solid #ddd;
	background: #eee;
	margin-left: 10px;
	padding: 5px;
	text-align: center;
}

.agree{
	display: flex;
	flex-direction: column;
	align-items: center;
}
.agree textarea{
	border: 1px solid #ddd;
	padding: 20px;
}
.agree_check{
	display: flex;
	margin: 30px 0;
}
.agree_check label{
	font-size: 20px;
	margin: 0 20px;
}
.agree_check label input{
	width: 20px;
	height: 20px;
    vertical-align: bottom;
}
.agree .appli_btn{
	position: relative;
    display: block;
    /*padding: 5px 20px 5px 55px;*/
    padding: 5px 20px 5px 20px;
    font-size: 24px;
    background: #45deff;
    border: 1px solid #ddd;
    margin: 30px auto 0;
    background: linear-gradient(1deg, #d9d9d9, #ffffff 45%);
    border-radius: 10px;
}
/*.agree .appli_btn:after{
	content: '';
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    background: url(/theme/AT_WEB01/img/main/send.png) no-repeat;
    background-size: 100%;
}*/
/* --------- */

/* --------- */
.insurance_img{
	display: flex;
	justify-content: center;
	margin-top: 30px;
}
.insurance_img img{
	width: auto;
}


.estimate.insurance{
	margin-top: 30px;
	max-width: 1200px;
}
.estimate ul > li .form_line.line1{
	width: 100%;
}
.estimate.insurance ul > li label{
	color: #000;
}

.view_agree{
	display: flex;
}
.view_agree .view_btn{
	background: none;
	font-weight: bold;
	margin-left: 5px;
}
.estimate.insurance .send_btn{
	margin-top: 50px;
}
.estimate.insurance input{
	background: #f0f0f0;
	border: none;
}
.estimate.insurance ul > li .form_line.line2{
	width:48%;
}
/* --------- */

/* --------- */
.join_how .how_form{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.join_how .how_form > div{
	width: 48%;
	padding: 20px;
	/*border: 1px solid #ddd;*/
	border: 2px solid skyblue;
	border-style: dashed;
}
.join_how h3{
	text-align: center;
	margin-bottom: 10px;
	background: yellow;
}
.join_how img{
	width: 100%;
	/*width: 50%;*/
	margin: 0 auto;
}
.join_how p,
.join_how a{
	font-size: 24px;
	margin-bottom: 10px;
}
.join_how a{
	color: blue;
}
.join_how label{
	font-size: 18px;
	margin: 10px 0;
}
.join_how input{
	border: 1px solid #ddd;
	width: 100%;
	font-size: 18px;
}
.join_how button.send_btn {
    position: relative;
    display: block;
    padding: 5px 20px 5px 55px;
    font-size: 24px;
    background: #45deff;
    border: 1px solid #ddd;
    margin: 30px auto 0;
    background: linear-gradient(1deg, #d9d9d9, #ffffff 45%);
    border-radius: 10px;
}
.join_how button.send_btn:after {
    content: '';
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    background: url(/theme/AT_WEB01/img/main/send.png) no-repeat;
    background-size: 100%;
}
/* --------- */

.sub_nav{
	display: flex;
	justify-content: center;
	width: 100%;
	border-bottom: 1px solid #ddd;
}
.sub_nav li{
	margin: 0 20px;
	font-size: 18px;
}
.sub_nav li:hover{
	margin-bottom: -2px;
	border-bottom: 2px solid red;
	font-weight: bold;
}
.sub_nav li.on{
	margin-bottom: -2px;
	border-bottom: 2px solid red;
	font-weight: bold;
}
.sub_nav li a{
	display: block;
	padding: 10px 20px;
}

.sub_nav.nav04{
	border-bottom: 0;
}
.sub_nav.nav04 li{
	width: 25%;
	margin: 0 1px;
	text-align: center;
	border: 1px solid #ddd;
}
.sub_nav.nav04 li:hover,
.sub_nav.nav04 li.on{
	background: #fee8fd;
	border-bottom: 1px solid #ddd;
	margin-bottom: 0;
}
@media all and (max-width: 1200px){
	.join_how p,
	.join_how a{
		font-size: 18px;
	}
}
@media all and (max-width: 1024px){
	.greetings_wrap{
		flex-direction: column-reverse;
	    align-items: center;
	    text-align: center;
	}
	.history p{
		font-size: 22px;
	}
	.history span{
		font-size: 16px;
	}
	.sub_tit{
		margin-top: 30px;
	}
	
	.join_how p,
	.join_how a{
		font-size: 16px;
		text-align: right;
	}
}
@media all and (max-width: 900px){
	.safty_text{
		font-size: 24px;
	}
	.applicant_form li{
		flex-direction: column;
	}
	.applicant_form li > div:nth-child(1){
		width: 100%;
	}
	.applicant_form li > div:nth-child(2){
		width: 100%;
		padding: 0;
		border: 0;
		margin-top: 10px;
	}
	.applicant_form li .birth_wrap{
		width: calc(100% - 200px);
	}
	.applicant_form li label{
		width: 200px;
	}
	.applicant_form li select#year{
		margin-left: 0;
	}
	.applicant_form.form2 li .applicant_file{
		flex-direction: row;
	}
	.join_how .how_form{
		flex-direction: column;
		align-items: center;
	}
	.join_how .how_form > div{
		width: 100%;
		margin: 10px 0;
	}
	
	.sub_nav{
		justify-content: center !important;
	}
	.sub_nav li{
		margin: 0 5px;
	}
	.sub_nav li a{
		padding: 10px 0;
	}
}
@media all and (max-width: 768px){
	.banner_wrap{
		height: 260px;
	}
	.sub_wrap {
		margin: 0 auto;
	}
	.sub_tit{
		font-size: 20px;
	}
	
	.greetings_wrap h3,
	.gr_name p{
		font-size: 18px;
	}
	.greetings_wrap p{
		font-size: 14px;
	}
	.greetings_wrap img{
		width: 180px;
	}
	.gr_name img{
		width: 80px;
	}
	
	.history p{
		font-size: 12px;
		padding-bottom: 30px;
	}
	.history span{
		font-size: 10px;
	}
	.history b{
		width: 100%;
		text-align: right;
	}
	
	.license{
		justify-content: flex-start;
		flex-direction: column;
		align-items: center;
	}
	.license li{
		margin-right: 0;
		margin-bottom: 20px;
	}
	
	.manpower{
		display: none;
	}
	.manpower.mobile{
		display: table;
	}
	.manpower.mobile th,
	.manpower.mobile td{
		font-size: 20px;
	}
	.manpower_text p{
		font-size: 16px;
	}
	
	.map p{
		font-size: 14px;
	}
	
	.safty_text{
		font-size: 12px !important;
		padding: 10px;
		border-radius: 20px;
		border-top-left-radius: 0;
		line-height: 1.5rem;
	}
	
	.safty_table table th,
	.safty_table table td{
		font-size: 14px;
	}
	.advantages{
		background: url(../img/sub/advantages2.png) no-repeat;
		    background-size: 100%;
    background-position: 0 50%;
	}
	.advantages p{
		font-size: 16px;
	}
	
	.check_img li {
    width: calc(33% - 10px);
    margin: 5px;
   }
	.check_img li p{
		font-size: 10px;
	}
	
	.retardant p{
		font-size: 14px;
		text-indent: -15px;
	}
	
	.table_tit{
		font-size: 18px;
	}
	
	.sub_tit .down_paper{
		font-size: 16px;
	}
	.applicant_form li > div{
		flex-direction: column;
		align-items: flex-start;
	}
	.applicant_form li label:first-child{
		width: auto;
		font-size: 20px;
		margin-right: 10px;
		margin-bottom: 10px;
	}
	.applicant_form li .birth_wrap{
		width: 100%;
	}
	.applicant_form li select{
		width: 33%;
		margin: 0 -1px;
	}
	
	.applicant_form.form2 li .applicant_file label{
		width: 80px;
	}
	.applicant_form.form2 li .applicant_file input{
		width: calc(100% - 90px) !important;
	}
	.agree_check label{
		font-size: 16px;
	}
	.insurance_img img{
		width: 95%;
	}
	
	.join_how .safeone_ico{
		width: 75px !important;
	}
	
	.sub_nav li{
		font-size: 12px;
	}
	.tbl_head01 td{
		height: 35px;
	}
}