/* PCのデザイン */
@media (max-width: 767px) {
    
    .pc {
        display: none!important;
    }

    .main-content {
        background-image: url(../img/top-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-about {
        background-image: url(../img/about-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-business {
        background-image: url(../img/business-bg2.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-design {
        background-image: url(../img/service01-bg.png);
        background-size: cover;
        width: 100%;
    }

    .page-illustration,
    .page-collabo {
        background-image: url(../img/service01-bg.png);
        background-size: cover;
        width: 100%;
    }

    .page-ipcontents {
        background-image: url(../img/service02-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-advertise {
        background-image: url(../img/service05-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-company {
        background-image: url(../img/company-bg2.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-contact {
        background-image: url(../img/contact-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .single-works {
        background-image: url(../img/single-works-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .single-news {
        background-image: url(../img/single-news-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .archive-works {
        background-image: url(../img/archive-works.jpg);
        background-size: cover;
        width: 100%;
    }

    .archive-news {
        background-image: url(../img/archive-news-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .page-privacypolicy {
        background-image: url(../img/privacypolicy-bg.jpg);
        background-size: cover;
        width: 100%;
    }


    /* header */
    .header-main {        
        top: 7.5rem;
        left: 7.5rem;
        width: 15rem;
    }

    .main-menu-button {
        right: 7.5rem;
        top: 7.5rem;
        background-color: #293490;
        width: 12rem;
        height: 12rem;
        border-radius: 6rem;
        padding-top: 3.5rem;
        z-index: 1000;
        cursor: pointer;
    }

    .main-menu-button.active {
        background-color: #fff;
    }

    .main-menu-button.active span{
        color: #293490;
    }

    .main-menu-button span {
        font-size: 3rem;
        color: #fff;
    }

    .main-menu {
        right: 5%;
        top: 3%;
        background-color: #293490;
        width: 90%;
        border-radius: 2.5rem;
        padding-bottom: 6.5rem;
        z-index: 999;
    }

    .main-menu #Main {
        padding-left: 7.5rem;
        padding-top: 15rem;
    }

    .main-menu #Main li{
        margin-bottom: 4.5rem;
    }

    .main-menu #Main li a {
        font-size: 6rem;
        color: #fff;
        letter-spacing: 0.25rem;
        width: 35rem;
        display: block;
    }

    .menu-description {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }
    /* header end */

    /* TOP-mv */

    .top--mv video {
        width: 100%;
    }

    /* TOP-mv end */

    /* TOP-about */
    .top-about--content {
        width: 90%;
        margin: 15rem auto 0;
        padding-bottom: 24.5rem;
    }

    .top-about--title h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .top-about--col.col1 {
        width: 100%;
        margin-top: 85rem;
    }

    .top-about--col.col1 h3 {
        font-size: 8rem;
        letter-spacing: 0.4rem;
        text-wrap-mode: nowrap;
        line-height: 11.5rem;
    }

    .top-about--col-text {
        margin-top: 3rem;
    }

    .top-about--col-text p {
        line-height: 6rem;
        letter-spacing: 0.1rem;
        font-size: 3.5rem;
    }

    .top-about--col-view {
        margin-top: 5rem;
        width: 30rem;
    }

    .top-about--col.col2 {
        width: 100%;
        margin-top: 5rem;
    }

    .top-about--col-img {
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }
    
    .top-about--col-img.img1 {
        background-image: url(../img/top-about1.png);
        width: 54rem;
        height: 37rem;
        left: 0rem;
        top: 45rem;
        z-index: 0;
    }

    .top-about--col-img.img2 {
        background-image: url(../img/top-about2.png);
        width: 75rem;
        height: 61rem;
        z-index: 1;
        right: 0rem;
        top: 7rem;
    }

    /* TOP-about end */

    /* TOP-business */
    @keyframes fadeIn{
        0%{
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @keyframes color {
        0% {
            color: #000;
        }
        100% {
            color: #fff;
        }
    }
    .top-business-works--content.reached {
        animation: color 0.5s ease-in-out forwards;
    }

    .top-business-works--content:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        background-color: #000;
        width: 100%;
        height: 100%;
        z-index: 0;
        transition: .5s;
        opacity: 0;
    }

    .top-business-works--content.reached:before {
        animation: fadeIn 0.5s ease-in-out forwards;
    }

    .top-business-works--content:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        background-image: url(../img/bg5_2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 100%;
        z-index: 1;
        transition: .8s;
        opacity: 0;
    }

    .top-business-works--content.reached:after {
        animation: fadeIn 1s ease-in-out forwards;
        animation-duration: 1.5s;
    }

    .top-business--row {
        z-index: 2;
    }

    .top-business--col.col1 {
        width: 100%;
    }

    .top-business--col.col2 {
        width: 85%;
        margin: 100rem 0 0 15%;
    }

    .top-business--title {
        margin-top: 7.5rem;
    }

    .top-business--title h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .top-business--col-title {
        margin-top: 3rem;
    }

    .top-business--col-title h3 {
        font-size: 6rem;
        letter-spacing: 0.3rem;
        line-height: 8rem;
    }

    .top-business--col-text {
        margin-top: 3rem;
    }

    .top-business--col-text p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .top-business--col-menu {
        margin-top: 5rem;
    }

    .top-business--col-menu ul {
        padding-left: 0;
        margin-bottom: 0;
    }

    .top-business--col-menu ul li {
        border-bottom: solid #000 2px;
        padding-bottom: 3rem;
        margin-bottom: 3.5rem;
        transition: .5s;
    }

    .top-business-works--content.reached .top-business--col-menu ul li {
        border-bottom: solid #fff 2px;
    }

    .top-business--col-menu ul li:hover {
        margin-left: -0.5rem;
    }

    .top-business--col-menu ul li a {
        color: #000;
    }

    .top-business-works--content.reached .top-business--col-menu ul li a {
        animation: color 0.5s ease-in-out forwards;
    }

    .top-business--col-menu p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
    }

    .top-business--col-view {
        margin-top: 15rem;
        margin-left: 24rem;
    }

    .top-business-works--content.reached .top-business--col-view p {
        animation: color 0.5s ease-in-out forwards;
    }

    .top-business--col-img {
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .top-business--col-img.img1 {
        background-image: url(../img/top-business1.png);
        width: 60.5rem;
        height: 80.7rem;
        top: 13.2rem;
        z-index: 0;
    }

    .top-business--col-img.img2 {
        background-image: url(../img/top-business2.png);
        width: 36.5rem;
        height: 36.9rem;
        top: 23rem;
        left: 51rem;
        z-index: 1;
    }

    .top-business--col-img.img3 {
        background-image: url(../img/top-business3.png);
        width: 29.7rem;
        height: 29.9rem;
        top: 61.5rem;
        right: 7rem;
        z-index: 2;
    }

    /* TOP-business end */

    /* TOP-works  */
    .top-works--content {
        z-index: 3;
        margin-top: 20rem;
        padding-bottom: 20rem;
    }

    .top-works--title {
        text-align: center;
    }

    .top-works--title h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .top-works-subtitle {
        text-align: center;

    }

    .top-works-subtitle p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
    }

    .top-works--text {
        text-align: center;
        margin: 8rem auto 0;
        width: 80%;
    }

    .top-works--text p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .top-works--view {
        margin: 10rem auto 0;
        width: 80%;
    }

    .top-works--view .works {
        overflow: visible;
    }

    .top-business-works--content .top-works--view a {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        color: #000;
    }

    .top-business-works--content.reached .top-works--view a {
        animation: color 0.5s ease-in-out forwards;
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .top-works--view .img-box {
        background-color: #fff;
        border-radius: 4rem;
        height: 58rem;
    }

    .top-works--view h3 {
        margin-top: 5rem;
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .top-works--view .works .slide img{
        transition: .5s;
    }

    .top-works--view .works .slide:hover img{
        scale: 1.05;
    }

    .works--categories div {
        margin-right: 1.5rem;
    }

    .top-works--more-btn {
        width: 25%;
        margin: 15rem auto 0;
    }

    .top-business-works--content.reached .top-works--more-btn a {
        animation: color 0.5s ease-in-out forwards;
    }
    /* TOP-works end */

    /* TOP-news */
    .top-news--title {
        padding-top: 15rem;
    }

    .top-news--title h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
        margin-left: 5rem;
    }

    .top-news-subtitle {
        margin-top: 1rem;
        margin-left: 0.3rem;
    }

    .top-news-subtitle p {
        font-size: 0.9rem;
        letter-spacing: 0.12rem;
    }
    
    .top-news--main {
        width: 90%;
        margin: 10rem auto;
        background-color: #ffffffa8;
        border-radius: 2.5rem;
        box-shadow: 0px 0px 20px #7a7a7a;
    }

    .news--list-main {
        padding: 7.6rem 5.2rem 1rem;
    }

    .news--col {
        padding-bottom: 4rem;
    }

    .news--col-img {
        width: 100%;
        border-radius: 4rem;
    }

    .news--col-img img {
        transition: .5s;
    }

    .news--list-main a:hover .news--col-img img {
        scale: 1.05;
    }

    .news--col-main {
        width: 100%;
        color: #000;
    }

    .news--col-day {
        margin-top: 2rem;
    }

    .news--col-day p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
    }

    .news--col-title {
        margin-top: 1rem;
        margin-bottom: 2rem;
    }

    .news--col-title h3 {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .news--col-category {
        border: solid 1px #000;
        border-radius: 3rem;
        font-size: 2.5rem;
        padding: 0rem 2.5rem;
        letter-spacing: 0.15rem;
        margin-right: 1.5rem;
    }

    .news--list-main a:not(:first-child) .news--col {
        margin-top: 2.9rem;
    }

    .news--more-btn {
        width: 32%;
        margin: 15rem auto 10rem;
    }
    /* TOP-news end */

    /* page-about */
    .page-about1--content {
        width: 90%;
        margin: 0 auto 20rem;
        padding-top: 40rem;
    }

    .page-about1--main {
        margin-top: 7.5rem;
    }

    .page-about1--main-title h2 {
        font-size: 8rem;
        letter-spacing: 0.4rem;
        line-height: 11.5rem;
    }

    .page-about1--main-text {
        margin-top: 7.5rem;
    }

    .page-about1--main-text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page-about2--content {
        padding-top: 15rem;
        background-image: url(../img/about-bg2.png);
        background-size: cover;
    }

    .page-about2--main {
        width: 90%;
        margin: 12rem auto;
    }

    .page-about2--main-title {
        padding-top: 75rem;
    }

    .page-about2--main h2 {
        font-size: 5rem;
        letter-spacing: 0.25rem;
        line-height: 8rem;
    }

    .page-about2--main-text {
        margin-top: 7.5rem;
    }

    .page-about2--main-text p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page-about2--main-bg {
        background-image: url(../img/about1.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 65rem;
        top: 0rem;
    }

    .page-about2--main2-bg {
        background-image: url(../img/about2.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 65rem;
        margin-top: 10rem;
    }

    .page-about2--main2 {
        margin-top: 19.8rem;
        padding-bottom: 9.4rem;
    }

    .page-about2--title {
        margin-top: 7.5rem;
    }

    .page-about2--title h2 {
        font-size: 5rem;
        letter-spacing: 0.25rem;
        line-height: 8.5rem;
    }

    .page-about2--text {
        width: 90%;
        margin: 5rem auto;
    }

    .page-about2--text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page-about2--text p.space {
        margin-top: 4rem;
    }
    /* page-about end */

    /* page-business */
    .page-business--content {
        width: 90%;
        margin: 0 auto 20rem;
        padding-top: 40rem;
    }

    .page-business--main {
        margin-top: 5.1rem;
    }

    .page-business--main-title h2 {
        font-size: 3.9rem;
        letter-spacing: 0.6rem;
        line-height: 6rem;
    }

    .page-business--main-text {
        margin-top: 4.2rem;
    }

    .page-business--main-text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page-business2--col {
        margin-bottom: 15rem;
    }

    .page-business2--col.col6 {
        padding-bottom: 14.4rem;
    }

    .page-business2--bg-img {
        background-image: url(../img/business-bg.jpg);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-top: 20rem;
    }

    .page-business2--bg {
        background-size: cover;
        background-position: center;
        border-radius: 1rem;
    }

    .page-business2--bg.bg1 {
        background-image: url(../img/service1.png);
    }
    .page-business2--bg.bg4 {
        background-image: url(../img/service4.jpg);
    }
    .page-business2--bg.bg5 {
        background-image: url(../img/service5.png);
    }
    .page-business2--bg.bg6 {
        background-image: url(../img/service6.jpg);
    }

    .page-business2--bg.bg1,
    .page-business2--bg.bg4,
    .page-business2--bg.bg5,
    .page-business2--bg.bg6 {
        width: 90%;
        height: 48rem;
        margin: 10rem auto;
    }

    .page-business2--bg.bg2 {
        background-image: url(../img/service2.png);
        width: 90%;
        height: 52rem;
        margin: 10rem auto;
    }

    .page-business2--bg.bg3 {
        background-image: url(../img/service3.png);
        width: 87%;
        height: 56rem;
        margin: 10rem auto;
    }

    .side--area {
        top: 8.8rem;
        color: #fff;
        margin-right: 4.2rem;
        margin-top: 0.5rem;
        right: 0;
    }

    .side--area p {
        font-size: 1rem;
        letter-spacing: 0.05rem;
        line-height: 1.9rem;
        transition: .5s;
        color: #5c5c5c;
    }

    .side--area p:hover,
    .side--area .active p {
        color: #fff;
    }

    .side--area .dot{
        width: 0.5rem;
        height: 0.5rem;
        background-color: #ffffff00;
        border-radius: 1rem;
        margin-right: 0.5rem;
        transition: .5s;
    }

    .side--area .active .dot {
        background-color: #fff;
    }

    /* page-business end */

    /* page-design */
    .page-design .page--works {
        background-image: url(../img/service01-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }

    .page-design .page-service--top-img-box .swiper-slide .service--img {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 50rem;
    }

    .page-design .page-service--top-img-box .swiper-slide .service--img.img1{
        background-image: url(../img/service01-slide1.png);
    }
    
    .page-design .page-service--top-img-box .swiper-slide .service--img.img2{
        background-image: url(../img/service01-slide2.png);
    }
    
    .page-design .page-service--top-img-box .swiper-slide .service--img.img3{
        background-image: url(../img/service01-slide3.png);
    }

    .page-design .page-service--row-col.col1 .page-service--row-col-img {
        background-image: url(../img/service01-2.png);
    }
    
    .page-design .page-service--row-col.col2 .page-service--row-col-img {
        background-image: url(../img/service01-3.png);
    }
    
    .page-design .page-service--row-col.col3 .page-service--row-col-img {
        background-image: url(../img/service01-4.png);
    }

    /* page-design end */

    /* page-ipcontents */
    .page-ipcontents .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 20rem;
    }

    .page-ipcontents .page-service--top-img-box .swiper-slide .service--img {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 50rem;
    }

    .page-ipcontents .page-service--top-img-box .swiper-slide .service--img.img1{
        background-image: url(../img/service02-slide1.png);
    }
    
    .page-ipcontents .page-service--top-img-box .swiper-slide .service--img.img2{
        background-image: url(../img/service02-slide2.png);
    }
    
    .page-ipcontents .page-service--top-img-box .swiper-slide .service--img.img3{
        background-image: url(../img/service02-slide3.png);
    }

    .page-ipcontents .page-service--row-col.col1 .page-service--row-col-img {
        background-image: url(../img/service02-1.png);
    }
    
    .page-ipcontents .page-service--row-col.col2 .page-service--row-col-img {
        background-image: url(../img/service02-2.png);
    }
    
    .page-ipcontents .page-service--row-col.col3 .page-service--row-col-img {
        background-image: url(../img/service02-3.png);
    }

    /* page-ipcontents end */

    /* page-illustration */
    .page-illustration .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }

    .page-illustration .page-service--top-img-box .swiper-slide .service--img {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 50rem;
    }

    .page-illustration .page-service--top-img-box .swiper-slide .service--img.img1{
        background-image: url(../img/service03-slide1.png);
    }
    
    .page-illustration .page-service--top-img-box .swiper-slide .service--img.img2{
        background-image: url(../img/service03-slide2.png);
    }
    
    .page-illustration .page-service--top-img-box .swiper-slide .service--img.img3{
        background-image: url(../img/service03-slide3.png);
    }

    .page-illustration .page-service--row-col.col1 .page-service--row-col-img {
        background-image: url(../img/service03-1.png);
    }
    
    .page-illustration .page-service--row-col.col2 .page-service--row-col-img {
        background-image: url(../img/service03-2.png);
    }
    
    .page-illustration .page-service--row-col.col3 .page-service--row-col-img {
        background-image: url(../img/service03-3.png);
    }

    /* page-illustration end */

    /* page-collabo */
    .page-collabo .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }

    .page-collabo .page-service--top-img-box .swiper-slide .service--img {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 50rem;
    }

    .page-collabo .page-service--top-img-box .swiper-slide .service--img.img1{
        background-image: url(../img/service04-slide1.png);
    }
    
    .page-collabo .page-service--top-img-box .swiper-slide .service--img.img2{
        background-image: url(../img/service04-slide2.png);
    }
    
    .page-collabo .page-service--top-img-box .swiper-slide .service--img.img3{
        background-image: url(../img/service04-slide3.png);
    }

    .page-collabo .page-service--row-col.col1 .page-service--row-col-img {
        background-image: url(../img/service04-1.png);
    }
    
    .page-collabo .page-service--row-col.col2 .page-service--row-col-img {
        background-image: url(../img/service04-2.png);
    }
    
    .page-collabo .page-service--row-col.col3 .page-service--row-col-img {
        background-image: url(../img/service04-3.png);
    }

    /* page-collabo end */

    /* page-advertise */
    .page-advertise .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }

    .page-advertise .page-service--top-img-box .swiper-slide {
        width: 250rem;
    }

    .page-advertise .page-service--top-img-box .swiper-slide .service--img.img1{
        background-image: url(../img/service05-slide5-2.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 50rem;
    }

    .page-advertise .page-service--row-col.col1 .page-service--row-col-img {
        background-image: url(../img/service05-1.png);
    }
    
    .page-advertise .page-service--row-col.col2 .page-service--row-col-img {
        background-image: url(../img/service05-2.png);
    }
    
    .page-advertise .page-service--row-col.col3 .page-service--row-col-img {
        background-image: url(../img/service05-3.png);
    }

    .page-advertise .page-service--row-col.col4 .page-service--row-col-img {
        background-image: url(../img/service05-4.png);
    }
    
    .page-advertise .page-service--row-col.col5 .page-service--row-col-img {
        background-image: url(../img/service05-5.png);
    }
    
    .page-advertise .page-service--row-col.col6 .page-service--row-col-img {
        background-image: url(../img/service05-6.png);
    }

    /* page-advertise end */

    /* page-company */
    .page-company--content {
        padding: 40rem 0 10rem;
    }

    .page-company--main {
        width: 90%;
        margin: 15rem auto;
    }

    .page-company--row {
        border-top: solid 1px #000;
    }

    .page-company--row:last-child {
        border-bottom: solid 1px #000;
    }

    .page-company--col.col1 {
        width: 100%;
        padding-top: 3rem;
        padding-bottom: 1rem;
    }

    .page-company--col.col2 {
        width: 100%;
        padding-bottom: 3rem;
    }

    .page-company--col p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .page-company--main2 {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }
    /* page-company end */

    /* page-contact */
    .page-contact--content {
        padding: 40rem 0 10rem;
    }

    .page-contact--box {
        width: 90%;
        margin: 10rem auto;
        border-radius: 2.5rem;
        background-color: #fff;
        padding-bottom: 10rem;
        padding-top: 5rem;
    }

    .page-contact--top {
        padding-top: 6.5rem;
    }

    .page-contact--top-line {
        border-bottom: solid 1px #000;
        width: 60%;
        top: 13.15rem;
        left: 20%;
        z-index: 0;
    }

    .page-contact--top-row p {
        font-size: 3rem;
        color: #b1b1b1;
        transition: .5s;
    }

    .page-contact--top-row p.now {
        color: #000;
    }

    .page-contact--top-col-center {
        padding: 0 15rem;
    }

    .page-contact--top-row .dot {
        background-color: var(--main-color);
        width: 3rem;
        height: 3rem;
        z-index: 1;
        border-radius: 2rem;
    }

    .page-contact--top-row.row2 .page-contact--top-col-center {
        padding: 0 24rem;
    }

    .page-contact--top-row.row2 {
        margin-top: 0.7rem;
    }

    .page-contact--main {
        width: 90%;
        margin: 10rem auto;
    }

    .page-content--main-row {
        margin-bottom: 5rem;
    }

    .page-content--main-col-left {
        width: 100%;
    }

    .page-content--main-col-right {
        width: 100%;
        line-height: 1.9rem;
        font-size: 0.9rem;
        letter-spacing: 0.12rem;
    }

    .page-content--main-col-left h3 {
        font-size: 3.5rem;
        margin-top: 3.5rem;
        letter-spacing: 0.15rem;
        display: inline;
    }

    .page-content--main-col-left .req {
        font-size: 2rem;
        letter-spacing: 0.1rem;
        color: #ff0000;
        display: inline;
    }

    .wpcf7-list-item {
        margin: 0 1rem 0 0;
    }

    .wpcf7-list-item:nth-of-type(3) {
        margin: 0 20rem 0 0;
    }

    .page-content--main-col-right input:not([type=radio]) {
        width: 100%;
        border-radius: 1rem;
        margin-top: 2rem;
        height: 10rem;
        padding: 2rem;
        letter-spacing: 0.15rem;
        font-weight: bold;
        font-family: 'Zen-bold', sans-serif;
        font-size: 3rem;
    }

    .wpcf7-list-item-label {
        font-weight: bold;
        font-family: 'Zen-bold', sans-serif;
        font-size: 3rem;
        line-height: 6rem;
    }

    .page-content--main-col-right textarea {
        width: 100%;
        border-radius: 1rem;
        margin-top: 2rem;
        height: 30rem;
        padding: 2rem;
        letter-spacing: 0.15rem;
        font-weight: bold;
        font-family: 'Zen-bold', sans-serif;
        font-size: 3rem;
    }

    .page-contact--privacypolicy {
        margin-top: 5rem;
    }

    .page-contact--privacypolicy p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page-contact--privacypolicy a {
        color: #000;
        text-decoration: underline!important;
    }

    .page-contact--privacypolicy .wpcf7-list-item {
        margin: 1.2rem 0 0 0;
    }

    .page-contact--privacypolicy .wpcf7-list-item label{
        display: flex;
        align-items: center;
        position: relative;
    }

    .page-contact--privacypolicy input + span {
        font-weight: bold;
        font-family: 'Zen-bold', sans-serif;
        margin-left: 0.5rem;
    }

    .page-contact--privacypolicy .acceptance {
        border-radius: 0;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
      }

    .page-contact--privacypolicy .acceptance:before {
        content: "";
        width: 3rem;
        height: 3rem;
        border: solid 1px #000;
        border-radius: 1.5rem;
        display: block;
    }

    .page-contact--privacypolicy .acceptance:checked:after {
        content: "";
        width: 2rem;
        height: 2rem;
        display: block;
        position: absolute;
        border-radius: 2rem;
        background-color: #0275ff;
        top: 1.95rem;
        left: 0.45rem;
    }

    .page-contact--btn {
        margin-top: 7.5rem;
    }

    .page-contact--btn button {
        width: 40rem;
        border-radius: 6rem;
        padding: 3.5rem 0;
    }

    .page-contact--btn button span {
        font-size: 3rem;
        letter-spacing: 0.15rem;
    }


    .page-contact--confirm {
        width: 90%;
        margin: 10rem auto;
    }

    .page-contact--confirm-row {
        margin-bottom: 2.5rem;
    }

    .page-contact--confirm-col-left {
        width: 100%;
    }

    .page-contact--confirm-col-right {
        width: 100%;
        line-height: 6rem;
        font-size: 3rem;
        letter-spacing: 0.12rem;
    }

    .page-contact--confirm-col-left h3 {
        font-size: 3.5rem;
        margin-top: 3.5rem;
        letter-spacing: 0.15rem;
    }

    .page-contact--confirm-col-right input:not([type=radio]) {
        width: 58.1%;
        border-radius: 0.5rem;
        margin-top: 0.15rem;
        height: 2.9rem;
        padding: 0 1.2rem;
        letter-spacing: 0.15rem;
        font-weight: bold;
        font-family: 'Zen-bold', sans-serif;
    }

    .page-contact--confirm-col-right textarea {
        width: 58.1%;
        border-radius: 0.5rem;
        margin-top: 0.15rem;
        height: 10.9rem;
        padding: 0 0.7rem;
        letter-spacing: 0.15rem;
        font-weight: bold;
        font-family: 'Zen-bold', sans-serif;
    }

    .page-contact--confirm-row:last-child {
        margin-top: 2.5rem;
    }

    .page-contact--confirm-btn-row {
        width: 80%;
        margin: auto;
    }

    .page-contact--confirm-btn-row-col {
        width: 45%;
    }

    .page-contact--confirm-btn-row-col p {
        font-size: 3rem;
        padding: 3rem 0;
        letter-spacing: 0.15rem;
        cursor: pointer;
        border-radius: 6rem;
        border: solid 1px var(--main-color);
        transition: .5s;
    }

    .page-contact--confirm-btn-row-col.col2:hover p {
        background-color: var(--hover-main-color);
    }

    .page-contact--thanks-container {
        margin: 15rem 0;
    }

    .page-contact--thanks h2 {
        font-size: 3.5rem;
        line-height: 6rem;
    }

    .page-contact--thanks p {
        margin-top: 10rem;
        font-size: 3rem;
    }

    .page-contact--thanks a {
        text-decoration: underline!important;
    }

    /* page-contact end */

    /* archive news */
    .archive-news--content {
        padding-top: 40rem;
    }

    .archive-news--main {
        width: 90%;
        margin: 5.5rem auto 15rem;
        background-color: #ffffffa8;
        border-radius: 2.5rem;
        box-shadow: 1px 1px 12px #898989;
        padding-bottom: 10rem;
    }

    .archive-news--category-list {
        width: 100%;
        padding-top: 10rem;
        gap: 2rem;
    }

    .archive-news--category {
        width: 25rem;
    }

    .archive-news--category p {
        font-size: 3rem;
        padding: 0.3rem 4rem;
        color: #000;
        border-radius: 3rem;
        border: solid 1px var(--main-color);
        transition: .5s;
    }

    .archive-news--category p.active,
    .archive-news--category:hover p {
        color: #fff;
        background-color: var(--main-color);
    }

    .archive-news--main .news--list-main {
        padding: 10rem 5rem;
    }

    .archive-news .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }

    .icon.next,
    .icon.prev {
        position: relative;
        display: inline-block;
        width: 3rem;
        height: 3rem;
    }

    .icon.next::before,
    .icon.next::after,
    .icon.prev::before,
    .icon.prev::after {
        content: "";
        position: absolute;
        top: calc(50% + 1px);
        width: 1.75rem;
        height: 0.3rem;
        border-radius: 9999px;
        transform-origin: calc(100% - 0px) 50%;
        background-color: var(--main-color);
    }


    .icon.next::before {
        transform: rotate(38deg);
    }

    .icon.next::after {
        transform: rotate(-38deg);
    }

    .icon.prev::before {
        transform: rotate(145deg);
    }

    .icon.prev::after {
        transform: rotate(-145deg);
    }

    .pagenavi {
        gap: 1rem;
        font-size: 3rem;
    }

    .pagenavi a {
        color: var(--main-color);
        font-size: 3rem;
    }

    .pagenavi span {
        font-size: 3rem;
    }

    .news--not-found {
        font-size: 3rem;
        padding: 30rem 0;
    }
    /* archive end */

    /* archive works */
    .archive-works--content {
        width: 90%;
        margin: 0 auto 20rem;
        padding-top: 40rem;
    }

    .archive-works--main-text {
        margin-top: 6.66rem;
    }

    .archive-works--main-text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .archive-works--main2 {
        width: 90%;
        margin: auto;
    }
    
    .archive-works--category-list {
        padding-top: 2.4rem;
        gap: 2rem 1rem;
    }

    .archive-works--category {
        min-width: 7.5rem;
    }

    .archive-works--category:not(:last-child) {
        margin-right: 2rem;
    }

    .archive-works--category p {
        font-size: 3rem;
        padding: 0.3rem 4rem;
        color: #000;
        border-radius: 3rem;
        border: solid 1px var(--main-color);
        transition: .5s;
    }

    .archive-works--category p.active,
    .archive-works--category:hover p {
        color: #fff;
        background-color: var(--main-color);
    }

    .works--list-main {
        margin-top: 7rem;
    }

    .works--col {
        margin-bottom: 8.7rem;
    }

    .works--col .works--col-img {
        max-height: 60rem;
        border-radius: 3rem;
    }

    .works--col .works--col-img img {
        width: 100%;
    }

    .works--col .works--list-main a {
        color: #000!important;
    }

    .works--col .works--col-title {
        margin-top: 2rem;
        margin-bottom: 2.5rem;
    }

    .works--col .works--col-title + div {
        gap: 1rem;
    }

    .works--col .works--col-title h3 {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .works--col .works--col-category {
        font-size: 2.5rem;
        letter-spacing: 0.2rem;
    }

    .works--col .works--col-category a {
        color: #000!important;
    }

    .works--col .works--col-text {
        font-size: 3rem;
        line-height: 5rem;
        margin-top: 3rem;
    }

    .works--col .works--more-btn {
        margin-top: 3rem;
    }

    .works--col:nth-of-type(even) .works--col-img {
        max-height: 60rem;
        border-radius: 3rem;
    }

    /* archive works end */

    /* news-single */
    .single-news--content {
        padding-top: 40rem;
    }

    .single-news--main {
        width: 90%;
        margin: 5.5rem auto 10rem;
        background-color: #ffffffa8;
        border-radius: 2.5rem;
        box-shadow: 1px 1px 12px #898989;
        padding-bottom: 4.5rem;
    }

    .single-news--category-list {
        width: 100%;
        padding-top: 10rem;
        gap: 2rem;
    }

    .single-news--category {
        min-width: 25rem;
    }


    .single-news--category p {
        font-size: 3rem;
        padding: 0.3rem 4rem;
        color: #000;
        border-radius: 3rem;
        border: solid 1px var(--main-color);
    }

    .single-news--box {
        width: 90%;
        margin: 5rem auto;
        padding: 10rem 5rem;
        border-radius: 3rem;
        background-color: #fff;
        box-shadow: 1px 1px 12px #898989;
    }

    .single-news--img img {
        width: 100%;
        border-radius: 3rem;
    }

    .single-news--day-category {
        margin-top: 3rem;
        gap: 2rem;
    }

    .single-news--day p {
        font-size: 3rem;
        letter-spacing: 0.2rem;
    }

    .single-news--category2:not(:last-child) {
        margin-right: 2rem;
    }

    .single-news--category2 p {
        font-size: 3rem;
        padding: 0rem 2rem;
        color: #000;
        border-radius: 3rem;
        border: solid 1px var(--main-color);
    }

    .single-news--title {
        margin-top: 3rem;
    }

    .single-news--title h2 {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .single-news--text {
        margin-top: 3rem;
    }

    .single-news--text p {
        font-size: 3rem;
        line-height: 5rem;
    }

    .single-new--col-view {
        margin: 10rem auto 0;
        width: 26rem;
    }

    .single-news .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }

    /* news-single end */

    /* works-single */
    .works-single {
        /* width: 90%; */
        margin: 0 auto 20rem;
        padding-top: 40rem;
    }

    .single-works--content {
        width: 90%;
        margin: auto;
    }

    .single-works--main {
        margin-top: 5.9rem;
    }

    .single-works--thumbnail {
        max-height: 60rem;
        overflow: hidden;
        border-radius: 3rem;
    }

    .single-works--thumbnail img {
        width: 100%;
    }

    .single-works--title {
        margin: 3rem 0 2rem;
    }

    .single-works--title h2 {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .single-works--categories {
        gap: 2rem;
    }

    .single-works--categories-col a {
        color: #000;
        font-size: 3rem;
    }

    .single-works--text {
        margin-top: 3rem;
    }

    .single-works--text p {
        font-size: 3rem;
        line-height: 5rem;
    }

    .single-works--sub-img-row {
        margin-top: 6.9rem;
        width: 100%;
    }

    .single-works--col {
        max-height: 60rem;
        overflow: hidden;
        border-radius: 3rem;
        margin-bottom: 10rem;
    }

    .single-works--thumbnail .img-box,
    .single-works--col img,
    .single-works--thumbnail img {
        width: 100%;
    }

    .single-works .page--works {
        background-image: url(../img/service02-bg2.png);
        background-size: cover;
        background-position: center;
        width: 100%;
        padding-bottom: 15rem;
    }
    /* works-single end */

    /* privacypolicy */
    .page-privacypolicy--content {
        padding-top: 40rem;
        padding-bottom: 20rem;
    }

    .page-privacypolicy--top {
        margin: 10rem auto;
        width: 90%;
    }

    .page-privacypolicy--top h3 {
        font-size: 4rem;
        letter-spacing: 0.35rem;
    }

    .page-privacypolicy--top-text {
        margin-top: 5rem;
        font-size: 3rem;
        letter-spacing: 0.03rem;
        line-height: 5rem;
    }

    .page-privacypolicy--main {
        width: 90%;
        margin: 5rem auto 0;
    }

    .page-privacypolicy--row-col1 h4 {
        font-size: 3.5rem;
    }


    .page-privacypolicy--row-col1 .space {
        display: inline;
    }

    .page-privacypolicy--row-col2 {
        margin-top: 3rem;
    }

    .page-privacypolicy--row-col2 p {
        font-size: 3rem;
        letter-spacing: 0.045rem;
        line-height: 4.5rem;
    }

    .page-privacypolicy--row {
        border-bottom: solid 1px #000;
        padding-bottom: 4.5rem;
    }

    .page-privacypolicy--row:not(:first-child) {
        margin-top: 4.5rem;
    }
    /* privacypolicy end */

    /* footer */

    footer {
        background-image: url(../img/footer-bg.png);
        background-size: cover;
        background-position: center;
        padding-bottom: 12rem;
    }

    .footer--row {
        width: 90%;
        margin: auto;
    }

    .footer--row-col.col1 {
        width: 100%;
    }

    .footer--row-col.col2 {
        margin-top: 13.5rem;
        width: 100%;
        display: flex;
        justify-content: space-around;
    }

    .footer--address {
        color: #fff;
        margin-top: 3rem;
        font-size: 3rem;
        letter-spacing: 0.2rem;
        line-height: 6rem;
    }

    footer .f--menu {
        padding: 1rem 0;
    }

    footer .f--menu li {
        margin-bottom: 2rem;
    }

    footer #Footer1 {
        margin-bottom: 1.5rem;
    }

    footer #Footer1,
    footer #Footer2 {
        display: flex;
        flex-direction: column;
        margin-bottom: 0;
        padding-left: 0;
    }
    
    footer #Footer1 a,
    footer #Footer2 a {
        color: #fff;
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }
    
    footer .f--top,
    footer .f--top-icon {
        color: #fff;
    }

    footer .f--top {
        right: 3rem;
        top: 4rem;
        cursor: pointer;
    }

    footer .f--top p{
        line-height: 1rem;
        font-size: 0.8rem;
    }

    footer .f--logo {
        width: 25rem;
        margin: 15rem auto 7rem;
    }

    footer .copyright {
        color: #fff;
        font-size: 3rem;
        letter-spacing: 0.5rem;
        margin-top: 10rem;
    }

    /* footer end */
}