@charset "utf-8";
/* CSS Document */
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Oswald&display=swap');
@import url("basic-style.css");
@import url("footer.css");
@import url("style-theme-json.css");
@import url("block-build.css");

/*--------------------------------
共通
--------------------------------*/
body{
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1.8;
	font-size: 16px;
	font-feature-settings: "palt"1;
	font-weight: 400;
}

h2.nostyle{
	border-top: none;
	border-bottom: none;
	padding: 0;
}

h3.nostyle{
	border-bottom: none;
	padding-bottom: 0;
}

h3.nostyle::after{
	border-bottom: none;
}

h4.nostyle{
	padding: 0;
	background-color: transparent;
	border-radius: 0;
}

p{
	margin-bottom: 1rem;
}

.fs-flex{
	font-size: calc(1rem + 1vw);
}

.fs-nomal{
	font-size: 16px!important;
}

.fs-sm{
	font-size: 14px!important;
}

.fs-xs{
	font-size: 12px!important;
}

img{
	vertical-align: bottom;
}

.bg-blue{
	background-color: #2377bd;
}
.bg-darkBlue{
	background-color: #101646;
}
.bg-orange{
	background-color: #f17824;
}

.bg-paleOrange{
	background-color: #fed762;
}

.page-header{
	background-color: #fff;
	color: #222;
}

.lh-1{
	line-height: 1;
}

.text-blue{
	color: #2377bd;
}

.text-darkBlue{
	color: #0f1848;
}

/*575px以下では左揃え*/
.text-center-md{
	text-align: left;
}

/*575px以下では中央揃え*/
.text-left-md{
	text-align: center!important;
}

.lh-sm{
	line-height: 1.5;
}

ul.unstyled {
	padding-left: 0;
	list-style: none;
}

.ff-pkj{
	font-family: "peachy-keen-jf", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.ff-oswald{
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
}

/*文字を点滅させる*/
.txt-blink {
	animation: txtblink 2s linear infinite;
}

@keyframes txtblink {
	0%,
	100%{
		opacity: 1;
	}

	50% {
		opacity: 0;
	}
}

a.btn-outline-primary{
	color: #2978bb;
	border-color: #2978bb;
}

a.btn-outline-primary:hover{
	color: #fff;
	background-color: #2978bb;
	border-color: #2978bb;
}

a.btn-primary,
.btn-primary{
	background: rgb(35,119,189);
	background: linear-gradient(35deg, rgba(35,119,189,1) 0%, rgba(35,55,189,1) 100%);
	box-shadow: 0px 5px #d0ccbd;
	border: rgba(35,55,189,1);
}

a:hover.btn-primary{
	background: rgb(35,119,189);
	background: linear-gradient(35deg, rgba(35,55,189,1) 0%, rgba(35,119,189,1) 100%);
	box-shadow: 0px 5px #d0ccbd;
	transition: all 1s;
}

/*Lightbox*/
.scrim {
	background-color: rgba(0, 0, 0, 0.8) !important;
}
button.close-button{
	fill:#fff!important;
}

/*Footer
-------------------------------*/
.site-footer{
	border-top: none;
	background-color:#2377bd;
	color: #fff;
}

.footer-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
}

.footer-btn > a{
	width: 70%;
	display: flex;
	box-shadow: 0 0 8px #000;
	border-radius: 10px;
}

.footer-btn > a:hover{
	box-shadow: none;
	transition: all .3s;
	opacity: 0.8;
}

.ft-btn_wrap {
	padding: 1.5rem;
	border-radius: 10px;
}

.ft-btn_wrap.hp{
	background-color: #fff;
}
.ft-btn_wrap.insta{
	background: linear-gradient(45deg, rgba(252,161,0,1) 0%, rgba(244,9,9,1) 34%, rgba(240,12,161,1) 72%, rgba(108,2,247,1) 100%);
}

.site-footer h4.tel-num {
	font-size: clamp(20px,calc(2rem + 2vw),36px);
}

body.home .site-footer{
	padding-bottom: 0;
}

/*過去のイベント*/
.past-event{
	margin-bottom: 3em;
}

.past-event_inner{
	width: min(100%,768px);
	margin: 0 auto;
}

.past-event p{
	font-size: 1rem;
	text-align: center;
}

.past-event ul{
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.past-event ul a{
	color: #000;
	font-size: 1.5em;
	font-weight: 600;
	line-height: 1;
}

.past-event ul a:hover{
	text-decoration: none;
}

/*--------------------------------
トップページ
--------------------------------*/
/*メインイメージ
--------------------------------*/
.mainImg{
	background-color: #2377BD;
	padding-bottom: 3rem;
	margin-top: -1px;
	position: relative;
	/*追記*/
	/*display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;*/
}

#mainPC {
	display: none;
}

#mainSP{
	padding: 2rem 0 0;
}

div#mainSP img {
	margin: 0 auto;
}

figure#event-end img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-5deg);
	width: min(90%,864px);
}

/*イベント終了の表示*/
.event-end{
	position: absolute;
	bottom:0;
	left: 0;
	z-index: 5;
	width: clamp(320px,95%,800px);
	height: 90%;
	background-image: url("../images/event-end-sp.png");
	background-position: bottom left;
	background-repeat: no-repeat;
	background-size: contain;
}
/*★20250406イベント終了後用ここまで*/

/*イベント終了時のCSS*/
.mainImg::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
}

/*開催概要
--------------------------------*/
#overview{
	padding: 6vh 0 7vh;
	background-color: #fffae8;
}

p.overview_txt{
	font-size: calc(1.25rem + 0.5vw);
	text-align: justify;
	line-height: 2;
}

#overview-dtl{
	padding-top: 3rem;
}

#overview table,
#overview th,
#overview td{
	border-color: transparent!important;
}

#overview-dtl_left {
	border-bottom: 1px dotted;
	padding-bottom: 3rem;
}

#overview-dtl_left th{
	display: block;
	text-align: center;
	padding: 1rem 0 0;
	font-size: 1em;
	color: #2377BD;
	line-height: 1.5;
}

#overview-dtl_left td {
	display: block;
	text-align: center;
	padding: 0;
	line-height: 1.5;
}

#overview-dtl_right{
	padding: 1rem 0 0;
	width: min(100%,300px);
	margin: 0 auto;
}

#overview-dtl_right th,
#overview-dtl_right td {
	vertical-align: top;
	font-size: 1rem;
}
#overview-dtl_right th{
	padding: 0 0.5rem 1rem 0;
}
#overview-dtl_right td {
	padding: 0 0 1rem;
}

/*イベントイメージ（Slick）
--------------------------------*/
.slider_wrap {
	margin: 0 calc(50% - 50vw);
}

.slide_ctr{
	aspect-ratio: 5/3;
	overflow: hidden;
	position: relative;
}

.slide_item{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*フロント出店ブランド一覧
--------------------------------*/
#top-brand{
	padding: 3.5rem 0 5rem;
	z-index: 0;
	position: relative;
	background: none;
}

#top-brand::before{
	content: "";
	background-color: rgba(10,36,16,0.7);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

#top-brand::after{
	content: "";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/brand-bg-sp.jpg) center no-repeat;
	background-size: cover;
	z-index: -1;
}

#top-brand_hdr p{
	color: #fff;
	position: relative;
	z-index: 2;
}

#top-brand_left{
	position: relative;
}

#top-brand_left h2{
	margin-top: -6rem;
	margin-bottom: 1rem;
}

#top-brand_right p {
	text-align: center;
	margin-bottom: 2rem;
}

#top-brand_cont ul {
	list-style: none;
	position: relative;
}

#top-brand_cont ul li{
	margin: 0;
}

/*スペシャルコンテンツ
--------------------------------*/
.top-sp-content {
	padding: 3vh 0 10vh;
	background: repeating-linear-gradient(135deg, #fdd100, #fdd100 20px, #fdc900 20px, #fdc900 40px);
	position: relative;
}

.top-sp-content .garland {
	position: absolute;
	transform: translateX(-50%) scale(1.2);
	top: 3em;
	left: 50%;
	width: 100%;
	text-align: center;
}

.top-sp-content h2{
	width: min(100%,786px);
}

.top-sp-content h2 img {
	margin-top: -2em;
	position: relative;
}

.top-sp-cont_cont a {
	display: inline-block;
}

.top-sp-cont_cont a:hover {
	filter: drop-shadow(0px 0px 6px black);
	transition: all .3s;
}

/*エリアマップ
--------------------------------*/
#areaMap{
	padding: 10vh 0;
	background-color: #fffae8;
}

#areaMap h2{
	text-align: center;
	font-size: calc(3rem + 3vw);
	margin-bottom: 1rem;
	color: #0f1848;
}

#areaMap p.com-soon {
	width: clamp(300px,100%,768px);
	height: 300px;
	margin: 0 auto 3rem;
	border: 2px dashed #908c82;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: calc(1.5rem + 1vw);
	color: #908c82;
	font-weight: 700;
}

#areaMap h3{
	text-align: center;
	font-size: calc(2rem + 2vw);
	margin-bottom: 0;
	color: #0f1848;
}

.map-pict {
	width: min(100%, 786px);
	margin: 0 auto 4em!important; 
}

.areaMap_cont ul {
	list-style: none;
	padding-left: 0;
	display: grid;
	gap:2vw; 
	grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
}

.areaMap_cont ul li{
	margin: 0;
	text-align: center;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	line-height: 1.3;
	font-size: calc(1rem + 0.5vw);
}

.areaMap_cont ul li figure{
	margin-bottom: 0;
}

.areaMap_cont a:hover{
	opacity: 0.7;
	transition: 0.3s all;
}

.areaMap_cont figcaption {
	padding-top: 0.5rem;
	color: #101947;
}

.areaMap_cont ul li span{
	display: block;
}

.areaMap_cont ul li span.toyota{
	display: inline;
	margin-left: 0.5rem;
}

.areaMap_cont img{
	width: 70%;
}

/*20240326追記*/
.info0326{
	width: min(100%,540px);
	margin: 0 auto;
}

/*アクセス
--------------------------------*/
#access{
	padding: 0 0 10vh;
	background-color: #fffae8;
	position: relative;
}

#access::before {
	position: absolute;
	top: 2rem;
	left: 0;
	content: "";
	width: 100%;
	height: 25vh;
	background-color: #2377BD;
	z-index: 0;
}

.g-map iframe {
	position: relative;
	aspect-ratio: 16/9;
	width: 100%;
}

#access-howto{
	margin-bottom: 1em;
}

#access-howto h4{
	background-color: rgba(0,0,0,0.06);
}

.atte_cont{
	width: min(100%, 600px);
	margin: 0 auto;
}

.atte_cont .vk_borderBox .vk_borderBox_title_container{
	text-align: center;
	font-size: 1.2rem;
}

/*デザイナー紹介
--------------------------------*/
#designer{
	padding: 10vh 0;
}

#designer h2{
	text-align: center;
	margin-bottom: 1.5rem;
	font-size: calc(1.5em + 2vw);
}

#designer h3{
	text-align: center;
	font-size: 2rem;
}

.designer-cont_img{
	display: none;
}

.designer-cont_txt {
	width: min(95%, 720px);
	margin: 0 auto;
}

.designer_icon,
.designer_btn{
	text-align: center;
}
.designer_icon img {
	width: 250px;
}

/*サポート
--------------------------------*/
#support{
	padding: 10vh 0;
	color: #fff;
	position: relative;
	z-index: 0;
}

#support::before{
	content: "";
	display: block;
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/supp-bg-sp.jpg) no-repeat center center;
	background-size: cover;
	z-index: -1;
}

#support::after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.5);
	width: 100%;
	height: 100%;
	z-index: -1;
}

#support h2{
	width: min(75%,640px);
	font-size: 2em;
	margin: 0 auto 1em;
}

#support h6{
	font-weight: normal;
	margin-bottom: 1em;
	font-size: calc(1em + 0.5vw);
	text-shadow: 0 2px 5px #000;
}

#support a:hover{
	opacity: 0.8;
	transition: 0.3s all;
}

#support img{
	box-shadow: 0 0 5px #000;
}

#support a:hover img{
	box-shadow: none;
}

.supp-main_cont{
	width: min(80%,400px);
	margin: 0 auto;
}

.supp-main_cont > div{
	margin-bottom: 2em;
	text-align: center;
}

.supp-sub_cont{
	display: block;
	text-align: center;
}

.supp-sub_cont > div{
	margin-bottom: 2em;
}

.supp-kouen_cont,
.supp-kyousan_cont{
	display: grid;
	grid-template-columns: 48% 48%;
	justify-content: space-between;
	text-align: center;
}

.supp-list{
	text-align: center;
}

.supp-list ul{
	list-style: none;
	padding-left: 0;
	margin-top: 0;
}

.supp-list ul li{
	font-size: calc(1em + 0.2vw);
	text-shadow: 0 2px 5px #000;
}

/*--------------------------------
出店ブランド一覧(ページ)
--------------------------------*/
/*背景*/
.site-body.brand-page{
	z-index: 0;
}

.site-body.brand-page::before{
	content: "";
	background-color: rgba(0,0,0,0.5);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}
.site-body.brand-page::after{
	content: "";
	display: block;
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: url(../images/brand-bg-sp.jpg) center center no-repeat;
	background-size: cover;
	z-index: -1;
}

h1.brnd-page_header {
	position: relative;
	color: #fff;
	text-align: center;
	font-size: calc(2.5rem + 3vw);
	line-height: 1.2;
	font-family: "peachy-keen-jf", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin-bottom: 0;
	text-shadow: 0 0 10px #000;
}

ul#brand_list{
	padding-left: 0;
	margin: 0;
	display: grid;
	gap:2vw; 
	grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
}

ul#brand_list a{
	display: inline-block;
}

ul#brand_list a:hover {
	transform: scale(1.05);
	transition: all 0.3s;
}

#brand_nav{
	margin: 0 0 5rem;
}

/*ブランドの詳細*/
.dtl{
	color: #fff;
	margin-bottom: 8vh;
}

.dtl_wrap{
	background-color: #222;
	position: relative;
}

.dtl_inner{
	padding: 10vw 5vw;
}

.dtl h2 {
	border: none;
	text-align: center;
	padding: 0;
	display: block;
	font-size: calc(1.5em + 1vw);
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}

.dtl h2 span{
	display: block;
	font-weight: 400;
	line-height: 1.8;
	font-size: 0.875rem;
}

.dtl p{
	font-size: clamp(1em, 3vw, 24px );
	word-break: break-all;
	text-align: justify;
}

.dtl li{
	font-size: clamp(1em, 3vw, 24px );
	word-break: break-all;
}

.dtl figure{
	text-align: center;
	margin-bottom: 1.5rem;
}

.dtl-img_cont {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

/*フードマーケット用
---------------------*/
ul#food_list{
	padding-left: 0;
	margin: 0;
	display: grid;
	gap:2vw; 
	grid-template-columns: 1fr 1fr;
}

ul#food_list a{
	display: inline-block;
	background-color: #fff;
	color: #222;
	padding: 1em 0.8em;
	text-align: center;
	font-size: 0.875em;
}

ul#food_list a:hover {
	background-color: #ffd85a;
	transition: 0.3s all;
}

#food_nav{
	margin: 0 0 8em;
}

.dtl_wrap .food-exb-date{
	color: #222;
	display: inline-block;
	padding: 0.85rem 1rem;
	position: absolute;
	top: -20px;
	left: 10px;
	font-weight: 600;
	margin-bottom: 0;
	line-height: 1;
	font-size: calc(1.5em + 0.5vw);
	transform: rotate(-7deg);
}

h3.food-exb-date.both-days.nostyle{
	background-color: #ebc927;
}

h3.food-exb-date.sat-only.nostyle{
	background-color: #93d1f4;
}

h3.food-exb-date.sun-only.nostyle{
	background-color: #f6c8d3;
}

.food-exb_img {
  background-color: #9f9f9f;
  margin-bottom: 60px;
}

.food_cate {
	text-align: center;
}

.food_cate h3 {
	font-size: 1em;
	border: 1px solid;
	display: inline-block;
	padding: 0.5em 2em;
	line-height: 1;
	font-weight: 500;
}

/*フードマーケットのSlick*/
.food-exb-img_wrap{
	margin-bottom: 2.5em;
	padding: 0 1em;
}

.food-exb_img .slick-track{
	display: flex;
}

.food-exb_img .slick-track::before,
.food-exb_img .slick-track::after{
	content: none;
}

.food-exb_img .slick-slide{
	float: none;
	height: auto;
}

.food-exb_img .slick-slide > div{
	height: 100%!important;
}

.food-exb_img .item img{
	object-fit: cover;
	width: 100%;
	aspect-ratio: 5 / 5;
}

.no-square .food-exb_img .item img{
	aspect-ratio: 5 / 3.5;
}

.food-exb_img .slick-prev:before,
.food-exb_img .slick-next:before{
	font-size: 40px;
}

.food-exb_img .slick-next{
	right: -9px;
}

.food-exb_img .slick-prev{
	left: -30px;
	z-index: 2;
}

.food-exb_img .slick-dots li button:before{
	font-size: 10px;
	color: #fff;
}

.food-exb_img .slick-dots li.slick-active button:before{
	color: #fff;
}

/*続きを読む
---------------------*/
.show-more_ctr{
	position: relative;
	margin-bottom: 2.5rem;
}

.visible_text {
	height: 90px;
	overflow: hidden;
}

.show-more{
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 50px;
	padding-top: 30px;
	text-align: center;
	line-height: 30px;
	background: linear-gradient(180deg,rgb(252, 252, 248, 0) 0%,#222 70%);
	cursor: pointer;
	transition: bottom 0.2s;
	color:#fff;
}

/*SNS
---------------------*/
ul.social-parts {
	list-style: none;
	margin: 0;
	padding-left: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	justify-content: center;
}

ul.social-parts li {
	font-size: 2.5rem;
	margin-bottom: 0;
	margin-top: 0;
	line-height: 1;
}

ul.social-parts li:hover{
	color: #fff;
	transition: all .3s;
	transform: scale(1.3);
}

ul.social-parts li i{
	margin-right: 0;
}

section#come-soon {
	height: 50vh;
	display: flex;
	justify-content: center;
	align-items: center;
}

/*POP UP用*/
ul.social-parts p{
	display: none;
}

/*ページ下の固定メニュー
-----------------------------------*/
.fix-menu_wrap{
	display: none;
}

/*POPUP
-----------------------------------*/
/*ブランドの詳細*/
.brand-popup{
	color: #fff;
	margin-bottom: 8vh;
}

.brand-popup_wrap{
	background-color: #222;
}

.brand-popup_inner{
	padding: 10vw 5vw;
}

.brand-popup h2 {
	border: none;
	text-align: center;
	padding: 0;
	display: block;
	font-size: calc(1.5em + 1vw);
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}

.brand-popup h2 span{
	display: block;
	font-weight: 400;
	line-height: 1.8;
	font-size: 0.875rem;
}

.brand-popup p{
	font-size: clamp(1em, 3vw, 24px );
	word-break: break-all;
	text-align: justify;
}

.brand-popup figure{
	text-align: center;
	margin-bottom: 1.5rem;
}
/*closeボタン*/
.pum-theme-118 .pum-content + .pum-close, .pum-theme-content-only .pum-content + .pum-close{
	color: #fff!important;
	right: 13px!important;
	top: -13px!important;
}

/*サイトマップに表示されるPOPUPを非表示にする*/
.sitemap-popup {
	display: none;
}

/*--------------------------------
スペシャルコンテンツ（各ページ）
--------------------------------*/
.sp-content {
	background: repeating-linear-gradient(135deg, #fdd100, #fdd100 20px, #fdc900 20px, #fdc900 40px);
}

.spc_wrap{
	background-color: #fffae8;
	border-radius: 15px;
	position: relative;
}

.spc_inner{
	padding: 2em 1.5em;
}

.garland{
	position: absolute;
	transform: scale(1.05);
	top: -1em;
	left: 0;
}


/*--------------------
トークショー専用CSS
--------------------*/
.spc01-timetable_hdr{
	position: relative;
}

.spc01-timetable_cont h1 {
	text-align: center;
	margin: 0 auto 1rem;
	width: 100%;
}

p.spc01-timetable_txt {
	font-size: calc(1em + 0.5vw);
	margin-bottom: 2em;
}

.spc01-speakers_wrap {
	padding: 3em 0 0;
}

.spc01-speakers_wrap h2{
	font-size: calc(1.75rem + 0.5vw);
	margin-bottom: 0;
}

.spc01-prof_cont {
	display: flex;
	flex-direction: column;
	border-bottom: 1px dotted;
	padding: 2em 0;
}

.spc01-prof_cont:last-child{
	border-bottom: none;
	padding-bottom: 0;
}

.spc01-prof_photo figure {
	width: min(100%,200px);
	margin: 0 auto 0.5rem;
}

.spc01-prof_photo figure img {
	border-radius: 10px;
}

.spc01-prof_photo p.ttl{
	margin-bottom: 0;
	text-align: center;
}

.spc01-prof_photo h4.name{
	background-color: transparent;
	padding: 0;
	margin-top: 0;
	margin-bottom: 1rem;
	text-align: center;
	font-size: 1.7rem;
}

.spc01-prof_intro p{
	margin-bottom: 0.7rem;
	text-align: justify;
}

.spc01-prof_intro p:last-child{
	margin-bottom: 0;
}


/*--------------------
ステッカー販売専用CSS
--------------------*/
.spc02_wrap{
	width: min(100%,768px);
	margin: 0 auto;
	padding-top: 2em;
}

.spc02-sale_cont{
	position: relative;
}

.spc02-sale_cont figure{
	margin-bottom: 0;
}

.spc02-more_wrap {
	background-color: #fed762;
	padding: 2em;
	border-radius: 1em;
	margin: 4em 0 2em;
	position: relative;
}

.spc02-more_wrap::before{
	content: "";
	background-color: #fed762;
	width: 4em;
	height: 3em;
	clip-path: polygon(0 0,100% 0,50% 100%);
	position: absolute;
	bottom: -1.5em;
	left: 50%;
	transform: translateX(-50%);
}

.spc02-more_more{
	position: absolute;
	top: -2em;
	left: 50%;
	transform: translateX(-50%);
}

p.insta-id {
	margin-bottom: 1em;
	font-size: 1.5rem;
	padding: 0.5em 1em;
	line-height: 1;
}

.spc02-more-cont_pict {
	padding: 0 3em;
}

.follow-txt {
	position: absolute;
	bottom: 1em;
	right: -1em;
	transform: rotate(-15deg);
}

.spc02-follow li::before{
	content: "※";
}

.spc02-follow li{
	margin: 0 0 0 1em;
	text-indent: -1em;
}

.myx-insta_wrap{
	padding: 1.5em 1.5em 0;
	border: 2px dotted #2377bd;
	border-radius: 15px;
}

.myx-insta_cont {
	display: grid;
	grid-template-columns: 45% 1fr;
	grid-template-rows: repeat(2, auto);
	grid-column-gap: 16px;
	grid-row-gap: 0px;
	align-items: center;
}

.myx-insta_cont .txt { grid-area: 1 / 1 / 2 / 3; }
.myx-insta_cont .insta-img { grid-area: 2 / 1 / 3 / 2; }
.myx-insta_cont .qr-pict { grid-area: 2 / 2 / 3 / 3; }

.myx-insta_cont figure{
	margin-bottom: 0;
}


/*--------------------------------
注意事項ページ
--------------------------------*/
#request{
	padding: 3rem 0;
}

.request_hdr i {
	margin: 0;
	opacity: 0.5;
}

.request_hdr h1{
	font-size: calc(2rem + 1vw);
	line-height: 1.3;
}

.request_hdr h1 span{
	font-size: 3.5rem;
	letter-spacing: 0.5rem;
}

.request_hdr h2{
	line-height: 1.8;
	font-weight: normal;
	text-align: justify;
	font-size: 1.5rem;
}

ul.request_list li{
	font-size: 1em;
	padding: 1rem;
	text-align: justify;
}

ul.request_list li:nth-child(odd){
	background-color: rgba(0,0,0,0.05);
}


/*--------------------------------
Aozora Factoryページ
--------------------------------*/
.exb-members-list02 li{
	margin-top: 0;
	line-height: 1.5;
}

.exb-members-list02 li.sat-only::after,
.exb-members-list02 li.sun-only::after,
.exb-members-list02 li.both-day::after{
	font-size: 12px;
	margin-left: 0.5rem;
}

.exb-members-list02 li.sat-only::after {
	content: "※6日のみ";
}

.exb-members-list02 li.sun-only::after {
	content: "※7日のみ";
}

.exb-members-list02 li.both-day::after {
	content: "※両日とも";
}


/*--------------------------------
アーカイブページ
--------------------------------*/
body.ev-archives{
	background-color: #07234b;
}

body.ev-archives .site-body{
	padding: 2.5em 0 4em!important;
}

body.ev-archives h1.page-header-title{
	font-family: "peachy-keen-jf", sans-serif;
	font-weight: 400;
	font-size: calc(2.5rem + 3vw);
	line-height: 1.1;
	color: #FFFFFF;
}

body.ev-archives .page-header{
	background-color: transparent;
}

body.ev-archives .page-header .page-header-inner{
	margin: 0 auto;
}

#ev-archives{
	padding-top: 1em;
}

.archive_cont {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	grid-column-gap: 1em;
	grid-row-gap: 1em;
	margin-bottom: 5em;
}

.archive_card{
	aspect-ratio: 5/3;
	overflow: hidden;
	position: relative;
}

.archive_item{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.archive_item:hover{
	transform: scale(1.1);
	transition: .5s all;
}

.archive_card:hover::before{
	content: "";
	background-color: rgba(0,0,0,0.4);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	transition: .3s all;
}

.archive_card:hover::after{
	content: "\f00e";
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	font-size: 2em;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
	transition: .3s all;
}

/*--------------------------------
BREAK POINT
--------------------------------*/
@media (min-width: 1200px){
	/*--------------------
	トークショー専用CSS
	--------------------*/
	.spc01-prof_cont {
		display: grid;
		grid-template-columns: 1fr 70%;
		grid-column-gap: 1em;
		padding: 2em 0.8em;
	}
	
	.spc01-prof_photo p.ttl{
		font-size: 10px!important;
	}
	
	.spc01-prof_photo h4.name{
		font-size: 1rem;
		margin-bottom: 0;
	}
	
	.archive_cont {
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	}
}/*end*/

@media (min-width: 1024px){
	/*メインイメージ
	---------------------------------*/
	#mainPC {
		width: 100%;
		height: 75dvh;
		background: url("../images/mainImg-pc02.png") no-repeat center;
		background-size: contain;
		display: block;
	}
	
	#mainSP{
		display: none;
	}
	
	/*アーカイブ
	--------------------*/
	body.ev-archives .site-body .container{
		width: 90%;
		max-width: 2560px;
	}
}/*end*/
	
@media (min-width: 992px) and (max-width: 1199.98px){	
	.spc01-prof_photo{
		height: 320px;
		display: flex;
		flex-direction: column;
		justify-content: space-around;
	}
	
	.archive_cont {
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	}
}/*end*/
	
@media (min-width: 576px) and (max-width: 991.98px){
	/*トップページ
	---------------------------------*/
	h2.overview_ttl,
	figure.overview-sp_img{
		width: 80%;
		margin: 0 auto 2rem;
	}
	p.overview_txt{
		font-size: calc(1.25rem + 0.5vw);
	}
	/*フードマーケット用
	---------------------*/
	ul#food_list{
		grid-template-columns: 1fr 1fr 1fr;
	}
	/*フード用Slick*/
	.food-exb_img .item img{
		/*height: 40vw;*/
	}	
}/*end*/

@media (min-width: 992px){
	/*Site Header
	---------------------------------*/
	.device-pc .global-nav-list>li>a {
		color: #fff;
	}
	
	p.overview_txt{
		font-size: calc(1rem + 0.2vw);
		margin-bottom: 0;
	}
	
	/*イベント終了の表示*/
	.event-end{
		width: 80%;
		height: 80%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		background-image: url("../images/event-end-pc.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
	}
	/*★20250406イベント終了後用ここまで*/
	
	/*トップページ出店ブランド一覧
	--------------------------------*/
	#top-brand{
		position: relative;
		background: url(../images/brand-bg-pc.jpg) center no-repeat;
		background-size: cover;
		background-attachment: fixed;
		padding: 5vh 0 10vh;
		z-index: 0;
	}
	
	#top-brand::after{
		content: none;
	}
	
	#top-brand_hdr {
		/*display: flex;
		justify-content: space-between;*/
		margin-bottom: 1rem;
	}

	#top-brand_left {
		width: 63%;
		margin: 0!important;
		padding-top: 0;
	}
	
	#top-brand_left .top-brand_ttl{
		position: absolute;
		top: -4rem;
		left: 0;
		transform: rotate(-2deg);
	}
	
	#top-brand_left h2{
		margin-top: 0;
		margin-bottom: 0;
		position: relative;
		top: 0;
		left: 0;
	}
	
	#top-brand_right {
		/*margin: 0!important;*/
		text-align: right;
	}
	
	#top-brand_right p{
		text-shadow: 0 2px 5px #222;
		font-weight: 500;
		font-size: calc(1rem + 0.2vw);
		margin-bottom: 0;
		text-align: right;
	}
	
	/*デザイナー紹介
	--------------------------------*/
	.designer-cont_img{
		display: block;
	}

	
	/*出店ブランド一覧(ページ)	
	---------------------------------*/
	/*背景*/
	.site-body.brand-page{
		position: relative;
		background: url(../images/brand-bg-pc.jpg) center center no-repeat;
		background-size: cover;
		background-attachment: fixed;
		/*z-index: 0;*/
	}
	
	.site-body.brand-page::after{
		content: none;
	}
	
	ul#brand_list{
		grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	}
	
	.dtl_wrap{
		width: 80%;
		margin: 0 auto;
	}
	
	ul.social-parts {
		column-gap: 1rem;
		justify-content: flex-start;
	}

	ul.social-parts li {
		font-size: 1.5rem;
	}
	
	/*フードマーケット用
	---------------------*/
	ul#food_list{
		grid-template-columns: 1fr 1fr 1fr 1fr;
		gap:1vw;
	}
	
	ul#food_list a{
		font-size: 1.2rem;
	}
	
	/*ページ下の固定メニュー
	---------------------------------*/
	.fix-menu_wrap{
		position: fixed;
		display: block;
		width: 100%;
		bottom: 0;
		z-index: 2;
		color: #fff;
		padding-bottom: 0.7rem;
		transition: 0.5s all;
	}
	
	.fix-menu_wrap::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 4rem;
		background-color: rgba(35,119,189,0.8);
		z-index: -1;
	}
	
	#fix-menu ul{
		margin: 0;
		padding-left:0; 
		display: flex;
		justify-content: center;
		gap:1.5vw;
	}

	#fix-menu ul a{
		color: #fff;
	}
	
	div#fix-menu ul a:hover {
		transform: scale(1.1);
		transition: .3s all;
	}

	div#fix-menu figure {
		text-align: center;
		margin-bottom: 0;
	}

	div#fix-menu figure figcaption{
		font-size: min(10px, 100%);
		line-height: 1.3;
	}
	#fix-menu img{
		width: 100px;
	}
	/*トークショー専用CSS
	---------------------------------*/
	.spc01-speakers_cont {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-column-gap: 2em;
	}
	
}/*end*/

@media (min-width: 768px) and (max-width: 991.98px){
	/*トークショー専用CSS
	---------------------------------*/
	.spc01-prof_cont{
		display: grid;
		grid-template-columns: 30% 1fr;
		grid-column-gap: 1.5em;
	}
	
	.spc01-prof_photo h4.name{
		margin-bottom: 0;
	}

}/*end*/

@media (min-width: 768px){
	/*共通
	---------------------------------*/
	/*576px以上では中央揃え*/
	.text-center-md{
		text-align: center!important;
	}
	/*576px以上では右揃え*/
	.text-left-md{
		text-align: left;
	}
	
	/*トップページ
	---------------------------------*/
	/*開催概要*/
	#overview{
		padding: 10vh 0;
	}
	
	#overview-dtl{
		padding-top: 4rem;
		width: min(100%,750px);
	}
	
	#overview-dtl h3{
		margin-bottom: 1rem;
	}
	div#overview-dtl_left {
		border-bottom: none;
		padding-bottom: 0;
	}

	div#overview-dtl_left th{
		display: table-cell;
		padding: 0.5rem 0.5rem 0 0;
		font-size: 1em;
		color: #333;
		vertical-align: top;
		text-align: left;
		width: 5.5rem;
	}

	div#overview-dtl_left td {
		display: table-cell;
		text-align: left;
		padding: 0 0 1rem;
	}
	
	div#overview-dtl_left th.contact{
		padding-top: 0!important;
		line-height: 1.3;
	}
	
	div#overview-dtl_right{
		padding-top: 0.5rem;
	}
	/*エリアマップ
	--------------------------------*/
	.areaMap_cont ul {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
	
	/*アクセス
	--------------------------------*/
	#access::before {
		height: 40vh;
	}
	
	.g-map{
		padding: 0 15px;
	}
	
	/*デザイナー紹介
	--------------------------------*/
	#designer h3{
		text-align: left;
		font-size: 1.5rem;
	}
	
	.designer_btn{
		text-align: left;
	}
	
	/*サポート
	--------------------------------*/
	#support{
		background: url(../images/supp-bg-pc.jpg) no-repeat center center;
		background-size: cover;
		background-attachment: fixed;
	}
	
	#support::before{
		content: none;
	}
	
	.supp-main_wrap {
		width: min(80%,840px);
		margin: 0 auto 2em;
	}
	
	.supp-main_cont {
		display: grid;
		grid-template-columns: 48% 48%;
		justify-content: space-between;
		text-align: center;
	}
	
	.supp-main_cont{
		width: 100%;
	}
	
	.supp-main_cont > div{
		margin-bottom: 0;
	}
	
	.supp-sub_wrap{
		padding-top: 3em;
	}
	
	.supp-sub_cont{
		display: grid;
		grid-template-columns: 48% 48%;
		justify-content: space-between;
		text-align: center;
	}
	
	.supp-sub_cont > div{
		margin-bottom: 0;
	}
	
	.supp-list{
		padding-top: 3em;
	}
	
	.supp-list ul li{
		display: inline;
	}
	
	.supp-list ul li::after{
		content: "／";
	}
	
	.supp-list ul li:last-child::after{
		content: none;
	}


	/*出店ブランド一覧(ページ)	
	---------------------------------*/
	ul#brand_list{
		gap:1vw; 
	}
	
	/*ブランド詳細*/
	.dtl_inner{
		padding: 5vw;
	}
	
	.dtl-img_cont {
		gap: 1rem;
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	}
	
	/*フードマーケットのSlick*/
	.food-exb-img_wrap{
		max-width: 500px;
		margin: 0 auto;
		padding: 0 3em;
	}
	
	/*POPUP
	-----------------------------------*/
	/*ブランド詳細*/
	.brand-popup_inner{
		padding: 5vw;
	}
	
	/*フッター
	---------------------------------*/
	.footer-btn {
		flex-direction: row;
		align-items: stretch;
	}

	.footer-btn > a{
		width: 50%;
	}
	
	/*注意事項ページ
	---------------------------------*/
	.request_hdr h1 span{
		font-size: calc(2rem + 1vw);
		letter-spacing: normal;
	}
	
	/*Aozora Factoryページ
	---------------------------------*/
	.exb-members-list02 li.sat-only::after,
	.exb-members-list02 li.sun-only::after,
	.exb-members-list02 li.both-day::after{
		font-size: 14px;
	}
	
	/*スペシャルコンテンツ専用CSS
	---------------------------------*/
	.spc_inner {
		padding: 2.5em 2em;
	}
	/*トークショー専用CSS
	---------------------------------*/
	.spc01-timetable_cont h1 {
		width: min(90%,786px);
	}
	
	.spc01-prof_photo p.ttl {
		line-height: 1.5;
		font-size: 14px;
	}
	
	/*ステッカー販売専用CSS
	---------------------------------*/
	.spc02-sale_cont {
		display: grid;
		grid-template-columns: 50% 50%;
		grid-template-rows: repeat(2, auto) auto ;
		grid-column-gap: 1em;
		grid-row-gap: 0px;
		align-items: center;
	}

	.spc02-sale_cont .ttl { grid-area: 1 / 1 / 2 / 2; }
	.spc02-sale_cont .pict { grid-area: 1 / 2 / 4 / 3; }
	.spc02-sale_cont .txt { grid-area: 2 / 1 / 3 / 2; }
	.spc02-sale_cont .price { grid-area: 3 / 1 / 4 / 2; }
	
	.spc02-sale_cont .pict {
		padding: 0;
	}
	
	p.insta-id {
		margin-bottom: 0em;
	}
	
	.spc02-follow{
		/*padding:2em 2em 0 ;*/
	}
	
	.spc02-more-cont_pict {
		padding: 0 1.5em;
	}
	
	.myx-insta_cont {
		display: grid;
		grid-template-columns: 1fr 55% 1fr;
		grid-template-rows: auto;
		grid-column-gap: 16px;
		grid-row-gap: 0px;
		align-items: center;
	}

	.myx-insta_cont .txt { grid-area: 1 / 2 / 2 / 3; }
	.myx-insta_cont .insta-img { grid-area: 1 / 1 / 2 / 2; }
	.myx-insta_cont .qr-pict { grid-area: 1 / 3 / 2 / 4; }
	
}/*end*/

@media (min-width: 576px){
	/*Mobile navi
	-------------------------------*/
	span.mbNav-brand-toyota {
		padding-top: 3px;
		font-size: 11px;
	}
	
	/*ブランドページ下の固定メニュー
	-----------------------------------*/
	.brand-site-footer{
		padding-bottom: 130px;
	}
}/*end*/
