@charset "UTF-8";

:root {
    --main-bg-col: #fff;
    --sub-bg-col: #dbf5ff;
    --sub2-bg-col: #c7598f;
    --sub-col: #1c2050;
    --sub2-col: #0D3191;
    /* --sub3-col: #dfe1f6; */
    --ttl-col: #b4aadc;
    --day1-col: #4267b2;
    --day2-col: #ca4632;
}
#matsuri {
  animation: fadein 1.5s forwards;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.page-contents{
	background-image: 
		url("../images/bg-left.svg"),
		url("../images/bg-right.svg"),
		linear-gradient(0deg, rgba(0,24,87,1) 0%, rgba(133,153,184,1) 16%, rgba(150,193,198,1) 30%, rgba(142,209,242,1) 55%, rgba(9,20,133,1) 85%);
	background-position: 
		left top,
		right top;
	background-repeat: 
		no-repeat,
		no-repeat;
	background-size: 
		20%,
		20%,
		100%;
	
}
@media screen and (max-width: 1024px) {
	.page-contents{
		background-position: 
			left -40px top 0px,
			right -35px top -40px;
		background-size: 
			38%,
			38%,
			200%;
		/*padding-bottom: 300px;*/
	}
	.guide .page-contents{
		
	}
}


.water{
	width: 100%;
	background-image: url("../images/top/mizu-mov.svg");
	background-position: top center;
	background-repeat: repeat;
	padding-bottom: 50px;
	background-size: 150%;
	animation: parallax linear both 0.001s;
	animation-timeline: view();
}
@keyframes parallax {
  from {
    background-position: center 100;
  }

  to {
    background-position: center -3000px;
  }
}
@media screen and (max-width: 766px) {
	
}
.page-contents h2{
	padding: 100px 0px;
	text-align: center;
	font-weight: bold;
	font-size: 3.5rem;
	color: #fff;
	text-shadow: 0 0 10px #1c2050;
}
.in-contents{
	width: 93%;
	max-width: 1200px;
	background: rgba(255,255,255,0.9);
	margin: 0 auto;
	padding: 50px 50px 70% 50px;
	border-radius: 50px 50px 0 0;
}



.in-contents h4 {
	margin-bottom:40px;
	padding:0px 10px;
	font-size: 1.6rem;
	font-weight: 700;
	display: inline-block;
	background-image: linear-gradient(rgba(0,0,0,0) 70%, rgb(89,196,241) 70%);
}
@media screen and (max-width: 1024px) {
	.page-contents h2{
		font-size: 2rem;
		font-weight: bold;
		padding-bottom: 50px;
	}
	.in-contents{
		padding: 15px 15px 600px 15px;
		border-radius: 20px 20px 0 0;
	}
	.in-contents h4{
		font-size: 1.2rem;
		margin-bottom: 20px;
	}
}
.col__block {
	padding-bottom: 100px;
}



/*------------------------
  エントリーボタン
------------------------*/

.entry-area{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0px 0px 50px 0px;
	text-align: center;
}

/*.entry-area ul{
	display: grid;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
}*/
.entry-area ul{
	display: flex;
	justify-content: center;
}
.entry-area ul li{
	width: 100%;
	max-width: 500px;
}
/*a.niji,
.entry-area ul li a{
	pointer-events: none;
}*/
@media screen and (min-width: 1025px) {
  .entry-area ul {
    grid-template-columns: repeat(3, 1fr);
  }
	a.btn-flat::before {
		left: calc(-120% + 100px);
	}
	a.btn-flat::after {
		right: calc(-120% + 100px);
	}
}
@media screen and (max-width: 1024px) {
	.entry-area{
		width: 95%;
	}
  .entry-area ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 599px) {
	.entry-area{
		width: 90%;
	}
  .entry-area ul {
    grid-template-columns: repeat(1, 1fr);
	grid-column-gap: 15px;
  }
	.entry-sub{
		font-size: 12px;
	}
	a.btn-flat::before {
		left: calc(-120% + 50px);
	}
	a.btn-flat::after {
		right: calc(-120% + 50px);
	}
}

.entry-area ul li a.btn {
  width: 100%;
	color: #fff !important;
	text-decoration: none !important;
}
a.color-sat::after,
a.color-sat::before {
  background: #0080C9 !important;
}
a.color-sun::after,
a.color-sun::before{
  background: #C9005E !important;
}
a.color-u22::after,
a.color-u22::before{
  background: #0d449f !important;
}


.entry-area h2.entry-ttl {
  position: relative;
  display: inline-block;
  padding: 0 65px;
  text-align: center;
	font-size: 40px;
	font-weight: bold;
	color: #000;
	text-shadow: inherit;
}

@media screen and (max-width: 599px) {
	.entry-area h2.entry-ttl {
		font-size: 20px;
	}
}
.entry-area h2.entry-ttl:before,
.entry-area h2.entry-ttl:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  content: '';
  border-top: solid 2px #000;
  border-bottom: solid 2px #000;
	background: none !important;
}

.entry-area h2.entry-ttl:before {
  left: 0;
}

.entry-area h2.entry-ttl:after {
  right: 0;
}

.entry-txt{
	padding: 30px 0px;
	text-align: center;
}

.entry-sub{
	color: #C9005E;
	text-align: center;
	padding-top: 30px;
	font-weight: bold;
}

/*------------------------
  TOURNAMENT
------------------------*/
.tornament-all{
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	padding-bottom: 50px;
}
.tornament-all dl{
	display: flex;
	align-items: center;
	padding: 10px 0px;
	margin-bottom: 10px;
}
.tornament-all dl dt,
.tornament-all dl dd{
	display: table-cell;
}
.tornament-all dl dt{
	width: 29%;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	background: #ccc;
	padding: 26px 0px;
}

.tornament-all dl dd{
	width: 70%;
	padding-left: 2rem;
}


.tornament-all dl dd ul li{
	font-size:12px; 
}
.tornament-all dl dd ul li.asterisk:last-of-type{
	padding-bottom: 0 !important;
}

.tb__st1 {
	width:100%;
	border-top:2px #444 solid;
	border-bottom:2px #444 solid;
}
.tb__st1 th {
	width:35%;
	padding:10px;
	text-align:center;
	vertical-align:middle;
}
.tb__st1 td {
	width:65%;
	padding:10px 0;
}
.tb__st1 tr {
	border-bottom:1px #444 solid;	
}
.tb__st1 tr:last-of-type {
	border-bottom: none;
}
.day__box {
	padding:20px;
}
.day__box p.right a{
	color: #80C7FF;
	text-decoration: underline;
	transition: all 0.3s;
}
.day__box p.right a:hover{
	text-decoration: none;
}
.day__box h5,
.dayentry__box h5 {
	font-size:21px;
	font-weight: bold;
	line-height:1.4;
	padding-bottom:10px;
}

.day__box h5 span {
	display:block;
}
.container .flex {
	display: flex;
	gap: 30px;
	justify-content: center;
}
.day__box .flex .contents__btn {
	width: auto;
}
.day__box .flex .contents__btn:not(:last-child) {
	margin-bottom: 0;
}
.day__box .more {
	font-size: 1.2em;
}

.day__box .logo__wrap {
	padding: 10px 0 30px;
	width: 100%;
	min-width: 500px;
	display: inline-block;
}
.day__box__ttl, .dayentry__box__ttl {
	padding:20px 0 5px;
	text-align:center;
	font-size:34px;
	font-weight: bold;
}
.day__box__ttl span {
	font-size:50px;
}
.day__box__ttl span.week {
	font-size:20px;
	padding:3px;
	margin-bottom:5px;
	display: inline-block;
	border-radius: 50%;
	background-color:var(--day1-col);
	color: #fff;
	vertical-align: middle;
	text-align: center;
}
.day2 .day__box__ttl span.week {
	background-color: var(--day2-col);
}
.day__box__ttl p {
	padding:0;
	line-height:1.1;
}
.day__box.day1 {
	border:1px #0080C9 solid;
}
.day1 .day__box__ttl {
	color:var(--day1-col);
	background-color:#fff;
}
.day__box.day2 {
	border:1px #C9005E solid;
}
.day2 .day__box__ttl {
	color:var(--day2-col);
	background-color:#fff;
}
.day__tb1{
	margin-top: 2rem;
}
.day__tb1, .day__tb2, .day__tb3 {
	padding-bottom:30px;
}
.day__tb3:last-of-type {
	padding-bottom: 0;
}
.day__tb1 th,
.day__tb2 th,
.day__tb3 th {
	font-size:18px;
	font-weight:bold;
	background-color:#dcdcdc;
}
.day1 .day__tb2 th {
	width:35%;
}
.day__tb1 td,
.day__tb2 td,
.day__tb3 td {
	width:auto;
	font-size:1.1rem;
	font-weight:bold;
	padding-left:30px;
	vertical-align:middle;
}
.tournament__tb .annot {
	font-size: 14px;
}
.tournament__tb td span,
.day__tb1 span,
.day__tb2 span,
.day__tb3 span {
	font-weight:normal !important;
	display: inline-block;
}
.day1-doubles{
	width: 40%;
}
.day2-doubles{
	width: 40%;
}
.day__box .contents__btn {
	margin-bottom:25px;
	text-align: center;
}
.day24 .contents__btn + p {
	color:#ef0000;
}

.asterisk {
	color: #C9005E;
}
.mb-btn{
	padding: 20px 0px;
	text-align: center;
}

a.btn-flat2::before,
a.btn-flat2::after,
a.btn-flat::before,
a.btn-flat::after{
  background: #C9005E;
}

.dayentry__detail p, .dayentry__daybox__detail p:not(.annot){
	padding-bottom: 0;
	text-align: center;
	font-size: 1.2rem;
	font-weight: bold;
}
.ent-start{
	display: table;
    background: #f00;
    color: #fff;
    font-size: 12px;
    text-align: center;
    font-weight: normal;
    padding: 5px 10px;
}
@media screen and (max-width: 599px) {
	.ent-start{
		font-size: 8px;
	}
}
@media screen and (min-width: 1025px) {
	html{
		scroll-padding-top: 70px
	}
	.dayentry__block{
		background-color: #fff;
		padding-top:130px;
	}
	.dayentry__box{
		display: flex;
		justify-content: center;
		gap: 15px;
	}
	.dayentry__detail p{
		font-size: 18px;
		width: 60%;
		margin: auto;
	}
	.dayentry__detail h4{
		font-size: 32px;
	}
	.dayentry__detail{
		margin: 0 20px;
		padding: 30px 0;
		margin-top: -100px;
	}
	.dayentry__daybox__detail{
		width: 70%;
		margin: auto;
		padding: 0 0;
	}
	.dayentry__title{
		text-align: center;
	}
	.dayentry__box__ttl {
		padding:10px 0 6px;
		margin-bottom: 20px;
		text-align:center;
		font-size:34px;
	}
	.dayentry__box__ttl span.week {
		font-size:20px;
		padding:3px;
		margin-bottom:5px;
		display: inline-block;
		border-radius: 50%;
		background-color:#fff;
		color: #0080C9;
		vertical-align: middle;
		text-align: center;
	}
	.day2 .dayentry__box__ttl span.week {
		color: #C9005E;
	}
	.dayentry__box__ttl p {
		padding:0;
		line-height:1.1;
	}
	.day1 .dayentry__box__ttl {
		color:#fff;
		background-color:#0080C9;
	}
	.day2 .dayentry__box__ttl {
		color:#fff;
		background-color:#C9005E;
	}
	.dayentry__daybox{
		width: 620px;
		padding-bottom: 10px;
	}
	.dayentry__table{
		padding: 0 20px 30px 20px;
	}
	.dayentry__table table{
		width: 100%;
		border-top: 2px #111 solid;
		border-bottom: 2px #111 solid;
	}
	.dayentry__gm{
		display: flex;
	}
	.dayentry__gmfmt, .dayentry__gmfmt__ht{
		width: 60%;
		margin-right: 0;
	}
	.dayentry__gmfmt, .dayentry__gmfmt__ht{
		font-weight: bold;
		vertical-align: middle;
		font-size: 21px;
		font-family: ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Avenir, Helvetica neue, Helvetica, 游ゴシック, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ\ Ｐゴシック, sans-serif;
	}
	.handicap{
		width: 40%;
		line-height: 30px;
		margin: auto 0;
		text-align: right;
	}
	.handicap span{
		background-color: var(--sub2-col);
		color: #fff;
		padding: 5px;
		font-weight: bold;
		font-size: 13px;
	}
	.dayentry__table th{
		background-color: #dcdcdc;
		font-weight: bold;
		font-size: 18px;
		text-align: center;
		vertical-align: middle;
		width: 35%;
		padding: 10px 0;
		border-bottom: 1px #111 solid;
		border-top: 1px #111 solid;
	}
	.dayentry__table td{
		font-weight: bold;
		font-size: 1.1rem;
		vertical-align: middle;
		padding: 10px 0;
		padding-left: 30px;
		border-bottom: 1px #111 solid;
		border-top: 1px #111 solid;
	}
	.col__box{
		padding: 0px 1rem;
		line-height: 1.8rem;
	}
}
@media screen and (max-width: 1024px) {
	html{
		scroll-padding-top: 60px;
	}
	.dayentry__block{
		background-color: #fff;
		margin: auto;
		width: 92%;
		height: 100%;
		margin-top:40px;
	}
	.dayentry__detail h4{
		font-size: 20px;
	}
	.dayentry__detail{
		padding: 40px 0;
		margin: auto;
		margin-top:-70px;
	}
	.dayentry__daybox__detail{
		width: 100%;
		margin: auto;
		padding-bottom: 30px;
		text-align: left;
	}
	.dayentry__detail p, .dayentry__daybox__detail p:not(.annot){
		font-size: 1rem;
	}
	.dayentry__title{
		text-align: center;
	}
	.dayentry__box__ttl {
		padding:10px 0 6px;
		margin-bottom: 15px;
		text-align:center;
		font-size:18px;
	}
	.dayentry__box__ttl span {
		font-size:26px;
	}
	.dayentry__box__ttl span.week {
		font-size:11px;
		padding:3px;
		margin-bottom:5px;
		display: inline-block;
		border-radius: 50%;
		background-color:#fff;
		color: #0080C9;
		vertical-align: middle;
		text-align: center;
	}
	.day2 .dayentry__box__ttl span.week {
		color: #C9005E;
	}
	.dayentry__box__ttl p {
		padding:0;
		line-height:1.1;
	}
	.day1 .dayentry__box__ttl {
		color:#fff;
		background-color:#0080C9;
	}
	.day2 .dayentry__box__ttl {
		color:#fff;
		background-color:#C9005E;
	}
	.dayentry__daybox{
		padding: 0;
		margin-bottom: 40px;
	}
	.dayentry__box .day1{
		height: 100%;
	}
	.dayentry__table{
		padding: 0 10px 30px 10px;
	}
	.dayentry__daybox__detail{
		padding: 0 10px 20px;
	}
	.dayentry__table table{
		width: 100%;
		border-top: 2px #111 solid;
		border-bottom: 2px #111 solid;
	}
	.dayentry__gmfmt{
		width: 70%;
		margin-right: 0;
		float: left;
	}
	.dayentry__gmfmt, .dayentry__gmfmt__ht{
		font-weight: bold;
		vertical-align: middle;
		color: #111;
		font-size: 15px;
		padding: 0 0 0 15px;
		font-family: ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Avenir, Helvetica neue, Helvetica, 游ゴシック, YuGothic, Yu Gothic, メイリオ, Meiryo, ＭＳ\ Ｐゴシック, sans-serif;
	}
	.dayentry__gmfmt__ht{
		width: 100%;
		margin-right: 0;
		float: left;
	}
	.dayentry__gmfmt__ht{
		font-weight: bold;
		vertical-align: middle;
		color: #111;
		font-size: 15px;
		padding: 3px 0 0 15px;
	}
	.handicap{
		width: 30%;
		float: right;
		text-align: right;
	}
	.handicap span{
		background-color: #e6232a;
		color: #fff;
		padding: 3px;
		font-weight: bold;
		font-size: 10px;
	}
	.dayentry__table th{
		background-color: #dcdcdc;
		font-weight: bold;
		font-size: 13px;
		text-align: center;
		vertical-align: middle;
		width: 40%;
		padding: 10px 0;
		border-bottom: 1px #111 solid;
		border-top: 1px #111 solid;
	}
	.dayentry__table td{
		font-weight: bold;
		font-size: 0.9rem;
		vertical-align: middle;
		padding: 10px 0;
		padding-left: 10px;
		border-bottom: 1px #111 solid;
		border-top: 1px #111 solid;
	}
}



.tornament-box{
		width: 100%;
	max-width: 1000px;
		margin: 0 auto 50px auto;
	}
	.tornament-box h3{
		text-align: center;
		font-size: 18px;
		color: #fff;
		padding: 10px 0px;
		margin-bottom: 2rem;
		font-weight: bold;
	}
	.tornament-box h3 span{
		font-size: 40px;
	}
	.tornament-box h3 span.week{
		    font-size: 12px;
    padding: 3px 7px;
    border-radius: 50%;
    background-color: #fff;
    vertical-align: middle;
    text-align: center;
    /* margin-bottom: -16px; */
    display: inline-block;
    margin-bottom: 12px;
    margin-left: 5px;
    font-weight: bold;
	}
	.tornament-box h3.sat-ttl{
		background: #0080C9;
	}
	.tornament-box h3.sun-ttl{
		background: #C9005E;
	}
	.tornament-box h3.sat-ttl span.week{
	    color: #0080C9;
	}
	.tornament-box h3.sun-ttl span.week{
	    color: #C9005E;
	}
.tornament-box dl {
	margin-bottom:8px;
	border-bottom:solid 1px #E0E0E0;
}

.tornament-box dt {
	padding:16px 32px 16px 16px;
	position:relative;
	border-bottom:solid 1px #E0E0E0;
	cursor:pointer;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
	display: flex;
	align-items: center;
}

.tornament-box dt:after {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-top: 4px solid #BDBDBD;
	border-right: 4px solid #BDBDBD;
	transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -5px;
	transition-property: all;
	transition-duration: .3s;
	transition-timing-function: ease-out;
	transition-delay: .1s;
}

.tornament-box dt.select:after {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

	.tornament-box dl dt .area-photo{
		width: 200px;
	}
	.tornament-box dl dt .area-title{
		font-size: 20px;
		font-weight: bold;
		padding-left: 50px;
	}
.tornament-box dd {
	padding:16px;
	display:none;
}
	
	.col__box{
		line-height: 1.8rem;
	}
	.daybox-item{
		text-align: center;
		margin-bottom: 2rem;
	}
.daybox-item img{
	width: 580px;
}
	.dayentry__daybox{
		width: 100%;
		border: none;
		outline: none;
	}
.sat-area h4{
	text-align: center;
	font-size: 2rem;
	background: #0080C9;
	padding: 10px 0px 15px 0px;
	margin-bottom: 1.5rem;
	margin-top: 2rem;
	font-weight: bold;
	color: #fff;
	display: block;
}
@media screen and (max-width: 599px) {
	.tornament-all dl{
		display: block;
	}
	.tornament-all dl dt{
		width: 100%;
		padding: 10px 0px;
		font-size: 16px;
		margin-bottom: 1rem;
	}
	.tornament-all dl dd{
		width: 100%;
		padding-left: 0px;
	}
	.tornament-all dl dt,
	.tornament-all dl dd{
		display: inherit;
	}
	
	.tornament-box{
		font-size: 12px;
	}
	.tornament-box dl dt {
		flex-wrap: wrap;
		padding: 10px 32px 10px 10px;
	}
	.tornament-box dl dt .area-photo{
		width: 40%;
	}
	.tornament-box dl dt .area-photo img{
		width: 100%;
	}
	.tornament-box dl dt .area-title{
		width: 60%;
		font-size: 15px;
		padding-left: 20px;
	}
	.tornament-box dd{
		padding: 20px 0px;
	}
	.tornament-box h3 span{
		font-size: 30px;
	}
	.day__box{
		padding: 0px;
	}
	.day__tb1 th,
	.day__tb2 th,
	.day__tb3 th {
		font-size:1rem;
	}
	.day__tb1 td,
	.day__tb2 td,
	.day__tb3 td {
		font-size:0.8rem;
		padding-left:20px;
	}
	.sat-area h4{
		font-size: 1.2rem;
		padding: 10px 0px;
	}
}

/*------------------------
  トーナメントルール
------------------------*/

.matsuri_rule .contents__block h4,
.matsuri_mentry .contents__block h4,
.matsuri_caution .contents__block h4, 
.matsuri_guideline .contents__block h4, 
.matsuri_world .contents__block h4 {
	margin: 0px 10px 40px;
	padding: 10px 0;
}
.contents__rule ul {
	margin-bottom: 2em;
}
.contents__rule ul:last-of-type {
	margin-bottom: 0;
}
.annotation {
	color: #f10000;
	padding: 0 140px 40px ;
	text-align: center;
}
.annotation a {
	color: #f10000 !important;
}
.col__box h5 {
	font-size: 1.1rem;
	font-weight: bold;
}

@media screen and (max-width: 1024px) {
	.matsuri_rule .contents__block h4,
	.matsuri_caution .contents__block h4,
	.matsuri_mentry .contents__block h4, 
	.matsuri_guideline .contents__block h4,
	.matsuri_world .contents__block h4 {
		margin: 0px 10px 30px;
	}
	.annotation {
		padding: 0 15px 30px
	}
}


.col-free{
	font-size: 1.5rem;
	font-weight: bold;
	color: #C9005E;
}

.col__box a{
	color: #C9005E;
	text-decoration: underline;
}

.col__box a:hover{
	text-decoration: none;
}

/*------------------------
  エントリー方法
------------------------*/
@media screen and (min-width: 600px) {
	.entry-sp{
		display: none;
	}
}
@media screen and (max-width: 599px) {
	.entry-sp{
		display: block;
	}
	.entry-sp dl{
		padding-bottom: 3rem;
	}
	.entry-sp dl dt{
		font-size: 18px;
		font-weight: bold;
		border-bottom: 1px solid #eee;
		padding-bottom: 5px;
		margin-bottom: 8px;
		letter-spacing: 0;
	}
	.entry-sp dl dd ul{
		padding-bottom: 1rem;
	}
	.entry-sp dl dd ul li{
		font-size: 12px;
		line-height: 1.5;
		letter-spacing: 0;
	}
	
	.entry__tb{
		display: none;
	}
}



.entry__head__block {
	padding:0 0 30px;
	/*background:url(../images/bg_color3.jpg) repeat center center;*/
}
.entry__head {
	display: flex;
	align-items: center;
}
.entry__head__txt {
	width: 60%;
	padding-left:140px;
	font-size:20px;
}
.entry__head__img {
	width: 50%;
	text-align:right;
}

.entry__step__block {
	padding:0px 0px 100px 0px;
}
.entry__step__box {
	display: flex;
	align-items: center;
	margin-bottom:30px;
	padding:30px 30px 15px;
	background: var(--sub-bg-col);
	position:relative;
}
.entry__step__box:after {
	content:"▼";
	font-size:36px;
	color:#fff;
	position:absolute;
	bottom:-45px;
	left:50%;
	margin-left:-30px;
	width:60px;
	height:60px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius:30px;
	background-color:#adadad;
	z-index:2;
}
.entry__step__txt {
	width: 100%;
}
.entry__step__txt h5 {
	margin-bottom:15px;
	padding-bottom:5px;
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-size:26px;
	border-bottom:1px #111 solid;
}
.entry__step__txt h5.tag1 {
	background:url(../images/tag1.png) no-repeat right center;
}
.entry__step__txt h5.tag2 {
	background:url(../images/tag2.png) no-repeat right center;
}
.entry__step__txt h5 span {
	margin-right:10px;
	padding:10px 6px;
	font-size:20px;
	font-weight: 900;
	color: var(--sub2-col);
}

.entry__step__txt .entry__link {
	text-align:right;
}
.entry__step__txt ol li {
	padding-bottom:5px;
	list-style-type: decimal;
	text-indent:-1.2em;
	margin-left:1.2em;
}
.matsuri_mentry .asterisk, 
.matsuri_world .asterisk {
	color:#CA4632;
	font-size:0.9rem;
	line-height:1.5;
	text-indent:-1.2em;
	margin-left:1.2em;
	padding-bottom: 0;
}
.asterisk:last-of-type {
	padding-bottom: 1em !important;
}
.matsuri_mentry .asterisk:before, 
.matsuri_world .asterisk:before {
	content:"※";
}
.entry__step__img {
	width: 25%;
	padding-left:30px;
}
.entry__step__img img {
	max-width: 100%;
}
.entry__step__box.end {
	padding-bottom:30px;
}
.entry__step__box.end:after {
	display:none;
}
.entry__step__box.end p {
	width:100%;
	text-align:center;
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-size:40px;
	font-weight:bold;
	padding-bottom:0px;
}

.entry__tb {
	margin-bottom: 1em;
}
.entry__tb .tb__st1,
.entry__tb .tb__st1 tr {
	border: none;
}

.entry__tb .tb__st1 th,
.entry__tb .tb__st1 td {
	vertical-align: middle;
	text-align: center;
	border: solid 1px gray;
}

.entry__tb .tb__st1 th.col {
	width: 25%;
	background: var(--ttl-col);	
}
.entry__tb .tb__st1 th.row {
	width: auto;
	padding: 10px 0;
	background: #dcdcdc;
}
.entry__tb .tb__st1 th {
	font-weight: bold;
	padding: 0 5px;
}
.entry__tb .tb__st1 td {
	width: auto;
	padding: 10px 5px;
}

@media screen and (max-width: 599px) {
	.entry__step__box{
		padding: 15px 10px;
	}
	.entry__step__txt h5 {
		font-size: 20px;
	}
	.entry__step__txt h5 span{
		font-size: 16px;
	}
	.entry__step__box.end{
		padding-bottom: 15px;
	}
	.entry__step__box.end p {
		font-size: 25px;
	}
}





/*------------------------
  DARTSLIVE SPORTSアプリ
------------------------*/
.app__block img,
.appLink__box img{
	width: inherit;
	
}
.app__main__img{
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
.app__main__img p {
	text-align:center;
}
.app__main__txt {
	padding:30px 0;
	font-size: 18px;
}
.note__block {
	width:800px;
	margin:0 auto;
	padding:30px 0px;
	background:#a92b2c33;
}
.note__block p {
	font-size:18px;
	color:#e20000;
	text-align:center;
}
.appLink__box {
	padding:40px 0;
	text-align:center;
}
.appLink__box .ttl {
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-size: 36px;
	font-weight:bold;
	padding-bottom: 20px;
}
.appLink__box .appLinks {
	padding-bottom:20px;
}
.appLink__box .appLinks li {
	display:inline-block;
	padding:0 20px;
}
.appLink__box .appLinks li:before {
	display:none;
}
.appLink__box h4{
	background: none;
	border: none;
}
.app__block {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top:40px;
}
.app__bg.bg01 .app__block {
	flex-direction: row-reverse;
} 
.app__txt {
	width: 50%;
	padding: 2em;
	background: #ffffffcc;
}
.app__txt h5 {
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-size: 30px;
	font-weight:bold;
	padding-bottom: 20px;
}
.app__img {
	width: 40%;
	text-align: center;
	height: 380px;
	overflow: hidden;
}
.app__bg.bg01 {
	background: url(../images/app/bg_app_item01.jpg) no-repeat 50% 50%;
}
.app__bg.bg02 {
	background: url(../images/app/bg_app_item02.jpg) no-repeat 50% 50%
}
.app__bg.bg01, .app__bg.bg02 {
	background-size: cover;
}
.app__bg .pb {
	padding-top:40px;
}
.app__bg h4 {
	background: #281741;
	color: #fff;
	text-align: center;
	padding: 1.5rem;
	font-size: 2rem;
	font-weight: bold;
	/*margin:2em 0 0;*/
	border: none;
	width: 100%;
}
.app__info {
	padding:50px 140px 0;
	text-align:center;
	font-size:20px;
}
.app__info .right {
	text-align:right;
}

.goods__box {
	text-align:center;
}
.map__box {
	text-align:center;
}

@media screen and (max-width: 1024px) {
	.app__main__txt {
		padding:10px;
		font-size:14px;
	}
	.app__main__img p {
	text-align:left;
	}
	.note__block {
		width:92%;
		padding:10px;
		background:#a92b2c33;
		background-size:100px;
	}
	.note__block p {
		font-size:14px;
	}
	.appLink__box {
		padding:40px 10px;
		text-align:center;
	}
	.appLink__box .ttl {
		font-size: 22px;
		font-weight:bold;
		padding-bottom: 20px;
	}
	.appLink__box .appLinks {
		display: flex;
		align-items: center;
	}
	.appLink__box .appLinks li {
		width:50%;
		display:block;
		padding:0 5px;
		text-align:center;
	}
	.appLink__box .app__icon {
		width:60px;
		margin:0 auto;
	}
	.app__block {
		display: block;
		padding-top:20px;
	}
	.app__txt {
		font-size: 14px;
		width: 100%;
	}
	.app__txt h5 {
		font-size: 16px;
		font-weight:bold;
		padding-bottom: 15px;
	}
	.app__img {
		width: 100%;
		height: 230px;
		margin: 0 auto;
	}
	.app__img img {
		width: 50%;
	}
	.app__bg h4 {
		font-size: 1.3rem;
		margin: 1em 0 0;
		padding: 0.5em;
	}
	.app__info {
		padding:30px 10px 0;
		text-align:left;
		font-size:13px;
	}
}
.appLink__box p {
  padding-bottom: 1.2em;
  font-size: 1rem;
}


/*------------------------
　　アトラクション
------------------------*/
.at-contents{
	width: 93%;
	max-width: 1200px;
	padding-bottom: 70%;
	margin: 0 auto;
}

.at-nav{
	width: 100%;
	padding-bottom: 30px;
}

.at-nav div > select{
	width: 100%;
	height: 40px;
	line-height: 40px;
	padding-left: 8px;
}

.at-nav ul{
	display: flex;
	flex-wrap: wrap;
}

.at-nav ul li{
	width: 25%;
	text-align: center;
	padding: 5px;
	font-size: 14px;
}

.at-nav ul li a{
	display: block;
	color: #333;
	text-decoration: none;
	padding: 27px 0px;
	position: relative;
	justify-content: center;
	align-items: center;
	/*line-height: 1;
	height: 72px;*/
	background: #fff;
}
.at-nav ul li:nth-child(1) a,
.at-nav ul li:nth-child(2) a,
.at-nav ul li:nth-child(3) a,
.at-nav ul li:nth-child(4) a,
.at-nav ul li:nth-child(7) a{
	padding: 16px 0px;
}
/*.at-nav ul li:last-child a{
	padding: 20px 0px;
}*/

.at-nav ul li a:hover{
	background: #333;
	color: #fff;
}

.at-nav ul li a:hover::after{
	color: #fff;
}

.at-nav ul li a::after{
	position: absolute;
	font-family: "Font Awesome 5 Pro";
	right: 10px;
	font-size: 20px;
	font-weight: 500;
	color: #333;
	content: "\f107";
	bottom: 23px;
}

.at-repeat{
	background: rgba(255, 255, 255, 0.9);
    border-radius: 2vw;
	margin-bottom: 1rem;
}
.at-repeat h3{
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	text-shadow: 0 1px 0 #620430, 0 3px 0 #620430, 0 4px 10px rgba(0, 0, 0, .2);
	border-radius: 2vw 2vw 0 0 ;
	background: #C9005E;
	padding: 20px 30px;
}
.at-repeat h3 span{
	font-size: 3rem;
	display: none;
}

.at-main{
	width: 100%;
	padding-bottom: 50px;
}
.at-text{
	width: 95%;
	max-width: 1100px;
	margin: 0 auto;
	padding-bottom: 50px;
}
.at-text p{
	padding-bottom: 1rem;
}
.at-text p:last-child{
	padding-bottom: 0px;
}

.at-text h4{
	font-size: 1.2rem;
	font-weight: bold;
}
.at-text li{
	text-indent: -1rem;
	padding-left: 1rem;
}

.at-text p a{
	color: #C9005E;
}
.mov-area{
	width: 100%;
	max-width: 800px;
}
.mov-area iframe{
	width: 100%;
	aspect-ratio: 16 / 9;
}
.at-nav div > select{
	width: 100%;
	height: 40px;
	line-height: 40px;
	padding-left: 8px;
}
.at-img{
	width: 95%;
    max-width: 1100px;
	margin: 0 auto;
	padding-bottom: 50px;
}
.at-img ul{
	display: grid;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
	grid-template-columns: repeat(2, 1fr);
}
.at-column{
	width: 95%;
	max-width: 1100px;
	margin: 0 auto 50px auto;
	border-bottom: 1px solid #ccc;
}
.at-column:last-child{
	border: none;
}

.column-ttl{
	border-left: 8px solid #C9005E;
	padding-left: 12px;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 20px;
}

.column-repeat{
	padding-bottom: 30px;
}

.column-repeat h4 {
	border-bottom: 1px solid #C9005E;
	font-size: 1.5rem;
	font-weight: bold;
	padding-bottom: 10px;
	margin-bottom: 10px;
}


.column-repeat p{
	margin-bottom: 1rem;
}
.preat-img-tate img{
	width: 70%;
	max-width: 300px;
}

.preat-img-yoko img{
	width: 100%;
	max-width: 500px;
}

ul.at-cate{
	display: flex;
}

ul.at-cate li{
	text-align: center;
	width: 30%;
	max-width: 200px;
}

ul.at-cate li.at-cate-sat{
	color: #fff;
	padding: 5px;
	background: #0080C9;
}
ul.at-cate li.at-cate-sun{
	color: #fff;
	padding: 5px;
	background: #C9005E;
}
ul.at-cate li.at-cate-all{
	color: #fff;
	padding: 5px;
	background: #091485;
}

.nazo-lead{
	width: 95%;
	max-width: 1100px;
	margin: 0 auto;
	padding-bottom: 30px;
}

.nazo-ttl{
	width: 95%;
	max-width: 1100px;
	margin: 0 auto 30px auto;
	background: #efe2d2;
	border-radius: 20px;
	padding: 20px;
	font-size: 1.5rem;
	font-weight: bold;
}

.step-repeat{
	width: 95%;
	max-width: 900px;
	margin: 0 auto;
	padding-bottom: 50px;
}

.step-repeat h5{
	background: #5bb496;
	color: #fff;
	font-weight: bold;
	padding: 10px 20px;
	display: inline-block;
}

.step-inner{
	border: 3px solid #5bb496;
	padding: 30px;
	text-align: center;
}
.step-inner ul{
	display: flex;
	justify-content: center;
}

.step-inner ul li{
	width: 38%;
	padding: 0px 10px;
}

p.step-txt{
	padding-bottom: 30px;
}
p.step-txt span{
	color: #C9005E;
}

p.step-img{
	text-align: center;
}
p.step-img img{
	width: 300px;
}
.nazo-all{
	padding-bottom: 50px;
}
.nazo-notes{
	width: 95%;
	max-width: 1100px;
	margin: 0 auto;
	background: #ccc;
	padding: 30px;
}
.nazo-notes h4{
	font-weight: bold;
	font-size: 1.2rem;
	padding-bottom: 10px;
}

.nazo-notes ul li{
	text-indent: -0.5rem;
	padding-left: 1rem;
}
.nazo-mov ul{
	display: flex;
	justify-content: space-between;
	text-align: center;
}

.nazo-mov li{
	width: 49%;
	padding: 0px;
	text-indent: inherit;
}

ul.at-photo{
	display: flex;
}

ul.at-photo li{
	width: 30%;
	text-indent: inherit;
	padding: 0px;
}


@media screen and (min-width: 800px) {
	.nazo-lead{
		text-align: center;
	}
	.nazo-ttl{
		text-align: center;
	}

	.column-box-pc{
		width: 100%;
		padding-bottom: 50px;
	}
	.column-box-pc dl{
		display: flex;
	}
	.column-box-pc dt{
		width: 50%;
		padding-right: 10px;
	}

	.column-box-pc dd{
		width: 50%;
		padding-left: 10px;
	}
	.column-box-sp{
		display: none;
	}
	ul.at-photo{
		column-gap: 20px;
	}

}
@media screen and (max-width: 799px) {
	#attraction .page-contents{
		padding-bottom: 300px;
	}
	.nazo-lead{
		text-align: left;
	}
	.nazo-ttl{
		text-align: left;
	}
	.column-ttl{
		font-size: 1.2rem;
		background: #fff;
		padding: 5px 0px 5px 12px;
	}
	.column-repeat h4{
		font-size: 1.2rem;
	}
	.column-box-sp{
		width: 100%;
		padding-bottom: 50px;
	}
	.column-box-sp dl{
		padding-bottom: 30px;
	}
	.column-box-sp dt{
	}

	.column-box-sp dd{
	}
	.column-box-pc{
		display: none;
	}

	.at-repeat h3{
		font-size: 1.2rem;
		padding: 15px;
	}
	.at-contents{
		min-height: 3300px;
	}
	.at-img ul{
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
	.nazo-notes{
		padding: 15px;
	}
	.nazo-mov ul{
		display: inherit;
	}
	.nazo-mov ul li{
		width: 100%;
		padding-bottom: 30px;
	}
	.step-inner ul{
	display: flex;
	justify-content: space-between;
}

.step-inner ul li{
	width: 49%;
	padding: 0px;
}
	ul.at-photo{
		justify-content: space-between;
	}
	ul.at-photo li{
		width: 49%;
		padding: 0px;
	}
}
/*------------------------
　　出展メーカー一覧
------------------------*/

.maker p{
	text-align: right;
	padding-top: 1.5rem;
}
.maker ul.makerlogo{
	display: grid;
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}
.maker ul.makerlogo li{
	border: 1px solid #000;
	line-height: 0;
	text-align: center;
	transition: all .4s ease;
	background: url(../images/markerbooth/plus-icon.svg);
	background-size: 30px;
	background-position: right bottom;
	background-repeat: no-repeat;
}
.maker ul.makerlogo a{
	display: block;
}
.maker ul.makerlogo a:hover{
	opacity: 0.8;
	background: #f5f5f5;
}
.maker ul.makerlogo li img{
	width: inherit;
	height: 100px;
}


.maketbooth h3{
	background: #80C7FF;
	padding: 20px 0px;
	font-size: 35px;
	color: #fff;
	text-align: center;
	margin-bottom: 30px;
	font-weight: bold;
}

.mb-txt{
	padding-bottom: 30px;
}

.no-item{
	width: 100%;
	padding: 20px;
	background: #D9EEFF;
	margin-bottom: 20px;
}
.maketbooth dl.mb-item{
	width: 100%;
	background: #D9EEFF;
	display: block;
	margin-bottom: 20px;
}
.maketbooth dl.mb-item dt{
	padding: 20px;
}

.maketbooth dl.mb-item dd{
	padding: 20px;
}

.mb-ttl{
	font-weight: bold;
	font-size: 1.3rem;
	padding-bottom: 10px;
}
.mb-sttl{
	color: blue;
	padding-bottom: 10px;
}
.mb-btn{
	padding: 20px 0px;
	text-align: center;
}

.mb-btn a.btn-flat::before,
.mb-btn a.btn-flat::after{
  background: #00E6FE;
}

.cs-txt{
	text-align: center;
	padding: 20px 0px;
}
/*@media screen and (min-width: 1096px){
	.maketbooth{
		min-height: 2200px;
	}
}*/
@media screen and (min-width: 800px) {
	.maketbooth dl.mb-item dt{
		width: 50%;
		display: inline-block;
		vertical-align: top;
	}
	.maketbooth dl.mb-item dd{
		width: 49%;
		display: inline-block;
	}
	.makerover{
		min-height: 2300px;
	}
	.maker ul.makerlogo {
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	}
	/*.maker ul.makerlogo li{
		padding: 20px 60px;
	}*/
	.maker ul.makerlogo a{
		padding: 20px 60px;
	}
}

@media screen and (max-width: 799px) {
	.maketbooth h3{
		font-size: 25px;
	}
	.maketbooth dl.mb-item dt,
	.maketbooth dl.mb-item dd{
		width: 100%;
	}
	.modaal-content-container{
		padding: 30px 10px;
	}
	.container{
		min-width: inherit;
	}
	.maker ul.makerlogo {
		grid-template-columns: repeat(2, 1fr);
	}
	.maker ul.makerlogo li{
	/*--.maker ul.makerlogo a{--*/
		padding: 20px;
	}
	.maker ul.makerlogo li img{
		width: inherit;
		height: 50px;
	}
	.makerover{
		min-height: 1700px;
	}
}

/*------------------------
　　トリオス
------------------------*/
.trios-nav{
	padding: 30px 0px;
}
.trios-nav ul{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	text-align: center;
	grid-column-gap: 20px;
}



.trios-nav ul li a{
	color: #fff;
	padding: 10px 0px;
	display: block;
	background: #C9005E;
	border-radius: 10px;
}

.trios-nav ul li a:hover{
	opacity: 0.8;
}

/*------------------------
　　goods
------------------------*/

.goods-over{
	width: 93%;
	max-width: 1200px;
	margin: 0 auto;
}

.goods-item{
	margin-bottom: 50px;
}



@media screen and (min-width: 800px) {
	.goods-over{
		padding-bottom: 75%;
	}
	.goods-item img{
	border-radius: 5rem;
}
}
@media screen and (max-width: 799px) {
	#goods .page-contents{
		padding-bottom: 300px;
	}
	.goods-over{
		padding-bottom: 80%;
	}
	.goods-item img{
	border-radius: 2rem;
}
}


/*------------------------
　　ダーツ祭りガイド
------------------------*/
#guide .page-contents{
	background-image: none;
	background-color: #8ed1f2;
}
.guide-mainarea{
	width: 100%;
	background-image: url("../images/guide/main-bg.png?new");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
}

.guide-top{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.guide-top img{
	width: 100%;
	border-radius: 3rem;
	box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
}

.guide-lead{
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 100px;
	color: #fff;
	font-size: 1.2rem;
}

.guide-nav-area{
	width: 95%;
	max-width: 1200px;
	text-align: center;
	margin: 0 auto;
	padding-bottom: 50px;
}

.guide-nav-area ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	column-gap: 10px;
	row-gap: 20px;
}

.guide-nav-area ul li{
	width: calc(100%/3.1);
}

.guide-nav-area ul li a{
	display: block;
	background: #fff;
	border: 2px solid #C9005E;
	color: #C9005E;
	padding: 20px 0px;
}
.guide-nav-area ul li a:hover{
	background: #C9005E;
	color: #fff;
}

.guide-contents{
	padding-bottom: 70%;
}
.guide-area{
	width: 95%;
	max-width: 1200px;
	margin: 0 auto 100px auto;
	background: #fff;
	padding-bottom: 30px;
}

.guide-area h2.guide-title1{
	width: 100%;
	background: #0b7bc3;
	color: #fff;
	text-align: center;
	padding: 20px 0px;
	font-size: 2rem;
	text-shadow: none;
}

.guide-area h2.guide-title2{
	width: 100%;
	background: #C9005E;
	color: #fff;
	text-align: center;
	padding: 20px 0px;
	font-size: 2rem;
	text-shadow: none;
}

.guide-in-area{
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;
}

.guide-area-lead{
	text-align: center;
	padding: 50px 0px;
}

.guide-contents{
	min-height: 3000px;
}

.guide-in-repeat{
	padding-bottom: 50px;
}
.guide-in-repeat:last-child{
	padding-bottom: 0px;
}
.guide-in-repeat h3{
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	position: relative;
	margin-bottom: 60px;
}

.guide-in-repeat h3:before {
	position: absolute;
	bottom: -20px;
	left: calc(50% - 30px);
	width: 60px;
	height: 5px;
	content: '';
	border-radius: 3px;
	background: #C9005E;
}
.guide-in-repeat p{
	padding-bottom: 1rem;
}
.guide-in-booth{
	display: flex;
	justify-content: space-between;
	padding-bottom: 50px;
}
.guide-in-booth dl{
	width: 49%;
}
.guide-in-booth dl dt{
	font-size: 1.2rem;
	font-weight: bold;
	padding-bottom: 1rem;
}

.guide-in-booth dl dd p{
	padding-bottom: 1rem;
}
.guide-pickup{
	width: 95%;
	margin: 0 auto;
	position: relative;
	background: #e5e5e5;
}
p.guide-main-img{
	padding-bottom: 50px;
}

.guide-btn{
	padding: 30px 0px;
	text-align: center;
}

.guide-btn ul{
	display: flex;
	justify-content: center;
}

.guide-btn ul li{
	width: 30%;
	padding: 0px 20px;
}

.guide-btn a{
	width: 100%;
	max-width: 300px;
	display: inline-block;
	padding: 20px 40px;
	background: #000;
	color: #fff;
	border-radius: 20px;
}

.guide-btn a:hover{
	background: #333;
}

.guide-in-photo{
	margin-bottom: 30px;
}

.guide-in-photo ul{
	display: flex;
	justify-content: space-between;
}

.guide-in-photo ul li{
	width: calc(100%/4);
}

.pickup-icon{
	width: 200px;
	position: absolute;
	top: -40px;
	left: -40px;
	transform: rotate( -25deg );
}
p.in-center{
	text-align: center;
	margin-bottom: 50px;
	padding: 20px 0px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #fff;
	background: #333;
}
.pickup-repeat {
	padding: 20px;
}
.pickup-repeat p{
	padding-bottom: 1rem;
}
.pickup-repeat dl{
	padding-bottom: 30px;
}

.pickup-repeat dl dt{
	border-left: 5px solid #333;
	padding: 5px 0px 5px 10px;
	font-weight: bold;
	font-size: 1.2rem;
	margin-bottom: 10px;
}

.pickup-repeat ul{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	column-gap: 10px;
	padding: 1em 0px;
}
.pickup-repeat ul.sticker1 li{
	width: 26%;
}
.pickup-repeat ul.sticker2 li{
	width: 24%;
}
.guide-main{
	padding-bottom: 50px;
}
.guide-main ul{
	display: flex;
	flex-wrap: wrap;
}
.guide-main ul li{
	width: calc(100%/2);
}

.food-menu{
	width: 95%;
	margin: 0 auto;
	padding-bottom: 50px;
}

.food-repeat{
	margin-bottom: 30px;
	background: #efe2d2;
	padding: 1rem;
}
p.shop-name{
	position: relative;
  display: inline-block;
  margin: 1rem 0 1rem -1.6rem;
  padding: 1rem 3rem;
	font-size: 1.5rem;
  color: #fff;
  background: #666;
  -webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
}

p.shop-name:before {
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 0;
  height: 0;
  content: '';
  border-top: 10px solid #333;
  border-left: 10px solid transparent;
}

.food-repeat dl{
	padding: 0px 20px 20px 20px;
	border-bottom: 1px dotted #d5bea1;
	margin-bottom: 20px;
}
.food-repeat dl:last-child{
	border: none;
}
.food-repeat dl dt{
	font-size: 1.2rem;
	font-weight: bold;
	padding-bottom: 5px;
}
.ramune{
	padding: 20px;
}
.ramune ul{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.ramune ul li{
	width: 49%;
}

.ramune ul li iframe{
	width: 100%;
	aspect-ratio: 16 / 9;
}




@media screen and (min-width: 800px) {
  .guide-mainarea {
    width: 100%;
    padding: 100px 0px 100px 0px;
  }
}
@media screen and (max-width: 799px) {
	#guide .page-contents{
		padding-bottom: 300px;
	}
	.guide-mainarea{
		padding: 80px 0px;
	}
	.guide-top{
		width: 90%;
		margin: 0 auto;
	}
	.guide-top img{
		border-radius: 30px;
	}
	.guide-area{
		margin-bottom: 50px;
	}
	.guide-lead{
		text-align: left;
		font-size: 1rem;
		padding-bottom: 30px;
	}
	
	.guide-nav-area ul li{
		width: calc(100%/2.1);
		font-size: 0.7rem;
	}
	.guide-area h2.guide-title1,
	.guide-area h2.guide-title2{
		font-size: 1.2rem;
		text-align: left;
		padding: 10px;
	}
	.guide-area-lead{
		padding: 30px 0px;
		text-align: left;
	}
	.guide-in-booth{
		display: block;
	}
	.guide-in-booth dl{
		width: 100%;
	}
	.guide-in-photo ul{
		flex-wrap: wrap;
	}
	.guide-in-photo ul li{
		width: 50%;
	}
	.guide-pickup{
		width: 100%;
	}
	.pickup-icon{
		width: 70px;
		top: -2px;
		left: -10px;
	}
	p.in-center{
		padding: 10px 10px 10px 60px;
		text-align: left;
		margin-bottom: 30px;
		font-size: 0.7rem;
		font-weight: normal;
	}
	.pickup-repeat{
		padding: 10px;
	}
	.guide-in-repeat h3{
		font-size: 1.5rem;
	}
	.pickup-repeat ul.sticker1 li{
		width: 40%;
	}
	.pickup-repeat ul.sticker2{
		column-gap:normal;
	}
	.pickup-repeat ul.sticker2 li{
		width: 33%;
	}
	.pickup-repeat ul.sticker2 li:first-child{
		width: 80%;
	}
	.guide-main ul li{
		width: 100%;
	}
	.guide-btn ul{
		display: inherit;
	}
	.guide-btn ul li{
		width: 100%;
		padding: 10px 0px;
	}
	p.shop-name{
		font-size: 1rem;
	}
	.food-repeat dl dt{
		font-size: 1rem;
	}
	.ramune{
		padding: 10px;
	}
	.ramune ul{
		display: inherit;
	}
	.ramune ul li{
		width: 100%;
		padding-bottom: 10px;
	}
	.food-repeat dl{
		padding:0px 0px 20px 0px;
	}
}

/*------------------------
　　LIVE中継
------------------------*/

body.live .in-contents{
	border-radius: 0;
}

.live-mainarea{
	width: 100%;
	background-image: url("../images/live/live-bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
}

.live-top{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.live-top img{
	width: 100%;
	border-radius: 3rem;
	box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
}

.live-main{
	width: 93%;
	max-width: 1200px;
	margin: 0 auto;
}

.live-lead{
	text-align: center;
	padding-bottom: 30px;
}
.live-box{
	padding-bottom: 50px;
}
.live-box p{
	padding-bottom: 1rem;
}
.live-box ul li{
	text-indent: -1rem;
	padding-left: 1rem;
}
.live-box h3{
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	position: relative;
	margin-bottom: 30px;
}

.live-box h3:before {
	position: absolute;
	bottom: -20px;
	left: calc(50% - 30px);
	width: 60px;
	height: 5px;
	content: '';
	border-radius: 3px;
	background: #C9005E;
}
.live-btn{
	text-align: center;
}
.live-btn ul{
	padding-bottom: 30px;
}
.live-btn li{
	display: inline-block;
	padding: 0px 20px;
}
.live-btn p a{
	width: 100%;
	max-width: 300px;
	display: inline-block;
	padding: 20px 40px;
	background: #000;
	color: #fff;
	border-radius: 20px;
}

.live-btn p a:hover{
	background: #333;
}
@media screen and (min-width: 800px) {
  .live-mainarea {
    width: 100%;
    padding: 100px 0px 100px 0px;
  }
}
@media screen and (max-width: 799px) {
	.live-lead{
		text-align: left;
	}
	.live-btn{
		margin-bottom: 100px;
	}
	.live-btn ul{
		display: flex;
	}
	.live-btn li{
		width: 50%;
        display: block;
        padding: 0 5px;
        text-align: center;
	}
	.live-box h3{
		font-size: 1.5rem;
	}
}

/*------------------------
　　GALLERY
------------------------*/

.gallery-nav{
	padding-bottom: 50px;
}

.gallery-nav ul{}

.gallery-contents-day1,
.gallery-contents-day2{
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;
	padding-bottom: 70%;
}
.gallery-repeat{
	padding-bottom: 50px;
}
.gallery-contents-day1 h3{
	color: #fff;
	background: #0b7bc3;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	padding: 15px 0px;
}
.gallery-contents-day2 h3{
	color: #fff;
	background: #C9005E;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	padding: 15px 0px;
}


.gallery-main-all ul{
  position: relative;
  margin: 0;
  padding: 0;
}
.gallery-main-all ul li{
  position: relative;
  height: 100%;
}

.gallery-main-all ul li::before {
  display: block;
  padding-top: 56%;
  content: "";
  position: relative;
  overflow: hidden;
}
.gallery-main-all ul li img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
}
.gallery-main-all ul > .slick-list,
.gallery-main-all ul > .slick-list > .slick-track,
.gallery-main-all ul > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}

/* slide-navigation */

.gallery-thumb-all{
	background: #fff;
	padding: 5px;
}
.gallery-thumb-all ul{
	display: flex;
	flex-wrap: wrap;
}

.gallery-thumb-all ul li{
	width: 10%;
	padding: 5px;
	cursor: pointer;
}

.gallery-thumb-all ul li:hover{
	opacity: 0.9;
}

.gallery-item{
	padding-bottom: 170px;
}

.gallery-day{
	padding-bottom: 50px;
}

.gallery-day ul{
	display: flex;
	justify-content: center;
}

.gallery-day ul li{
	width: 25%;
	padding: 0px 10px;
	text-align: center;
}

.gallery-day ul li a{
	width: 100%;
	display: block;
	font-size: 1.5rem;
}
.gallery-day ul li.day1 a{
	border: 3px solid #0b7bc3;
	color: #0b7bc3;
	font-weight: bold;
	background: #fff;
	padding: 20px 0px;
}
.gallery-day ul li.day1 a:hover{
	background: #0b7bc3;
	color: #fff;
}

.gallery-day ul li.day2 a{
	border: 3px solid #C9005E;
	color: #C9005E;
	font-weight: bold;
	background: #fff;
	padding: 20px 0px;
}
.gallery-day ul li.day2 a:hover{
	background: #C9005E;
	color: #fff;
}

.gallery-day ul li.day1.day-now a{
	background: #0b7bc3;
	color: #fff;
}
.gallery-day ul li.day2.day-now a{
	background: #C9005E;
	color: #fff;
}

.gallery-nav{
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;
	padding-bottom: 50px;
}

.gallery-nav ul{
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 10px;
	row-gap: 20px;
	text-align: center;
	vertical-align: middle;
}

.gallery-nav ul li{
	width: calc(100% / 5.1);
}

.gallery-nav ul li a{
	border: 3px solid #333;
	padding: 13px 0px;
	background: #fff;
	color: #333;
	display: block;
}
.gallery-nav ul li:nth-child(1) a,
.gallery-nav ul li:nth-child(3) a,
.gallery-nav ul li:nth-child(5) a{
	padding: 26px 0px;
}

.gallery-nav.nav-day2 ul li a{
	padding: 26px 0px;
}

.gallery-nav ul li a:hover{
	color: #fff;
	background: #333;
}

#gallery5{
	padding-bottom: 100px;
}
@media screen and (max-width: 799px) {
	.gallery-day ul li{
		width: 49%;
	}
	.gallery-day ul li a{
		font-size: 1.1rem;
	}
	.gallery-nav ul{
		flex-wrap: wrap;
	}
	.gallery-nav ul li{
		width: calc(100% / 2.1);
	}
	.gallery-thumb-all ul li{
		width: 20%;
	}
	.gallery-contents-day1 h3{
		font-size: 1.3rem;
		padding: 10px 0px;
	}
	#gallery .page-contents{
		padding-bottom: 300px;
	}
	#gallery5{
		padding: 0px;
	}
}


/*------------------------
　　大会結果
------------------------*/
.result-all{
	padding-bottom: 70%;
}
.result-repeat{
	width: 95%;
	max-width: 1200px;
	background: #fff;
	margin: 0px auto 100px auto;
}

body#result-day1 .result-repeat h3{
	color: #fff;
    background: #0b7bc3;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    padding: 15px 0px;
}
body#result-day2 .result-repeat h3{
	color: #fff;
    background: #C9005E;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    padding: 15px 0px;
}

.result-over-day1 .result-repeat h3{
	background: #4267b2;
	text-align: center;
	padding: 20px;
	font-weight: bold;
	font-size: 40px;
	margin-bottom: 50px;
	color: #fff;
}
.result-over-day2 .result-repeat h3{
	background: #ca4632;
	text-align: center;
	padding: 20px;
	font-weight: bold;
	font-size: 40px;
	margin-bottom: 50px;
	color: #fff;
}
.result-rank{
	padding: 20px;
}

.result-rank h4{
	background: none;
	border: none;
	text-align: center;
	font-weight: bold;
	font-size: 30px;
	position: relative;
	margin-bottom: 50px;
}
body#result-day1 .result-rank h4::before{
	position: absolute;
	bottom: -16px;
	left: calc(50% - 30px);
	width: 60px;
	height: 5px;
	content: '';
	background: #0b7bc3;
}

body#result-day2 .result-rank h4::before{
	position: absolute;
	bottom: -16px;
	left: calc(50% - 30px);
	width: 60px;
	height: 5px;
	content: '';
	background: #C9005E;
}

.result-rank ul{
	display: flex;
	flex-wrap: wrap;
}

ul.rank_list li{
	width: 25%;
	padding: 10px;
}

ul.rank_list li p.rank{
	font-size: 22px;
	font-weight: bold;
	padding-left: 45px;
	position: relative;
	margin-bottom: 10px;
}

ul.rank_list li p.rank::before {
	content: '';
	position: absolute;
	width: 35px;
	height: 35px;
	left: 0;
	bottom: 0;
}
ul.rank_list li p.no_1::before {
	background:url(/matsuri/2024/jp/common/images/result/rank_1.png) no-repeat left center;
	background-size: contain;
}
ul.rank_list li p.no_2::before {
	background:url(/matsuri/2024/jp/common/images/result/rank_2.png) no-repeat left center;
	background-size: contain;
}
ul.rank_list li p.no_3::before {
	background:url(/matsuri/2024/jp/common/images/result/rank_3.png) no-repeat left center;
	background-size: contain;
}
ul.rank_list li p.rank-photo{
	margin-bottom: 10px;
}
ul.rank_list li p.rank-photo a:hover{
	opacity: 0.8;
}
ul.rank_list li p.rank-team{
	text-align: center;
	font-size: 14px;
}

.result-nav{
	padding-bottom: 50px;
}

.result-nav ul{
	display: flex;
	justify-content: center;
}

.result-nav ul li{
	width: 25%;
	padding: 0px 10px;
	text-align: center;
}

.result-nav ul li a{
	width: 100%;
	display: block;
	font-size: 1.5rem;
}
.result-nav ul li.day1 a{
	border: 3px solid #0b7bc3;
	color: #0b7bc3;
	font-weight: bold;
	background: #fff;
	padding: 20px 0px;
}
.result-nav ul li.day1 a:hover{
	background: #0b7bc3;
	color: #fff;
}

.result-nav ul li.day2 a{
	border: 3px solid #C9005E;
	color: #C9005E;
	font-weight: bold;
	background: #fff;
	padding: 20px 0px;
}
.result-nav ul li.day2 a:hover{
	background: #C9005E;
	color: #fff;
}

.result-nav ul li.day1.day-now a{
	background: #0b7bc3;
	color: #fff;
}
.result-nav ul li.day2.day-now a{
	background: #C9005E;
	color: #fff;
}
@media screen and (min-width: 800px) {
.result-box{
	display: flex;
	justify-content: center;
}
.result-box .result-rank{
		width: 49%;
	}
.result-box ul.rank_list li{
		width: 50%;
	}

}

.result-box .result-rank h4{
	font-size: 30px;
}

.today .result-rank h4{
	font-size: 1.3rem;
}

@media screen and (max-width: 799px) {
	.result-all{
		padding-bottom: 70vh;
		}
	body#result-day1 .result-repeat h3{
		font-size: 1.5rem;
		margin-bottom: 20px;
	}
	.result-rank h4{
		font-size: 1.3rem;
		margin-bottom: 30px;
	}
	.result-rank h4::before{
		bottom: -6px;
		height: 3px;
	}
	.result-rank ul{
		justify-content: space-between;
	}
	ul.rank_list li{
		width: 49%;
		padding: 0px 0px 20px 0px;
	}
	ul.rank_list li p.rank{
		padding-left: 30px;
		font-size: 16px;
	}
	ul.rank_list li p.rank::before {
		width: 28px;
		height: 28px;
	}
	ul.rank_list li p.rank-team{
		font-size: 12px;
	}
	.result-box .result-rank h4{
	font-size: 1.3rem;
}
	.result-nav ul li{
		width: 49%;
	}
	.result-nav ul li a{
		font-size: 1.1rem;
	}
}

@media screen and (max-width: 799px) {
	.result-box .result-rank{
		width: 100%;
	}
	.result-box ul.rank_list li{
		width: 49%;
	}
}




/*------------------------
  フッター
------------------------*/
.second-page .footer-txt{
	color: #000;
}

footer.tf-over{
	position: absolute;
	bottom: 0;
	background-color: inherit;
	color: #000;
}
.footer-contact a{
	color: #fff;
	border: 2px solid #fff;
	border-radius: 30px;
	padding: 15px 0px;
	display: block;
	background: #0D3191;
}

.footer-contact a:hover{
	opacity: 0.8;
}

/*------------------------
  カウントダウン
------------------------*/
.matsuri-count{
	width: 100%;
	position: fixed;
	bottom: 0;
	background-color: rgba(0,0,0,0.8);
	color: #fff;
	z-index: 999;
}

.count-inner{
	padding: 10px;
}
.count-inner ul{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-size: 1rem;
	line-height: 0;
}
.count-inner ul li{
	padding: 0px 10px;
}
.count-inner ul li img{
	width: 150px;
}
.count-inner ul li span{
	font-size: 1.4rem;
	font-weight: bold;
}

.count-inner ul li:nth-child(2),
.count-inner ul li:nth-child(3){
	color: #57C4F1;
}
.count-inner ul li:nth-child(3){
	font-weight: bold;
}

.count-inner ul li.countdown__txt1{
	line-height: 0;
}
.count-inner ul li.countdown__txt2{
	font-weight: bold;
	font-size: 1.8rem;
	color: #57C4F1;
}

.count-inner ul li.countdown__txt2 span{
	font-size: 1rem;
	color: #fff;
	margin-left: 5px;
}

@media screen and (max-width: 599px) {
	.count-inner ul{
		font-size: 12px;
		line-height: 1rem;
	}
	.count-inner ul li{
		padding: 0px;
	}
	.count-inner ul li:nth-child(1),
	.count-inner ul li:nth-child(3){
		display: none;
	}
	.count-inner ul li:nth-child(2){
		width: 66%;
		line-height: 1.3rem;
	}
	.count-inner ul li span.sp-map{
		font-size: 1rem;
	}
	.count-inner ul li.countdown__txt2{
		margin-left: 10px;
	}
}

