@charset "utf-8";

@media (max-width:1440px) {

}
@media (max-width:1280px) {
    .main .hero .inner .hero-text {
        font-size:7.2rem
    }
    .main .hero .inner .hero-text > p {
        font-size:1.8rem
    }

    .header .inner .snb > nav {
        display:none
    }

    .logo {
        max-width:14rem
    }
    .header .inner .snb .toggle-btn {
        width:2.4rem;
        height:2.4rem;
    }

    .main section {
        padding:12rem 0
    }
    .main .inner .desc {
        margin-top:2.4rem
    }

    .main .about .inner .num-wrap {
        margin-top:6.8rem
    }
    .main .about .inner .num-wrap .num-list > li .num-group {
        gap:1.2rem
    }
    .main .about .inner .num-wrap .num-list > li .num-group .num {
        font-size:10rem;
        line-height: 10rem;
    }
    .main .about .inner .num-wrap .num-list > li .num-group .side span {
        font-size:3.6rem
    }

    .main .partner .inner-box,
    .main .strength .inner-box {
        padding: 12rem 0;

    }

    .logo-list {
        margin-top: 8rem
    }
    .main .business .cont-wrap .cont .cont-area .text {
        font-size:2rem
    }
    .main .strength .inner-box .img-list > li .text {
        font-size:1.6rem
    }

    .header .allmenu .inner .allmenu-list > li .dp1 {
        font-size:2.8rem;
        width:30rem
    }
    .header .allmenu .inner .allmenu-list > li .dp2list {
        gap:6rem
    }
    .about .global .graph-wrap .graph-list {
        max-width:unset
    }
    .about .global .donut-wrap {
        width:auto;
        height:auto;
    }
    .about .global .graph-wrap .graph-list > li .text .percent {
        font-size:6rem
    }
    .subvisual {
        height: 55dvh;
    }
    .subvisual::after {
        max-width: 78.7rem
    }
    .subvisual .inner .sub-header {
        font-size:10rem
    }
    .sub-wrap .page-head .h3 + .desc {
        font-size:2rem
    }
    .sustain .intro .text br {
        display:none
    }
    .sustain .sustain-list .cont-wrap .cont-list > li .text .desc {
        white-space: normal;
    }
    .sustain .sustain-list .cont-wrap .cont-list > li .text {
        padding-right:10rem
    }

    .factory .box-wrap .box-list > li:not(:has(.img)) {
        padding:4rem
    }
    .capacity .box-wrap .box-list {
        grid-template-columns:repeat(3,1fr)
    }
    .capacity .box-wrap .box-list > li .numset .num {
        font-size:6rem
    }
    .box-wrap .box-list > li.blank {
        display:none
    }

    .process .process-wrap .process-list {
        
grid-template-columns: repeat(3,1fr);
    }
    .process .process-wrap .process-list.bottom {
        width: calc(100% / 3 * 2);
    }
    .process .process-wrap .process-list > li .cont .subtit {
        font-size:2.4rem
    }
    .process .process-wrap .process-list > li .numset .num {
        font-size:1.8rem
    }
    .contact .box-wrap .contact-list > li {padding:0 6rem}
    .contact .box-wrap .contact-list > li .dlset > dl {
        font-size:1.8rem
    }
}


@media screen and (max-width: 904px) {
    .main .hero .inner .hero-text {
        font-size:6.4rem
    }
    .main .about .inner .num-wrap .num-list {
        grid-template-columns: repeat(1,1fr);
    }
    .main .about .inner .num-wrap .num-list > li + li {
        border-left: none;
        border-top:1px solid rgba(256,256,256,.2);
    }
    .main .about .inner .num-wrap .num-list > li:nth-child(1) {
        padding-left:0
    }
    .main .about .inner .num-wrap .num-list > li:nth-child(2) .num-group,
    .main .about .inner .num-wrap .num-list > li:nth-child(3) .num-group {
        justify-content: flex-start;
    }
    .main .about .inner .num-wrap .num-list > li {
        padding:4rem 0
    }
    .main .about .inner .num-wrap {
        margin-top:6rem
    }

    .main .partner {
        padding:0 2rem
    }
    .logo-list {
        grid-template-columns: repeat(2,1fr);
        gap: 4rem 0
    }
    .main section .sec-tit {
        margin-bottom:4.8rem
    }
    .main .business .cont-wrap .cont {
        padding:6rem 0
    }
    .main .strength .inner-box .img-list {
        grid-template-columns: repeat(2,1fr);
    }
    .main .strength .inner-box .img-list > li.empty {
        display: none;
    }
    .main .strength .inner-box .sec-head {
        flex-direction: column;
        align-items: flex-start;
        gap: 2rem;
    }

    .main .contact .inner .flex {
        flex-direction: column;
        gap:3rem;
    }

    .header .allmenu .inner .allmenu-list > li {
        flex-direction: column;
    }
    .header .allmenu .inner .allmenu-list > li .dp1 {
        
        font-size: 2.4rem;
        width: auto;
        margin-bottom: 2rem;
    }

    .header .allmenu .inner .allmenu-list > li .dp2list {
        gap: 1.2rem 3rem;
        flex-wrap: wrap;
    }
    .main .contact .inner .flex .h2 {
        text-align: center;
    }
    .header {
        height: 60px
    }
    .logo {
        max-width: 10rem;
    }
    .subvisual {
    height: 46dvh;
}
    .subvisual::after {
    max-width: 53.7rem;
}
    .subvisual .inner .sub-header {
    font-size: 8rem;
}
    .subvisual .inner {
        padding-bottom: 8rem;
    }
    .sub-wrap {
        border-radius: 6rem 6rem 0 0;
        padding-top: 12rem;
        padding-bottom: 15rem;
    }
    .sub-wrap .half-wrap > div {
        width:auto
    }

    body br {
        display:none
    }
    #bo_v_con br {
        display:block
    }
    .sub-wrap .page-head .half-wrap .text > p {
        font-size:2rem
    }
    .about .global {
        padding: 12rem 0;
        padding-bottom: 20rem;
    }
    .sub-wrap section + section {
        margin-top: 12rem;
    }
    .sub-wrap .page-head .h3 + .half-wrap {
        margin-top:4.8rem
    }
    .sub-wrap section .sec-head .h3 + .desc, .sub-wrap section .sec-head .h4 + .desc {
        font-size:2rem
    }
    .about .global .graph-wrap .graph-list > li .text .percent {
        font-size:4.8rem
    }
    .subvisual .inner .subvisual-tab .sub-tablist li > a > span {
        font-size:1.6rem
    }
    .printing .img-list > li.empty {
        display:none
    }
    .printing .img-list {
        margin-top:6rem;
        grid-template-columns: repeat(3,1fr);
    }

    .sub-wrap .half-wrap {
        
        justify-content: flex-start;
    }
    .printing .img-list + .half-wrap {
        margin-top: 6rem;
    }
    .sub-wrap .material .box-list > li .subtit {
        font-size:2.4rem
    }
    .sub-wrap .material .box-list > li .desc {
        font-size:1.6rem
    }
    .sub-wrap .material .box-list > li {
        padding: 2.8rem;
        padding-top: 10rem;
    }
    .sub-wrap .material .graph-wrap {
        margin-top:6rem
    }
    .sub-wrap .material .graph-wrap .graph-list > li .cont-tit > p {
        font-size:2.4rem
    }
    .sub-wrap .material .graph-wrap .graph-list > li .graph-box .graph.right .num {
        font-size:2rem
    }
    .sub-wrap .material .graph-wrap .graph-list > li .graph-box .graph .desc {
        font-size:1.6rem
    }
    .sub-wrap .material .graph-wrap .graph-list {
        grid-template-columns:repeat(2,1fr);
        gap: 8rem 4.8rem
    }
    .strength .cont-wrap .cont-list > li {
        grid-template-columns:repeat(1,1fr);
        gap: 2rem 0;
        padding: 6rem 0;
    }

    .item #bo_gall #gall_ul {
        grid-template-columns: repeat(2,1fr);
    }
    .item #bo_gall .gall_text_href a {
        font-size:2.4rem
    }
    body:has(.item.view) .sub-wrap {
        padding-top:20rem
    }
    .view #bo_v_title .bo_v_tit {
        font-size:4.8rem
    }
    .view #bo_v_info .if_date {
        font-size:1.8rem
    }
    .view #bo_v_atc {
        padding-top:6rem;
        padding-bottom:6rem
    }
    .sustain .full-img {
        
padding: 8rem 0 10rem;
    }
    .sustain .sustain-list .cont-wrap .cont-list > li .text {
        padding-right:6rem
    }
    .sustain .sustain-list .cont-wrap .cont-list > li .text .desc {
        font-size:2rem;
        margin-top: 2.8rem;
    }

    .factory .box-wrap .box-list > li {
        grid-column: span 2;
        grid-row: span 2
    }
    .factory .box-wrap .box-list > li:first-child {
        grid-column: span 4;
        grid-row:span 4
    }
    .factory .box-wrap .box-list > li:last-child {
        grid-column: span 4;
        grid-row: span 2
    }
    .factory .box-wrap .box-list > li:not(:has(.img)) {
        min-height: 26rem;
    }

    .factory .facility .cont-wrap .cont-list > li {
        grid-template-columns: repeat(1,1fr);
    }
    .factory .facility .cont-wrap .cont-list > li div:not(.img) {
        width:auto
    }
    .factory .facility .cont-wrap .cont-list > li div.img {
        grid-column:span 1
    }
    .capacity .box-wrap .box-list {
            grid-template-columns:repeat(2,1fr)
    }

    .process .process-wrap .process-list > li .numset .num {
        width: 4.4rem;
        height: 4.4rem;
        font-size: 1.6rem;
    }
    .contact .box-wrap .contact-list {
        grid-template-columns:repeat(1,1fr);
                padding:6rem 4rem
    }
    .contact .box-wrap .contact-list > li + li {
        border-left:none;
        border-top: 1px solid var(--secondary-white);
        margin-top: 4rem;
        padding-top: 4rem;
    }
    .contact .box-wrap .contact-list > li {
        padding:0
    }

    .contact .box-wrap {
        padding:0
    }
}

@media screen and (max-width:599px) {
    /* body br {
        display: none;
    } */
    .main .hero .inner .hero-text {
        font-size:4rem
    }

    .main .hero .inner .hero-text > br {
        display:block
    }
    .main section,
    .main .partner .inner-box, 
    .main .strength .inner-box {
        padding: 10rem 0;
    }
    .main section .sec-tit {
        font-size: 1.4rem;
        letter-spacing: 0;
    }
    .main .about .inner .num-wrap {
        margin-top:4rem
    }
    .main .partner {
        padding: 0
    }
    .main .partner .inner-box {
        border-radius: 3rem;
    }
    .logo-list {
        gap: 3rem 0;
        margin-top: 5rem;
    }

    .main .business .cont-wrap {
        margin-top:5rem
    }
    .main .business .cont-wrap .cont {
        grid-template-columns: repeat(1,1fr);
    }
    .main .business .cont-wrap .cont .tit-area {
        gap: 1rem;
        padding-right: 0;
    }
    .main .business .cont-wrap .cont .cont-area {
        margin-top:3rem
    }
    .main .business .cont-wrap .cont .cont-area .text {
        font-size:1.8rem
    }
    .main .business .cont-wrap .cont .cont-area .img {
        margin-top:2rem
    }
    .main .business .cont-wrap .cont {
        padding: 4rem 0
    }
    .main .strength .inner-box .img-list {
        gap:1rem 
    }
    .main .strength .inner-box .img-list > li .text {
        font-size:1.4rem;
        bottom: 2rem;
        right: 0;
        padding: 0 2rem;
    }
    .main .contact .inner {
        padding:12rem 0
    }
    .main .contact .inner .flex .btnset {
        font-size: 1.6rem;
    }
    .footer .inner .add-wrap > dl {
        font-size:1.4rem;
        align-items: flex-start;
    }

    .header .allmenu .inner .allmenu-list > li {
        
        padding: 2.4rem 0;
    }
    .header .allmenu .inner .allmenu-list > li .dp1 {
        font-size: 2rem;
    }
    .header .allmenu .inner .allmenu-list > li .dp2list > li > a {
        font-size: 1.4rem;
    }
    .sub-wrap {
        border-radius: 4rem 4rem 0 0;
        padding-top: 10rem;
        padding-bottom: 12rem;
    }
    .subvisual .inner .sub-header {
        
font-size: 4.4rem;
    }
    .sub-wrap section + section {
        margin-top: 10rem;
    }
    .about .global {
        padding-top: 10rem;
        padding-bottom: 17rem;
    }
    .sub-wrap section .sec-head .h3 + .desc, .sub-wrap section .sec-head .h4 + .desc {
        font-size:1.8rem
    }
    .about .global .graph-wrap .graph-list {
        grid-template-columns: repeat(1,1fr);
        gap: 0;
    }
    .about .global .graph-wrap {
        margin-top:4rem
    }
    .about .global .graph-wrap .graph-list > li:not(:nth-child(2)) {
        margin-top:0
    }
    /* .about .global .donut-chart-svg .donut-front {
        stroke-dasharray: 328px;
        stroke-dashoffset: 328px;
    } */

    .subvisual .inner .subvisual-tab .sub-tablist {
        gap:1.2rem 3rem
    }
    .subvisual .inner .subvisual-tab .sub-tablist li + li::before {
        left:-1.5rem
    }
    .sub-wrap .page-head .h3 + .desc {
        font-size:1.8rem
    }
    .printing .img-list {
        grid-template-columns: repeat(2,1fr);
        gap:1rem;
        margin-top: 4rem;
    }
    .subvisual .inner {
        padding-bottom:6rem
    }

    .sub-wrap .box-list.col-3 {
        grid-template-columns: repeat(1,1fr);
    }

    .sub-wrap .material .box-list, 
    .sub-wrap .material .graph-wrap {
        margin-top:4rem;
        max-width: unset;
    }

    .sub-wrap .box-list {
        gap:1rem
    }

    .sub-wrap .material .graph-wrap .graph-list {
        grid-template-columns:repeat(1,1fr)
    }
    .sub-wrap .material .box-list > li {
        padding-top: 8rem;
    }
    .sub-wrap .material .graph-wrap .graph-list > li .graph-box .graph .desc {
        font-size:1.4rem
    }

    .strength .cont-wrap .cont-list > li {
        padding: 4rem 0;
    }
    .item #bo_gall .gall_text_href a {
        font-size:2rem
    }
    .item #bo_gall .gall_text_href {
        
        margin-top: 1.2rem;
    }
    .item #bo_gall .gall_info .gall_date {
        font-size:1.4rem
    }
    .view #bo_v_info {
        padding-bottom:4rem
    }
    .view #bo_v_atc {
        padding: 4rem 0
    }
    .view .list-btn {
        margin-top: 6rem;
    }
    .view .list-btn > a {
        font-size:1.6rem;
        padding: 2rem 6rem;
    }
    .sustain .sustain-list .cont-wrap .cont-list > li {
        grid-template-columns:repeat(1,1fr)
    }
    .sustain .full-img {
        
        padding: 6rem 0;
    }
    .sustain .sustain-list .cont-wrap .cont-list > li {
        padding: 4.8rem 0;
        gap: 4rem;
    }
    .sustain .sustain-list .cont-wrap .cont-list > li .text {
        padding-right: 0;
    }
    .sustain .sustain-list .cont-wrap .cont-list > li .text .desc {
        font-size:1.6rem
    }
    .sub-wrap .page-head .half-wrap .text > p {
        font-size: 1.8rem;
    }

    .factory .box-wrap .box-list > li:not(:has(.img)) {
        padding:2.4rem;
        min-height: 17rem;
    }
    .factory .box-wrap .box-list > li .subtit {
        font-size:2.4rem;
        margin-bottom: 2rem;
    }
    .factory .box-wrap .box-list > li .desc {
        font-size:1.6rem
    }
    .factory .box-wrap .box-list > li {
        grid-column: span 4;
        grid-row: span 4
    }
    .factory .facility .cont-wrap .cont-list > li {
        padding: 4rem 0;
    }
    .factory .facility .cont-wrap {
        margin-top:4rem
    }

    .capacity .box-wrap .box-list {
        grid-template-columns:repeat(1,1fr)
    }
    .capacity .box-wrap .box-list > li .numset .num {
        font-size: 4rem;
    }
    .capacity .box-wrap .box-list > li .numset .unit {
        font-size:1.4rem
    }
    .capacity .box-wrap .box-list > li .badge {
        font-size:1.4rem
    }
    .capacity .box-wrap .box-list > li .text {
        font-size:1.8rem
    }
    .capacity .box-wrap .box-list > li {
        
padding: 2.8rem;
        
aspect-ratio: 1/0.7;
    }
    .process .process-wrap .process-list {
        grid-template-columns:repeat(2,1fr)
    }
    .process .process-wrap .process-list > li .numset .progress {
        display:none
    }
    .process .process-wrap .process-list > li:nth-child(3) {
        grid-column :span 2
    }
    .process .process-wrap .process-list.bottom {
        width:auto;
        margin-top: 8rem;
    }
    .process .process-wrap .process-list.top {
        row-gap: 6rem;
    }
    .process .process-wrap .process-list > li .cont {
        padding: 0 1.6rem
    }
      .process .process-wrap .process-list.bottom > li:last-child .cont {
        padding: 0
    }
    .process .process-wrap .process-list > li .icon {
        width:6.8rem
    }
    .process .process-wrap .process-list > li .numset .num {
        width:4rem;
        height:4rem;
        font-size:1.4rem
    }
    .process .process-wrap .process-list > li {
        gap:2.4rem
    }
    .process .process-wrap .process-list > li .cont .subtit {
        font-size:2rem
    }
    .main .btnset {
        font-size: 1.4rem;
    }

    .main .contact .inner .flex .btnset .ic {
        width: 2.8rem;
        height: 2.8rem;
    }

    .item .bo_sch_wrap {
        max-width:24rem;
    }
    .item .bo_sch .sch_btn {
        width:24px;
        height:24px;
        transform: translateY(8px);

    }
    .item .bo_sch .sch_input {
        padding-bottom:0
    }
    .contact .box-wrap .contact-list > li .dlset > dl {
        flex-direction:column;
        font-size:1.6rem;
    
    }
    .contact .box-wrap .contact-list > li .dlset > dl > dt {
        margin-bottom:.8rem
    }
    .contact .box-wrap .contact-list > li .dlset > dl > dd {
        text-align:left
    }

    .contact .box-wrap .contact-list > li .dlset > dl > dd > a + a, .contact .box-wrap .contact-list > li .dlset > dl > dd > div + div, .contact .box-wrap .contact-list > li .dlset > dl > dd > div + a {
        margin-top:4px
    }
    .contact .box-wrap .contact-list > li .dlset {
        margin-top:3rem
    }

    .contact .box-wrap {
        margin-top: 4rem;
        border-radius: 3rem;
    }

    .contact .box-wrap .contact-list {
        padding: 4.8rem 2.8rem;
    }

    .about .global .donut-wrap {
        padding: 2rem
    }

    .about .global .donut-chart-svg .donut-back {
        stroke-width: 1.3rem;
    }
    .about .global .donut-chart-svg .donut-front {
        stroke-width: 1.3rem;
    }

    .header .allmenu .inner .allmenu-list {
        padding-top:2rem
    }


}
