@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap);

/*!
 * ress.css • v1.1.1
 * MIT License
 * github.com/filipelinhares/ress
 */

* {
  font: 16px/175%;
	font-family: "Oswald","Noto Sans JP", sans-serif;
	background-color: transparent;
}

a{
	text-decoration: none;
}

main{
	background: none;
}

::selection {
	background-color: transparent;
}

.header.scrolled .header__inner{
  padding: 0;
}

.header.scrolled .header__logo {
  height: 54px;
}

.header.scrolled .header__logo img {
  height: 54px;
}

.header__smpMenu {
  display: none
}

.header__smpTicketBtn {
  display: none
}

.header{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	height: 80px;
}

.header__nav{
	width: auto;
	max-width: 100%;
	height: 80px;
}

.header__gloval{
	column-gap: clamp(20px, 4.000px + 2.083vw, 40px);
	height: 100%;
}

.header__gloval div{
	height: 100%;
}

.header__inner {
  padding: 0;
	width: 95%;
	max-width: 100%;
	margin: 0;
	align-items: center;
}

.header__logo {
	  height: 54px;
}

.header__logo img {
  height: 54px;
}

.header__gloval li a{
	font-size: clamp(10px, 1.981px + 1.043vw, 20px);
}

.header-cta{
	padding: 0 24px;
	align-items: center;
	justify-content: center;
}

.header-cta a{
	display: block;
	font-size: clamp(10px, 1.981px + 1.043vw, 20px);
	height: fit-content;
}

.side-btn__list li{
	border-top-left-radius: 12px;
	border-bottom-left-radius: 12px;	
}

.side-btn__list li a , .side-btn__list li:last-child a{
	background-color: transparent;
	writing-mode: vertical-rl;
	width: auto;
	height: auto;
	padding: 24px 16px;
	font-size: clamp(12px, 2.377px + 1.251vw, 24px);
}

.side-btn__list{
	top: 15%;
}

.flex{
	display: flex;
}

.green-bg{
	background-color: #107235;
	color: #FFFFFF;
}

.green-bg *{
	color: #FFFFFF;
}

.yellow-bg{
	background-color: #F5AA00;
	color: #FFFFFF;
}

.yellow-bg *{
	color: #FFFFFF;
}

.blue-bg{
	background-color: #009FC9;
	color: #FFFFFF;
}

.blue-bg *{
	color: #FFFFFF;
}

.red-bg{
	background-color: #E7381F;
	color: #FFFFFF;
}

.red-bg *{
	color: #FFFFFF;
}

.white-bg{
	background-color: #FFFFFF;
	color: #E7381F;
}

.white-bg *{
	color: #E7381F;
}

.black-bg{
	background-color: #121211;
	color: #FFFFFF;
}

.black-bg *{
	color: #FFFFFF;
}

.inner{
	width: 90%;
	max-width: 1280px;
	margin: auto;
	background-color: transparent;
	padding-top: 160px;
	padding-bottom: 160px;
}

.isSP{
	display: none;
}

/* パララックス効果のための背景画像 */
.parallax {
    background-image: url('../img/common/2025/bg-flower.png');/* 任意の画像URLに変更 */
    background-position: center; /* 画像を中央に配置 */
    background-repeat: no-repeat; /* 画像が繰り返さないように */
    background-size: cover; /* 背景画像がビューに合わせて拡大・縮小される */
    /* background-attachment: fixed; /* スクロール時に背景が固定される */
}

section{
	margin: auto;
	background-color: transparent;
}

#FV,#FV01{
	background-image: url("../img/common/2025/fv-bg.png");
	width: 100%;
	height: calc(100vh - 80px);
	position: relative;
	top: 80px;
	margin-bottom: 80px;
	background-position: center bottom;
	background-size: cover;
	justify-content: flex-end;
	align-items: center
}

#FV01{
	background-image: url("../img/common/2025/fv01-bg.png");
	justify-content: center;
	height: calc(100vh - 160px);
}

#FV > div,#FV01 > div{
	width: 65%;
	height: 100%;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#FV01 > div{
	width: 100%;
}

#FV > div >p,#FV01 > div >p{
	font-size: clamp(24px, 4.800px + 2.5vw, 48px);
	color: #FFFFFF;
	font-weight: 700;
}

#FV h1,#FV01 h1{
	font-size: clamp(48px, 9.600px + 5vw, 96px);
	color: #FFFFFF;
	font-weight: 700;
	text-align: center;
	line-height: 1;
	letter-spacing: 0;
}

#FV h1 span,#FV01 h1 span{
	font-size: clamp(64px, 12.800px + 6.667vw, 128px);
	color: #FFFFFF;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
}

#FV > div > div,.fv01-footer {

	padding: clamp(4px, 0.800px + 0.417vw, 8px) clamp(16px, 3.200px + 1.667vw, 32px);
	column-gap: clamp(20px, 4.000px + 2.083vw, 40px);
	border-radius: 12px;
	margin: clamp(25px, 5.000px + 2.604vw, 50px) auto;
}

.fv01-footer{
	justify-content: center;
	padding: 16px;
	border-radius: 0;
	margin: 0;
}

#FV > div > div p,.fv01-footer p{
	font-size: clamp(16px, 3.200px + 1.667vw, 32px);
	align-items: center;
	column-gap: clamp(6px, 1.200px + 0.625vw, 12px);
	font-weight: 700;
}

#FV > div > div p:nth-last-child(1),.fv01-footer p:nth-last-child(1){
	font-size: clamp(12px, 2.400px + 1.25vw, 24px);
	line-height: 1;
}

#FV > div > div p span,.fv01-footer p span{
	font-size: clamp(10px, 2.000px + 1.042vw, 20px);
	border: 1px solid #FFFFFF;
	line-height: 1;
	padding: clamp(3px, 0.600px + 0.313vw, 6px) clamp(6px, 1.200px + 0.625vw, 12px) clamp(4px, 0.800px + 0.417vw, 8px);
}

#FV > div > div p .left , .fv01-footer p .left{
	font-size: clamp(7px, 1.400px + 0.729vw, 14px);
	border: none;
	padding: 0;
}

#FV > div > .fvcta2025,#FV01 > div > .fvcta2025{
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(12px, 2.400px + 1.25vw, 24px);
	margin: 0;
}

.fvcta2025 a{
	padding: clamp(8px, 1.600px + 0.833vw, 16px) clamp(24px, 4.800px + 2.5vw, 48px);
	font-size: clamp(20px, 4.000px + 2.083vw, 40px);
	font-weight: 700;
	line-height: 1.2;
	border-radius: 50px;
	display: flex;
	align-items: center;
	width: fit-content;
}

#FV01 > div > .fvcta2025{
	margin-top: 48px;
	margin-bottom: 5%;
}

#FV01 .fvcta2025 a{
	border-radius: 0;
	color: #FFFFFF;
	border: 3px solid #FFFFFF;
	background-color: rgba(255,255,255,0.2)
}

.side-btn__list li a::after{
	display: none;
}

.top-breadcrumbs{
	position: relative;
	top: 24px;
	width: 90%;
	max-width: 1280px;
}

h2{
	font-size: clamp(35px, 1.857px + 4.315vw, 64px);
	width: 100%;
	border-bottom: 5px solid;
	border-image: linear-gradient(to right, #FF3C46, #BD004B, #60004B) 1;
	margin-bottom: 80px;
	display: flex;
	align-items: center;
	column-gap: 24px;
	font-weight: 700;
}

h2 span{
	font-size: clamp(13px, 0.429px + 1.637vw, 24px);
}

.content{
	align-items: center;
	column-gap: clamp(24px, 5.663px + 2.385vw, 40px);
}

.content p{
	font-size: clamp(17px, -0.143px + 2.232vw, 32px);
	font-weight: 500;
}

.content img{
	width: 43.75%;
	height: auto;
	border-radius: 12px;
	box-shadow: 8px 8px 8px 0px rgba(0, 0, 0, 0.50);
	display: block;
}

.cta-area-2025{
	padding: clamp(7px, -1.000px + 1.042vw, 14px) clamp(17px, -0.143px + 2.232vw, 32px) clamp(8px, -1.143px + 1.19vw, 16px);
	column-gap: clamp(8px, -1.143px + 1.19vw, 16px);
	font-size: clamp(17px, -0.143px + 2.232vw, 32px);
	font-weight: 500;
	margin: auto;
	display: flex;
	border-radius: 50px;
	width: fit-content;
	line-height: 1;
	margin-top: 80px;
	align-items: center;
	flex-wrap: wrap;
}

.bg-img{
	width: 100%;
	background-image: url("../img/common/2025/bg-img.png");
	padding: 1px 0;
	background-position: center;
	background-size: cover;
}

.bg-img h2{
	border-image: linear-gradient(to right, #FFFFFF, #FFFFFF) 1;
	color: #FFFFFF
}

.bg-img h2 span{
	color: #FFFFFF;
}

.news-topics{
	flex-direction: row;
	width: 100%;
	max-width: inherit;
	column-gap: 24px;
}

.news-topics-content{
	flex: 1;
	box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	background-color: #D3E5F1;
	border-radius: 12px;
}

.news-topics-content a{
	background-color: transparent;
	flex-direction: column;
	height: auto;
	max-width: inherit;
	width: 100%;
	padding: 16px;
	box-shadow: none;
}

.news-topics-thum img{
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
	object-fit: cover;
}

.news-topics-txt{
	padding: 0 12px;
}

.news-topics-txt span{
	font-size: clamp(8px, -1.168px + 1.192vw, 16px);
}

.news-topics-txt p{
	font-size: clamp(10px, 0.832px + 1.192vw, 18px);
	font-weight: 500;
}

#news ul , #feature ul{
	width: 100%;
	display: flex;
	column-gap: 24px;
}

#news ul li , #feature ul li{
	flex: 1;
	background-color: #ffffff;
	border-radius: 12px;
	padding: 16px;
}

#news ul li a , #feature ul li a{
	text-decoration: none;
}

#news ul li a img , #feature ul li a img{
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
	object-fit: cover;
	border-radius: 8px;
}

#news ul li a p , #feature ul li a p{
	font-size: clamp(10px, 0.832px + 1.192vw, 18px);
	font-weight: 500;
}

#sponsorship .col-fit-wrapper {
  max-width: max-content;
  margin: auto;
}
#sponsorship .col-fit{
  display: grid;
  /* justify-content: center; */
  /* grid-template-columns: repeat(auto-fit, minmax(260px, max-content)); */
  grid-template-columns: repeat(3, 1fr);
  column-gap: 24px;
}
#sponsorship .col-fit li {
  font-size: 16px;
}

.footer{
	background: none;
}

.footer .inner{
	padding-top: 96px;
	padding-bottom: 96px;
} 

.footer__logo{
	width: 60%;
	max-width: 400px;
	height: auto;
	margin: auto;
	margin-bottom: 40px;
}

.footer__logo img{
	width: 100%;;
}

.footer__copy{
	color: #121211;
	font-size: clamp(7px, -1.022px + 1.043vw, 14px);
}

.footer__nav{
	max-width: 100%;
	column-gap: clamp(22px, 1.371px + 2.683vw, 40px);
	row-gap: clamp(14px, 2.539px + 1.49vw, 24px);
	margin-top: 96px;
}

.footer__nav li a{
	color: #121211;
	font-size: clamp(10px, 0.832px + 1.192vw, 18px);
}
.footer__c{
	width: 100%;
	background: linear-gradient(90deg, #FF3C46 0%, #BD004B 50%, #60004B 100%);
	font-size: clamp(6px, -0.876px + 0.894vw, 12px);
	color: #ffffff;
	padding: 10px;
}
.footer::after{
	display: none;
}

.footer__social li.-x a{
	background-image: url("/img/common/icon_x_2025.svg");
}
.footer__social li.-facebook a{
	background-image: url("/img/common/icon_facebook_2025.svg");
}

#FVinner{
	width: 100%;
	height: 360px;
	background-image: url("../img/common/2025/fv-inner-bg.png");
	position: relative;
	top: 80px;
	margin-bottom: 80px;
	background-position: center bottom;
	background-size: cover;
	justify-content: center;
	align-items: center
}

#FVinner h1{
	font-size: clamp(35px, 1.857px + 4.315vw, 64px);
	width: 90%;
	max-width: 1280px;
	color: #FFFFFF;
	text-align: left;
}

.cta-flex{
	column-gap: 40px;
}

.cta-flex a{
	justify-content: center;
}

.cta-flex a span{
	width: 100%;
	text-align: center;
	line-height: 1.4;
	font-size: clamp(13px, 0.393px + 1.639vw, 24px);
}

.bg-inner-img{
	background-image: url("../img/common/2025/bg-inner-img.png");
}

.bg-inner-img .content{
	align-items: flex-start;
}

.bg-inner-img .content p{
	color: #FFFFFF;
}

.bg-inner-img .content p a u{
	color: #FFFFFF;
	font-size: clamp(17px, -0.143px + 2.232vw, 32px)
}

.example-title{
	background-color: #FFFFFF;
	color: #E7381F;
	width: fit-content;
	margin: auto;
	border-radius: 12px;
	padding: 12px 24px;
	font-size: clamp(24px, 5.663px + 2.385vw, 40px);
	margin-bottom: 40px;
	font-weight: 700;
}

.voice{
	flex-wrap: wrap;
	gap:24px;
	justify-content: center;
	align-items: flex-start;
}

.voice p{
	background-color: #F8F8F8;
	padding: 16px;
	font-size: clamp(10px, 0.832px + 1.192vw, 18px);
	font-weight: 500;
	border-radius: 12px;
	width: 25%;
	max-width: 300px;
}

#booth .content{
	align-items: flex-start;
	flex-wrap: wrap;
}

.content .content-left{
	width: 53%;
}

.content .content-left div{
	padding: clamp(13px, 0.393px + 1.639vw, 24px);
	border-bottom: 1px solid #121211;
}

.content .content-left p:nth-child(1){
	width: 30%;
	font-size: clamp(13px, 0.393px + 1.639vw, 24px);
}

.content .content-left p:nth-last-child(1){
	width: 70%;
	font-size: clamp(13px, 0.393px + 1.639vw, 24px);
}

.content .booth-cont{
	width: 100%;
	font-size: clamp(11px, 0.686px + 1.341vw, 20px);
	margin-top: 24px;
}

.bg-inner-img .inner:nth-child(2){
	padding-top: 0;
}

.merit{
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	column-gap: 3%;
	grid-row-gap: 40px;
}

.merit li{
	width: 30%;
	background-color: #D3E5F1;
	padding: 16px;
	border-radius: 12px;
}


.merit li h3{
	font-size: clamp(17px, -0.143px + 2.232vw, 32px);
	text-align: center;
	margin-top: 16px;
	font-weight: 700;
}

.merit li p{
	font-size: clamp(13px, 0.393px + 1.639vw, 24px);
}

#merit > img{
	margin: auto;
	display: block;
	margin-top: 80px;
}
@media screen and (max-width:768px) {
	.header{
		height: 60px;
	}
	.header__inner{
		display: flex;
		height: 100%;
		align-items: center;
	}
	.header__logo{
		height:  40px;
		width: fit-content;
	}
	.header__smpMenu , .header.scrolled .header__smpMenu{
		display: flex;
		align-items: center;
		top: 0;
		width: auto;
		height: 100%;
	}
	.header__smpMenu{
		right: 0;
	}
	.header__smpMenu a{
		text-decoration: none;
	}
	.header__smpMenu > a{
		width: 48px;
		height: 48px;
	}
	.header__nav.scrolled{
		display: none;
	}
	.header-cta{
		padding: 0 12px;
		height: 60px;
	}
	.header-cta a{
		font-size: 16px;
		line-height: 1.2;
		font-weight: 700;
	}
	.header__nav.scrolled{
		height: 60px;
	}
	.header__nav{
		padding: 0;
	}
	.isSP{
		display: block;
	}
	.inner{
		padding-top: 96px;
		padding-bottom: 96px;
	}
	.parallax {
		background-image: url('../img/common/2025/bg-sp-flower.png');
	}
	.content img{
		width: 100%;
	}
	.cta-flex{
		flex-direction: column;
	}
	h2{
		margin-bottom: 40px;
		flex-direction: column;
		align-items: flex-start;
		padding-bottom: 8px;
	}
	#FV,#FV01{
		justify-content: center;
		top: 60px;
		margin-bottom: 60px;
	}
	#FV > div,#FV01 > div{
		width: 90%;
	}
	#FV > div > div,#FV01 > div > div{
		flex-direction: column;
		grid-row-gap: 8px;
		padding-top: 12px;
		padding-bottom: 12px;
	}
	#FV > div > .fvcta2025,#FV01 > div > .fvcta2025{
		align-items: center;
	}
	#FV > div > div p:nth-last-child(1),.fv01-footer p:nth-last-child(1){
		font-size: 16px;
	}
	#FV > div > div p span,.fv01-footer p span{
		font-size: 12px;
	}
	#FV01 > div > .fvcta2025{
		margin-top: 24px;
		gap: 16px;
	}
	.fv01-footer{
		flex-direction: column;
		gap: 12px;
	}
	.fv01-footer p:nth-last-child(1){
		font-size: 16px;
	}
	#FVinner{
		height: 180px;
		top: 60px;
		margin-bottom: 60px;
	}
	.side-btn__list{
		bottom: 24px;
		top:auto;
		width: 100%;
		height: fit-content;
	}
	.side-btn__list ul{
		flex-direction: row;
		padding-left: 2.5%;
		padding-right: 2.5%;
		column-gap: 2%;
	}
	.side-btn__list li{
		width: auto;
		flex: 1;
		border-radius: 24px;
	}
	.side-btn__list li a, .side-btn__list li:last-child a{
		writing-mode:horizontal-tb;
		padding: inherit;
		text-align: center;
		width: 100%;
		display: block;
		padding-top: 16px;
		padding-bottom: 16px;
		font-size: 16px;
	}
	.content{
		flex-direction: column;
		grid-row-gap: 24px;
	}
	.cta-area-2025{
		margin-top: 40px;
	}
	.news-topics-wrap{
		padding: 0;
	}
	.news-topics-content{
		width: 50%;
		min-width: 150px;
	}
	.news-topics{
		flex-wrap: wrap;
	}
	.news-topics-content a{
		width: 100%;
		padding: 12px;
	}
	.news-topics-txt p{
		font-size: 14px;
	}
	#news ul, #feature ul{
		overflow: scroll;
		column-gap: 12px;
	}
	#news ul li, #feature ul li{
		min-width: 150px;
		padding: 12px;
	}
	#news ul li a p, #feature ul li a p{
		font-size: 14px;
	}
	.footer__nav{
		flex-direction: row;
	}
	.footer__nav li{
		width: fit-content;
	}
	.footer__nav{
		margin-top: 48px;
	}
	.bg-inner-img .inner:nth-child(2){
		padding-top: 0;
	}
	.voice{
		gap: 12px;
	}
	.voice p{
		width: 45%;
	}
	.content .content-left{
		width: 100%;
	}
	.content .content-left p:nth-child(1),.content .content-left p:nth-last-child(1){
		font-size: 14px;
	}
	.content .booth-cont{
		font-size: 14px;
	}
	.merit li{
		width: 48%;
	}
	.merit{
		grid-row-gap: 12px;
	}
	.merit li h3{
		margin-top: 8px;
	}
}