@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;
}


a.btn {
  width: 400px;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none !important;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
a.btn-flat2,
a.btn-flat {
  overflow: hidden;
  padding: 1rem 3rem;
  color: #fff !important;
  border-radius: 0;
  background: #000;
}
a.btn-flat2 span,
a.btn-flat span {
  position: relative;
  z-index: 1;
}
a.btn-flat::before {
  position: absolute;
  top: 0;
  left: calc(-120% + 100px);
  width: 150%;
  height: 500%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: rotate(45deg) translateX(0) translateY(0);
  transform: rotate(45deg) translateX(0) translateY(0);
}
a.btn-flat2::before {
  position: absolute;
  top: 0;
  left: calc(-120% + 50px);
  width: 150%;
  height: 500%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: rotate(45deg) translateX(0) translateY(0);
  transform: rotate(45deg) translateX(0) translateY(0);
}
a.btn-flat::after {
  position: absolute;
  top: -400%;
  right: calc(-120% + 100px);
  width: 150%;
  height: 500%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: rotate(45deg) translateX(0) translateY(0);
  transform: rotate(45deg) translateX(0) translateY(0);
}
a.btn-flat2::after {
  position: absolute;
  top: -400%;
  right: calc(-120% + 50px);
  width: 150%;
  height: 500%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: rotate(45deg) translateX(0) translateY(0);
  transform: rotate(45deg) translateX(0) translateY(0);
}

a.btn-flat2:hover::before,
a.btn-flat:hover::before {
  -webkit-transform: rotate(45deg) translateX(0) translateY(-50%);
  transform: rotate(45deg) translateX(0) translateY(-50%);
}
a.btn-flat2:hover::after,
a.btn-flat:hover::after {
  -webkit-transform: rotate(45deg) translateX(0) translateY(50%);
  transform: rotate(45deg) translateX(0) translateY(50%);
}
@media screen and (max-width: 599px) {
  a.btn {
    width: 100%;
  }
}


/*------------------------
  エントリーボタン
------------------------*/

.entry-area{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 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;
	}
@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%;
		padding-bottom: 0px;
	}
  .entry-area ul {
    grid-template-columns: repeat(1, 1fr);
	grid-column-gap: 15px;
  }
	
	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;
	margin-bottom: 30px;
	color: #fff;
}

@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 #fff;
  border-bottom: solid 2px #fff;
	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;
	font-weight: bold;
}

.entry-sub{
	color: red;
	text-align: center;
	padding-top: 30px;
	font-weight: bold;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.page-contents{
	padding-top: 100px;
	background-image: 
		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-size: 
		100%;
}
@media screen and (max-width: 1024px) {
	.page-contents{
		padding-top: 50px;
		background-size: 200%;
	}
}

.repeat-en{
	padding-bottom: 100px;
}
.repeat-en h2{
	background: #0080C9;
	color: #fff;
	text-align: center;
	padding: 20px;
	font-size: 40px;
	font-weight: bold;
	margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
	.repeat-en h2{
		font-size: 20px;
	}
}

.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;
	animation-timeline: view();
}
@keyframes parallax {
  from {
    background-position: center 100;
  }

  to {
    background-position: center -3000px;
  }
}

.in-contents{
	width: 90%;
	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) {

	.in-contents{
		padding: 20px 20px 600px 20px;
		border-radius: 20px 20px 0 0;
	}
	.in-contents h4{
		font-size: 1.2rem;
		margin-bottom: 20px;
	}
}
.col__block {
	padding-bottom: 100px;
}
/*------------------------
  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-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;
}

@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 0px 2rem 0px;
		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{
		padding: 0px 0px 1.5rem 0px;
		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;
	}

@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{
	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;
}
/*------------------------
  トーナメントルール
------------------------*/

.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;
}
.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:20px 10px 5px;
		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;
}


.outline-list dl{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 1rem;
}

.outline-list dl dt{
	width: 30%;
	padding: 20px 10px;
	background: #ccc;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.outline-list dl dd{
	width: 70%;
	padding-left: 30px;
}

@media screen and (max-width: 599px) {
	.outline-list dl{
		display: block;
	}
	.outline-list dl dt,
	.outline-list dl dd{
		display: inherit;
	}
	.outline-list dl dt{
		width: 100%;
		padding: 10px 0px;
		font-size: 16px;
		margin-bottom: 1rem;
	}
	.outline-list dl dd{
		width: 100%;
		padding-left: 0px;
		text-align: left;
	}
}
/*------------------------
  フッター
------------------------*/
.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;
}
