.main_visual#main_visual_mo{
	display:none;
}
.main_visual {
	position:relative;
}
.main_visual .swiper-slide{
	height:97rem;
	position:relative;
	border-radius:0 0 20rem 0;
	overflow:hidden;
}
.main_visual .swiper-slide > .txt_box{
	position:absolute;
	left:50%;
	width:100%;
	max-width:140rem;
	top:50%;
	transform:translate(-50%, -60%);
	text-align:left;
	color:#fff;
	padding:9rem 3rem 0;
}
.main_visual .swiper-slide > .txt_box h3{
	font-size:8rem;
	font-weight:700;
}
.main_visual .swiper-slide > .txt_box h1{
	font-size:2.6rem;
	font-weight:500;
	margin-top:3rem;
}
.main_visual .controller {
	position:absolute;
	width:100%;
	max-width:140rem;
	left:50%;
	top:70%;
	transform:translateX(-50%);
	z-index:100;
	padding:0 3rem;
	display:flex;
	flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	align-items:center;
}
.main_visual .controller .swiper-pagination-bullet {
	border-radius:0;
	width:14rem;
	height:3px;
	background:rgba(255,255,255,0.2);
	margin-right:0.5rem;
	opacity:1;
}
.main_visual .controller .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background:rgba(255,255,255,1);
	opacity:1;
}
.main_visual .controller .play_stop {
	position:relative;
	top:4px;
	font-size:2rem;
	margin-left:1rem;
}
.main_visual .controller .play_stop > a {
	color:#fff;
}
.main_visual .controller .play_stop .mv-play {
	display:none;
}
.main_visual .scroll-box {
	color:#fff;
	position:absolute;
	left:50%;
	bottom:0;
	transform:translateX(-50%);
	z-index:10;
	font-weight:500;
}
.main_visual .scroll-box .line {
	position:relative;
	left:50%;
	transform:translateX(-50%);
	width:1px;
	height:5rem;
	background:rgba(255,255,255,0.5);
	margin-top:0.5rem;
}
.main_visual .scroll-box .line:before {
	content:"";
	position:absolute;
	width:100%;
	height:0;
	background:#fff;
	z-index:10;
	animation:scroll-effect 1s ease;
	animation-iteration-count: infinite;
}
@keyframes scroll-effect {
	0% {height:0;}
	100% {height:100%;}
}

@media (max-width: 991.98px) {
	.main_visual .swiper-slide{
		height:48rem;
		border-radius:0 0 10rem 0;
	}
	.main_visual .swiper-slide > .txt_box{
		padding:5rem 2rem 0;
	}
	.main_visual .swiper-slide > .txt_box h3{
		font-size:4rem;
	}
	.main_visual .swiper-slide > .txt_box h1{
		font-size:1.6rem;
		margin-top:1rem;
	}
	.main_visual .controller {
		padding:0 2rem;
	}
	.main_visual .controller .swiper-pagination-bullet {
		width:6rem;
	}
	.main_visual .scroll-box .line {
		height:3rem;
	}
}

#main_container section {
	position:relative;
	box-sizing:border-box;
	overflow:hidden;
}
/*
#main_container section > .container {
	padding-right:4rem;
	padding-left:4rem;
}*/
#main_container .tit-info {
	font-size:2.4rem;
	font-weight:800;
	color:var(--sub);
	margin-bottom:1.5rem;
}
#main_container .tit {
	font-size:5rem;
	font-weight:700;
	line-height:1.3;
	color:#000;
}
#main_container .tit > span.bg {
	display:inline-block;
	position:relative;
}
#main_container .tit > span.bg:before {
	content:"";
	position:absolute;
	width:100%;
	height:36%;
	left:0;
	bottom:1rem;
	background:#ee7573;
	z-index:-1;
}
@media (max-width: 991.98px) {
	#main_container .tit-info {
		font-size:1.6rem;
		margin-bottom:1rem;
	}
	#main_container .tit {
		font-size:2.4rem;
	}
	#main_container .tit > span.bg:before {
		bottom:0.3rem;
	}
}

/*sec01*/
#main_container .sec01 {
	padding:14rem 0;
}
#main_container .sec01 .inner {
	display:flex;
	flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
}
#main_container .sec01 .fl {
	max-width:57%;
	flex:0 0 57%;
}
#main_container .sec01 .fr {
	max-width:43%;
	flex:0 0 43%;
}
#main_container .sec01 .fr .img-box {
	position:relative;
	box-sizing:border-box;
	padding:3.5rem;
	border:1px solid var(--sub);
	border-radius:50%;
}
#main_container .sec01 .fr .img-box .rotate {
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	transform:rotate(0deg);
	animation:rotate 16s linear;
	animation-iteration-count: infinite;
}
@keyframes rotate {
	form {transform:rotate(0deg);}
	to {transform:rotate(360deg);}
}
#main_container .sec01 .fr .img-box .rotate:before,
#main_container .sec01 .fr .img-box .rotate:after{
	content:"";
	position:absolute;
	width:1.6rem;
	height:1.6rem;
	border-radius:50%;
	background:var(--main);
	left:50%;
	transform:translateX(-50%);	
}
#main_container .sec01 .fr .img-box .rotate:before {
	top:-0.8rem;
}
#main_container .sec01 .fr .img-box .rotate:after {
	bottom:-0.8rem;
}
#main_container .sec01 .btn-detail {
	margin-top:10rem;
}

@media (max-width: 1280px) {
	#main_container .sec01 .tit > br {
		display:none;
	}
}
@media (max-width: 991.98px) {
	#main_container .sec01 {
		padding:6rem 0;
	}
	#main_container .sec01 .fl,
	#main_container .sec01 .fr {
		max-width:100%;
		flex:0 0 100%;
	}
	#main_container .sec01 .fr {
		margin-top:4rem;
		padding:0 4rem;
	}
	#main_container .sec01 .fr .img-box {
		padding:2rem;
	}
	#main_container .sec01 .btn-detail {
		margin-top:2rem;
	}
} 


#main_container .sec02 {
	position:relative;
	height:auto;
	padding:15rem 0;
}
#main_container .sec02:before {
	content:"";
	position:absolute;
	left:4rem;
	top:0;
	width:50%;
	height:74%;
	background:#f9f9f9;
	border-radius:20rem 0 0 0;
	z-index:-1;
}
#main_container .sec02:after {
	content:"";
	position:absolute;
	right:0;
	top:0;
	width:50%;
	height:74%;
	background:#f9f9f9;
	z-index:-1;
}
#main_container .sec02 .row {
	margin-left:-0.8rem;
	margin-right:-0.8rem;
	margin-top:5rem;
}
#main_container .sec02 .row > div[class^='col'] {
	padding-left:0.8rem;
	padding-right:0.8rem;
	max-width:18%;
	flex:0 0 18%;
	transition:all 0.5s ease;
}
#main_container .sec02 .row > div[class^='col'].active {
	max-width:46%;
	flex:0 0 46%;
}
#main_container .sec02 .row > div[class^='col'] > a {
	position:relative;
	display:block;
	height:45rem;
	border-radius:2rem;
	overflow:hidden;
	color:#fff;
}
#main_container .sec02 .row > div[class^='col'] > a > .txt {
	position:absolute;
	left:3rem;
	bottom:3rem;
	font-size:2.4rem;
	font-weight:600;
}
#main_container .sec02 .row > div[class^='col'] > a > .txt .circle {
	display:inline-block;
	width:3rem;
	height:3rem;
	border:1px solid #fff;
	box-sizing:border-box;
	text-align:center;
	line-height:3rem;
	border-radius:50%;
	margin-left:1rem;
	position:relative;
	top:1px;
	display:none;
}
#main_container .sec02 .row > div[class^='col'].active > a > .txt .circle {
	display:inline-block;
}
#main_container .sec02 .row > div[class^='col']:nth-of-type(1) > a {
	background:url("../_img/main/main_sec02_img01.png") no-repeat left top / cover;
}
#main_container .sec02 .row > div[class^='col']:nth-of-type(2) > a {
	background:url("../_img/main/main_sec02_img02.png") no-repeat left top / cover;
}
#main_container .sec02 .row > div[class^='col']:nth-of-type(3) > a {
	background:url("../_img/main/main_sec02_img03.png") no-repeat left top / cover;
}
#main_container .sec02 .row > div[class^='col']:nth-of-type(4) > a {
	background:url("../_img/main/main_sec02_img04.png") no-repeat left top / cover;
}
@media (max-width: 1520px) {
	#main_container .sec02:before {
		left:0;
	}
}
@media (max-width: 1440px) {
	#main_container .sec02 .row > div[class^='col'] {
		max-width:22%;
		flex:0 0 22%;
	}
	#main_container .sec02 .row > div[class^='col'].active {
		max-width:34%;
		flex:0 0 34%;
	}
	#main_container .sec02 .row > div[class^='col'] > a > .txt {
		font-size:1.8rem;
	}
}
@media (max-width: 991.98px) {
	#main_container .sec02 {
		padding:8rem 0 6rem;
	}
	#main_container .sec02:before {
		border-radius:10rem 0 0 0;
	}
	#main_container .sec02 .row {
		margin-top:2rem;
	}
	#main_container .sec02 .row > div[class^='col'] {
		max-width:100%;
		flex:0 0 100%;
		margin-bottom:1rem;
	}
	#main_container .sec02 .row > div[class^='col'].active {
		max-width:100%;
		flex:0 0 100%;
	}
	#main_container .sec02 .row > div[class^='col'] > a {
		height:8rem;
		box-sizing:border-box;
		padding:2rem;
		display:flex;
		align-items:center;
		border-radius:1.5rem;
		transition:all 0.5s ease;
	}
	#main_container .sec02 .row > div[class^='col'] > a > .txt {
		position:relative;
		left:0;
		bottom:0;
		font-size:1.8rem;
	}
	#main_container .sec02 .row > div[class^='col'].active > a {
		height:20rem;
		align-items:flex-end;
	}
}


#main_container .sec03 .row > div[class^='col-'] > .inner {
	position:relative;
	box-sizing:border-box;
	padding-bottom:60%;
	text-align:center;
}
#main_container .sec03 .row > div[class^='col-']:nth-of-type(1) > .inner {
	background:url("../_img/main/main_sec03_img01.png") no-repeat center center / cover;
}
#main_container .sec03 .row > div[class^='col-']:nth-of-type(2) > .inner {
	background:url("../_img/main/main_sec03_img02.png") no-repeat center center / cover;
}
#main_container .sec03 .txt-box {
	position:absolute;
	width:100%;
	top:50%;
	transform:translateY(-50%);
}
#main_container .sec03 .txt-box .tit-info {
	font-size:2rem;
}
#main_container .sec03 .txt-box h2.tit {
	color:#fff;
	font-size:4rem;
}
#main_container .sec03 .btn-view {
	display:inline-block;
	margin-top:5rem;
	box-sizing:border-box;
	color:#fff;
	font-size:1.8rem;
	font-weight:600;
	padding:1.5rem 8rem;
	border-radius:5rem;
	border:1px solid #fff;
}
#main_container .sec03 .btn-view:hover {
	background:var(--main);
	border:1px solid var(--main);
}
@media (max-width: 991.98px) {
	#main_container .sec03 .row > div[class^='col-'] > .inner {
		padding-bottom:32rem;
	}
	#main_container .sec03 .txt-box .tit-info {
		font-size:1.6rem;
	}
	#main_container .sec03 .txt-box h2.tit {
		font-size:2.2rem;
	}
	#main_container .sec03 .btn-view {
		margin-top:2rem;
		font-size:1.4rem;
		font-weight:500;
		padding:1rem 4rem;
		background:var(--main);
		border:1px solid var(--main);
	}
	#main_container .sec03 .btn-view:hover {
		background:var(--main);
		border:1px solid var(--main);
	}
}
@media (max-width: 575.98px) {
	#main_container .sec03 .row > div[class^='col-'] > .inner {
		padding-bottom:24rem;
	}
}

#main_container .sec04 {
	padding:15rem 0;
	position:relative;
	margin-bottom:10rem;
}
#main_container .sec04:before {
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:50%;
	height:50%;
	background:var(--main);
	z-index:-1;
}
#main_container .sec04:after {
	content:"";
	position:absolute;
	right:4rem;
	bottom:0;
	width:50%;
	height:50%;
	background:var(--main);
	border-radius:0 0 20rem 0;
	z-index:-1;
}
#main_container .sec04 .top {
	position:relative;
}
#main_container .sec04 .top .btn-detail {
	position:absolute;
	right:0;
	bottom:0;
}
#main_container .sec04 .row {
	margin-top:6rem;
}
#main_container .sec04 .row > div[class^='col'] > a {
	display:block;
}
#main_container .sec04 .row > div[class^='col'] > a > .img {
	position:relative;
	box-sizing:border-box;
	width:100%;
	height:auto;
	overflow:hidden;
	padding-bottom:74%;
}
#main_container .sec04 .row > div[class^='col'] > a > p {
	font-size:2.2rem;
	font-weight:500;
	color:#fff;
	margin-top:2rem;
	white-space:normal;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
}
#main_container .sec04 .no-data {
	text-align:center;
	color:#fff;
	font-size:1.8rem;
	max-width:100%;
	flex:0 0 100%;
	height:20rem;
	display:flex;
	align-items:center;
	justify-content:center;
}
@media (max-width: 1520px) {
	#main_container .sec04:after {
		right:0;
	}
}
@media (max-width: 991.98px) {
	#main_container .sec04 {
		padding:6rem 0;
		margin-bottom:4rem;
	}
	#main_container .sec04:before,
	#main_container .sec04:after {
		height:72%;
	}
	#main_container .sec04:after {
		border-radius:0 0 10rem 0;
	}
	#main_container .sec04 .row {
		margin-top:2rem;
	}
	#main_container .sec04 .row > div[class^='col'] {
		margin-bottom:1rem;
	}
	#main_container .sec04 .row > div[class^='col'] > a {
		display:flex;
		flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		align-items:center;
	}
	#main_container .sec04 .row > div[class^='col'] > a > .img {
		max-width:40%;
		flex:0 0 40%;
		padding-bottom:28%;
	}
	#main_container .sec04 .row > div[class^='col'] > a > p {
		max-width:60%;
		flex:0 0 60%;
		margin-top:0;
		padding-left:2rem;
		font-size:1.6rem;
	}
	#main_container .sec04 .no-data {
		height:36rem;
	}
}
@media (max-width: 575.98px) {
	#main_container .sec04:before,
	#main_container .sec04:after {
		height:100%;
	}
	#main_container .sec04 .top .tit-info {
		color:#fff;
	}
	#main_container .sec04 .top .tit {
		color:#fff;
	}
	#main_container .sec04 .top .btn-detail {
		bottom:auto;
		top:0;
		color:#fff;
	}
	#main_container .sec04 .top .btn-detail span {
		border:1px solid #fff;
		color:#fff;
	}
	#main_container .sec04 .no-data {
		height:16rem;
	}
}