.title_area{
	display:block;
	position:relative;
	margin:0 0 120px;
	border-radius:10px;
	overflow:hidden;
}
.title_area:after{
	content:'';
	position:absolute;top:0;left:0;
	display:block;width:100%;height:100%;
	background:#000;background-position:center;background-size:cover;
	transition:3s ease-out;transform:scale(1.08);opacity:0
}
.title_area h2{
	position:relative;
	height:265px;
	display:flex;align-items:center;justify-content:center;
	text-align:center;font-size:50px;font-weight:800;color:#fff;line-height:1.3em;
	z-index:1;
	visibility:hidden;transition:2s ease-out;opacity:0;transform:translateY(30px);transition-delay:.2s;
}
.title_area p{
	position:absolute;top:40px;left:40px;
	color:#fff;font-size:14px;
	z-index:1
}
.title_area a:after{content:'';display:inline-block;width:7px;height:7px;margin:0 5px;border-top:1px solid #fff;border-right:1px solid #fff;transform:rotate(44deg);}
.title_area a.home{font-size:0}
.title_area a.home:before{content:'';display:inline-block;width:14px;height:14px;margin-top:3px;background:url(../img/layout/ico_home.svg) no-repeat center;vertical-align:top}

.title_nobg .title_area h2{height:auto;padding-top:100px;color:#000;visibility:visible;opacity:1;transform:translateY(0);transition-delay:0s;transition:0s}
.title_nobg .title_area p{left:0;color:#000}
.title_nobg .title_area p a:after{border-color:#000}
.title_nobg .title_area p a.home:before{background-image:url(../img/layout/ico_home_black.svg)}
.title_nobg .title_area:after{display:none}

.intro_greeting .title_area:after{background-image:url(../img/bg/visual1_a.jpg)}
.intro_summary .title_area:after{background-image:url(../img/bg/visual1_b.jpg)}
.intro_history .title_area:after{background-image:url(../img/bg/visual1_c.jpg)}
.intro_group .title_area:after{background-image:url(../img/bg/visual1_d.jpg)}
.intro_shop .title_area:after{background-image:url(../img/bg/visual1_e.jpg)}

.company_facilities .title_area:after{background-image:url(../img/bg/visual2_a.jpg)}
.company_process .title_area:after{background-image:url(../img/bg/visual2_b.jpg)}
.company_license .title_area:after{background-image:url(../img/bg/visual2_c.jpg)}
.company_client .title_area:after{background-image:url(../img/bg/visual2_d.jpg)}

.business_product .title_area:after{background-image:url(../img/bg/visual3_a.jpg)}

.board_notice .title_area:after
.board_form_mail .title_area:after{display:none}

body.on .title_area:after{transform:scale(1);opacity:1}
body.on .title_area h2,
body.on main{visibility:visible;opacity:1;transform:translateY(0);}

main{max-width:1280px;margin:0 auto;visibility:hidden;transition:2s;opacity:0;transform:translateY(10px);transition-delay:.5s}
main>h3{
	margin-bottom:100px;
	font-size:18px;font-weight:400;line-height:1.3em;
}
main>h3 b{
	display:block;
	margin-bottom:40px;
	font-size:40px;font-weight:800;line-height:1.2em
}

/* 회사소개 */
main.intro_greeting{max-width:920px}
main.intro_greeting:before{
	content:'';
	position:absolute;right:100%;top:-120px;
	display:block;width:430px;height:877px;
	margin-right:40px;
	background:url(../img/intro/greeting_bg1.jpg) no-repeat;
}
main.intro_greeting:after{
	content:'';
	position:absolute;left:100%;top:-120px;
	display:block;width:469px;height:1065px;
	margin-left:40px;
	background:url(../img/intro/greeting_bg2.jpg) no-repeat;
}
main.intro_greeting h3{font-size:24px;font-weight:600;color:#CA1E1D}
main.intro_greeting p{margin-top:30px;font-size:18px;}
main.intro_greeting dl{text-align:right;margin-top:40px;}
.intro_greeting dt{font-size:18px;}
.intro_greeting dd{font-size:24px;}
.intro_greeting dd b{font-size:40px;font-weight:800}
main.intro_summary:before{
	content:'';
	position:absolute;right:200px;top:0;
	display:block;width:113px;height:105px;
	background:url(../img/intro/summary_bg1.png) no-repeat
}
main.intro_summary:after{
	content:'';
	position:absolute;right:0;top:200px;
	display:block;width:176px;height:126px;
	margin-left:120px;
	background:url(../img/intro/summary_bg2.png) no-repeat
}
.intro_summary .ct{position:relative;text-align:center}
.intro_summary .ct h4{
	position:relative;
	display:flex;align-items:center;
	justify-content: center;
    flex-direction: column;
	width:494px;height:427px;
	box-sizing:border-box;
	margin:0 auto;
	padding-bottom:57px;
	background:url(../img/intro/summary_bg.png) no-repeat center;
	text-align:center;font-size:26px;color:#fff;line-height:1.3em
}
.intro_summary .ct h4 b{display:block;}
.intro_summary .ct h4:after{
	content:'';
	position:absolute;bottom:0;left:50%;
	display:block;width:1px;height:70px;
	background:#CA1E1D
}
.intro_summary .ct ul{
	display:flex;justify-content: center;gap:20px;
	max-width:1122px;
	margin:0 auto
}
.intro_summary .ct ul li{flex:1;min-width:0}
.intro_summary .ct ul dl{
	position:relative;
	margin-bottom:40px;
	display:flex;align-items:center;
	justify-content: center;
    flex-direction: column;
	height:270px;
	box-sizing:border-box;
	padding:0 20px;
	border-radius:100px;
	background:#CA1E1DE5;
	text-align:center;
}
.intro_summary .ct ul dl:after{
	content:'';
	position:absolute;top:100%;left:50%;
	display:block;width:1px;height:40px;
	background:#CA1E1D
}
.intro_summary .ct ul dl dt{margin-bottom:10px;font-size:20px;font-weight:800;color:#fff;word-break:break-all;line-height:1em}
.intro_summary .ct ul dl dd{font-size:16px;color:#fff;line-height:1.3em;}
.intro_summary .ct ul p{
	position:relative;
	display:flex;align-items:center;justify-content: center;
	height:210px;
	box-sizing:border-box;
	padding:0 20px;
	border:1px solid #CA1E1D;
	border-radius:100%;
	text-align:center;
	font-size:15px;line-height:1.2em;color:#CA1E1D
}
.intro_summary .ct ul p:after{
	content:'';
	position:absolute;top:-4px;left:50%;
	display:block;width:7px;height:7px;
	margin-left:-3px;
	background:#CA1E1D;border-radius:50%
}

main.intro_history div{
	position:relative;
	padding-left:382px;
	border-bottom:1px solid #dedede
}
.intro_history div h4{
	position:absolute;left:0;top:0;
	font-size:84px;font-weight:800;color:#ddd
}
.intro_history div ul{position:relative;}
.intro_history div li{
	position:relative;
	padding:46px 0 46px 125px;
	font-size:24px;font-weight:600;
}
.intro_history div li em{
	position:absolute;left:0;
	display:inline-block;box-sizing:border-box;padding-left:13px;color:#CA1E1D;font-style:Normal;font-variant-numeric: tabular-nums;
}
.intro_history div ul:before{
	content:'';
	position:absolute;left:0;top:64px;
	display:block;width:2px;height:100%;
	background:#e48e8f
}
.intro_history div li:after{
	content:'';
	position:absolute;left:-3px;top:64px;
	display:block;width:8px;height:8px;
	margin-top:-4px;
	background:#CA1E1D;
	border-radius:50%
}
.intro_history div li+li{border-top:1px solid #dedede}
.intro_history div:first-child h4,
.intro_history div:last-child h4{color:#CA1E1D;}
.intro_history div:last-child ul:before{display:none}

.intro_group h3 b{color:#CA1E1D}
.intro_group .ct{max-width:1120px;margin:0 auto}
.intro_group .ct h4{
	position:relative;
	display:block;width:192px;height:192px;
	margin:0 auto 30px;
	box-sizing:border-box;
	border:1px solid #CA1E1D;border-radius:50%;
	background:url(../img/intro/group_logo.png) no-repeat center;background-size:auto 60%;
	font-size:0
}
.intro_group .ct h4:after{
	content:'';
	position:absolute;top:100%;left:50%;
	display:block;width:1px;height:30px;
	background:#CA1E1D
}
.intro_group .ct>ul{display:flex;justify-content: space-between;gap:50px}
.intro_group .ct>ul>li{
	flex:1;
	position:Relative;
}
.intro_group .ct ul li b{
	display:flex;height:58px;align-items:center;justify-content:center;
	box-sizing:border-box;
	background:#CA1E1D;
	border-radius:5px;
	text-align:center;font-size:18px;color:#fff;font-weight:600
}
.intro_group .ct ul ul li+li{margin-top:10px}
.intro_group .ct ul ul b{
	border:1px solid #ccc;
	background:#F2F1F1;
	color:#000;font-size:16px;
}
.intro_group .ct ul ul{position:relative;}
.intro_group .ct>ul>li:before,
.intro_group .ct ul ul:before{
	content:'';
	display:block;width:1px;height:30px;
	margin:0 auto;
	background:#CA1E1D
}
.intro_group .ct>ul>li:after{
	content:'';
	position:absolute;top:0;left:50%;
	display:block;width:calc(100% + 50px);height:1px;
	background:#CA1E1D
}
.intro_group .ct>ul>li+li:after{left:auto;right:50%}

.intro_shop ul{display:flex;flex-wrap:wrap;gap:20px;justify-content: space-between;}
.intro_shop ul li{display:flex;align-items:center;gap:15px;font-size:16px;}
.intro_shop ul li b{font-size:20px}
.intro_shop ul li:before{
	content:'';
	display:inline-block;width:50px;height:50px;
	background:url(../img/intro/location_ico1.png) no-repeat;background-size:100% auto;
}
.intro_shop ul li:nth-child(2):before{background-image:url(../img/intro/location_ico2.png)}
.intro_shop ul li:nth-child(3):before{background-image:url(../img/intro/location_ico3.png)}
.intro_shop .map{margin-top:50px;border-radius:20px;overflow:Hidden;font-size:0}
.intro_shop iframe{width:100%;aspect-ratio: 16 / 9;}

/* 사업소개 */
.company_facilities h3{margin-bottom:60px}
.company_facilities h3 ~ h3{margin-top:100px}
.company_facilities .table_wrap{width:100%;overflow:auto;overflow-y:hidden}
.company_facilities .table_wrap table{width:calc(100% + 1px);margin-left:-1px}
.company_facilities .table_wrap table thead th{
	height:63px;
	background:#CA1E1D;
	text-align:center;font-size:16px;font-weight:600;color:#fff;
}
.company_facilities .table_wrap table tbody th,
.company_facilities .table_wrap table td{
	padding:15px 6px;
	border:0;border-bottom:1px solid #EBD9D8;border-left:1px solid #EBD9D8;
	text-align:center;font-size:16px;font-weight:500;word-break:break-word
}
.company_facilities .table_wrap table tbody th{background:#F3F3F3}
.company_process .ct{max-width:932px;margin:0 auto;}
.company_process .ct ul{display:grid;grid-template-columns:repeat(3, 1fr);gap:50px;position:relative;width:100%;padding:20px 50px 0 50px;box-sizing:border-box}
.company_process .ct ul:nth-child(odd):after{content:'';position:absolute;top:148px;right:0;display:block;width:50px;height:calc(100% + 1px);box-sizing:border-box;border:1px solid #CA1E1D;border-radius:0 40px 40px 0;border-left:0;background:#fff}
.company_process .ct ul:nth-child(odd) li:nth-child(3):after,
.company_process .ct ul:nth-child(even) li:nth-child(1):after{width:100%}
.company_process .ct ul:nth-child(2):after{content:'';position:absolute;top:135px;left:0;display:block;width:50px;height:calc(100% + 1px);box-sizing:border-box;border:1px solid #CA1E1D;border-radius:40px 0 0 40px;border-right:0}
.company_process .ct ul:nth-child(even){direction: rtl;}
.company_process .ct ul:nth-child(even) *{direction: ltr;}
.company_process .ct ul li{flex:1;min-width:0;position:relative;}
.company_process .ct ul li:after{content:'';position:absolute;top:128px;left:0;display:block;width:calc(100% + 50px);height:1px;background:#CA1E1D}
.company_process .ct ul li:before{
	content:'';
	display:block;
	width:100%;height:95px;
	margin-bottom:35px;
	background:url(../img/company/process1.png) no-repeat;background-size:auto 100%
}
/*.company_process .ct ul li dl{border-top:1px solid #CA1E1D;}*/
.company_process .ct ul li dl dt{margin-bottom:10px;font-size:20px;font-weight:700;color:#CA1E1D;text-decoration:underline;text-underline-offset: 7px;text-decoration-thickness: 1px;}
.company_process .ct ul li dl dd{font-size:18px;font-weight:500}
.company_process .ct ul li dl:before{
	content:'1';
	position:relative;
	display:block;width:40px;height:40px;line-height:40px;
	margin:-21px 0 10px;
	background:#CA1E1D;
	border-radius:50%;
	text-align:center;font-size:14px;color:#fff;font-weight:700;
	z-index:1
}
.company_process .ct ul:nth-child(1) li:nth-child(2):before{background-image:url(../img/company/process2.png)}
.company_process .ct ul:nth-child(1) li:nth-child(3):before{background-image:url(../img/company/process3.png)}
.company_process .ct ul:nth-child(2) li:nth-child(1):before{background-image:url(../img/company/process4.png)}
.company_process .ct ul:nth-child(2) li:nth-child(2):before{background-image:url(../img/company/process5.png)}
.company_process .ct ul:nth-child(2) li:nth-child(3):before{background-image:url(../img/company/process6.png)}
.company_process .ct ul:nth-child(3) li:nth-child(1):before{background-image:url(../img/company/process7.png)}
.company_process .ct ul:nth-child(3) li:nth-child(2):before{background-image:url(../img/company/process8.png)}
.company_process .ct ul:nth-child(3) li:nth-child(3):before{background-image:url(../img/company/process9.png)}
.company_process .ct ul:nth-child(4) li:nth-child(1):before{background-image:url(../img/company/process10.png)}
.company_process .ct ul li:nth-child(2) dl:before{content:'2'}
.company_process .ct ul li:nth-child(3) dl:before{content:'3'}
.company_process .ct ul:nth-child(2) li:nth-child(1) dl:before{content:'4'}
.company_process .ct ul:nth-child(2) li:nth-child(2) dl:before{content:'5'}
.company_process .ct ul:nth-child(2) li:nth-child(3) dl:before{content:'6'}
.company_process .ct ul:nth-child(3) li:nth-child(1) dl:before{content:'7'}
.company_process .ct ul:nth-child(3) li:nth-child(2) dl:before{content:'8'}
.company_process .ct ul:nth-child(3) li:nth-child(3) dl:before{content:'9'}
.company_process .ct ul:nth-child(4) li:nth-child(1) dl:before{content:'10'}

.company_license ul{display:grid;grid-template-columns:repeat(5, 1fr);gap:50px 10px;}
.company_license ul b{display:block;margin-top:10px;text-align:center;font-size:16px;font-weight:500;line-height:1.3em}
.company_license ul b span{display:inline-block;}

.company_client ul{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px;}
.company_client ul li{font-size:0;border:1px solid #ddd}
.company_client .ct p{margin-top:10px;font-size:16px}

/* 제품소개 */
.business_product ul{border-top:1px solid #CA1E1D}
.business_product li{
	display:flex;gap:30px;align-items:center;
	padding:60px 0;
	border-bottom:1px solid #CA1E1D
}
.business_product li dt b{display:block;font-size:36px;font-weight:700;color:#CA1E1D;}
.business_product li dt span{font-size:18px;font-weight:500;color:#CA1E1D;text-decoration:underline;text-underline-offset: 5px;text-decoration-thickness: 1px;}
.business_product li dd{margin-top:20px;font-size:16px}
.business_product li:nth-child(even){flex-direction: row-reverse;}

@media all and (max-width:1024px){
	.title_area{margin:0 0 80px;}
	.title_area h2{font-size:40px}
	main>h3{margin-bottom:80px;font-size:16px}
	main>h3 b{margin-bottom:20px;font-size:30px}

	/* 회사소개 */
	main.intro_summary:before,
	main.intro_summary:after{display:none}
	.intro_summary .ct ul{flex-direction: column;gap:50px 0}
	.intro_summary .ct ul dl,
	.intro_summary .ct ul p{height:auto;padding:20px;border-radius:40px}
	main.intro_history div{padding-left:290px}
	.intro_group .ct>ul{gap:20px}
	.intro_group .ct>ul>li:after{width:calc(100% + 20px);}

	/* 사업소개 */
	.company_facilities .table_wrap table{min-width:629px;}
	.company_facilities .table_wrap table thead th,
	.company_facilities .table_wrap table tbody th,
	.company_facilities .table_wrap table td{height:auto;padding:10px 5px;font-size:14px}
	.company_license ul{grid-template-columns:repeat(4, 1fr);}
	.company_client ul{grid-template-columns:repeat(3, 1fr);}

	/* 제품소개 */
	.business_product li{display:block;width:100%;overflow:hidden;}
	.business_product li img{float:left;margin:0 20px 0 0;max-width:40%}
	.business_product li:nth-child(even) img{float:right;margin:0 0 0 20px;}
	
}

@media all and (max-width:760px){
	.title_area{border-radius:5px;margin-bottom:50px;}
	.title_area h2{height:160px;font-size:30px}
	.title_area p{top:20px;left:20px;font-size:12px}
	main>h3{margin-bottom:50px;font-size:15px}
	main>h3 b{font-size:25px}

	/* 회사소개 */
	main.intro_greeting p,
	main.intro_greeting dt{font-size:16px}
	main.intro_greeting dd{font-size:16px}
	main.intro_greeting dd img{width:150px}
	.intro_summary .ct h4{width:320px;height:262px;background-size:100% auto;font-size:20px;padding-bottom:34px}
	.intro_summary .ct ul p{font-size:13px}
	main.intro_history div{padding-left:100px}
	.intro_history div h4{top:5px;font-size:28px}
	.intro_history div li{padding:14px 0 14px 88px;font-size:16px}
	.intro_history div ul:before,
	.intro_history div li:after{top:26px;}
	.intro_group .ct h4{width:150px;height:150px}
	.intro_group .ct>ul{display:grid;grid-template-columns:repeat(2, 1fr)}
	.intro_group .ct ul li b{height:48px;font-size:16px}
	.intro_group .ct ul li b{font-size:14px}
	.intro_group .ct>ul>li:nth-child(3):after{display:none}
	.intro_group .ct h4:after{height:382px}
	.intro_shop ul li:before{width:25px;height:25px;font-size:15px}
	.intro_shop ul li b{font-size:18px}
	.intro_shop iframe{aspect-ratio: 5 / 5;}
	
	/* 사업소개 */
	.company_facilities h3{margin-bottom:30px}
	.company_facilities h3 ~ h3{margin-top:60px}
	.company_facilities .table_wrap table thead th,
	.company_facilities .table_wrap table tbody th,
	.company_facilities .table_wrap table td{height:auto;padding:8px 5px;font-size:13px}
	.company_process .ct ul{display:block;padding:0 0 0 40px;direction:ltr}
	.company_process .ct ul li{margin-top:50px}
	.company_process .ct ul li:after{display:none}
	.company_process .ct ul:nth-child(even){direction:ltr}
	.company_process .ct ul:nth-child(odd):after,
	.company_process .ct ul:nth-child(even):after{top:5px;right:auto;left:13px;width:1px;height:calc(100% + 50px);border-radius:0;}
	.company_process .ct ul li:before{height:50px;position:absolute;right:0;background-position:right 0;width:100px;top:-22px}
	.company_process .ct ul li dl:before{width:26px;height:26px;line-height:26px;font-size:13px;position:absolute;left:-40px;top:23px}
	.company_process .ct ul li dl dt{font-size:18px}
	.company_process .ct ul li dl dd{font-size:16px}
	.company_license ul{grid-template-columns:repeat(3, 1fr);gap:30px 8px}
	.company_license ul b{font-size:13px}
	.company_client ul{grid-template-columns:repeat(2, 1fr);}
	.company_client .ct p{font-size:13px}

	/* 제품소개 */
	.business_product li{padding:40px 0}
	.business_product li img{float:none;display:block;margin:0 auto 20px !important;max-width:100%}
	.business_product li dt b{font-size:22px}
	.business_product li dt span,
	.business_product li dd{font-size:14px}

}