/**
 * summerfair2025用
 */

/* loader */
.p-loader {
	display: block;
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
	background-color: #fff;
}

.p-loader__inner {
	position: relative;
	width: 100%;
	height: 100%;
}

.p-loader__bg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.p-loader__bg-image {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.p-loader__bg-image-inner {
	width: 214.814vh;
	height: 100vh;
	animation: bgScrollPc 30s linear;
}

.p-loader__bg-image-inner img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 991px) {

	.p-loader__bg-image-inner {
		animation: bgScrollSp 30s linear;
	}
	
}

@keyframes bgScrollPc {

	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(calc(-100% + 100vw));
	}

}

@keyframes bgScrollSp {

	0% {
		transform: translateX(-20%);
	}

	100% {
		transform: translateX(calc(-100%));
	}

}

.p-loader__bg-animation {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 100;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 700px;
}

@media screen and (max-width: 991px) {

	.p-loader__bg-animation {
		width: 70%;
		max-width: 537px;
	}

}

@media screen and (max-width: 575px) {

	.p-loader__bg-animation {
		width: 90%;
	}

}


/* content */
.p-sf2025-content {
	padding-bottom: 16rem;
}

@media screen and (max-width: 991px) {

	.p-sf2025-content {
		padding-bottom: 8rem;
	}
	
}

/* header */
.p-sf2025-header {
	background: url(../img/bg_header_summerfesta2025_pc.jpg) no-repeat center center / cover;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	max-width: 1500px;
	min-height: 48rem;
	padding: 8.4rem 6rem 3.6rem;
	margin-right: auto;
	margin-left: auto;
}

.p-sf2025-header__date {
	font-size: 3.2rem;
	font-weight: 500;
	margin-top: 1.25em;
	color: #fff;
	text-align: center;
}

.p-sf2025-header__date span:not([class]) {
	font-size: 1.5em;
}

.p-sf2025-header__place {
	font-size: 1.8rem;
	font-weight: 500;
	color: #fff;
	text-align: center;
	letter-spacing: 0.09em;
}

.p-sf2025-header__place span {
	font-size: 1.444em;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 991px) {

	.p-sf2025-header {
		background: url(../img/bg_header_summerfesta2025_sp.jpg) no-repeat center center / cover;
		min-height: auto;
		padding: 6.4rem 5.6rem 4.8rem;
		width: calc(100% - 3rem);
		margin-right: auto;
		margin-left: auto;
	}

	.p-sf2025-header__date {
		font-size: 2rem;
	}

	.p-sf2025-header__place {
		font-size: 1.6rem;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-header {
		padding: 6.4rem 2.2rem 4.8rem;
	}

}


/* body */
.p-sf2025-body {
	margin: 8rem auto;
	max-width: 1500px;
}

@media screen and (max-width: 1499px) {

	.p-sf2025-body {
		overflow: hidden;
	}

}

@media screen and (max-width: 991px) {
	
	.p-sf2025-body {
		margin-top: 4rem;
	}

}

@media screen and (max-width: 575px) {
	
	.p-sf2025-body {
		margin-top: 3rem;
	}

}


/* intro */
.p-sf2025-intro {}

.p-sf2025-intro .container {
	width: calc(100% - 3rem);
	max-width: 88rem;
	margin-right: auto;
	margin-left: auto;
}

.p-sf2025-intro__heading {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.8;
}

.p-sf2025-intro__description {
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.9;
	/*border-bottom: 1px solid #ebebeb;*/
	margin-top: 3em;
	margin-bottom: 4.266em;
	/*padding-bottom: 4.266em;*/
}

.p-sf2025-intro__sub-heading {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.3;
}

@media screen and (min-width: 992px) {

}

@media screen and (max-width: 991px) {
	
	.p-sf2025-intro__heading {
		font-size: 2.2rem;
	}

	.p-sf2025-intro__description {
		font-size: 1.4rem;
		margin-top: 2.1em;
		margin-bottom: 2.3em;
		padding-bottom: 2.3em;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-intro .container {
		width: 100%;
	}

	.p-sf2025-intro__description {
		margin-top: 1.4em;
		margin-bottom: 2em;
		padding-bottom: 2em;
	}

}

/*追加*/

/*追加*/



/*.p-sf2025-brand-list__item {
	width: 16.66% !important;
}*/

/*/////////////////////ブランド一覧////////////////////*/



.p-sf2025-brandlist .container {
	width: calc(100% - 3rem);
	max-width: 100rem;
	margin-right: auto;
	margin-left: auto;
}

.p-sf2025-brandlist__heading {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.8;
}

.p-sf2025-brandlist__description {
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.9;
	border-bottom: 1px solid #ebebeb;
	margin-top: 3em;
	margin-bottom: 4.266em;
	padding-bottom: 4.266em;
}

.p-sf2025-brandlist__sub-heading {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.3;
}

@media screen and (min-width: 992px) {

}

@media screen and (max-width: 991px) {
	
	.p-sf2025-brandlist__heading {
		font-size: 2.2rem;
	}

	.p-sf2025-brandlist__description {
		font-size: 1.4rem;
		margin-top: 2.1em;
		margin-bottom: 2.3em;
		padding-bottom: 2.3em;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-brandlist .container {
		width: 100%;
	}

	.p-sf2025-brandlist__description {
		margin-top: 1.4em;
		margin-bottom: 2em;
		padding-bottom: 2em;
	}

}
.p-sf2025-brand-list {
	/* border-top: 1px solid #ebebeb; */
	/* border-left: 1px solid #ebebeb; */
	margin-top: 2rem;
	display: flex;
	flex-wrap: wrap;
}

.p-sf2025-brand-list__item {
	/*width: 20%;*/
	width: 16.66% !important;
	/* border-right: 1px solid #ebebeb; */
	/* border-bottom: 1px solid #ebebeb; */
}

.p-sf2025-brand-list__item>a {
	display: block;
	padding: 1.6rem;
}

.p-sf2025-brand-list__item>a img {
	transition: opacity 0.3s linear;
}

.p-sf2025-brand-list__item>a:hover img {
	opacity: 0.6;
}

@media screen and (max-width: 991px) {

	.p-sf2025-brand-list__item>a {
		padding: 1rem;
	}

}

@media screen and (max-width: 767px) {

	.p-sf2025-brand-list__item>a {
		padding: 0.5rem;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-brand-list__item {
		width: 33.333% !important;
	}

}


/* lineup */
.p-sf2025-lineup {
	margin-top: 12rem;
}

.p-sf2025-lineup__group:not(:first-child) {
	margin-top: 14.6rem;
}

.p-sf2025-lineup__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
}

.p-sf2025-lineup__header:after {
	content: '';
	display: block;
	width: 119rem;
	height: 48rem;
	background-color: #f8f8f8;
	position: absolute;
	top: 10rem;
	right: -19.5rem;
	z-index: -2;
}

.p-sf2025-lineup__heading {
	display: flex;
	align-items: flex-start;
	font-family: 'Montserrat';
	font-size: 2.8rem;
	font-style: italic;
	font-weight: 500;
	text-transform: uppercase;
	position: relative;
	line-height: 0.8;
	letter-spacing: 0.056em;
	padding: 3.6rem 8rem 3.6rem 0;
	flex: 0 0 auto;
}

.p-sf2025-lineup__heading:before {
	content: '';
	display: block;
	width: calc(100% + 19.5rem);
	height: 100%;
	background: rgba(10, 130, 230, 0.3);
	position: absolute;
	top: 0;
	left: -19.5rem;
	z-index: -1;
}

.p-sf2025-lineup__heading:after {
	content: '';
	display: block;
	width: 34rem;
	height: 2px;
	background-color: #2276e8;
	position: absolute;
	top: calc(100% + 40px);
	left: 0;
	z-index: 2;
	transform: rotate(-45deg);
	transform-origin: left center;
}

.p-sf2025-lineup__heading span {
	font-size: 4.285em;
	font-weight: 700;
	color: #fff;
	margin-left: 3.2rem;
	letter-spacing: 0;
}

.p-sf2025-lineup__body {
	margin-top: 8rem;
}

.p-sf2025-lineup__header-aside {
	margin-left: 10.5rem;
	padding-top: 5rem;
	/* width: 57.657%;
	max-width: 64rem; */
}

.p-sf2025-lineup__sub-heading {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.8;
}

.p-sf2025-lineup__description {
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.9;
	margin-top: 2.8em;
}

@media screen and (max-width: 991px) {

	.p-sf2025-lineup {
		margin-top: 6.7rem;
	}

	.p-sf2025-lineup .container {
		width: calc(100% - 3rem);
		max-width: 88rem;
	}

	.p-sf2025-lineup__group:not(:first-child) {
		margin-top: 8rem;
	}

	.p-sf2025-lineup__header {
		display: block;
	}

	.p-sf2025-lineup__header:after {
		display: none;
	}

	.p-sf2025-lineup__header-aside {
		margin-left: 0;	
		padding-top: 3.6rem;
	}

	.p-sf2025-lineup__heading {
		font-size: 2.4rem;
		padding: 2rem;
		align-items: center;
		justify-content: center;
	}

	.p-sf2025-lineup__heading span {
		font-size: 3.2em;
	}

	.p-sf2025-lineup__heading:before {
		width: 100%;
		left: 0;
	}

	.p-sf2025-lineup__heading:after {
		width: 20.4rem;
		top: calc(100% + 20px);
		left: calc(50% - 60px);
	}

	.p-sf2025-lineup__sub-heading {
	}

	.p-sf2025-lineup__description {
		font-size: 1.4rem;
		margin-top: 1.4em;
	}

	.p-sf2025-lineup__body {
		margin-top: 4.8rem;
	}

}

@media screen and (max-width: 991px) {

	.p-sf2025-lineup .container {
		width: 100%;
	}

}


/* item */
/* 商品表示（大） */
.p-sf2025-lineup__item.-lg {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail {
	position: relative;
	width: 57.657%;
	flex: 0 0 auto;
}

.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail:before {
	content: '';
	display: block;
	padding-top: 75%;
}

.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail>div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail>div img {
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
	height: 100%;
}

.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
	margin-left: 11rem;
}

@media screen and (max-width: 1499px) {

	.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail {
		width: 50%;
	}

	.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
		margin-left: 8rem;
	}	

}

@media screen and (max-width: 1199px) {

	.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
		margin-left: 6rem;
	}	

}

@media screen and (max-width: 991px) {

	.p-sf2025-lineup__item.-lg {
		display: block;
		max-width: 56rem;
		margin-right: auto;
		margin-left: auto;
	}

	.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail {
		width: 100%;
	}

	.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
		background-color: #f8f8f8;
		margin-left: 0;
		padding: 3rem;
	}

	.p-sf2025-lineup__item.-lg .p-sf2025-more-btn {
		margin-right: auto !important;
		margin-left: auto !important;
	}

}

@media screen and (max-width: 575px) {
	.p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-thumbnail:before {
		padding-top: 90%;
	}
}


/* 偶数番目グループ */
.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header {
	flex-direction: row-reverse;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header:after {
	right: auto;
	left: -19.5rem;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__heading {
	padding-right: 0;
	padding-left: 8rem;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__heading:before {
	left: auto;
	right: -19.5rem;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__heading:after {
	left: 8rem;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header-aside {
	margin-right: 10.5rem;
	margin-left: 0;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__item.-lg {
	flex-direction: row-reverse;
}

.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
	margin-right: 11rem;
	margin-left: 0;
}

@media screen and (max-width: 1499px) {

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header-aside {
		margin-left: 8rem;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header-aside {
		margin-right: 8rem;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
		margin-right: 8rem;
	}

}

@media screen and (max-width: 1199px) {

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header-aside {
		margin-left: 6rem;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header-aside {
		margin-right: 6rem;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
		margin-right: 6rem;
	}

}

@media screen and (max-width: 991px) {

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__heading {
		padding: 2rem;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__heading:before {
		left: 0;
		right: auto;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__heading:after {
		left: calc(50% - 60px);	
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__header-aside {
		margin-right: 0;
		margin-left: 0;
	}

	.p-sf2025-lineup__group:nth-child(2n) .p-sf2025-lineup__item.-lg .p-sf2025-lineup__item-text {
		margin-right: 0;
	}

}


/* 商品表示（PC:2列・写真テキスト横並び / SP:横スクロール・写真テキスト縦並び） */
.p-sf2025-lineup__list {
	display: flex;
	flex-wrap: wrap;
}

.p-sf2025-lineup__list.-sm {
	margin-right: -7.5rem;
	margin-left: -7.5rem;
}

.p-sf2025-lineup__item.-sm {
	margin-top: 11.2rem;
	padding-right: 7.5rem;
	padding-left: 7.5rem;
	width: 50%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
}

.p-sf2025-lineup__item.-sm .p-sf2025-lineup__item-thumbnail {
	position: relative;
	width: 41.666%;
	flex: 0 0 auto;
}

.p-sf2025-lineup__item.-sm .p-sf2025-lineup__item-thumbnail:before {
	content: '';
	display: block;
	padding-top: 150%;
}

.p-sf2025-lineup__item.-sm .p-sf2025-lineup__item-thumbnail>div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.p-sf2025-lineup__item.-sm .p-sf2025-lineup__item-thumbnail>div img {
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
	height: 100%;
}

.p-sf2025-lineup__item.-sm .p-sf2025-lineup__item-text {
	margin-right: 2rem;
}

@media screen and (max-width: 1499px) {

	.p-sf2025-lineup__list.-sm {
		margin-right: -5rem;
		margin-left: -5rem;
	}

	.p-sf2025-lineup__item.-sm {
		margin-top: 8rem;
		padding-right: 5rem;
		padding-left: 5rem;
	}
	
}


/* 商品表示（PC:3列・写真テキスト縦並び / SP:横スクロール・写真テキスト縦並び） */
.p-sf2025-lineup__list.-md {
	margin-right: -4.1rem;
	margin-left: -4.1rem;
}

.p-sf2025-lineup__item.-md {
	margin-top: 11.2rem;
	padding-right: 4.1rem;
	padding-left: 4.1rem;
	width: 33.333%;
	text-align: center;
}


.p-sf2025-lineup__item.-md .p-sf2025-lineup__item-text {
	margin-top: 3.5rem;
}

.p-sf2025-lineup__item.-md .p-sf2025-more-btn {
	margin-right: auto !important;
	margin-left: auto !important;
}

@media screen and (max-width: 1499px) {

	.p-sf2025-lineup__list.-md {
		margin-right: -3.6rem;
		margin-left: -3.6rem;
	}

	.p-sf2025-lineup__item.-md {
		padding-right: 3.6rem;
		padding-left: 3.6rem;
	}

}

@media screen and (max-width: 992px) {

	.p-sf2025-lineup__item.-md .p-sf2025-lineup__item-thumbnail {
		width: 100%;
		position: relative;
	}

	.p-sf2025-lineup__item.-md .p-sf2025-lineup__item-thumbnail:before {
		content: '';
		display: block;
		padding-top: 150%;
	}

	.p-sf2025-lineup__item.-md .p-sf2025-lineup__item-thumbnail > div {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.p-sf2025-lineup__item.-md .p-sf2025-lineup__item-thumbnail > div img {
		-o-object-fit: cover;
		   object-fit: cover;
		width: 100%;
		height: 100%;
	}

}


/* 商品表示（SP:横スクロール・写真テキスト縦並び） */
@media screen and (max-width: 991px) {

	.p-sf2025-lineup__list.-sp-scroll {
		margin-right: -3rem;
		margin-left: 0;
		padding-bottom: 2rem;
		display: flex;
		flex-wrap: nowrap;
		overflow-y: scroll;
		-webkit-overflow-scrolling: scroll;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-lineup__item {
		margin-top: 4.8rem;
		padding-right: 0;
		padding-left: 0;
		display: block;
		width: 28.8rem;
		flex: 0 0 auto;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-lineup__item {
		padding-right: 2.4rem;
		padding-left: 2.4rem;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-lineup__item .p-sf2025-lineup__item-thumbnail {
		width: 100%;
		position: relative;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-lineup__item .p-sf2025-lineup__item-text {
		margin-top: 2.8rem;
		margin-right: 0;
		text-align: left;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-lineup__item-name {
		margin-top: 0.8em;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-lineup__item-price {
		margin-top: 0.8em;
	}

	.p-sf2025-lineup__list.-sp-scroll .p-sf2025-more-btn {
		margin-right: auto;
		margin-left: auto;
	}

}


/* 商品表示（SP:1列・写真テキスト横並び） */
@media screen and (max-width: 991px) {

	.p-sf2025-lineup__list.-sp-horizontal {
		display: block;
		width: 100%;
		max-width: 56rem;
		margin-right: auto;
		margin-left: auto;
	}

	.p-sf2025-lineup__list.-sp-horizontal .p-sf2025-lineup__item.-sm {
		width: 100%;
		margin-top: 4.8rem;
		padding-right: 3rem;
		padding-left: 3rem;
	}

	.p-sf2025-lineup__list.-sp-horizontal .p-sf2025-lineup__item.-left {
		flex-direction: row;
	}

	.p-sf2025-lineup__list.-sp-horizontal .p-sf2025-lineup__item.-left .p-sf2025-lineup__item-text {
		margin-right: 0;
		margin-left: 2rem;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-lineup__list.-sp-horizontal .p-sf2025-lineup__item.-sm {
		padding-right: 0;
		padding-left: 0;
	}

}


/* 商品表示（SP:2列・写真テキスト縦並び） */
@media screen and (max-width: 991px) {

	.p-sf2025-lineup__list.-sp-vertical {
		width: 100%;
		max-width: 56rem;
		margin-right: auto;
		margin-left: auto;
		justify-content: space-between;
	}

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-lineup__item {
		display: block;
		margin-top: 4.8rem;
		padding-right: 0;
		padding-left: 0;
		width: calc(50% - 1.25rem);
	}

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-lineup__item-thumbnail {
		width: 100%;
	}

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-lineup__item-text {
		margin-right: 0;
		margin-top: 2.4rem;
	}

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-lineup__item-name {
		margin-top: 0.8em;
	}

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-lineup__item-price {
		margin-top: 0.8em;
	}

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-more-btn {
		margin-right: auto;
		margin-left: auto;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-lineup__list.-sp-vertical .p-sf2025-more-btn {
		width: 100%;
	}


}


/* 商品テキスト */
.p-sf2025-lineup__item-brand span {
	display: block;
}

.p-sf2025-lineup__item-brand-en {
	font-size: 1.5rem;
	font-weight: 700;
}

.p-sf2025-lineup__item-brand-ja {
	color: #9a9a9a;
	font-size: 1.2rem;
	font-weight: 500;
}

.p-sf2025-lineup__item-name {
	font-size: 1.5rem;
	font-weight: 700;
	margin-top: 1.1em;
	line-height: 1.8;
}

.p-sf2025-lineup__item-description {
	font-size: 1.2rem;
	line-height: 2;
	margin-top: 0.9em;
}

.p-sf2025-lineup__item-price {
	font-size: 1.5rem;
	margin-top: 1em;
}

.p-sf2025-more-btn {
	transition: all .3s ease;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	font-feature-settings: "palt";
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 700;
	width: 11.428em;
	height: 2.857em;
	background-color: #2d2d2d;
	color: #fff !important;
}

@media screen and (max-width: 991px) {

	.p-sf2025-more-btn {
		width: 12.857em;
		height: 3.4285em;
	}


}


/* 20220720 スライダー追加 */
.p-fair-banner-slider__item.-border {
	/*border: 1px solid #666;*/
}

.p-fair-banner-slider .owl-dots {
	margin-top: 1rem;
	text-align: center;
}

.p-fair-banner-slider .owl-dot {
	width: 1.4rem;
	height: 1.4rem;
	background: #666 !important;
	border-radius: 50%;
	margin-right: 0.5rem;
	margin-left: 0.5rem;
}

.p-fair-banner-slider .owl-dot.active {
	background: #eee !important;
}

@media screen and (max-width: 991px) {

	.p-fair-banner-slider .owl-dot {
		width: 1.2rem;
		height: 1.2rem;
		margin-right: 0.4rem;
		margin-left: 0.4rem;	
	}

}

@media screen and (max-width: 575px) {

	.p-fair-banner .container {
		padding-right: 0;
		padding-left: 0;
	}
	
}


/* summerfesta2025用 */
/* loader */
.p-loader {
	display: block;
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
	background-color: #fff;
}

.p-loader__inner {
	position: relative;
	width: 100%;
	height: 100%;
}

.p-loader__bg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.p-loader__bg-image {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.p-loader__bg-image-inner {
	width: 214.814vh;
	height: 100vh;
	animation: bgScrollPc 30s linear;
}

.p-loader__bg-image-inner img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 991px) {

	.p-loader__bg-image-inner {
		animation: bgScrollSp 30s linear;
	}
	
}

@keyframes bgScrollPc {

	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(calc(-100% + 100vw));
	}

}

@keyframes bgScrollSp {

	0% {
		transform: translateX(-20%);
	}

	100% {
		transform: translateX(calc(-100%));
	}

}

.p-loader__logo {
	position: fixed;
	top: 48%;
	left: 50%;
	z-index: 100;
	transform: translate(-50%, -50%);
	width: 78rem;
}

@media screen and (max-width: 991px) {
	.p-loader__logo {
		width: 50rem;
	}
}

@media screen and (max-width: 767px) {
	.p-loader__logo {
		width: 85vw;
		max-width: 40rem;
	}
}

.p-loader__logo-inner {
	animation: 1s fadeUp 1.5s ease-in-out forwards;
	opacity: 0;
	visibility: hidden;
	transform: translateY(6rem);
}

.p-loader__logo-inner img {
	width: 100%;
	height: auto;
}

@keyframes fadeUp {

	0% {
		opacity: 0;
		visibility: hidden;
		transform: translateY(6rem);
	}

	100% {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}

}

/* content */
.p-sf2025-content {
	padding-bottom: 16rem;
}

@media screen and (max-width: 991px) {

	.p-sf2025-content {
		padding-bottom: 8rem;
	}
	
}

/* header */
.p-sf2025-header {
	background: url(../img/bg_header_summerfesta2025_pc.webp) no-repeat center center / cover;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	max-width: 1500px;
	min-height: 48rem;
	padding: 8.4rem 6rem;
	margin-right: auto;
	margin-left: auto;
}

.p-sf2025-header__heading img {
	width: 100%;
	height: auto;
}

.p-sf2025-header__date {
	font-size: 3.2rem;
	font-weight: 500;
	margin-top: 1em;
	color: #fff;
	text-align: center;
}

.p-sf2025-header__date span:not([class]) {
	font-size: 1.5em;
}

.p-sf2025-header__place {
	font-size: 1.8rem;
	font-weight: 500;
	color: #fff;
	text-align: center;
	letter-spacing: 0.09em;
}

.p-sf2025-header__place span {
	font-size: 1.444em;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 991px) {

	.p-sf2025-header {
		background: url(../img/bg_header_summerfesta2025_sp.webp) no-repeat center center / cover;
		min-height: auto;
		padding: 6.4rem 5.6rem 4.8rem;
		width: calc(100% - 3rem);
		margin-right: auto;
		margin-left: auto;
	}

	.p-sf2025-header__date {
		font-size: 2rem;
	}

	.p-sf2025-header__place {
		font-size: 1.6rem;
	}

}

@media screen and (max-width: 575px) {

	.p-sf2025-header {
		padding: 6.4rem 2.2rem 4.8rem;
	}

}
