@charset "UTF-8";

/*.pc {
	display: block;
}
.sp {
	display: none;
}
@media only screen and (max-width:768px) {
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
}*/

header,
#countdown {
	pointer-events: none;
	opacity: 0;
}

/* #countdown {
	display: none;
} */

header.act,
#countdown.act {
	transition: opacity 1s ease-out, transform 0.3s ease-out, background 0s ease-out 0s;
	pointer-events: all;
	opacity: 1;
}

.award2026 #countdown {
	color: #000;
}

header .black {
	position: absolute;
}
header .white {
	position: relative;
	transition: opacity 0.6s;
}
header.main .white {
	opacity: 0;
}

header .head {
	background: none;
	transform: translateY(0);
}
header .head h3 {
	position: relative;
	left: -2vw;
	padding: 4vw 0 20px 0;
	text-align: left;
	font-size: 1.2rem;
	white-space: nowrap;
	color: #fff;
	transition: color 0.5s;
}
header.main .head h3 {
	color: #000;
}
@media only screen and (max-width:768px) {
	.award2026 {
		background-color: #A8A7A0;
	}
	header {
		height: 24vw;
	}
	header.main {
		background-color: #F4F4F4;
		transition: opacity 1s ease-out, transform 0.3s ease-out, background 0.5s ease-out 0.6s;
	}
	header .head {
		position: static;
		width: 100%;
		padding: 20px 70px 0 105px;
		margin: auto;
	}
	header .head h3 {
		width: 100%;
		left: 0;
		padding: 0;
		line-height: 1.6;
		font-size: 0.9rem;
		white-space: normal;
	}
	#countdown.main {
		color: #fff;
	}
}


/**
 * #mv
 */
#mv {
	position: relative;
	width: 100%;
}

main {
	position: relative;
	height: auto; /*0 230828*/
	display: block; /*230828*/
	overflow: auto; /*hidden 230828*/
	z-index: 1;
}
footer {
	display: none;
	position: relative;
	background-color: #fff;
	height: 0;
	overflow: hidden;
	z-index: 1;
}
main.act,
footer.act {
	display: block;
	height: auto;
	overflow: auto;
}

/**
 * #news
 */
#news {
	padding: 150px 0;
	background-color: #fff;
	text-align: center;
}
#news ul {
	display: flex;
}
#news li {
	box-sizing: border-box;
	width: 50%;
	padding: 10px 30px;
}
#news li:nth-child(n+2) {
	border-left: solid 1px #707070;
}
#news a {
	font-weight: 500;
}
#news .col1 {
	margin-bottom: 4em;
}
@media only screen and (max-width:768px) {
	#news {
		padding: 80px 0;
	}
	#news ul {
		display: block;
	}
	#news li {
		width: 100%;
		padding: 10px 0;
	}
	#news li:nth-child(n+2) {
		border-left: none;
	}
	#news .col1 {
		margin-bottom: 3em;
	}
}


/**
 * #about
 */
#about {
	background-color: #F4F4F4;
	padding: 150px 0;
	text-align: center;
}
#about p {
	max-width: 780px;
	margin: 75px auto 0 auto;
	padding: 0 30px;
	text-align: left;
	font-size: 1.8rem;
}
@media only screen and (max-width:768px) {
	#about {
		padding: 80px 0;
	}
	#about h3 img {
		width: 40%;
	}
	#about p {
		margin: 35px auto 0 auto;
		padding: 0;
		text-align: left;
		font-size: 1.5rem;
	}
}

/**
 * #message
 */
#message {
	background-color: #EFEFEF;
	padding: 150px 0;
	text-align: center;
}
#message h3 {
	letter-spacing: 0.2em;
	font-size: 2.8rem;
	font-weight: 500;
}
#message p {
	margin-top: 2em;
	font-size: 2rem;
	font-weight: 500;
}
@media only screen and (max-width:768px) {
	#message {
		padding: 80px 0;
	}
	#message h3 {
		font-size: 1.7rem;
	}
	#message p {
		font-size: 1.5rem;
	}
}


/**
 * #guidelines
 */
#guidelines {
	background-color: #fff;
	padding: 150px 0;
	text-align: center;
}
#guidelines ul {
	display: flex;
}
#guidelines ul li {
	width: 50%;
	padding: 40px 70px 40px;
	border-left: solid 1px #707070;
}
#guidelines ul li a {
	display: flex;
	flex-direction: column;
	height: 100%;
}
#guidelines ul li:first-child {
	border: none;
}
#guidelines h3 {
	margin-top: 50px;
	line-height: 1;
	letter-spacing: 0.2em;
	font-size: 3rem;
	font-weight: 500;
}
#guidelines h3 span {
	display: block;
	margin-top: 20px;
	font-size: 1.6rem;
}
#guidelines h4 {
	letter-spacing: 0.2em;
	font-size: 2rem;
	font-weight: 500;
}
#guidelines p {
	margin-top: 60px;
	font-weight: 300;
	text-align: left;
	margin-bottom: 70px;
}
#guidelines .ani_btn {
	margin-top: auto;
}
#guidelines li:last-child .ani_btn {
	transition-delay: 0.1s !important;
}
@media only screen and (max-width:768px) {
	#guidelines {
		padding: 80px 0;
	}
	#guidelines ul {
		display: block;
	}
	#guidelines ul li {
		width: 100%;
		padding: 30px 0;
		border: none;
	}
	#guidelines ul li:first-child {
		padding-top: 0;
	}
	#guidelines h3 {
		margin-top: 25px;
		font-size: 1.8rem;
	}
	#guidelines h3 span {
		margin-top: 10px;
		font-size: 1.2rem;
	}
	#guidelines h4 {
		font-size: 1.5rem;
	}
	#guidelines p {
		margin-top: 30px;
		font-size: 1.3rem;
		margin-bottom: 30px;
	}
}



/**
 * #special
 */
#special {
	background-color: #EFEFEF;
	padding: 150px 0;
	text-align: center;
}
#special ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 -30px;
}
#special ul li {
	box-sizing: border-box;
	width: 25%;
	padding: 0 30px 30px 30px;
}
#special li > div {
	cursor: pointer;
}
#special li figure {
	overflow: hidden;
}
#special li img {
	transition: transform 0.5s ease-in;
}
#special li > div:hover img {
	transform: scale(1.1);
	transition: transform 1s ease-out;
}
#special li > div:hover .icon img {
	transform: scale(1.25);
	transition: transform 0.3s ease-out;
}
#special h3 {
	margin-top: 1em;
	font-size: 1.6rem;
	font-weight: 500;
}
#special h4 {
	margin-top: 1em;
	font-size: 1.6rem;
	font-weight: 500;
}
#special h5 {
	margin-top: 3em;
	font-size: 1.1rem;
	font-weight: 500;
}
#special h6 {
	margin-top: 2em;
	text-align: left;
	font-size: 1.2rem;
	font-weight: 500;
}
#special p {
	margin-top: 0.5em;
	text-align: left;
	font-size: 1.2rem;
}
#special .icon {
	margin: 1em 0;
}
@media only screen and (max-width:1250px) {
	#special h3 br {
		display: none;
	}
}
@media only screen and (max-width:768px) {
	#special {
		padding: 80px 0;
	}
	#special ul {
		margin: 0 -10px;
	}
	#special ul li {
		width: 50%;
		padding: 0 10px 40px 10px;
	}
	#special h3 {
		font-size: 1.4rem;
	}
	#special h4 {
		font-size: 1.4rem;
	}
	#special h5 {
		font-size: 0.9rem;
	}
	#special h6 {
		font-size: 1rem;
	}
	#special p {
		font-size: 1.1rem;
	}
}


/**
 * #links
 */
#links {
	background-color: #fff;
	padding: 150px 0;
	text-align: center;
}
#links ul {
	display: flex;
}
#links ul li {
	width: 50%;
	padding: 40px 0 60px 0;
}
#links li > a {
	display: block;
	transition: opacity 0.3s;
}
#links li > a:hover {
	opacity: 0.5;
}
#links h4 {
	position: relative;
	max-width: 235px;
	margin: auto;
	background: no-repeat center center / contain;
}
#links h4::before {
	display: block;
	padding-top: 84.255%;
	content: '';
}
#links h3 {
	margin-top: 70px;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.2em;
}
#links h5 {
	margin-top: 35px;
	padding-top: 35px;
	background: url('../img/icon_blank_b.svg') no-repeat center top / 20px;
	font-size: 1.2rem;
}
@media only screen and (max-width:768px) {
	#links {
		padding: 80px 0;
	}
	#links ul li {
		padding: 0 5px;
	}
	#links h4 {
		max-width: 75%;
	}
	#links h3 {
		margin-top: 20px;
	}
	#links h5 {
		margin-top: 25px;
		padding-top: 20px;
		background-size: 15px;
		font-size: 0.9rem;
	}
}

/*-------------------------
202506
-------------------------*/

header .logo img {
  width: 100%;
  left: 2.604vw;
}

#endNotice{
	position:fixed;
	bottom:1.563vw;
	left:2.083vw;
	z-index:10;
}
#endNotice h2{
	background:url(../img/index/end.png) no-repeat center /contain;
	width:7.448vw;
	height:13.438vw;
}
#endNotice h2 span{
	display:block;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}

#mv .mv-container{
	width: 100%;
	height: auto; /*100vh 230828*/
	overflow-x: hidden;
	overflow-y: auto; /*scroll 230828*/
	margin: 0 0 0; /*30.208vw 230828*/
	scroll-behavior: auto;
	background-color: #A8A7A0;
}
#mv .mv-container-main{
	position:relative;
	width: 100%;
	margin: 0 auto;
	padding-top: min(50px, 2.6041vw);
	z-index: 3;
}

#mv .mv-container-main__text {
	position: fixed;
	top: min(50px, 2.6041vw);
	left: 50%;
	transform: translate(-50%, 0);
	width: 57.2916vw;
	/*max-width: 1100px;*/
	pointer-events:none;
	z-index: 99;
	/*background: rgba(65, 105, 225, 0.3);*/
}
#mv .mv-container-main__text.end{
	position: absolute;
	top: auto;
	bottom: 0;
	margin:0;
}
#mv .mv-container-main__text_txt_wrap {
	position: relative;
	width: 100%;
	/*padding-bottom: 84.3636%;*/
	padding-bottom: 80%;
}
#mv .mv-container-main__text_txt01 {
	position: absolute;
	top: 0;
	right: 0;
	width: 21.272727%;
}
#mv .mv-container-main__text_txt02 {
	position: absolute;
	bottom: 0;
	left: 0;
	/*width: 85.4545%;*/
	width: 74.727272%;
}
#mv .mv-container-main__image {
	position: relative;
	width: 57.2916vw;
	/*max-width: 1100px;*/
	margin: 0 auto;
}
#mv .mv-container-main__image img {
  width: 100%;
  height: auto;
}
#mv .mv-container-main__image_fig_wrap {
	position: relative;
	width: 100%; /* 865px */
	height: 95.2604vw;
	/*background: #ff0000;*/
}
#mv .mv-container-main__image_fig01 {
	position: absolute;
	top: 0;
	left: 10%;
	width: 52.7272%;
}
#mv .mv-container-main__image_fig02 {
	position: absolute;
	top: 42.6462%;
	left: 0;
	width: 25%;
}
#mv .mv-container-main__image_fig03 {
	position: absolute;
	top: 63.4226%;
	left: 19.5454%;
	width: 59.0909%;
}

#mv .mv-container-description{
	text-align:center;
	width:100%;
	margin:0 auto;
	min-height:100vh;
	background-color: #A8A7A0;
	display:flex;
	justify-content:center;
	align-items:center;
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
	font-weight: bold;
	position: relative;
	z-index: 2;
}
#mv .mv-container-description .wrap{
	width: 68.75vw;
	margin: 0 auto;
}
#mv .mv-container-description h2 {
	color: #4169E1;
	font-size: min(4.166vw,80px);
	font-weight: 500;
	line-height: 1.25;
	margin:0 0 2.344vw;
	letter-spacing: 0.06em;
}
#mv .mv-container-description p{
	color: #F0F1E9;
	font-size: 16px;
	line-height: 2;
}
#mv .mv-container-description h2 span,
#mv .mv-container-description p span{
  text-indent:100%;
  display:block;
  white-space:nowrap;
  overflow:hidden;
}
#mv .mv-container-description ul{
  padding:3.646vw 0 0;
  display:flex;
  justify-content:center;
  align-items:center;
}
#mv .mv-container-description li{
  width:20.833vw;
  margin:0 0.521vw 0 0;
}
#mv .mv-container-description li:last-child{
  margin:0;
}
#mv .mv-container-description li a{
/*
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  height:4.167vw;
*/
}
#mv .mv-container-description li a:hover{
  opacity:1;
}
#mv .mv-container-description li a span{
  width:100%;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
/*  font-size:1.042vw;*/
}
#mv .mv-container-description li a.w .btn_link{
  background-color: #E4E4E4;
  color: #000;
}
#mv .mv-container-description li a.w .btn_link:hover{
  background-color: #000;
  color: #fff;
}
#mv .mv-container-description li a.w .btn_link b::after {
    background-image: url(../img/icon_arrow0_b.svg);
}
#mv .mv-container-description li a.w .btn_link:hover b::after {
    background-image: url(../img/icon_arrow0.svg);
}
#mv .mv-container-description li a.w .btn_link::before, #mv .mv-container-description li a.w .btn_link::after {
    background-color: #fff;
}
#mv .mv-container-description li a.w .btn_link span:before, #mv .mv-container-description li a.w .btn_link span:after {
    background-color: #fff;
}

.anime-beat {
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-duration: 2.4s;
	animation-name: anim_beat;
	scale: 0.9;
}
.anime-delay1 {
	animation-delay: 0s;
}
.anime-delay2 {
	animation-delay: 1s;
}
.anime-delay3 {
	animation-delay: 2s;
}

@keyframes anim_beat {
	100% {
		scale: 1;
	}
}

@media only screen and (max-width:768px) {
	#mv .mv-container-main{
		padding-top: 22.6667vw;
	}
	#mv .mv-container-main__text{
		/*position:absolute;*/
		top: 22.6667vw;
		width: 91.2%;
	}
	#mv .mv-container-main__text_txt_wrap {
		padding-bottom: 144.1520%;
	}
	#mv .mv-container-main__text_txt01 {
		width: 24vw;
	}
	#mv .mv-container-main__text_txt02 {
		width: 80vw;
	}
	#mv .mv-container-main__image {
		width: 100%;
	}
	#mv .mv-container-main__image_fig_wrap {
		height: 156.8vw;
	}
	#mv .mv-container-main__image_fig01 {
		left: 8.5333vw;
		width: 58.6667vw;
	}
	#mv .mv-container-main__image_fig02 {
		top: 77.3333vw;
		left: 4vw;
		width: 29.3333vw;
	}
	#mv .mv-container-main__image_fig03 {
		top: 114.6667vw;
		left: 33.8667vw;
		width: 61.3333vw;
	}

	#mv .mv-container-description {
		min-height: initial;
		padding: 50px 0;
	}

	#mv .mv-container-description ul{
	  display:block;
	}
	#mv .mv-container-description li{
	  width:calc(316 / 375 * 100vw);
	  width: 100%;
	  margin:0 auto calc(13 / 375 * 100vw);
	}
	#mv .mv-container-description li:last-child{
	  margin:0 auto;
	}
/* #mv .mv-container-description {
	margin-top: calc(20 / 375 * 100vw);
} */
	#mv .mv-container-description .wrap{
		width:85.33vw;
		margin:0 auto;
	}

	#mv .mv-container-description h2{
		font-size: 8vw;
	  /* display:inline-block;
	  background:url(../img/index/mv-text01sp.png) no-repeat center /contain;
	  width:calc(316 / 375 * 100vw);
	  height:calc(66 / 375 * 100vw);
	  margin:0 0 calc(24 / 375 * 100vw); */
	}
	#mv .mv-container-description p{
		font-size: 18px;
		text-align: left;
		letter-spacing: 0.06em;
	  /* display:inline-block;
	  background:url(../img/index/mv-text02sp.png) no-repeat center /contain;
	  width:calc(309 / 375 * 100vw);
	  height:calc(342 / 375 * 100vw);
	  margin-bottom: calc(20 / 375 * 100vw);; */
	}

	.btn_link, .btn_more {
		font-size:18px;
	}

}

.award2026 header .logo {
	top: 2.5vw;
	left: 2.916vw;
	width: 10.41vw;
	max-width: 200px;
}

.award2026 header .logo img {
	left: 0;
}

.award2026 .btn_link,
.award2026 .btn_more {
	padding: 20px 30px 20px 40px;
    font-size: 20px;
}

.award2026 #countdown {
	left: initial;
	right: 20px;
	color: #4169e1;
}


@media only screen and (max-width:768px) {
	.award2026 header .logo {
		top: 15px;
		left: 15px;
		width: 21.33vw;
		max-width: 100px;
	}

	.award2026 .btn_link,
	.award2026 .btn_more {
		padding: 10px 30px 10px 40px;
	}

	.pc_br {
		display: none;
	}

	.award2026 footer > div {
        padding: 25px 0 156.14px 0;
    }

	.award2026 #countdown.countdown_none {
		opacity: 0;
		transition: opacity 0.5s ease-out, transform 0.3s ease-out, background 0s ease-out 0s;
	}
}

@media only screen and (max-width:768px) {
	.award2026 #countdown h2 {
		font-size: 2.5rem;
	}
}
@media only screen and (max-width:768px) {
	.award2026 #countdown h2 span {
		font-size: 1.35rem!important;
	}
}
@media only screen and (max-width:768px) {
	.award2026 #countdown div em {
		font-size: 4.8rem;
	}
}