/*====================================================================================================

  TOPPAGE

====================================================================================================*/

#toppage {
	margin: 0;
	padding: 0;
}



/*** SLIDER *******************************************************************/
#toppage .main_slider { position: relative; overflow:hidden; }
#toppage .main_slider .tit {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	z-index: 9999;
	color: #fff;
	margin: auto;
	text-align: center;
}
#toppage .main_slider .tit span,
#toppage .main_slider .tit small { 
	opacity: 0;
	display: block; 
	font-size: 625%;
	font-weight: 700;
	line-height: 120%;
	width: fit-content;
	margin: auto;
	position: relative;
}
#toppage .main_slider .tit span:nth-child(1) { --index:0;}
#toppage .main_slider .tit span:nth-child(2) { --index:1;}
#toppage .main_slider .tit span:nth-child(3) { --index:2;}
/*#toppage .main_slider .tit span:nth-child(1) { animation: slideIn 1.5s ease forwards; }
#toppage .main_slider .tit span:nth-child(2) { animation: slideIn 1.5s ease 0.5s forwards; }
#toppage .main_slider .tit span:nth-child(3) { animation: slideIn 1.5s ease 0.5s forwards; }*/
#toppage .main_slider .tit span { animation:slideIn 1.5s ease calc(var(--index) * 0.5s) forwards;}
#toppage .main_slider .tit small {
	font-size:225%;
	margin-top:50px;
	line-height: 180%;
	letter-spacing:0.5em;
	/*animation: fadeIn 1.5s ease 0.8s forwards;*/
	animation: fadeIn 1.5s ease 1.3s forwards;
}
#toppage .main_slider .tit span::after,
#toppage .main_slider .tit small::after {
	content: "";
	position: absolute;
	opacity: 0;
	background: linear-gradient(90deg, rgba(21,21,21,0) 0%, rgba(21,21,21,0.26) 5%, #151515 50%, rgba(21,21,21,0.26) 95%, rgba(21,21,21,0) 100%);
	width: 100%;
	height: 55px;
	margin: auto;
	bottom: 0;
	left: 0;
	z-index: -1;
	visibility: hidden;
	animation: fadeIn2 1.5s ease 0.8s forwards;
}
#toppage .main_slider .tit small::after { height:41px; }
#toppage .main_slider .slider {}
#toppage .main_slider .slider img { width: 100%; max-height: 910px; height: 100vh; object-fit: cover; object-position: center; }

@keyframes slideIn {
	0% { opacity:0; left:100%; }
	50% { opacity: 0; }
	100% { opacity:1; left:0; }
}
@keyframes fadeIn {
	0% { opacity:0; }
	80% { opacity:0; }
	100% { opacity:1; }
}
@keyframes fadeIn2 {
	0% { visibility: hidden; opacity:0; }
	80% { visibility: hidden; opacity:0; }
	100% { visibility: visible; opacity:0.26; }
}

/*** SLOGAN *******************************************************************/
#toppage .slogan {
	max-width: 1000px;
	width: 90%;
	margin: 100px auto;
}
#toppage .slogan h2 {
	text-align: center;
}
#toppage .slogan h2 b {
	display: block;
	font-size: 437.5%;
	font-weight: 900;
	line-height: 190%;
	background: url(/hirohata/baseball/image/top/border_frame.svg) no-repeat center;
	background-size: 100% 100%;
}
#toppage .slogan h2 span { display: block; margin-top: -20px; font-size:112.5%; font-weight:900; color:#A3A3A3; }
#toppage .slogan h2 small {
	color: #C4B80D;
	font-size: 125%;
	font-weight: 900;
	position: relative;
	width: fit-content;
	display: block;
	padding: 0 30px;
	background: #fff;
	margin:40px auto 0;
	transform-style: preserve-3d;
}
#toppage .slogan h2 small::before {
	content: "";
	position: absolute;
	background: #C4B80D;
	width: 396px;
	height: 2px;
	top: 50%;
	left: -100px;
	right: 0;
	margin: auto;
	transform: translateY(-50%) translateZ(-1px);
}
#toppage .slogan p {
	font-size: 112.5%;
	line-height: 250%;
	margin-top: 40px;
	text-align: justify;
}





/*** 大会情報 *******************************************************************/
#toppage .taikai_info { margin-block:0 100px; }
#toppage .taikai_info h3 { margin-bottom: 60px; }
#toppage .taikai_info h3 b { color: #151515; }
#toppage .taikai_info h3 small { color: #A5A5A5; }
#toppage .taikai_info a {
	text-decoration: none;
	display: block;
	color: #151515;
	font-size: 112.5%;
	font-weight: 500;
}
#toppage .taikai_info ul li.tit a.no-link { cursor: default; pointer-events: none; opacity: 1.0; }
#toppage .taikai_info ul { 
	display: flex; 
	flex-wrap: wrap; 
	width: 100%;
	border-bottom: 1px solid #707070;
	padding: 20px 0;
}
#toppage .taikai_info ul:first-child { border-top: 1px solid #707070; }
#toppage .taikai_info ul li.date { line-height: 200%; width:353px; }
#toppage .taikai_info ul li.date small { font-size: 93.8%; }
#toppage .taikai_info ul li.date b {
	margin: 0 20px;
	/*font-size: 125%;*/
	/*font-weight: 400;*/
	font-weight:normal;
	display: inline-block;
}
#toppage .taikai_info ul li.date small { display: inline-block; }
#toppage .taikai_info ul li.tit a {
	position: relative;
	padding-left: 17px;
	line-height: 200%;
}
#toppage .taikai_info ul li.tit a::after {
	content: "";
	top: 50%;
	left: 0;
	position: absolute;
	display: inline-block;
	width: 0;
	height: 0;
	transform: translateY(-50%);
	border-style: solid;
	border-width: 4.5px 0 4.5px 7px;
	border-color: transparent transparent transparent #151515;
}
#toppage .taikai_info ul li.tit a:hover {
	text-decoration: underline;
	text-underline-offset:7px;
}
#toppage .taikai_info ul li.links { display: flex; margin: 0 0 0 auto; }
#toppage .taikai_info ul li.links .b_more {
	width: 200px;
	height: 40px;
}

#toppage .taikai_info .b_more a { padding: 10px 0; line-height: 100%; text-align: center; }
#toppage .taikai_info .btn-blk { background: #151515; margin-top:60px; }
#toppage .taikai_info .btn-blk a { color: #FFF; padding-block:15px; }
#toppage .taikai_info .btn-blk a::before { background:#FFF; }
#toppage .taikai_info .btn-blk a::after { border-color: transparent transparent transparent #151515; }
#toppage .taikai_info .no-link { opacity: 0.3; }
#toppage .taikai_info .no-link a { cursor: default; pointer-events:none; }

#toppage .taikai_info .b_box { margin: 60px auto 100px; display: flex; justify-content: center; }


/*** 2 COLUMN CONTENT *******************************************************************/
#toppage .b2_wrap { padding-top:100px; background:#192126; }
#toppage .b2_wrap .box_main { display:flex; justify-content:space-between; }
#toppage .b2_wrap .box { position:relative; width:550px; }
#toppage .b2_wrap .box h3 { position:absolute; right:0; top:55px; z-index:1;}
#toppage .b2_wrap .photo img { --cut:65%; width:400px; height:auto; clip-path:polygon(0 0,100% 0,var(--cut) 100%,0 100%);}

#toppage .blog + .b2_wrap { padding-block:50px 100px; }

#toppage .b2_wrap a.a_area:hover { opacity:0.8;}
#toppage .b2_wrap a.a_area:hover .b_more { opacity:0.8;}


/*** カレンダー（活動計画） *******************************************************************/
#toppage .activity { 
	z-index:1;
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	position: relative;
	background: #192126;
	padding-block: 100px 0; 
	justify-content: space-between;
}
#toppage .activity .shape {
	content: "";
	position: absolute;
	width: 100%;
	height: 282px;
	z-index: -1;
	transform: skewX(-22deg);
}
#toppage .activity .shape.s-left { bottom: 20px; left: -500px; background: #C4B80D; margin-left: calc(((100% - 1000px) / 2) * -1); }
#toppage .activity .shape.s-right { bottom: 0; right: -500px; background: #FFEE00; margin-right: calc(((100% - 1000px) / 2) * -1); }
#toppage .activity .a-filter { z-index:9999; opacity:0;}

#toppage .activity h3 { width: 100%; margin-bottom: 60px; }
#toppage .activity .box_main { display: flex; justify-content: space-between; }
#toppage .activity .box { color: #151515; display: flex; align-items: center; max-width: 400px; }
#toppage .activity .box1 { margin-top:-40px; }
#toppage .activity .box2 { margin-block: 70px; }
#toppage .activity .mon > * { line-height: 100%; display: inline-block; }
#toppage .activity .mon span.yr { font-size: 143.8%; font-weight: 500; vertical-align: top; padding-top: 70px; }
#toppage .activity .mon b { font-size: 1000%; font-weight: 500; }
#toppage .activity .mon small { font-size: 187.5%; font-weight: 500; vertical-align: middle; margin-top: -35px; }

#toppage .activity .btn-lnk { margin-left:30px; }
#toppage .activity .btn-lnk p { 
	margin: auto; 
	font-size: 143.8%; 
	line-height: 100%;
	width: fit-content; 
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid #151515; 
}
#toppage .activity .b_more { background: #151515; width: 92px; height: 40px; }
#toppage .activity .b_more a { font-weight: 500; justify-content: initial; padding: 0 0 0 12px; }
#toppage .activity .b_more a::after { border-color: transparent transparent transparent #151515; }
#toppage .activity .box1 .b_more a { color:#C4B80D; }
#toppage .activity .box1 .b_more a::before { background:#C4B80D; }
#toppage .activity .box2 .b_more a { color:#FFEE00; }
#toppage .activity .box2 .b_more a::before { background:#FFEE00; }



/*** INTRO MEMBERS *******************************************************************/
#toppage .intro_mem { background: #192126; padding-block:110px 50px; overflow:hidden;}
#toppage .intro_mem h3 { }
#toppage .intro_mem ul { width: 1000px; margin: 60px auto; }
#toppage .intro_mem ul .slick-list { overflow:visible; }
#toppage .intro_mem ul .slick-prev,
#toppage .intro_mem ul .slick-next { background: #151515; width: 30px; height: 80px; }
#toppage .intro_mem ul .slick-prev::before,
#toppage .intro_mem ul .slick-next::before {
  top: 50%;
  right: 10px;
  background: none;
  position: absolute;
  display: inline-block;
  width: 0;
  height: 0;
  transform: translateY(-50%);
  border-style: solid;
  z-index: 999999;
  opacity: 1;
}
#toppage .intro_mem ul .slick-prev::before {
  border-width: 5.5px 9px 5.5px 0;
  border-color: transparent #fff transparent transparent;	
}
#toppage .intro_mem ul .slick-next::before {
  border-width: 5.5px 0 5.5px 9px;
  border-color: transparent transparent transparent #fff;
}
#toppage .intro_mem ul li { position: relative; margin-right: -180px; --start-point:22.087%;}
#toppage .intro_mem ul li::after {
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, .55);
	/*width: 78.1%;*/
	width:100%;
	height: 100%;
	z-index: 99999;
	/*left: 109px;*/
	top: 0;
	/*transform: skewX(-26deg);*/
	transition: 1.8s ease-in;
	clip-path:polygon(var(--start-point) 0, 100% 0, calc(100% - var(--start-point)) 100%, 2px 100%);
}
#toppage .intro_mem ul li.slick-active::after { content: none; }
#toppage .intro_mem ul li img {
	width: 100%; height: 100vh; max-height: 442px; object-fit: cover; object-position: center;
	clip-path:polygon(var(--start-point) 0, 100% 0, calc(100% - var(--start-point)) 100%, 2px 100%);
}
#toppage .intro_mem ul li p {
	position: absolute;
	bottom: 10px;
	left: 145px;
	color: #fff;
	line-height: 250%;
	filter: drop-shadow(rgba(0, 0, 0, .8) 2px 2px 4px) drop-shadow(rgba(0, 0, 0, .16) 2px 2px 4px);
	z-index:1;
}
#toppage .intro_mem ul li p b {
	display: block;
	font-size: 175%;
	font-weight: 700;
}
#toppage .intro_mem ul li p small {
	font-size: 150%;
	font-weight: 700;
}
#toppage .intro_mem ul li .b_more {
	background: #151515;
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: auto;
	width: 170px;
	z-index:1;
}
#toppage .intro_mem ul li .b_more a { color:#FFF; }
#toppage .intro_mem ul li .b_more a::before { background:#FFF; }
#toppage .intro_mem ul li .b_more a::after {
	border-color: transparent transparent transparent #151515;
}



/*** INTRO *******************************************************************/
#toppage .intro { padding-block:50px; background:#192126; position:relative; }
#toppage .intro::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 50px;
	width: 100%;
	height: 180px;
	background: #C4B80D;
}
#toppage .intro .box {
	width: 100%;
	max-width: 1000px;
	position: relative;
	margin: 60px auto 40px;
}
#toppage .intro .box .photo img { width:100% }




/*** BLOG *******************************************************************/
#toppage .blog { padding-block:55px 50px; background:#192126; }
#toppage .blog .blog_list { margin-block:60px; }
#toppage .blog ul { display:flex; align-items:center; position:relative; border-top:1px solid #FFF; }
/*#toppage .blog ul:last-child { border-bottom:1px solid #FFF; }*/
#toppage .blog ul::before {
	content: "";
	top: 50%;
	--right:40px;
	right:var(--right);
	width: 16px;
	height: 16px;
	background: #FFF;
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	transition:all 0.5s;
}
#toppage .blog ul::after {
	content: "";
	top: 50%;
	--right:45px;
	right:var(--right);
	position: absolute;
	display: inline-block;
	width: 0;
	height: 0;
	transform: translateY(-50%);
	border-style: solid;
	border-width: 3.5px 0 3.5px 5px;
	border-color: transparent transparent transparent #151515;
	transition:all 0.5s;
}
#toppage .blog ul li.date { width:170px; color:#FFF; }
#toppage .blog ul li.date small { font-size:93.8%; vertical-align:middle; margin-right:20px; }
#toppage .blog ul li.date b { font-size:125%; font-weight:400; vertical-align:middle; }
#toppage .blog ul li.title {}
#toppage .blog ul li.title a {
	color: #FFF;
	display: block;
	font-size: 112.5%;
	font-weight: 500;
	padding-block: 25px;
	text-decoration: none;
}
#toppage .blog ul li.title a:hover { text-decoration:underline; text-underline-offset:7px; }


#toppage .blog .blog_list a { color:#fff; text-decoration:none;}
#toppage .blog a:last-child ul { border-bottom:solid 1px #fff;}
#toppage .blog a ul li.title { padding-block: 25px; line-height: 160%; font-size: 112.5%; font-weight: 500;}
#toppage .blog a:hover ul li.title { text-decoration:underline; text-underline-offset:7px;}
#toppage .blog a:hover ul:before,
#toppage .blog a:hover ul:after { right:calc(var(--right) - 10px);}

/*** LINK *******************************************************************/
#toppage .link .photo img { --cut:65%; clip-path:polygon(0 0,100% 0,var(--cut) 100%,0 100%);}



