@charset "UTF-8";

/*=========================================================
	Header
=========================================================*/
.site-header{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	transition-property: transform;
	background-color: #fff;
	transition-duration: 0.3s;
	z-index: 1000;
}

/*조건값*/
.site-header.is-Up{
	transform:translateY(-110%);
}

.site-header.is-Down{
	transform: translateY(0);
}

.is-homeHd .site-header.is-Down{
	transform: translateY(0);
}

.HeaderInfo{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.HeaderMeta{
	display:flex;
	align-items:center;
}

.HeaderMetaInfo-item{
	position:relative;
}

@media screen and (min-width: 1025px) {
	.home .site-header{
		transform:translateY(-100%);
	}
}

/*=========================================================
	Header : PC
=========================================================*/
@media screen and (min-width:1025px){
	/*	Logo
	=========================================================*/
	.Logo-link{
		display:block;
		width: 11.5rem;
		height: 2.313rem;
		background-image:url(../../images/logo/logo.png);
		background-size:100% 100%;
	}

	/*	HeaderMetaBtn
	=========================================================*/
	.HeaderMetaBtn{
		width: 5.813rem;
		height: 5.813rem;
		display:block;
		background-color:#000;
		position:relative;
		margin-right:-3.75rem;
	}

	.HeaderMetaBtn:after{
		content:"";
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-50%, -50%);
		background-image:url(../../images/icon/ico_header_payment.svg);
		background-size:100% 100%;
		width: 2.375rem;
		height: 1.813rem;
	}
	
	/*	HeaderMetaInfo
	=========================================================*/
	.HeaderMetaInfo{
		margin-right:2.5rem;
		font-size:0;
		line-height:0;
	}
	
	.HeaderMetaInfo-item{
		display:inline-block;
		vertical-align:middle;
	}
	
	.HeaderMetaInfo-item + .HeaderMetaInfo-item{
		margin-left:1.25rem;
	}
	
	.HeaderMetaInfo-link{
		width:1.5rem;
		height:1.5rem;
		background-size:100% 100%;
		display:block;
	}
	
	.HeaderMetaInfo-item.Menu{
		display:none;
	}
	
	.User .HeaderMetaInfo-link{
		background-image:url(../../images/icon/ico_header_user.svg);
	}
	
	.Notice .HeaderMetaInfo-link{
		background-image:url(../../images/icon/ico_header_arlam.svg);
	}

	/*	SiteMenu
	=========================================================*/
	.SiteMenuHead{
		display:none;
	}
	
	.SiteMenuInfo{
		display:none;
	}
	
	.SiteMenu{
		position:absolute;
		bottom:0;
		left:13rem;
		right:13rem;
		padding-bottom:1.125rem;
	}

	.SiteMenuInner .primary-menu-container{
		text-align:center;
		font-size:0;
		line-height:0;
		margin:0 -1.25rem;
	}

	.SiteMenuInner .menu-item{
		display:inline-block;
		padding:0 1.563rem;
	}

	.SiteMenuInner .menu-item > a{
		font-size: 1.125rem;
		line-height:1.2em;
		color:#000;
		font-weight:700;
		display:block;
		position:relative;
	}

	.MenuBullet{
		width: 2rem;
		height: 2rem;
		background-size:100% 100%;
		position:absolute;
		bottom:1.75rem;
		left:50%;
		transform:translateX(-50%);
	}
	
	.MenuBullet.Ds{
		background-image:url(../../images/icon/ico_ds_bullet.svg);
	}
	
	.MenuBullet.Ss{
		background-image:url(../../images/icon/ico_ss_bullet.svg);
	}
	
	.MenuBullet.Sv{
		background-image:url(../../images/icon/ico_s_bullet.svg);
	}
	
	.MenuBullet.Cl{
		background-image:url(../../images/icon/ico_cl_bullet.svg);
	}
}

@media screen and (max-width:1280px) and (min-width:1025px){
	.SiteMenuInner .menu-item{
		padding: 0 1.125rem;
	}
}

/*=========================================================
	Header : Tablet, Mobile
=========================================================*/
@media screen and (max-width:1024px) and (min-width:1px){
	.SiteMenu{
		visibility:hidden;
		opacity:0;
	}
	
	.is-MenuOpen .SiteMenu{
		opacity:1;
		visibility:visible;
	}
	
	.home .Logo-link{
		opacity:0;
		pointer-events: none;
		transition-property: opacity;
		transition-duration: 0.2s;
	}
	
	.home .is-homeHd .Logo-link{
		opacity:1;
		pointer-events:auto;
	}
	
	.SiteMenuHead .Logo-link{
		opacity:1 !important;
		pointer-events:auto !important;
	}
	
	/*	Logo
	=========================================================*/
	.Logo-link{
		display:block;
		width: 6.063rem;
		height:1.188rem;
		background-image:url(../../images/logo/logo.png);
		background-size:100% 100%;
	}

	/*	HeaderMetaBtn
	=========================================================*/
	.HeaderMetaBtn{
		width: 3rem;
		height: 3rem;
		display:block;
		background-color:#000;
		position:relative;
		margin-right:-1.25rem;
	}

	.HeaderMetaBtn:after{
		content:"";
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-50%, -50%);
		background-image:url(../../images/icon/ico_header_payment.svg);
		background-size:100% 100%;
		width: 1.5rem;
		height: 1.125rem;
	}
	
	/*	HeaderMetaInfo
	=========================================================*/
	.HeaderMetaInfo{
		margin-right:1rem;
		font-size:0;
		line-height:0;
	}
	
	.HeaderMetaInfo-item{
		display:inline-block;
		vertical-align:middle;
	}
	
	.HeaderMetaInfo-item + .HeaderMetaInfo-item{
		margin-left:1rem;
	}
	
	.HeaderMetaInfo-link{
		width:1.5rem;
		height:1.5rem;
		background-size:100% 100%;
		display:block;
	}
	
	.User .HeaderMetaInfo-link{
		background-image:url(../../images/icon/ico_header_user.svg);
	}
	
	.Notice .HeaderMetaInfo-link{
		background-image:url(../../images/icon/ico_header_arlam.svg);
	}
	
	.Menu .HeaderMetaInfo-link{
		background-image:url(../../images/icon/ico_header_menu.svg);
	}
	
	/*	SiteMenu
	=========================================================*/
	.SiteMenu{
		position:absolute;
		top:0;
		left:-1.25rem;
		right:-1.25rem;
		height:100vh;
		height:100svh;
		background-color:rgba(0,0,0,0.9);
		z-index:10;
	}
	
	.SiteMenuHead{
		padding:2.875rem 1.875rem;
		position:absolute;
		top:0;
		left:0;
		right:0;
		z-index:5;
	}
	
	.SiteMenu-close{
		width:2.5rem;
		height:2.5rem;
		position:absolute;
		top:50%;
		right:1.875rem;
		transform:translateY(-50%);
		background-image:url(../../images/icon/ico_head_menu_close.svg);
		background-size:100% 100%;
	}
	
	.SiteMenuFlex{
		display:flex;
		flex-direction: column;
        justify-content: space-between;
		height:100%;
		overflow:hidden;
		overflow-y:auto;
		padding-top:7.5rem;
		padding:7.5rem 1.875rem 2.813rem;
	}
	
	.SiteMenu .menu-item{
		margin-top:1.625rem;
		font-size:0;
		line-height:0;
	}
	
	.SiteMenu .menu-item:first-child{
		margin-top:0;
	}

	.SiteMenu .menu-item > a{
		font-size: 2rem;
		line-height:1.2em;
		color:#fff;
		font-weight:700;
		display:inline-block;
		position:relative;
	}
	
	.MenuBullet{
		background-size:100% 100%;
		display:inline-block;
		margin-left:0.938rem;
		position:relative;
		top:0.2rem;
		width:1.563rem;
		height:1.563rem;
	}
	
	.MenuBullet.Ds{
		background-image:url(../../images/icon/ico_ds_bullet.svg);
	}
	
	.MenuBullet.Ss{
		background-image:url(../../images/icon/ico_ss_bullet.svg);
	}
	
	.MenuBullet.Sv{
		background-image:url(../../images/icon/ico_s_bullet.svg);
	}
	
	.MenuBullet.Cl{
		background-image:url(../../images/icon/ico_cl_bullet.svg);
	}
	
	.SiteMenuInfo{
		margin-top:4rem;
	}
	
	.SiteMenuInfo-text{
		font-size:1.125rem;
		line-height:1.7em;
		color:#fff;
		margin-bottom:1.25rem;
	}
	
	.SiteMenuInfo-copy{
		position:relative;
		font-size:0.875rem;
		line-height:1.5em;
		color:#fff;
		padding-top:1.25rem;
	}
	
	.SiteMenuInfo-copy:after{
		content:"";
		width:200%;
		height:1px;
		background-color:#fff;
		position:absolute;
		top:0;
		left:0;
	}
}

/*=========================================================
	MynoticePop
=========================================================*/
.MynoticePop{
	position:absolute;
	top: 2.7rem;
    right: -0.938rem;
	background-color:#fff;
	width:19.375rem;
	max-width:calc(100vw - 2.5rem);
	overflow:hidden;
	z-index:100;
	opacity:0;
	visibility:hidden;
	box-shadow: 0px 0px 0.438rem rgb(0,0,0,0.1);
	border-radius:0.625rem;
}

.MainTopVisual .MynoticePop{
	top: 4.5rem;
}

.is-View.MynoticePop{
	opacity:1;
	visibility:visible;
}

.MynoticePopHeader{
	position:relative;
	padding:1.5rem 1.25rem;
}

.MynoticePopHeader-title{
	font-size:1rem;
	line-height:1.2em;
	color:#101010;
	font-weight:500;
}

.MynoticePopCont{
	padding:0 1.25rem;
	overflow:hidden;
	overflow:hidden;
	overflow-y:auto;
	max-height:26.25rem;
}

.MynoticePopListk-item{
	border-top:solid 1px #E2E2E2;
	padding:1.25rem 0;
}

.MynoticePopListk-item:first-child{
	border-top:none;
	padding-top:0;
}

.MynoticePopPost-title{
	font-size:0.875rem;
	line-height:1.6em;
	color:#101010;
}

.MynoticePopPost-date{
	font-size:0.875rem;
	line-height:1.2em;
	color:#666;
	margin-top:0.313rem;
}

@media screen and (min-width: 1025px) {
	.MynoticePopCont::-webkit-scrollbar {
		width: 4px;
	}
	.MynoticePopCont::-webkit-scrollbar-thumb {
		background-color: #E79B3E;
		border-radius:100px 100px;
	}
	.MynoticePopCont::-webkit-scrollbar-track {
		background-color: transparent;
	}
}

@media screen and (max-width: 767px) and (min-width: 1px) {
	.MynoticePop{
		right: -6rem;
	}
}

/*=========================================================
	MypagePop
=========================================================*/
.MypagePop{
	position:absolute;
	top: 2.7rem;
    right: -0.938rem;
	background-color:#fff;
	width:11.25rem;
	z-index:100;
	opacity:0;
	visibility:hidden;
	box-shadow: 0px 0px 0.438rem rgb(0,0,0,0.1);
	border-radius:0.625rem;
}

.MainTopVisual .MypagePop{
	top: 4.5rem;
}

.is-View.MypagePop{
	opacity:1;
	visibility:visible;
}

.MypagePopHeader{
	position:relative;
	padding:1.5rem 1.25rem 1.125rem;
}

.MypagePopHeader-title{
	font-size:1rem;
	line-height:1.2em;
	color:#101010;
}

.MypagePopHeader-name{
	font-weight:500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    vertical-align: top;
}

.MypagePopHeader-beat{
	display:block;
	font-size:1rem;
	line-height:1.2em;
	color:#101010;
	font-weight:500;
	margin-top:0.4rem;
	padding:0.25rem 0;
	padding-left:1.75rem;
	position:relative;
}

.MypagePopHeader-beattext{
	font-size:0.875rem;
}

.MypagePopHeader-beat:before{
	content:"";
	width:1.5rem;
	height:1.5rem;
	background-image:url(../../images/icon/beat_info_type.svg);
	background-size:100% 100%;
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
}

.MypagePopCont{
	padding:0px 1.25rem 1.563rem;
}

.MypagePopList{
	border-top:solid 1px #E2E2E2;
	padding-top:1.25rem;
	margin-bottom:1.25rem;
}

.MypagePopList-item{
	margin-top:0.813rem;
}

.MypagePopList-item:first-child{
	margin-top:0;
}

.MypagePopList-link{
	display:block;
	font-size:0.938rem;
	line-height:1.2em;
	color:#101010;
	font-weight:500;
}

.MypagePopMeta{
	border-top:solid 1px #E2E2E2;
	padding-top:1.25rem;
}

.MypagePopMeta-item{
	margin-top:0.563rem;
}

.MypagePopMeta-item:first-child{
	margin-top:0;
}

.MypagePopMeta-link{
	display:block;
	font-size:0.938rem;
	line-height:1.2em;
	color:#101010;
}

@media screen and (max-width: 767px) and (min-width: 1px) {
	.MypagePop{
		right: -6rem;
	}
	
	.MypagePopHeader-beat:before{
		width:1.25rem;
		height:1.25rem;
	}
	
	.MypagePopHeader-beat{
		font-size:0.875rem;
		padding-left: 1.55rem;
		margin-top: 0.25rem;
	}
	
	.MypagePopHeader-beattext{
		font-size:0.75rem;
	}
}