html{ overflow-x: hidden; background-color: #f9fafe; }

.inner{width: 1400px; margin: 0 auto; }
#footer{z-index: 4;position: relative}



/* 메인비주얼 */
.main_visual{width:100%;position: relative;z-index: 3; height: 100vh; background: #fff; overflow: hidden; }
.main_visual .main_slider{ height:100%;overflow: hidden; position: relative;}
.main_visual .main_slider .slide_box{ overflow: hidden;width:100%;height:100%; position: relative; background-color: #fff; }
.main_visual .main_slider .slide_box > div{ overflow: hidden;height:inherit;position: absolute;left:0;top:0;right:0; z-index: 3; overflow: hidden;
width: 100%; height: 100%;
opacity:0;
}
.main_visual .main_slider .slide_box > div{
-moz-transition: all .7s ease-in-out;
-webkit-transition: all .7s ease-in-out;
-o-transition: all .7s ease-in-out;
-ms-transition: all .7s ease-in-out;
transition: all .7s ease-in-out;
}

.main_visual .main_slider .slide_box .main_img{ position: absolute;left: 50%; top: 50%; transform: translate(-50%,-50%); overflow: hidden; width: 100%; height: 100%;
-moz-transition: all 8s ;
-webkit-transition: all 8s;
-o-transition: all 8s;
-ms-transition: all 8s ;
transition: all 8s ;
}



.main_visual .main_slider .slide_box .main_img img{ display: block; min-width: 100%;  max-width: auto;height: 100%; position: absolute; left: 50%; transform: translate(-50%,-50%) scale(1.1); top: 50%;  transition: transform 5s; }
.main_visual .main_slider .slide_box div.on .main_img img{ transform: translate(-50%,-50%) scale(1);}

.main_visual .main_slider .slide_box .in_obj{text-align: center; top:0%; width: 100%; z-index: 9}
.main_visual .main_slider .slide_box .in_obj:after{content: ''; display: block}
.main_visual .main_slider .slide_box .in_obj .wrap_t{margin-bottom: 25px;}
.main_visual .main_slider .slide_box div div.wrap_tit{display: block;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
-moz-transition: all 1s;
-webkit-transition: all 1s;
-o-transition: all 1s;
-ms-transition: all 1s;
transition: all 1s;
transition-delay: 0.6s;}
.main_visual .main_slider .slide_box div.on div.wrap_tit{
    opacity: 1
}



.main_visual .main_slider .slide_box > div.on{ z-index: 5; opacity:1;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}




/*효과*/
.main_visual .in_inner{width: 1420px;margin: 0 auto;max-width: 100%; position: absolute; left: 0; right: 0; top: 45%; transform: translate(0,-50%); z-index: 10; }
.main_visual .box.on .dim{opacity: 0.1;transition: 1.5s}
.main_visual .box1.on .dim{opacity: 0.3}


.main_visual .in_inner .in_obj > strong{ font-size: 84px; line-height: 1.3em; font-weight: 500; background: #1F61E5;
background: linear-gradient(28deg,rgba(31, 97, 229, 1) 0%, rgba(15, 35, 165, 1) 33%, rgba(3, 2, 66, 1) 100%); color: transparent;
    -webkit-background-clip: text; display: inline-block; }

.main_visual .in_inner .in_obj > p{ font-size: 24px; font-weight: 500; color: #909ba5; letter-spacing: 0.05em; margin-top: 20px; }



.main_visual .in_inner .in_obj > strong{ transform: translateY(50px); opacity: 0; transition: transform 1.2s, opacity 1.2s; }
.main_visual .slide_box > div.on .in_inner .in_obj > strong{ transform: translateY(0); opacity: 1; }

.main_visual .in_inner .in_obj > p{ transform: translateY(50px); opacity: 0; transition: transform 1.2s, opacity 1.2s; transition-delay: .3s; }
.main_visual .slide_box > div.on .in_inner .in_obj > p{ transform: translateY(0); opacity: 1; }

.main_visual{ position: relative; }
.main_visual:after{ content:""; display: block; width: 100%; height: 40px; background: url('/img/main/scroll.png') center top no-repeat; position: absolute; left: 50%; bottom: 0; transform: translate(-50%,0); z-index: 5; }
.main_visual .scroll{ position: absolute; z-index: 10; left: 50%; bottom: 60px; transform: translate(-50%,0); display:flex; flex-flow: column; align-items: center; text-align: center; gap: 12px; 

	animation: sc 1s ease-in-out infinite;
}
.main_visual .scroll strong{ color: #fff; font-size: 16px; }


@keyframes sc {
	0%{
		transform: translate(-50%,0);
	}
	50%{
		transform: translate(-50%,10px);
	}
	100%{
		transform: translate(-50%,0);
	}
}


/* 메인컨텐츠 공통 */
#main .con_w{ display:flex; flex-flow: column; }
#main .m_tit{ display:flex; flex-flow: column; gap: 16px; align-items: center; text-align: center; margin-bottom: 70px; }
#main .m_tit em{ font-size: 24px; font-weight: 600; color:#0f23a5; }
#main .m_tit strong{ font-size: 42px; font-weight: 700; color:#161617; line-height: 1.4em; }

#main .p01{ font-size: 20px; line-height: 1.55em; color: #575759; }

.pc_br{ display: block; }




/* con01 */
#main .con01{ padding-top: 160px; }
#main .con01 .list{ display:flex; flex-flow: wrap; gap: 20px; } 
#main .con01 .list > div{ width: calc(25% - 15px); aspect-ratio: 1 / 1; border-radius: 18px; border: 2px solid #d6d6e5; background-color: #fff; position: relative; padding: 35px 30px; transition: border .3s; }
#main .con01 .list dl{ display:flex; flex-flow: column; gap: 20px; }
#main .con01 .list dl dt{ font-size: 28px; font-weight: 600; color: #000000; }
#main .con01 .list dl dd{ font-size: 18px; line-height: 1.5em; color: #575759; word-break: keep-all; }
#main .con01 .list i{ display: block; position: absolute; right: 20px; bottom: 20px; }
#main .con01 .list > div:hover{ border-color: #0f23a5; }

#main .con02{ padding: 200px 0; overflow: hidden; }
#main .con02 .graphic > strong{ font-size: 24px; font-weight: 600; color: #0f23a5; text-align: center; display:block; }
#main .con02 .graphic .box{ position: relative; margin-top: 40px; }
#main .con02 .graphic .box:after{ content:""; display: block ;width: 100%; height: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); background: url('/img/main/con02_bg.jpg') center center no-repeat; mix-blend-mode: multiply; }
#main .con02 .graphic .box ul{ position: relative; z-index: 1; }
#main .con02 .graphic .box ul li img{ display:block; mix-blend-mode: multiply; }
#main .con02 .graphic .box ul{ display:flex; mix-blend-mode: multiply; justify-content: center; transform: translateX(17px)}
#main .con02 .graphic .box ul li { margin-left: -35px; }

#main .con02 .p_wrap{ margin-top: 60px; }
#main .con02 .p_wrap p{ text-align: center; }

#main .con03{ background: url('/img/main/con03_bg.jpg') center center no-repeat; background-size: cover; background-attachment: fixed; }
#main .con03 .inner{ height: 544px; display:flex; align-items: center; justify-content: flex-end; }
#main .con03 .txt{ width: 53%; display:flex; flex-flow: column; gap: 90px; }
#main .con03 .txt strong{ font-size: 48px; line-height: 1.4em; color: #fff; font-weight: 700; }
#main .con03 .txt strong:before{ content:""; display: block; width: 70px; height: 5px; background-color: #fff; margin-bottom: 20px; }
#main .con03 .txt p{ font-size: 24px; line-height: 1.4em; color: #fff; opacity: .8; }
#main .con03 .txt p b{ font-weight: 600; }

#main .con04 { padding: 200px 0; }
#main .con04 .m_tit{ align-items: flex-start; }
#main .con04 .m_tit p{ text-align: left; margin-top: 20px; }
#main .con04 .graphic{ display:flex; justify-content: flex-end; margin-top: -300px; }
#main .con04 .graphic svg{transform: translateX(-90px) !important;  height: auto;}
#main .con04 .graphic .pc_svg{ display: block; }
#main .con04 .graphic .mo_svg{ display: none; }

#main .con05{ margin-bottom: 200px; }
#main .con05 .list{ display:flex; gap: 30px; }
#main .con05 .list > div{ width: 33.3333333333%; display:flex; flex-flow: column; gap: 40px; margin-top: 65px; }
#main .con05 .list > div:nth-child(2){ margin-top: 0; }
#main .con05 .list > div > .img{ position: relative; }
#main .con05 .list > div > .img > img{ width: 100%; display: block; border-radius: 16px; }
#main .con05 .list > div > .img > .tit{ position: absolute; left: 0; bottom: 35px; width: 100%; text-align: center; }
#main .con05 .list > div > .img > .tit strong{ font-size: 38px; line-height: 1.4em; color: #fff; font-weight: 700; }
#main .con05 .list > div > .txt p{ text-align: center; }

#main .con06{ background: url('/img/main/con06_bg.jpg') center center no-repeat; background-size: cover; background-attachment: fixed; padding: 180px 0; overflow: hidden;  }
#main .con06 .m_tit .arrow{ position: absolute; right: 0; bottom: 0; display: flex; gap: 12px; }
#main .con06 .m_tit .arrow > div{ position: static; width: 58px; height: 58px; display:flex; align-items: center; justify-content: center; margin: 0; border-radius: 50%; background-color: rgba(255,255,255,0.5); transition: background .3s; }
#main .con06 .m_tit .arrow > div:hover{ background-color: #0f23a5; }
#main .con06 .m_tit{ align-items: flex-start; text-align: left; position: relative; }
#main .con06 .m_tit .arrow > div > svg{ width: auto; height: auto; }
#main .con06 .m_tit .arrow > div > svg path{ transition: stroke .3s; }
#main .con06 .m_tit .arrow > div > svg line{ transition: stroke .3s; }
#main .con06 .m_tit .arrow > div:hover > svg path{ stroke: #fff; }
#main .con06 .m_tit .arrow > div:hover > svg line{ stroke: #fff; }

#main .con06 .m_tit .arrow > div:after{ display: none; }
#main .con06 .n_list .swiper-slide{ transition: opacity .3s; }
#main .con06 .n_list .swiper-slide a{ display: flex; flex-flow: column; padding: 30px; border-radius: 12px; background-color: #fff; border: 2px solid #fff; position: relative; transition: border .3s, box-shadow .3s, transform .3s; }
#main .con06 .n_list .swiper-slide a > strong{ font-size: 20px; line-height: 1.55em; color: #050505; display: block;
  overflow: hidden;
  white-space: normal;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  word-break: keep-all; 
}
#main .con06 .n_list .swiper-slide a > p{ font-size: 12px; font-weight: 600; color: #b3b6b7; margin-top: 50px; }
#main .con06 .n_list .swiper-slide a i{ position: absolute; right: 30px; bottom: 30px; }
#main .con06 .n_list .swiper-slide a.ac{ border-color: #0f23a5;box-shadow: 1px 7px 7px rgba(15,35,165,0.25); transform: translateY(-10px); }
#main .con06 .n_list .swiper-slide a:hover{ border-color: #0f23a5;box-shadow: 0 0 7px rgba(15,35,165,0.25); transform: translateY(-10px); }

#main .con06 .n_list .swiper-slide{ opacity: 0; }
#main .con06 .n_list .swiper-slide-active, #main .con06 .n_list .swiper-slide-next, #main .con06 .n_list .swiper-slide-next + .swiper-slide, #main .con06 .n_list .swiper-slide-next + .swiper-slide + .swiper-slide{ opacity: 1; }

#main .con06 .swiper-pagination{ position: static; display: flex; justify-content: center; margin-top: 50px; gap: 10px; }
#main .con06 .swiper-pagination-bullet{ border-radius: 0; width: 20px; height: 4px; background-color: #bcbcbc; opacity: 1; margin: 0; }
#main .con06 .swiper-pagination-bullet-active{ background-color: #0f23a5; width: 46px; }

#main .con06 .con_box{ border-radius: 12px; background-color: #fff; padding: 50px; margin-top: 50px; display: none; }
#main .con06 .con_box .n_tit{ position: relative; padding: 0 20px; padding-bottom: 40px; border-bottom: 1px solid #dddddd; }
#main .con06 .con_box .n_tit strong{ display: block; font-size: 28px; font-weight: 600; color: #353535; width: calc(100% - 110px); }
#main .con06 .con_box .n_tit p{ font-size: 16px; font-weight: 600; color: #b3b6b7; position: absolute; right: 20px; top: 5px; }

#main .con06 .con_box .n_con{  height: 450px; overflow-y: scroll; margin-top: 50px; padding-right: 50px; word-break: keep-all; }

#main .con07{ padding: 160px 0; background-color: #fff; }
#main .con07 .client img{ display: block; width: 100%; }

#main .con08{ padding: 160px 0; background: url('/img/main/con08_bg.jpg') center center no-repeat; background-size: cover; background-attachment: fixed; }

#main .con08 .inner{ display:flex; gap: 40px; justify-content: space-between; }
#main .con08 .form_box{ width: 780px; }
#main .con08 .form_box ul{ display:flex; flex-flow: wrap; gap: 50px; }
#main .con08 .form_box ul li{ width: calc(50% - 25px); display:flex; flex-flow: column; gap: 20px; }
#main .con08 .form_box ul li strong{ font-size: 18px; font-weight: 600; color: #161617; }
#main .con08 .form_box ul li strong span{ color: #1636d3; }
#main .con08 .form_box ul li input{ width: 100%; height: 58px; border: none; border-bottom: 1px solid #acacac; font-size: 18px; color: #161617; background: transparent; }
#main .con08 .form_box ul li input:focus{ border-color: #1636d3; }

#main .con08 .form_box ul li textarea{ width: 100%; height: 200px; border: none; border-bottom: 1px solid #acacac; font-size: 18px; color: #161617; background: transparent; }
#main .con08 .form_box ul li textarea:focus{ border-color: #1636d3; }

#main .con08 .form_box .chk{ margin-top: 20px; display:flex; align-items: center; position: relative; gap :12px; }
#main .con08 .form_box .chk label{ display: block; width: 20px; height: 20px; background: url('/img/main/chk.png') center center no-repeat; background-size: 100% 100% !important; }
#main .con08 .form_box .chk p{ font-size: 18px; color:#acacac; }
#main .con08 .form_box .chk p span{ color:#1636d3; font-weight: 600; }

#main .con08 .form_box .chk input{ position: absolute; left: 0; top: 0; width: 20px; height :20px; opacity: 0; }

#main .con08 .form_box .chk input:checked + label{ background: url('/img/main/chk2.png') center center no-repeat; }

#main .con08 .form_box ul .all_li{ width: 100%; }

#main .con08 .form_box .send_btn{ margin-top: 40px; }
#main .con08 .form_box .send_btn a{ height: 56px; width: 100%; display:flex; align-items: center; text-align: center; justify-content: center; font-size: 24px; font-weight: 700; color: #fff; border-radius: 70px; background-color: #1d1d1f; transition: background .3s; }
#main .con08 .form_box .send_btn a:hover{ background-color: #0f23a5; }
#main .con08 .m_tit p{ font-size: 24px; }
#main .con08 .m_tit{ align-items: flex-start; }




#main .m_tit em{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; }
#main .m_tit strong{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; }
#main .m_tit p{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; }
#main .m_tit *:nth-child(1){ transition-delay: 0; }
#main .m_tit *:nth-child(2){ transition-delay: .2s; }
#main .m_tit *:nth-child(3){ transition-delay: .4s; }

#main .on .m_tit em{ transform: translateY(0); opacity: 1; }
#main .on .m_tit strong{ transform: translateY(0); opacity: 1; }
#main .on .m_tit p{ transform: translateY(0); opacity: 1; }


#main .con02 .graphic .box ul li{ opacity: 0; transition: transform 1s, opacity 1s; }
#main .con02 .graphic .box ul li:nth-child(2){ position: relative; }
#main .con02 .graphic .box ul li:nth-child(1){ transform: translateX(30px);}
#main .con02 .graphic .box ul li:nth-child(3){ transform: translateX(-30px); z-index: -1; }

#main .con02.on .graphic .box ul li{ opacity: 1; }
#main .con02.on .graphic .box ul li:nth-child(1){ transform: translateX(0); }
#main .con02.on .graphic .box ul li:nth-child(3){ transform: translateX(0); }


#main .con03 .txt strong{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; }
#main .con03.on .txt strong{ transform: translateY(0); opacity: 1; }

#main .con03 .txt p{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; transition-delay: .2s; }
#main .con03.on .txt p{ transform: translateY(0); opacity: 1; }


#main .con05 .list > div{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; }
#main .con05.on .list > div{ transform: translateY(0); opacity: 1; }

#main .con05 .list > div:nth-child(1){ transition-delay: 0; }
#main .con05 .list > div:nth-child(2){ transition-delay: .2s; }
#main .con05 .list > div:nth-child(3){ transition-delay: .4s; }

#main .con07 .client{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; transition-delay: .4s; }
#main .con07.on .client{ transform: translateY(0); opacity: 1; }


.main_visual{ position: relative; }
.main_visual .bg span{ position: absolute; height: 40px; width: calc(50% - 100px); background-color: #f9fafe; display: block; z-index: 10; }

.main_visual .bg .bg1{ left: 0; bottom: 0; }
.main_visual .bg .bg2{ right: 0; bottom: 0; }


@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

}

@media (min-width: 1920px){
  .main_visual{ height: 100vh; }
}

@media (max-width: 1600px){
	#main .con04 .graphic svg{ transform: translateX(0) !important; }

}

@media (max-width: 1416px){
	.inner{ width: 100%; padding: 0 20px; }
	#header h1{ left: 20px; }
	#header .contact_b{ right: 20px; }
	.main_visual .in_inner .in_obj > strong{ font-size: 50px; }
	.main_visual .in_inner .in_obj > p{ font-size: 18px; }
	#main .con01 .list dl dt{ font-size: 22px; }
	#main .con01 .list dl dd{ font-size: 16px; }
	#main .con01 .list dl{ gap: 10px; }
	#main .con01 .list i svg{ height: 55px; width: auto; }
	#main .m_tit strong{ font-size: 30px; }
	#main .m_tit em{ font-size: 18px; }
	#main .m_tit{ gap: 10px; margin-bottom: 40px; }
	#main .con01{ padding-top: 120px; }
	#main .con02{ padding: 120px 0; }
	#main .con03 .txt{ width: 60%; }
	#main .con04{ padding: 120px 0; }
	#main .con05{ margin-bottom: 120px; }
	#main .con06{ padding: 120px 0; }
	#main .con07{ padding: 120px 0; }
	#main .con04 .graphic svg{ width: 100%; display: block; height: auto; transform: translateX(0); }
	#main .con05 .list > div > .img > .tit{ bottom: 20px; }
	#main .con05 .list > div > .img > .tit strong{ font-size: 28px; }
	#main .p01{ font-size: 18px; }
	#main .con05 .list > div{ gap: 20px; }
	#footer{ padding: 50px 20px; }
	#footer .wrap .copy { position: static; margin-top: 20px; }
}


@media (max-width: 1300px){
	#main .con03 .txt p{ font-size: 18px; }
	#main .con03 .txt strong{ font-size: 30px; }
	#main .con03 .txt strong:before{ width: 40px; }
	#main .con03 .txt{ gap: 50px; }
	#main .con06 .con_box .n_tit strong{ font-size: 20px; }
	#main .con06 .con_box .n_tit p{ font-size: 14px; }
	#main .con08 .m_tit p{ font-size: 18px; }
}



@media (max-width: 1200px){
	#main .con08 .inner{ flex-flow: column; gap: 0; }
	#main .con08 .inner .form_box{ width: 100%; }
	#main .con08{ padding: 120px 0; }
	#main .con08 .form_box .send_btn a{ font-size: 18px; height: 48px; }
}

@media (max-width: 1080px){
	#header{ height: 80px; }
	#header h1 svg{ height: 28px; width: auto; }
	#header .contact_b a{ font-size: 16px; height: 38px; padding: 0 25px; }
	#main .con01 .list{ gap: 20px; }
	#main .con01 .list > div{ width: calc(33.33333333% - 13.3333333px); }
	#main .con01 .list dl dt{ font-size: 18px; }
	#main .con01 .list dl dd{ font-size: 14px; }
	#main .con02 .graphic .box ul li img{ width: 200px; }
	#main .con02 .graphic .box:after{ background-size: 100% auto; }
	#main .con02 .graphic > strong{ font-size: 18px; }
	#main .p01{ font-size: 14px; }
	#main .con03 .txt{ width: 100%; }
	#main .con03 .inner{ height: 400px; }
	#main .con03 .txt{ gap: 20px; }
	#main .con04 .graphic{ margin-top: -200px; }
	#main .con05 .list > div > .img > .tit strong{ font-size: 20px; }
	#main .con06 .con_box{ padding: 30px; }
	#main .con06 .con_box .n_tit{ padding: 0; padding-bottom: 20px; }
	#main .con06 .con_box .n_con{ height: 300px; margin-top: 20px; }
	#main .con06 .n_list .swiper-slide a > strong{ font-size: 16px; }
	#footer .scroll_top{ right: 20px; bottom: 20px; }
	#footer .scroll_top button{ width: 60px; height: 60px; }
	#footer .scroll_top button svg{ width: 14px; height: auto; }
	#footer .wrap .info p{ font-size: 16px; }
	#footer .wrap .copy p{ font-size: 16px; }
	#footer .wrap .f_logo svg{ width: 80px; height: auto; }
	#footer .wrap .f_logo strong{ font-size: 18px; }
}

@media (max-width: 800px){
	#main .con01 .list > div{ padding: 20px; }
	#main .con01 .list > div{ width: calc(50% - 10px); }
	#main .con01 .list i svg{ height: 40px; }
	#main .con01 .list dl dt{ font-size: 16px; }
	#main .con05 .list{ flex-flow: column; }
	#main .con05 .list > div{ width: 100%; }
	#main .m_tit strong{ font-size: 20px; }
	#main .m_tit em{ font-size: 14px; }
	
	#main .con01{ padding-top: 60px; }
	#main .con02{ padding: 60px 0; }
	#main .con04{ padding: 60px 0; }
	#main .con05{ margin-bottom: 60px; }
	#main .con06{ padding: 60px 0; }
	#main .con07{ padding: 60px 0; }
	#main .con08{ padding: 60px 0; }
	#main .m_tit{ margin-bottom: 20px; }
	#main .con06 .m_tit .arrow > div{ width: 38px; height: 38px; }
	#main .con06 .m_tit .arrow > div svg{ width: 12px; height: auto; }
	#main .con06 .swiper-pagination{ margin-top: 30px; }
	#main .con06 .con_box .n_tit strong{ font-size: 16px; }
	#main .con06 .con_box .n_con{ padding-right: 20px; height: 200px;}
	#main .con06 .con_box .n_con *{ font-size: 0.8rem !important; line-height: 1.4em !important; }
	#main .con06 .con_box .n_tit p{ position: static; margin-top: 4px; }
	#main .con08 .m_tit p{ font-size: 14px; }
	#main .con08 .form_box ul li{ gap: 8px; width: 100%; }
	#main .con08 .form_box ul li input{ height: 40px; font-size: 14px; }
	#main .con08 .form_box ul li strong{ font-size: 16px; }
	#main .con08 .m_tit{ margin-bottom: 40px; }
	#main .con08 .form_box ul li textarea{ font-size: 14px; height: 120px; }
	#main .con08 .form_box .chk p{ font-size: 14px; }
	#main .con08 .form_box .chk{ gap: 6px; }
	#main .con08 .form_box .send_btn a{ height: 44px; font-size: 16px; }
	#footer .wrap .info p{ font-size: 13px; }
	#footer .wrap .copy p{ font-size: 13px; }
	#footer .wrap .f_logo strong{ font-size: 15px;}
	#footer .wrap .f_logo { margin-bottom: 20px; gap: 8px; }
	#footer .wrap .f_logo svg{ width: 60px; }
	.main_visual .in_inner .in_obj > strong{ font-size: 38px; }
	#main .con06 .con_box .n_tit strong{ width: 100%; word-break: keep-all; }
	#main .con06 .n_list .swiper-slide a{ padding: 20px; }
	#main .con06 .n_list .swiper-slide a > p{ margin-top: 30px; }
	#main .con06 .n_list .swiper-slide a i{ right: 20px; bottom: 20px; }
	#main .con06 .n_list .swiper-slide a i svg{ width: 12px; height: auto; }
	#main .con06 .swiper-pagination-bullet{ width: 10px; }
	#main .con06 .swiper-pagination-bullet-active{width: 20px; }
	#main .con02 .graphic .box ul li img{ width: 120px; }
	
	#main .con05 .list > div{ margin-top: 0 !important; }
	#main .con04 .graphic .pc_svg{ display: none; }
	#main .con04 .graphic .mo_svg{ display: block; }
	#main .con04 .m_tit p{ margin-top: 0; }
	
	#main .con04 .graphic{ padding: 0 20px; position: relative; }
	#main .con04 .graphic:after{ content:""; display: block; width: 10%; height: 100px; position: absolute; left: 20px; bottom: 0; background: #F9FAFE;
background: linear-gradient(90deg, rgba(249, 250, 254, 1) 0%, rgba(249, 250, 254, 0) 100%); }
	
}

@media (max-width: 640px){
	#main .con04 .graphic{ margin-top: 0; }
	#main .p01{ word-break: keep-all; }
	#main .pc_br{ display: none; }
	#main .con03 .txt strong{ font-size: 22px; }
	#main .con03 .txt strong:before{ height: 3px; width: 30px; }
	#main .con03 .txt p{ font-size: 14px; }
	.main_visual .in_inner .in_obj > strong{ font-size: 28px; }
	.main_visual .in_inner .in_obj > p{ font-size: 16px; margin-top: 10px; }
	#header{ height: 60px; }
	#header h1 svg{ height: 22px; }
	#header .contact_b a{ font-size: 14px; height: 32px; padding: 0 20px; }
	#main .con02 .graphic .box ul li{ margin-left: -15px; }
	#main .con02 .graphic .box ul{ transform: translateX(7px); }
	#main .con02 .p_wrap{ padding: 0 20px; margin-top: 30px; }
	#main .con06 .m_tit{ padding-bottom: 50px; }
	#main .con06 .n_list .swiper-slide a > strong{font-size: 14px; line-height: 1.4em; }
	#main .con01 .list > div{ width: 100%; height: 180px;     aspect-ratio: auto; }
	#main .m_tit strong{ word-break: keep-all; }
	#main .con03{ background-size: auto 100%; background-attachment: local; }
	#main .con06{ background-size: auto 880px; background-attachment: local; background-position: center top; }
	#main .con08{ background-size: auto 100%; background-attachment: local; background-position: left top; }
	#footer .scroll_top button{ width: 48px; height: 48px; }
	#main .con01 .list > div > i{ position: static; }
	#main .con01 .list > div{ display:flex; align-items: center; gap: 20px; }
	#main .con01 .list > div > i svg{ height: auto; width: 50px; }
	#main .con01 .list dl{ width: calc(100% - 70px); }
	#main .con01 .list > div{ height: auto; }
	#main .con01 .list dl{ gap: 5px; }
	#main .con03 .pc_br{ display: block; }
	#main .con03 .mo_br{ display: block; }
	.main_visual:after{ background-size: auto 40px; height: 30px; bottom: -2px;  }
	.main_visual .scroll strong{ font-size: 13px; }
	.main_visual .scroll{ gap: 5px; }
	.main_visual .scroll svg{ width: 14px; height: auto; }
	.main_visual .bg span{ display: none; }
}
