/*
가이드 명칭 : YG CSS 가이드
가이드 내용 : 사이트 레이아웃
최초 제작자 : YG WDS
최종 제작일 : 2019.10.
수정 / 배포 : 담당자 문의 후 수정 가능. 재배포 절대 불가
*/

/* ------------------------------- */

/* IE6.0 Hack CSS 연결 ----------- */

/* ------------------------------- */

@charset "utf-8";
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
* Common
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
*,
*:after,
*:before {
	-webkit-text-size-adjust: none;
	box-sizing: border-box;
}

* {
	font-family: "din-condensed-variable", sans-serif, "sandoll-gothicneo1", sans-serif;
	letter-spacing: -0.02em;
}


html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 16px;
}


:root {
	--main-color: #c8343c;
}

body {
	width: 100%;
	margin: 0;
	padding: 0;
	word-wrap: break-word;
	word-break: keep-all;
	background-image: url("../img/main.jpg") ;
	background-size: 100%;
	background-repeat: no-repeat;	
	-webkit-overflow-scrolling: touch;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	background-color: #000;
}

h1, h2, h3, h4, h5, h6,
p, ul, li, dl, dt, dd {
	margin: 0;
	padding: 0;
}

ul, ol, dl {
	list-style: none;
}

table { 
	border-collapse: collapse; 
}

img {
	max-width: 100%;
	border: 0;
	vertical-align: top;
}

a {
	display: inline-block;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}



/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
* layout
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

h2 {
	font-size: 3vw;
	color: var(--main-color);
}
#wrap {
	width: 100%;
}


#content {
	max-width: 90%;
	margin: 0 auto;
	color: #fff;
	padding-top: 68%;
}

.container {
	color: #fff;
	padding-bottom: 6%;
}

.container .row:hover {
	opacity: 100%;
}

.container .rowk:hover {
	opacity: 100%;
}

.container .soldout:hover {
	opacity: 100%;
}

.container .soldout2:hover {
	opacity: 50%;
}

.container .row {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	height: 7vw;
	position: relative;
}

.container .row:hover {
	border-bottom: 1px solid rgba(255, 255, 255, 1.0);
}
.container .rowk {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
	border-bottom: 1px solid #3c3c3c;
	height: 10vw;
}

.container .left {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.container .right {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
}

.container .item4, .buy a, span {

}

.container .buy span {
	font-size: 0.8vw;
	font-weight: 500;
}

.item1, .item2 {
	padding-top: 2px;
	text-align: left;
	font-size: 2vw;
}

.item1 {
	font-variation-settings: "wght" 600;
	width: 7.5vw;
}

.item2 {
	font-variation-settings: "wght" 300;
}

.container .item4 {
	padding-right: 2vw;
	font-weight: 300;
	letter-spacing: 0;
	font-size: 1.4vw;
}

.container .more {
	font-size: 1vw;
	padding-left: 1.2vw;
	opacity: 0.7;
}

.buyticket {
	display: flex;
	justify-content: flex-end;
	padding: 4% 0 4% 0;
}

.buyticket .ticket-1, .ticket-2 {
	text-align: center;
	font-size: 0.8vw;
	color: var(--main-color);
	padding-bottom: 6%;
}

.buyticket .lable {
	display: block;
	margin-bottom: 2px;
}

.btn-ticket {
	display: flex;
	width: 100%;
	flex-direction: row;
	gap: 12px;
	justify-content: flex-end;
}

button, button2, button3 {
	border: none;
	color: #fff;
	text-align: center;
	font-size: 1.3vw;
	width: 10.5vw;
	font-weight: 400;
}

button {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--main-color);
	cursor: pointer;
	text-align: center;
	position: relative;
	transition: all 0.5s;
}

button a {
	padding: 0.6vw 0;
}

button span {
	color: #fff;
}

button2, button3 {
	padding: 0.8vw;
}

button2 {
	color: var(--main-color);
}

button3 {
	background-color: #000;
	color: #fff;
	font-weight: 600;
	font-style: italic;
}

button:after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='white' d='m16 8l-1.43 1.393L20.15 15H8v2h12.15l-5.58 5.573L16 24l8-8z'/%3E%3Cpath fill='white' d='M16 30a14 14 0 1 1 14-14a14.016 14.016 0 0 1-14 14m0-26a12 12 0 1 0 12 12A12.014 12.014 0 0 0 16 4'/%3E%3C/svg%3E");
	position: absolute;
	opacity: 0;  
	width: 1.6vw;
	height: 1.6vw;
	top: 50%;
	right: 0vw;
	transition: 0.5s;
	transform: translateY(-50%);
}

button:hover{
	padding-right: 40px;
	padding-left:8px;
}

button:hover:after {
	opacity: 1;
	right: 1.2vw;
}


.video {
	width: 100%;
	margin: auto;
	padding-bottom: 5%;
	color: #000;
}

.video-embed-area {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	margin: auto;
	background-color: #18120f;
}

.video-embed-area iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.empty {
	opacity: 90%;
	height: 44vw;
	background-color: #222;
	position: relative;
}

.empty span {
	font-size: 2vw;
	font-weight: 600;
	text-align: center;
	color: var(--main-color);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 80%;
}

#conactEmail {
	padding: 5% 0;
	text-align: center;
}

#conactEmail h3, .mail {
	font-variation-settings: "wght" 400;
	font-size: 1.5vw;
	color: var(--main-color);
}

.mail {
	color: #fff;
}


.legal {
	margin: 0 auto;
	padding: 4% 0 4% 0;	
	text-align: center;
}

.legal span {
	font-size: 1vw;
	color: #fff;
	opacity: 0.5;
}


.back {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 36%;
	margin-top: -41%;
}

.container .soldout2, .soldout {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	
}

.container .soldout .left, .container .soldout .right {
	opacity: 40%;
}

.soldout, .soldout2 {
	position: relative;
}

.past-marker {
	background-color: var(--main-color);
	height: 1px;
	position: absolute;
	inset: 49% -1rem 0%;
}

.title {
	display: flex;
	padding-bottom: 2%;
	align-items: center;
	border-bottom: 1px solid var(--main-color);
}

img.rotate_icon {
	width: 3vw;
	height: auto;
	margin-right: 1%;
}

/* ------------------------------
---------------------------------
[ Desktops only ]
---------------------------------
------------------------------ */

@media (min-width: 970px) {	
	.more .btn-info::before {
		content: '';
		position: absolute;
		bottom: 0%;
		left: 0px;
		width: 100%;
		height: 1px;
		background: #ccc;
		display: block;
		-webkit-transform-origin: right top;
		-ms-transform-origin: right top;
		transform-origin: right top;
		-webkit-transform: scale(0, 1);
		-ms-transform: scale(0, 1);
		transform: scale(0, 1);
		-webkit-transition: transform 0.3s cubic-bezier(1, 0, 0, 1);
		transition: transform 0.3s cubic-bezier(1, 0, 0, 1)
	}

	.more .btn-info:hover::before {
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		transform: scale(1, 1)
	}

	.ticket a[class*="btn-"] {
		position: relative;
	}

	.more a[class*="btn-"] {
		position: relative;
		color: #ccc;
		opacity: 1.0;
	}

	.more a[class*="btn-"].active,
	.more a[class*="btn-"]:hover,
	.more a[class*="btn-"]:active,
	.more a[class*="btn-"]:focus {
		z-index: 9;
	}

	#main .mposter {
		display: none;
	}
}


/* ------------------------------
---------------------------------
[ Phones & Tablets only ]
---------------------------------
------------------------------ */

@media (max-width: 969px) {

	h2 {
		font-size: 8vw;
		padding: 6% 0;
		letter-spacing: -0.03em;
	}

	#wrap {
		position: relative;
		overflow: hidden;
		background-size : contain;
		background-repeat: no-repeat;
		background-position: top center;
		background-image: url("../img/main_m.jpg");
		margin: 0 auto;
		position: relative;
		padding-bottom: 10%;
	}

	#content {
		padding-top: 130%;
	}

	.container .rowk, .container .row, .container .soldout. .soldout2 {
		padding: 14vw 0 14vw 0;
	}

	.container .row {
		display: flex;
		flex-direction: column;
		opacity: 100%;
		height: auto;
		padding: 5vw;
	}

	.container .rowk {
		display: flex;
		flex-direction: column;
		height: auto;
		opacity: 100%;
		padding: 5vw;
	}

	.container .soldout2, .container .soldout {
		display: flex;
		flex-direction: column;
		height: auto;
		padding: 5vw 0 5vw 0;
	}

	.container .left {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
	}

	.container .right {
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: center;
	}

	.item1, .item2 {
		padding: 0;
		font-size: 7vw;
	}

	.item1 {
		width: 100%;
		text-align: center;
	}

	.item2 {
		line-height: 8vw;
		text-align: center;
	}

	.container .item4 {
		font-size: 5vw;
		padding: 2% 0 8%;
		word-break: keep-all;
	}

	.container .item4 span {
		font-size: 2.6vw;
	}

	.container .rowk, .container .row, .container .soldout, .soldout2 {
		padding: 10% 0;
	}

	.container .more {
		font-size: 4vw;
		padding: 6% 0;
	}

	.buyticket {
		padding: 0;
	}

	.btn-ticket {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 0;
}

.buyticket .ticket-1, .ticket-2 {

	font-size: 4vw;

}

.buyticket .lable {
	display: block;
	margin-bottom: 6px;
}

	button, button2 {
		font-size: 5vw;
		font-weight: 400;
		width: 80vw;
	}

	button2 {
		margin-top: 4%;

		padding: 3.4vw 0 3.4vw 0;
	}

	button2 span {

	}

	button3 {
		font-size: 5vw;
		font-style: italic;
		width: 80vw;
		padding: 3% 0;
		border: 1px solid #fff;
	}

	button:after {
		display: none;
	}

	button:hover{
		padding-right: 0;
		padding-left: 0;
	}

	button a {
		width: 70vw;
		padding: 3% 0 ;
	}

	#conactEmail h3, .mail {
		font-size: 4vw;
	}

	#conactEmail {
		padding: 10% 0;
	}

	.legal {
		padding: 4% 0 8% 0;	
	}

	.legal span {
		font-size: 3vw;
	}

	.past-marker {
		inset: 49% 0rem 0%;
		transform: rotate(48deg);
	}

	.more a[class*="btn-"] {
		padding: 0;
	}

	.more a[class*="btn-"] {
		position: relative;
		margin-top: 4%;
		color: #ccc;
		background-color: #000;
		padding-left: 0;
	}

	.more a[class*="btn-"].active,
	.more a[class*="btn-"]:hover,
	.more a[class*="btn-"]:active,
	.more a[class*="btn-"]:focus {
		z-index: 9;
	}

	a.btn-buy.buy {
		background-color: #7db7f7;
		padding: 2% 10%;
	}

	.title {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		padding-bottom: 4%;
	}

}

@media (max-width: 480px) {


	button:after {
		display: none;
	}

	button:hover{
		padding-right: 0;
		padding-left: 0;
	}

	button:hover:after {
		opacity: 0;
		right: 0;
	}



}

@media screen and (max-aspect-ratio: 1/1) {}

@media only screen and (orientation: landscape) {}

/*/////////////////////////////// end /*/