@charset "UTF-8";
@media screen and (min-width: 1080px) {

h1 svg * {
	fill: #000;
}
/* header */

#topContent{
    height: 15vw;
	width: auto;
	background-color: #64503B;
	margin-bottom: 5vw;
	position: relative;
}
#topContent_map{
    height: 15vw;
	width: auto;
	background-color: #64503B;
	margin-bottom: 0vw;
	position: relative;
}	
#topContentMsg{
	justify-content: center;
  position: absolute;
  width: 100vw;
  top: 0vw;/*上部マージンで中央調整*/
  margin: auto;
  z-index: 1;
  display: flex;
  flex-flow: column;
  color: #fff;
}
#topContentMsg > h2{
    width: 100%;
  text-align: center;
  font-size: 2.5vw;
  line-height: 4vw;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  transform: initial;
  margin-top: -0.5vw;/*上部マージンでロゴとの間隔を調整*/
  font-weight: 500;
}
#topContentMsg > h2 span{
  text-align: center;
  font-size: 70%;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  transform: initial;
  font-weight: 400;
  }
#mainV{
	height: auto;
	width: 100vw;
}
h3{
	font-size: 6.04vw;
	text-align: center;
	margin: 0 0 0vw;
	font-weight: bold;
}
h3 img{
	display: block;
	margin:9.18vw  auto;
}
	
	
	

	


	

/* H3_コンテンツ */
.inner_Content{
	width: 100%;
	margin: 0 auto;
	font-size: 1.1vw;
	line-height: 2.2vw;
}
.inner_Content .inside{
	margin: 0vw 5vw 0vw;
}
.inner_Content > .inside h3{
    font-size: 1.6vw;
    font-weight: bold;
    text-align: left;
  padding: 0vw 0vw 2vw 0vw;
  margin: 0vw 2.5vw 0vw;/*    padding: 6.09vw 0 5.21vw;*/
  }
.inner_Content > .inside p{
  padding: 0vw 0vw 0vw 0vw;
  margin: 0vw 0vw 0vw;/*    padding: 6.09vw 0 5.21vw;*/
  }
.inner_Content > .inside p.inner{
  padding: 0vw 0vw 0vw 0vw;
  margin: 0vw 2.5vw 2vw;/*    padding: 6.09vw 0 5.21vw;*/
  }
.inner_Content h3{
	font-size: 160%;
	font-weight: bold;
	margin-bottom: 5vw;
}
.inner_Content h4{
  font-size: 1.5vw;
  font-weight: bold;
  padding: 1.25vw 5vw 1.25vw 2vw;
  margin: 0vw 7.5vw 3vw;
  color: #fff;
  background-color: #202020;
}
.inner_Content h4 span{
  margin-left: 2vw;
  font-size: 1.2vw;
  font-weight: 650;
}
.inner_Content h5{
  font-size: 1.5vw;
  line-height: 2.5vw;
  font-weight: bold;
  margin: 0vw 0vw 2vw 0vw;
}
.inner_Content p{
  font-size: 1vw;
  line-height: 2vw;
  word-break: break-all;
	text-align: justify;
	margin-bottom: 2.5vw;
}


.boxSet {
	margin: 0;
	padding: 0 7.5vw 3vw;
}
.answerContent >.boxSet {
	margin: 0;
	padding: 0 0vw 2vw 0vw;
}
.boxSet > .text {
	margin: 0vw 0vw 0vw;
}
.boxSet > .text > .table-scroll > p {
	margin-bottom: 1.5vw;
}
.boxSet img {
  width: 50%;
  height: auto;
  float: right;
  margin: 0 0 0vw 2vw;
  vertical-align: bottom;
}
.boxSet img.imgSet {
  width: 40%;
  height: auto;
  float: left;
  margin: 0 2vw 2vw 0vw;
  vertical-align: bottom;
}	
.boxSet img.pcOnly {
  width: 15%;
  height: auto;
  float: left;
  margin: 0 2.5vw 2vw 0vw;
  vertical-align: bottom;
}
.boxSet::after {
  content: "";
  display: block;
  clear: both;
}		
.boxSet > .text > p > span {
	display: block;
	line-height: 2vw;
	font-size:100%;
	margin-top: 0vw;
}	
.boxSet > .text > p.dates {
	display: block;
	line-height: 2vw;
	font-size:120%;
	margin-bottom: 2vw;
}	
	
.subH {
	margin-bottom: 2vw;
	padding: 0.5vw 0vw 0.5vw 1.5vw;
	border-radius: 0.4vw;
	font-size: 120%;
}
.subH_1 {
	margin-bottom: 1vw;
	padding: 1vw 3vw 1vw 0vw;
	color: #202020;
	border-bottom: 0.2vw solid #202020;
}
/*別ウインドウボタン*/
.Btn{
	display: block;
	line-height: 1.5vw;
	position: relative;
	/*border: 0.2vw solid #202020;*/
	border-radius: 0.5vw;
	margin-top: 2vw;
	margin-bottom: 0vw;
	padding: 1vw 0;/*上下余白指定*/
	text-align: center;/*テキスト中央寄せ*/
	color: #fff;
	background-color: #202020;
}
.Btn-Icon{
  position: absolute;
  top: 50%;
  right: 2vw;/*右からの距離*/
  width: 2.5vw;/*アイコンの横幅指定*/
  transform: translateY(-50%);/*この指定で上下中央に*/
}		
	
	
	
	
	
	
	
	
	
	
	
	

	
	
/* タブ */
.navs{
  width: 100%;
  height: 6vw;
	margin-bottom: 5vw;
  display: flex;
  justify-content: center;
  padding: 0vw 10vw;
  margin-top: 0vw;
  text-align: center;
  border-bottom: 0.25vw solid #202020;
  background-color: #fff;
  position: relative;
}
.navs_item {
	width: calc(100%/3);
	height: 6vw;
	margin: 0vw 0vw 10vw 0vw;
	padding: 2.2vw 0vw 0vw 0vw;
	border-bottom: 0.25vw solid #202020;
	font-size: 1.8vw;
	font-weight: bold;
	line-height: 1.2vw;
    cursor: pointer;
	background-color: #fff;
	text-align: center;
    display: block;
	float: left;
	transition: all 0.2s ease;
	cursor: pointer;
}
.navs li+li{
    position: relative;
}
.navs li+li::before{
    content: "";
    display: block;
    height: 2.5vw;
    border-left: 0.25vw solid #202020;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}
.navs li:first-of-type{
  border-left: none;
}
.navs_item_current{	
	width: calc(100%/3);
	/*border-left: 0.5vw solid #000;*/
	/*border-top: 0.5vw solid #000;*/
	font-weight: bold;
    cursor: pointer;
	background-color: #202020;
  color:#fff;
}
.navs .navs_item_current + li::before {
	display:none;
}
.navs span{
	display: block;
	width: 100%;
	font-size: 70%;
	margin-top: -1vw;
	margin-bottom: 1vw;
}
.list-wrap-tab ul.hide{ display: none;}

	
	
	
	
	
	
	
/* テーブル */

.table-scroll {
	overflow-x: auto;
	margin-left: 0;
	margin-bottom: 0vw;
	padding: 0vw 0vw 0vw;
}
.table_spec {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
	font-size: 1vw;
	line-height: 1.2vw;
	margin-bottom: 0vw;
}	
.table_spec thead th {
	white-space: nowrap;
	padding: 0.5vw;
}
.table_spec span {
	font-size: .7vw;
}
/*.table_spec thead th:nth-child(2) {
  position: relative;
}*/
/*.table_spec tbody {
  border: 2px solid #d2e8f1;
}*/
.table_spec th {
white-space: nowrap;
  padding: 0.5vw;
}
.table_spec tr {
	width: auto;
}
/*.table_spec tbody tr:nth-child(odd) {
  background-color: #fff;
}*/
.table_spec td {
	padding: 0.5vw;
}	

	
.table_boothList {
	border-collapse: separate;
	table-layout: fixed;
	width: 30%;
	line-height: 120%;
	border-spacing: 0px;
	font-size: 90%;
}
.float-left{
	float: left;
	margin-right: 4vw;
}
.float-right{
	float: right;
}
.table_boothList tbody {
	border-collapse: separate;
	border-spacing: 2px;
}
.table_boothList th {
	white-space: nowrap;
	width: 10%;
	padding: 0.5vw;/**/
	/*border-bottom: 2px solid #ddd;*/
}
.table_boothList tr {
	width: auto;
}
.table_boothList td {
	/*border-bottom: 2px solid #ddd;*/
}
	
	
	
/* スライド */
.slide-scroll{
	margin-left: 7.5vw;
	margin-right: 7.5vw;
	margin-bottom: 5vw;
}
.slide-scroll>div{
    height: 8.2vw;
	display: flex;
}
.slide-scroll>div>div{
	width: 14.7vw;/*単体：横幅*/
    margin-right: 2vw;
	/*border-radius: 0.5vw;*/
}
.slide-scroll>div>div img.imgbg{
	/*border-radius: 0.5vw;*/
}
.slide-scroll>div>div p{
	font-size: 1.2vw;
	line-height: 1.5vw;
}
	
	
/*スライドスクロール（写真のみ）*/
.slide-scroll2{
	margin-left: 0vw;
	margin-bottom: 1.5vw;
}
/* simplebar用 */
.simplebar-track {
    border-radius: 1vw;/* バーに丸みをもたせる*/
}
.simplebar-track .simplebar-scrollbar.simplebar-visible::before{
  opacity:1;
}
.simplebar-track .simplebar-scrollbar::before{
  background: #bbb;/* バー色設定 */
}
.scroll-area{
  height:auto;
  padding-bottom:1vw;
}
.flex{
	display:flex;
}
.flex img{
	max-width: 30vw;
	height: auto;
	margin-right: 1vw;
}
.modal_long img{
	max-width: 75vw;
	height: auto;
	margin-right: 1vw;
}
	
	

/*アコーディオン*/
.accordion {
	display: block;
	margin: 0 0vw 0 0vw;
	font-size: 100%;
}
.accordion p{
	padding-bottom: 0vw;
	width: 100%;
}
.toggle {
  display: none;
}
.faq {
  position: relative;
}
.question,.answer {
  transform: translateZ(0);
  transition: all 0.3s;
}
	
.question {
	margin: 0 7.5vw 2.5vw 7.5vw;
	border-radius: 1vw;
	border: solid 0.2vw #202020;
  padding: 1.5vw 5vw 1.5vw 1.5vw;
  display: block;
  color: #202020;
	cursor: pointer;
	line-height: 2.5vw;
}
.question > p{
  display: block;
	cursor: pointer;
	line-height: 2vw;
	margin: 1vw 0vw 0 0vw;
}
.question > span {
	display: block;
    font-size: 120%;
	margin: 0 0 0vw;
    line-height: 1.5vw;
  font-weight: 600;	
}
.question:after,.question:before {
  content: "";
  position: absolute;
  right: 2.5vw;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0.2vw;
  height: 2vw;
  background-color: #202020;
  transition: all 0.3s;
}
.question:after {
  transform: rotate(90deg);
}
.answer {
  max-height: 0;
  overflow: hidden;
}
.answer > .answerContent {
  margin-top: 0vw;
  padding: 0vw 7.5vw 0vw 7.5vw;
}
.answer > .answerContent p{
  margin-bottom: 2.5vw;
}
.answer > .answerContent p span{
	display: block;
    font-size: 90%;
	margin: 1vw 0 0vw;
	line-height: 2.5vw;
	font-weight: 400;	
}
.toggle:checked + .question + .answer {
  max-height: 10000px;/*コンテンツ高さ調整*/
  transition: all 1.5s;
}
.toggle:checked + .question:before {
  transform: rotate(90deg) !important;
}

	
	
	
/*画面内スクロールボタン*/

/* 吹き出し本体 */
.balloonSet{
	margin: 0 10vw 3vw;
	position: relative;
    display: flex;
    justify-content:space-between;
	flex-wrap: wrap;
}
.balloonSet > a{
	margin: 0 0vw 2vw 0;
	padding: 0vw 0vw;
	width: 29vw;
	position: relative;
	background-color: #fff;
	border: 0.2vw solid #202020;
    border-radius: 1vw;
	text-align: center;
	cursor: pointer;
	line-height: 5vw;
	font-size: 120%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.balloonSet > a::before{
	content: '';
	position: absolute;
	display: block;
	margin: 0 0vw 0vw 0vw;
	width: 0;
	height: 0;
	left: 13.5vw;
	bottom: -1.4vw;
	border-right: 0.8vw solid transparent;
	border-top: 1.4vw solid #202020;
	border-left: 0.8vw solid transparent;
}


/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:fixed;
	bottom:1.5vw;
	right:1.5vw;
}
.totop a {
	display:block;
	text-decoration:none;
}
.totop img {
	width: 4vw;
	background:#717171;
	border-radius:0.5vw;
}
.totop img:hover {
	background:#202020;
}
	
.red {
	color: #982832;
}	
.boxSet > .text > p > span.red{
	display: inline;
	line-height: 2vw;
	font-size: 100%;
    color: #982832;
}	

/*================================================
 *  MAP表示
 ================================================*/
.tabContent.active{
  display: block;
}
#audienceSpotWrap{/********************************/
  width: 100vw;
  /*overflow: scroll;*/
  margin: 0 -0vw 0vw -11vw;
}
#audienceSpot{
  position: relative;
}


.controllScrollOver{
  position: relative;
  width: 100vw;
  margin: auto;
  z-index: 1;
}
.controllScrollOver .controllScrollOver{
  z-index: 2;
}
.controllScrollOver.spOnlyScroll::before,
.controllScrollOver.spOnlyScroll::after {
  background-image: none;
}
.controllScrollOver{
  width: 100%;
}
#starter .controllScrollOver{
  width: 100vw;
  margin-left: -9.49vw;
}
.controllScrollWrap {
  width: 100%;
  overflow-x: scroll;
  overflow-y: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.controllScrollWrap::-webkit-scrollbar {
  display: none;
}
.controllScrollWrap::-webkit-scrollbar {
  display: none;
}
#starter .controllScrollWrap{
  padding-left: 9.49vw;
  margin-right: -9.49vw;
  padding-right: 9.49vw;
}
#mapWrap{
  position: relative;
}
.scroll_set{
  margin: 0 0 0 -11vw;
  padding: 0;
  width: 97vw;
  overflow-x: scroll;  /* 横スクロールの指定 */
  white-space: nowrap;  /* 横スクロールの指定 */
  overflow-scrolling: touch;  /* スクロールを滑らかにする */
  -webkit-overflow-scrolling: touch;  /* スクロールを滑らかにする */
    scrollbar-color: #bbb #fff;
}
#audienceSpotWrap .scroll_set{
  margin: 0 10VW 0 0vw;
  padding: 0;
  width: 100vw;
  overflow-x: scroll;  /* 横スクロールの指定 */
  white-space: nowrap;  /* 横スクロールの指定 */
  overflow-scrolling: touch;  /* スクロールを滑らかにする */
  -webkit-overflow-scrolling: touch;  /* スクロールを滑らかにする */
    scrollbar-color: #bbb #fff;
}

.boxSet > .map{
  width: 80%;
  height: auto;
  margin: 0 0vw 0vw 0vw;
  vertical-align: bottom;
}
#mapWrap img.map{/*******************************/
  width: 85vw;
  height: auto;
	margin-right: 4vw;
  position: relative;
  padding: 0;
}
/* タブ */
.tab_map{
  width: 100%;
  display: flex;
  text-align: center;
  border-bottom: 0px solid #000;
  position: relative;
  justify-content: space-between;
}
.tab_map li{
  font-size: 7vw;
  font-weight: bold;
  line-height: 2rem;
  background-color: #fff;
  border-left: 0px solid;
  border-image: linear-gradient(to bottom, transparent 40%, #000 40% 60%, transparent 60%);
  border-image-slice: 2;
  cursor: pointer;
}
.tab_map li:first-of-type{
  border: none;
}
.tab_map li.active{
  background: #000;
  color:#fff;
}




#mapWrap .tab_map{
  border-bottom: none;
}
#audienceSpotWrap .tab_map{
  position: initial;
}
#point1{/*************************************各ボタンの位置*/
  position: absolute;
  top: 121.5vw;
  left: 58.4vw;
}
#audienceSpotWrap .tab_map li.award{/**********************ボタン形状*/
  display: block;
  width: 15.6vw;
  height: 4.4vw;
  border-radius: 0.5vw;
  justify-content: center;
  align-items: center;
    background-color: red;
}
#audienceSpotWrap .tab_map li p.award{/**********************文字要素*/
    font-size: 2.3vw;
   position: absolute;
   top: 100%;
   transform: translateY(-50%) translateX(-50%);
}
	
	
	
	
	
	
}




