/**
 * @Author: Your name
 * @Date:   2018-10-27 00:55:01
 * @Last Modified by:   Your name
 * @Last Modified time: 2023-10-21 13:35:22
 */
@charset "UTF-8";
/* CSS Document */
html {
  font-size: 100%;
}
body{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	background-image: url(../image/bg_body.jpg);
	background-repeat: repeat;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	line-height: 1.8;
}
@media screen and (max-width: 498px) { 
    body{
		overflow-x: hidden; 
	}
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.t_center {
	text-align: center;
}
.t_bold {
	font-weight: 700;
}
.t_underline {
	text-decoration: underline;
}

.spNone{
	display: block;
}
.pcNone {
	display: none;
}
@media screen and (max-width: 768px) { 
    /*　画面サイズ 768pxから適用　*/
    .spNone{
		display: none;
	}
	.pcNone {
		display: block;
	}
  }

.wrapper {
	width: 100vh;
}

/*1st View*/
ul.head_content {
	width: 100vw;
	height: 100vh;
	display: flex;
	justify-content: space-between;
}
ul.head_content li{
	height: 100vh;
}
ul.head_content li.head_hero{
	position: fixed;
	width: 50%;
	background-image: url(../image/left_people.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
ul.head_content li.right_block{
	margin-left: 50%;
	height: 100vh;
}
.date_place_pc {
	width: 20vw;
	position: absolute;
	bottom: 0;
	right: 0;
	margin-bottom: 0.6rem;
	margin-right: 0.2rem;
	filter: drop-shadow(0 0 2px #ffffff);
}
@media (max-width: 768px) {
	ul.head_content {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content:left;
	}
	ul.head_content li.head_hero{
		position:relative;
		width: 100%;
	}
	ul.head_content li.right_block{
		margin-left: 0;
		margin-top: 2rem;
		width: 96%;
		height: auto;
	}
	.head_tex_sp {
		display: inherit;
		width: 80%;
		position: absolute;
		right: 0;
		bottom: 0;
	}
	img.fes_hanaso_sp {margin-bottom: 1rem;}
	img.fes_date_sp {margin-bottom: 2rem; padding-right: 1rem; filter: drop-shadow(1px 1px 0 #fff);}
}

.head_tex_pc {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	flex-direction: row;
}
img.fes_hanaso_pc {width: 80%; margin-top: 1rem;}
img.fes_date_pc {width: 65%; margin-top: 2rem; margin-right: 1rem;}
.fes_logo {
	width: 60%;
	filter: drop-shadow(0 0 3px #000000);
}

.fes_copy {	
	width: 90%;
	margin: 0 auto;
	margin-top: 1rem;
	/* 線の長さ */
    --len: 10px;
    /* 線の太さ */
    --size: 2px;
    /* 線の色 */
    --bColor: #e74b39;
    /* 次の黒線の位置 */
    --next-pos: calc(100% - var(--len));
    /* 線のパターン */
    --line: var(--bColor) var(--len), transparent var(--len) var(--next-pos), var(--bColor) var(--next-pos);
    position: relative;
    padding: 0.7rem;
    margin-bottom: 0.2rem;
    font-weight: bold;
    font-size: 26px;
    background: linear-gradient(90deg, var(--line)) 0 0/100% var(--size),
        linear-gradient(90deg, var(--line)) 0 100%/100% var(--size),
        linear-gradient(0, var(--line)) 0 0/ var(--size) 100%,
        linear-gradient(0, var(--line)) 100% 0/ var(--size) 100% transparent;
    background-repeat: no-repeat;;
	
}
p.copy_reg {font-size: 16px; font-weight: 400; line-height: 1.6em;}
p.copy_large{font-size: 24px; font-weight: 700; text-align: center; font-family: 'Jost', sans-serif;}

.fes_hash_wrapper {margin: 1rem 0; text-align: center;}
h2.fes_hash {
	font-family: 'Jost', sans-serif;
	text-align: center;
	font-size: 0.9rem;
	position: relative;
	display: inline-block;
	padding: 0.5rem 2rem 0.5rem 2rem;
	color: #fff;
	border-radius: 100vh 0 0 100vh;
	background: rgb(57, 52, 44, 0.8);
	border: 2px solid #FFF;
  }
  
  h2.fes_hash:before {
	position: absolute;
	top: calc(50% - 7px);
	left: 10px;
	width: 14px;
	height: 14px;
	content: '';
	border-radius: 50%;
	background: #f7d0a0;
  }


@media (max-width: 768px) {
	.fes_copy {
		width: 95%;
		margin: 0 auto;
	}
	p.copy_large{margin: 0.6rem 0;}
	.fes_hash_wrapper {margin:1rem 0; text-align: center;}
	h2.fes_hash {width: 95%; margin: 1rem auto; white-space: nowrap; font-size: 1rem;}
}


/* ステージ企画 */
.stagekikaku {
	width: 80%;
	margin: 5rem auto;
}
.contentmenu_title {width: 70%;}
.contentmenu {
	margin-top: -1rem;
	margin-left: 2rem;
	width: 90%;
	border-radius: 10px;
	border: 1px solid #424242;
	background-color: #fbeddf;
	padding: 1.4rem;
}
ul.cotentmenu_list {}
ul.cotentmenu_list > li{height: auto; margin-bottom: 1rem; padding-bottom: 0.6rem; border-bottom: 1px solid #b7b7b7;}
/* ul.cotentmenu_list > li:last-child{margin-bottom: 0; padding-bottom: 0; border-bottom: none; text-align: right;} */
ul.cotentmenu_list > li:last-child{margin-bottom: 0; padding-bottom: 0; border-bottom: none;}
ul.cotentmenu_list li > h3{color: #8c6e4b; font-weight: 700;}
ul.cotentmenu_list li > p.cotentmenu_list_time{color: #210e02; margin-top:0.4rem; line-height: 1.2rem; font-size: 0.8rem; font-weight: 700;}
ul.cotentmenu_list li > h3::before {
	font-family: "Font Awesome 6 Free";
	content: "\f111";
	color: #db4c43;
	font-size: 0.6rem;
	margin-right: 0.3rem;
}
ul.cotentmenu_list li > p.cotentmenu_list_tex{color: #000; line-height: 1.6rem; margin-bottom: 1rem;}
@media (max-width: 768px) {
	.stagekikaku {
		width: 90%;
		margin: 0 auto 2rem auto;
	}
	.contentmenu_title {width: 90%;}
	ul.cotentmenu_list li > h3{font-size: 1.2rem;}
	ul.cotentmenu_list li > p.cotentmenu_list_tex{font-size: 1rem; margin-top:0em; line-height: 1.6em;}
}

/* コンテンツ_小 */
.content_s {
	width: 100%;
	margin: 0 auto;
}
ul.content_s_list {
	width: 95%;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
ul.content_s_list li{
	width: 45%;
	height: auto;
	margin-bottom: 2rem;
}
@media (max-width: 768px) {
	ul.content_s_list {
		width: 80%;
		margin: 0 auto 2rem auto;
		justify-content: flex-start;
		flex-direction: row;
	}
	ul.content_s_list li{
		width: 100%;
	}
}
.contentmenu_title_s {width: 90%;}
.contentmenu_s {
	margin-top: -0.6rem;
	margin-left: 0.6rem;
	width: 100%;
	border-radius: 6px;
	border: 1px solid #424242;
	background-color: #fbeddf;
	padding: 1.4rem;
}
.contentmenu_s > p{
	font-size: 0.8rem;
	background-color: none; /* 背景色 */
	background-image: linear-gradient(180deg, #ccc 1px, transparent 1px); /* 罫線の色と太さ  */
	background-size: 100% 2.5em; /* 行の高さ */
	line-height: 2.5em; /* 文字の高さ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */	
}
p.indent-1 {
	padding-left:1em;
	text-indent:-1em;
}
@media (max-width: 768px) {
	.contentmenu_s > p{
		font-size: 1rem;
	}
}
ul.flea {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
ul.flea li{
	width: 50%;
	display: block;
	margin-top: 1rem;
}
p.flea_boshu {
	margin-left: 0.6rem;
	font-weight: 700;
	color: #FFF;
	line-height: 1.6rem;
	display: inline-block;
    width: 100%;
    height: 100%;
	padding-top: 1.6em;
    background-color:rgb(219, 76, 67);
    text-align: center;
    border-radius: 50%;
}
@media (max-width: 768px) {
	p.flea_boshu{
		font-size: 2rem;
		line-height: 3rem;
		padding-top: 4rem;
	}
}


/* リクルマイ */
.likkle-pix_wrap {
	position: relative;
	background-image: url(../image/bg_body.jpg);
	background-repeat: repeat;
	border: 1px dotted #000;
	border-radius: 6px;
	width: 100%;
	height: 300px;
}
@media (max-width: 768px) {
	.likkle-pix_wrap {
		height: 200px;
	}
}
.likkle_pic {
	z-index: 3;
	position: absolute;
	bottom: 0;
}
.likkle_crowd {position: absolute;}

.crowd_blue01 {z-index: 2; width: 50%; top: 0; right: 0;}
.crowd_pink {z-index: 2; width: 60%; bottom: 0; left: 0;}
.crowd_green {
	z-index: 4; width: 50%; bottom: 3rem; left: 0;
}
.crowd_yellow02 {
	z-index: 2; width: 80%; top: 1.3rem; left: 0;
}
/* フワフワ */
@keyframes fuwafuwa {
	0%, 100% {
	  transform: translateY(0);
	}
	50% {
	  transform: translateY(-20px);
	}
  }
  /* フェードイン〜アウト */
  .repeat-fadein-out{
	animation-name: smooth-fadein-out;
	animation-duration: 1.5s;
	animation-timing-function: ease;
	animation-delay: 0s;
	animation-iteration-count: infinite;
	animation-direction: alternate;
  }
  
  @keyframes smooth-fadein-out {
	0% {opacity: 0; transform: translateX(-20px);}
	100% {opacity: 1;}
  }

  /* フェードライト */
  .faderight {
    animation-name: faderight;
    animation-duration: 8s;
    animation-iteration-count: infinite;
}
@keyframes faderight {
	0% { left: 0; opacity: 0;}
	25% { left: 20%; opacity: 0.6;}
	50% { left: 40%; opacity: 1;}
	75% { left: 80%; opacity: 0.1;}
	100% { left: 100%;  opacity: 0;}
  }
  /* //フェードライト */
  
  /* 点滅 */
  .blinking {
	animation:blink 1.5s ease-in-out infinite alternate;
  }
  @keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
  /* //点滅 */
  
  /* このクラスをつけると回転を無限に繰り返します */
  .anime-fuwafuwa {
	animation: 6s fuwafuwa infinite;
  }

  


/* モーダル内部 */
ul.likkle_pro {
	width: 100%;
	display: flex;
	justify-content: flex-start;
}
li.likkle_pro_pic {width: 40%;}
li.likkle_pro_pic > img {width: 100%; max-width: 100%; border-radius: 4px;}
li.likkle_pro_tex {width: 60%; padding: 0 2rem; box-sizing: border-box; font-size: 95%;}

@media (max-width: 768px) {
	ul.likkle_pro {
		justify-content: flex-start;
		flex-direction: column;
		flex-wrap: wrap;
	}
	li.likkle_pro_pic {width: 100%;}
	li.likkle_pro_pic > img {border-radius: 2px;}
	li.likkle_pro_tex {width: 100%; padding: 1rem 0; font-size: 100%;}
}


/* 人々 */
.cotentmenu_list li {position: relative;}
.people {z-index: 3; position: absolute;}

.p_guitar {width: 6em; left: -6rem; top: -6rem;}
.p_politician {width: 4em; right: -2rem; bottom:0;}
.p_obachan {width: 4em; right: -3rem; bottom: 0;}
.p_chari {width: 5em; right: -3rem; bottom: -2rem;}
.p_ji {width: 4.5em; left: -4rem; bottom: -2rem;}
.p_phone {width: 3em; right: -2.5rem; bottom: -2rem;}
.p_kurumaisu {transform: scale(-1, 1); width: 4em; left: -0.5rem; bottom: -2rem;}
.p_cafe {width: 8em; left: -5.5rem; bottom: -2rem;}
.p_skinskater {width: 3em; left: -0.8rem; top: 1rem;}
.p_ol {width: 3em; right: -2rem; bottom: 6rem;}
ul.people_one {display: flex; left: -0.4rem; bottom: -3rem;}
ul.people_one > li {}
.p_audience_a  {width: 2.3em;}
.p_politician_female  {width: 2.4em;}
.p_flea {width: 8rem; right: -2rem; top: 10rem;}
.p_divine {width: 3.8rem; left: -1.8rem; top: 7rem;}
ul.people_two {display: flex; right: 0rem; bottom: 3.6rem;}
ul.people_two > li {}
.p_fisher  {width: 3rem;}
.p_farmer {width: 3.1rem;}
ul.people_three {display: flex; align-items: flex-end; right: -4rem; bottom: -5rem;}
ul.people_three > li {}
.p_iam {width: 4rem;}
.p_protester {width: 3rem;}
.p_nurse {transform: scale(-1, 1); width: 5em; right: -3rem; bottom: -2.5rem;}

.skater_box {width: 100%; position: relative;}
.p_skater {transform: scale(-1, 1); width: 8rem; position: absolute; left: 0; top: 0;} 

.p_bow {width: 3rem; right: 0; bottom: 0rem;}

@media (max-width: 768px) {
	.p_guitar {width: 6em; left: -5rem; top: -6rem;}
	.p_politician {transform: scale(-1, 1); width: 4em; left: -4.3rem; bottom:0;}
	.p_obachan {width: 4em; right: -1.5rem; bottom: -3rem;}
	.p_chari {width: 4.5rem; right: -2rem; bottom: -4.5rem;}
	.p_kurumaisu {transform: scale(-1, 1); width: 5em; left: -2.5rem; bottom: 0rem;}
	.p_cafe {width:9em; left: 9rem; bottom: -3rem;}
	.p_skinskater {width: 3em; left: -2rem; top: 3rem;}
	.p_nurse {transform: scale(-1, 1); width: 5em; right: -3.5rem; top: 4rem;}
	.p_ol {bottom: 0;}
	ul.people_one {left: -1rem; bottom: -4rem;}
	.p_flea {width: 7rem; right: -2.5rem; top: 13rem;}
	.p_divine {width: 5.8rem; left: -4rem; top: 7rem;}
	ul.people_two {right: -2rem; bottom: -7rem;}
	.p_fisher  {width: 3rem;}
	.p_farmer {width: 3.8rem;}
	ul.people_three {right: -1rem; bottom: -8.5rem;}
	.p_iam {width: 4.5rem;}
	.p_protester {width: 3.5rem;}
	.p_bow {width: 4rem; left: 0; bottom: -1rem;}
}
.buruburu {
    display: inline-block;
    animation: hurueru .1s  infinite;
}

@keyframes hurueru {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(2px, 2px) rotateZ(1deg)}
    50% {transform: translate(0px, 2px) rotateZ(0deg)}
    75% {transform: translate(2px, 0px) rotateZ(-1deg)}
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
}

/* マップ */
.map {width: 100%;}

/* ダウンロード */
.fas_button_radius_dl{
	margin-top: 1em;
	border: none;
	padding: 0 20px;
	height: 30px;
	line-height: 1;
	background: rgb(138, 115, 8, 0.4);
	color: #fff;
	border-radius: 5px;
	font-size: 1em;
	cursor: pointer;
}
.fas_button_radius_dl:before{
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 6 Free"; 
	font-weight: 900;
	content: '\f0ed';
	margin-right: 5px;
}
.fas_button_radius_dl:hover{
	background: rgb(138, 115, 8, 0.9);
}
/* // */

/* マーカー */
/* ラインマーカー */
.lineMarker.scroll-in{
	background-position: -100% 0.7rem;
	}
	
	.lineMarker {
	background-image: -webkit-linear-gradient(left, transparent 50%, rgb(255,250,90) 10%);
	background-image: -moz-linear-gradient(left, transparent 50%, rgb(255,250,90) 10%);
	background-image: linear-gradient(left, transparent 50%, rgb(255,250,90) 10%);
	background-repeat: repeat-x;
	background-size: 200% .7em;
	background-position: 0 .8em;
	transition: all 1.2s ease;
	font-weight: bold;
	}
	
	



	
.btm_content {
	width: 90%;
	margin: 2rem auto 0 auto;
} 
.under_title {
	font-size: 1.1rem;
	font-weight: 700;
	background-color: none; /* 背景色 */
	background-size: 100% 2.5em; /* 行の高さ */
	line-height: 2.8em; /* 文字の高さ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */	
}
@media (max-width: 768px) {
	.under_title {
		font-size: 1.1rem;
	}
}
.title_red {
	background-image: linear-gradient(180deg, #e06c6c 1px, transparent 1px); /* 罫線の色と太さ  */
	color: #e06c6c;
}

.title_blk {
	background-image: linear-gradient(180deg, #363636 1px, transparent 1px); /* 罫線の色と太さ  */
	color: #363636;
}
.title_center {text-align: center;}

.btm_content > p{
	font-size: 0.9rem;
	line-height: 1.4rem;
} 
@media (max-width: 768px) {
	.btm_content > p{
		font-size: 1rem;
		line-height: 1.6rem;
	}
}
.fas_button_radius{
	margin-top: 1em;
	border: none;
	padding: 0 20px;
	height: 30px;
	line-height: 1;
	background: rgb(138, 115, 8, 0.4);
	color: #fff;
	border-radius: 5px;
	font-size: 1em;
	cursor: pointer;
}
.fas_button_radius:before{
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 6 Free"; 
	font-weight: 900;
	content: '\f138';
	margin-right: 5px;
}
.fas_button_radius:hover{
	background: rgb(138, 115, 8, 0.9);
}
a.under_link {
	font-size: 0.9rem;
	text-decoration: none;
	color: #FFF;
}
h3.donation_title {font-size: 1.1rem; margin-top: 0.6rem;}
.donation_red {color: #e06c6c;}
.donation_blk {color: #363636;}
p.donation_tex {font-size: 0.8rem;}
p.donation_tex > span{font-size: 0.8rem;}
p.donation_tex a {color: #363636; text-decoration: none;}
p.donation_tex a:hover {text-decoration: underline;}
div.flags {
	width: 100%;
	margin: 0.6rem auto 0 auto;
	display: grid;
	grid-template-columns: 40% 20% 40%;
}
div.flags > img {padding: 0.2rem;}
@media (max-width: 768px) {
	p.donation_tex {font-size: 1.1rem;}
	p.donation_tex > span{font-size: 1rem;}
	a.under_link {font-size: 1rem;}
}
h2.access_title {color: #FFF;}
.map {
	width: 95%;
	margin: 0.6rem auto 0 auto;
}
.googlemap {
	margin: 2rem 0;
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 75%; /* 比率を4:3に固定 */
  }
   
  /* Google Mapのiframe */
  .googlemap > iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border:0;
	filter: grayscale(100%) opacity(65%);
	transition: all 0.7s ease;
	/* filter:opacity(70%);-webkit-filter:opacity(70%) */
  }

  /* 踊ろう 話そう 食べよう つながろう */
  .dancechar_box {
	float: right;
	background-color: #fff;
  	width:25rem;
  	height:3rem;
  	border-radius:1.5rem 0 0 1.5rem;
	padding: 1rem 0 1.5rem 0;
  	background:#fff;
	border: 2px solid #3e3e3e;
	margin-bottom: 2rem;
  }

  .dancechar{
	text-align: center;
	height: 3rem;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #e06c6c;
  }
  .dancechar span{
	display: inline-block;
	position: relative;
  }
  .dancechar span{
	animation: pop 0.6s ease-in 0.5s infinite;
  }
  .dancechar span:nth-child(1) {
	animation-delay: 0s;
  }
  .dancechar span:nth-child(2) {
	animation-delay: 0.1s;
  }
  .dancechar span:nth-child(3) {
	animation-delay: 0.2s;
  }
  .dancechar span:nth-child(4) {
	animation-delay: 0.3s;
  }
  .dancechar span:nth-child(5) {
	animation-delay: 0.4s;
  }
  .dancechar span:nth-child(6) {
	animation-delay: 0.5s;
  }
  .dancechar span:nth-child(7) {
	animation-delay: 0.6s;
  }
  .dancechar span:nth-child(8) {
	animation-delay: 0.7s;
  }
  .dancechar span:nth-child(9) {
	animation-delay: 0.8s;
  }
  .dancechar span:nth-child(10) {
	animation-delay: 0.9s;
  }
  .dancechar span:nth-child(11) {
	animation-delay: 1s;
  }
  .dancechar span:nth-child(12) {
	animation-delay: 1.1s;
  }
  .dancechar span:nth-child(13) {
	animation-delay: 1.2s;
  }
  .dancechar span:nth-child(14) {
	animation-delay: 1.3s;
  }
  .dancechar span:nth-child(15) {
	animation-delay: 1.4s;
  }
  @keyframes pop {
	0%{
	  top: 0;
	  transform: scale(1);
	}
	30% {
	  top: -25%;
	}
	50% {
	  transform: scale(1);
	}
	90% {
	  top: 0;
	  transform: scale(1.2,0.8);
	}
	100% {
	  top: 0;
	  transform: scale(1);
	}
  }

  /* 当日注意事項 */
  .btm_content_att {clear: both; margin: 3rem auto; padding: 2rem; border-radius: 4px; background-color: rgba(193, 155, 18, 0.1);}
  h2.att {font-size: 0.9rem; font-weight: 700; text-align: center; margin-bottom: 1rem;}
  ul.btm_content_att_list {margin-left: 1em;}
  ul.btm_content_att_list > li {
	font-size: 0.8rem;
	padding-left:1.2em;
	text-indent:-1.2em;
	line-height: 1.4em;
	margin-bottom: 0.6em;
	list-style: none;
	height: auto;
}
ul.btm_content_att_list > li:before{
	font-weight: 400;
	margin-right: 0.2em;
}
ul.btm_content_att_list > li:before{
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	content:'\f14a';
}