@charset "UTF-8";
/*****************************************************
base
*****************************************************/

body {
	background: #a3c5e8;
}

a {
	cursor: pointer;
	transition: .3s;
}

a:hover {
	cursor: pointer;
	text-decoration: none;
	opacity: 0.7;
}

a:active {
	text-decoration: none;
}

#fair p {
	letter-spacing: 0;
}

.animation {
	opacity: 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(80px);
}

.active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.fadein {
	opacity: 0;
	transform: translateY(5px);
	transition: all 1.0s;
}

.fadein.show {
	opacity: 1;
	transform: translateY(0);
}

.fadein.show:nth-of-type(1) {
	transition-delay: 0.2s;
}

.fadein.show:nth-of-type(2) {
	transition-delay: 0.6s;
}

.fadein.show:nth-of-type(3) {
	transition-delay: 0.8s;
}

.fadein.show:nth-of-type(4) {
	transition-delay: 1s;
}

.fadein.show:nth-of-type(5) {
	transition-delay: 1.2s;
}

.fadein.show:nth-of-type(6) {
	transition-delay: 1.4s;
}

.fadein.show:nth-of-type(7) {
	transition-delay: 1.6s;
}

.fadein.show:nth-of-type(8) {
	transition-delay: 1.8s;
}

.fadein.show:nth-of-type(9) {
	transition-delay: 2s;
}

.fadein.show:nth-of-type(10) {
	transition-delay: 2.2s;
}

.fadein.show:nth-of-type(11) {
	transition-delay: 2.4s;
}

.fadein.show:nth-of-type(12) {
	transition-delay: 2.6s;
}

.fadein.show:nth-of-type(13) {
	transition-delay: 2.8s;
}

.fadein.show:nth-of-type(14) {
	transition-delay: 3s;
}

.fadein.show:nth-of-type(15) {
	transition-delay: 3.2s;
}

.fadein.show:nth-of-type(16) {
	transition-delay: 3.4s;
}

.fadein.show:nth-of-type(17) {
	transition-delay: 3.6s;
}

.fadein.show:nth-of-type(18) {
	transition-delay: 3.8s;
}

.fadein.show:nth-of-type(19) {
	transition-delay: 4s;
}

.mt30 {
	margin-top: 30px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb-30 {
	margin-bottom: -30px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.txt__center {
	text-align: center;
}
.txt__left {
	text-align: left;
}
.txt__right {
	text-align: right;
}
.txt__bold {
	font-weight: bold;
}
/*****************************************************
font family
*****************************************************/
.u-font-mincho {
	font-family: "貂ｸ譏取悃", YuMincho, "繝偵Λ繧ｮ繝取�譛� ProN W3", "Hiragino Mincho ProN", "HG譏取悃E", "�ｭ�ｳ �ｰ譏取悃", "�ｭ�ｳ 譏取悃", serif;
}
.font__min {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

/*****************************************************
Layout
*****************************************************/

#fair.contents {
	position: relative;
	width: 1400px;
	height: 2625px;
	overflow: hidden;
	background: url(/fair/202309_allfanfesta/assets/images/img-bg-pc.jpg) no-repeat;
	background-size: contain;
	margin: 0 auto;
	padding-bottom: 20px;
}
#fair.contents::before {
	content: "";
  position: absolute;
  top: 40px;
  left: 0;
	right: 0;
  background: url(/fair/202309_allfanfesta/assets/images/img-decoration01-pc.png) no-repeat;
  background-size: contain;
	background-position: center;
  width: 1400px;
  height: 2234px;
	margin: auto;
}

/*****************************************************
Object/Component
*****************************************************/
.sp-only {
	display: none;
}

.pc-only {
	display: block;
}

@media screen and (max-width: 768px) {
	.sp-only {
		display: block;
	}
	.pc-only {
		display: none;
	}
}
/*****************************************************
LP繝壹�繧ｸ逕ｨ
*****************************************************/
/* kv */
.main-visual {
	position: relative;
  width: 100%;
	/* background: #00b3ea; */
	height: 445px;
  /* height: calc(1062/2800*100vw); */
}
.main-visual__wrap {
  position: relative;
}
.main-visual__title {
	display: flex;
	position: absolute;
  top: 85px;
	left: 0;
	right: 0;
	width: 1200px;
	margin: 0 auto 0;
	padding: 20px 0;
  z-index: 1;
	filter: drop-shadow(3px 3px 3px rgba(255, 255, 255, 0.8));
}
.main-visual__title img {
	/* width: calc(1012/2800*100vw); */
	width: 1179px;
	margin: 0 auto;
}
.main-visual__bg {
  position: absolute;
	width: 1386px;
  top: 0;
	left: 0;
	right: 0;
  z-index: 0;
	margin: 5px auto 0;
}
.main-visual__bg img {
	width: 1386px;
	/* height: calc(1062/2800*100vw); */
	height: 217px;
}
.main-visual__text {
	color: #231815;
	position: absolute;
  top: 380px;
	left: 0;
	right: 0;
	font-size: 26px;
	line-height: 1.6;
	text-align: center;
	width: 1000px;
	margin: 0 auto 0;
	z-index: 1;
	filter: drop-shadow(3px 3px 3px rgba(255, 255, 255, 0.8));
}
.main-visual__info {
	color: #fff;
	position: absolute;
	top: 30px;
	left: 0;
	right: 0;
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	width: 1050px;
	margin: 0 auto 0;
	padding: 5px 0;
	z-index: 3;
	filter: drop-shadow(2px 2px 3px rgba(25, 90, 162, 1));
}

@media screen and (max-width: 1200px) and (min-width: 769px) {
	/* .main-visual {
	  height: calc(484/2800*100vw);
	}
	.main-visual__title {
		width: 100%;
		margin: calc(318/2800*100vw) auto 0;
	}
	.main-visual__title img {
		width: calc(2350/2800*100vw);
	}
	.main-visual__text {
		width: calc(832/2800*100vw);
	}
	.main-visual__text img {
		width: calc(832/2800*100vw);
		margin-left: calc(36/2800*100vw);
	}
	.main-visual__bg {
	  width: 100%;
		margin: calc(128/2800*100vw) auto 0;
	}
	.main-visual__bg img {
		 width: 100%;
		 height: calc(191/2800*100vw);
	}
	#fair .campaign::before {
	  top: calc(-170/2800*100vw);
		width: calc(2720/2800*100vw);
	}
	#fair .campaign .main__content {
		width: 100%;
		padding: 30px 20px;
	}
	#fair .campaign .main__content::after {
		bottom: calc(-37/2800*100vw);
		width: calc(2800/2800*100vw);
		height: calc(37/2800*100vw);
	} */
}

@media screen and (max-width: 768px) {
	/* kv */
	.main-visual {
	  width: 100%;
		height: calc(830/768*100vw);
	}
	.main-visual__title {
	  top: calc(170/768*100vw);
		left: 0;
		right: 0;
		width: calc(618/768*100vw);
		margin: 0 auto 0;
		padding: 20px 0;
	}
	.main-visual__title img {
		width: calc(618/768*100vw);
	}
	.main-visual__bg {
		width: calc(728/768*100vw);
	  top: 0;
		left: 0;
		right: 0;
		margin: 5px auto 0;
	}
	.main-visual__bg img {
		width: calc(728/768*100vw);
		height: calc(115/768*100vw);
	}
	.main-visual__text {
	  top: calc(580/768*100vw);
		left: 0;
		right: 0;
		font-size: 4.5vw;
		line-height: 1.6;
		width: 100%;
		margin: 0 auto 0;
		padding: 0 5%;
	}
	.main-visual__info {
		top: calc(80/768*100vw);
		left: 0;
		right: 0;
		font-size: 4vw;
		line-height: 1.5;
		width: 100%;
		margin: 0 auto 0;
		padding: 5px 0;
	}
}

/* 共通デザイン */
.section {
	position: relative;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
section:not(.kv_wrap) {
    margin-bottom: 0;
}
.section__wrap {
  margin: auto;
	max-width: 1050px;
	padding: 0 0 20px;
}
.section__full {
  margin: auto;
	width: 100%;
	padding: 0 0 30px;
}
.section__bg--w {
	background: #fff;
	margin: 50px auto;
	padding: 20px 0 0;
}
.content__title {
	text-align: center;
  max-width: 1050px;
  margin: 0 auto 20px;
  padding: 15px 0;
}
.content__text {
	font-size: 20px;
	line-height: 1.5;
}
.content__text--border {
	border: 1px solid #fff;
	color: #fff;
	font-size: 20px;
	line-height: 1.4;
	text-align: center;
	padding: 5px 10px;
	max-width: 960px;
	margin: 50px auto 0;
}
.main__content {
	margin: 20px auto 30px;
}
.content__column {
	display: flex;
	justify-content: center;
}
.column__medium {
	align-items: center;
}
.column__wrap {
	flex-wrap: wrap;
}
.content__img--center {
	text-align: center;
  max-width: 1050px;
  margin: 0 auto;
}
.content__text--small,.text__small {
	font-size: 12px;
	line-height: 1.5;
}
.content__note,.text__small {
	font-size: 10px;
	line-height: 1.3;
}
.content__bg1 {
	background: #fff;
}
.content__bg2 {
	background: #fff;
}
.content__bg3 {
	background: #d98c41;
}
.content__bg4 {
	background: #93bd3b;
}
.text-color1 {
	color: #fff;
}
.text-color2 {
	color: #008bd5;
}
.text-color3 {
	color: #ef8201;
}
.text-color4 {
	color: #82939d;
}

@media screen and (max-width: 768px) {
	/* 共通デザイン */
	#fair.contents {
		position: relative;
		width: 100%;
		height: 100%;
		/* height: calc(11967/768*100vw); */
		overflow: hidden;
		background: url(/fair/202309_allfanfesta/assets/images/img-bg-sp.jpg) no-repeat;
		background-size: cover;
		margin: 0 auto;
		padding-bottom: 0;
	}
	#fair.contents::before {
		content: "";
	  position: absolute;
	  top: 0;
	  left: 0;
		right: 0;
	  background: url(/fair/202309_allfanfesta/assets/images/img-decoration01-sp.png) no-repeat;
	  background-size: contain;
		background-position: center;
	  width: 100%;
	  height: calc(8442/768*100vw);
		margin: auto;
	}
	.section {
		position: relative;
	  margin: 0 auto;
	  padding: 0;
	  width: 100%;
	}
	.section__wrap {
	  margin: auto;
		max-width: 750px;
		padding: 0 3% calc(40/768*100vw);
	}
	.section__full {
	  margin: auto;
		width: 100%;
		padding: 0;
	}
	.section__bg--w {
		margin: 5%;
		padding: 0 0 calc(20/768*100vw);
	}
	.content__title {
		text-align: center;
	  max-width: 1050px;
	  margin: 0 auto 20px;
	  padding: 15px 0;
	}
	.content__text {
		font-size: 3vw;
		line-height: 1.5;
	}
	.content__text--border {
		font-size: 3.5vw;
		line-height: 1.4;
		padding: 5px 10px;
		margin: calc(50/768*100vw) auto 0;
	}
	.main__content {
		margin: calc(20/768*100vw) 5% calc(30/768*100vw);
	}
	.content__hero {
	  margin: 0 auto calc(20/768*100vw);
	  padding: 0 0 calc(15/768*100vw);
	}
	.content__img--center {
		text-align: center;
	  max-width: 1050px;
	  margin: calc(70/768*100vw) auto calc(20/768*100vw);
	}
	.text__small {
		font-size: 2vw;
	}
}

/* campaign */
.campaign {
	position: relative;
	/* background: #00b3ea; */
	padding-bottom: 0;
}
.campaign::before {
	content: "";
  position: absolute;
  left: 0;
	right: 0;
	bottom: -16px;
  background: #fff;
  background-size: contain;
	background-position: center;
  width: 100%;
  height: 40px;
	margin: auto;
}
.campaign .main__content {
	position: relative;
	width: 1288px;
	margin: 0 auto;
	padding: 30px 0 0;
}
.campaign .pickup {
	position: relative;
	margin: 0 auto 25px;
}
.campaign .pickup-box.pickup-inner01 {
	width: 1235px;
	margin: 0 auto;
}
.campaign .pickup-box.pickup-inner02 {
	width: 1162px;
	margin: 0 auto;
}
.campaign .pickup-box.pickup-inner03 {
	width: 1162px;
	margin: 0 auto;
}
.campaign .pickup-box.pickup-inner04 {
	width: 1235px;
	margin: 0 auto 0;
}
.campaign .pickup-header {
	display: flex;
	width: 1162px;
}
.campaign .pickup-text-col {
	width: 100%;
}
.campaign .pickup-img-col {
	width: 580px;
	margin-left: 20px;
	padding-top: 10px;
}
.campaign .pickup-title {
	display: block;
	filter: drop-shadow(2px 2px 6px rgba(255, 255, 255, 1));
}
.campaign .pickup-text {
	display: block;
	font-size: 20px;
	line-height: 1.6;
	padding-top: 5px;
}
.campaign .pickup-inner02 .pickup-title {
	width: 765px;
}
.campaign .pickup-inner03 .pickup-title {
	width: 693px;
}
.campaign .pickup-inner04 .pickup-title {
	width: 1195px;
}
.campaign .pickup-content {
	position: relative;
}
.campaign .pickup-inner02 .pickup-content {
	margin: 10px auto 0;
}
.campaign .pickup-inner03 .pickup-content {
	margin: 45px auto 0;
}
.campaign .pickup-inner04 .pickup-content {
	margin: 20px auto 5px;
}
.campaign .pickup-inner02 .pickup-content .pickup-img {
	width: 219px;
	margin-right: 18px;
}
.campaign .pickup-inner02 .pickup-content .pickup-img:last-child {
	margin-right: 0;
}
.campaign .pickup-inner03 .pickup-content .pickup-img:last-of-type {
	margin-left: 20px;
}
.campaign .pickup-name {
	position: absolute;
	top: 0;
	left: 50%;
	width: 315px;
	transform: translate(-50%,-50%);
}
.campaign .pickup-text2 {
	font-size: 20px;
	line-height: 1.5;
	text-align: left;
	padding-top: 10px;
}
.campaign .pickup-bottom {
	padding-top: 0;
	padding-bottom: 10px;
}
.campaign .pickup-note {
	font-size: 12px;
	line-height: 1.5;
	text-align: left;
}

@media screen and (max-width: 768px) {
	/* campaign */
	.campaign {
		position: relative;
		/* background: #00b3ea; */
		padding-bottom: 0;
	}
	.campaign::before {
		content: none;
	}
	.campaign .main__content {
		position: relative;
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	.campaign .pickup {
		position: relative;
		margin: 0 auto 30px;
	}
	.campaign .pickup-box {
		padding: 0 5%;
	}
	.campaign .pickup-box.pickup-inner01 {
		width: 100%;
		margin: 0 auto;
	}
	.campaign .pickup-box.pickup-inner02 {
		width: 100%;
		margin: 0 auto;
	}
	.campaign .pickup-box.pickup-inner03 {
		width: 100%;
		margin: 0 auto;
	}
	.campaign .pickup-box.pickup-inner04 {
		width: 100%;
		margin: 10px auto 0;
	}
	.campaign .pickup-header {
		display: flex;
		width: 100%;
	}
	.campaign .pickup-text-col {
		width: 100%;
		margin: 0 auto;
	}
	.campaign .pickup-img-col {
		display: none;
	}
	.campaign .pickup-title {
		display: block;
		margin: 0 auto;
		/* filter: drop-shadow(2px 2px 6px rgba(255, 255, 255, 1)); */
	}
	.campaign .pickup-text {
		font-size: 4.3vw;
		line-height: 1.6;
		padding-top: 5px;
		text-align: center;
	}
	.campaign .pickup-inner02 .pickup-title {
		width: calc(618/768*100vw);
	}
	.campaign .pickup-inner03 .pickup-title {
		width: calc(618/768*100vw);
	}
	.campaign .pickup-inner04 .pickup-title {
		width: calc(649/768*100vw);
	}
	.campaign .pickup-content {
		position: relative;
	}
	.campaign .pickup-inner02 .pickup-content {
		margin: 10px auto 0;
	}
	.campaign .pickup-inner02 .pickup-content.content__column {
		display: none;
	}
	.campaign .pickup-inner03 .pickup-content {
		margin: 45px auto 0;
	}
	.campaign .pickup-inner03 .pickup-content.content__column {
		flex-direction: column;
	}
	.campaign .pickup-inner04 .pickup-content {
		margin: 20px auto 10px;
	}
	.campaign .pickup-inner02 .pickup-content .pickup-img {
		width: 100%;
		margin-right: 0;
	}
	.campaign .pickup-inner02 .pickup-content .pickup-img:last-child {
		margin-right: 0;
	}
	.campaign .pickup-inner03 .pickup-content .pickup-img:last-of-type {
		margin-left: 0;
	}
	.campaign .pickup-name {
		position: absolute;
		top: -10px;
		left: 0;
		right: 0;
		width: calc(522/768*100vw);
		transform: translate(0%,-50%);
		margin: 0 auto;
	}
	.campaign .pickup-text2 {
		font-size: 4.7vw;
		line-height: 1.5;
		text-align: left;
		padding-top: 0;
		padding-bottom: 10px;
	}
	.campaign .pickup-bottom {
		padding-bottom: calc(100/768*100vw);
	}
	.campaign .pickup-col {
		position: absolute;
		bottom: calc(-30/768*100vw);
		padding: 0 5%;
		height: calc(80/768*100vw);
	}
	.campaign .pickup-col::before {
		content: "";
	  position: absolute;
	  left: 0;
		right: 0;
		bottom: calc(-30/768*100vw);
	  background: #fff;
	  background-size: contain;
		background-position: center;
	  width: 100%;
	  height: calc(130/768*100vw);
		margin: auto;
		z-index: -1;
	}
	.campaign .pickup-note {
		font-size: min(3vw, 12px);
		line-height: 1.5;
		text-align: left;
	}
	#fair .flexslider {
		margin: 0 0 calc(40/768*100vw);
	}
	.flexslider .flex-direction-nav a,.flexslider .flex-direction-nav a:before {
    color: rgb(255 255 255 / 0.8);
		opacity: 1;
		z-index: 99;
	}
}


