@charset "utf-8";
.inner{position:relative;}
.main .inner{width:1600px;}
.slick-dotted.slick-slider{margin-bottom:0;}
div.main-visual .box {display:block; position:relative; height:100vh; background-size:cover;}
div.main-visual .box:after {display:block; position:absolute; content:""; width:100%; height:100%; background-color:rgba(0,0,0,0.4);}
div.main-visual .box div.txt-box {left:50%; transform:translateX(-50%); width:80%; position:absolute; bottom:0; padding-bottom:130px; margin-bottom:130px; z-index:1; border-bottom:1px solid #fff;}
div.main-visual .box div.txt-box > dl {color:#fff;}
div.main-visual .box div.txt-box > dl > dt{font-size:84px; font-weight:800; line-height:1.2;}
div.main-visual .box div.txt-box > dl > dd{font-size:20px; padding-top:42px;}
div.main-visual .box01{background-image:url("../img/main/main-visual01.jpg")}
div.main-visual .box02{background-image:url("../img/main/main-visual02.jpg")}
div.main-visual .slick-dots {bottom: 40px}

div.main-title > p.title{font-weight:800; font-size:56px;}
div.main-title > p.sub-tt{padding-top:12px; opacity:0.6; font-size:18px;}
.main-a{font-size:30px; font-weight:800;}
.main-a i {transition:ease all 0.5s;}
.main-a:hover i {padding-left:8px;}

div.section02 {height:calc(100vh - 10px); background-color:#000; color:#fff;}
div.section02 .main-a{color:#fff;}
div.section02 div.left{width:50%; display: flex; flex-direction: column; justify-content: space-evenly; height:calc(100vh - 10px);}
div.section02 div.tab-title {padding-bottom: 30px;}
div.section02 div.tab-title ul > li{font-size:34px;}
div.section02 div.tab-title ul > li.on {color: #fff; padding-bottom: 0;border-bottom: none;}
div.section02 div.tab-content > div{}
div.section02 div.tab-content > div > p{font-size:20px;}
div.section02 div.tab-content > div > p:nth-child(1){padding-bottom:8px;}
div.section02 div.tab-content > div:after{transition:ease all 0.3s; position:absolute; top:0; right: -50%;width:100%; height:calc(100vh - 10px); background:url("../img/main/bg-main-sect02-01.jpg")center center / cover; content:""; display:block; opacity:1;}
div.section02 div.tab-content > div:nth-child(2):after{background-image:url("../img/main/bg-main-sect02-02.jpg")}
div.section02 div.tab-content > div:hover:after{opacity:0.8;}
div.section03{padding:140px 0 180px;}
div.section03 div.main-title{text-align:center;}
div.section03 div.flex{padding-top:42px;}
div.section03 div.flex > div{padding:70px 100px 90px; color:#fff; display:flex; flex-direction:column;     justify-content: space-between; width:50%; transition:ease all 0.5s; background-color:#000; background:url("../img/main/bg-main-sect03-01.png") #000 center / cover;}
div.section03 div.flex > div:hover{background-color:#ff0000;}
div.section03 div.flex > div > p {font-weight:700; padding-bottom:60px; font-size:34px; line-height:1.4;}
div.section03 div.flex > div > ul > li a{display:block; color:#fff; font-size:22px;}
div.section03 div.flex > div > ul > li:not(:last-child) > a {padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid #fff;}
div.section03 div.flex > div:nth-child(2){background-image:url("../img/main/bg-main-sect03-02.png")}

div.section04{padding:200px 0 200px;}
div.section04 div.main-title{width:max-width; flex: 0 0 auto;}
div.section04 p.txt-gray { color: #f5f5f5;   position: absolute;top: -210px; right: -27%;font-size: 240px;font-weight: 900;width: 100%; z-index: -1;}
div.section04 div.cer-slider{margin-left:140px; width:100%;}
div.section04 div.cer-slider div.box {margin-left:42px;}
div.section04 div.cer-slider div.box a {display:block;}
div.section04 div.cer-slider div.box a div.img-box{border:1px solid #f5f5f5; position:relative; padding-top:145%; overflow:hidden;}
div.section04 div.cer-slider div.box a div.img-box img{position:absolute; top:0; left:0; width:100%; transition:ease all 0.3s;}
div.section04 div.cer-slider div.box a:hover div.img-box img {transform:scale(1.1)}
div.section04 div.cer-slider div.box img{width:100%; object-fit:cover;}
div.section04 div.cer-slider div.box:nth-child(2n){margin-top:40px;}
div.section04 div.cer-slider div.box a p.txt{font-size:24px; font-weight:800;}

.slick-prev, .slick-next{border:1px solid #ddd; border-radius:0;}
.slick-prev:before, .slick-next:before{color:#666;}
.slick-prev {left: -300px;}
.slick-next {left: -246px;}

@media screen and (max-width:1600px) {
	.main .inner{width:1400px;}
}

@media screen and (max-width:1400px) {
	.main .inner{width:1200px;}
}

@media screen and (max-width:1200px) {
	div.main-title > p.title {font-size: 26px;}
	div.main-title > p.sub-tt {padding-top: 10px;font-size: 14px;}

	.main .inner{width:100%; padding:0 4%;}
	.main-a {font-size: 16px;}

	div.main-visual .box div.txt-box > dl > dt { font-size: 36px;line-height: 1.2;}
	div.main-visual .box div.txt-box > dl > dd { font-size: 16px; padding-top: 42px;}

	div.section03 {padding: 60px 0 60px;}
	div.section03 div.flex {flex-direction: column;}
	div.section03 div.flex > div {width:100%;padding: 50px 40px;}
	div.section03 div.flex > div:last-child{margin-top:20px;}
	div.section03 div.flex > div > p {padding-bottom: 40px;  font-size: 20px;}
	div.section03 div.flex > div > ul > li:not(:last-child) > a {padding-bottom: 16px; margin-bottom: 16px;}
	div.section03 div.flex > div > ul > li a {font-size: 14px;}

	div.section02{height:auto; padding:52px 0;}
	div.section02 div.main-title {padding-bottom:40px;}
	div.section02 div.left {width: 100%; display: block;height:auto;}
	div.section02 div.tab-content > div > p { font-size: 14px;}
	div.section02 div.tab-wrap{padding-bottom:20px;}
	div.section02 div.tab-wrap div.tab-content > div.on { display: flex; flex-direction: column-reverse;}
	div.section02 div.tab-content > div:after {margin-bottom:20px; position: static;height:160px; display: block;}
	div.section02 div.tab-title { padding-bottom: 10px;}
	div.section02 div.tab-title ul > li {font-size: 16px; margin-right:0;}

	div.section04 div.main-title {text-align:center;}
	div.section04 {padding: 50px 0 100px;}
	div.section04 div.flex {flex-direction: column;}
	div.section04 div.cer-slider {margin-top:40px; margin-bottom:40px; margin-left: -10px; width: 100%;}
	div.section04 div.cer-slider div.box {margin-left: 10px;}
	div.section04 div.cer-slider div.box a p.txt {font-size: 14px;}
	div.section04 p.txt-gray {top: auto;bottom: 0;right: -15%;font-size: 100px;}
}