@charset "UTF-8";

/*=========================================================
	Layout
=========================================================*/
.site-footer{
	border-top:solid 0.063rem rgba(0,0,0,0.1);
	margin-top:7.5rem;
	background-color:#fff;
}

/*=========================================================
	FooterInfo
=========================================================*/
.FooterInfo{
	padding:2.5rem 0 4.063rem;
}
.FooterInfo-inner{
	position:relative;
	padding-right:7.25rem;
}

.FooterInfoLogo{
	float:left;
	margin-right:4.438rem;
}

.FooterInfoLogo-text{
	display:block;
	margin-top:1rem;
	font-size: 0.75rem;
    line-height: 1.5em;
    color: #2E2E2E;
}

.FooterInfoLogo-text br{
	display:none;
}

.FooterInfoList{
	overflow:hidden;
}

/*	FooterInfoLogo
=========================================================*/
.FooterInfoLogo-link{
	display:block;
	width: 12.625rem;
	height: 2.5rem;
	background-image:url(../../images/logo/logo.png);
	background-size:100% 100%;
}

/*	FooterInfoList
=========================================================*/
.FooterInfoListAbout{
	margin-bottom:1.875rem;
}

.FooterInfoListAbout-title{
	font-size:0.875rem;
	line-height:1.4em;
	color:#2E2E2E;
	font-weight:500;
	margin-bottom:0.375rem;
}

.FooterInfoListAbout-list{
	overflow:hidden;
	margin:-0.125rem 0;
}

.FooterInfoListAbout-item{
	font-size:0.875rem;
	line-height:1.7em;
	color:#2E2E2E;
	padding:0.125rem 0;
	float:left;
}

.FooterInfoListAbout-item:nth-child(3){
	clear:both;
	margin-right:1.375rem;
}

.FooterInfoListAbout-item:nth-child(1){
	margin-right:1.375rem;
}

.FooterInfoListAbout-item:last-child{
	clear:both;
}

.FooterInfoListMenu-list{
	overflow:hidden;
	margin:-0.125rem 0;
}

.FooterInfoListMenu-item{
	float:left;
	padding:0.125rem 0;
	padding-right:0.75rem;
	margin-right:0.688rem;
	position:relative;
}

.FooterInfoListMenu-item:after{
	content:"";
	width:0.063rem;
	height:0.75rem;
	background-color:#2E2E2E;
	position:absolute;
	top:50%;
	right:0;
	transform:translateY(-50%);
}

.FooterInfoListMenu-item:last-child{
	margin-right:0;
	padding-right:0;
}

.FooterInfoListMenu-item:last-child:after{
	display:none;
}

.FooterInfoListMenu-link{
	display:block;
	font-size:0.875rem;
	line-height:1.4em;
	color:#2E2E2E;
	font-weight:500;
}

@media screen and (min-width: 64.063rem) {
	.FooterInfoListMenu-link:hover{
		text-decoration:underline;
	}
}

/*	FooterInfoSNS
=========================================================*/
.FooterInfoSNS{
	position:absolute;
	top:0;
	right:0;
}

.FooterInfoSNS-list{
	overflow:hidden;
}

.FooterInfoSNS-item{
	float:left;
	margin-right:0.688rem;
}

.FooterInfoSNS-item:last-child{
	margin-right:0;
}

.FooterInfoSNS-link{
	display:block;
	width:1.25rem;
	height:1.25rem;
	background-size:100% 100%;
}

/*icon*/
.pinterest .FooterInfoSNS-link{
	background-image:url(../../images/icon/ico_pinterest.svg);
}

.instargram .FooterInfoSNS-link{
	background-image:url(../../images/icon/ico_instargram.svg);
}

.facebook .FooterInfoSNS-link{
	background-image:url(../../images/icon/ico_facebook.svg);
}

.blog .FooterInfoSNS-link{
	background-image:url(../../images/icon/ico_blogs.svg);
}

.youtube .FooterInfoSNS-link{
	background-image:url(../../images/icon/ico_youtube_f.svg);
}

.tiktok .FooterInfoSNS-link{
	background-image:url(../../images/icon/ico_tiktok_f.svg);
}

/*=========================================================
	FooterBottom
=========================================================*/
.FooterBottom{
	padding:0 0 2.125rem;
}

.FooterBottom-inner{
	width:100%;
	display:flex;
	align-items:center;
	justify-content:space-between;
}

/*	FooterBottomMenu
=========================================================*/
.FooterBottomMenu{
	padding-right:1.875rem;
}

.FooterBottomMenu-list{
	overflow:hidden;
	margin:-0.125rem -1rem;
}

.FooterBottomMenu-item{
	float:left;
	padding:0.125rem 1rem;
}

.FooterBottomMenu-link{
	font-size:0.875rem;
	line-height:1.4em;
	color:#101010;
	font-weight:500;
	opacity:0.5;
	display:block;
}

.text-bold .FooterBottomMenu-link{
	opacity:1;
}

/*	FooterBottomCopy
=========================================================*/
.FooterBottomCopy{
	font-size:0.875rem;
	line-height:1.6em;
	color:#727272;
	text-align:right;
}

/*Responsive*/
@media screen and (max-width: 1024px) and (min-width: 1px) {
	.site-footer{
		margin-top:5rem;
	}
	
	.FooterInfo{
		padding:1.25rem 0 2.5rem;
	}
	
	.FooterInfoLogo{
		margin-right: 3.438rem;
	}
	
	.FooterInfoLogo-link{
		width:8.375rem;
		height:1.688rem;
	}
	
	.FooterInfoListAbout{
		margin-bottom:1.25rem;
	}
	
	.FooterInfoListAbout-title{
		font-size:0.875rem;
	}
	
	.FooterInfoListAbout-item{
		font-size:0.875rem;
	}

	.FooterBottomMenu-list{
		margin:-0.313rem -0.875rem
	}
	
	.FooterBottomMenu-item{
		padding: 0.313rem 0.875rem;
	}
}

@media screen and (max-width: 767px) and (min-width: 1px) {
	.FooterInfo{
		padding:1.25rem 0;
	}
	
	.FooterInfoLogo{
		float:none;
		margin-right:0;
		margin-bottom:1.25rem;
	}
	
	.FooterInfo-inner{
		padding-right:0;
	}
	
	.FooterInfoSNS{
		position:static;
		margin-top:1.25rem;
	}
	
	.FooterBottom-inner{
		border-top:solid 1px #d9d9d9;
		padding-top:1.25rem;
	}
	
	.FooterBottom-inner{
		display:block;
	}
	
	.FooterBottomCopy{
		text-align:left;
		margin-top:1.25rem;
	}
}

/*=========================================================
	PageError 
=========================================================*/
body.error404 .site-footer{
	display:none;
}

body.error404 .site-content{
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top:0;
}

.PageError{
	text-align: center;
	width:100%;
}

.PageError-ico{
	width:25rem;
	max-width:100%;
	line-height:0;
	margin:0 auto 2rem;
}

.PageError-title{
	color:#000;
	font-size:2.75rem;
	font-weight:bold;
	line-height:1.4em;
}
.PageError-text{
	margin-top:0.938rem;
	color:#000;
	font-size:1.063rem;
	line-height:1.4em;
}
.PageErrorBtn{
	margin-top:5.625rem;
	font-size:0;
	line-height:0;
}
.PageErrorBtn-link{
	display:inline-block;
	padding:1rem 2.75rem;
	line-height:1.2em;
	color:#000;
	font-size:1rem;
	font-weight:600;
	border: 2px solid #000;
}

/*responsive*/
@media screen and (max-width: 1024px) and (min-width: 768px){
	.PageErrorBtn{
		margin-top: 3.625rem;
	}
}

@media screen and (max-width:767px) and (min-width:1px){
	.PageError-title{
		font-size: 2rem;
	}
	
	.PageErrorBtn{
		margin-top: 3.25rem;
	}
}

/*=========================================================
	EventPopup
=========================================================*/
.EventPopup{
	position:fixed;
	right:1.25rem;
	bottom:1.25rem;
	max-width:25rem;
	width:calc(100% - 2.5rem);
	background-color:#fff;
	border:solid 4px #fff;
	box-shadow: 0 0.188rem 0.875rem rgba(0, 0, 0, 0.4);
	border-radius:0.625rem;
	overflow:hidden;
	transform:translateY(110%);
	transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: var(--custom-easing);
	z-index:4000;
}

.is-View.EventPopup{
	transform:translateY(0);
}

.EventPopupBody{
	border-radius:0.5rem;
	overflow:hidden;
	font-size:1rem;
	line-height:1.7em;
	color:#101010;
}

.EventPopupBody p + p{
	margin-top:0.625rem;
}

.EventPopupBody img{
	display:block;
	width:100%;
}

.EventPopupMeta{
	padding:0.75rem 0;
}

.EventPopupMeta-inner{
	display:flex;
	align-items:center;
	justify-content:end;
}

.EventPopupMeta-link{
	display:block;
	font-size:0.813rem;
	line-height:1.2em;
	color:#101010;
	padding:0 0.938rem;
	font-weight:500;
}

.EventPopupMeta-item + .EventPopupMeta-item{
	border-left:solid 1px #ddd;
}

.EventPopupHeader{
	font-size: 1.125rem;
    line-height: 1.5em;
    color: #101010;
	font-weight:700;
	padding:0.625rem 0.625rem;
}

.TypeText .EventPopupBody{
	padding:0 0.625rem;
}

/*Content*/
.TypeText .EventPopupBody a{
	color:#101010;
	text-decoration:underline;
}

.TypeText .EventPopupBody img{
	border-radius:0.5rem;
}
