@media screen and (max-width:1800px){
	/* common */
	.w1800{ padding: 0 20px; }

	/* header */
	header{ padding: 0 20px;}

	/* main */
	#visual > div .sns-box{ right: 20px; }
}
@media screen and (max-width:1600px){
	/* common */
	.font220{ font-size:120px; }
	.font80{ font-size:65px; }
	.font60{ font-size:50px; }
	.font50{ font-size:45px; }
	.font46{ font-size:43px; }

	.w1560{ padding: 0 20px;}

	/* header */
	header .header-box{ height: 100px;}

	/* main */
	.main .fixbg .bg-wrap .bg{ height: 800px;}

	.main .subscriber .img-box{ margin: 0; }
	.main .subscriber .img-box .inner-box{ justify-content: center; margin-left: -50px;}

	/* sub */
	#greeting h3.title{ margin-bottom: 100px; }
	#greeting .intro .content .item-box .txt-box{ padding: 0 10px;}
	#greeting .vision .content{ padding: 0 20px;}
	#greeting .vision .content .img-box figure{ transform: translateY(-50%) scale(0.8);}
	#greeting .vision .content .img-box figure.left-img{ left: -35px; }
	#greeting .vision .content .img-box figure.right-img{ right: -35px;}
	#greeting .vision .content .txt-box{ width: 40%;}
	#greeting .vision .content .txt-box .txt br{ display:none; } 
	#greeting .history .content .txt-box{ margin-right: 50px; width: 40%;}
	#greeting .history .content .slide-wrap{ width: 60%; padding: 0 40px;}
	#greeting .history .content .slide-box .swiper-slide img{ width: 100%;}
	#greeting .history .content .slide-wrap .slide-arrow .next{ right: 0;}
	#greeting .history .content .slide-wrap .slide-arrow .prev{ left: 0; }
	#greeting .history .content .txt-box .item-box .title{ flex-direction: column; align-items: flex-start;}
	#greeting .history .content .txt-box .item-box .txt br{ display:none; }
	#greeting .info .item-box{ gap:80px; }
	#greeting .info .item-box .txt-box{ padding-left: 0; }

	#animation .content{ padding: 0; }
	#animation .content .inner-box .img-box figure{ position: relative; overflow: hidden; border-radius:60px; height: 100%; }
	#animation .content .inner-box .img-box figure img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%; min-height:100%; object-fit:cover; }
	#animation .content .inner-box .video-box{ width: calc((100% - 80px) / 2) ;left: calc(50% + 20px);}
	#animation .content .inner-box .video-box.on{ height: 100%; }           

	#business .introduce .product .content .item-box.type2 figure img{ height: 180px;}
	
	#business .event .content .item-box .inner-box .img-box{ flex-direction:column; align-items:flex-start; }
	#business .event .content .item-box .inner-box .img-box button{ margin-top: 20px; margin-left: 0; }
}

@media screen and (max-width:1400px){
	/* main */
	.main .subscriber .img-box{ display: flex; justify-content: center;}
	.main .subscriber .img-box .inner-box{ transform: scale(0.8); margin-left: 0; }

	/* sub */
	#greeting .intro .content{ flex-wrap:wrap; }
	#greeting .intro .content .item-box{ width: calc((100% - 60px)  / 3); min-height:650px; }
	#greeting .intro .content .item-box figure{ position: relative; width: 100%; height: 300px; overflow: hidden; border-radius:10px; }
	#greeting .intro .content .item-box figure img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%; min-height:100%; object-fit:cover; }
	#greeting .vision .content .img-box figure{ transform: translateY(-50%) scale(0.7);}
	#greeting .vision .content .img-box figure.left-img{ left: -65px; }
	#greeting .vision .content .img-box figure.right-img{ right: -65px;}
	#greeting .history .content .slide-wrap .slide-arrow figure{ top: 32%;}

	#education .introduce .content .inner-box .culture .book .content .item-box{ width: 280px; height: 158px;}
	#education .introduce .content .inner-box .shake .content{ flex-wrap:wrap; }
	#education .introduce .content .inner-box .shake .content .item-box{ width: calc((100% - 40px) / 3);}
}

@media screen and (max-width:1200px){
	/* common */
	.font220{ font-size:80px; }
	.font150,
	.font100{ font-size:70px; }
	.font80{ font-size:55px; }
	.font60{ font-size:40px; }
	.font50{ font-size:35px; }
	.font46{ font-size:33px; }
	.font40{ font-size:32px; }
	.font36{ font-size:30px; }

	.p140,.p160{ padding: 100px 0;}

	h2.title{ margin-bottom: 60px;}
	
	/* header */
	header .header-box nav{ display:none; }
	header .side-box{ display:flex; align-items:center; }

	#all-btn{ position: relative; display:flex; justify-content:center; align-items:center; }

	/* main */

	#visual .scrolldown{ bottom: 40px; }
	
	.main .platform .bg-wrap .bg .img-wrap .img1, 
	.main .platform .bg-wrap .bg .img-wrap .img3{ height: 290px;}	
	.main .platform .bg-wrap .bg .img-wrap .img2{ height: 200px;}	

	.main .subscriber .img-box .inner-box{ transform: scale(0.65); }

	.main .fixbg{ padding-bottom: 1200px;}
	
	.main .view .content{ margin-top: -300px;}

	/*	sub */
	#title-box{ margin-bottom: 60px;}

	#greeting h3.title{ margin-bottom: 80px; }
	#greeting .vision{ height: auto;}
	#greeting .vision .content{ flex-direction:column; padding: 100px 20px;}
	#greeting .vision .content .txt-box,
	#greeting .vision .content .img-box figure{ position: relative; top: auto; left: auto; transform:none; width: 100%;}
	#greeting .vision .content .txt-box .title-box{ clip-path:none; }
	#greeting .vision .content .txt-box .txt{ opacity: 1; }
	#greeting .vision .content .img-box{ display:flex; align-items:center; margin-top: 50px; margin-bottom: 0; height: auto; opacity: 0; transform:translateY(50px); transition:all 1s; }
	#greeting .vision .content .img-box figure{ width: 50%; text-align: center; }
	#greeting .vision .content .img-box figure.left-img{ left: 0;}
	#greeting .vision .content .img-box figure.right-img{ right: 0;}
	#greeting .vision .content.aos-animate .img-box{ opacity: 1; transform:translateY(0); }
	#greeting .section-wrap section{ height: auto; padding: 100px 0;}
	#greeting .business .txt-box > *{ opacity: 1; transform:translateY(0); }
	#greeting .business .bg{ top: 0; }
	#greeting .business .txt-box .title,
	#greeting .business .txt-box .txt{ color:#fff; }
	#greeting .section-wrap  section.history{ position: relative !important; top: auto; left: auto; height: 600px; }
	#greeting .history .text-wrap{ display:none; }
	#greeting .history .content > div{ margin-top: 0; }
	#greeting .history .content .txt-box{ margin-left: 0; }
	#greeting .history .content .txt-box .item-box .year{ margin-bottom: 60px;}
	#greeting .history .content .txt-box .item-box .title span{ width: auto; font-size:18px; }
	#greeting .history .content .txt-box .item-box .title span:after{ display:none; }
	#greeting .history .content .txt-box .item-box div.txt ul:first-child{ margin-right: 20px;}
	#greeting .info{ padding: 150px 0 120px; }
	#greeting .info .item-box:not(:last-child){ margin-bottom: 100px; }
	#greeting .mission .wrap-box .title-box{ width: 40%;}
	#greeting .mission .wrap-box .title-box figure img{ width: 300px; }
	#greeting .mission .wrap-box .content{ width: 60%;}
	#greeting .mission .wrap-box .content .item-box{ padding: 30px; height: 350px;}
	#greeting .mission .wrap-box .content .item-box figure{ top:30px; right: 30px; width: 60px;}
	#greeting .location{ padding-bottom: 120px;}

	#animation{ padding: 100px 0 0;}
	#animation .content .inner-box{ height: auto; }
	#animation .content .inner-box .img-box figure{ width: 100%; text-align: center; border-radius:0; }
	#animation .content .inner-box .img-box figure img{ position: relative; transform:none; top: auto; left: auto; min-width:auto; min-height:auto; object-fit:unset; }
	#animation .content .txt-box{ position: relative; top: auto; left: auto; margin-top: 80px; height: 100vh;}
	#animation .content .txt-box .scroll-box{ position: relative; position: absolute; transform: none; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; display:block; opacity: 1; }
	#animation .content .txt-box .scroll-box .video-box{ position: relative; position: sticky; top: 0; left: 0; width: 100%; height: 100vh; overflow: hidden;}
	#animation .content .txt-box .scroll-box .video-box video{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%; min-height:100%; object-fit:cover; }

	#education .lineup,
	#education .introduce{	padding: 100px 0;}
	#education .lineup .content .item-box figure{ width: 30%; margin-right: 30px; }

	#education .introduce #title-box{ margin-bottom: 80px;}
	#education .introduce > div > .content{ padding-top: 145px; }
	#education .introduce .content .inner-box > div{ padding: 80px 10px;}
	#education .introduce .content .inner-box > div .title-box{ margin-bottom: 60px;}
	#education .introduce .content .inner-box .culture > div:not(:last-child){ margin-bottom: 100px;}

	#education .introduce .content .inner-box .shake .content{ padding: 0 20px; }

	#business section{ padding: 100px 0; }

	#business .content.imgtxt-box .item-box{ gap:20px; }
	#business .content.imgtxt-box .item-box > figure,
	#business .content.imgtxt-box .item-box .txt-box{ flex-shrink:0; padding-left: 0; width: calc((100% - 20px) / 2);}
	#business .content.imgtxt-box .item-box .txt-box .txt br{ display:none; }

	#business .inquiry{ margin-bottom: 100px; }

	#business .introduce .product{ margin-bottom: 100px; }
	#business .introduce .product .content .item-box{ text-align: center; }
	#business .introduce .product .content .item-box figure{ justify-content: center; }
	#business .introduce .product .content .item-box.type2 figure img{ height: 150px;}
	#business .introduce .product .content .item-box.type3{ grid-column: auto / span 2; }
	#business .introduce .product .content .item-box.type4 figure{ flex-wrap:wrap; }

	#business .license .bell .content{ margin: 80px 0;}

	#business .event .content .item-box .inner-box .title-box{ margin-bottom: 30px; } 
	#business .event .content .item-box .inner-box .title-box .title{ flex-direction:column; }
	#business .event .content .item-box .inner-box .title-box .title span{ display:block; margin-top: 10px; }

	#business .event .content .item-box .popup .slide-box{ max-width:700px; }
	#business .event .content .item-box .popup .slide-box .swiper-slide{ height: initial; display:flex; justify-content:center; align-items: center; }
	#business .event .content .item-box .popup .slide-arrow figure{ width: 60px; height: 60px; }
	#business .event .content .item-box .popup .slide-arrow figure.next{ right: -70px; }
	#business .event .content .item-box .popup .slide-arrow figure.prev{ left: -70px; }

	#contact{ padding: 100px 0;}
	#contact #title-box{ margin-bottom: 80px; }
} 
 
@media screen and (max-width:960px){
	/* common */
	.font220{ font-size:60px; }
	.font150,
	.font100{ font-size:50px; }
	.font80{ font-size:40px; }
	.font60{ font-size:28px; }
	.font50,
	.font46{ font-size:25px; }
	.font40{ font-size:24.5px; }
	.font36{ font-size:24px; }
	.font34,
	.font32,
	.font30{ font-size:23px; }
	.font24{ font-size:22px; }
	.font22{ font-size:20px; }
	.font20{ font-size:18px; }
	.font18{ font-size:16px; }

	.p140,.p160{ padding: 80px 0;}

	.mobile{ display:block; }
	.pc{ display:none; }

	h2.title{ margin-bottom: 40px;}

	.logoList .logoBox figure{ width: 150px; height: 60px;}
	.logoList.aos-animate .logoBox figure img{ max-width: 100px; max-height: 60px;}

	#visual{ height: 320px; }
	#visual > div .title{ font-size:27px; font-weight: 500;}
	#visual video{ height: 100%; }
	#visual iframe{ width: 600px; height: 500px;}
	#visual .scrolldown{ bottom: 10px; }
	#visual .scrolldown img{ width: 30px; }
	#visual > div .sns-box{ display:flex; transform:translate(-50%,-50%); top: 78%; left: 50%; right: auto; }
	#visual > div .sns-box li{ opacity: 0.8; }
	#visual > div .sns-box li:not(:last-child){ margin-bottom: 0; margin-right: 20px; }
	
	#mobile{ display:block; }

	/* header */
	header .header-box{ height: 80px;}
	header .header-box .logo img{ width: 80px;}
	
	#lang-box{ min-width: 90px; }
	#lang-box button{ padding: 7px; font-size:15px; line-height: 1; }
	#lang-box button img:first-child{ width: 17px; }
	#lang-box button span{ margin: 0 8px;}

	#all-btn{ margin-left: 10px; width: 28px; height: 21px;}

	@keyframes scrolldown {
		0%{ transform:translateY(5px); }
		50% { transform:translateY(-5px);}
		100% { transform:translateY(5px); }
	} 

	/* main */
	.main .fixbg{ padding-bottom: 0; }
	.main .fixbg .bg-wrap,
	.main .fixbg .bg-wrap .bg{ position: relative; top: auto; left: auto; }
	.main .fixbg .bg-wrap .bg{ height: 350px;}

	.main section.mb100{ margin-top: 0;}

	.main .subscriber .img-box{ height: auto; }
	.main .subscriber .img-box .inner-box{ position: relative; transform:scale(1); width: 720px; height: 720px; }
	.main .subscriber .img-box .item-box{ position: absolute; transform: translateY(-50%); top: 50%; left: 0; margin: 0 !important; text-align: left;}
	.main .subscriber .img-box .item-box .circle{ transform: translateY(-50%); left: 0; width: 100%; height: 100%; border:1px solid #fff; }
	.main .subscriber .img-box .item-box:after{ display:none; }
	.main .subscriber .img-box .item-box .txt-box{ margin: 0; background: #151515; transform:none; display:inline-block; left: auto; z-index: 5; padding: 5px; height: auto;}
	.main .subscriber .img-box .item-box.item1{ width: 720px; height: 720px; }
	.main .subscriber .img-box .item-box.item1 .txt-box{ top: 10px; right: 45px; }
	.main .subscriber .img-box .item-box.item2{ width: 610px; height: 610px; }
	.main .subscriber .img-box .item-box.item2 .txt-box{ top: 45px; right: 5px; }
	.main .subscriber .img-box .item-box.item3{ width: 500px; height: 500px; }
	.main .subscriber .img-box .item-box.item3 .txt-box{ top: 70px; right: -15px; }
	.main .subscriber .img-box .item-box.item4{ width: 405px; height: 405px; }
	.main .subscriber .img-box .item-box.item4 .txt-box{ top: 140px; right: -35px; }
	.main .subscriber .img-box .item-box.item5{ width: 280px; height: 280px; }
	.main .subscriber .img-box .item-box.item5 .txt-box{ top: auto; bottom: -25px; right: -15px; }
	.main .subscriber .img-box .item-box.item6{ width: 200px; height: 200px; }
	.main .subscriber .img-box .item-box.item6 .txt-box{ top: 0; right: -35px; }
	.main .subscriber .img-box .item-box.item7{ width: 120px; height: 120px; }
	.main .subscriber .img-box .item-box.item7 .txt-box{ top: 25px; right: -30px; }

	.main .result .content .flex-box{ flex-direction:column; }
	.main .result .content .flex-box .item-box{ width: 100%; height: 200px;}
	.main .result .content .item-box .num{ margin-bottom: 20px; }
	.main .result .content .item-box img{ height: 150px;}
	.main .result .content .item-box.box1 figure{ bottom: auto; top: -30px; }
	.main .result .content .item-box.box2 figure{ top: auto; bottom: -30px; right: 0; }
	.main .result .bg{ height: 400px; background-attachment: inherit;}

	.main .platform .bg-wrap .bg{ height: 600px;}
	.main .platform .bg-wrap .bg .bg-img{ padding: 0 20px;}
	.main .platform .bg-wrap .w1580 > .flex-box{ flex-direction:column; justify-content:center; margin-top: 0;  }
	.main .platform .bg-wrap .bg .bubble{ margin-top: 0; margin-bottom: 60px;}	
	.main .platform .bg-wrap .bg .bubble > img{ top: 95%;  right: 35px; transform: scaleX(-1) rotate(10deg); }
	.main .platform .bg-wrap .bg .img-wrap .img1, 
	.main .platform .bg-wrap .bg .img-wrap .img3{ height: 200px;}
	.main .platform .bg-wrap .bg .img-wrap .img2{ width: 180px; }
	.main .platform .bg-wrap .bg .logoList{ margin-bottom: 0;}
	.main .platform .bg-wrap .bg .logoList .logoBox figure{ margin-right: 20px;}
	.main .platform .bg-wrap .bg .logoList .logoBox figure img{ width: auto;}
	.main .platform .bg-wrap .bg .cloud{ width: 100px;}
	.main .platform .bg-wrap .bg .cloud.cloud-top{ top: -20px;}
	.main .platform .bg-wrap .bg .bubble p br:not(.mobile){ display:none; }
	
	.main .view .content{ margin-top: 0; }
	.main .view .content .flex-box{ flex-wrap:wrap; }
	.main .view .content .flex-box .item-box{ width: 100%; }

	.main .gallery{ height: 300px !important; overflow: hidden; }
	.main .gallery .item-box{ animation: imgScroll 10s linear infinite; animation-play-state: running; animation-delay: 0; animation-direction: normal; height: 600px; }
	@keyframes imgScroll {
		0% { transform: translateY(0%); }
		100% { transform: translateY(-100%); }
	}
	.main .gallery .item-box.item1, .main .gallery .item-box.item2{ width: calc(100% / 3);}

	/* sub */
	#visual.subVisual .w1800{ padding-top: 120px;}
	#visual.subVisual .sTxt{ margin-bottom: 20px; margin-top: -30px;}

	#contentTab{ width: auto; margin: 0 auto 40px;}
	#contentTab ul{ width: 100%; }
	#contentTab ul li{ font-size:18px; padding: 0 15px; min-height:50px; min-width:auto; width: 50%; transition:all 0.5s; }
	#contentTab ul li:hover,
	#contentTab ul li.on{ background: var(--mainC); border-radius:50px; }
	#contentTab .move{ display:none; }

	#title-box{ margin-bottom: 40px;}

	#greeting h3.title{ margin-bottom: 40px; flex-direction:column; }
	#greeting h3.title img{ margin-left: 0; margin-top: 10px; width: 120px;}
	#greeting .intro .content .item-box{ width:100%; min-height:auto; height: 100%; padding-bottom: 40px; }
	#greeting .intro .content .item-box figure{ height: 700px; }
	#greeting .intro .content .item-box .txt-box .title{ height: auto; margin-bottom: 20px; }
	#greeting .vision .content{ padding: 80px 20px;}
	#greeting .vision .content .txt-box .title{ margin-bottom: 30px;}
	#greeting .vision .content .img-box figure svg{ width: 100%; height: 100%; }
	#greeting .section-wrap section{ padding: 80px 0;}
	#greeting .section-wrap section.history{ height: auto;}
	#greeting .business .txt-box{ padding: 0 20px; }
	#greeting .business .txt-box .txt br{ display:none; }
	#greeting .history .content > div{ flex-direction: column; align-items:center; }
	#greeting .history .content .txt-box{ margin-right: 0; margin-bottom: 40px; width: 100%; min-height:250px; }
	#greeting .history .content .txt-box .item-box .year{ margin-bottom: 30px; } 
	#greeting .history .content .slide-wrap{ width: 100%; max-width:none; padding: 0 10px; }
	#greeting .history .content .slide-wrap .slide-arrow figure{ width: 40px; height: 40px; top: 33%; }
	#greeting .history .content .slide-wrap .slide-arrow figure img{ width: 20px; }
	#greeting .info{ padding: 80px 0; }
	#greeting .info .item-box{ flex-direction: column; gap:0;  }
	#greeting .info .item-box > *{ width: 100%; }
	#greeting .info .item-box:not(:last-child){ margin-bottom: 60px; }
	#greeting .info .item-box .txt-box .title{ margin: 20px 0; }
	#greeting .info .item-box > figure{ order:2; margin-top: 40px; }
	#greeting .info .item-box figure img{ width: 100%; }	
	#greeting .mission .wrap-box{ flex-direction: column; }
	#greeting .mission .wrap-box .title-box{ position: relative; top: auto; left: auto; height: auto; width: 100%; }
	#greeting .mission .wrap-box .title-box figure{ position: absolute; top: -50px; right: 0; }
	#greeting .mission .wrap-box .title-box figure img{ width: 120px; }
	#greeting .mission .wrap-box .content{ width: 100%; }
	#greeting .mission .wrap-box .title-box .title{ margin-bottom: 40px;}
	#greeting .mission .wrap-box .content .item-box{ height: 300px; }
	#greeting .mission .wrap-box .content .item-box .txt br{ display:none; }
	#greeting .location{ padding-bottom: 80px;}
	#greeting .location .title{ margin-bottom: 40px;}
	#greeting .location .address{ padding: 20px; flex-direction: column; align-items: flex-start;}
	#greeting .location .address span{ margin-right: 0; margin-bottom: 20px;}

	#animation{ padding: 80px 0 0;}
	#animation .content .inner-box{ overflow: hidden;}
	#animation .content .inner-box .img-box{ position: relative; z-index: 5;}
	#animation .content .txt-box{ position: relative; margin-top: 40px; font-family: 'S-CoreDream-5Medium'; }
	#animation .content .txt-box:before{ content:''; display:block; width: 100%; height: 100%; z-index: 3; position: absolute; top: 0; left: 0; background: rgba(0,0,0,0.5); pointer-events: none; }
	#animation .content .txt-box p{ pointer-events: none; padding: 0 20px;}
	#animation .content .txt-box p br:not(#mobile){ display:none; }
	#animation .content .txt-box .scroll{ bottom: 50px;}
	#animation .content .txt-box .scroll-box .video-box video{ width: 100%; }

	#education .lineup,
	#education .introduce{ padding: 80px 0;}
	#education .lineup .content .item-box{ width: 100%; flex-direction: column; padding: 30px 20px;}
	#education .lineup .content .item-box figure{ width: 100%; margin-right: 0; text-align: center; margin-bottom: 30px;}
	#education .lineup .content .item-box .txt-box{ width: 100%; text-align: center; }

	#education .introduce .content .tab-box{ position: relative; top: auto; left: auto; transform:none; flex-wrap:wrap; gap:20px; margin-bottom: 30px;}
	#education .introduce .content .tab-box li{ width: calc((100% - 20px) / 2); margin-top: 0; border-radius:30px; height: auto; padding: 20px; display:flex; align-items:center; 
	justify-content:center; min-height:85px; }
	#education .introduce .content .tab-box li .off{ font-size:18px; }
	#education .introduce .content .tab-box li .on,
	#education .introduce .content .tab-box li.active .on{ transform:translate(-50%,-50%); top: 50%; left: 50%; height: 100%; padding: 5px;}
	#education .introduce > div > .content{ padding-top: 0; }
	#education .introduce .content .inner-box > div{ padding: 60px 10px 80px;}
	#education .introduce .content .inner-box > div .title-box{ margin-bottom: 40px;}
	#education .introduce .content .inner-box > div .title-box .txt{ padding: 0 20px;}
	#education .introduce .content .inner-box > div .title-box .txt br{ display:none; }
	#education .introduce .content .inner-box .rolling-wrap .rolling-list .img{ width: 200px; height: 110px; }
	#education .introduce .content .inner-box .rolling-wrap .rolling-list .img .hover{ padding: 20px 15px;}
	#education .introduce #title-box{ margin-bottom: 60px; }

	#education .introduce .content .tab-box li figure img{ height: 100%; }
	#education .introduce .content .inner-box .culture > div:not(:last-child){ margin-bottom: 80px;}
	#education .introduce .content .inner-box .culture .book .content{ padding: 0 20px; }
	#education .introduce .content .inner-box .culture .book .content > div{ flex-wrap:wrap; gap:20px; }
	#education .introduce .content .inner-box .culture .book .content > div:not(:last-child){ margin-bottom: 40px; }
	#education .introduce .content .inner-box .culture .book .content .item-box{ width: calc((100% - 20px)  / 2 ); height: auto; }
	#education .introduce .content .inner-box .culture .book .content .item-box:not(:first-child){ margin-left: 0; }
	#education .introduce .content .inner-box .culture .book .content .item-box img{ position: relative; transform: none; top: auto; left: auto;  max-width: 100%;}
	#education .introduce .content .inner-box .culture .book .content > div{ flex-direction: row-reverse; transform: none;}
	#education .introduce .content .inner-box .culture .book .content .item-box.on img{ transform:none; }
	#education .introduce .content .inner-box .shake .content .item-box{ width: calc((100% - 20px) / 2);}
	#education .introduce .content .inner-box .shake .content .item-box .txt-box .txt br{ display:none; }

	#business section{ padding: 80px 0; }
	
	#business .content.imgtxt-box .item-box{ flex-direction:column; gap:40px; }
	#business .content.imgtxt-box .item-box > figure, 
	#business .content.imgtxt-box .item-box .txt-box{ width: 100%; text-align: center; }
	#business .content.imgtxt-box .item-box > figure{ order:-1; }
	#business .content.imgtxt-box .item-box .txt-box .title{ margin-bottom: 20px; font-family: 'S-CoreDream-5Medium'; }
	#business .content.imgtxt-box .item-box .txt-box{ transform: translate3d(0, 100px, 0);}
	#business .content.imgtxt-box .item-box .txt-box.aos-animate{ transform: translate3d(0,0,0); }

	#business .inquiry{ margin-bottom: 80px; padding: 40px 20px;}
	#business .inquiry .txt{ margin: 20px 0 30px;}
	#business .inquiry .txt br{ display:none; }
	#business .inquiry .inner-box{ padding: 30px 20px;}
	#business .inquiry .inner-box figure.left{ top: 0; left: 0; width: 90px; }
	#business .inquiry .inner-box figure.right{ top: 50px; right: 0; width: 70px; }

	#business .introduce .title-box{ margin-bottom: 40px; }
	#business .introduce .title-box .txt br{ display:none; }
	#business .introduce .product{ margin-bottom: 80px; }
	#business .introduce .product .content .item-box{ grid-column: auto / span 2; padding: 30px 20px;}
	#business .introduce .product .content .item-box .title{ margin-bottom: 15px;}
	#business .introduce .product .content .item-box figure{ flex-wrap:wrap; }
	#business .introduce .product .content .item-box.type2{ grid-column: auto / span 4; }
	#business .introduce .product .content .item-box.type4{ padding: 30px; }
	#business .introduce .product .content .item-box.type4 figure img{ height: 120px;}

	#business .license .bell .title-box .txt br{ display:none; }
	#business .license .bell .content{ margin: 60px 0;}
	#business .license .bell .memory .txt-box .txt br{ display:none; }
	#business .license .bell .memory .img-box{ flex-wrap:wrap; gap:20px; }
	#business .license .bell .memory .img-box figure{ width: calc((100% - 20px) / 2); text-align: center; }
	#business .license .bell .memory .link-box{ flex-wrap:wrap; padding: 30px 20px;}
	#business .license .bell .memory .link-box #link{ width: 100%; }
	#business .license .bell .memory .link-box p:not(:last-child){ margin-right: 0; margin-bottom: 20px; }
	#business .license .bell .memory .link-box #link a{ width: 100%; }

	#business .event .inquiry .inner-box figure.left{ top: 10px; }
	#business .event .inquiry .inner-box figure.right{ top: 10px; width: 90px;}
	#business .event .content .item-box{ padding: 30px 20px; width: 100%; }
	#business .event .content .item-box .popup{ width: 100%; }
	#business .event .content .item-box .popup .slide-box{ max-width:none; width: 70%; margin: 0 auto; }
	#business .event .content .item-box .popup .slide-arrow figure{ width: 40px; height: 40px; }
	#business .event .content .item-box .popup .slide-arrow figure.prev{ left: 20px;}
	#business .event .content .item-box .popup .slide-arrow figure.next{ right: 20px;}
	#business .event .content .item-box .popup .slide-arrow figure img{ width: 20px; }

	#business .performance .w1560 > div:last-child .txt-box #link a{ width: 100%; }
	#business .performance #link{ display:block; }

	#contact{ padding: 80px 0;}
	#contact #title-box{ margin-bottom: 60px; }
	#contact .content .item-box{ padding: 30px; width: 100%; }

	/* footer */
	footer{ position: relative; padding: 60px 0 80px;}
	footer .footer-inner > div{ flex-wrap:wrap; }
	footer .footer-inner .left-box{ width: 100%; margin-bottom: 30px;}
	footer .footer-inner .left-box ul{ margin-top: 30px;}
	footer .footer-inner .left-box .logo img{ width: 100px;}
	footer .footer-inner .right-box #top-btn{ position: absolute; top: 20px; right: 20px; width: 60px; height: 60px; }
	footer .footer-inner .right-box #top-btn span{ font-size:13px; }
	footer .footer-inner .right-box .sns-box li:not(:last-child){ margin-right: 20px; }
}

@media screen and (max-width:640px){
	/* main */
	.main .result .content .item-box.box1{ position: relative; z-index: 5;}
	.main .result .content .item-box.box1 figure{ top: auto; bottom: -70px;}
	.main .result .content .item-box img{ height: 100px;}
	
	.main .subscriber .img-box .inner-box{ transform:scale(0.45); width: 330px; height: 330px; transform-origin: left; }

	.main .view .content .title br:not(.mobile){ display:none; }

	.main .platform .bg-wrap .bg .bubble{ margin: 0 20px 60px;}
	.main .platform .bg-wrap .bg .img-wrap{ margin-left: -25px;  transform: scale(0.8);}		
	.main .platform .bg-wrap .bg .logoList .logoBox figure img{ height: 60px;}

	/* sub */
	.sv01 #visual.subVisual .bg figure{ background: url(/img/sub/subVisual01.png) no-repeat 35% 50%; background-size: cover;}
	.sv02 #visual.subVisual .bg figure{ background: url(/img/sub/subVisual02_m.png) no-repeat 60% 50%; background-size: cover;}

	#greeting .intro .content .item-box figure{ height: 500px; }
	#greeting .mission{ padding-top: 30px; }
	#greeting .mission .wrap-box .title-box figure{ top: 0; }
	#greeting .mission .wrap-box .title-box figure img{ width: 90px; }

	#education .introduce .content .tab-box li .on,
	#education .introduce .content .tab-box li.active .on{ height: auto;}
	#education .introduce .content .inner-box .rolling-wrap .rolling-list .img .hover{ padding: 15px;}
	#education .introduce .content .inner-box .rolling-wrap .rolling-list .img .hover .title{ font-size:20px; }
	#education .introduce .content .inner-box .rolling-wrap .rolling-list .img .hover .stxt{ font-size:15px; margin-bottom: 5px;}
}