/* main */
.tv-main .visual-swiper {
	height:100vh;
	max-height:640px;
}
.tv-main .visual-swiper .swiper {
	height:100%;
}
.tv-main .visual-swiper .fixed-visual {
	background:url('../img/main/tv_visual_img.jpg') no-repeat bottom left 51%;
	background-size:cover;
}
.tv-main .visual-swiper .swiper-slide:before {
	position:absolute;
	top:50%;
	left:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 100%);
	content:"";m
}
.tv-main .visual-swiper .fixed-visual:before {
	display: none;
	position:absolute;
	top:0px;
	left:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	background: rgba(0, 0, 0, 0.35);
	content:"";
}
.tv-main .visual-swiper .fixed-visual .text-box {
	position:absolute;
	top:50%;
	left:50%;
	right:0px;
	z-index:12;
	width:100%;
	max-width: 1000px;
	transform:translateY(-50%) translateX(-50%);
	text-align:center;
}
.tv-main .visual-swiper .fixed-visual .text-box h3 {
	width: 77px;
	height: 14px;
	margin: 0 auto;
	background:url('../img/main/tv_main_genie_m_logo.png') no-repeat center center;
	background-size: auto 14px;
	font-size: 0px;
	text-align:center;
}
.tv-main .visual-swiper .fixed-visual .text-box h6 {
	width: 179px;
	height: 55px;
	margin:10px auto 0px;
	background:url('../img/main/tv_main_m_logo.png') no-repeat center center;
	background-size: auto 55px;
	font-size: 0px;
	text-align:center;
}
.tv-main .visual-swiper .fixed-visual .text-box .btn-box {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin:30px auto 0px;
}
.tv-main .visual-swiper .fixed-visual .text-box a {
	display:flex;
	justify-content: center;
	align-items: center;
	gap: 0px 8px;
	width:160px;
	height:48px;
	background:#fff;
	border-radius:24px;
	color:#000;
	font-size:14px;
	font-weight:bold;
	line-height:48px;
	text-align:center;
	letter-spacing: -0.28px;
}
.tv-main .visual-swiper .fixed-visual .text-box a:before {
	width: 22px;
	height: 28px;
	background:url('../img/main/icon_adflat_loca.svg') no-repeat center center;
	content: "";
}
.tv-main .visual-swiper .fixed-visual .text-box a.direct {
	background: #017EFF;
	color: #fff;
}
.tv-main .visual-swiper .fixed-visual .text-box a.direct:before {
	display: none;
}
.tv-main .visual-swiper .swiper-slide > img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	object-position: center center;
}
.tv-main .visual-swiper .swiper-slide > .pc_img {
	display: none;
}
.tv-main .visual-swiper .pagination {
	position: absolute;
	bottom: 20px;
	z-index: 1;
	display: flex;
	justify-content: center;
	gap: 0px 8px;
}
.tv-main .visual-swiper .pagination .bullet {
	position:relative;
	padding: 8px 11px;
	background: transparent;
	border: 1px solid #fff;
	border-radius: 4px;
	color: #fff;
	font-size:12px;
	font-weight: 700;
	line-height: 17px;
	letter-spacing: -0.24px;
	text-align:center;
	opacity: 0.5;
	transition: opacity 0.3s ease-in-out;
}
.tv-main .visual-swiper .pagination .bullet span {
	position:relative;
	z-index:2;
}
.tv-main .visual-swiper .pagination .bullet.on {
	opacity: 1;
}
.tv-main .visual-swiper .pagination .bullet.on:before {
	position: absolute;
	left:0px;
	top:0px;
	bottom: 0px;
	z-index:1;
	background: rgba(255, 255, 255, 0.20);
	animation: visual_progress 3s both linear;
	content:"";
}

.tv-main .visual-swiper:hover .pagination .bullet.on:before {
	animation-play-state: paused;
}

.tv-main .section {
	text-align:center;
}
.tv-main .section .inner-wrap {
	max-width:1200px;
	height:100%;
	margin:0 auto;
}

.tv-main .section.intro {
	padding: 80px 16px;
}
.tv-main .section.intro .inner-wrap {
	max-width: 1000px;
}
.tv-main .section.intro .text-box {
}
.tv-main .section.intro .text-box h1 {
	display: block;
	width: 134px;
	height: 24px;
	margin: 0 auto;
	background: url('../img/main/tv_main_intro_logo.svg') no-repeat center center;
	background-size: auto 24px;
	font-size: 0px;
}
.tv-main .section.intro .text-box p {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0px 8px;
	margin-top: 16px;
	color: #222;
	font-size: 14px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.28px;
}
.tv-main .section.intro .text-box p span {
	font:inherit;
	color:#a8a8a8;
}
.tv-main .section.intro .sub-text-box {
	display: inline-flex;
	flex-direction: column;
	margin-top: 40px;
}
.tv-main .section.intro .sub-text-box h3 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0px 8px;
	color: #000;
	font-size: 20px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.6px;
}
.tv-main .section.intro .sub-text-box h3 strong {
	padding: 4px 16px;
	background: #6941FF;
	border-radius: 15px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
	letter-spacing: -0.48px;
}
.tv-main .section.intro .sub-text-box p {
	align-self: stretch;
	height: 28px;
	margin-top: 16px;
	padding: 5px 0px;
	background: #F8F8F8;
	border: 1px solid #DEDEDE;
	border-radius: 14px;
	color: #2b2b2b;
	font-size: 12px;
	font-weight: 300;
	line-height: 16px;
	letter-spacing: -0.24px;
	text-align: center;
}
.tv-main .section.intro .item-box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 20px 30px;
	margin-top: 30px;
}
.tv-main .section.intro .item-box dl {
}
.tv-main .section.intro .item-box dl dt {
	margin: 0 auto;
	font-size: 0px;
}
.tv-main .section.intro .item-box dl:nth-child(1) dt {
	width: 33.33vw;
	height: 33.33vw;
	max-width: 196px;
	max-height: 196px;
	background: url('../img/main/tv_main_intro_img01.png') no-repeat center center;
	background-size: cover;
}
.tv-main .section.intro .item-box dl:nth-child(3) dt {
	width: 33.33vw;
	height: 33.33vw;
	max-width: 196px;
	max-height: 196px;
	background: url('../img/main/tv_main_intro_img02.png') no-repeat center center;
	background-size: cover;
}
.tv-main .section.intro .item-box dl:nth-child(5) dt img {
	width: 100%;
	max-width: 359px;
	height: auto;
}
.tv-main .section.intro .item-box dl dd {
	margin-top: 10px;
	color: #000;
	font-size: 12px;
	font-weight: 300;
	line-height: 17px;
	letter-spacing: -0.36px;
}
.tv-main .section.intro .item-box .left,
.tv-main .section.intro .item-box .right {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 124px;
	height: 40px;
}
.tv-main .section.intro .item-box .left:before {
	width: 40px;
	height: 124px;
	background: url('../img/main/tv_main_intro_left.svg') no-repeat center center;
	transform: rotate(90deg);
	content: "";
}
.tv-main .section.intro .item-box .right:before {
	width: 40px;
	height: 124px;
	background: url('../img/main/tv_main_intro_right.svg') no-repeat center center;
	transform: rotate(90deg);
	content: "";
}

.tv-main .section.about {
	padding: 80px 16px;
	background: #fafafa;
}
.tv-main .section.about .inner-wrap {
	max-width: 1000px;
}
.tv-main .section.about .text-box {
}
.tv-main .section.about .text-box h1 {
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.6px;
}
.tv-main .section.about .text-box h1 strong {
	color: #6941FF;
	font-weight: 400;
}
.tv-main .section.about .text-box p {
	margin-top: 10px;
	color: #000;
	font-size: 12px;
	font-weight: 300;
	line-height: 150%;
	letter-spacing: -0.24px;
}
.tv-main .section.about .text-box p strong {
	color: #6941FF;
	font-weight: 700;
}
.tv-main .section.about .text-box p br {
	display: none;
}
.tv-main .section.about .img {
	margin-top: 60px;
}
.tv-main .section.about .img img {
	width: 100%;
	height: auto;
}

.tv-main .section.merit {
	padding: 80px 16px;
	background: #242424;
}
.tv-main .section.merit:before {
	position: absolute;
	top: 180px;
	left: 50%;
	z-index: 1;
	width: 134px;
	height: 134px;
	margin-left: -67px;
	background: #6941FF;
	border-radius: 50%;
	filter: blur(100px);
	content: "";
}
.tv-main .section.merit .inner-wrap {
	z-index: 2;
	max-width: 1000px;
}
.tv-main .section.merit .text-box {
}
.tv-main .section.merit .text-box h1 {
	color: #fff;
	font-size: 30px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.6px;
}
.tv-main .section.merit .text-box h1 strong {
	color: #6941FF;
	font-weight: 400;
}
.tv-main .section.merit .img {
	margin-top: 40px;
}
.tv-main .section.merit .img img {
	width: 100%;
	height: auto;
}
.tv-main .section.merit .item-box {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 40px;
}
.tv-main .section.merit .item-box dl {
	padding: 16px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 4px 4px 20px 0 rgba(0, 0, 0, 0.20);
}
.tv-main .section.merit .item-box dl dt {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0px 10px;
}
.tv-main .section.merit .item-box dl dt span {
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	background: #6941FF;
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: -0.24px;
	text-align: center;
}
.tv-main .section.merit .item-box dl dt p {
	color: #000;
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	letter-spacing: -0.28px;
	text-align: left;
}
.tv-main .section.merit .item-box dl dt p br {
	display: none;
}
.tv-main .section.merit .item-box dl dd {
	margin-top: 8px;
	color: #333;
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	letter-spacing: -0.24px;
	text-align: left;
}
.tv-main .section.merit .item-box dl dd span {
	color: #999;
}

.tv-main .section.home {
	padding: 80px 16px;
}
.tv-main .section.home .inner-wrap {
	max-width: 1000px;
}
.tv-main .section.home .text-box {
}
.tv-main .section.home .text-box h1 {
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.6px;
}
.tv-main .section.home .text-box h1 strong {
	color: #6941FF;
	font-weight: 400;
}
.tv-main .section.home .item-box {
	margin-top: 20px;
}
.tv-main .section.home .item-box .img {
}
.tv-main .section.home .item-box .img img {
	width: 100%;
	height: auto;
}
.tv-main .section.home .list-item {
	display: flex;
	flex-direction: column;
	gap: 16px 0px;
	margin-top: 20px;
	text-align: left;
}
.tv-main .section.home .list-item dl {
}
.tv-main .section.home .list-item dl dt {
	display: flex;
	justify-content:flex-start;
	align-items: center;
	gap: 0px 10px;
	color: #000;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.28px;
}
.tv-main .section.home .list-item dl dt span {
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	background: #D92C38;
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	line-height: 24px;
	letter-spacing: -0.24px;
	text-align: center;
}
.tv-main .section.home .list-item dl dd {
	margin-top: 5px;
	padding-left: 34px;
	color: #333;
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	letter-spacing: -0.28px;
}

.tv-main .section.price {
	padding: 40px 16px 80px 16px;
	background: #FAFAFA;
}
.tv-main .section.price .inner-wrap {
	max-width: 1000px;
}
.tv-main .section.price .tab-box {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0px 10px;
	margin-bottom: 40px;
}
.tv-main .section.price .tab-box .tab-btn {
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 240px;
	height: 52px;
	background: #E0DDEE;
	border: none;
	border-radius: 26px;
	color: #998FC7;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	letter-spacing: -0.32px;
}
.tv-main .section.price .tab-box .tab-btn.on {
	background: #6941FF;
	color: #fff;
}
.tv-main .section.price .tab-container {
	display: none;
}
.tv-main .section.price .tab-container.on {
	display: block;
}
.tv-main .section.price .tab-container h2 {
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.6px;
}
.tv-main .section.price .tab-container h2 strong {
	color: #6941FF;
	font-weight: 400;
}
.tv-main .section.price .tab-container h6 {
	margin-top: 10px;
	color: #000;
	font-size: 14px;
	font-weight: 400;
	line-height: 150%;
	letter-spacing: -0.28px;
}
.tv-main .section.price .tab-container .img {
	margin-top: 40px;
}
.tv-main .section.price .tab-container .img img {
	width: 100%;
	height: auto;
}
.tv-main .section.price .tab-container .price-table {
	margin-top: 20px;
}
.tv-main .section.price .tab-container .price-table .dt {
	display: none;
	background: #FFF;
	border: 1px solid #E3E3E3;
	border-radius: 4px;
	overflow: hidden;
}
.tv-main .section.price .tab-container .price-table .dt table {
	width: 100%;
}
.tv-main .section.price .tab-container .price-table .dt thead {
}
.tv-main .section.price .tab-container .price-table .dt thead tr {
}
.tv-main .section.price .tab-container .price-table .dt thead tr th {
	padding: 12px 8px;
	background: #222428;
	border-right: 1px solid #e3e3e3;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	text-align: center;
	vertical-align: middle;
}
.tv-main .section.price .tab-container .price-table .dt thead tr th:last-child {
	border-right: none;
}
.tv-main .section.price .tab-container .price-table .dt tbody {
}
.tv-main .section.price .tab-container .price-table .dt tbody tr {
}
.tv-main .section.price .tab-container .price-table .dt tbody tr th {
	padding: 26px 10px;
	background: #F0F0F0;
	border-top: 1px solid #E3E3E3;
	border-right: 1px solid #E3E3E3;
	color: #000;
	font-size: 16px;
	font-weight: 800;
	line-height: 20px;
	vertical-align: middle;
}
.tv-main .section.price .tab-container .price-table .dt tbody tr td {
	padding: 26px 10px;
	border-top: 1px solid #E3E3E3;
	border-right: 1px solid #E3E3E3;
	color: #000;
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	vertical-align: middle;
}
.tv-main .section.price .tab-container .price-table .dt tbody tr td:last-child {
	border-right: none;
}
.tv-main .section.price .tab-container .price-table .dt tbody tr td .strike {
	color: #999;
	text-decoration:line-through;
}
.tv-main .section.price .tab-container .price-table .dt tbody tr td strong {
	color: #6941FF;
}
.tv-main .section.price .tab-container .price-table .m {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px 0px;
	padding: 10px;
	background:#fff;
	border: 1px solid #E3E3E3;
	border-radius: 5px;
}
.tv-main .section.price .tab-container .price-table .m > dl {
	width: 100%;
}
.tv-main .section.price .tab-container .price-table .m > dl > dt {
	display: flex;
	align-items: center;
	width: 100%;
	height: 30px;
	padding: 0px 10px;
	background:#F0F0F0;
	border-radius: 5px;
	color: #000;
	font-size: 13px;
	font-weight:800;
}
.tv-main .section.price .tab-container .price-table .m > dl > dd {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 5px;
	padding-top: 8px;
}
.tv-main .section.price .tab-container .price-table .m > dl > dd > dl {
	width: calc((100% - 10px) / 2);
	align-self: stretch;
	text-align:left;
}
.tv-main .section.price .tab-container .price-table .m > dl > dd > dl > dt {
	color: #999;
	font-size: 12px;
	font-weight:700;
	line-height:130%;
}
.tv-main .section.price .tab-container .price-table .m > dl > dd > dl > dd {
	margin-top: 5px;
	color: #000;
	font-size: 13px;
	font-weight:400;
	line-height:130%;
}
.tv-main .section.price .tab-container .price-table .m > dl > dd > dl > dd .strike {
	color: #999;
	font-size: 12px;
	font-weight:400;
	line-height:130%;
	text-decoration-line: line-through;
}
.tv-main .section.price .tab-container .price-table .m > dl > dd > dl > dd strong {
	color: #6941FF;
}

.tv-main .section.step {
	padding: 80px 16px;
}
.tv-main .section.step .inner-wrap {
	max-width: 1000px;
}
.tv-main .section.step .text-box {
}
.tv-main .section.step .text-box h1 {
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: -0.6px;
}
.tv-main .section.step .text-box h1 strong {
	color: #6941FF;
	font-weight: 400;
}
.tv-main .section.step .text-box p {
	margin-top: 10px;
	color: #000;
	font-size: 14px;
	font-weight: 400;
	line-height: 150%;
	letter-spacing: -0.28px;
	text-align: center;
}
.tv-main .section.step .text-box p strong {
	color: #6941FF;
	font-weight: 700;
}
.tv-main .section.step .text-box p .dt {
	display: none;
}
.tv-main .section.step .item-box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 16px 0px;
	margin-top: 40px;
}
.tv-main .section.step .item-box dl {
	width: 100%;
}
.tv-main .section.step .item-box dl dt {
}
.tv-main .section.step .item-box dl dd {
	margin-top: 16px;
}
.tv-main .section.step .item-box dl dd h6 {
	color: #000;
	font-size: 20px;
	font-weight: 400;
	line-height: 140%;
	letter-spacing: -0.4px;
}
.tv-main .section.step .item-box dl dd p {
	margin-top: 10px;
	color: #000;
	font-size: 14px;
	font-weight: 300;
	line-height: 148%;
	letter-spacing: -0.28px;
}
.tv-main .section.step .item-box .arrow {
	width: 12px;
	height: 40px;
	background:url("../img/main/tv_main_step_arrow02.png") no-repeat center center;
	background-size: 12px 40px;
}

.tv-main .section.portfolio {
	padding: 80px 0px;
	background: #242424;
}
.tv-main .section.portfolio h3 {
	height: 40px;
	margin-bottom: 10px;
	background: url("../img/main/board_main_port_logo.svg") no-repeat center center;
	background-size: auto 40px;
	font-size :0px;
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7483%) hue-rotate(174deg) brightness(122%) contrast(89%);
}
.tv-main .section.portfolio h6 {
	color: #fff;
	font-size: 30px;
	font-weight: 300;
	line-height:148%;
}
.tv-main .section.portfolio h6 strong {
	font-weight: normal;
}
.tv-main .section.portfolio .swiper {
	padding-left: 60px;
}
.tv-main .section.portfolio .swiper-wrapper {
	transition-timing-function: linear;
}
.tv-main .section.portfolio .swiper-slide {
	position: relative;
	width: 40%;
	min-width: 320px;
	max-width: 530px;
	margin: 20px 0px;
	margin-right: 20px;
	border-radius: 10px;
	box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.20);
	overflow: hidden;
	aspect-ratio: 16 / 9;
}
.tv-main .section.portfolio .swiper-slide iframe {
	width:100%;
	height:100%;
}
.tv-main .section.portfolio .swiper-slide img {
	width:100%;
	height:100%;
	object-fit: cover;
}

@keyframes portfolioAnimate {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
.tv-main .section.portfolio .animate .swiper-wrapper {
	animation: portfolioAnimate linear 3s infinite;
	white-space:nowrap;
}
.tv-main .section.portfolio .animate .swiper-wrapper:hover {
	animation-play-state: paused;
}
.tv-main .section.portfolio .animate .swiper-wrapper .swiper-slide {
	width: 24.6625vw;
}

.tv-main .section.portfolio .prev {
	position: absolute;
	top: 50%;
	left: 10px;
	z-index:2;
	width: 36px;
	height: 42px;
	background:url('../img/main/mo_prev.png') no-repeat center center;
	border-radius:5px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.25);
	transform: translateY(-50%);
	cursor:pointer;
}
.tv-main .section.portfolio .next {
	position: absolute;
	top: 50%;
	right: 10px;
	z-index:2;
	width: 36px;
	height: 42px;
	background:url('../img/main/mo_next.png') no-repeat center center;
	border-radius:5px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.25);
	transform: translateY(-50%);
	cursor:pointer;
}
.tv-main .section.portfolio .go-btn {
	display: flex;
	justify-content: center;
	align-items :center;
	width: 160px;
	height: 48px;
	margin: 40px auto 0px;
	background: #6941FF;
	border-radius: 24px;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.28px;
	text-align: center;
}

.tv-main .section.faq {
	padding: 40px 20px 80px;
	background:#efefef;
}
.tv-main .section.faq h6 {
	position: relative;
	padding-top: 60px;
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 148%;
	letter-spacing: -1px;
}
.tv-main .section.faq h6:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 40px;
	height: 40px;
	margin-left: -20px;
	background: url("../img/main/tv_board_main_faq_icon.png") no-repeat center center;
	background-size: 40px 40px;
	border-radius: 50%;
	box-shadow: 5px 8.7px 20px 0 rgba(0, 0, 0, 0.20);
	content: "";
}
.tv-main .section.faq .content-box {
	margin-top: 30px;
}
.tv-main .section.faq .content-box ul {
}
.tv-main .section.faq .content-box ul li {
	background:#fff;
	border-radius: 12px;
}
.tv-main .section.faq .content-box ul li + li {
	margin-top: 8px;
}
.tv-main .section.faq .content-box ul li dl {
}
.tv-main .section.faq .content-box ul li dt {
}
.tv-main .section.faq .content-box ul li dt .toggle-btn {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 14px 16px;
	background:transparent;
	border: none;
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:20px;
	letter-spacing: -0.08px;
}
.tv-main .section.faq .content-box ul li dt .toggle-btn:after {
	width: 20px;
	height: 20px;
	background: url("../img/main/board_main_faq_arrow.svg") no-repeat center center;
	background-size: 20px 20px;
	content: "";
}
.tv-main .section.faq .content-box ul li .on dt .toggle-btn:after {
	transform: rotate(180deg);
}
.tv-main .section.faq .content-box ul li dd {
	display: none;
	width: calc(100% - 32px);
	margin: 0 auto;
	padding-top: 14px;
	padding-bottom: 24px;
	border-top: 1px solid #ccc;
}
.tv-main .section.faq .content-box ul li dd p {
	color: #000;
	font-size: 14px;
	line-height: 120%;
	letter-spacing: -0.08px;
	text-align:left;
}
.tv-main .section.faq .content-box ul li dd p + p {
	margin-top: 5px;
}

.tv-main .section.contact {
	padding: 80px 20px;
	background: url("../img/main/contact_bg.png") no-repeat center center;
	background-size: cover;
}
.tv-main .section.contact .left-box {
	margin-bottom: 40px;
}
.tv-main .section.contact .left-box h6 {
	color: #fff;
	font-size: 18px;
	font-weight:800;
	line-height:148%;
}
.tv-main .section.contact .left-box p {
	margin-top: 10px;
	color: #fff;
	font-size: 14px;
	line-height:148%;
}
.tv-main .section.contact .left-box h4 {
	margin-top: 10px;
	font-family: 'Gmarket Sans';
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	line-height:148%;
	letter-spacing: 1.6px;
}
.tv-main .section.contact .left-box .kakao-btn {
	display:flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 300px;
	height: 70px;
	margin: 20px auto 0px;
	background:#fae100;
	border-radius: 35px;
	color: #330000;
	font-size: 20px;
	font-weight:700;
	line-height: 148%;
}
.tv-main .section.contact .left-box .kakao-btn:before {
	width: 62px;
	height: 62px;
	background: url("../img/common/pc_chat_icon.png") no-repeat center center;
	background-size: 62px 62px;
	content: "";
}
.tv-main .section.contact .form-box {
	margin-top: 40px;
	padding: 40px 20px;
	background: rgba(255, 255, 255, 0.90);
	border-radius: 20px;
	box-shadow: 4px 4px 20px 0 rgba(0, 0, 0, 0.20);
}
.tv-main .section.contact .form-box form {
}
.tv-main .section.contact .form-box h5 {
	color: #017EFF;
	font-size: 18px;
	font-weight: 800;
	line-height:148%;
	text-align:center;
}
.tv-main .section.contact .form-box .input-row-group {
	margin-top: 20px;
}
.tv-main .section.contact .form-box .input-row-group .input-row {
}
.tv-main .section.contact .form-box .input-row-group .input-row + .input-row {
	margin-top: 10px;
}
.tv-main .section.contact .form-box .input-row-group .input-row > label,
.tv-main .section.contact .form-box .input-row-group .input-row > .text-label {
	display: block;
	margin-bottom: 5px;
	color: #000;
	font-size: 12px;
	font-weight:700;
	line-height:14px;
	text-align:left;
}
.tv-main .section.contact .form-box .input-row-group .input-row > label span,
.tv-main .section.contact .form-box .input-row-group .input-row > .text-label span {
	color: #FF4E4E;
}
.tv-main .section.contact .form-box .input-row-group .input-row .input-box {
	width: 100%;
}
.tv-main .section.contact .form-box .input-row-group .input-row .input-box input {
	width: 100%;
	height: 40px;
	padding: 4px 12px;
	background:#fff;
	border: 1px solid #ccc;
	border-radius :10px;
	color: #000;
	font-size: 14px;
	font-weight:700;
	text-align:left;
	box-sizing: border-box;
}
.tv-main .section.contact .form-box .input-row-group .input-row .input-box input::placeholder {
	color: #999;
}
.tv-main .section.contact .form-box .input-row-group .input-row .check-item-group {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0px 20px;
}
.tv-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item {
}
.tv-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input {
	display: none;
}
.tv-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input + label {
	display: inline-block;
	padding-left: 26px;
	color: #000;
	font-size: 16px;
	font-weight:700;
	line-height:24px;
}
.tv-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input + label:before {
	position: absolute;
	top: 50%;
	left: 0px;
	z-index: 5;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background: transparent;
	background-size: 16px 16px;
	border: 1px solid #666;
	border-radius: 4px;
	box-sizing: border-box;
	content: "";
}
.tv-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input:checked + label:before {
	background: url(../img/common/check_icon.png) no-repeat center center;
	background-size: 16px 16px;
	border: none;
}
.tv-main .section.contact .form-box .submit-btn {
	display: block;
	width: 100%;
	max-width: 240px;
	height: 40px;
	margin: 20px auto 0px;
	background:#6941FF;
	border: none;
	border-radius: 20px;
	color: #fff;
	font-size: 16px;
	font-weight:700;
	line-height:40px;
	letter-spacing: -0.32px;
	text-align:center;
}
.tv-main .section.contact .form-box .contact-desc {
	margin-top: 20px;
	color: #EE2722;
	font-size: 12px;
	font-weight:400;
	line-height:148%;
	text-align:center;
}

@media screen and (min-width: 768px) {

.tv-main .visual {
	max-height:840px;
}
.tv-main .visual .text-box h3 {
	font-size:60px;
	line-height:70px;
	letter-spacing:-2px;
}
.tv-main .visual .text-box p {
	margin-top:40px;
	font-size:20px;
	letter-spacing:-0.6px;
}
.tv-main .visual .text-box a {
	width:240px;
	height:60px;
	margin-top:60px;
	border-width:2px;
	border-radius:30px;
	font-size:20px;
	line-height:56px;
	letter-spacing:-0.5px;
}

.tv-main .visual .scroll-btn {
	bottom:32px;
}
.tv-main .visual .scroll-btn img {
	height:50px;
}

.tv-main .visual-swiper {
	max-height:840px;
}
.tv-main .visual-swiper .fixed-visual .text-box h3 {
	width: 174px;
	height: 31px;
	background:url('../img/main/tv_main_genie_logo.png') no-repeat center center;
	background-size: auto 31px;
}
.tv-main .visual-swiper .fixed-visual .text-box h6 {
	width: 400px;
	height: 123px;
	margin-top:10px;
	background:url('../img/main/tv_main_logo.png') no-repeat center center;
	background-size: auto 123px;
}
.tv-main .visual-swiper .fixed-visual .text-box a {
	width:240px;
	height:60px;
	margin-top:60px;
	border-width:2px;
	border-radius:30px;
	font-size:20px;
	font-weight: 400;
	line-height:56px;
	letter-spacing:-0.5px;
}




}

@media screen and (min-width: 1024px) {

.tv-main .visual {
	max-height:980px;
	background-position:center center;
}
.tv-main .visual:before {
	display:none;
}
.tv-main .visual .text-box {
	text-align:left;
}
.tv-main .visual .text-box p {
	font-size:26px;
	text-align:left;
}

.tv-main .visual .scroll-btn img {
	height:70px;
}

.tv-main .visual-swiper {
	max-height:980px;
}
.tv-main .visual-swiper .fixed-visual {
	background-position:center center;
}
.tv-main .visual-swiper .fixed-visual:before {
	display:none;
}
.tv-main .visual-swiper .fixed-visual .text-box {
	text-align:left;
}
.tv-main .visual-swiper .fixed-visual .text-box h3,
.tv-main .visual-swiper .fixed-visual .text-box h6,
.tv-main .visual-swiper .fixed-visual .text-box a {
	margin-left: 0px;
}
.tv-main .visual-swiper .fixed-visual .text-box .btn-box {
	justify-content: flex-start;
}
.tv-main .visual-swiper .swiper-slide > .pc_img {
	display: block;
}
.tv-main .visual-swiper .swiper-slide > .mo_img {
	display: none;
}

.tv-main .visual-swiper .pagination {
	position: absolute;
	bottom: 40px;
	z-index: 1;
	display: flex;
	justify-content: center;
	gap: 0px 8px;
}
.tv-main .visual-swiper .pagination .bullet {
	min-width: 120px;
	font-size:16px;
	line-height: 22px;
}

.tv-main .section.intro {
	padding: 120px 40px;
}
.tv-main .section.intro .text-box h1 {
	width: 289px;
	height: 52px;
	background-size: auto 52px;
}
.tv-main .section.intro .text-box p {
	gap: 0px 16px;
	margin-top: 24px;
	font-size: 24px;
	letter-spacing: -0.48px;
}
.tv-main .section.intro .sub-text-box {
	margin-top: 80px;
}
.tv-main .section.intro .sub-text-box h3 {
	gap: 0px 11px;
	font-size: 48px;
	letter-spacing: -1.44px;
}
.tv-main .section.intro .sub-text-box h3 strong {
	padding: 8px 24px;
	border-radius: 40px;
	font-size: 46px;
	line-height: 64px;
	letter-spacing: -1.38px;
}
.tv-main .section.intro .sub-text-box p {
	height: 48px;
	margin-top: 24px;
	padding: 10px 0px;
	border-radius: 24px;
	font-size: 20px;
	line-height: 26px;
	letter-spacing: -0.4px;
}
.tv-main .section.intro .item-box {
	flex-direction: row;
	margin-top: 80px;
}
.tv-main .section.intro .item-box dl:nth-child(1) dt {
	width: 33.33vw;
	height: 33.33vw;
	max-width: 196px;
	max-height: 196px;
	background: url('../img/main/tv_main_intro_img01.svg') no-repeat center center;
	background-size: cover;
}
.tv-main .section.intro .item-box dl:nth-child(3) dt {
	width: 33.33vw;
	height: 33.33vw;
	max-width: 196px;
	max-height: 196px;
	background: url('../img/main/tv_main_intro_img02.svg') no-repeat center center;
	background-size: cover;
}
.tv-main .section.intro .item-box dl:nth-child(5) dt img {
	width: 100%;
	max-width: 359px;
	height: auto;
}
.tv-main .section.intro .item-box .left,
.tv-main .section.intro .item-box .right {
	width: 40px;
	height: 124px;
}
.tv-main .section.intro .item-box .left:before,
.tv-main .section.intro .item-box .right:before {
	transform: rotate(0deg);
}

.tv-main .section.about {
	padding: 120px 40px;
}
.tv-main .section.about .text-box h1 {
	font-size: 60px;
	letter-spacing: -1.2px;
}
.tv-main .section.about .text-box p {
	margin-top: 20px;
	font-size: 24px;
	letter-spacing: -0.48px;
}
.tv-main .section.about .text-box p br {
	display: block;
}

.tv-main .section.merit {
	padding: 120px 40px;
}
.tv-main .section.merit:before {
	top: 50%;
	left: 50%;
	width: 308px;
	height: 308px;
	margin-top: -154px;
	margin-left: -154px;
	filter: blur(200px);
	content: "";
}
.tv-main .section.merit .text-box h1 {
	font-size: 60px;
	letter-spacing: -1.2px;
}
.tv-main .section.merit .img {
	margin-top: 40px;
	padding: 58px 95px 58px 150px;
}
.tv-main .section.merit .item-box {
	flex-direction: row;
}
.tv-main .section.merit .item-box dl {
	flex: 1;
	padding: 20px 16px;
	text-align: left;
}
.tv-main .section.merit .item-box dl dt span {
	width: 32px;
	height: 32px;
	font-size: 14px;
	letter-spacing: -0.28px;
}
.tv-main .section.merit .item-box dl dt p {
	font-size: 16px;
	letter-spacing: -0.32px;
}
.tv-main .section.merit .item-box dl dt p br {
	display: block;
}
.tv-main .section.merit .item-box dl dd {
	margin-top: 16px;
	letter-spacing: -0.28px;
}

.tv-main .section.home {
	padding: 120px 40px;
}
.tv-main .section.home .text-box h1 {
	font-size: 60px;
	letter-spacing: -1.2px;
}
.tv-main .section.home .item-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 50px;
}
.tv-main .section.home .item-box .img {
	width: 631px;
}
.tv-main .section.home .list-item {
	flex-shrink: 0;
	width: 329px;
	margin-top: 0px;
}
.tv-main .section.home .list-item dl {
}
.tv-main .section.home .list-item dl dt span {
	font-size: 10px;
	letter-spacing: -0.2px;
}
.tv-main .section.home .list-item dl dd {
	margin-top: 8px;
}

.tv-main .section.price {
	padding: 120px 40px;
}
.tv-main .section.price .tab-box {
	gap: 0px 20px;
	margin-bottom: 80px;
}
.tv-main .section.price .tab-box .tab-btn {
	height: 60px;
	border-radius: 30px;
	font-size: 20px;
	letter-spacing: -0.4px;
}
.tv-main .section.price .tab-container h2 {
	font-size: 60px;
	letter-spacing: -1.2px;
}
.tv-main .section.price .tab-container h6 {
	margin-top: 20px;
	font-size: 24px;
	line-height: 150%;
	letter-spacing: -0.48px;
}
.tv-main .section.price .tab-container h6 .m {
	display: none;
}
.tv-main .section.price .tab-container .img {
	margin-top: 80px;
}
.tv-main .section.price .tab-container.big .img img {
	margin-left: -23px;
}
.tv-main .section.price .tab-container.shop .img img {
	margin-left: 23px;
}
.tv-main .section.price .tab-container .price-table {
	margin-top: 40px;
}
.tv-main .section.price .tab-container .price-table .dt {
	display: block;
}
.tv-main .section.price .tab-container .price-table .m {
	display: none;
}

.tv-main .section.step {
	padding: 120px 40px;
}
.tv-main .section.step .text-box h1 {
	font-size: 60px;
	letter-spacing: -1.2px;
}
.tv-main .section.step .text-box p {
	margin-top: 20px;
	font-size: 24px;
	letter-spacing: -0.48px;
}
.tv-main .section.step .text-box p .dt {
	display: block;
}
.tv-main .section.step .text-box p .m {
	display: none;
}
.tv-main .section.step .item-box {
	align-items: flex-start;
	flex-direction: row;
	margin-top: 80px;
}
.tv-main .section.step .item-box dl {
	flex: 1;
}
.tv-main .section.step .item-box dl dt {
	position: relative;
}
.tv-main .section.step .item-box dl dt:after {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	width: 70px;
	height: 12px;
	margin-top: -6px;
	margin-left: 83px;
	background: url('../img/main/tv_main_step_arrow.png') no-repeat center center;
	content: "";
}
.tv-main .section.step .item-box dl:last-child dt:after {
	display: none;
}
.tv-main .section.step .item-box dl dd {
	margin-top: 20px;
}
.tv-main .section.step .item-box dl dd h6 {
	font-size: 28px;
	letter-spacing: -0.56px;
}
.tv-main .section.step .item-box dl dd p {
	margin-top: 16px;
	font-size: 16px;
	letter-spacing: -0.32px;
}
.tv-main .section.step .item-box .arrow {
	display: none;
}

.tv-main .section.portfolio {
	padding: 120px 0px;
}
.tv-main .section.portfolio h3 {
	height: 80px;
	margin-bottom: 20px;
	background-size: auto 80px;
}
.tv-main .section.portfolio h6 {
	font-size: 60px;
}
.tv-main .section.portfolio h6 br {
	display: none;
}
.tv-main .section.portfolio .swiper {
	padding-left: 100px;
}
.tv-main .section.portfolio .swiper-slide {
	width: 530px;
	margin: 80px 0px;
	margin-right: 40px;
}
.tv-main .section.portfolio .prev {
	left: 40px;
	width: 80px;
	height: 100px;
	background:url('../img/main/pc_prev.png') no-repeat center center;
	border-radius:10px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.10);
}
.tv-main .section.portfolio .next {
	right: 40px;
	width: 80px;
	height: 100px;
	background:url('../img/main/pc_next.png') no-repeat center center;
	border-radius:10px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.10);
}
.tv-main .section.portfolio .go-btn {
	width: 240px;
	height: 60px;
	margin-top: 0px;
	border-radius: 30px;
	font-size: 20px;
	letter-spacing: -0.4px;
}

.tv-main .section.faq {
	padding: 120px 40px;
}
.tv-main .section.faq h6 {
	padding-top: 100px;
	font-size: 60px;
}
.tv-main .section.faq h6:before {
	width: 80px;
	height: 80px;
	margin-left: -40px;
	background: url("../img/main/tv_board_main_faq_icon.png") no-repeat center center;
	background-size: 80px 80px;
	border-radius: 50%;
	content: "";
}
.tv-main .section.faq .content-box {
	margin-top: 60px;
}
.tv-main .section.faq .content-box ul li {
	border-radius: 24px;
}
.tv-main .section.faq .content-box ul li + li {
	margin-top: 16px;
}
.tv-main .section.faq .content-box ul li dt .toggle-btn {
	padding: 20px 40px;
	font-size: 20px;
	line-height:45px;
}
.tv-main .section.faq .content-box ul li dt .toggle-btn:after {
	width: 40px;
	height: 40px;
	background-size: 40px 40px;
}
.tv-main .section.faq .content-box ul li dd {
	width: calc(100% - 80px);
	padding-top: 20px;
	padding-bottom: 40px;
}
.tv-main .section.faq .content-box ul li dd p {
	color: #000;
	font-size: 20px;
	line-height: 140%;
}

.tv-main .section.contact {
	padding: 120px 40px;
}
.tv-main .section.contact .inner-wrap {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0px 80px;
}
.tv-main .section.contact .left-box {
	flex-shrink: 0;
	margin-bottom: 0px;
	text-align:left;
}
.tv-main .section.contact .left-box h6 {
	font-size: 24px;
}
.tv-main .section.contact .left-box h4 {
	margin-top: 20px;
}

.tv-main .section.contact .form-box {
	flex: 1;
	margin-top: 0px;
	padding: 40px;
}
.tv-main .section.contact .form-box h5 {
	font-size: 20px;
}
.tv-main .section.contact .form-box .input-row-group {
	margin-top: 40px;
}
.tv-main .section.contact .form-box .input-row-group .input-row > label,
.tv-main .section.contact .form-box .input-row-group .input-row > .text-label {
	font-size: 14px;
	line-height:16px;
}
.tv-main .section.contact .form-box .submit-btn {
	height: 60px;
	margin: 40px auto 0px;
	border-radius: 30px;
	font-size: 20px;
	letter-spacing: -0.4px;
}
.tv-main .section.contact .form-box .contact-desc {
	margin-top: 40px;
	font-size: 14px;
}

}

@media screen and (min-width: 1200px) {

.tv-main .visual {
	max-height:1080px;
}

.tv-main .visual-swiper {
	max-height:1080px;
}
.tv-main .visual-swiper .fixed-visual .text-box {
	max-width: 1200px;
}

.tv-main .section.contact .form-box .input-row-group {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 40px;
}
.tv-main .section.contact .form-box .input-row-group .input-row {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: calc((100% - 40px) / 2);
}
.tv-main .section.contact .form-box .input-row-group .input-row + .input-row {
	margin-top: 0px;
}
.tv-main .section.contact .form-box .input-row-group .input-row > label,
.tv-main .section.contact .form-box .input-row-group .input-row > .text-label {
	flex-shrink: 0;
	width: 100px;
	margin-bottom: 0px;
}
.tv-main .section.contact .form-box .input-row-group .input-row .input-box {
	flex: 1;
}

}