/* mainVisual */
#mainVisual { position: relative; /* overflow: hidden; */ /* height: 825px; */ height: 41.6667vw; max-height: 100vh; background-color: #f8f4eb; }
#mainVisual .contwrap { height: 100%; }
#mainVisual .mv_wrap { height: 100%; }

#mainVisual .slick-dots { z-index: 20; position: relative; padding: 40px 0; /* background-color: #f8f4eb; */ display: flex; flex-wrap: nowrap; justify-content: center; }
#mainVisual .slick-dots > li { display: inline-block; margin: 0 10px; width: 10px; height: 10px; border-radius: 50%; background-color: #c2c2c2; cursor: pointer; }
#mainVisual .slick-dots > li button { display: none; }
#mainVisual .slick-dots > li.slick-active { background-color: #6f00ff; }

@media (max-width: 1535px) {
    #mainVisual .slick-dots { padding: 30px 0; }
    #mainVisual .slick-dots > li { margin: 0 8px; }
}
@media (max-width: 1279px) {
    #mainVisual .slick-dots { padding: 20px 0; }
    #mainVisual .slick-dots > li { margin: 0 7px; }
}
@media (max-width: 1023px) {
    #mainVisual .slick-dots { padding: 10px 0; }
    #mainVisual .slick-dots > li { margin: 0 5px; width: 7px; height: 7px; }
}

/* mainCompany */
#mainCompany { z-index: 15; position: relative; overflow: hidden; padding: 70px 0; background-color: #f8f4eb; }
#mainCompany .text1 { display: flex; flex-wrap: nowrap; align-items: center; font-family: "Berlin"; font-size: 100px; color: #6d6d6d; letter-spacing: -0.03em; line-height: 1.4; }
#mainCompany .text1 img { display: inline-block; margin-right: 20px; width: 480px; }
#mainCompany .text2 { font-weight: 300; font-size: 40px; color: #333; line-height: 1.45; letter-spacing: -0.02em; }
#mainCompany .text3 { font-size: 20px; color: #6a6a6a; line-height: 1.5; }
@media (max-width: 1920px) {
    #mainCompany .text1 img { width: calc(300px + 11vw); }
}
@media (max-width: 1535px) {
    #mainCompany .text1 img { width: calc(200px + 7vw); }
}
@media (max-width: 1023px) {
    #mainCompany .text1 { display: block; line-height: 1.4; }
    #mainCompany .text1 img { width: calc(160px + 5vw); }
    #mainCompany .text1 span { display: block; }
    #mainCompany .text2 br { display: none; }
    #mainCompany .text3 br { display: none; }
}
@media (max-width: 460px) {
    #mainCompany .text1 img { width: calc(130px + 4vw); }
}

/* mainddi */
#mainddi { display: none; z-index: 3; position: relative; padding: 250px 0; background: url(/image/main/ddi_bg.jpg) no-repeat center/cover; background-position: bottom right; }
#mainddi .textbox { text-align: right; }
#mainddi .textbox .text1 { font-size: 35px; color: #fff; line-height: 1.42; }
#mainddi .textbox .text2 { font-size: 20px; color: #f8f4eb; line-height: 1.4; opacity: 0.4; }

#mainddi .circle1 { z-index: 2; position: absolute; left: 0; top: 57%; transform: translateY(-50%); display: inline-block; width: 840px; opacity: 0.4; }

@media (max-width: 1535px) {
    #mainddi .circle1 { width: calc(400px + 20vw); }
}
@media (max-width: 1279px) {
    #mainddi .circle1 { width: calc(300px + 15vw); }
}
@media (max-width: 1023px) {
    #mainddi .circle1 { width: calc(200px + 10vw); top: 45%; left: -50px; }
}
@media (max-width: 767px) {
    #mainddi { display: block; }
    #mainddi .textbox { text-align: center; }
    #mainddi .textbox .text1 br { display: none; }
    #mainddi .textbox .text2 br { display: none; }

    #mainddi .circle1 { display: none; }
}

/* mainddi2 */
#mainddi2 { z-index: 4; position: relative; }
#mainddi2 img { width: 100%; }
@media (max-width: 767px) {
    #mainddi2 { display: none; }
}


/* mainProject */
#mainProject { z-index: 6; position: relative; margin-top: -50px; overflow: hidden; }
#mainProject .frame { z-index: 1; position: absolute; bottom: 0; left: 0; width: 100%; height: 50%; background-color: #f4f4f2; }
#mainProject .contwrap { z-index: 2; position: relative; }
#mainProject .desc1 { padding-bottom: 35px; font-family: "CookGothif"; font-weight: 700; font-size: 70px; color: #000; line-height: 1.35; }
#mainProject .talkwrap { padding: 70px 0; text-align: right; }
#mainProject .talktext { position: relative; right: 150px; display: inline-block; font-weight: 300; font-size: 80px; color: #000; letter-spacing: -0.03em; }
#mainProject .talktext span { z-index: 3; position: relative; }
#mainProject .talktext span b { color: #6f00ff; }
#mainProject .talktext i { display: block; font-style: normal; font-size: 30px; color: #aaa; line-height: 1.5; }
#mainProject .talktext img { z-index: 1; position: absolute; top: 30%; transform: translateY(-50%); width: 89px; }
#mainProject .talktext .talk1 { left: -70px; }
#mainProject .talktext .talk2 { right: -70px; }
@media (max-width: 1279px) {
    #mainProject .contents li { width: 25%; }
    #mainProject .talktext { right: 110px; }
    #mainProject .talktext img { width: calc(50px + 2.5vw); }
    #mainProject .talktext .talk1 { left: -55px; }
    #mainProject .talktext .talk2 { right: -55px; }
}
@media (max-width: 1023px) {
    #mainProject .contents li { width: 33.3333%; }
    #mainProject .talktext { right: initial; }
    #mainProject .talkwrap { text-align: center; }
    #mainProject .talktext img { top: 20%; width: calc(30px + 2vw); }
    #mainProject .talktext .talk1 { left: -25px; }
    #mainProject .talktext .talk2 { right: -25px; }
}
@media (max-width: 767px) {
    #mainProject { margin-top: 20px; }
}
@media (max-width: 460px) {
    #mainProject .contents { justify-content: space-between; }
    #mainProject .contents li { width: 48%; }
    #mainProject .contents li:nth-of-type(n + 3) { margin-top: 4%; }
    #mainProject .talktext img { width: calc(20px + 1vw); }
    #mainProject .talktext .talk1 { left: -15px; }
    #mainProject .talktext .talk2 { right: -15px; }
}

/* mainBanner */
#mainBanner { position: relative; overflow: hidden; padding: 75px 0; }
#mainBanner .contents { display: flex; flex-wrap: wrap; }
#mainBanner .contents li { width: 20%; }
#mainBanner .talkwrap { padding-bottom: 70px; text-align: center; }
#mainBanner .talktext { position: relative; display: inline-block; font-weight: 300; font-size: 80px; color: #000; letter-spacing: -0.03em; }
#mainBanner .talktext span { z-index: 3; position: relative; }
#mainBanner .talktext img { z-index: 1; position: absolute; top: 30%; transform: translateY(-50%); width: 89px; }
#mainBanner .talktext .talk1 { left: -70px; }
#mainBanner .talktext .talk2 { right: -70px; }
@media (max-width: 1279px) {
    #mainBanner .contents li { width: 25%; }
    #mainBanner .talktext img { width: calc(50px + 2.5vw); }
    #mainBanner .talktext .talk1 { left: -55px; }
    #mainBanner .talktext .talk2 { right: -55px; }
}
@media (max-width: 1023px) {
    #mainBanner .contents li { width: 33.3333%; }
    #mainBanner .talktext img { width: calc(30px + 2vw); }
    #mainBanner .talktext .talk1 { left: -25px; }
    #mainBanner .talktext .talk2 { right: -25px; }
}
@media (max-width: 460px) {
    #mainBanner .contents { justify-content: space-between; }
    #mainBanner .contents li { width: 48%; }
    #mainBanner .contents li:nth-of-type(n + 3) { margin-top: 4%; }
    #mainBanner .talktext img { width: calc(20px + 1vw); }
    #mainBanner .talktext .talk1 { left: -15px; }
    #mainBanner .talktext .talk2 { right: -15px; }
}

/* mainInfo */
#mainInfo { position: relative; overflow: hidden; padding: 80px 0; }
#mainInfo .contents { font-family: "CookGothif"; font-weight: 700; font-size: 50px; color: #000; line-height: 1.2; }
#mainInfo .contents * { font-family: inherit; font-weight: inherit; font-size: inherit; color: inherit; line-height: inherit; }
#mainInfo .contents li a { transition: color 0.3s; }
#mainInfo .contents li a:hover { color: #666; } 

/* personWrap */
#personWrap { position: relative; overflow: hidden; padding: 110px 0; }
#personWrap .pwrap { position: relative; max-width: 1180px; margin-left: auto; margin-right: auto; }
#personWrap .contents { display: flex; flex-wrap: nowrap; justify-content: space-between; }
#personWrap .contents > li { width: 21.5%; }
#personWrap .contents > li a { display: block; }
#personWrap .contents > li .personicon img { display: inline-block; width: 100%; }
#personWrap .contents > li .textbox { margin-top: 30px; font-size: 18px; color: #666; line-height: 1.65; }
#personWrap .contents > li .textbox b { font-weight: 700; color: #000; }
#personWrap .contents > li .textbox span { color: #000; }

#personWrap .contents > li .person_btn { position: relative; }
#personWrap .contents > li .person_btn .btn1 { display: inline-block; }
#personWrap .contents > li .person_btn .btn2 { z-index: 2; position: absolute; top: 0; left: 0; width: 100%; opacity: 0; transition: opacity 0.3s; }
#personWrap .contents > li .person_btn:hover .btn2 { opacity: 1; }

@media (max-width: 1560px) {
    /* #personWrap .pwrap { width: calc(100% - 100px); } */
    #personWrap .contents > li .textbox { margin-top: 25px; }
}
@media (max-width: 1279px) {
    #personWrap .pwrap { width: calc(100% - 100px); }
    #personWrap .contents { flex-wrap: wrap; margin: -22px; justify-content: initial; }
    #personWrap .contents > li { width: 25%; padding: 22px; }
}
@media (max-width: 1023px) {
    #personWrap .pwrap { width: calc(100% - 80px); }
    #personWrap .contents > li { width: 33.3333%; }
    #personWrap .contents > li .textbox { margin-top: 20px; }
}
@media (max-width: 767px) {
    #personWrap .pwrap { width: calc(100% - 60px); }
    #personWrap .contents > li .textbox { margin-top: 15px; }
}
@media (max-width: 724px) {
    #personWrap .contents { margin: 0 auto; max-width: 400px; justify-content: space-between; }
    #personWrap .contents > li { width: 48%; padding: initial; }
    #personWrap .contents > li:nth-of-type(n + 3) { margin-top: 4%; }
}
@media (max-width: 460px) {
    #personWrap .pwrap { width: calc(100% - 40px); }
}
@media (max-width: 424px) {
    #personWrap .contents { max-width: 220px; margin: 0 auto; }
    #personWrap .contents > li { width: 100%; }
    #personWrap .contents > li:nth-of-type(n + 3) { margin-top: initial; }
    #personWrap .contents > li:nth-of-type(n + 2) { margin-top: 20px; }
}


/* admbtn1 */
.admbtn1 { z-index: 100; position: absolute; top: 0; right: 15px; font-size: 14px; color: #333; }