@media screen and (max-width: 1280px) {
	
	.wrap { width: 96%; }
	.sidebar .wrap { width: 100%; }

	/* main */
	.main_con03list li { width: 32%; margin-left: 2%; }
	.main_con03list li .imgbox img { width: 100%; }

	/* sub */
	.greetings_imgbox { margin-right: 40px; width: 480px; }
	.greetings_txtbox { width: calc(100% - 520px); }

	.business01_imgbox { margin-right: 40px; width: 480px; }
	.business01_txtbox { width: calc(100% - 520px); }

}

@media screen and (max-width: 1200px){
	
	/* user 2023-05-22 */
	.hd_pops { left: 2% !important; top: 80px !important; max-width: 96%; height: auto; }
	.hd_pops_con { max-width: 100% !important; width: auto !important; height: auto !important; }
	.hd_pops_con a { display: inline-block; }

}

@media screen and (max-width: 1024px) {
	
	/* head */
	.head { height: 70px; }
	.head .wrap { height: 70px; }
	.menu { display: none;}

	nav.mobile_menu { position: fixed; top: -100vh; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; width: 100%; height: 100vh; z-index: 990; background: rgba(0, 0, 0, 0.9); border-bottom-right-radius: 100%; border-bottom-left-radius: 100%; transition: all 650ms cubic-bezier(1,0,0,1); }
	nav.mobile_menu.open { top: 0; padding: 80px 0px; border-radius: initial; }

	.menu-toggler { position: absolute; top: 25px; right: 2%; width: 30px; height: 19px; display: flex; flex-direction: column; justify-content: space-between; z-index: 999; transition: all 650ms ease-out; cursor: pointer; }
	.menu-toggler.open { transform: rotate(-45deg); }

	.bar { background-color: #fff; width: 100%; height: 2px; border-radius: 0.8rem; }
	.open .bar { background-color: #fff; }
	.bar.half { width: 50%; }
	.bar.top { transform-origin: right; transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57); }
	.open .bar.top { transform: rotate(-450deg) translateX(0.45rem); }
	.bar.bottom { align-self: flex-end; transform-origin: left; transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57); }
	.open .bar.bottom { transform: rotate(-450deg) translateX(-0.45rem); }
	
	.nav-inner { display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between; align-items: center; }
	.nav-list { display: flex; justify-content: center; align-items: flex-start; flex-direction: column; width: 100%; height: 100%; }
	.nav-list li { margin-bottom: 30px; width: 100%; text-align: center; }
	.nav-list li:last-child { margin-bottom: 0px; }
	.nav-list li a { position: relative; color: #fff; font-size: 1.5em; }

	.nav-inner ul ul { display: none; margin-top: 10px; }
	.nav-inner ul ul li { margin-bottom:0px; }
	.nav-inner ul ul li a { display: inline-block; padding: 0px; color: rgba(255, 255, 255, 0.7); font-size: 1.1em; font-weight: 300; line-height: 1.8; text-decoration: none; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; -ms-transition: all 0.5s; transition: all 0.5s; }
	.nav-inner ul ul li a:hover { color: rgba(255, 255, 255, 1); }
	.nav-inner ul ul li a:before { display: none; height: 1px; }

	/* footer */
	.footer { padding: 30px 0; }
	.footer_menu { position: relative; justify-content: center; margin-bottom: 20px; }
	.footer_menu li { justify-content: center; }
	.footer_info { display: flex; flex-wrap: wrap; flex-direction: column-reverse; text-align: center; padding-bottom: 10px; }
	.footer_info_inner p span { padding: 0 10px; }
	.footer_copyright { padding-top: 0; text-align: center; border-top: none; }

	/* main */
	.main_vis .wrap { height: calc(100% - 70px); }
	.main_vis .wrap:after { display: none; }

	.scroll-down { right: 0; }
	
	.main_con03list li { width: 32%; margin-left: 2%; }
	.main_con03list li .imgbox img { width: 100%; }

	/* sub */
	.sub_txtbox { padding-top: 70px; }

	.greetings_imgbox { margin-right: 0px; margin-bottom: 50px; width: 100%; text-align: center; }
	.greetings_txtbox { text-align: center; width: 100%; }

	.business01_imgbox { margin-right: 0px; margin-bottom: 50px; width: 100%; text-align: center; }
	.business01_txtbox { text-align: center; width: 100%; }
	
	.employment03_inr01 { padding: 30px 10px; border: 8px solid #eee; }
	.employment03_inr01 h3 { margin-bottom: 20px; font-size: 28px; }
	.employment03_inr01 p { font-size: 16px; }

	.employment03_steplist li { flex: 1; margin-right: 20px; }
	.employment03_steplist li:after { right: -20px; }

	.pr_center_list li:first-child { width: 200px; }
	.pr_center_list li:last-child { width: calc(100% - 200px); }

}

@media screen and (max-width: 768px) {
	
	/* footer */
	.footer_menu { position: relative; justify-content: center; margin-bottom: 20px; }
	.footer_info { display: flex; flex-wrap: wrap; flex-direction: column-reverse; text-align: center; padding-bottom: 10px; }
	.footer_info_inner p span { padding: 0 10px; }
	.footer_copyright { padding-top: 0; text-align: center; border-top: none; }
	
	#quick { top: auto; bottom: 2%; margin-top: auto; }
	#quick ul li { width: 160px; margin-bottom: 5px; }
	#quick ul li a { display: flex; flex-wrap: wrap; align-items: center; padding: 8px 0px 8px 8px; }
	#quick ul li p { font-size: 12px; line-height: 22px; }

	/* main */
	.main_vis { height: 650px; }
	.main_txtbox { width: 100%; padding: 0; text-align: center; }
	.main_txtbox h2 { font-size: 45px; }
	.main_txt01 { font-size: 20px; }
	.main_txt02 { font-size: 18px; }

	.main_txt_decobox { display: none; }

	.main_con { padding: 60px 0; }
	.main_con h3 { margin-bottom: 30px; font-size: 32px; }

	.main_con02 .iconbox { margin-bottom: 20px; }
	.main_con02 .iconbox img { width: 75px; }
	.main_con.main_con02 h3 { margin-bottom: 10px; }
	.main_con02 p { font-size: 20px; }

	.main_con03list li .txtbox h4 { margin-bottom: 20px; font-size: 20px; }
	.main_con03list li .txtbox { padding: 30px 10px; }

	/* sub */
	.sub_vis { height: 400px; }
	.sub_txtbox h2 { margin-bottom: 15px; font-size: 30px; }
	.sub_txtbox p { font-size: 16px; }

	.sidebar_inr li { height: 55px; }
	.sidebar_inr li a { font-size: 1.1em; }

	.sub_contents { padding: 50px 0; font-size: 1em; }
	.sub_title { margin-bottom: 30px; }
	.sub_title h2 { font-size: 32px; }
	.sub_title p { margin-top: 15px; font-size: 0.95em; }

	.greetings_title h3 { margin-bottom: 10px; font-size: 24px; }
	.greetings_title p { font-size: 18px; }
	
	.vision_inr { margin-bottom: 50px; }
	.vision_inr02 { margin-bottom: 0px; }

	.vision h3 { font-size: 24px; }
	.vision_list li { width: calc(100% - 240px); }
	.vision_list li:first-child { width: 240px; }
	.vision_list li:last-child { padding-left: 30px; padding-right: 30px; }
	.vision_list li .vision_iconbox img { width: 50px; }
	.vision_list li h3 {  }
	.vision_list02 li dl { padding: 20px 10px; }
	
	.center-history { margin-bottom: 50px; }
	.history_inr02 { padding-top: 50px; }
	.history_inr02 h3 { margin-bottom: 30px; font-size: 24px; }

	.business01_txtbox h3 { font-size: 24px; }
	.business01_txtbox p { font-size: 16px; }

	.business_list li { width: calc(100% - 240px); }
	.business_list li:first-child { width: 240px; }
	.business_list li:last-child { padding-left: 30px; padding-right: 30px; }
	.business_list li .business_iconbox { margin-bottom: 10px; }
	.business_list li .business_iconbox img { width: 50px; }

	.employment02_list li:first-child { width: 200px; }
	.employment02_list li:last-child { width: calc(100% - 200px); padding: 30px 30px; }

	.employment03_inr02 h3 { font-size: 24px; }
	.employment03_steplist { margin-bottom: 50px; }
	.employment03_steplist li .imgbox { margin-bottom: 10px; }
	.employment03_steplist li .imgbox img { width: 130px; }
	.employment03_steplist li h4 { font-size: 16px; }

	.employment03_infobox { margin-bottom: 50px; }

	.pr_center_list li:first-child { width: 180px; }
	.pr_center_list li:last-child { width: calc(100% - 180px); padding: 20px 30px; line-height: 1.4; }

	.accordion_wrap h3 { font-size: 24px; }

}

@media screen and (max-width: 640px) {
	
	/* main */
	.main_vis { height: 550px; }
	.main_con.main_con02 h3 { font-size: 24px; }

	/* sub */
	.sub_vis { height: 350px; }
	
	.vision_list li { width: calc(100% - 180px); padding: 20px 0; }
	.vision_list li:first-child { width: 180px; }
	
	.business_list { margin-bottom: 20px; }
	.business_list li { width: calc(100% - 180px); padding: 20px 0; }
	.business_list li:first-child { width: 180px; }

	.employment03_inr02 h3 { font-size: 20px; }

	.employment02_list li:first-child { width: 150px; }
	.employment02_list li:last-child { width: calc(100% - 150px); }

	.employment03_steplist li .imgbox img { width: 100px; }

	.employment03_infobox { padding: 20px; }
	.employment03_infobox span { margin:2px 0; padding: 0 0px; width: 100%; }
	.employment03_infobox span:after { display: none; }
	
	.employment03_btn { width: 32%; height: 45px; margin: 0 0.5%; }

	.pr_center_list li:first-child { width: 150px; }
	.pr_center_list li:last-child { width: calc(100% - 150px); }

	.accordion .accordion_q { padding: 15px 15px; }

}

@media screen and (max-width: 575px) {

	/* footer */
	.footer_menu li a { width: 110px; height: 45px; }
	
	/* main */
	.main_vis { height: 450px; }
	.main_txtbox h2 { margin-bottom: 15px; font-size: 36px; }
	.main_txt { font-size: 17px; }	
	
	.scroll-down { right: calc(50% - 7px); }
	.scroll-down p { display: none; }

	.main_con03list { width: 96%; margin: 0 auto; }
	.main_con03list li { width: 100%; margin-left: 0%; margin-bottom: 20px; }
	.main_con03list li:last-child { margin-bottom: 0px; }

	/* sub */
	.sub_txtbox h2 { font-size: 24px; }

	.business01_txtbox h3 br { display: none; }

	.vision h3 { margin-bottom: 20px; }
	.vision_list li { width: calc(100% - 150px); }
	.vision_list li:first-child { width: 150px; }
	.vision_list02 li { width: 100%; margin-left: 0%; margin-bottom: 20px; }
	.vision_list02 li:last-child { margin-bottom: 0px; }
	.vision_list02 li dl { padding: 20px; }
	.vision_list02 li h4 { height: 50px; font-size: 18px; }

	.business_list li { width: calc(100% - 150px); }
	.business_list li:first-child { width: 150px; }

	.employment02_list li:first-child { justify-content: flex-start; width: 100%; padding: 20px 30px 0; background: transparent; }
	.employment02_list li:last-child { width: 100%; padding: 20px 30px 30px; }

	.employment03_steplist li .imgbox img { width: 90px; }
	.employment03_steplist li:after { top: calc(50% - 15px); font-size: 15px; }

	.employment03_inr01 h3 { font-size: 24px; }
	.employment03_inr01 p { font-size: 14px; }

}

@media screen and (max-width: 480px) {
	
	body { font-size: 13px; }

	/* main */
	.main_con { padding: 50px 0; }
	.main_con h3 { font-size: 26px; }
	
	.main_con02 .iconbox img { width: 60px; }
	.main_con.main_con02 h3 { font-size: 18px; }
	.main_con02 p { font-size: 15px; font-weight: 300; }
	
	.main_con03list li .txtbox h4 { margin-bottom: 15px; font-size: 18px; }
	.main_con03list li .txtbox h4 span { font-size: 13px; }
	.main_con03list li .txtbox h5 { font-size: 14px; }

	/* sub */
	.sub_txtbox p { font-size: 14px; line-height: 1.4; }

	.sub_title h2 { font-size: 24px; }

	.vision_list li { width: 100%; }
	.vision_list li:first-child { width: 100%; padding: 10px 0; border-bottom: 1px solid #ddd; }	
	.vision_list li .vision_iconbox { margin-right: 10px; margin-bottom: 10px; width: auto; }
	.vision_list li .vision_iconbox img { width: 35px; }

	.history_inr02 h3 { font-size: 20px; }
	
	.business_list li { width: calc(100% - 120px); }
	.business_list li:first-child { width: 120px; }
	.business_list li:last-child { padding-left: 15px; padding-right: 15px; }
	.business_list li .business_iconbox img { width: 40px; }
	.business_list li h3 { font-size: 1em; }
	.business_list dl dd:after { top: 8px; }
	
	.employment03_inr01 h3 { margin-bottom: 10px; font-size: 20px; }
	.employment03_inr01 p { font-size: 12px; }

	.employment03_steplist li .imgbox img { width: 70px; }
	.employment03_steplist li h4 { font-size: 13px; }

	.employment03_infobox { padding: 30px; margin-bottom: 30px; }

	.pr_center_list li:first-child { width: 100%; padding: 15px 0; border-bottom: 1px solid #ddd; }
	.pr_center_list li:last-child { width: 100%; padding: 15px 10px; text-align: center; }

	.accordion_wrap h3 { font-size: 20px; }

}

@media screen and (max-width: 375px) {
	
	/* main */
	.main_vis { height: 400px; }
	.main_txtbox h2 { font-size: 32px; }
	.main_txt { font-size: 13px; }
	.main_txt01 { margin-bottom: 10px; }

	/* sub */
	.sub_txtbox p br { display: none; }

	.business_list li { width: calc(100% - 90px); }
	.business_list li:first-child { width: 90px; }

}