/* main_visual */
#main_visual { position: relative; overflow: hidden; height: 100vh; background-color: gray; }
#main_visual .swrap { height: 100%; }

#main_visual .mv_wrap { z-index: 10; position: absolute; left: 50%; transform: translateX(-50%); padding: 20px; width: 100%; max-width: 1170px; bottom: 40px; background-color: #fff; border-radius: 20px; }
#main_visual .mv_wrap .mv_slick2 { position: relative; max-width: calc(100% - 80px); margin-left: auto; margin-right: auto; }
#main_visual .mv_wrap .mv_slick2 .con { position: relative; text-align: center; }
#main_visual .mv_wrap .mv_slick2 .con img { display: inline-block; /* width: 75px; */ }

#main_visual .mv_wrap .mv_arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 11px; height: 20px; cursor: pointer; }
#main_visual .mv_wrap .arrow_left { left: 20px; background: url(/image/main/ban_left.png) no-repeat center/cover; }
#main_visual .mv_wrap .arrow_right { right: 20px; background: url(/image/main/ban_right.png) no-repeat center/cover; }

#main_visual .mv_cont .mv_cont_arrow { z-index: 10; position: absolute; top: 50%; transform: translateY(-50%); width: 45px; height: 85px; cursor: pointer; }
#main_visual .mv_cont .arrow_left { left: 40px; background: url(/image/main/mv_left.png) no-repeat center/cover; }
#main_visual .mv_cont .arrow_right { right: 40px; background: url(/image/main/mv_right.png) no-repeat center/cover; }

#main_visual .mv_cont { position: relative; height: 100%; }
#main_visual .mv_cont, #main_visual .mv_slick1, #main_visual .mv_cont .slick-list, #main_visual .mv_cont .slick-track { position: relative; height: 100%; }
#main_visual .mv_cont .cont { position: relative; height: 100%; }
#main_visual .mv_cont .cont .swrap { position: relative; height: 100%; }

#main_visual .mv_cont .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; /* background: url(/image/main/mv_t.jpg) no-repeat center/cover; */ }
#main_visual .mv_cont .bg video { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); min-width: 100vw; height: auto; /* width: 100%; */ /* height: 100%; */ }

#main_visual .mv_cont .cont2 .bg { background: url(/image/main/mv_bg2.jpg) no-repeat center/cover; }
#main_visual .mv_cont .cont3 .bg { background: url(/image/main/mv_bg3.jpg) no-repeat center/cover; }

#main_visual .mv_cont .cont .txtbox { position: relative; top: 50%; transform: translateY(-50%); text-align: left; }
#main_visual .mv_cont .cont .txtbox .txt1 { font-weight: normal; font-size: 35px; color: #fff; line-height: 1.4; text-shadow: 1px 0 5px rgba(0, 0, 0, 0.8); }
#main_visual .mv_cont .cont .txtbox .txt1 span { font-weight: 600; font-size: 65px; color: #fff; line-height: 1.4; letter-spacing: -0.05em; }
#main_visual .mv_cont .cont .txtbox .txt4 { font-weight: 600; font-size: 65px; color: #fff; letter-spacing: -0.025em; line-height: 1.2; }
#main_visual .mv_cont .cont .txtbox .btns { margin-top: 35px; display: flex; flex-wrap: nowrap; }
#main_visual .mv_cont .cont .txtbox .btns a { position: relative; display: inline-block; padding: 16px 70px; text-align: center; font-weight: 600; font-size: 20px; color: #fff; border-radius: 100px; transition: color 0.3s, background-color 0.3s; }
#main_visual .mv_cont .cont .txtbox .btns a.btns_1 { margin-right: 13px; background-color: transparent; border: 1px solid #fff; }
#main_visual .mv_cont .cont .txtbox .btns a.btns_2 { background-color: #e83230; border: 1px solid #e83230; }
#main_visual .mv_cont .cont .txtbox .btns a.btns_1:hover { color: #e83230; background-color: #fff; }
#main_visual .mv_cont .cont .txtbox .btns a.btns_2:hover { color: #e83230; background-color: #fff; border: 1px solid #fff; }


@media (max-width: 1660px) {
    #main_visual .mv_wrap .mv_slick2 .con img { width: 65px; }

    #main_visual .mv_cont .mv_cont_arrow { width: 40px; height: 75.55px; }
    #main_visual .mv_cont .arrow_left { left: 30px; }
    #main_visual .mv_cont .arrow_right { right: 30px; }
}
@media (max-width: 1440px) {
    #main_visual .mv_cont .mv_cont_arrow { top: initial; transform: translateY(0); bottom: 150px; } 
}
@media (max-width: 1230px) {
    #main_visual .mv_wrap { max-width: calc(100% - 60px); padding: 15px 20px; }
    #main_visual .mv_wrap .mv_slick2 .con img { width: 60px; }

    #main_visual .mv_cont .mv_cont_arrow { width: 25px; height: 47.22px; bottom: 145px; }
    #main_visual .mv_cont .arrow_left { left: 30px; }
    #main_visual .mv_cont .arrow_right { right: 30px; }
}
@media (max-width: 1024px) {
    #main_visual .mv_wrap { max-width: calc(100% - 40px); }
}
@media (max-width: 767px) {
    #main_visual .mv_wrap { padding: 10px 20px; }
    #main_visual .mv_wrap .mv_slick2 { max-width: calc(100% - 60px); }
    #main_visual .mv_wrap .mv_slick2 .con img { width: 50px; }

    #main_visual .mv_cont .mv_cont_arrow { width: 20px; height: 37.77px; bottom: 130px; }
    #main_visual .mv_cont .arrow_left { left: 20px; }
    #main_visual .mv_cont .arrow_right { right: 20px; }
}

/* main_busi */
#main_busi { position: relative; overflow: hidden; padding: 140px 0; background: url(/image/main/main_busi_bg.jpg) no-repeat center/cover; }
#main_busi .contents { position: relative; }
#main_busi .contents::after { display: block; content: ''; clear: both; visibility: hidden; }

#main_busi .contents .left { z-index: 5; position: relative; }
#main_busi .contents .left .txtbox { position: relative; }
#main_busi .contents .left .txtbox .txt1 { font-weight: 600; font-size: 45px; color: #242424; line-height: 1.3; }
#main_busi .contents .left .txtbox .txt1 span { color: #e83230; }
#main_busi .contents .left .txtbox .txt2 { margin-top: 7px; font-weight: normal; font-size: 18px; color: #858585; line-height: 1.66; }
#main_busi .contents .left .mb_slick1 { margin-top: 70px;  }

#main_busi .contents .right { z-index: 1; position: absolute; top: 0; right: 0; width: 55%; height: auto; }
#main_busi .contents .right .txtbox { display: none; margin-bottom: 20px; }
#main_busi .contents .right .txtbox .txt1 { font-weight: 600; font-size: 45px; color: #242424; line-height: 1.3; }
#main_busi .contents .right .txtbox .txt1 span { color: #e83230; }
#main_busi .contents .right .txtbox .txt2 { margin-top: 7px; font-weight: normal; font-size: 18px; color: #858585; line-height: 1.66; }
#main_busi .contents .right .mb_slick2  { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#main_busi .contents .right .mb_slick2 .con { position: relative; width: 100%; height: 100%; }
#main_busi .contents .right .mb_slick2 .con img { position: relative; width: 100%; height: 100%; }
@media (max-width: 1660px) {
    #main_busi .contents .left .mb_slick1 { margin-top: calc(35px + 2vw); }
}
@media (max-width: 1024px) {
    #main_busi .contents { display: flex; flex-wrap: wrap; flex-direction: column-reverse; }
    #main_busi .contents .left { width: 100%; } 
    #main_busi .contents .left .txtbox { display: none; }
    #main_busi .contents .left .mb_slick1 { margin-top: 0; }
    #main_busi .contents .right {position: relative; top: initial; left: 0; width: 100%; /* max-width: 500px; */ margin-left: auto; margin-right: auto; }   
    #main_busi .contents .right .mb_slick2 { position: relative; }
    #main_busi .contents .right .txtbox { display: block; }
}

/* main_per */
#main_per { padding: 200px 0; overflow: hidden; background: url(/image/main/main_per_bg.jpg) no-repeat center/cover; background-attachment: fixed; }
#main_per .contents { position: relative; display: flex; flex-wrap: nowrap; justify-content: space-between; }
#main_per .contents .left { min-width: 280px; width: 280px; }
#main_per .contents .left .txtbox { position: relative; }
#main_per .contents .left .txtbox .txt1 { font-weight: 700; font-size: 34px; color: #fff; line-height: 1.2; }
#main_per .contents .left .txtbox .txt1 span { font-weight: 600; color: #e83230; }
#main_per .contents .left .txtbox .txt2 { font-weight: normal; font-size: 18px; color: #838383; line-height: 1.38; }
#main_per .contents .left .per_dots { margin-top: 30px; }
#main_per .contents .left .per_dots .slick-dots { display: flex; flex-wrap: nowrap; }
#main_per .contents .left .per_dots .slick-dots > li { position: relative; margin-left: 5px; width: 20px; height: 20px; border: 1px solid transparent; border-radius: 50%; cursor: pointer; }
#main_per .contents .left .per_dots .slick-dots > li button { display: none; }

#main_per .contents .left .per_dots .slick-dots > li:first-of-type { margin-left: 0; }
#main_per .contents .left .per_dots .slick-dots > li.slick-active { border: 1px solid #fff; }
#main_per .contents .left .per_dots .slick-dots > li::after { display: block; content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 6px; height: 6px; background-color: #fff; border-radius: 50%; }

#main_per .contents .right { position: relative; width: calc(100% - 280px); }
@media (max-width: 1660px) {
    #main_per .contents .left { min-width: 260px; width: 260px; }
}
@media (max-width: 1024px) {
    #main_per .contents .left { min-width: 240px; width: 240px; }
}
@media (max-width: 767px) {
    #main_per .contents { display: block; }
    
    #main_per .contents .left { min-width: initial; width: 100%; }

    #main_per .contents .right { width: 100%; margin-top: 20px; }
}



/* main_notice */
#main_notice { padding: 80px 0; overflow: hidden; background-color: #fff; }
#main_notice .toptit { display: flex; flex-wrap: nowrap; justify-content: space-between; }
#main_notice .toptit .left .txt1 { font-weight: 700; font-size: 18px; color: #e83230; line-height: 1.38; }
#main_notice .toptit .left .txt2 { font-weight: 700; font-size: 40px; color: #000; line-height: 1; }
#main_notice .toptit .right { width: 65px; display: flex; flex-wrap: nowrap; align-items: flex-end; justify-content: space-between; }
#main_notice .toptit .right a { position: relative; display: inline-block; font-size: 15px; color: #d7d7d7; }
#main_notice .toptit .right a:hover { color: #a0a0a0; }
#main_notice .toptit .right a.ver1 { display: inline-block; }
#main_notice .toptit .right a.ver2 { display: none; }
#main_notice .toptit .right.active a.ver1 { display: none; }
#main_notice .toptit .right.active a.ver2 { display: inline-block; }

#main_notice .notice_wrap { margin-top: 30px; }

@media (max-width: 1230px) {
    #main_notice .toptit .right { width: 55px; }
    #main_notice .toptit .right a { font-size: 14px; }
}

/* main_call */
#main_call { padding: 90px 0; overflow: hidden; background: url(/image/main/call_bg2.jpg) no-repeat center/cover; background-attachment: fixed; }
#main_call dl { display: flex; flex-wrap: nowrap; justify-content: space-between; }
#main_call dl dt { position: relative; }
#main_call dl dt .txtbox { position: relative; top: 50%; transform: translateY(-50%); display: flex; flex-wrap: nowrap; align-items: baseline; }
#main_call dl dt .txtbox p { position: relative; }
#main_call dl dt .txtbox p span { display: inline-block; font-weight: 600; font-size: 37px; color: #fff; }
#main_call dl dt .txtbox p img { position: relative; transform: translateY(-25%); display: inline-block; width: 25px; margin-right: 10px; }
#main_call dl dt .txtbox p i { display: block; margin-top: 10px; font-style: normal; font-weight: normal; font-size: 20px; color: #fff; }

#main_call dl dd { position: relative; }
#main_call dl dd .more_btns { display: flex; flex-wrap: nowrap; align-items: center; }
#main_call dl dd .more_btns a { position: relative; display: inline-block; padding: 20px 45px; font-weight: 500; font-size: 18px; color: #fff; border-radius: 100px; transition: color 0.3s, border 0.3s, background-color 0.3s; }
#main_call dl dd .more_btns a:first-of-type { margin-right: 12px; border: 1px solid #fff; background-color: transparent; }
#main_call dl dd .more_btns a:last-of-type { border: 1px solid #e83230; background-color: #e83230; }

#main_call dl dd .more_btns a:hover:first-of-type { color: #e83230; background-color: #fff; border: 1px solid #fff; }
#main_call dl dd .more_btns a:hover:last-of-type { color: #e83230; background-color: #fff; border: 1px solid #fff; }

 @media (max-width: 1660px) {
    #main_call dl dt .txtbox p img { width: 22px; margin-right: 8px; }
}
@media (max-width: 1230px) {
    #main_call dl dt .txtbox p img { transform: translateY(-20%); }
}
@media (max-width: 1024px) {
    #main_call dl dt .txtbox p img { transform: translateY(-10%); }
}
@media (max-width: 767px) {
    #main_call dl { display: block; }
    #main_call dl dt .txtbox { top: initial; transform: translateY(0); }
    #main_call dl dt .txtbox p img { width: 20px; margin-right: 6px; }

    #main_call dl dd { margin-top: calc(20px + 1vw); }
}
@media (max-width :370px) {
    #main_call dl dd .more_btns { display: block; }
    #main_call dl dd .more_btns a { width: 100%; }
    #main_call dl dd .more_btns a:first-of-type { margin-right: 0; margin-bottom: 12px; }
}
