@charset "utf-8";

.main-visual {position: relative; width: 100vw; overflow: hidden; margin-top: 100px;}
.main-visual .items {position: relative;}
.main-visual .item {width: 100%; height: calc(100vh - 100px);}
.main-visual .visual-box {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; z-index: -1;}
.main-visual .item:nth-child(1) .visual-box {background-image: url('../img/main/main-visual01.jpg');}
.main-visual .item:nth-child(2) .visual-box {background-image: url('../img/main/main-visual02.jpg');}
.main-visual .item:nth-child(3) .visual-box {background-image: url('../img/main/main-visual03.jpg');}
.main-visual .item.slick-active .visual-box {transform: scale(1.06); transition: all 4.5s;}
.main-visual .text-box {display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%; padding-bottom: 10px;}
.main-visual .text-box h2 {font-size: 55px; font-weight: 700; line-height: 1.36em; color: #fff; text-align: center; margin-bottom: 25px;}
.main-visual .text-box p {font-size: 20px; font-weight: 600; line-height: 1.6em; color: #fff; text-align: center;}
.main-visual .item.slick-active .text-box h2 {animation:text-focus-in1 .8s cubic-bezier(.55,.085,.68,.53) both;}
.main-visual .item.slick-active .text-box p {animation:text-focus-in1 1s cubic-bezier(.55,.085,.68,.53) both;}
@keyframes text-focus-in1 {0%{filter:blur(12px);opacity:0;transform:translateY(40px);}100%{filter:blur(0);opacity:1;transform:translateY(0);}}
.scroll-down {position: absolute; bottom: 60px; left: 50%; margin-left: -12px; animation: scroll-ani 2s ease-in-out infinite;}
@keyframes scroll-ani {0%{transform:translateY(0);}50%{transform:translateY(20px);}100%{transform:translateY(0);}}
.slick-dots {position: absolute; top: 50%; right: 60px; transform: translateY(-50%);}
.slick-dots li {width: 6px; height: 6px; margin-bottom: 34px;}
.slick-dots li:last-child {margin-bottom: 0;}
.slick-dots button {display: block; width: 6px; height: 6px; background: #fff; font-size: 0; border: none; transition: all 0.5s;}
.slick-dots li.slick-active button {background: #f3791f;}

.section01 {padding: 130px 0 165px;}
.section-title {margin-bottom: 60px;}
.section-title h3 {position: relative; font-size: 52px; font-weight: 700; line-height: 1.4em; color: #000; text-align: center; padding-top: 32px; margin-bottom: 22px;}
.section-title h3:before {position: absolute; top: 0; left: 50%; margin-left: -15px; content: ''; width: 30px; height: 6px; background: #ef5222;}
.section-title p {font-size: 20px; line-height: 1.7em; color: #666; text-align: center;}
.section-title.left {margin-bottom: 60px;}
.section-title.left h3 {text-align: left; margin-bottom: 30px;}
.section-title.left h3:before {top: 0; left: 0; margin-left: 0;}
.section-title.left p {text-align: left;}
.section01 .tab-wrap {display: flex;}
.section01 .tab-menu {max-width: 330px; width: 100%; margin-right: 80px;}
.section01 .tab-menu ul {display: flex; flex-wrap: wrap; justify-content: normal; margin: -5px;}
.section01 .tab-menu ul li {width: 50%; padding: 5px;}
.section01 .tab-menu ul li a {font-size: 20px; font-weight: 600; line-height: 1.3em; color: #666; background: #f5f5f5; text-align: center; padding: 31px 0 33px; border-radius: 5px; transition: all 0.5s;}
.section01 .tab-menu ul li.active a {color: #fff; background: #f05323;}
.section01 .tab-menu ul li .icon {width: 60px; height: 60px; background-repeat: no-repeat; background-position: center center; margin: 0 auto 10px; transition: all 0.5s;}
.section01 .tab-menu ul li:nth-child(1) .icon {background-image: url('../img/main/sec01-icon01.png');}
.section01 .tab-menu ul li:nth-child(2) .icon {background-image: url('../img/main/sec01-icon02.png');}
.section01 .tab-menu ul li:nth-child(3) .icon {background-image: url('../img/main/sec01-icon03.png');}
.section01 .tab-menu ul li:nth-child(4) .icon {background-image: url('../img/main/sec01-icon04.png');}
.section01 .tab-menu ul li:nth-child(5) .icon {background-image: url('../img/main/sec01-icon05.png');}
.section01 .tab-menu ul li:nth-child(1).active .icon {background-image: url('../img/main/sec01-icon01-on.png');}
.section01 .tab-menu ul li:nth-child(2).active .icon {background-image: url('../img/main/sec01-icon02-on.png');}
.section01 .tab-menu ul li:nth-child(3).active .icon {background-image: url('../img/main/sec01-icon03-on.png');}
.section01 .tab-menu ul li:nth-child(4).active .icon {background-image: url('../img/main/sec01-icon04-on.png');}
.section01 .tab-menu ul li:nth-child(5).active .icon {background-image: url('../img/main/sec01-icon05-on.png');}
.section01 .tab-cont-wrap {width: 1%; flex: 1 1 auto;}
.section01 .tab-cont .img-box {border-radius: 5px; overflow: hidden;}
.section01 .tab-cont .text-box {display: flex; justify-content: space-between; min-height: 165px; padding: 42px 0 35px; border-bottom: 1px solid #ddd;}
.section01 .tab-cont .text {display: flex; width: 100%;}
.section01 .tab-cont .text h4 {max-width: 170px; width: 100%; font-size: 34px; font-weight: 700; color: #000; margin-top: 8px;}
.section01 .tab-cont .text p {width: 1%; flex: 1 1 auto; font-size: 18px; line-height: 1.66em; color: #666; margin-right: 30px;}
.section01 .tab-cont .btn-more {display: inline-block; max-width: 16px; width: 100%; height: 15px; background-image: url('../img/main/sec01-btn-more.png'); background-repeat: no-repeat; background-position: center center; margin-top: 35px; transition: all 0.5s;}
.section01 .tab-cont .btn-more:hover {background-image: url('../img/main/sec01-btn-more-on.png');}

.section02 {position: relative; padding: 165px 0; background: #f5f5f5; overflow: hidden;}
.section02:before {position: absolute; bottom: -17px; right: 0; content: ''; width: 1317px; height: 222px; background: url('../img/main/sec02-bg.png') no-repeat center bottom;}
.section02 .wrap {display: flex; justify-content: space-between;}
.section02 .section-title {width: 1%; flex: 1 1 auto; padding-right: 50px; padding-top: 10px;}
.section02 .section-title a {position: relative; display: inline-block; width: 190px; height: 60px; line-height: 60px; font-family: 'montserrat'; font-size: 15px; font-weight: 500; color: #fff; background: #ef5222; border-radius: 5px; padding: 0 25px; margin-top: 62px;}
.section02 .section-title a:after {position: absolute; top: 50%; right: 25px; margin-top: -6px; content: ''; width: 14px; height: 13px; background: url('../img/main/btn-more.png') no-repeat; background-position: center center; transition: all 0.4s;}
.section02 .section-title a:hover:after {right: 20px;}
.section02 .img-box {max-width: 930px; width: 100%;}
.section02 .img-box img {border-radius: 5px; overflow: hidden;}

.section03 {padding: 140px 0 150px;}
.section03 ul {display: flex; flex-wrap: wrap; justify-content: center; margin: -13px;}
.section03 ul li {padding: 13px;}
.section03 ul li a {position: relative; width: 335px; height: 450px; border-radius: 5px; overflow: hidden;}
.section03 ul li a:after {opacity: 0; position: absolute; bottom: -100%; left: 0; content: ''; width: 335px; height: 450px; background: url('../img/main/sec03-bg.png') no-repeat center center; transition: all 0.6s; z-index: 2;}
.section03 ul li a:hover:after {opacity: 1; bottom: 0;}
.section03 ul li .img-box {width: 100%; height: 100%; background-repeat: no-repeat; background-position: center center;}
.section03 ul li:nth-child(1) .img-box {background: url('../img/main/sec03-img01.jpg')}
.section03 ul li:nth-child(2) .img-box {background: url('../img/main/sec03-img02.jpg')}
.section03 ul li:nth-child(3) .img-box {background: url('../img/main/sec03-img03.jpg')}
.section03 ul li:nth-child(4) .img-box {background: url('../img/main/sec03-img04.jpg')}
.section03 ul li .text-box {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 3;}
.section03 ul li .text-box h4 {font-size: 30px; font-weight: 700; line-height: 1.4em; color: #fff; text-align: center; margin-bottom: 20px; padding-top: 345px; transition: all 0.6s;}
.section03 ul li .text-box p {opacity: 0; width: 95px; font-family: 'montserrat'; font-size: 15px; font-weight: 500; line-height: 32px; text-align: center; color: #fff; background: rgba(255,255,255,0.2); border-radius: 5px; margin: 0 auto; transition: all 0.6s;}
.section03 ul li a:hover .text-box h4 {padding-top: 288px;}
.section03 ul li a:hover .text-box p {opacity: 1;}

.section04 .wrap {display: flex;}
.section04 .wrap > div {width: 50%; height: 400px; overflow: hidden;}
.section04 a {position: relative; height: 100%;}
.section04 .img-box {position: absolute; top: 0; left: 0; width: 100%; height: 400px; background-repeat: no-repeat; background-position: center center; background-size: cover; z-index: -1; transition: all 0.8s;}
.section04 .cont01 .img-box {background-image: url('../img/main/sec04-bg01.jpg');}
.section04 .cont02 .img-box {background-image: url('../img/main/sec04-bg02.jpg');}
.section04 a:hover .img-box {transform: scale(1.05);}
.section04 .text-box {display: flex; justify-content: center; align-items: center; height: 100%; padding: 0 215px;}
.section04 .section-title {margin-bottom: 0;}
.section04 .section-title h3 {font-size: 45px; color: #fff;}
.section04 .section-title p {color: #fff;}
.section04 .cont02 .section-title h3:before {background: #fff;}