@media (max-width: 1880px) {
	.w1840,
	.w1700,
	.w1600,
	.w1500 {
		padding: 0 20px;
	}

	header .store-box,
	main .visual .scroll {
		right: 20px;
	}
	header.gnb-on .depth1 > li > a {
		width: 165px;
	}

	.sub-contents .history .year {
		font-size: 12rem;
	}
	.sub-contents .total .service .text-box {
		padding: 30px 20px;
	}
	.sub-contents .smart .systematic .text p br {
		display: none;
	}
	.sub-contents .water .information.on > span {
		right: -6rem;
	}
	.sub-contents .product .anchors {
		right: 20px;
	}

	.inquiry-button.rhombus {
	  right: 25px;
	}
}

@media (max-width: 1600px) {
	header .store-box {
		top: calc(100% - 130px);
	}
	header nav {
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
	header .depth1 > li > a {
		width: 155px;
		font-size: 1.8rem;
	}
	header .depth2 > li > a {
		font-size: 1.6rem;
	}
	header .language *,
	header .menu-button * {
		font-size: 1.7rem;
	}
	header.gnb-on .depth1 > li > a {
		width: 155px;
	}

	main .visual .text-box h2 {
		font-size: calc(var(--font80) + 1rem);
	}
	main .product .button-box button {
		width: 110px;
		height: 110px;
	}
	main .inquiry .box {
		padding: 155px 60px;
	}

	.sub-contents .button-box.between {
		max-width: calc(100% - 20px);
	}
	.sub-contents .leadership p br {
		display: none;
	}
	.sub-contents .overview .explanation .text:nth-child(2) {
		padding-left: 60px;
	}
	.sub-contents .overview .explanation .text p br {
		display: none;
	}
	.sub-contents .leadership .item-box {
		column-gap: 40px;
		align-items: flex-start;
		margin-top: 40px;
	}
	.sub-contents .leadership .text-box {
		width: calc(50% - 40px);
		width: 60%;
		padding-top: 0;
	}
	.sub-contents .leadership .img {
		left: auto;
	}
	.sub-contents .total .service .item-box {
		column-gap: 10px;
	}
	.sub-contents .smart .systematic .text {
		height: auto;
	}
	.sub-contents .smart .systematic .text div {
		flex-direction: column;
		row-gap: 20px;
	}
	.sub-contents .smart .systematic .text h5 {
		width: 100%;
	}
	.sub-contents .custom .information .img-box {
		max-width: 800px
	}
	.sub-contents .water .information.on > span {
		right: 0;
	}
	.sub-contents .product .information .info-box .spec-box p br {
		display: none;
	}
}

@media (max-width: 1400px) {
	header .gnb-bg,
	header nav {
		display: none;
	}
	.site-map .depth1 > li > a {
		font-size: 6.0rem;
	}

	main .visual .box {
		padding: 30% 0;
	}
	main .business .box,
	main .partners .box {
		padding: var(--gap140) 0;
	}
	main .business .item-box {
		margin-top: calc(var(--gap140) + 20px);
	}
	main .business .info-box {
		column-gap: 40px;
		padding: 0;
	}
	main .business .item-box {
		column-gap: 10px;
	}
	main .business .item .text em {
		font-size: 2.4rem;
	}
	main .business .item .text h3 {
		font-size: calc(var(--font60) - 0.3rem);
	}
	main .product .title .logo {
		height: 110px;
	}
	main .partners .logo-box ul li {
		margin: 0 30px;
	}
	main .inquiry .box {
		padding: var(--gap140) 60px;
		margin-bottom: 0;
	}

	.sub-contents .overview .mean .img-box {
		width: 58%;
	}
	.sub-contents .overview .mean .img-box .text {
		padding: 30px 20px;
	}
	.sub-contents .overview .mean .text p, 
	.sub-contents .overview .strengths .text p {
		font-size: 1.7rem;
	}
	.sub-contents .overview .strengths .text h3 {
		margin: 20px 0 40px;
	}
	.sub-contents .leadership p {
		font-size: 1.8rem;
	}
	.sub-contents .leadership .text-box .p-box {
		row-gap: 20px;
		margin-bottom: 60px;
	}
	.sub-contents .history .text-box {
		padding: 80px 0 0 80px;
	}
	.sub-contents .history .bar-box {
		top: 45%;
	}
	.sub-contents .ci .color .item {
		height: auto;
		padding: 30px 20px;
	}
	.sub-contents .ci .color .item h5 {
		font-size: 2.7rem;
		margin-bottom: 20px;
	}
	.sub-contents .total .service .arrow-ani {
		top: 200px;
	}
	.sub-contents .total .service .text-box {
		min-height: auto;
		grid-template-rows: inherit;
		grid-template-columns: repeat(1, auto);
	}
	.sub-contents .total .service .text-box::before {
		width: 200%;
		padding: 100% 0;
		left: -300%;
	}
	.sub-contents .total .service .text-box p br {
		display: none;
	}
	.sub-contents .total .service .item:hover .text-box::before {
		left: -20%;
	}
	.sub-contents .smart .systematic .text h5 {
		font-size: 2.6rem;
	}
	.sub-contents .machines .equipment .item-box {
		row-gap: 10px;
		column-gap: 10px;
	}
	.sub-contents .machines .equipment .item {
		padding: 30px;
	}
	.sub-contents .machines .equipment .item h5 {
		font-size: 2.6rem;
	}
	.sub-contents .parts .service p {
		margin-top: 40px;
	}
	.sub-contents .custom .information .item-box {
		column-gap: 60px;
	}
	.sub-contents .custom .information .img-box {
		max-width: 680px;
	}
	.sub-contents .product .title p br {
		display: none;
	}
	.sub-contents .product .list-box.half {
		padding-left: 40px;
	}
	@media screen and (hover: hover) and (min-width: 1024px) {
		.sub-contents .accu .item:hover .logo {
			width: 260px;
			top: 20%;
		}
	}
	.sub-contents .product .type .info > span {
		font-size: calc(var(--font300) - 4rem);
	}
	.sub-contents .product .information .info-box .spec-box dl span {
		font-size: 3.0rem;
	}
}

@media (max-width: 1200px) {
	main .title p {
		font-size: 1.8rem;
	}
	main .visual .box {
		padding: 36% 0;
	}
	main .visual .text-box {
		padding: 20% 0 0;
	}
	main .visual .text-box p {
		font-size: 1.9rem;
	}
	main .visual .swiper-pagination {
		column-gap: 10px;
		bottom: 40px;
	}
	main .visual .swiper-pagination p {
		font-size: 1.7rem;
	}
	main .business .title {
		flex-shrink: 0;
	}
	main .business .info-box h5 {
		font-size: 2.5rem;
	}
	main .business .info-box .img-box .symbol {
		left: 58.8235%;
	}
	main .business .item > a {
		padding: 30px 20px;
	}
	main .product .title .logo {
		height: 85px;
	}
	main .product .button-box button {
		width: 80px;
		height: 80px;
	}
	main .product .product-pagination {
		row-gap: 30px;
	}
	main .product .product-pagination button {
		font-size: 2.4rem;
	}
	main .product .product-pagination button.swiper-pagination-bullet-active {
		font-size: calc(var(--font60) - 0.3rem);
	}

	.sub-contents .sub-page p {
		font-size: 1.8rem;
	}
	.sub-contents .en-title h6 {
		font-size: 2.0rem;
	}
	.sub-contents .bg-img {
		height: auto;
	}
	.sub-contents .overview .mean .title p {
		font-size: 2.0rem;
	}
	.sub-contents .overview .mean .img-box .text p {
		white-space: nowrap;
	}
	.sub-contents .overview .explanation .item {
		column-gap: 40px;
	}
	.sub-contents .overview .explanation .text {
		width: calc(50% - 40px);
	}
	.sub-contents .overview .explanation .text:nth-child(2) {
        padding-left: 0;
    }
	.sub-contents .overview .strengths .text {
		padding: 0 20px;
	}
	.sub-contents .overview .strengths .text br {
		display: none;
	}
	.sub-contents .leadership .title {
		padding: 0 40px 20px 0;
	}
	.sub-contents .history .text-box {
		padding: 80px 0 0 60px;
	}
	.sub-contents .history .year {
		font-size: 8.0rem;
	}
	.sub-contents .history .bar-box {
		top: 35%;
	}
	.sub-contents .history .lists,
	.sub-contents .history .lists > div {
		column-gap: 100px;
	}
	.sub-contents .ci .logo {
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
	}
	.sub-contents .ci .logo img {
		max-width: calc(100% - 100px);
		max-height: calc(100% - 100px);
	}
	.sub-contents .directions .text-box {
		column-gap: 40px;
	}
	.sub-contents .directions .text-box dl {
		padding-left: 0;
	}
	.sub-contents .directions .text-box dl br {
		display: none;
	}
	.sub-contents .directions .information .text-box dl dd * {
		font-size: 1.8rem;
	}
	.sub-contents .directions .location .map-box .map, 
	.sub-contents .directions .location .map-box .img {
		height: 460px;
	}
	.sub-contents .total .service .icon-box figure {
		height: 70px;
	}
	.sub-contents .total .service .icon-box em {
		font-size: 1.6rem;
	}
	.sub-contents .smart .factory .circle-box span {
		font-size: 3.4rem;
	}
	.sub-contents .smart .factory .circle-box {
		width: 580px;
		padding: 290px 0;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.sub-contents .smart .factory .text-box {
		margin: 0 auto;
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
	.sub-contents .smart .systematic .text {
		column-gap: 60px;
	}
	.sub-contents .smart .systematic .text div {
		row-gap: 15px;
	}
	.sub-contents .smart .systematic .text h5 {
		font-size: 2.2rem;
	}
	.sub-contents .machines .equipment .item {
		padding: 30px 20px;
	}
	.sub-contents .parts .information .grid-box {
		row-gap: 10px;
		column-gap: 10px;
	}
	.sub-contents .custom .information .img-box {
        max-width: 55%;
    }
	.sub-contents .water .production .item .inner {
		padding: 30px;
	}
	.sub-contents .accu .item .logo {
		width: 220px;
		top: 40px;
		left: 40px;
	}
	.sub-contents .product .information .info-box {
		column-gap: calc(var(--gap140) - 40px);
	}
	.sub-contents .product .information .info-box .info-text ol li {
		column-gap: 40px;
		padding: 30px 0;
	}
	.sub-contents .product .information .info-box .info-text ol em, 
	.sub-contents .product .information .info-box .info-text ol p {
		font-size: 2.0rem;
	}
	.sub-contents .product .details .img-box .inner {
		width: calc(100% - 60px);
	}
	.sub-contents .product .details .img-box .bottom {
		column-gap: 5px;
	}
	.sub-contents .product .details .img-box .bottom img {
		width: 35px;
		height: 35px;
	}
	.sub-contents .product .details .img-box .bottom p {
		font-size: 1.7rem;
	}
	.sub-contents .product .details .detail-box {
		display: flex;
		align-items: center;
	}
	.sub-contents .product .details .detail {
		top: auto;
	}
	.sub-contents .product .details .detail p {
		font-size: 2.0rem;
		margin-top: 20px;
	}
	.sub-contents .product .type .info > span {
		font-size: var(--font300);
	}
	.sub-contents .product .information .info-box .spec-box .spec {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 10px;
	}
	.sub-contents .popup.contact h3 {
		font-size: var(--font60);
	}
	.sub-contents .recruit .talent .item-box {
		row-gap: 20px;
		column-gap: 20px;
	}
	.sub-contents .recruit .talent .item {
		padding: 60px 0;
	}
	.sub-contents .recruit .talent .item dl dd {
		font-size: 1.8rem;
	}

	footer .top-button {
		width: 110px;
		height: 110px;
	}
}

@media (max-width: 1024px) {
	header {
		height: 80px;
	}
	header .logo {
		width: 190px;
		height: 36px;
	}
	.site-map .depth1 > li > a {
		font-size: 4.4rem;
	}
	.site-map .depth2 > li > a {
		font-size: 1.8rem;
	}

	main .visual .scroll {
		display: none;
	}
	main .business .info-box {
		flex-direction: column;
		row-gap: 30px;
		column-gap: 0;
	}
	main .business .item-box {
		flex-wrap: wrap;
		row-gap: 20px;
		column-gap: 20px;
	}
	main .business .item {
		flex-grow: inherit;
		width: calc(50% - 10px);
	}
	main .business .item .text em {
		font-size: 1.9rem;
	}
	main .business .item .text .row {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 10px;
		margin-bottom: 0;
	}
	main .business .item .more {
		margin-left: auto;
	}
	main .product .row {
		flex-wrap: wrap;
	}
	main .product .info-box {
		margin-top: 30px;
	}
	main .product .info-box p {
		margin-bottom: 20px;
	}
	main .product .info-box .link-box {
		flex-direction: column;
		row-gap: 0;
		column-gap: 30px;
	}
	main .product .text-box {
		width: 100%;
		margin-top: 0;
	}
	main .product .text-box br {
		display: none;
	}
	main .product .slide-wrap {
		max-width: 62%;
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
	main .inquiry .box {
		padding: var(--gap140) 40px;
	}

	.sub-contents .tab-title {
		column-gap: 10px;
	}
	.sub-contents .tab-title li > * {
		min-height: 80px;
		font-size: 2.1rem;
	}
	.sub-contents .overview .mean .item-box {
		flex-wrap: wrap;
	}
	.sub-contents .overview .mean .img-box {
		width: 100%;
		max-width: 540px;
		margin-left: auto;
	}
	.sub-contents .overview .explanation .item {
		width: 100%;
		max-width: 750px;
		flex-direction: column;
		row-gap: 40px;
		column-gap: 0;
		margin: 0 auto;
	}
	.sub-contents .overview .explanation .item > * {
		width: 100%;
	}
	.sub-contents .overview .explanation figure {
		order: 1;
	}
	.sub-contents .overview .explanation .text {
		order: 2;
	}
	.sub-contents .overview .explanation .text h3 br {
		display: none;
	}
	.sub-contents .overview .strengths .item-box {
		justify-content: center;
		flex-wrap: wrap;
	}
	.sub-contents .overview .strengths .item {
		width: 50%;
	}
	.sub-contents .leadership .title {
		display: flex;
		background-size: 55px;
		padding: 0;
	}
	.sub-contents .leadership .item-box {
		flex-direction: column-reverse;
		row-gap: 40px;
		column-gap: 0;
	}
	.sub-contents .leadership .text-box,
	.sub-contents .leadership .img {
		width: 100%;
		max-width: 880px;
	}
	.sub-contents .history .contents,
	.sub-contents .history .item-box {
		width: 100%;
		height: 100%;
	}
	.sub-contents .history .item-box {
		flex-direction: column;
	}
	.sub-contents .history .img-box {
		width: 100vw;
		height: auto;
		flex-shrink: 0;
		padding: 24% 0;
	}
	.sub-contents .history .img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.sub-contents .history .img img {
		max-width: 100%;
	}
	.sub-contents .history .text-box {
		height: 100%;
		padding: 40px;
	}
	.sub-contents .history .bar-box {
		width: 100%;
		top: 85%;
	}
	.sub-contents .ci .logo-grid {
		border-radius: 50px;
	}
	.sub-contents .ci .mark .logo-grid {
		height: 260px;
	}
	.sub-contents .ci .color .item {
		padding: 20px;
	}
	.sub-contents .ci .color .item h5 {
		font-size: 2.3rem;
	}
	.sub-contents .ci .color .column dl {
		font-size: 1.6rem;
	}
	.sub-contents .ci .type .logo-grid {
		height: 240px;
	}
	.sub-contents .directions .text-box {
		column-gap: 20px;
	}
	.sub-contents .directions .text-box dl dt {
		font-size: 2.5rem;
		margin-bottom: 20px;
	}
	.sub-contents .directions .information .button-box {
		width: calc(100% - 40px);
	}
	.sub-contents .directions .information .text-box dl dd p {
		flex-direction: column;
		row-gap: 5px;
		column-gap: 0;
	}
	.sub-contents .directions .information .text dl dd b {
		width: 100%;
	}
	.sub-contents .directions .location .map-box .map, 
	.sub-contents .directions .location .map-box .img {
		height: 320px;
	}
	.sub-contents .total .service .item-wrap {
		padding-left: 60px;
	}
	.sub-contents .total .service .item-box {
		display: flex;
		flex-direction: column;
		row-gap: 20px;
	}
	.sub-contents .total .service .item {
		display: flex;
		align-items: center;
	}
	.sub-contents .total .service .icon-box {
		width: 240px;
	}
	.sub-contents .total .service .icon-box figure {
        height: 60px;
    }
	.sub-contents .total .service .text-box {
		grid-template-columns: repeat(3, auto);
		align-items: flex-start;
		margin-top: 0;
	}
	.sub-contents .total .association .item-box h4 {
		margin: 30px 0 20px;
	}
	.sub-contents .total .service .arrow-ani {
		width: 40px;
		height: 100%;
		top: 0;
	}
	.sub-contents .total .service .arrow-ani .to-right,
	.sub-contents .total .service .arrow-ani ul {
		flex-direction: column;
	}
	.sub-contents .total .service .arrow-ani ul li {
		margin: 50px 0;
	}
	.sub-contents .total .service .arrow-ani img {
		transform: rotate(90deg);
	}
	.sub-contents .smart .systematic h4 {
		font-size: calc(var(--font60) - 1.0rem);
	}
	.sub-contents .smart .systematic .text {
		flex-direction: column;
		row-gap: 20px;
		column-gap: 0;
	}
	.sub-contents .smart .systematic .text em {
		width: 100%;
		font-size: 2.1rem;
	}
	.sub-contents .smart .systematic .text div {
        row-gap: 10px;
    }
	.sub-contents .patents .grid-box {
		grid-template-columns: repeat(3, 1fr);
	}
	.sub-contents .machines .equipment .item-box {
		grid-template-columns: repeat(2, 1fr);
	}
	.sub-contents .parts .service p br {
		display: none;
	}
	.sub-contents .custom .information .item-box {
		flex-direction: column;
		row-gap: 40px;
		column-gap: 0;
	}
	.sub-contents .custom .information .img-box {
		max-width: 100%;
	}
	.sub-contents .custom .information .text {
		width: 100%;
	}
	.sub-contents .custom .information .text h4 {
		margin: 30px 0 10px;
	}
	.sub-contents .custom .information .text p br {
		display: none;
	}
	.sub-contents .custom .cost .item-box {
		width: 100%;
		max-width: 750px;
		flex-wrap: wrap;
		row-gap: 20px;
		column-gap: 20px;
		margin: var(--gap60) auto 0;
	}
	.sub-contents .custom .cost .item {
		width: calc(50% - 10px);
	}
	.sub-contents .water .information p br {
		display: none;
	}
	.sub-contents .water .production .item {
		padding: 0;
	}
	.sub-contents .water .production .item::before {
		height: 100%;
	}
	.sub-contents .water .production .item .inner {
		row-gap: 20px;
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
	.sub-contents .water .production .item .more {
		justify-content: center;
		opacity: 1;
		position: relative;
		left: auto;
		bottom: 0;
		transform: translateX(0);
	}
	.sub-contents .water .production .item .more span {
		color: var(--color-main);
	}
	.sub-contents .water .production .item .more .rhombus,
	.sub-contents .water .production .item .more .rhombus img {
		transform: scale(1);
	}
	.sub-contents .water .production .item .more .rhombus::before {
		background: var(--color-main);
	}
	.sub-contents .product .img-box.half,
	.sub-contents .product .list-box.half {
		width: 100%;
		max-width: 670px;
		margin-left: 0;
	}
	.sub-contents .product .img-box.half {
		height: auto;
		position: relative;
		top: auto;
	}
	.sub-contents .product .list-box.half {
		padding-left: 0;
	}
	.sub-contents .product .information {
		flex-direction: column;
		align-items: center;
		row-gap: 80px;
		padding-bottom: var(--gap140);
	}
	.sub-contents .product .information .img-box {
		padding: 40px 20px;
	}
	.sub-contents .product .information .list-box {
		padding: 0;
	}
	.sub-contents .product .information .img-box .swiper-pagination {
		bottom: 0;
	}
	.sub-contents .product .information .title .point-rhombus {
		margin: 0;
	}
	.sub-contents .product .information .info-box .text h5 {
		font-size: var(--font36);
	}
	.sub-contents .accu .item {
		padding: 0;
	}
	.sub-contents .accu .item a,
	.sub-contents .accu .item .logo {
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
	.sub-contents .accu .item a {
		display: flex;
		flex-direction: column;
		row-gap: 40px;
		padding: 80px 20px;
	}
	.sub-contents .accu .item a::before {
		content: "";
		display: block;
		width: 100%;
		height: calc(100% + 2px);
		background: rgba(17, 17, 17, 0.7);
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.sub-contents .accu .item .logo {
		width: 200px;
		margin: 0 auto;
		filter: brightness(0) invert(1);	
	}
	.sub-contents .accu .item .text {
		row-gap: 30px;
		padding: 0;
		opacity: 1;
	}
	.sub-contents .accu .item .text::before {
		display: none;
	}
	.sub-contents .accu .item .text h3 {
		font-size: var(--font72);
	}
	.sub-contents .product .details,
	.sub-contents .product .type {
		flex-direction: column;
		align-items: center;
	}
	.sub-contents .product .details .detail-box,
	.sub-contents .product .type .info {
		padding: var(--gap140) 0;
	}
	.sub-contents .product .details .img-box .inner {
        width: calc(100% - 120px);
    }
	.sub-contents .product .details .detail.on {
		position: relative;
		left: auto;
		transform: translateX(0);
	}
	.sub-contents .product .information .info-box .spec-box .spec {
		grid-template-columns: repeat(4, 1fr);
		row-gap: 0;
	}
	.sub-contents .popup .inner {
		padding: 30px;
	}
	.sub-contents .popup.contact .submit {
		margin-top: 30px;
	}
	.sub-contents .recruit .information {
		row-gap: 60px;
	}
	.sub-contents .recruit .information .item {
		column-gap: 40px;
	}
	.sub-contents .recruit .information .img,
	.sub-contents .recruit .information .text-box {
		width: calc(50% - 20px);
	}
	.sub-contents .recruit .information .text p br {
		display: none;
	}
	.sub-contents .recruit .talent .item .icon {
		height: 70px;
	}
	.sub-contents .recruit .talent .item dl {
		padding: 0 20px;
		margin-top: 30px;
	}
	.sub-contents .recruit .talent .item dl dt {
		font-size: 2.6rem;
	}

	footer .top-button {
        width: 80px;
        height: 80px;
    }
}

@media (max-width: 768px) {
	.site-map .depth1 {
		row-gap: 15px;
	}
	.site-map .depth1 > li > a {
        font-size: 3.7rem;
    }
	.site-map .depth2 {
		flex-direction: column;
		row-gap: 15px;
		column-gap: 0;
	}
	.site-map .depth2.on {
		height: auto;
	}

	main .visual .text-box {
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 0;
	}
	main .visual .text-box p {
		font-size: 1.7rem;
	}
	main .visual .swiper-pagination button {
		width: auto;
		flex-grow: 1;
	}
	main .business .info-box h5.on {
		color: var(--color-main);
	}
	main .business .info-box h5::before {
		display: none;
	}

	.sub-visual {
		height: 480px;
	}
	.sub-visual .depth1 li {
		height: 70px;
	}
	.sub-visual .depth1 li a {
		font-size: 1.7rem;
	}
	.sub-contents .sub-page p,
	.sub-contents .en-title h6 {
		font-size: 1.7rem;
	}
	.sub-contents .tab-title li > * {
        min-height: 70px;
        font-size: 1.8rem;
    }
	.sub-contents .tab-title li .icon {
		height: 50px;
	}
	.sub-contents .overview .mean .title p {
		font-size: 1.8rem;
	}
	.sub-contents .overview .mean .img-box .img {
		margin: 0 -240px 0 -140px;
	}
	.sub-contents .overview .mean .img-box .text p {
		font-size: 1.6rem;
	}
	.sub-contents .overview .strengths .text em {
		font-size: 1.9rem;
	}
	.sub-contents .overview .strengths .text dl dt {
		font-size: 2.4rem;
	}
	.sub-contents .leadership .title {
		background-size: 45px;
	}
	.sub-contents .ci .logo img {
		max-width: calc(100% - 80px);
		max-height: calc(100% - 80px);
	}
	.sub-contents .ci .color .item-box {
		flex-direction: column;
		row-gap: 10px;
		column-gap: 0;
	}
	.sub-contents .ci .type .row {
		column-gap: 10px;
	}
	.sub-contents .ci .type .logo-grid {
		height: 200px;
	}
	.sub-contents .directions .text-box {
		flex-direction: column;
		row-gap: 50px;
		column-gap: 0;
	}
	.sub-contents .directions .text-box dl {
		width: 100%;
	}
	.sub-contents .directions .location .map-box .row {
		column-gap: 10px;
	}
	.sub-contents .directions .location .map-box .map, 
	.sub-contents .directions .location .map-box .img {
		height: 280px;
	}
	.sub-contents .total .service .item-box {
		row-gap: 30px;
	}
	.sub-contents .total .service .item {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 10px;
	}
	.sub-contents .total .service .icon-box {
		width: 100%;
		display: flex;
		align-items: center;
		column-gap: 20px;
		text-align: left;
	}
	.sub-contents .total .service .icon-box h5 {
		margin: 0 0 5px;
	}
	.sub-contents .smart .factory .circle-box {
		width: 500px;
		padding: 250px 0;
	}
	.sub-contents .smart .factory .text-box {
		grid-template-columns: repeat(3, 180px);
	}
	.sub-contents .smart .factory .text-box .item2 {
		transform: translateX(20px);
	}
	.sub-contents .smart .factory .text-box .item5 {
		transform: translateX(-20px);
	}
	.sub-contetns .smart .factory .text-box .item p {
		font-size: 1.6rem;
	}
	.sub-contents .smart .systematic h4 {
		font-size: calc(var(--font60) - 0.4rem);
	}
	.sub-contents .smart .systematic .text h5 {
        font-size: 1.9rem;
    }
	.sub-contents .patents .grid-box {
		grid-template-columns: repeat(3, 1fr);
		row-gap: 40px;
		column-gap: 10px;
	}
	.sub-contents .patents .item p {
		font-size: 1.6rem;
		margin-top: 15px;
	}
	.sub-contents .machines .equipment .item h5 {
		font-size: 2.1rem;
	}
	.sub-contents .custom .information .text em {
		font-size: 2.1rem;
	}
	.sub-contents .custom .cost .title p br {
		display: none;
	}
	.sub-contents .custom .cost .item .icon {
		height: 50px;
	}
	.sub-contents .water .production .item-box {
		column-gap: 10px;
	}
	.sub-contents .water .production .item .inner {
		padding: 30px 20px;
	}
	.sub-contents .product .note .item-box {
		padding: var(--gap140) 0;
	}
	.sub-contents .product .type .swiper-pagination {
		height: 70px;
	}
	.sub-contents .product .type .swiper-pagination button {
		font-size: 1.8rem;
	}
	.sub-contents .product .table-box table th,
	.sub-contents .product .table-box table td {
		height: 70px;
		font-size: 1.7rem;
	}
	.sub-contents .product .table-box table td {
		padding: 0 20px;
	}
	.sub-contents .popup.contact {
		max-width: calc(100% - 40px);
	}
	.sub-contents .popup.contact p {
		margin: 10px 0 20px;
	}
	.sub-contents .popup.contact input[type=password] {
		height: 60px;
		font-size: 1.8rem;
	}
	.sub-contents .popup.contact .submit {
		font-size: 1.8rem;
		margin-top: 15px;
	}
	.sub-contents .recruit .information .item {
		flex-direction: column;
		row-gap: 30px;
		column-gap: 0;
	}
	.sub-contents .recruit .information .img,
	.sub-contents .recruit .information .text-box {
		width: 100%;
		max-width: 500px;
	}
	.sub-contents .recruit .information .img {
		order: 1;
	}
	.sub-contents .recruit .information .text-box {
		order: 2;
	}
	.sub-contents .recruit .information .text h4 {
		font-size: var(--font60);
	}
	.sub-contents .recruit .talent .item dl dt {
        font-size: 2.3rem;
    }

	footer .footer-box {
		position: relative;
	}
	footer .top-button {
		position: absolute;
		top: 0;
		right: 0;
	}
	footer .copy,
	footer .link-box a {
		font-size: 1.6rem;
	}
	footer .link-box {
		column-gap: 15px;
	}
}

@media (max-width: 640px) {
	.site-map .depth1 {
        row-gap: 20px;
    }
	.site-map .depth1 > li > a {
        font-size: 2.8rem;
    }
	.site-map .depth2 {
		row-gap: 10px;
	}
	.site-map .depth2 > li > a {
        font-size: 1.7rem;
    }

	main .visual .box {
		padding: 58% 0;
	}
	main .visual .text-box p br {
		display: none;
	}
	main .visual .swiper-pagination button {
		row-gap: 15px;
	}
	main .visual .swiper-pagination p {
        font-size: 1.5rem;
    }
	main .business .info-box h5 {
		font-size: 2.1rem;
	}
	main .business .info-box .img-box .symbol {
		width: 54px;
		height: 54px;
	}
	main .business .item-box {
		column-gap: 0;
		margin-top: 60px;
	}
	main .business .item {
		width: 100%;
	}
	main .business .item > a {
		padding: 20px;
	}
	main .business .item .text em {
		font-size: 1.6rem;
	}
	main .business .item .text .row {
		row-gap: 40px;
	}
	main .product .slide-wrap {
		max-width: 100%;
	}
	main .product .button-box {
		right: 0;
	}
	main .product .button-box button {
        width: 60px;
        height: 60px;
		margin: 0;
    }
	main .product .button-box button::before {
		border-radius: 10px;
	}
	main .product .product-pagination {
		width: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		column-gap: 20px;
		row-gap: 20px;
		align-items: center;
		margin-top: 40px;
	}
	main .product .product-pagination button,
	main .product .product-pagination button.swiper-pagination-bullet-active {
		font-size: 1.8rem;
	}
	main .product .product-pagination button {
		width: calc(50% - 10px);
		line-height: 1.3;
		text-align: center;
    }
	main .partners .item-box {
		row-gap: 30px;
		margin-top: 60px;
	}
	main .partners .logo-box ul li {
		width: 160px;
		height: 70px;
	}
	main .partners .logo-box ul li img {
		max-width: calc(100% - 20px);
		max-height: calc(100% - 30px);
	}
	main .inquiry .box {
		padding: 60px 20px;
	}
	main .inquiry .text h3 {
		font-size: 2.0rem;
		margin-bottom: 30px;
	}

	.sub-visual {
		height: 360px;
	}
	.sub-visual .text {
		row-gap: 20px;
		padding-top: 40px;
	}
	.sub-visual .path-box,
	.sub-visual .path {
		column-gap: 5px;
	}
	.sub-visual .depth1 {
		display: none;
	}
	.sub-contents .tab-title {
		column-gap: 5px;
	}
	.sub-contents .tab-title li {
		width: auto;
		flex-grow: 1;
	}
	.sub-contents .tab-title li > * {
		min-height: auto;
		font-size: 1.6rem;
	}
	.sub-contents .tab-title li .icon {
		height: 45px;
	}
	.sub-contents .button-box.between {
        max-width: calc(100% - 10px);
    }
	.sub-contents .button-box.between button {
		width: 13px;
		height: 25px;
	}
	.sub-contents .overview .strengths .item {
		width: 100%;
	}
	.sub-contents .overview .strengths .text dl dt {
		font-size: 2.2rem;
	}
	.sub-contents .leadership .title {
		background-size: 35px;
	}
	.sub-contents .history .text-box {
		padding: 30px 20px;
	}
	.sub-contents .history .year {
		font-size: 5.0rem;
	}
	.sub-contents .history .bar-box {
		top: 80%;
	}
	.sub-contents .history .lists,
	.sub-contents .history .lists > div {
		column-gap: 80px;
	}
	.sub-contents .history .lists dl p {
		font-size: 1.7rem;
	}
	.sub-contents .ci .title p br {
		display: none;
	}
	.sub-contents .ci .logo img {
		max-width: calc(100% - 120px);
	}
	.sub-contents .ci .mark .download-box {
		flex-direction: column;
		row-gap: 10px;
		column-gap: 0;
		margin-top: 10px;
	}
	.sub-contents .ci .type h6 {
		font-size: 2.1rem;
	}
	.sub-contents .ci .type .row {
		flex-direction: column;
		row-gap: 10px;
		column-gap: 0;
	}
	.sub-contents .directions .information .button-box {
        width: calc(100% - 20px);
    }
	.sub-contents .directions .information .button-box img {
		height: 22px;
	}
	.sub-contents .directions .text-box dl dt {
        font-size: 2.2rem;
    }
	.sub-contents .directions .location .map-box {
		width: 100%;
		max-width: 480px;
		margin: 0 auto;
	}
	.sub-contents .directions .location .map-box .row {
		width: 100%;
		flex-direction: column;
		row-gap: 10px;
		column-gap: 0;
	}
	.sub-contents .directions .location .map-box .img {
		width: 100%;
		height: auto;
	}
	.sub-contents .directions .location .map-box > span {
		font-size: 1.7rem;
	}
	.sub-contents .directions .location .text-box dl dd .row {
		column-gap: 10px;
	}
	.sub-contents .directions .location .text-box dl dd .bus-number span {
		font-size: 1.6rem;
	}
	.sub-contents .total .service .text-box {
        grid-template-columns: repeat(2, auto);
        padding: 20px;
		row-gap: 10px;
        column-gap: 15px;
    }
	.sub-contents .total .service .text-box p {
		font-size: 1.6rem;
	}
	.sub-contents .total .service .arrow-ani ul li {
		margin: 40px 0;
	}
	.sub-contents .total .association .item-box p br {
		display: none;
	}
	.sub-contents .smart .factory .circle-box {
		display: none;
	}
	.sub-contents .smart .factory .text-box {
		display: flex;
		flex-direction: column;
		row-gap: 10px;
		padding-top: 0;
	}
	.sub-contents .smart .factory .text-box .item {
		border-radius: 20px;
		padding: 20px;
		margin-top: 0;
		transform: translateX(0);
	}
	.sub-contents .smart .factory .text-box .inner {
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
	.sub-contents .smart .systematic h4 br {
		display: none;
	}
	.sub-contents .smart .systematic .text {
		padding: 20px 0;
	}
	.sub-contents .smart .systematic .text em,
	.sub-contents .smart .systematic .text h5 {
        font-size: 1.8rem;
    }
	.sub-contents .smart .systematic .text p {
		font-size: 1.6rem;
	}
	.sub-contents .patents .grid-box {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 30px;
    }
	.sub-contents .machines .equipment .item-box {
        grid-template-columns: repeat(1, 1fr);
		column-gap: 0;
    }
	.sub-contents .machines .equipment .item h5 {
		margin-top: 10px;
	}
	.sub-contents .machines .equipment .item span {
		font-size: 1.6rem;
	}
	.sub-contents .machines .equipment .item .img {
		margin: 20px 0;
	}
	.sub-contents .parts .information .grid-box {
        row-gap: 5px;
        column-gap: 5px;
    }
	.sub-contents .custom .information .img-box {
		display: flex;
		flex-direction: column;
		row-gap: 5px;
		column-gap: 0;
	}
	.sub-contents .custom .information .img-list {
		max-width: 100%;
		grid-template-rows: inherit;
		grid-template-columns: repeat(4, 1fr);
		row-gap: 0;
		column-gap: 5px;
	}
	.sub-contents .custom .information .img-box figure,
	.sub-contents .custom .information .img-list figure::after {
		border-radius: 10px;
	}
	.sub-contents .custom .information .img-box figure {
		padding: 32.5% 0;
	}
	.sub-contents .custom .information .img-list figure::after {
		width: calc(100% - 4px);
		height: calc(100% - 4px);
		border-width: 2px;
	}
	.sub-contents .custom .cost .item-box {
		row-gap: 10px;
		column-gap: 10px;
	}
	.sub-contents .custom .cost .item {
		width: calc(50% - 5px);
	}
	.sub-contents .custom .cost .item .text {
		padding: 20px;
	}
	.sub-contents .custom .cost .item .icon {
		height: 45px;
	}
	.sub-contents .custom .cost .item .text h5 {
		margin-top: 15px;
	}
	.sub-contents .water .title br {
		display: none;
	}
	.sub-contents .water .production .item-box {
		grid-template-columns: repeat(1, minmax(auto, 360px));
		row-gap: 20px;
		column-gap: 0;
		justify-content: center;
	}
	.sub-contents .product .title .logo {
		max-width: 200px;
	}
	.sub-contents .product .anchors button span {
		font-size: 1.6rem;
		line-height: 1;
	}
	.sub-contents .product .anchors button.on span {
		font-size: 1.8rem;
	}
	.sub-contents .product .anchors button .rhombus {
		width: 16px;
		height: 16px;
	}
	.sub-contents .product .information .img-box {
		padding: 30px 20px;
	}
	.sub-contents .product .information .img-box .swiper-pagination {
        bottom: -10px;
    }
	.sub-contents .product .information .img-box .swiper-pagination button {
		width: 10px;
		height: 10px;
	}
	.sub-contents .product .information .hover-rhombus {
		height: 60px;
	}
	.sub-contents .product .information .hover-rhombus span {
		font-size: 1.7rem;
	}
	.sub-contents .product .information .info-box .text .dl-box {
		flex-direction: column;
		row-gap: 5px;
		column-gap: 0;
	}
	.sub-contents .product .information .info-box .text .dl-box dl {
		width: 100%;
		height: auto;
		row-gap: 5px;
		padding: 15px 0;
	}
	.sub-contents .product .information .info-box .text .dl-box dl dt {
		font-size: 1.8rem;
	}
	.sub-contents .accu .item-box {
		grid-template-columns: repeat(1, 1fr);
	}
	.sub-contents .product .information .info-box .info-text ol li {
		flex-direction: column;
		row-gap: 10px;
		column-gap: 0;
	}
	.sub-contents .product .information .info-box .info-text ol em {
		width: 100%;
		font-size: 1.7rem;
	}
	.sub-contents .product .information .info-box .info-text ol p {
		font-size: 1.8rem;
	}
	.sub-contents .product .details .img-box .bottom {
		bottom: 10px;
	}
	.sub-contents .product .details .img-box .bottom img {
		width: 25px;
		height: 25px;
	}
	.sub-contents .product .details .img-box .bottom p {
		font-size: 1.3rem;
	}
	.sub-contents .product .details .detail p {
		font-size: 1.7rem;
		margin-top: 15px;
	}
	.sub-contents .product .note .item-box .icon {
		height: 65px;
	}
	.sub-contents .product .note .item-box h4 {
		font-size: var(--font36);
	}
	.sub-contents .product .note .item-box span {
		font-size: 1.5rem;
	}
	.sub-contents .product .type .swiper-pagination {
		height: 60px;
	}
	.sub-contents .product .type .swiper-pagination button {
		font-size: 1.7rem;
	}
	.sub-contents .product .table-box table th,
	.sub-contents .product .table-box table td,
	.sub-contents .product .type .note {
        font-size: 1.5rem;
    }
	.sub-contents .product .information .info-box .spec-box .spec {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 10px;
	}
	.sub-contents .product .information .info-box .spec-box dl {
		row-gap: 15px;
		padding: 20px 0;
	}
	.sub-contents .product .information .info-box .spec-box dl dt {
		font-size: 1.7rem;
	}
	.sub-contents .product .information .info-box .spec-box dl span {
		font-size: 2.7rem;
	}
	.sub-contents .popup .inner {
		padding: 30px 20px;
	}
	.sub-contents .popup.contact .text {
		margin: 0;
	}
	.sub-contents .recruit .information .text h4 {
		margin-bottom: 20px;
	}
	.sub-contents .recruit .talent .item-box {
		grid-template-columns: repeat(1, 1fr);
		column-gap: 0;
	}
	.sub-contents .recruit .talent .item {
		padding: 30px 0;
	}
	.sub-contents .recruit .talent .item .icon {
		height: 60px;
	}
	.sub-contents .recruit .talent .item dl {
		margin-top: 20px;
	}
	.sub-contents .recruit .talent .item dl dt {
		margin-bottom: 15px;
	}

	footer {
		padding: 60px 0 30px;
	}
	footer h2 {
		font-size: calc(var(--font80) - 0.2rem);
	}
	footer .logo {
		width: 225px;
	}
	footer .row {
		margin-top: 40px;
	}
	footer .info {
		max-width: 100%;
		column-gap: 20px;
		font-size: 1.5rem;
	}
	footer .top-button {
		width: 75px;
		height: 75px;
		position: absolute;
	}
	footer .bottom {
		flex-direction: column-reverse;
		row-gap: 10px;
	}
	footer .copy {
		font-size: 1.5rem;
	}
	footer .link-box {
		justify-content: flex-start;
	}
}