@charset "UTF-8";

	/*** Common ***/
	#sec_schedule, #sec_prize, #sec_outline{padding: 0;}
	.overlay{width: 120%; height: 100vh; position: fixed; top: 0; left: -10%; background: url(../img/mjht/kv_mjht_bg.jpg) 0 0; background-size: cover; background-repeat: no-repeat; background-position: top; z-index: -1;
	-webkit-filter: blur(12px);
	-moz-filter: blur(12px);
	-o-filter: blur(12px);
	-ms-filter: blur(12px);
	filter: blur(12px);}
	.container.mjht-ctn{background: rgb(255 255 255 / 0.75); padding: 1.5rem;}

@media (min-width: 768px) {
	#sec_schedule, #sec_prize, #sec_outline{padding: 3rem 0;}
	.container.mjht-ctn{padding: 3rem;}
}


/*** Layout ***/
main {margin-top: 0;}
main#mj-champ {margin-top: 59px;}
#hero {width: 100%; margin-top: 60px;}
#hero .title {background: #000000;}
#hero h1 {padding: 12.5px 0; font-size: 14px; color: #FFFFFF; margin-bottom: 0; text-align: center;}
.kv1 img{height: auto; display: block; margin-left: auto; margin-right: auto;}

@media (min-width: 768px) {
	#hero {margin-top: 120px;}
	#hero h1 {padding: 15px 0; font-size: 20px;}
	.kv1 img{max-width: 720px; height: 720px;}
}


#sec_about{background: rgb(50 0 0 / 75%); padding: 30px 0; min-height: auto;}
#sec_about .sec-title h2{font-size: 1.1rem; font-weight: 800; text-align: center; line-height: 1.75em; color: #fff; margin: 0;}
#sec_about .sec-title h2 em{font-size: 1.1rem; margin: 0; color: #dfd6a9;}
[data-ruby] {position: relative;}
[data-ruby]::before {content: attr(data-ruby); font-size: 0.525rem; position: absolute; top: -2.25em; left: 0; right: 0; margin: auto;}
#sec_about .box__flow ul{width: 90%; max-width: 320px; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; margin: 0 auto; padding: 0; position: relative;}
#sec_about .box__flow ul > li{width: 100%; background: rgb(255 255 255 / 0.575); margin-bottom: 2.5rem; position: relative; list-style: none;}
#sec_about .box__flow ul > li:last-child{margin-right: 0;}
#sec_about .box__flow ul > li div{display: block; background: rgb(200 20 20); color: #fff; text-align: center; font-size: 2.0rem; font-weight: 800; line-height: 1em; padding: 1rem 1rem 0.75rem;}
#sec_about .box__flow ul > li div span{display: block; font-size: 1.1rem;}
#sec_about .box__flow ul > li p{color: #212529; padding: 1.25rem; font-weight: 700; line-height: 1.4em;}
#sec_about .box__flow ul > li p img{display: block; width: 100%; margin: 0 auto 0.325rem;}
#sec_about .box__flow ul > li:after{content: ""; width: 0; height: 0; position: absolute; top: 100%; right: 50%; margin: 10px -20px 0 0; border-left: 20px solid transparent; border-right: 20px solid transparent; border-top: 20px solid rgb(200 20 20);}
#sec_about .box__flow ul > li:last-child::after{display:none;}

@media (min-width: 768px) {
	#sec_about .sec-title h2{font-size: 2rem;}
	#sec_about .sec-title h2 em{font-size: 2rem;}
	[data-ruby]::before {font-size: 0.95rem; top: -2.15em;}
	#sec_about .box__flow ul{max-width: none;}
	#sec_about .box__flow ul > li{width: 29.333%; max-width: none; margin: 0 6% 0 0;}
	#sec_about .box__flow ul > li p{padding: 2rem;}
	#sec_about .box__flow ul > li p img{margin: 0 auto 0.75rem;}
	#sec_about .box__flow ul > li:after{top: 50%; right: 0; margin: -30px -65px 0 0; border-left: 30px solid rgb(200 20 20); border-top: 30px solid transparent; border-bottom: 30px solid transparent;}
}


#sec_schedule .round p,
#sec_schedule .final p{font-size: 1.05rem;}
#sec_schedule .round .tablebox{height: 100%; min-height: 120px; max-height: 200px; overflow: auto; position: relative;}
#sec_schedule table{width: 100%; border-collapse: collapse; overflow: auto; position: relative;}
#sec_schedule table th,
#sec_schedule table td{font-size: 0.75rem; padding: 0.5rem; font-weight: normal; text-align: center; white-space: nowrap;}
#sec_schedule table th{background: rgb(15 15 15 / 100%); border: 1px solid #535353; border-top: none; color: #fff;}
#sec_schedule table td{background: rgb(30 30 30 / 80%); border: 1px solid #535353; color: #fff; font-weight: normal;}
#sec_schedule table td a{font-size: 0.75rem; color: #ddbc10; text-decoration: underline;}
#sec_schedule table td a:hover{text-decoration: none;}
#sec_schedule .st_col{position: sticky; top: 0px; left: 0;}
#sec_schedule .list_schedule {width: 100%; background: rgb(255 255 255 / 0.35); padding: 1.5rem 1rem; margin: 0 auto;}
#sec_schedule .list_schedule ul{margin: 0;}
#sec_schedule .list_schedule .t_round_date{font-size: 1.1rem; font-weight: 600;}
#sec_schedule .final .t_date {font-size: 24px; font-weight: bold; color: rgb(200 20 20);}
#sec_schedule .final .t_date span{ font-size: 18px;}
#sec_schedule .final .t_name {font-size: 26px; font-weight: bold}
#sec_schedule .final .t_place {font-size: 14px;}
#sec_schedule .final .t_organizer { font-size: 14px}
#sec_schedule .final .list_schedule .detail_link{width: 100%; height: 100%;}
#sec_schedule .final .list_schedule .detail_link a{display: block; margin: 10px 0}

@media (min-width: 768px) {
	#sec_schedule .round p,
	#sec_schedule .final p{font-size: 1.25rem; font-weight: 800; margin-bottom: 0.5rem;}
	#sec_schedule .round .tablebox{max-height: 300px;}
	#sec_schedule .list_schedule .t_round_date{font-size: 1.25rem;}
	#sec_schedule table th,
	#sec_schedule table td{font-size: 1rem;}
	#sec_schedule table td a{font-size: 1rem;}
}


#sec_outline .sec-group{background: rgb(255 255 255 / 0.35); border-radius: 6px;}
#sec_outline .sec-group .inner{padding: 1.5rem;}
#sec_outline h4 {color: rgb(200 20 20); font-size: 16px;}
#sec_outline .group-title{background-color: rgb(200 20 20); padding: 0.85rem; border-radius: 6px 6px 0 0; color: #fff;}
#sec_outline .group-title h3{font-size: 18px; margin: 0;}
#sec_outline .group-guest.row{width: 95%; margin: 0 auto;}
#sec_outline .group-guest.row h6{font-size: 12px; font-weight: normal; text-align: center; padding: 5px 0;}

@media (min-width: 768px) {
	#sec_outline h4 {font-size: 24px;}
	#sec_outline .group-title{padding: 1.25rem;}
	#sec_outline .group-title h3{font-size: 34px;}
}


#sec_prize h4 {color: #b70000; font-size: 1.1rem;}
#sec_prize li{font-size: 1rem;}
#sec_prize li span{display: block; font-size: 0.8rem;}

@media (min-width: 768px) {
	#sec_prize h4 {font-size: 1.45rem;}
	#sec_prize li{font-size: 1.4rem;}
	#sec_prize li span{font-size: 0.9rem;}
}


@media (min-width: 768px) {
	.group-title{padding: 20px;}
	.group-title h3{font-size: 44px;}
}