@charset "UTF-8";
/*
Theme Name: 東京eスポーツフェスタ2024
Theme URI: https://tokyoesportsfesta.jp/
Description: This is our original theme.
Version:1.0
*/

* {
  box-sizing: border-box;
  font-feature-settings: "palt";
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 143px;
  font-size: calc(100vw / 118.5);
		height: 100%;
}

body, h1, h2, h3, h4, h5, p {
  margin: 0;
  line-height: 1;
  font-family: 'M PLUS 1p', sans-serif;
  color: #000000;
}

p {
  text-align: justify;
  letter-spacing: 0;
}

img {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  vertical-align: bottom;
}

ul, li {
  margin: 0;
  padding: 0;
  list-style: none;
}

a {
  text-decoration: none;
}

a:hover {
  opacity: 0.6;
}

a {
	position: relative;
	color: #000000;
	text-decoration: none;
}
a:hover {
	color: #000000;
	text-decoration: none;
	opacity: 0.7;
}

a,
a:before,
a:after,
a > *,
a > *:before,
a > *:after {
	transition: all 0.4s;
}
a:hover,
a:hover:before,
a:hover:after,
a:hover > *,
a:hover > *:before,
a:hover > *:after {
	transition: all 0.3s;
}
span {
  display: inline-block;
}

dl, dt, dd {
  all: unset;
  display: block;
}

button {
  all: unset;
  display: block;
}

.sp_obj {
  display: none;
}

.container {
  max-width: calc(1100px + 20px * 2);
  margin: 0 auto;
  padding: min(8rem, 80px) min(2rem, 20px);
}
.container_s {
  max-width: calc(900px + 20px * 2);
  margin: 0 auto;
  padding: min(8rem, 80px) min(2rem, 20px);
}

a.to_link01 {
  /*display: block;*/
  /*width: fit-content;*/
  display: flex;
		align-items: center;
  margin: min(9rem, 90px) auto 0;
  padding: min(3.2rem, 32px) min(10rem, 100px);
  border-radius: 99px;
  color: #fff;
  font-size: min(2.8rem, 28px);
  font-weight: 700;
  background: linear-gradient(to right, #FF67FF 0%, #009FFF 100%);
  position: relative;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
}

a.to_link01::after {
  display: block;
  position: absolute;
  content: '\025b6';
  color: #2265D3;
  font-size: min(1.2rem, 12px);
  width: min(4rem, 40px);
  height: min(4rem, 40px);
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(3.2rem, 32px);
}

a.to_link02 {
  display: block;
  margin: min(6.6rem, 66px) auto 0;
  width: fit-content;
  padding: min(2.4rem, 24px) min(9.6rem, 96px);
  color: #fff;
  font-size: min(2rem, 20px);
  font-weight: 700;
  background: linear-gradient(to right, #00FFC8 0%, #0097FF 100%);
  border-radius: 99px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
  position: relative;
	z-index:998;
}

a.to_link02::after {
  display: block;
  position: absolute;
  content: '\025b6';
  color: #2265D3;
  font-size: min(0.8rem, 8px);
  width: min(3rem, 30px);
  height: min(3rem, 30px);
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(2.4rem, 24px);
}

.to_link02 {
  display: block;
  margin: min(6.6rem, 66px) auto 0;
  width: fit-content;
  padding: min(2.4rem, 24px) min(9.6rem, 96px);
  color: #fff;
  font-size: min(2rem, 20px);
  font-weight: 700;
  background: linear-gradient(to right, #00FFC8 0%, #0097FF 100%);
  border-radius: 99px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
  position: relative;
}

.to_link02::after {
  display: block;
  position: absolute;
  content: '\025b6';
  color: #2265D3;
  font-size: 8px;
  width: min(3rem, 30px);
  height: min(3rem, 30px);
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(2.4rem, 24px);
}

h2.h2_ttl {
  font-size: min(4rem, 40px);
  font-weight: 700;
  text-align: center;
}

h2.h2_ttl02 {
  font-size: min(4rem, 40px);
  font-weight: 700;
  text-align: center;
  padding: min(7.6rem, 76px) 0;
  background: linear-gradient(to left, #B2E0FF 0%, #B2FFEF 100%);
  position: relative;
}

h2.h2_ttl02::after {
  display: block;
  position: absolute;
  font-size: min(1.6rem, 16px);
  right: 0;
  left: 0;
  margin: auto;
  transform: translateY(50%);
}

h3.h3_ttl {
  margin: min(8rem, 80px) auto 0;
  font-size: min(4rem, 40px);
  font-weight: 700;
  text-align: center;
  background: -webkit-linear-gradient(0deg, #009BE6, #2265D3);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #009BE6;
		position: relative;
		width:fit-content;
}

h3.h3_ttl::after {
	display: block;
	content: '';
  background: linear-gradient(90deg, #000000 0%, #000000 50%, #009BE6 50%, #009BE6 100%);
	width: 50px;
	height: 5px;
	position: absolute;
	left:0;
	right:0;
	bottom:-30px;
	margin: auto;	}

p.common_txt {
  font-size: min(1.6rem, 16px);
  text-align: center;
  line-height: 2;
}

p.common_txt span {
  font-weight: 700;
  color: #009BE6;
}

a.common_link {
	position: relative;
	background-image: url(img/common_link_bg.svg);
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	margin: 0 auto;
	min-width: min(53.5rem, 535px);
	padding: min(4rem, 40px) 0;
	font-size: min(2.5rem, 25px);
	text-align: center;
	font-weight: 700;
	height: min(13.7rem, 137px);
	display: block;
}
a.common_link span {
	font-size: min(1.6rem, 16px);
	display: block;
	padding-top: min(0.5rem, 5px);
}
a.common_link::before,
a.common_link::after {
content:'';
position: absolute;
	}
a.common_link::before {
	background: transparent linear-gradient(90deg, #0097FF 0%, var(--unnamed-color-00ffc8) 100%) 0% 0% no-repeat padding-box;
	background: transparent linear-gradient(90deg, #0097FF 0%, #00FFC8 100%) 0% 0% no-repeat padding-box;
	width: 85%;
	height: min(0.5rem, 5px);
	bottom: min(1rem, 10px);
	display: block;
	left: 0;
	right: 0;
	margin: auto;
}
a.common_link::after {
	content: url("img/common_link_arrow.svg");
	right:min(3.2rem, 32px);
	top:min(5rem, 50px);
}

@media (max-width: 799px) {
  
  html {
    /* scroll-padding-top: ; */
    font-size: calc(100vw / 37.5);
  }
  
  .container {
    padding: 4rem 2rem;
  }

  a.to_link01 {
    display: block;
    width: 95%;
    margin: 2.4rem auto 0;
    text-align: center;
    padding: 2.0rem 0;
    font-size: 1.9rem;
  }

  a.to_link01::after {
    font-size: .8rem;
    width: 2.4rem;
    height: 2.4rem;
    right: 2.4rem;
  }

  a.to_link02 {
    margin: 6.0rem auto 0;
    width: 95%;
    text-align: center;
    padding: 2.0rem;
    font-size: 1.6rem;
  }
  
  a.to_link02::after {
    font-size: .6rem;
    width: 2.0rem;
    height: 2.0rem;
    right: 1.6rem;
  }

  .to_link02 {
    margin: 6.0rem auto 0;
    width: 95%;
    text-align: center;
    padding: 2.0rem;
    font-size: 1.6rem;
  }
  
  .to_link02::after {
    font-size: .6rem;
    width: 2.0rem;
    height: 2.0rem;
    right: 1.6rem;
  }
		
  h2.h2_ttl {
    font-size: 3.0rem;
  }

  h2.h2_ttl02 {
    font-size: 3.0rem;
    padding: 5.5rem 0;
  }

  h2.h2_ttl02::after {
    font-size: 1.6rem;
  }

  h3.h3_ttl {
    width: 31.0rem;
    margin: 4.0rem auto 0;
    font-size: 3.0rem;
    gap: 3.0rem;
  }

  h3.h3_ttl::before,
  h3.h3_ttl::after {
    width: 20.8%;
	bottom:-20px;
  }

  p.common_txt {
    width: 31.0rem;
    margin: 0 auto;
    font-size: 1.4rem;
  }
  
  .sp_obj {
    display: block !important;
  }
  
  .pc_obj {
    display: none !important;
  }

a.common_link {
	min-width: auto;
    padding: 2.5rem 0 1.8rem;
	font-size: 1.8rem;
	text-align: center;
	font-weight: 700;
	height: 9rem;
	width: 90%;
}
a.common_link span {
	font-size: 1.2rem;
}
a.common_link::before {
	height: 0.3rem;
}
a.common_link::after {
	content: url("img/common_link_arrow.svg");
	right:3.2rem;
	top:0;
	bottom:0;
	margin:auto;
	display: flex;
	align-items: center;
}

}

/* header ---------- 
---------- ---------- ---------- ---------- ----------  */

header {
	width: 100%;
	background-color: #fff;
	position: fixed;
	z-index: 999;
	background-image: url(img/hd_bg.png);
	background-position: right center;
	background-size: contain;
	background-repeat: no-repeat;
	top: 0;
}

header div.header_container {
	position: relative;
	padding: min(1.5rem, 15px) 0 min(2rem, 20px);
}

header div.header_container a.h1_area {
  width: min(30.5rem, 305px);
		margin:0 auto;
		display: block;
	margin-bottom: min(2rem, 20px);
		}
header div.header_container ul.hd_nav {
	display: flex;
	justify-content: center;
	gap: min(1.5rem, 15px);
	font-size: min(1.6rem, 16px);
	font-weight: 700;
}
header div.header_container ul.hd_nav li {
	position: relative;
}
header div.header_container ul.hd_nav li.current-menu-item::after {
content:'';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	margin: auto;
	width: min(3.5rem, 35px);
	height: min(0.5rem, 5px);
	background-color: #009BE6;
}
header div.header_container ul.sns_area {
	position: absolute;
	right:0;
	top:0;
	display: flex;
}
header div.header_container ul.sns_area li a {
display: flex;
justify-content: center;
align-items: center;
	width: min(5.5rem, 55px);
	height: min(5.5rem, 55px);
}
header div.header_container ul.sns_area li a.youtube {
	background-color: #FF0000;
}
header div.header_container ul.sns_area li a.youtube img {
	width: min(3rem, 30px);
}
header div.header_container ul.sns_area li a.facebook {
	background-color: #1877F2;
}
header div.header_container ul.sns_area li a.facebook img {
	width: min(1.5rem, 15px);
}
header div.header_container ul.sns_area li a.x {
	background-color: #000000;
}
header div.header_container ul.sns_area li a.x img {
	width: min(2.5rem, 25px);
}
.burger-btn {
display: none;
}
@media (max-width: 799px) {
header {
	background-size: 50%;
}
header div.header_container {
    padding: 0;
				height:5rem;
				display: flex;
				align-items: center;
				justify-content: center;
  }
header div.header_container a.h1_area {
    width: 13.6rem;
    margin-bottom: 0;
  }
header div.header_container ul.sns_area {
	position: static;
	justify-content: center;
  }
header div.header_container ul.hd_nav li.current-menu-item::after {
	left: 0;
	right: auto;
	height: 0.25rem;
}

/* ボタンリセット */
button {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		background: transparent;
		border: 0;
		border-radius: 0;
		color: inherit;
		cursor: pointer;
		font: inherit;
		margin: 0;
		outline: none;
		padding: 0;
		vertical-align: middle;
	}
	
	.burger-btn_wrap {
	position: absolute;
	right:0;
	top:0;
	}
/* ハンバーガーボタン */
.burger-btn{
	display: block;
	width: 5rem;
	height: 5rem;
	position: relative;
	z-index: 3;
	border: none;
	margin-left: auto;
	background-color: #000;
}
.bar{      
  width: 3rem;      
  height: 0.2rem;        
  display: block;      
  position: absolute;      
  left: 50%;      
  transform: translateX(-50%);      
  background-color: #fff    
}    
.bar_top{   
  top: 1.5rem;
}
.bar_mid{    
  top: 50%;
  transform: translate(-50%,-50%);
}
.bar_bottom{
  bottom: 1.5rem;
}
.burger-btn.close .bar_top{      
  transform: translate(-50%,10px) rotate(45deg);      
  transition: transform .3s;
    background-color: #fff;    
}    
.burger-btn.close .bar_mid{      
  opacity: 0;       
  transition: opacity .3s;
  background-color: #fff;    
}    
.burger-btn.close .bar_bottom{      
transform: translate(-50%,-8px) rotate(-45deg);      
transition: transform .3s;
background-color: #fff;    
}

/* ハンバーガーメニュー */
.nav-wrapper{      
  visibility: hidden;
  opacity: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  transition: all .5s;       
  z-index: 2;
	background-color: #fff;
}     
.header-nav{
	width: 100%;
	height: auto;
	padding: 1.5rem;
}

/* ナビゲーション */
header div.header_container ul.hd_nav {
width: auto;
display: block;
padding-top: 5rem;
margin-left: auto;
margin-right: auto;
}
header div.header_container ul.hd_nav li {
	margin-bottom: 30px;
}
header div.header_container ul.hd_nav li a:link {
	font-size: 20px;
}
header div.header_container ul.hd_nav li a:visited {
}
header div.header_container ul.hd_nav li:last-child {
}

.sp_nav_btn {
	margin-bottom: 20px !important;
}
.sp_nav_logo {
	width: 40%;
	margin: 50px auto 0;
}

/* メニューオープン時 */
.nav-wrapper.fade {
	visibility: visible;
	opacity: 1;
}

.noscroll{
  overflow: hidden;
}
}

main {
	width: 100%;
	padding-top: min(14.3rem, 143px);
	background-image: url(img/bg.png);
	background-position: center top;
	background-size: contain;
	background-repeat: repeat-y;
}

@media (max-width: 799px) {
  main {
    padding-top: 5rem;
  }
}

/* top title ---------- 
---------- ---------- ---------- ---------- ----------  */
.index_ttl_set {
	font-weight: 700;
	text-align: center;
}
.index_common_sttl_wrap {
	position: relative;
}
.index_common_sttl_wrap_bg {
	background-color: #009AFF;
	height: calc(173px / 2);
	margin-right: clamp(40%, 40vw, 80%);
	position: relative;
	}
.index_common_sttl_wrap_bg::after {
	content: '';
	height: calc(173px / 2);
	width: min(17.3rem, 173px);
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	background-color: #00FFFF;
	display: block;
	position: absolute;
	right:-86.5px;
	top:0;
	bottom:0;
	margin: auto;
 }
.index_ttl_set .index_common_sttl {
	color: #fff;
	font-size: min(5rem, 50px);
	width: auto;
	text-align: center;
	position: absolute;
	left:0;
	right:0;
	bottom:0;
	margin: auto;	
	z-index: 1;
	line-height: 0.7em;
	}
.index_ttl_set h2.index_common_ttl {
	font-size: min(4rem, 40px);
	margin-top: min(2.5rem, 25px);
}
@media (max-width: 799px) {
.index_common_sttl_wrap_bg {
	background-color: #009AFF;
	height: calc(13rem / 2);
	margin-right: clamp(25%, 25vw, 25%);
	}
.index_common_sttl_wrap_bg::after {
	content: '';
	height: calc(13rem / 2);
	width: 13rem;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	background-color: #00FFFF;
	display: block;
	position: absolute;
	right:-6.5rem;
	top:0;
	bottom:0;
	margin: auto;
 }
.index_ttl_set .index_common_sttl {
	color: #fff;
	font-size: 3rem;
	width: auto;
	text-align: center;
	position: absolute;
	left:0;
	right:0;
	bottom:0;
	margin: auto;	
	z-index: 1;
	line-height: 0.7em;
	}
.index_ttl_set h2.index_common_ttl {
	font-size: 3rem;
	margin-top: 2rem;
}
}


/* mv ---------- 
---------- ---------- ---------- ---------- ----------  */

main.index section.mv {
  width: 100%;
}

main.index section.mv div.mv_container {
  padding-bottom: min(4rem, 40px);
}

main.index section.mv div.mv_area {
  width: 100%;
  position: relative;
}

main.index section.mv div.mv_area a.link_x {
  display: block;
  position: absolute;
  width: min(23rem, 230px);
  right: 0;
  bottom: 0;
}

main.index section.mv div.mv_area a.link_x:hover {
  opacity: 0.8 !important;
}

@media (max-width: 799px) {
  
  main.index section.mv div.mv_container {
    padding-bottom: 2.0rem;
  }
  
  main.index section.mv a.link_x {
    width: 100%;
  }
  
}

/* ambassador ---------- 
---------- ---------- ---------- ---------- ----------  */

.ambassador {
	max-width: min(94rem, 940px);
	margin: 0 auto min(9rem, 90px);
}

.ambassador_img {
}
.ambassador_wrap {
	margin-left: min(10rem, 100px);
	position: relative;
}
.ambassador_wrap .ambassador_ttl {
	font-weight: 700;
	position: absolute;
	left:0;
	top:-30px;
}
.ambassador_wrap .ambassador_ttl .ambassador_ttl_h2 {
	font-size: min(4rem, 40px);
	background: transparent linear-gradient(90deg, #009FFF 0%, #FF67FF 100%) 0% 0% no-repeat padding-box;
	color: #fff;
	display: block;
	padding: min(1rem, 10px);
	width: fit-content;
	margin-bottom: min(0.7rem, 7px);
}
.ambassador_wrap .ambassador_ttl .ambassador_ttl_h3 {
	font-size: min(2rem, 20px);
	background: transparent linear-gradient(90deg, #009FFF 0%, #FF67FF 100%) 0% 0% no-repeat padding-box;
	color: #fff;
	display: block;
	width: fit-content;
		padding: min(1rem, 10px);
}

.ambassador_wrap .ambassador_comment {
	padding-top: min(10rem, 100px);
	font-size: min(2rem, 20px);
	font-weight: 700;
	line-height: 2em;
	width: auto;
	max-width: min(70rem, 700px);
}
@media (max-width: 799px) {
.ambassador {
width: auto;
	margin: 0 2.5rem 5rem
}
.ambassador_wrap {
	margin-left: 1rem;
}
.ambassador_wrap .ambassador_ttl {
	top:-20px;
}
.ambassador_wrap .ambassador_ttl .ambassador_ttl_h2 {
	font-size: 3rem;
	padding: 0.5rem;
	margin-bottom: 0.5rem;
}
.ambassador_wrap .ambassador_ttl .ambassador_ttl_h3 {
	font-size: 1.6rem;
	padding: 0.5rem;
}
.ambassador_wrap .ambassador_comment {
	padding-top: 7rem;
	font-size: 1.6rem;
}
}

/* news ---------- 
---------- ---------- ---------- ---------- ----------  */

main.index section.news {
  width: 100%;
}

section.news dl.news_dl {
  margin-top: min(4rem, 40px);
  width: 100%;
}

section.news dl.news_dl div.news_item {
  width: 100%;
  padding: min(2.8rem, 28px) min(3.6rem, 36px);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  transition: all 0.4s;
  position: relative;
}

section.news dl.news_dl div.news_item::after {
  position: absolute;
  display: block;
  content: '\025b6';
  color: #2265D3;
  font-size: min(0.8rem, 8px);
  width: min(3rem, 30px);
  height: min(3rem, 30px);
  background: #E0E0E0;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: min(1.6rem, 16px);
  right: min(3.6rem, 36px);
  transition: all 0.4s;
}

section.news dl.news_dl div.news_item:hover {
  background: #F4F7F9;
  box-shadow: 0 0 0;
}

section.news dl.news_dl div.news_item:hover::after {
  color: #fff;
  background: #2265D3;
}

section.news dl.news_dl a {
display: block;
  margin-top: min(3.6rem, 36px);
}

section.news dl.news_dl a + a {
  margin-top: min(3.6rem, 36px);
}

section.news dl.news_dl div.news_item dt.news_date {
  font-size: min(1.4rem, 14px);
  font-weight: 700;
  color: #2265D3;
  padding-bottom: min(1.6rem, 16px);
  border-bottom: 4px solid #F4F7F9;
  transition: all 0.4s;
}

section.news dl.news_dl div.news_item:hover dt.news_date {
  border-bottom: 4px solid #fff;
}

section.news dl.news_dl div.news_item dd.news_ttl {
  font-size: min(2rem, 20px);
  font-weight: 700;
  margin-top: min(1.6rem, 16px);
		line-height: 2.5rem;
}

@media (max-width: 799px) {
main.index section.news dl.news_dl {
margin-top: 0;
}
  section.news dl.news_dl {
    margin-top: 5.5rem;
				box-sizing: border-box;
  }

 .page-template-page-news section.news dl.news_dl {
    margin-top: 0;
				box-sizing: border-box;
  }
		
  section.news dl.news_dl div.news_item {
    padding: 2.0rem;
    box-shadow: 0 0 .8rem rgba(0, 0, 0, 0.16);
  }
  
  section.news dl.news_dl div.news_item::after {
    bottom: auto;
    top: 1.0rem;
    right: 2.0rem;
    transition: all 0.4s;
  }

  section.news dl.news_dl div.news_item + div.news_item {
    margin-top: 2.2rem;
  }

  section.news dl.news_dl div.news_item dt.news_date {
    font-size: 1.4rem;
    padding-bottom: 1.6rem;
    border-bottom: .4rem solid #F4F7F9;
  }
  
  section.news dl.news_dl div.news_item dd.news_ttl {
    line-height: calc(50 / 30);
    font-size: 1.4rem;
    padding-bottom: 1.6rem;
    border-bottom: .4rem solid #F4F7F9;
  }
}

/* about ---------- 
---------- ---------- ---------- ---------- ----------  */
.about {
	background-image: url(img/_esports/bg_contents_list.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
	margin-bottom: min(9rem, 90px);
}
.about .about_wrap {
	border-radius: 15px;
	background: #fff;
	padding: min(9rem, 90px) 0 min(11rem, 110px) 0;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
	margin: 0 auto;
	max-width: min(93.5rem, 935px);
}
.about .about_wrap::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url(img/index_about_bg.png);
	max-width: min(110rem, 1100px);
	height: min(112.4rem, 1224px);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.about .h2_ttl span {
	color: #0097FF;
}
.about .about_txt {
	margin-top: min(5rem, 50px);
	text-align: center;
	font-size: min(1.6rem, 16px);
	line-height: 2em;
	font-weight: 700;
}
@media (max-width: 799px) {
.about {
	background-image: url(img/_esports/bg_contents_list_sp.jpg);
	margin-bottom: 5rem;
}
.about .about_wrap {
	padding: 25px;
}
.about .about_wrap::after {
	content: none;
}
.about .h2_ttl {
font-size: 2.5rem;
}
.about .about_txt {
	margin-top: 2.5rem;
	font-size: 1.4rem;
	text-align: left;
}
}

/* overview ---------- 
---------- ---------- ---------- ---------- ----------  */
.overview .font_l {
	font-size: min(2.6rem, 26px);
font-weight:bold;
}
.overview a {
	font-weight: bold;
	color: #2265D3 !important;
	text-decoration: underline;
}
.overview em {
	font-weight: bold;
	font-style: normal;
}
.overview {
	font-size: min(1.6rem, 16px);
	line-height: 2em;
	background-color: #F4F7F9;
}
.overview table {
	margin-top: min(4rem, 40px);
	width: 100%;
}
.overview table th {
	text-align: left;
	font-weight: bold;
	padding: min(2.3rem, 23px);
	white-space: nowrap;
	border-bottom: 1px solid #009BE6;
	vertical-align: top;
}
.overview table td {
	text-align: left;
	padding: min(2.3rem, 23px);
	border-bottom: 1px solid #707070;
	}
.overview ul.member_list {
	font-size: min(1.6rem, 16px);
	margin-left: min(2rem, 20px);
}
.overview ul.member_list li {
	padding: 0;
	list-style-type: disc;
}
.overview ul.overview_list {
	margin-left: min(2rem, 20px);
}
.overview ul.overview_list li {
	padding: min(0.5rem, 5px) 0;
	list-style-type: disc;
}
@media (max-width: 799px) {
.overview {
	font-size: 1.4rem;
}
.overview .font_l {
	font-size: 2rem;
}
.overview table {
margin-top: 0;
}
.overview table th {
	font-size: 2rem;
	padding: 1.5rem;
}
.overview table td {
	padding: 1.5rem;
	font-size: 2rem;
	border: none;
	}
.overview ul.member_list {
	font-size: 1.4rem;
	margin-left: 1rem;
}
.overview ul.member_list li {
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.5em;
}
.overview ul.overview_list {
	margin-left: 1rem;
}
.overview ul.overview_list li {
	padding: 0.5rem 0;
	font-size: 1.4rem;
	line-height: 1.5em;
}
.overview table th {
display: block;
}
.overview table td {
display: block;
	}
}

/* archive ---------- 
---------- ---------- ---------- ---------- ----------  */
.archive {
/*	padding: min(10rem, 100px) 0;*/
}
.archive ul.archive_list {
	grid-gap: min(5rem, 50px);
	flex-wrap: wrap;
	margin: 0 auto;
	max-width: min(61.5rem, 615px);
}
.archive ul.archive_list li a {
	text-align: center;
	font-size: min(2.5rem, 25px);
	font-weight: 700;
	padding-bottom: min(1.5rem, 15px);
	border-bottom: 2px solid #E5E5E5;
	margin-bottom: min(3.7rem, 37px);
	position: relative;
	display: block;
}
.archive ul.archive_list li a::after {
content:url("img/archives_arrow.svg");
	position: absolute;
	right:0;
	top:0;
	bottom:0;
	margin: auto;	
}
.archive ul.archive_list li a:hover {
	border-bottom: 2px solid #2265D3;
	margin-bottom: min(3.7rem, 37px);
	position: relative;
	display: block;
	color: #2265D3;
	transition: none;
	opacity: 1;
}
.archive ul.archive_list li a:hover::after {
content:url("img/archives_arrow_hover.svg");
	position: absolute;
	right:0;
	top:0;
	bottom:0;
	margin: auto;	
}
.archive_list .c-banner-list__more {
	display: block;
}
.archive_list .to_link02 {
	margin-top: 0px;
}
@media (max-width: 799px) {
.archive {
	padding-top: 0px;
	margin-bottom: 0px;
}
.archive ul.archive_list li a {
	font-size: min(2rem, 20px);
}
}

/* sns ---------- 
---------- ---------- ---------- ---------- ----------  */

main.index section.sns {
  width: 100%;
}

main.index section.sns div.container {
  padding-top: 0;
}

main.index section.sns div.sns_area {
  width: 25%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  gap: min(4rem, 40px);
}

main.index section.sns div.sns_area a.sns_item {
  width: 100%;
}

main.index section.sns div.sns_area a.sns_item.x {
  width: 80%;
}

@media (max-width: 799px) {
  
  main.index section.sns div.sns_area {
    width: 68%;
    gap: 3.6rem;
  }
}

/* footer ---------- 
---------- ---------- ---------- ---------- ----------  */

footer {
  width: 100%;
}

footer a {
  color: #fff;
}

footer div.inquiry_area {
	width: 100%;
	background-color: #2265D3;
}

footer div.inquiry_area div.container {
  padding-bottom: min(3.2rem, 32px);
}

footer div.inquiry_area h2.h2_ttl {
  color: #fff;
}

footer div.inquiry_area dl.inquiry_dl {
  margin-top: min(4rem, 40px);
  width: 100%;
  display: flex;
  gap: min(2rem, 20px);
}

footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap {
  width: calc((100% - 20px) / 2);
  border-radius: 35px;
  padding: min(2.4rem, 24px) min(3rem, 30px);
  position: relative;
}

footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 35px;
  background: linear-gradient(to right, #0097FF, #00FFC8);
  background-size: 120%;
  background-position: center center;
  border: 2px solid transparent;
  -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
  -webkit-mask-clip: padding-box, border-box;
  -webkit-mask-composite: destination-out;
  mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
  mask-clip: padding-box, border-box;
  mask-composite: exclude;
}

footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap dt.inquiry_dt {
  text-align: center;
  color: #fff;
  font-size: min(2rem, 20px);
  font-weight: 700;
  padding-bottom: min(1.6rem, 16px);
  border-bottom: 1px solid #0097FF;
  border-image: linear-gradient(to right, #0097FF, #00FFC8 ) 1;
}

footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap dd.inquiry_dd {
  text-align: center;
  color: #fff;
  font-size: min(2.8rem, 28px);
  font-weight: 700;
  margin-top: min(1.6rem, 16px);
}

footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap dd.inquiry_dd02 {
  font-size: min(2.8rem, 28px);
}

p.footer_txt {
  margin-top: min(8.5rem, 85px);
  font-size: min(2.4rem, 24px);
  font-weight: 700;
  text-align: center;
  color: #fff;
}

p.footer_txt + p.footer_txt {
  margin-top: min(1.6rem, 16px);
}

p.footer_txt02 {
  margin-top: min(2.4rem, 24px);
  font-size: min(1.6rem, 16px);
  font-weight: 700;
  text-align: center;
  color: #fff;
}

p.footer_txt03 {
  margin-top: min(6.5rem, 65px);
}

footer div.privacy_policy {
  width: 100%;
  background: linear-gradient(to right, #00FFC8 0%, #0097FF 100%);
}

footer div.privacy_policy div.container {
  padding: min(3.2rem, 32px) min(2rem, 20px);
}

footer div.privacy_policy div.container p.footer_txt02 {
  margin-top: 0;
}

footer div.privacy_policy div.container p.footer_txt02 + p.footer_txt02 {
  margin-top: min(1.6rem, 16px);
		line-height: 1.5em;
}

footer a.to_top {
  display: block;
  position: fixed;
  width: min(16rem, 160px);
  height: min(16rem, 160px);
  right: min(8rem, 80px);
  bottom: min(6.8rem, 68px);
  z-index: 2;
  transform: translateY(120px);
  opacity: 0;
  pointer-events: none;
  transition: all .4s;
}

footer a.to_top.appear {
  transform: none;
  opacity: 1;
  pointer-events: auto;
}

@media (max-width: 799px) {
  
  footer div.inquiry_area {
  }
  
  footer div.inquiry_area div.container {
    padding: 4.7rem 2.0rem;
  }
  
  footer div.inquiry_area dl.inquiry_dl {
    margin-top: 4.6rem;
    flex-direction: column;
    gap: 1.6rem;
  }

  footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap {
    width: 100%;
    border-radius: 2.4rem;
    padding: 1.6rem .8rem;
  }
  
  footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap::after {
    border-radius: 2.4rem;
    border: .2rem solid transparent;
  }
  
  footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap dt.inquiry_dt {
    width: fit-content;
    margin: 0 auto;
    font-size: 1.6rem;
    padding: 0 2.4rem 1.0rem;
  }
  
  footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap dd.inquiry_dd {
    font-size: 2.2rem;
    margin-top: 1.0rem;
  }
  
  footer div.inquiry_area dl.inquiry_dl div.inquiry_wrap dd.inquiry_dd02 {
    font-size: 2.0rem;
    margin-top: 1.0rem;
  }
  
  p.footer_txt {
    margin-top: 3.7rem;
    font-size: 2.1rem;
  }
  
  p.footer_txt + p.footer_txt {
    margin-top: 1.6rem;
  }
  
  p.footer_txt02 {
    margin-top: 2.0rem;
    font-size: 1.4rem;
  }
  
  p.footer_txt03 {
    margin-top: 4.8rem;
  }
  
  footer div.privacy_policy div.container {
    padding-top: 3.0rem;
    padding-bottom: 3.0rem;
  }
  
  footer div.privacy_policy div.container p.footer_txt02 + p.footer_txt02 {
    margin-top: 1.4rem;
  }
  
  footer a.to_top {
    width: 10rem;
    height: 10rem;
    right: .8rem;
    bottom: 0;
    transform: translateY(6rem);
  }
}

/* news ---------- 
---------- ---------- ---------- ---------- ----------  */

.inner_container {
  width: 100%;
  padding: 0 20px 124px;
}

.inner_wrap {
  margin: -38px auto 0;
  max-width: 1100px;
  padding: 65px 75px;
  background: #fff;
  border-radius: 25px;
		position: relative;
		z-index: 1;
}

.inner_wrap p a {
	color: #2265D1;
	font-weight: bold;
	text-decoration: underline;
}

@media (max-width: 799px) {
  
  .inner_container {
    padding: 0 1.2rem 3.8rem;
  }
  
  .inner_wrap {
    margin: -3rem auto 0;
    padding: 2.4rem 2.0rem;
    background: #fff;
    border-radius: 2.5rem;
  }
}

main.news {
  width: 100%;
}

main.news section.news {
  width: 100%;
  background: #F4F4F4;
}

main.news section.news p.news_date {
  font-size: 14px;
  font-weight: 700;
  color: #2265D3;
}

main.news section.news p.news_ttl {
  margin-top: 24px;
  font-size: 28px;
  font-weight: 700;
  padding-bottom: 28px;
  border-bottom: 4px solid #EDEDED;
}

main.news section.news p {
  margin-top: 24px;
  font-size: 16px;
  line-height: 2;
}

main.news section.news div.image_wrap {
  margin-top: 65px;
  display: flex;
}

main.news section.news div.image_wrap div.image_area {
  width: 50%;
}

main.news section.news p.news_note {
  margin-top: 0;
  font-size: 14px;
  line-height: calc(45 / 28);
  color: #979797;
}

main.news section.news h4.wp-block-heading {
  margin-top: 100px;
  font-size: 24px;
  font-weight: 700;
  background: #E0F3FF;
  border-radius: 8px;
  padding: 16px 24px;
}

main.news section.news h5.wp-block-heading {
  margin-top: 50px;
  font-size: 20px;
  font-weight: 700;
  padding-bottom: 8px;
  border-bottom: 2px dotted #2265D3;
}

main.news section.news div.news_wrap {
  margin-top: 33px;
  display: flex;
  gap: 43px;
}

main.news section.news div.news_wrap + div.news_wrap {
  margin-top: 75px;
}

main.news section.news div.news_wrap p.news_txt {
  flex: 1;
  margin-top: 0;
  font-size: 16px;
  line-height: 2;
}

main.news section.news div.news_wrap p.news_txt span {
  display: block;
  font-size: 18px;
  font-weight: 700;
  line-height: calc(64 / 38);
}

main.news section.news div.news_wrap div.image_area {
  width: min(35rem, 350px);
}

@media (max-width: 799px) {
  
  main.news section.news p.news_date {
    font-size: 1.4rem;
  }
  
  main.news section.news p.news_ttl {
    margin-top: .8rem;
    font-size: 2.8rem;
    line-height: calc(70 / 56);
    padding-bottom: 2.0rem;
    border-bottom: .4rem solid #EDEDED;
  }
  
  main.news section.news p {
    margin-top: 2.4rem;
    font-size: 1.4rem;
    line-height: 2;
  }
  
  main.news section.news div.image_wrap {
    margin-top: 4.5rem;
    flex-direction: column;
    gap: 1.6rem;
  }
  
  main.news section.news div.image_wrap div.image_area {
    width: 100%;
  }
  
  main.news section.news p.news_note {
    margin-top: 0;
    font-size: 1.2rem;
    line-height: calc(40 / 24);
  }
  
  main.news section.news p.news_ttl02 {
    margin-top: 5.6rem;
    font-size: 2.1rem;
    border-radius: .8rem;
    padding: 1.2rem;
  }
  
  main.news section.news p.news_sttl {
    margin-top: 2.4rem;
    font-size: 2.0rem;
    line-height: calc(50 / 40);
    padding-bottom: .8rem;
    border-bottom: .2rem dotted #2265D3;
  }
  
  main.news section.news div.news_wrap {
    margin-top: 3.3rem;
    flex-direction: column;
    gap: 2.4rem;
  }
  
  main.news section.news div.news_wrap + div.news_wrap {
    margin-top: 4.0rem;
  }
  
  main.news section.news div.news_wrap p.news_txt {
    width: 100%;
    margin-top: 0;
    font-size: 1.4rem;
  }
  
  main.news section.news div.news_wrap p.news_txt span {
    display: block;
    font-size: 1.4rem;
    line-height: 2;
  }
  
  main.news section.news div.news_wrap div.image_area {
    width: 100%;
  }
}


/* esports ---------- 
---------- ---------- ---------- ---------- ----------  */

main.esports section.contents {
  width: 100%;
  background-color: #F4F4F4;
  padding: 0 0 80px;
}

main.esports section.contents h2.h2_ttl02::after {
  content: 'eSports';
}

main.esports section.contents p.common_txt {
  margin-top: 40px;
}

div.contents_list {
  margin-top: 80px;
  width: 100%;
  position: relative;
  z-index: 1;
}

div.contents_list::after {
  position: absolute;
  display: block;
  content: '';
  background-image: url(img/_esports/bg_contents_list.jpg);
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: min(28.5rem, 285px);
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1;
}

div.contents_list div.contents_list_wrap {
  max-width: 1140px;
  padding: 0 20px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: min(4.5rem, 45px) min(2rem, 20px);
}

div.contents_list div.contents_list_wrap.seminar {
	max-width: 1140px;
	padding: min(7rem, 70px);
	margin: 0 auto;
	display: block;
	background-color: rgba(255,255,255,0.80);
}
div.contents_list div.contents_list_wrap.seminar p.contents_list_txt {
  font-size: min(2.3rem, 23px);
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: min(.4rem, 4px);
	border-bottom: 1px solid #000;
	padding: min(3rem, 30px) 0;
	margin-top:0;
}
div.contents_list div.contents_list_wrap.seminar p.contents_list_txt span {
	font-size: min(1.6rem, 16px);
}

div.contents_list div.contents_list_wrap div.logo_area {
  width: 100%;
  padding: min(1.6rem, 16px) min(2.4rem, 24px);
  background-color: #fff;
  border-radius: min(1.5rem, 15px);
  box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.1);
}

div.contents_list div.contents_list_wrap p.contents_list_txt {
  margin-top: min(1.2rem, 12px);
  font-size: min(1.6rem, 16px);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: min(.4rem, 4px);
}

div.contents_list div.contents_list_wrap p.contents_list_txt::after {
  display: block;
  content: '';
  background-image: url(img/_esports/icon_arrow_white_blue.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: min(2.4rem, 24px);
  height: min(2.4rem, 24px);
}
.esports_winner {
	max-width: min(30rem, 300px);
	margin:0 auto;
 margin-bottom: min(6rem, 60px);
}
.esports_tournament {
	max-width: auto;
	margin:0 auto;
 margin: min(6rem, 60px) 0;
}

/* ---------------------------------------------------------------------- */


main.esports section.contents div.content_item_wrap {
  margin: min(8rem, 80px) auto 0;
  max-width: 1140px;
  padding: 0 20px;
}

main.esports section.contents div.content_item_wrap div.content_item {
  width: 100%;
  padding: min(5rem, 50px);
  border-radius: min(2.5rem, 25px);
  background-color: #fff;
}

main.esports section.contents div.content_item_wrap div.content_item + div.content_item {
  margin-top: min(6rem, 60px);
}

main.esports section.contents div.content_item_wrap div.content_item div.content_ttl_area {
  display: flex;
  align-items: center;
  gap: min(3.2rem, 32px);
}

main.esports section.contents div.content_item_wrap div.content_item div.content_ttl_area div.logo_area {
  width: min(35rem, 350px);
}

main.esports section.contents div.content_item_wrap div.content_item div.content_ttl_area p.content_ttl {
  flex: 1;
  font-size: min(3.5rem, 35px);
  font-weight: 700;
  line-height: calc(80 / 70);
}

main.esports section.contents div.content_item_wrap div.content_item p.content_category {
  margin-top: min(5rem, 50px);
  font-size: min(2.5rem, 25px);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: min(2.3rem, 23px);
}

main.esports section.contents div.content_item_wrap div.content_item p.content_category02 {
  margin-top: min(7.7rem, 77px);
}

main.esports section.contents div.content_item_wrap div.content_item p.content_category::before {
  display: block;
  content: '';
  background-image: url(img/_esports/icon_ttl.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: min(3.2rem, 32px);
  height: min(1.6rem, 16px);
}

a.apply_link {
  display: block;
  margin: min(5rem, 50px) auto 0;
  width: min(50rem, 500px);
  padding: min(3.2rem, 32px) 0;
  border-radius: 99px;
  background: linear-gradient(to right, #0097FF 0%, #00FFC8 100%);
  color: #fff;
  font-size: min(2.5rem, 25px);
  font-weight: 700;
  text-align: center;
  position: relative;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
}

a.apply_link::after {
  position: absolute;
  content: '';
  display: block;
  background-image: url(img/_esports/icon_arrow_blue_white.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: min(2.8rem, 28px);
  height: min(2.8rem, 28px);
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(3.5rem, 35px);
}

main.esports section.contents div.content_item_wrap div.content_item div.document {
  margin-top: min(4rem, 40px);
  width: 100%;
  background-color: rgba(0, 155, 230, .05);
  padding: min(3rem, 30px);
}

main.esports section.contents div.content_item_wrap div.content_item div.document p.document_ttl {
  font-size: min(2rem, 20px);
  font-weight: 700;
  text-align: center;
}

main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links {
  margin-top: min(2.2rem, 22px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(2.3rem, 23px);
}

main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links a.document_link {
  display: block;
  width: min(33.5rem, 335px);
  padding: min(1.6rem, 16px) 0;
  border-radius: 99px;
  font-size: min(2rem, 20px);
  font-weight: 700;
  text-align: center;
  background-color: #fff;
  border: 2px solid #009BE6;
  box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.16);
  color: #009BE6;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(1.5rem, 15px);
}

main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links a.document_link::before {
  display: block;
  content: '';
  background-image: url(img/_esports/icon_pdf.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: min(2.2rem, 22px);
  height: min(2.7rem, 27px);
}

main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links a.document_link::after {
  position: absolute;
  display: block;
  content: '';
  background-image: url(img/_esports/icon_arrow_blue.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: min(.7rem, 7px);
  height: min(.7rem, 7px);
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(2.3rem, 23px);
}

  main.esports section.contents .content_copyrights {
	font-size: min(1rem, 10px);
	/*color: #ccc;*/
	line-height: 1.5em;
	margin-top:min(1.5rem, 15px);
	  	margin-bottom:min(6rem, 60px);
  }

  div.cast_area {
    padding: min(8rem, 80px) 0;
  }

  div.cast_area div.cast_wrap + div.cast_wrap {
    margin-top: min(12rem, 120px);
  }

  div.cast_area div.cast_swrap {
    display: flex;
    justify-content: center;
    align-items: start;
    gap: min(2.4rem, 24px);
				margin-bottom: min(2.4rem, 24px);
  }

  div.cast_area div.cast_swrap div.cast_item {
    width: min(26.5rem, 265px);
    border-radius: min(1.5rem, 15px);
    background: #fff;
    box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.15);
    padding-bottom: min(2rem, 20px);
  }

  div.cast_area div.cast_swrap div.cast_item div.player_image img {
    border-radius: min(1.5rem, 15px) min(1.5rem, 15px) 0 0;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%);
  }

  div.cast_area div.cast_swrap div.cast_item p.player {
    font-size: min(2.4rem, 24px);
    font-weight: 700;
    text-align: center;
  }
		
		div.cast_area div.cast_swrap div.cast_item p.player span {
    font-size: min(1.2rem, 12px);
  }

  div.cast_area div.cast_swrap div.cast_item p.position {
    margin-top: min(2.4rem, 24px);
    font-size: min(1.6rem, 16px);
    font-weight: 700;
    text-align: center;
    line-height: 1.2;
  }

  div.cast_area div.cast_swrap div.cast_item button.player_profile {
    margin: min(2.4rem, 24px) auto 0;
    width: fit-content;
    font-size: min(1.4rem, 14px);
    font-weight: 700;
    color: #009BE6;
    padding: 0 min(2rem, 20px) min(.8rem, 8px);
    border-bottom: 2px solid #009BE6;
    cursor: pointer;
  }

  /* ----- modal_window ----- */

  div.profile_modal {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(255 255 255 / .8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999;
    opacity: 0;
    pointer-events: none;
    transition: all .8s;
  }

  div.profile_modal.show {
    opacity: 1;
    pointer-events: auto;
  }

  div.profile_modal div.profile_area {
    max-width: min(70rem, 700px);
    padding: min(4.4rem, 44px);
    border-radius: min(.8rem, 8px);
    display: flex;
    align-items: start;
    gap: min(1.2rem, 12px);
    position: relative;
    border: 5px solid #C2E1F0;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
    background-color: #fff;
    max-height: 60vh;
				height:100%;
  }

  div.profile_modal div.profile_area div.profile_image {
    width: 44%;
  }

  div.profile_modal div.profile_area div.profile_txt {
    flex: 1;
				height:100%;
  }

  div.profile_modal div.profile_area div.profile_txt p.profile_name {
    font-size: min(2.4rem, 24px);
    font-weight: 700;
  }

  div.profile_modal div.profile_area div.profile_txt p.profile_position {
    font-size: min(1.6rem, 16px);
    margin-top: min(.8rem, 8px);
    font-weight: 700;
    line-height: 1.2;
  }

  div.profile_modal div.profile_area div.profile_txt p.profile_desc {
    font-size: min(1.6rem, 16px);
    margin-top: min(.8rem, 8px);
    padding-top: min(1.6rem, 16px);
    border-top: 1px solid #009BE6;
    line-height: 2;
    text-align: left;
				height:100%;
				overflow-y: auto;
  }

  div.profile_modal div.profile_area div.profile_close {
    position: absolute;
    width: min(4.4rem, 44px);
    height: min(4.4rem, 44px);
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    cursor: pointer;
  }

	main.esports section.contents .event_txt {
	text-align: center;
	font-size: min(2rem, 20px);
	margin-top: min(5rem, 50px);
}

@media (max-width: 799px) {
  main.esports section.contents {
    padding: 0 0 4.0rem;
  }
  
  main.esports section.contents p.common_txt {
    margin-top: 6.0rem;
  }
  
section.contents div.contents_list {
    margin-top: 5rem;
    padding: 3.0rem 0;
  }
  
section.contents div.contents_list::after {
    position: absolute;
    display: block;
    content: '';
    background-image: url(img/_esports/bg_contents_list_sp.jpg);
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: auto;
  }
  
section.contents div.contents_list div.contents_list_wrap {
    width: 31.0rem;
    padding: 0;
    margin: 0 auto;
    grid-template-columns: 1fr 1fr;
    gap: 1.0rem;
  }
	
	section.contents div.contents_list div.contents_list_wrap.seminar {
	padding: 1.5rem;
}
section.contents div.contents_list div.contents_list_wrap.seminar p.contents_list_txt {
	font-size: 1.6rem;
	padding: 1.5rem 2rem 1.5rem 0;
	flex-wrap: wrap;
	margin-top: 0;
}
	
div.contents_list div.contents_list_wrap.seminar p.contents_list_txt span {
	font-size: 1.2rem;
}

  
section.contents div.contents_list div.contents_list_wrap div.logo_area {
    padding: .6rem 1.0rem;
  }
  
section.contents div.contents_list div.contents_list_wrap p.contents_list_txt {
    margin-top: .8rem;
    font-size: 1.2rem;
    gap: .4rem;
  }
  
section.contents div.contents_list div.contents_list_wrap p.contents_list_txt::after {
    width: 2rem;
    height: 2rem;
	position: absolute;
	right:0;
	bottom:1.5rem;
  }
  /* --------------------------------------------------------------------------- */

  main.esports section.contents div.content_item_wrap {
    margin: 3.5rem auto 0;
    width: 31.0rem;
    padding: 0;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item {
    padding: 2.0rem;
    border-radius: 1.5rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item + div.content_item {
    margin-top: 2.0rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.content_ttl_area {
    flex-direction: column;
    gap: 1.0rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.content_ttl_area div.logo_area {
    width: 100%;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.content_ttl_area p.content_ttl {
    width: 100%;
    font-size: 2.0rem;
    line-height: calc(45/ 40);
  }
  
  main.esports section.contents div.content_item_wrap div.content_item p.content_category {
    margin-top: 3.8rem;
    font-size: 1.5rem;
    line-height: calc(35 / 30);
    gap: 1.0rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item p.content_category02 {
    margin-top: 4.2rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item p.content_category::before {
    width: 1.6rem;
    height: .8rem;
  }
  
a.apply_link {
    margin: 2.2rem auto 0;
    width: 100%;
    padding: 1.6rem 0;
    font-size: 1.5rem;
    box-shadow: 0 0 .8rem rgba(0, 0, 0, 0.16);
  }
  
a.apply_link::after {
    width: 1.5rem;
    height: 1.5rem;
    right: 1.8rem;
  }
	
	#content04 a.apply_link {
    font-size: 1.3rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.document {
    margin-top: 2.0rem;
    padding: 2.0rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.document p.document_ttl {
    font-size: 1.6rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links {
    margin-top: 1.2rem;
    flex-direction: column;
    gap: .8rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links a.document_link {
    width: 100%;
    padding: 1.2rem 0;
    font-size: 1.6rem;
    box-shadow: 0 0 .8rem rgba(0, 0, 0, 0.16);
    gap: 1.0rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links a.document_link::before {
    width: 1.6rem;
    height: 2.0rem;
  }
  
  main.esports section.contents div.content_item_wrap div.content_item div.document div.document_links a.document_link::after {
    width: .6rem;
    height: .6rem;
    right: 1.6rem;
  }
	


  /* ----- cast_area ----- */

  div.cast_area {
    padding: 4.0rem 0;
  }

  div.cast_area div.cast_wrap + div.cast_wrap {
    margin-top: 4.0rem;
  }

  div.cast_area div.cast_swrap {
    flex-direction: column;
    gap: 2.4rem;
  }

  div.cast_area div.cast_swrap div.cast_item {
    width: 100%;
    border-radius: .8rem;
    box-shadow: 0 0 .4rem rgba(0, 0, 0, 0.15);
    padding-bottom: 4.0rem;
  }

  div.cast_area div.cast_swrap div.cast_item div.player_image img {
    border-radius: .8rem .8rem 0 0;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 0% 100%);
  }

  div.cast_area div.cast_swrap div.cast_item p.player {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
  }

  div.cast_area div.cast_swrap div.cast_item p.position {
    margin-top: 2.4rem;
    font-weight: 700;
    font-size: 1.6rem;
  }

  div.cast_area div.cast_swrap div.cast_item button.player_profile {
    margin: 2.4rem auto 0;
    width: fit-content;
    font-size: 1.4rem;
    border-radius: 9.9rem;
    padding: 1.2rem 3.2rem;
    border: .2rem solid #009BE6;
    cursor: pointer;
  }

  /* ----- modal_window ----- */

  div.profile_modal {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(255 255 255 / .8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999;
    opacity: 0;
    pointer-events: none;
    transition: all .8s;
  }

  div.profile_modal.show {
    opacity: 1;
    pointer-events: auto;
  }

  div.profile_modal div.profile_area {
    max-width: 90%;
    width: 90%;
    height: 80vh;
    padding: 0 0 2.0rem;
    border-radius: .8rem;
    flex-direction: column;
    gap: 1.6rem;
    position: relative;
    border: .2rem solid #C2E1F0;
    box-shadow: 0 0 .2rem rgba(0, 0, 0, 0.15);
    background-color: #fff;
    overflow: scroll;
				max-height: none;
  }

  div.profile_modal div.profile_area div.profile_image {
    width: 100%;
  }

  div.profile_modal div.profile_area div.profile_txt {
    width: 100%;
  }

  div.profile_modal div.profile_area div.profile_txt p.profile_name {
    font-size: 2.4rem;
    width: 90%;
    margin: 0 auto;
  }
  
  div.profile_modal div.profile_area div.profile_txt p.profile_position {
    font-size: 1.6rem;
    margin: .8rem auto 0;
    width: 90%;
  }

  div.profile_modal div.profile_area div.profile_txt p.profile_desc {
    font-size: 1.4rem;
    margin: .8rem auto 0;
    padding-top: .8rem;
    border-top: .1rem solid #009BE6;
    line-height: 1.4;
    width: 90%;
  }

  div.profile_modal div.profile_area div.profile_close {
    position: absolute;
    width: 4.4rem;
    height: 4.4rem;
    top: 0;
    right: 0;
    transform: none;
    cursor: pointer;
  }
}

/* timetable ---------- 
---------- ---------- ---------- ---------- ----------  */

main.timetable section.timetable {
  width: 100%;
  background-color: #F4F4F4;
}

main.timetable section.timetable p.common_txt {
  margin-top: min(5rem, 50px);
}

main.timetable section.timetable div.timetable_container {
  margin: 0 auto;
  max-width: calc(1100px + 40px);
  padding: min(8rem, 80px) min(2rem, 20px);
}

main.timetable section.timetable ul.date_ul {
  width: 100%;
  background-color: #fff;
  border-radius: 99px;
  display: flex;
  padding: min(.6rem, 6px);
}

main.timetable section.timetable ul.date_ul li.date_li {
  width: calc(100% /  3);
  padding: min(2.8rem, 28px) 0;
  border-radius: 99px;
  font-size: min(3rem, 30px);
  font-weight: 700;
  text-align: center;
  color: #009BE6;
  cursor: pointer;
  transition: all .4s;
}

main.timetable section.timetable ul.date_ul li.date_li.active {
  background: linear-gradient(to right, #0097FF 0%, #00FFC8 100%);
  color: #fff;
  cursor: auto;
}

main.timetable section.timetable ul.date_ul li.date_li span {
  font-size: min(2rem, 20px);
}

main.timetable section.timetable div.timetable_wrap {
  display: none;
  animation: timetableChanged 1.6s;
}

main.timetable section.timetable div.timetable_wrap.appear {
  display: block;
}

@keyframes timetableChanged {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

main.timetable section.timetable p.stage_ttl {
  max-width: 1000px;
  margin: min(4.8rem, 48px) auto;
  display: flex;
}

main.timetable section.timetable p.stage_ttl span {
  width: calc(100% / 3);
  font-size: min(2rem, 20px);
  font-weight: 700;
  text-align: center;
}

main.timetable section.timetable div.timetable_grid {
  margin-top: min(4.8rem, 48px);
  width: 100%;
  display: grid;
  grid-template-rows: repeat(102, 24px);
  grid-template-columns: min(7.8rem, 78px) 1fr min(1rem, 10px) 1fr min(1rem, 10px) 1fr min(7.8rem, 78px);
  background: repeating-linear-gradient(#fff 0%, #fff 24px, #F2FAFE 24px, #F2FAFE 48px);
}

main.timetable section.timetable div.timetable_grid div.timetable_box {
  display: flex;
  justify-content: space-between;
  height: 144px;
  grid-column: 1/8;
}

main.timetable section.timetable div.timetable_grid div.timetable_box span {
  position: relative;
  transform: translateY(min(-.8rem, -8px));
  font-size: min(1.6rem, 16px);
  font-weight: 700;
  padding: 0 2px;
}

main.timetable section.timetable div.timetable_grid div.timetable_box01 {
  grid-row: 1/6;
}

main.timetable section.timetable div.timetable_grid div.timetable_box02 {
  grid-row: 7/12;
}

main.timetable section.timetable div.timetable_grid div.timetable_box03 {
  grid-row: 13/18;
}

main.timetable section.timetable div.timetable_grid div.timetable_box04 {
  grid-row: 19/24;
}

main.timetable section.timetable div.timetable_grid div.timetable_box05 {
  grid-row: 25/30;
}

main.timetable section.timetable div.timetable_grid div.timetable_box06 {
  grid-row: 31/36;
}

main.timetable section.timetable div.timetable_grid div.timetable_box07 {
  grid-row: 37/42;
}

main.timetable section.timetable div.timetable_grid div.timetable_box08 {
  grid-row: 43/48;
}

main.timetable section.timetable div.timetable_grid div.timetable_box09 {
  grid-row: 49/54;
}

main.timetable section.timetable div.timetable_grid div.timetable_box10 {
  grid-row: 55/60;
}

main.timetable section.timetable div.timetable_grid div.timetable_box11 {
  grid-row: 61/66;
}

main.timetable section.timetable div.timetable_grid div.timetable_box12 {
  grid-row: 67/72;
}

main.timetable section.timetable div.timetable_grid div.timetable_box13 {
  grid-row: 73/78;
}

main.timetable section.timetable div.timetable_grid div.timetable_box14 {
  grid-row: 79/84;
}

main.timetable section.timetable div.timetable_grid div.timetable_box15 {
  grid-row: 85/90;
}

main.timetable section.timetable div.timetable_grid div.timetable_box16 {
  grid-row: 91/96;
}

main.timetable section.timetable div.timetable_grid div.timetable_box17 {
  grid-row: 97/102;
}

main.timetable section.timetable div.timetable_grid div.timetable_item {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  border: 1px solid #fff;
  padding: min(1.6rem, 16px);
}

main.timetable section.timetable div.timetable_grid div.timetable_item.exception {
  align-items: start;
}

main.timetable section.timetable div.timetable_grid div.timetable_item.exception div.contents_area {
  margin-top: 40px;
}

main.timetable section.timetable div.timetable_grid div.timetable_item span {
  position: absolute;
  font-size: min(1.4rem, 14px);
  font-weight: 700;
  color: #fff;
  padding: 4px 12px;
  text-align: center;
  border-radius: 99px;
  top: 0;
  left: 0;
  transform: translateY(-50%);
  z-index: 9;
}

main.timetable section.timetable div.timetable_grid div.timetable_item a.to_detail {
  position: absolute;
  font-size: min(1.6rem, 16px);
  font-weight: 700;
  color: #fff;
  width: min(3.6rem, 36px);
  height: min(3.6rem, 36px);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: 1%;
  right: 1%;
}

main.timetable section.timetable div.timetable_grid div.timetable_item.day03 a.to_detail {
  bottom: 50%;
}

main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt01 {
  font-size: min(1.8rem, 18px);
  font-weight: 700;
  text-align: center;
  line-height: 1.2;
}

main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt01 small {
  color: #009BE6;
}

main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt02 {
  margin-top: min(.8rem, 8px);
  font-size: min(1.4rem, 14px);
  font-weight: 500;
  line-height: 1.4;
}

main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt02 small {
  font-size: min(1.2rem, 12px);
}

main.timetable section.timetable div.timetable_grid div.timetable_item01 {
  background-color: rgba(177, 224, 247, .5);
  grid-column: 2/3;
}

main.timetable section.timetable div.timetable_grid div.timetable_item01 span,
main.timetable section.timetable div.timetable_grid div.timetable_item01 a.to_detail {
  background-color: #009BE6;
}

main.timetable section.timetable div.timetable_grid div.timetable_item02 {
  background-color: rgba(252, 190, 252, .5);
  grid-column: 4/5;
}

main.timetable section.timetable div.timetable_grid div.timetable_item02 span, 
main.timetable section.timetable div.timetable_grid div.timetable_item02 a.to_detail {
  background-color: #E35DE3;
}

main.timetable section.timetable div.timetable_grid div.timetable_item03 {
  background-color: rgba(188, 243, 231, .5);
  grid-column: 6/7;
}

main.timetable section.timetable div.timetable_grid div.timetable_item03 span, 
main.timetable section.timetable div.timetable_grid div.timetable_item03 a.to_detail {
  background-color: #24D8B1;
}

/* ----- competition1pc----- */

main.timetable section.timetable div.timetable_day01 div.competition01 {
  grid-row: 13/19;
}

main.timetable section.timetable div.timetable_day01 div.competition02 {
  grid-row: 37/61;
}

main.timetable section.timetable div.timetable_day01 div.competition03 {
  grid-row: 61/73;
}

main.timetable section.timetable div.timetable_day01 div.competition04 {
  grid-row: 73/85;
}

/* ----- business1pc ----- */

main.timetable section.timetable div.timetable_day01 div.business01 {
  grid-row: 19/25;
}

main.timetable section.timetable div.timetable_day01 div.business02 {
  grid-row: 37/43;
}

main.timetable section.timetable div.timetable_day01 div.business03 {
  grid-row: 43/49;
}

main.timetable section.timetable div.timetable_day01 div.business04 {
  grid-row: 49/55;
}

main.timetable section.timetable div.timetable_day01 div.business05 {
  grid-row: 25/37;
}

main.timetable section.timetable div.timetable_day01 div.business06 {
  grid-row: 85/97;
}

/* ----- community1pc ----- */

main.timetable section.timetable div.timetable_day01 div.community01 {
  grid-row: 49/85;
}

/* ----- competition2pc----- */

main.timetable section.timetable div.timetable_day02 div.competition01 {
  grid-row: 7/25;
}

main.timetable section.timetable div.timetable_day02 div.competition02 {
  grid-row: 25/37;
}

main.timetable section.timetable div.timetable_day02 div.competition03 {
  grid-row: 37/61;
}

main.timetable section.timetable div.timetable_day02 div.competition04 {
  grid-row: 61/97;
}

/* ----- business2pc ----- */

main.timetable section.timetable div.timetable_day02 div.business01 {
  grid-row: 13/25;
}

main.timetable section.timetable div.timetable_day02 div.business02 {
  grid-row: 37/43;
}

main.timetable section.timetable div.timetable_day02 div.business03 {
  grid-row: 43/49;
}

main.timetable section.timetable div.timetable_day02 div.business04 {
  grid-row: 49/61;
}

main.timetable section.timetable div.timetable_day02 div.business05 {
  grid-row: 67/73;
}

main.timetable section.timetable div.timetable_day02 div.business06 {
  grid-row: 73/79;
}

main.timetable section.timetable div.timetable_day02 div.business07 {
  grid-row: 85/97;
}

/* ----- community2pc ----- */

main.timetable section.timetable div.timetable_day02 div.community01 {
  grid-row: 25/37;
}

main.timetable section.timetable div.timetable_day02 div.community02 {
  grid-row: 91/97;
}

/* ----- competition3pc----- */

main.timetable section.timetable div.timetable_day03 div.competition01 {
  grid-row: 13/61;
}

main.timetable section.timetable div.timetable_day03 div.competition02 {
  grid-row: 31/97;
  background-color: #6BBDFC;
  margin: 0 min(2rem, 20px);
}

main.timetable section.timetable div.timetable_day03 div.competition04 {
  grid-row: 61/91;
  background-color:  #f5f8ea;
  margin: 0 min(4rem, 40px);
}

/* ----- business3pc ----- */

main.timetable section.timetable div.timetable_day03 div.business01 {
  grid-row: 13/25;
}

main.timetable section.timetable div.timetable_day03 div.business02 {
  grid-row: 37/49;
}

main.timetable section.timetable div.timetable_day03 div.business03 {
  grid-row: 55/67;
}

main.timetable section.timetable div.timetable_day03 div.business04 {
  grid-row: 73/91;
}

/* ----- community3pc ----- */

main.timetable section.timetable div.timetable_day03 div.community01 {
  grid-row: 55/61;
}

main.timetable section.timetable div.timetable_day03 div.community02 {
  grid-row: 85/91;
}

@media (max-width:799px) {
  
  main.timetable section.timetable p.common_txt {
    margin-top: 6.5rem;
  }
  
  main.timetable section.timetable div.timetable_container {
    padding: 4.0rem 2.0rem;
  }
  
  main.timetable section.timetable ul.date_ul li.date_li {
    width: calc(100% /  3);
    padding: 1.6rem 0;
    font-size: 1.6rem;
  }
  
  main.timetable section.timetable ul.date_ul li.date_li span {
    font-size: 1.2rem;
  }
  
  main.timetable section.timetable div.stage_select_wrap {
    margin: 2.8rem auto 0;
    position: relative;
  }

  /* main.timetable section.timetable p.select_txt {
    width: 100%;
    padding: 1.2rem 2.0rem;
    appearance: none;
    font-size: 1.6rem;
    font-weight: 700;
    background-color: #fff;
    border-radius: .8rem;
    position: relative;
    z-index: 1;
  } */

  main.timetable section.timetable p.select_txt {
    width: 100%;
    padding: 1.2rem 2.0rem;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    z-index: 1;
  }
  
  /* main.timetable section.timetable p.select_txt:before {
    display: block;
    position: absolute;
    content: '';
    background-image: url(img/_timetable/icon_pulldown.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    width: 4.2rem;
    height: 4.2rem;
    right: 0;
    bottom: 0;
  } */
  
  main.timetable section.timetable ul.select_ul {
    display: block;
    position: absolute;
    width: 100%;
    z-index: 2;
    background-color: #dfdfdf;
    border-radius: .8rem;
    opacity: 0;
    pointer-events: none;
    transition: all .4s;
  }
  
  main.timetable section.timetable ul.select_ul.appear {
    opacity: 1;
    pointer-events: auto;
  }
  
  main.timetable section.timetable ul.select_ul li.select_li {
    padding: 1.2rem 2rem;
    font-size: 1.6rem;
    font-weight: 700;
    cursor: pointer;
  }
  

  main.timetable section.timetable div.grid_wrap_s {
    /* display: none; */
    display: block;
    animation: timetableChanged 1.6s;
  }

  main.timetable section.timetable div.grid_wrap_s.appear {
    display: block;
  }

  main.timetable section.timetable div.timetable_grid {
    margin-top: 4.0rem;
    display: grid;
    grid-template-rows: repeat(102, 2.0rem);
    grid-template-columns: 6.0rem 1fr;
    background: repeating-linear-gradient(#fff 0%, #fff 2.0rem, #F2FAFE 2.0rem, #F2FAFE 4.0rem);
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box {
    display: flex;
    justify-content: space-between;
    height: 12.0rem;
    grid-column: 1/3;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box span {
    transform: translateY(-.7rem);
    font-size: 1.4rem;
    padding: 0 .8rem;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box01 {
    grid-row: 1/6;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box02 {
    grid-row: 7/12;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box03 {
    grid-row: 13/18;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box04 {
    grid-row: 19/24;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box05 {
    grid-row: 25/30;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box06 {
    grid-row: 31/36;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box07 {
    grid-row: 37/42;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box08 {
    grid-row: 43/48;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box09 {
    grid-row: 49/54;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box10 {
    grid-row: 55/60;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box11 {
    grid-row: 61/66;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box12 {
    grid-row: 67/72;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box13 {
    grid-row: 73/78;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box14 {
    grid-row: 79/84;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box15 {
    grid-row: 85/90;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box16 {
    grid-row: 91/96;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_box17 {
    grid-row: 97/102;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item {
    display: flex;
    justify-content: start;
    align-items: center;
    position: relative;
    border: 1px solid #fff;
    padding: 1.6rem;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item span {
    font-size: 1.0rem;
    padding: .4rem 1.2rem;
  }

  main.timetable section.timetable div.timetable_grid div.timetable_item a.to_detail {
    font-size: 1.4rem;
    width: 2.8rem;
    height: 2.8rem;
    bottom: 3%;
    right: 2%;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt01 {
    font-size: 1.6rem;
    text-align: left;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt02 {
    margin-top: .8rem;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.2;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item p.timetable_txt02 small {
    font-size: 1rem;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item01 {
    background-color: rgba(177, 224, 247, .5);
    grid-column: 2/3;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item01 span {
    background-color: #009BE6;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item02 {
    background-color: rgba(252, 190, 252, .5);
    grid-column: 2/3;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item02 span {
    background-color: #E35DE3;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item03 {
    background-color: rgba(188, 243, 231, .5);
    grid-column: 2/3;
  }
  
  main.timetable section.timetable div.timetable_grid div.timetable_item03 span {
    background-color: #24D8B1;
  }

  main.timetable section.timetable div.timetable_day03 div.competition02 {
    background-color: #6BBDFC;
    margin: 0 2.0rem;
  }
  
  main.timetable section.timetable div.timetable_day03 div.competition03 {
    background-color: #EEEFCB ;
    margin: 0 2.0rem;
  }
  
  main.timetable section.timetable div.timetable_day03 div.competition04 {
    background-color:  #DBFEFF;
    margin: 0 4.0rem;
  }
  
  main.timetable section.timetable div.timetable_day03 div.competition05 {
    background-color: #EEEFCB;
    margin: 0 3.0rem;
  }
}

/* exhibition ---------- 
---------- ---------- ---------- ---------- ----------  */

main.exhibition section.exhibition {
  width: 100%;
  background-color: #F4F4F4;
  padding: 0 0 min(8rem, 80px);
  background-image: url(img/bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: repeat-y;
}

main.exhibition section.exhibition h2.h2_ttl02::after {
  content: 'Exhibition';
}

main.exhibition section.exhibition h3.h3_ttl:before,
main.exhibition section.exhibition h3.h3_ttl:after {
  width: 32%;
}

main.exhibition section.exhibition a.to_link01 {
  width: fit-content;
}

main.exhibition section.exhibition p.common_txt {
  margin-top: min(6rem, 60px);
}

main.exhibition section.exhibition div.input_wrap {
  margin: min(4rem, 40px) auto 0;
  width: fit-content;
  position: relative;
}

main.exhibition section.exhibition button {
  position: absolute;
  display: block;
  content: '';
  background-image: url(img/_exhibition/icon_search.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  width: min(4.6rem, 46px);
  height: min(4.6rem, 46px);
  top: 0;
  bottom: 0;
  margin: auto;
  right: .8%;
  cursor: pointer;
}

main.exhibition section.exhibition input {
  all: unset;
  display: block;
  width: min(51.4rem, 514px);
  padding: min(1.8rem, 18px) 0;
  padding-left: min(4rem, 40px);
  color: #000;
  font-size: min(1.6rem, 16px);
  border-radius: 99px;
  border: 1px solid #707070;
  box-sizing: border-box;
  background-color: #fff;
  position: relative;
}

main.exhibition section.exhibition input::placeholder {
  color: #ccc;
  font-size: min(1.6rem, 16px);
}

main.exhibition section.exhibition div.exhibition_wrap {
  max-width: 1140px;
  margin: 0 auto;
  padding: min(4.4rem, 44px) min(2rem, 20px) min(15.5rem, 155px);
}

main.exhibition section.exhibition ul.category_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: min(1.8rem, 18px) min(1.2rem, 12px);
}

main.exhibition section.exhibition ul.category_list li.category_item {
  background-color: #fff;
  border-radius: 99px;
  border: 2px solid transparent;
  text-align: center;
  font-size: min(1.7rem, 17px);
  font-weight: 700;
  cursor: pointer;
}

main.exhibition section.exhibition ul.category_list li.category_item a {
  width: 100%;
display: block;
  padding: min(1.8rem, 18px) 0;
}

main.exhibition section.exhibition ul.category_list li.category_item.active {
  color: #009BE6;
  border: 2px solid #009BE6;
}

main.exhibition section.exhibition div.category_txt {
  margin-top: min(8.5rem, 85px);
  font-size: min(2.5rem, 25px);
  font-weight: 700;
  text-align: center;
  color: #009BE6;
}

main.exhibition section.exhibition div.exhibition_list {
  margin-top: min(7.6rem, 76px);
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: min(7.5rem, 75px) min(2.3rem, 23px);
}

main.exhibition section.exhibition div.exhibition_list a.exhibition_item {
  width: 100%;
  position: relative;
}

.exhibition_item_wrap {
  padding: min(3.2rem, 32px);
  background-color: #fff;
  border-radius: min(1.2rem, 12px);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
  position: relative;
  z-index: 1;
		height:100%;
}

main.exhibition section.exhibition div.exhibition_list a:hover.exhibition_item {
opacity: 1;
}

main.exhibition section.exhibition div.exhibition_list a.exhibition_item div.image_area {
	width: 100%;
	background-color: #fff;
	margin-bottom: min(2rem, 20px);
}

main.exhibition section.exhibition div.exhibition_list a.exhibition_item div.image_area .exhibition_image {
  width: 100%;
  height: 9.5138888889vw;
  max-height: 200px;
  object-fit: contain;
}

main.exhibition section.exhibition div.exhibition_list a.exhibition_item p.exhibition_txt {
  font-size: min(2.3rem, 23px);
  font-weight: 700;
  color: #009BE6;
  text-align: center;
  line-height: 1.4;
}

main.exhibition section.exhibition div.exhibition_list a.exhibition_item p.exhibition_txt02 {
  margin-top: min(1.6rem, 16px);
  font-size: min(1.6rem, 16px);
  line-height: 1.6;
}

main.exhibition section.exhibition div.exhibition_list div.category_sub {
  position: absolute;
  width: min(22rem, 220px);
  height: min(16.5rem, 165px);
  top: 0;
  left: 0;
  transform: translate(-5%, -24%);
  background: linear-gradient(to right, #0097FF 0%, #00FFC8 100%);
  border-radius: 18px;
  padding: min(1.2rem, 12px) 0;
  text-align: center;
  font-size: min(1.6rem, 16px);
  font-weight: 700;
  color: #fff;
  z-index: 0;
}

.search_error {
	text-align: center;
	padding:min(5rem, 50px);
	font-size: min(1.6rem, 16px);
	line-height: 1.7;
}

@media (max-width: 799px) {
  
  main.exhibition section.exhibition h3.h3_ttl {
    gap: 1rem;
  }

  main.exhibition section.exhibition h3.h3_ttl:before,
  main.exhibition section.exhibition h3.h3_ttl:after {
    width:10%;
  }
  
  main.exhibition section.exhibition a.to_link01 {
    margin-top: 4.5rem;
    width: 95%;
  }
  
  main.exhibition section.exhibition p.common_txt {
    margin-top: 3.8rem;
  }
  
  main.exhibition section.exhibition div.input_wrap {
    margin: 4.0rem auto 0;
    width: 90%;
  }
  
  main.exhibition section.exhibition button {
    width: 3.2rem;
    height: 3.2rem;
    right: .8%;
  }
  
  main.exhibition section.exhibition input {
    width: 100%;
    padding: 1.2rem;
    padding-left: 3.2rem;
    font-size: 1.2rem;
  }
  
  main.exhibition section.exhibition input::placeholder {
    font-size: 1.2rem;
  }
  
  main.exhibition section.exhibition div.exhibition_wrap {
    width: 90%;
    margin: 0 auto;
    padding: 3.6rem 0 4.3rem;
  }
  
  main.exhibition section.exhibition ul.category_list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.0rem .8rem;
  }
  
  main.exhibition section.exhibition ul.category_list li.category_item {
    border: 1px solid transparent;
    padding: 1.2rem 0;
    font-size: 1.2rem;
  }
  
  main.exhibition section.exhibition div.category_txt {
    margin-top: 3.9rem;
    font-size: 2.2rem;
  }
  
  main.exhibition section.exhibition div.exhibition_list {
    margin-top: 5.4rem;
    grid-template-columns: 1fr;
    gap: 5.4rem;
  }
  
  main.exhibition section.exhibition div.exhibition_list a.exhibition_item {
  }
		
		.exhibition_item_wrap {
    border-radius: 12px;
    padding: 1.6rem 1.6rem 3.2rem;
}
		
		main.exhibition section.exhibition div.exhibition_list a.exhibition_item div.image_area .exhibition_image {
    height: 39.2vw;
}
  
  main.exhibition section.exhibition div.exhibition_list a.exhibition_item p.exhibition_txt {
    font-size: 1.6rem;
    text-align: left;
  }
  
  main.exhibition section.exhibition div.exhibition_list a.exhibition_item p.exhibition_txt02 {
    margin-top: 2.2rem;
    font-size: 1.4rem;
  }
  
  main.exhibition section.exhibition div.exhibition_list a.exhibition_item div.category_sub {
    width: 19.0rem;
    height: 11.0rem;
    transform: translate(-5%, -32%);
    padding: 1.2rem 0 1.2rem 2.8rem;
    text-align: left;
    font-size: 1.2rem;
  }
}

.app_link_set {
display: flex;
justify-content: space-between;
grid-gap: 25px;
}
.app_link_set a.to_link01 {
width: 50%;
}
@media (max-width: 799px) {
.app_link_set {
display: block;
}
.app_link_set a.to_link01 {
width: 95%;
font-size: 1.6rem;
}
}

/* top sponsor ---------- 
---------- ---------- ---------- ---------- ----------  */
.sponsor {
	padding-top: 100px;
	margin-bottom: 100px;
}
.sponsor ul.top_sponsor_list {
    max-width: 1140px;
    padding: 0 20px;
    margin: 0 auto min(5rem, 50px);
}
.sponsor ul.top_sponsor_list li {
    background-color: #fff;
    border-radius: min(1.5rem, 15px);
    box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.1);
}
.sponsor ul.top_sponsor_list li a {
display: flex;
justify-content: center;
}

/*ロゴ大*/
.sponsor ul.top_sponsor_list.logo_l {
}
.sponsor ul.top_sponsor_list.logo_l li {
width: 300px;
	padding: 1vw;
	margin:0 auto;
}
.sponsor ul.top_sponsor_list.logo_l li img {
    width: 100%;
    height: 100px;
    object-fit: contain;
}

/*ロゴ中*/
.sponsor ul.top_sponsor_list.logo_m {
}
.sponsor ul.top_sponsor_list.logo_m li {
width: 250px;
	padding: 1vw;
	margin:0 auto;
}
.sponsor ul.top_sponsor_list.logo_m li img {
    width: 100%;
    height: 70px;
    object-fit: contain;
}

/*ロゴ小*/
.sponsor ul.top_sponsor_list.logo_s {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    grid-gap: 2.5rem;
}
.sponsor ul.top_sponsor_list.logo_s li {
width: 100%;
padding: 0.5vw;
}
.sponsor ul.top_sponsor_list.logo_s li img {
    width: 100%;
    height: 50px;
    object-fit: contain;
}

@media (max-width: 799px) {
.sponsor {
	padding-top: 50px;
	margin-bottom: 0px;
}
.sponsor ul.top_sponsor_list {
    padding: 0;
    margin: 0 auto min(2.5rem, 25px);
}
	/*ロゴ大*/
.sponsor ul.top_sponsor_list.logo_l li {
width: 100%;
    padding: 5vw 0;
}
	/*ロゴ中*/
	.sponsor ul.top_sponsor_list.logo_m li {
width: 80%;
    padding: 5vw 0;
}
	.sponsor ul.top_sponsor_list.logo_m li img {
    height: 80px;
}
/*ロゴ小*/
.sponsor ul.top_sponsor_list.logo_s {
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    grid-gap: 2rem;
}
.sponsor ul.top_sponsor_list.logo_s li {
	padding: 2vw;
}
}

/* other ---------- 
---------- ---------- ---------- ---------- ----------  */

main.other section.contents {
  width: 100%;
  background-color: #F4F4F4;
  padding: 0 0 min(8rem, 80px);
  background-image: url(img/bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: repeat-y;
}

main.other section.contents .container {
position: relative;
z-index: 1;
}

main.other section.contents h2.h2_ttl02::after {
  content: 'Other';
}

.sec_performer {
	margin-bottom: 50px;
}
.performer_text {
	padding: min(4.7rem, 47px) 0;
	text-align: center;
	font-size: min(2.5rem, 25px);
	font-weight: 700;
}
ul.performer_block {
	display: flex;
	justify-content: center;
	gap: min(2.5rem, 25px);
	margin: 0 auto;
	max-width: min(84.5rem, 845px);
}
ul.performer_block li {
	background-color: #fff;
	border-radius: min(1.5rem, 15px);
	box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.1);
	padding-bottom: min(2.3rem, 23px);
	width: 30%;
}
ul.performer_block li .performer_photo {
}
ul.performer_block li .performer_photo.is_title {
position: relative;
background: -webkit-linear-gradient(0deg, #00FFC8, #0097FF);
border-radius: min(1.5rem, 15px) min(1.5rem, 15px) 0 0;
}
ul.performer_block li .performer_title {
	font-size: min(1.9rem, 19px);
	text-align: right;
	position: absolute;
	font-weight: 900;
	right: min(0.5rem, 5px);
	bottom: min(0.5rem, 5px);
	color: #fff;
}
ul.performer_block li .performer_name {
	font-size: min(2.4rem, 24px);
	text-align: center;
	font-weight: 700;
	padding-top: min(1.9rem, 19px);
}
ul.performer_block li .performer_belong {
	font-size: min(1.6rem, 16px);
	text-align: center;
	font-weight: 700;
	padding-top: min(0.9rem, 9px);
}
ul.performer_block li .performer_job {
	font-size: min(1.6rem, 16px);
	text-align: center;
	font-weight: 700;
	color: #646464;
	padding-top: min(0.9rem, 9px);
}
ul.performer_block li .performer_copyrights {
	font-size: min(1.2rem, 12px);
	text-align: center;
	color: #646464;
}
ul.performer_date {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: min(2.5rem, 25px);
	margin: 0 auto;
	max-width: min(84.5rem, 845px);
}
ul.performer_date li {
	border-bottom: 4px solid #009BE6;
	text-align: center;
	color: #009BE6;
	font-size: min(1.6rem, 16px);
	font-weight: 700;
	padding-bottom: min(1rem, 10px);
	margin-bottom: min(3rem, 30px);
}
ul.performer_block.sp_obj {
	display: none;
}
ul.performer_date.sp_obj {
	display: none;
}

@media (max-width: 799px) {
ul.performer_block {
	display: block;
}
ul.performer_block li {
	width: 80%;
	margin:0 auto 3rem;
}
}

.sec_event {
	margin-bottom:  min(5rem, 50px);
	padding: min(5rem, 50px);
	background-color: #fff;
	border-radius: min(3rem, 30px);
	box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.1);
	margin-top: min(5rem, 50px);
	position: relative;
z-index: auto;
}

.sec_event::before,
.sec_event::after {
	content: '';
	position: absolute;
	width: min(25rem, 250px);
	height: 250px;
	border-radius: min(3rem, 30px);
	z-index: -1;
}

.sec_event::before {
left:-50px;
top:-50px;
}

.sec_event::after {
right:-50px;
bottom:-50px;
}

.sec_event.sec_experience::before,
.sec_event.sec_experience::after {
	background: -webkit-linear-gradient(45deg, #CAAAF7, #BBD0F1);
}

.sec_event.sec_seminar::before,
.sec_event.sec_seminar::after {
	background: -webkit-linear-gradient(45deg, #B1DFFE, #B1FFEE);
}

.sec_event.sec_study::before,
.sec_event.sec_study::after {
	background: -webkit-linear-gradient(45deg, #AADAF7, #F7C9F7);
}

h3.h3_ttl_purple {
  background: -webkit-linear-gradient(0deg, #2265D3, #6C00FF);
  color: #009BE6;
		  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

h3.h3_ttl_purple::after {
background: linear-gradient(90deg, #000000 0%, #000000 50%, #6C01FF 50%, #6C01FF 100%);
}

h3.h3_ttl_pink {
  background: -webkit-linear-gradient(0deg, #E35DE3, #A800A8);
  color: #E35DE3;
		  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

h3.h3_ttl_pink::after {
background: linear-gradient(90deg, #000000 0%, #000000 50%, #E35DE3 50%, #E35DE3 100%);
}

.sec_event h4.event_ttl {
	font-size: min(3.5rem, 35px);
	font-weight: 900;
	text-align: center;
	padding: min(1rem, 10px) 0;
	margin-bottom: min(6rem, 60px);
	line-height:1.5em;
}
.sec_event .event_lead {
	font-size: min(1.6rem, 16px);
	margin-bottom: min(7.5rem, 75px);
	line-height:2em;
}
.sec_event .event_txt {
	font-size: min(1.6rem, 16px);
	margin-bottom: min(6rem, 60px);
	line-height:2em;
}
.sec_event .event_date {
	font-size: min(2rem, 20px);
	font-weight: 700;
	display: flex;
	justify-content: center;
	border-radius: 999px;
	width:fit-content;
	margin:min(6rem, 60px) auto;
	padding:min(2.5rem, 25px) min(2.5rem, 25px);
}
.sec_event.sec_experience .event_date {
	background-color: #F9F5FF;
}
.sec_event.sec_seminar .event_date {
	background-color: #F2FAFE;
}
.sec_event.sec_study .event_date {
	background-color: #FCEEFC;
}
.sec_event .event_date span {
	padding: 0 min(3rem, 30px);
}
.sec_event .event_date span + span {
	border-left: 1px solid #646464;
}
h5.event_sttl {
	font-size: min(2.5rem, 25px);
	margin-bottom: min(6rem, 60px);
	font-weight: 700;
	border-bottom: 1px solid #000;
	padding-bottom: min(2rem, 20px);
	position: relative;
}
h5.event_sttl::after {
	content: '';
	width: min(10rem, 100px);
	height: min(0.3rem, 3px);
	background-color: #000;
	position: absolute;
	left:0;
	bottom:0;
}
.event_txt_l {
	font-size: min(2.3rem, 23px);
	font-weight: 700;
	line-height: 1.7em;
}
.event_box {
	margin-bottom: min(10rem, 100px);
}
.event_column {
display: grid;
justify-content: space-between;
grid-template-columns: 1fr 1fr;
}
h6.event_item {
  margin: min(3rem, 30px) 0;
  font-size: min(2rem, 20px);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: min(1.5rem, 15px);
}

h6.event_item::before {
  display: block;
  content: '';
  background-image: url(img/_esports/icon_ttl.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: min(3.2rem, 32px);
  height: min(1.6rem, 16px);
}
.event_note {
font-size: min(1.2rem, 12px);
}
.event_img_main {
width: 100%;
margin:0 auto min(6rem, 60px);
}
ul.event_img {
width: 100%;
display: flex;
align-items: center;
gap: min(1.5rem, 15px);
margin-bottom: min(6rem, 60px);
}
ul.event_img li {
flex:1;
}
@media (max-width: 799px) {

.sec_event {
	padding: 2.5rem;
	margin-top: 0;
	border-radius: 1.5rem;
	margin-bottom:  0;
}
	
	.sec_event::before,
.sec_event::after {
	width: 25rem;
	border-radius: 1.5rem;
}

.sec_event h4.event_ttl {
	font-size: 2.5rem;
	margin-bottom: 3rem;
}

.sec_event h5.event_sttl {
	margin-bottom: 3rem;
	font-size: 2rem;
	}

.sec_event .event_lead {
	font-size: 1.4rem;
	margin-bottom: 3rem;
	line-height: 1.7em;
}

.sec_event .event_txt {
	font-size: 1.4rem;
		line-height:1.5em;
}

.sec_event .event_date {
	font-size: 1.6rem;
	display: block;
	justify-content: center;
	margin: 8rem auto;
	padding: 2.5rem;
	text-align: center;
	border-radius: 2.5rem;
	margin:4rem auto;
	}

.sec_event .event_date span + span {
	border-left: none;
	border-top: 1px solid #646464;
	margin-top: 1rem;
	padding-top: 1rem;
}

.sec_event::before {
left:-1.3rem;
top:-1.3rem;
}

.sec_event::after {
right:-1.3rem;
bottom:-1.3rem;
}

.event_txt_l {
	font-size: 1.8rem;
	line-height: 1.7em;
}
.event_box {
	margin-bottom: 5rem;
}

.event_column {
grid-template-columns: 1fr;
}

h6.event_item {
margin: 1.5rem 0;
    font-size: 1.5rem;
    line-height: calc(35 / 30);
    gap: 1.0rem;
  }
  
h6.event_item {
    margin-top: 2rem;
  }
  
h6.event_item::before {
    width: 1.6rem;
    height: .8rem;
  }
		.event_note {
font-size: 1rem;
}
ul.event_img {
display: block;
}
ul.event_img li {
margin: 1.5rem 0;
}
}


/* seminar ---------- 
---------- ---------- ---------- ---------- ----------  */

main.seminar section.contents {
  width: 100%;
  background-color: #F4F4F4;
  padding: 0 0 min(8rem, 80px);
  background-image: url(img/bg.png);
  background-position: center top;
  background-size: contain;
  background-repeat: repeat-y;
}

main.seminar section.contents .container {
position: relative;
z-index: 1;
}

main.other section.contents h2.h2_ttl02::after {
  content: 'Seminar';
}

.performer_block2 {
display: flex;
justify-content: space-between;
gap:min(2rem, 20px);
}
.performer_block2 + .performer_block2 {
  margin-top: min(3.6rem, 36px);
}
.performer_block2 .performer_photo2 {
	max-width: min(26.5rem, 265px);
}
.performer_block2 .performer_photo2 img {
	border-radius: 15px;
}
.performer_block2 .performer_detail {
flex: 1;
}
.performer_block2 .performer_detail .performer_title {
	color: #646464;
	font-size: min(1.6rem, 16px);
	font-weight: 700;
	margin-bottom: min(0.5rem, 5px);
}
.performer_block2 .performer_detail .performer_name {
	font-weight: 700;
	font-size: min(2.5rem, 25px);
	margin-bottom: min(2.5rem, 25px);
}
.performer_block2 .performer_detail .performer_prof {}
.performer_block2 .performer_detail .performer_prof .performer_more {
	font-size: min(1.4rem, 14px);
	font-weight: 700;
	padding:  min(0.5rem, 5px);
	width: fit-content;
	cursor: pointer;
}
.performer_block2 .performer_detail .performer_prof .performer_more {
	color: #009BE6;
	border-bottom: 2px solid #009BE6;
}
.sec_study .performer_block2 .performer_detail .performer_prof .performer_more {
	color: #E35DE3;
	border-bottom: 2px solid #E35DE3;
}
.performer_block2 .performer_detail .performer_prof .performer_more::after {
	content: '＋';
	margin-left: min(1rem, 10px);
}
.performer_block2 .performer_detail .performer_prof .performer_more.open::after {
	content: '−';
}
.performer_block2 .performer_detail .performer_prof .performer_text {
	margin-top: min(1.6rem, 16px);
	font-size: min(1.6rem, 16px);
	line-height: 2em;
	display: none;
  padding: min(.8rem, 8px) 0;
  text-align: left;
}

.performer_text_02 {
  margin-top: min(1.6rem, 16px);
	font-size: min(1.6rem, 16px);
	line-height: 2em;
}

@media (max-width: 799px) {
  .performer_block2 {
  display: block;
  }
  .performer_block2 + .performer_block2 {
    margin-top: 4rem;
  }
  .performer_block2 .performer_photo2 {
  margin: 0 auto 1.5rem;
  }
  .performer_block2 .performer_detail .performer_title {
    font-size: 1.4rem;
    margin-bottom: 1rem;
    line-height: 1.4;
  }
  .performer_block2 .performer_detail .performer_name {
    font-weight: 700;
    font-size: 2rem;
    margin-bottom: 1rem;
  }
  .performer_block2 .performer_detail .performer_prof {}
.performer_block2 .performer_detail .performer_prof .performer_more {
	font-size: 1.4rem;
  margin-top: 2rem;
  padding: .4rem;
}
  .performer_block2 .performer_detail .performer_prof .performer_text {
    margin-top: 1.5rem;
    font-size: 1.4rem;
    line-height: 1.5em;
  }
    .performer_text_02 {
    margin-top: 1rem;
    font-size: 1.4rem;
  }
}

.movie_link {
    width: min(33.5rem, 335px);
    padding: min(1.6rem, 16px) 0;
    border-radius: 99px;
    font-size: min(2rem, 20px);
    font-weight: 700;
    text-align: center;
    background-color: #fff;
    border: 2px solid #009BE6;
    box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.16);
    color: #009BE6;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: min(1.5rem, 15px);
				margin:min(5rem, 50px) auto 0;
}
.movie_link::before {
    display: block;
    content: '';
    background-image: url(img/_seminar/icon_mov.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: min(2.2rem, 22px);
    height: min(2.7rem, 27px);
}
.movie_link::after {
    position: absolute;
    display: block;
    content: '';
    background-image: url(img/_esports/icon_arrow_blue.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: min(0.7rem, 7px);
    height: min(0.7rem, 7px);
    top: 0;
    bottom: 0;
    margin: auto;
    right: min(2.3rem, 23px);
}

@media (max-width: 799px) {
.movie_link {
    width: 100%;
    padding: 1.2rem 0;
    font-size: 1.6rem;
    box-shadow: 0 0 .8rem rgba(0, 0, 0, 0.16);
    gap: 1.0rem;
  }
  
.movie_link::before {
    width: 1.6rem;
    height: 2.0rem;
  }
  
.movie_link::after {
    width: .6rem;
    height: .6rem;
    right: 1.6rem;
  }
}

/*大会日程*/
.tournament_schedule {
	font-size: min(2rem, 20px);
	display: flex;
	margin-top: min(6rem, 60px);
	gap:min(3rem, 30px) min(1rem, 10px);
	flex-wrap: wrap;
	justify-content: center;
}
.tournament_schedule_box {
width: 32%;
}
.tournament_schedule_ttl {
	padding: min(1.6rem, 16px) 0;
	text-align: center;
	font-weight: 700;
	border-top: 5px solid #009BE6;
}
.tournament_schedule_date {
	text-align: center;
	padding: min(1.6rem, 16px);
	background-color: #009be60d;
}
.tournament_schedule_date .note {
	font-size: min(1.4rem, 14px);
}
@media (max-width: 799px) {
.tournament_schedule {
font-size: 1.6rem;
}
.tournament_schedule {
	display: block;
}
.tournament_schedule_box {
width: auto;
}
}

/* webcast ---------- 
---------- ---------- ---------- ---------- ----------  */
.webcast {
padding:70px 0;
}
.webcast table {
	margin-top: min(4rem, 40px);
	width: 100%;
	font-size: min(1.6rem, 16px);
}
.webcast table th {
	font-size: min(2rem, 20px);
	font-weight: bold;
	padding: min(2.3rem, 23px);
	white-space: nowrap;
	border-bottom: 1px solid #009BE6;
	vertical-align: middle;
}
.webcast table td {
	text-align: center;
	padding: min(2.3rem, 23px);
	border-bottom: 1px solid #707070;
	vertical-align: top;
	}
.webcast table td a.webcast_link {
	font-size: min(1.8rem, 18px);
display: block;
	}


.webcast table td a.webcast_link {
	width: min(20rem, 200px);
	padding: min(1.6rem, 16px) 0;
	border-radius: 99px;
	font-size: min(1.6rem, 16px);
	font-weight: 700;
	text-align: center;
	background-color: #fff;
	border: 2px solid #009BE6;
	box-shadow: 0 0 min(1.5rem, 15px) rgba(0, 0, 0, 0.16);
	color: #009BE6;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 1rem auto 0 auto;
	gap: min(1.5rem, 15px);
}
.webcast table td a.webcast_link::after {
  position: absolute;
  display: block;
  content: '';
  background-image: url(img/_esports/icon_arrow_blue.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  width: min(.7rem, 7px);
  height: min(.7rem, 7px);
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(2.3rem, 23px);
}
@media (max-width: 799px) {
	.webcast {
padding:50px 0;
}
	.webcast .sp {
display: block;
}
		.webcast .pc {
display: none;
}
	.webcast table {
			width: 100%;

	}
.webcast table th,
	.webcast table td {
	display: block;
}
.webcast table td a.webcast_link {
margin-top:1rem;
	}
}