@charset "utf-8";

#loading  {
	display: flex;
    align-items: center;
    justify-content: center;
	background-color: #fff;
	width: 100%;
	height: 100%;
	position: fixed;
	left:0;
	top:0;
	z-index: 9999999999999;
}

.home-in {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.home-title {
    width: 160px;
}
.home-title h2 {
    display :inline-block;
    font-size: 50px;
    border-right: solid 1px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.home-contents {
    width: calc(100% - 160px);
}
.home-subtitle {
    font-size: 50px;
    margin-bottom: 20px;
}
.home-subtitle.center {
    text-align: center;
}
.home-desc {
    font-size: 34px;
    line-height: 1.8;
}
.home-text {
    font-size: 30px;
    line-height: 1.8;
}

.large-img {
    height: 500px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}



@media (max-width: 1000px) {

    .home-in {
        display: block;
    }
    .home-title {
        width: 100%;
        text-align: center;
    }
    .home-title h2 {
        font-size: 30px;
        border-right: none;
        writing-mode: inherit;
        border-bottom: solid 1px;
        margin-bottom: 30px;
    }
    .home-contents {
        width: 100%;
    }
    .home-subtitle {
        font-size: 24px;
    }
    .home-desc {
        font-size: 16px;
    }
    .home-text {
        font-size: 14px;
    }
    .large-img {
        height: 200px;
    }

}


/* -----------------
main-slide
-----------------------*/
#main-slide {
    padding: 25px 0;
    background: url("../img/home/slide_bg.jpg") center;
    overflow: hidden;
}
#main-slide .swiper-container {
    overflow: visible;
}


@media (max-width: 1000px) {

    #main-slide {
        padding: 10px 0;
    }
}



/* ----------------
greeting
--------------------------*/


@media (max-width: 1000px) {


}


/* ----------------
mission
--------------------------*/
.mission-img {
    text-align: center;
    margin: 50px 0;
}
.mission__list {
    display: flex;
    justify-content: space-between;
    margin: 50px 0;
}
.mission__list > li {
    width: 30%;
    height: 0;
    padding-top: 30%;
    text-align: center;
    border-radius: 10000px;
    background: #e1e0e0;
    position: relative;
}
.mission__list > li:not(:first-child):before {
    content: '×';
    line-height: 1;
    font-size: 70px;
    text-align: center;
    position: absolute;
    left: -20%;
    top: 40%;
}
.mission__list > li .in {
    width: 100%;
    position: absolute;
    left:0;
    top:50%;
    transform: translateY(-50%);
}
.mission__list > li .in p {
    font-size: 24px;
    margin-top: 10px;
}

@media (max-width: 1000px) {

    .mission-img {
        margin: 30px 0;
    }
    .mission__list {
        margin: 30px 0;
    }
    .mission__list > li:not(:first-child):before {
        font-size: 30px;
        width: 30%;
        left: -22%;
        top: 40%;
    }
    .mission__list > li .icon {
        width: 60%;
        margin: auto;
    }
    .mission__list > li .in p {
        font-size: 12px;
    }

}


/* ----------------
service
--------------------------*/
#service {
    background: url("../img/cmn/bg_dot.png?2");
}
.service-box:not(:last-of-type) {
    margin-bottom: 100px;
}
.service-box .num {
    font-size: 90px;
    font-weight: 600;
    line-height: 1;
    text-align: center;
    margin-bottom: 30px;
}
.service-box .img {
    position: relative;
    height: 300px;
    margin-top: 50px;
    overflow: hidden;
}
.service-box .img img {
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

@media (max-width: 1000px) {

    .service-box .num {
        font-size: 60px;
        margin-bottom: 20px;
    }
    .service-box .img {
        height: 200px;
        margin-top: 30px;
    }

}


/* ----------------
brand
--------------------------*/
.brand-box:not(:last-of-type) {
    margin-bottom: 70px;
}
.brand-logo {
    text-align: center;
    margin-bottom: 30px;
}

@media (max-width: 1000px) {

    .brand-box:not(:last-of-type) {
        margin-bottom: 40px;
    }

}


/* ----------------
company
--------------------------*/
#company {
    background: var(--gray-color);
}
.company-address {
    font-size: 38px;
    font-weight: 500;
    line-height: 1.8;
}


@media (max-width: 1000px) {

    .company-address {
        font-size: 14px;
    }
    .company-address span {
        font-weight: 500;
    }
    
}


/* ----------------

--------------------------*/


@media (max-width: 1000px) {


}


/* ----------------

--------------------------*/


@media (max-width: 1000px) {


}
