/* mainVisual */
#mainVisual { position: relative; height: 560px; overflow: hidden; }
#mainVisual .mv_wrap { position: relative; height: 100%; }
#mainVisual .mv_wrap .mv_slick,
#mainVisual .mv_wrap .mv_slick .slick-list,
#mainVisual .mv_wrap .mv_slick .slick-track,
#mainVisual .mv_wrap .mv_slick .slick-slide,
#mainVisual .mv_wrap .mv_slick .slick-slide > div
{ height: 100%; }

#mainVisual .mv_wrap .mv_slick .cont { height: 100%; }
#mainVisual .mv_wrap .mv_slick .cont .contwrap { height: 100%; }
#mainVisual .mv_wrap .mv_slick .cont .bg { z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#mainVisual .mv_wrap .mv_slick .cont1 { background: url(/image/main/mv_bg1.jpg) no-repeat center/cover ; }
#mainVisual .mv_wrap .mv_slick .cont2 { background: url(/image/main/mv_bg2.jpg) no-repeat center/cover ; }
#mainVisual .mv_wrap .mv_slick .cont3 { background: url(/image/main/mv_bg3.jpg) no-repeat center/cover ; }
#mainVisual .mv_wrap .mv_slick .cont .frame { display: none; z-index: 2; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.6); }

#mainVisual .mv_wrap .mv_slick .cont .contwrap { height: 100%; }
#mainVisual .mv_wrap .mv_slick .cont .textbox { z-index: 3; position: relative; top: 50%; transform: translateY(-50%); text-align: center; }
#mainVisual .mv_wrap .mv_slick .cont .textbox .text1 { font-family: 'Jalnan'; font-size: 28px; color: #e94638; line-height: 1.53; }
#mainVisual .mv_wrap .mv_slick .cont .textbox .text2 { font-family: 'Jalnan'; font-size: 34px; color: #851a24; line-height: 1.53; letter-spacing: -0.025em; }
#mainVisual .mv_wrap .mv_slick .cont .textbox .text3 { font-family: 'Jalnan'; font-size: 40px; color: #363636; line-height: 1.53; letter-spacing: -0.025em; }
#mainVisual .mv_wrap .mv_slick .cont .textbox .text3 .col1 { color: #e72c27; }
#mainVisual .mv_wrap .mv_slick .cont .textbox .text3 .col2 { color: #698032; }
#mainVisual .mv_wrap .mv_slick .cont .textbox .text4 { font-family: 'Jalnan'; font-size: 22px; color: #484848; line-height: 1.53; }
#mainVisual .mv_wrap .mv_slick .cont .textbox a { display: inline-block; margin-top: 30px; padding: 13px 50px; text-align: center; font-size: 18px; color: #fff; border: 2px solid #89a150; background-color: #89a150; transition: background-color 0.3s, color 0.3s; border-radius: 100px; }
#mainVisual .mv_wrap .mv_slick .cont .textbox a:hover { background-color: #698032; border-color: #698032; color: #fff; }

#mainVisual .mv_wrap .mv_slick .cont1 .textbox a { color: #e94638; border: 2px solid #e94638; background-color: transparent; }
#mainVisual .mv_wrap .mv_slick .cont1 .textbox a:hover { background-color: #e94638; border-color: #e94638; color: #fff; }

#mainVisual .mv_wrap .mv_slick .cont .textbox .img1 { display: inline-block; margin-bottom: 10px; width: 250px; }

@media (max-width: 1535px) {
    #mainVisual { height: calc(300px + 15vw); }

    #mainVisual .mv_wrap .mv_slick .cont .textbox a { margin-top: 25px; }

    #mainVisual .mv_wrap .mv_slick .cont .textbox .img1 { width: calc(150px + 6.5vw); }
}
@media (max-width: 1279px) {
    #mainVisual { height: calc(270px + 13vw); }

    #mainVisual .mv_wrap .mv_slick .cont .textbox a { margin-top: 20px; }

    #mainVisual .mv_wrap .mv_slick .cont .textbox .img1 { width: calc(120px + 6vw); }
}
@media (max-width: 1023px) {
    #mainVisual .mv_wrap .mv_slick .cont .textbox a { margin-top: 15px; }
    #mainVisual .mv_wrap .mv_slick .cont1 { background-position-x: 0%; }
    #mainVisual .mv_wrap .mv_slick .cont2 { background-position-x: 0%; }
    #mainVisual .mv_wrap .mv_slick .cont3 { background-position-x: 0%; }
    #mainVisual .mv_wrap .mv_slick .cont .frame { display: block; }
}
@media (max-width: 767px) {
    #mainVisual .mv_wrap .mv_slick .cont .textbox a { margin-top: 10px; }
}
@media (max-width: 424px) {
    #mainVisual .mv_wrap .mv_slick .cont .textbox .text1 br { display: none; }
    #mainVisual .mv_wrap .mv_slick .cont .textbox .text2 br { display: none; }
}

/* mainCompany */
#mainCompany { position: relative; overflow: hidden; padding-top: 80px; }
#mainCompany .contents { position: relative; display: flex; flex-wrap: nowrap; justify-content: space-between; font-size: 18px; color: #e72c27; line-height: 1.35; text-align: center; }
#mainCompany .contents * { font-size: inherit; color: inherit; line-height: inherit; }
#mainCompany .contents li { width: 16%; }
#mainCompany .contents li a { display: block; }
#mainCompany .contents li .iconbox img { width: 100%; transform-origin: center; transition: transform 0.3s; }
#mainCompany .contents li a:hover .iconbox img { transform: rotateZ(15deg); }
#mainCompany .contents li .txtbox { margin-top: 13px; }

#mainCompany .contents li:last-of-type { display: none; }
#mainCompany .contents li:last-of-type .txtbox { color: #698032; }

@media (max-width: 1023px) {
    #mainCompany .contents { max-width: 600px; justify-content: initial; flex-wrap: wrap; margin: 0 auto; }
    #mainCompany .contents li { width: 33.3333%; padding: 20px; }
}
@media (max-width: 560px) {
    #mainCompany .contents { justify-content: space-between; }
    #mainCompany .contents li { width: 47%; padding: initial; }
    #mainCompany .contents li:nth-of-type(n + 3) { margin-top: 6%; }
    #mainCompany .contents li .iconbox img { width: 80%; }
    #mainCompany .contents li:last-of-type { display: block; }
}

/* maincommon */
.maintit { padding-bottom: 45px; text-align: center; }
.maintit .tit1 { font-family: 'Jalnan'; font-size: 38px; color: #303030; line-height: 1.31; }
.maintit .tit1 span { font-size: inherit !important; color: #89a150; }
.maintit .tit2 { margin-top: 5px; font-weight: 500; font-size: 20px; color: #9a9a9a; line-height: 1.31; }

.morebtn { margin-top: 40px; text-align: center; }
.morebtn a { display: inline-block; padding: 12px 40px; font-size: 16px; color: #6c8531; border: 1px solid #6c8531; border-radius: 100px; background-color: transparent; transition: background-color 0.3s, color 0.3s; }
.morebtn a:hover { background-color: #6c8531; color: #fff; }

/* mainBest */
#mainBest { position: relative; overflow: hidden; padding: 100px 0; }

/* mainddi */
#mainddi { position: relative; overflow: hidden; padding: 70px 0; background: url(/image/main/ddi_bg.jpg) no-repeat center/cover; }
#mainddi dl { display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; }
#mainddi dl dt { width: 40%; padding-right: 10px; }
#mainddi dl dd { width: 45%; padding-left: 10px; }

#mainddi dl dt .textbox .img1 { display: inline-block; width: 300px; }
#mainddi dl dt .textbox .text1 { margin: 30px 0; font-size: 18px; color: #5c5c5c; line-height: 1.55; }
#mainddi dl dt .textbox .text1 span { font-size: inherit !important; color: #e72c27; }
#mainddi dl dt .textbox a { display: inline-block; padding: 12px 40px; font-size: 16px; color: #6c8531; border: 1px solid #6c8531; border-radius: 100px; background-color: transparent; transition: background-color 0.3s, color 0.3s; }
#mainddi dl dt .textbox a:hover { background-color: #6c8531; color: #fff; }

@media (max-width: 1535px) {
    #mainddi dl dt .textbox .img1 { width: calc(200px + 6.5vw); }
    #mainddi dl dt .textbox .text1 { margin: 25px 0; }
}
@media (max-width: 1279px) {
    #mainddi dl dt .textbox .img1 { width: calc(170px + 6vw); }
    #mainddi dl dt .textbox .text1 { margin: 22px 0; }
}
@media (max-width: 1023px) {
    #mainddi { background-position-x: 90%; }
    #mainddi dl { display: block; }
    #mainddi dl dt { width: 100%; padding-right: initial; }
    #mainddi dl dd { width: 100%; padding-left: initial; margin-top: 20px; }
    #mainddi dl dt .textbox .text1 { margin: 20px 0; }
}

/* mainBrand */
#mainBrand { position: relative; }
#mainBrand .contents { position: relative; border-radius: 50px; overflow: hidden; }
#mainBrand .contents .bg { z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(/image/main/brand_bg.jpg) no-repeat center/cover; }
#mainBrand .contents .frame { z-index: 2; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(78, 74, 71, 0.5); }
#mainBrand .contents .textbox { z-index: 3; position: relative; padding: 100px 50px; text-align: center; }
#mainBrand .contents .textbox .text1 { font-family: 'Jalnan'; font-size: 45px; color: #fff; line-height: 1.44; }
#mainBrand .contents .textbox .text2 { margin: 22px 0; font-size: 20px; color: #fff; line-height: 1.5; }
#mainBrand .contents .textbox a { display: inline-block; padding: 12px 40px; font-size: 16px; color: #fff; border: 2px solid #fff; border-radius: 100px; background-color: transparent; transition: background-color 0.3s, color 0.3s; }
#mainBrand .contents .textbox a:hover { background-color: #6c8531; color: #fff; }
@media (max-width: 1535px) {
    #mainBrand .contents { border-radius: 40px; }
    #mainBrand .contents .textbox { padding: 90px 40px; } 
    #mainBrand .contents .textbox .text2 { margin: 20px 0; }
}
@media (max-width: 1279px) {
    #mainBrand .contents { border-radius: 30px; }
    #mainBrand .contents .textbox { padding: 80px 30px; } 
    #mainBrand .contents .textbox .text2 { margin: 17px 0; }
}
@media (max-width: 1023px) {
    #mainBrand .contents { border-radius: 20px; }
    #mainBrand .contents .textbox { padding: 60px 20px; } 
    #mainBrand .contents .textbox .text2 { margin: 15px 0; }
    #mainBrand .contents .textbox .text2 br { display: none; }
}
@media (max-width: 767px) {
    #mainBrand .contents { border-radius: 15px; }
    #mainBrand .contents .textbox { padding: 30px 15px; } 
    #mainBrand .contents .textbox .text2 { margin: 13px 0; }
}

/* mainInfo */
#mainInfo { position: relative; padding: 70px 0; overflow: hidden; }
#mainInfo .contents { display: flex; flex-wrap: nowrap; justify-content: space-between; }
#mainInfo .contents li { width: 48%; }
#mainInfo .contents li a { display: block; }
#mainInfo .contents li dl { display: flex; flex-wrap: nowrap; align-items: center; }
#mainInfo .contents li dl dt { min-width: max-content; margin-right: 25px; }
#mainInfo .contents li dl dt img { display: inline-block; width: 130px; }
#mainInfo .contents li dl dd { display: flex; flex-wrap: nowrap; align-items: center; }
#mainInfo .contents li dl dd .textbox { margin-right: 20px; }
#mainInfo .contents li dl dd .textbox .text1 { font-family: 'Jalnan'; font-size: 28px; color: #545454; line-height: 1.45; }
#mainInfo .contents li dl dd .textbox .text1 span { font-size: inherit !important; color: #98af62; }
#mainInfo .contents li dl dd .textbox .text2 { font-size: 18px; color: #676767; line-height: 1.45; }
#mainInfo .contents li dl dd .arrowbox img { display: inline-block; width: 45px; }

@media (max-width: 1535px) {
    #mainInfo .contents li dl dt { margin-right: 20px; }
    #mainInfo .contents li dl dt img { width: calc(70px + 3.5vw); }
    #mainInfo .contents li dl dd .textbox { margin-right: 15px; }
    #mainInfo .contents li dl dd .arrowbox img { width: 40px; }
}
@media (max-width: 1279px) {
    #mainInfo .contents li dl dt { margin-right: 15px; }
    #mainInfo .contents li dl dt img { width: calc(60px + 2.5vw); }
    #mainInfo .contents li dl dd .textbox { margin-right: 10px; }
    #mainInfo .contents li dl dd .arrowbox img { width: 30px; }
}
@media (max-width: 1023px) {
    #mainInfo .contents { display: block; text-align: center; }
    #mainInfo .contents li { width: 100%; }
    #mainInfo .contents li:nth-of-type(n + 2) { margin-top: 30px; }
    #mainInfo .contents li a { display: inline-block; }
    #mainInfo .contents li dl { justify-content: center; }
    #mainInfo .contents li dl dt { margin-right: 20px; }
    #mainInfo .contents li dl dt img { width: calc(50px + 2vw); }
    #mainInfo .contents li dl dd .textbox { margin-right: 20px; }
    #mainInfo .contents li dl dd .arrowbox img { width: 27px; }
}
@media (max-width: 424px) {
    #mainInfo .contents li dl { display: block; text-align: center; }
    #mainInfo .contents li dl dt { width: 100%; margin-right: initial; }
    #mainInfo .contents li dl dt img { width: 65px; }
    #mainInfo .contents li dl dd { width: 100%; margin-top: 15px; justify-content: center; }
    #mainInfo .contents li dl dd .textbox { text-align: left; }
}