@charset "UTF-8";

html, body {
	margin: 0;
	padding: 0;
}
main#index{
    background: var(--gradation-bgcolor);
	min-height: 150vh;
	--montserrat-font: "Montserrat", sans-serif;
	--smooch-font: 'Smooch Sans', sans-serif;
}

#index{
	overflow: hidden;
}

#index .heading{
    color: white;
    text-align: center;
    font-weight: 400;
	margin-bottom: 24px;
}
#index #top-news .heading{
	color: #3b65b9;
}
#index .heading .english{
    font-family: var(--english-fonts);
    font-size: 41px;
	font-weight: 500;
}
#index .heading .japanese {
    font-size: 13px;
    display: block;
}
@media (max-width: 768px) {
	#index .heading .english {
        font-size: clamp(22.66px, 6.6vw, 50px);
	}
	#index .heading .japanese {
        font-size: clamp(8.16px, 2.4vw, 18px);
	}
	#index .heading{
		margin-bottom: 34px;
	}
}

#index .common-button{
    text-decoration: none;
    display: block;
    color: #fff;
    height: 73px;
    background-color: #000846;
	margin: 80px auto 0;
    text-align: center;
    width: 330px;
    clip-path: var(--button-design);
    align-content: center;
}
#index .common-button .english{
	font-family: var(--montserrat-font);
	font-size: 25px;
	font-weight: 700;
	line-height: 0.8;
}
#index .common-button .japanese{
	display: block;
	font-size: 12px;
}
@media (max-width: 768px) {
	#index .common-button{
		height: 15vw;
		margin: 13vw auto 0;
        width: 85%;
	}
	#index .common-button .english{
		font-size: 5vw;
	}
	#index .common-button .japanese{
		font-size: 2.4vw;
	}
}


#key-visual{
	position: relative;
}
#key-visual:after{
	content: "";
	width: 100%;
	height: clamp(47px, 3.6vw, 67px);
	background-image: url(../../common/images/item.svg);
	background-size: cover;
	background-position: center;
	position: absolute;
	display: block;
	bottom: -47px;
	z-index: 1;
}
#key-visual .swiper-container{
	position: relative;
}
#key-visual .swiper-container .swiper-slide{
	aspect-ratio: 1366 / 693;
	overflow: hidden;
}
#key-visual .swiper-container img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
#key-visual .swiper-container img.img-sp{
	display: none;
}
#key-visual .first .swiper-pagination{
	position: absolute;
	right: 28px;
	bottom: 20px;
	width: fit-content;
	margin: 0;
	left: auto;
	top: auto;
}
#key-visual .first .swiper-pagination-bullet{
	width: 26px;
	height: 4px;
	background-color: #c7c8c8;
	border-radius: 0;
	opacity: 1;
}
#key-visual .first .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #3b65b9;
}
#key-visual .key-visual-text {
	position: absolute;
	right: 10px;
	top: 50%;
	bottom: 0;
	margin: auto 0;
	display: flex;
	gap: 50px;
	z-index: 10;
	font-family: var(--smooch-font);
	font-weight: 500;
	line-height: 1;
	color: #fff;
	transform: rotate(90deg);
	transform-origin: right top;
	height: fit-content;
}
#key-visual .key-visual-text .scroll{
	position: relative;
	display: flex;
	align-items: center;
}
#key-visual .key-visual-text .scroll:after{
	content: '';
	display: inline-block;
	width: 44px;
	height: 1px;
	background: #fff;
	margin-left: 8px;
}
@media (max-width: 768px) {
	#key-visual:after{
        content: "";
        width: 100%;
        height: clamp(21.76px, 6.4vw, 48px);
        background-image: url(../../common/images/sp_item.svg);
        background-size: cover;
        background-position: center;
        position: absolute;
        display: block;
        bottom: clamp(-25px, -3.3vw, -11px);	
	}
	#key-visual .swiper-container .swiper-slide{
		aspect-ratio: 750 / 817;
	}
	#key-visual .swiper-container img.img-pc{
		display: none;
	}
	#key-visual .swiper-container img.img-sp{
		display: block;
	}
	#key-visual .key-visual-text{
		top: 10%;
		font-size: 3vw;
	}
	#key-visual .key-visual-text .scroll{
		display: none;
	}
}


#pickup-banner{
	margin-top: 126px;
}
#pickup-banner .swiper-container{
	position: relative;
}
#pickup-banner .swiper-container img{
	width: 100%;
}
#pickup-banner .swiper-button-wrap{
	position: absolute;
    left: 0;
    right: 0;
    bottom: -34px;
    margin: auto 0;
    display: flex;
    justify-content: center;
    gap: 86px;
}
#pickup-banner .swiper-button-prev2,
#pickup-banner .swiper-button-next2{
	cursor: pointer;
}
#pickup-banner .swiper-button-prev2::after,
#pickup-banner .swiper-button-next2::after {
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}
/* 前への矢印カスタマイズ */
#pickup-banner .swiper-button-prev2::after {
    content: '';
    width: 11px;
    height: 11px;
    border: 0;
    border-top: solid 1px #fff;
    border-left: solid 1px #fff;
    transform: rotate(-45deg);
    margin: auto;
}
/* 次への矢印カスタマイズ */
#pickup-banner .swiper-button-next2::after {
    content: '';
    width: 11px;
    height: 11px;
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(45deg);
    margin: auto;
}
@media (max-width: 768px) {
	#pickup-banner {
    	margin-top: 12vw;
	}
	#pickup-banner .swiper-button-wrap{
		bottom: -8vw;
		gap: 80px;
	}
	/* 前への矢印カスタマイズ */
	#pickup-banner .swiper-button-prev2::after {
		width: 3vw;
		height: 3vw;
		border-top: solid 1px #fff;
		border-left: solid 1px #fff;
	}
	/* 次への矢印カスタマイズ */
	#pickup-banner .swiper-button-next2::after {
		width: 3vw;
		height: 3vw;
		border-top: solid 1px #fff;
		border-right: solid 1px #fff;
	}
}



#top-schedule{
    margin-top: 248px;
}
#top-schedule .swiper-container{
	position: relative;
}
#top-schedule .swiper-slide{
	border: 2px solid #000846;
	height: auto;
}
#top-schedule .swiper-slide-item{
	height: 100%;
	background: #fff;
	display: flex;
	flex-flow: column;
}
#top-schedule .swiper-slide .title{
	background: #000846;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 15px 12px;
	height: 58px;
}
#top-schedule .swiper-slide .title .category{
	background: #fff;
    clip-path: polygon(7px 0%, 100% 0%, calc(100% - 7px) 100%, 0% 100%);
    font-size: 14px;
    padding: 2px 15px;
    min-width: 83px;
    text-align: center;
    position: relative;
    bottom: 2px;
    font-weight: 700;
    margin: 0;
    word-break: keep-all;
}
#top-schedule .swiper-slide .title .title-detail{
	color: #fff;
	font-weight: 700;
	line-height: 1.2;
}
#top-schedule .swiper-slide .contents{
	background: #fff;
	padding: 17px 17px 17px;
	flex-grow: 1;
}
#top-schedule .swiper-slide .contents .league{
	color: #004082;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
}
#top-schedule .swiper-slide.item-schedule .contents .contents-detail{
	color: #004082;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	font-family: var(--smooch-font);
	font-weight: 600;
	line-height: 1;
}
#top-schedule .swiper-slide .contents .contents-detail .day{
	font-size: 95px;
}
#top-schedule .swiper-slide .contents .contents-detail .detail_right .week{
	font-size: 34px;
}
#top-schedule .swiper-slide .contents .contents-detail .detail_right .time{
	font-size: 31px;
}
#top-schedule .swiper-slide .contents .tournament{
	background: #c7c8c8;
	color: #000846;
	font-weight: 500;
	text-align: center;
	padding: 3px;
}
#top-schedule .swiper-slide .contents .opponent{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-top: 5px;
}
#top-schedule .swiper-slide .contents .opponent p{
	font-size: 17px;
	font-weight: 700;
	color: #000846;
}
#top-schedule .swiper-slide .contents .opponent img{
	max-width: 118px;
}
#top-schedule .swiper-slide .contents .contents-detail table{
	width: 100%;
	text-align: center;
}
#top-schedule .swiper-slide .contents .contents-detail table tr.result-logo img{
	max-width: 60px;
	margin: 0 auto;
}
#top-schedule .swiper-slide .contents .contents-detail table tr.result-team .team-name{
	font-size: 14px;
	font-weight: 500;
	color: #000846;
}
#top-schedule .swiper-slide .contents .contents-detail table tr.result-team .team-vs{
	font-size: 26px;
	font-weight: 500;
	color: #004082;
}
#top-schedule .swiper-slide .contents .contents-detail table tr.result-point{
	font-family: var(--smooch-font);
	font-size: 95px;
	font-weight: 600;
	color: #004082;
	line-height: 1;
}
#top-schedule .swiper-slide .button-wrap{
    margin: 0 17px 15px;
	display: flex;
	justify-content: center;
	gap: 8px;
}
#top-schedule .swiper-slide .button-wrap .common-button{
	margin: 0;
	font-family: var(--montserrat-font);
	font-size: 13px;
	font-weight: 700;
	clip-path: none;
	transform: skewX(-15deg);
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 4px;
}
#top-schedule .swiper-slide .button-wrap .common-button span{
	display: block;
	transform: skewX(15deg);
	line-height: 1;
}
#top-schedule .swiper-slide .button-wrap .common-button.net{
	max-width: 183px;
}
#top-schedule .swiper-slide .button-wrap .common-button.net:before{
    content: "";
    width: 28px;
    height: 7px;
    background-image: url(../../common/images/next-share-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
}
#top-schedule .swiper-slide .button-wrap .common-button.more{
	background: #d1ae15;
	color: #000846;
	max-width: 162px;
}
#top-schedule .swiper-slide .button-wrap .common-button.more:before{
    content: "";
    width: 28px;
    height: 7px;
    background-image: url(../../common/images/next-share.svg);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
}
#top-schedule .swiper-slide .button-wrap .common-button.net + .common-button.more{
	max-width: 116px;
}

#top-schedule .swiper-pagination{
	bottom: -70px;
}
#top-schedule .third .swiper-pagination-bullet{
	width: 44px;
	height: 4px;
	background-color: #c7c8c8;
	border-radius: 0;
	opacity: 1;
}
#top-schedule .third .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #fff;
}
@media (max-width: 768px) {
	#top-schedule{
        margin-top: 28vw;
	}
	#top-schedule .swiper-slide .title {
		gap: 3px;
		padding: 3vw 3vw;
		height: auto;
	}
	#top-schedule .swiper-slide .title .category{
		font-size: 2.8vw;
		font-weight: 700;
        padding: 0.5vw 3vw;
	}
	#top-schedule .swiper-slide .title .title-detail{
		font-size: 3.2vw;
	}
	#top-schedule .swiper-slide .contents{
		padding: 3.6vw;
	}
	#top-schedule .swiper-slide .contents .league{
		font-size: 3.4vw;
	}
	#top-schedule .swiper-slide.item-schedule .contents .contents-detail{
		gap: 3vw;
	}
	#top-schedule .swiper-slide .contents .contents-detail .day{
		font-size: 18vw;
	}
	#top-schedule .swiper-slide .contents .contents-detail .detail_right .week{
		font-size: 6vw;
	}
	#top-schedule .swiper-slide .contents .contents-detail .detail_right .time{
		font-size: 5vw;
	}
	#top-schedule .swiper-slide .contents .tournament{
		font-size: 3vw;
	}
	#top-schedule .swiper-slide .contents .opponent{
		gap: 3vw;
	}
	#top-schedule .swiper-slide .contents .opponent p{
		font-size: 3.6vw;
	}
	#top-schedule .swiper-slide .contents .opponent img{
		width: 23%;
	}
	#top-schedule .swiper-slide .contents .contents-detail table tr.result-team .team-name{
		font-size: 2.8vw;
	}
	#top-schedule .swiper-slide .contents .contents-detail table tr.result-team .team-vs{
		font-size: 4.2vw;
	}
	#top-schedule .swiper-slide .contents .contents-detail table tr.result-point{
		font-size: 14vw;
	}
	#top-schedule .swiper-slide .button-wrap .common-button{
		font-size: 2.6vw;
	}
}


#top-link .link-wrap{
	max-width: 1100px;
	margin: 140px auto 0;
	display: flex;
	gap: 30px;
}
#top-link .link-wrap .link-item{
	position: relative;
	display: block;
	width: calc((100% - (30px * 3)) / 4);
	background-color: #000846;
	color: #fff;
	text-decoration: none;
	aspect-ratio: 1 / 1;
	padding: 30px 20px;
}
#top-link .link-wrap .link-item:after{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	content: '';
	width: 100%;
	height: 66%;
	background-size: cover;
	background-repeat: no-repeat;
}
#top-link .link-wrap .link-item#link-ticket:after{
	background-image: url('../images/img_link_ticket.png');
}
#top-link .link-wrap .link-item#link-fun:after{
	background-image: url('../images/img_link_fun.png');
}
#top-link .link-wrap .link-item#link-academy:after{
	background-image: url('../images/img_link_academy.png');
}
#top-link .link-wrap .link-item#link-fanclub:after{
	background-image: url('../images/img_link_fanclub.png');
}
#top-link .link-wrap .link-item .english{
	font-family: var(--montserrat-font);
	font-size: 33px;
	font-weight: 500;
	line-height: 0.8;
}
#top-link .link-wrap .link-item .japanese{
	font-size: 13px;
	font-weight: 500;
	display: block;
}
@media (max-width: 1150px) {
	#top-link{
		width: 90%;
		margin: 0 auto;
	}
	#top-link .link-wrap{
		gap: 20px;
	}
	#top-link .link-wrap .link-item{
		width: calc((100% - (20px * 3)) / 4);
	}
	#top-link .link-wrap .link-item .english{
		font-size: 24px;
	}
	#top-link .link-wrap .link-item .japanese{
		font-size: 12px;
	}
}
@media (max-width: 768px) {
	#top-link{
		width: 100%;
        padding: 0px clamp(31px, 8.6vw, 65px);
	}
	#top-link .link-wrap{
		margin: 36vw auto 0;
		flex-wrap: wrap;
		gap: 5vw;
	}
	#top-link .link-wrap .link-item{
		width: calc((100% - (5vw * 1)) / 2);
		padding: 3.6vw 3vw;
	}
	#top-link .link-wrap .link-item .english{
		font-size: 5vw;
	}
	#top-link .link-wrap .link-item .japanese{
		font-size: 2.4vw;
	}
}


#top-player{
	margin: 0 auto;
	padding-top: 250px;
}
#top-player .fourth{
	position: relative;
}
#top-player .card-item .trigger-card{
	position: relative;
	background: #b5b5b6;
	aspect-ratio: 1 / 1;
	overflow: hidden;
    display: flex;
    align-items: flex-end;
}
#top-player .card-item .trigger-card:before{
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.4));
	width: 100%;
	height: 120px;
    z-index: 3;
}
#top-player .card-item .trigger-card img{
    width: auto;
    max-height: 96%;
	height: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#top-player .card-item .trigger-card .position{
    position: absolute;
    top: 0.2vw;
    left: 0.8vw;
    font-family: var(--montserrat-font);
    font-weight: 500;
    font-size: 8.64vw;
    color: #969696;
    line-height: 1;
}
#top-player .card-item .trigger-card .number{
	position: absolute;
	display: flex;
	flex-flow: column;
	gap: 0.7vw;
    top: 1.8vw;
    right: 2.3vw;
	color: #fff;
	text-align: right;
}
#top-player .card-item .trigger-card .number .num{
	font-family: "refrigerator-deluxe", sans-serif;
	font-weight: 700;
	font-style: normal;
	line-height: 0.7;
	font-size: 27.6vw;
    letter-spacing: -0.05em;
	display: block;
	z-index: 1;
}
#top-player .card-item .trigger-card .number .name{
    font-size: 1.45vw;
	z-index: 3;
}
#top-player .card-item .trigger-card > .name{
    position: absolute;
    bottom: 0.8vw;
    left: 1.1vw;
    font-family: var(--smooch-font);
    font-size: 8.15vw;
    letter-spacing: 0.04em;
    font-weight: 600;
    line-height: 0.8;
    color: #fff;
    z-index: 3;
}/* 各スライドの基本スタイル */
#top-player .swiper-slide {
  width: 100%; /* ここで左右の見切れ具合を調整 */
  transition: transform 0.3s ease; /* アニメーションを滑らかに */
}

/* 非アクティブなスライド（通常位置） */
#top-player .swiper-slide:not(.swiper-slide-active):after {
	content: '';
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.6);	
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99;
}

/* 中央のカレント（アクティブ）スライド */
#top-player .swiper-slide-active {
  transform: translateY(56px); /* ここで「少し下に下げる」 */
  color: #fff;
  z-index: 999;
}
/* 1400px以上の時 */
@media (min-width: 1400px) {
  #top-player .swiper-slide {
    transition: transform 0.4s ease;
  }

  /* 中央 (距離0) : 一番下 */
  #top-player .swiper-slide[data-distance="0"] {
    transform: translateY(56px);
    z-index: 10;
  }

  /* 中央の左右隣 (距離1) : 中間 */
  #top-player .swiper-slide[data-distance="1"] {
    transform: translateY(0px);
    z-index: 5;
  }

  /* さらにその外側 (距離2以上) : 一番上 */
  #top-player .swiper-slide[data-distance="2"],
  #top-player .swiper-slide:not([data-distance]) { 
    transform: translateY(-56px);
    z-index: 1;
  }

	#top-player .card-item .trigger-card .position{
		top: 0.2vw;
		left: 0.8vw;
		font-size: 5.6vw;
	}
	#top-player .card-item .trigger-card > .name{
        bottom: 0.5vw;
        left: 1vw;
        font-size: 5.4vw;
        letter-spacing: 0.04em;
		line-height: 0.8;
	}
	#top-player .card-item .trigger-card .number{
		top: 1.2vw;
		right: 1.7vw;
	}
	#top-player .card-item .trigger-card .number .num{
		font-size: 18vw;
	}
	#top-player .card-item .trigger-card .number .name{
		font-size: 0.9vw;
	}
}

#top-player .swiper-button-wrap.slider-in{
	position: absolute;
	width: 90%;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	z-index: 99;
}
#top-player .swiper-button-wrap.slider-out{
	position: absolute;
	max-width: 130px;
	width: 100%;
	bottom: -20%;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	z-index: 99;
}
@media (min-width: 1367px) {
	#top-player .swiper-button-wrap.slider-out{
		max-width: 80px;
		bottom: -23%;
	}
}

#top-player .swiper-button-prev4,
#top-player .swiper-button-next4{
	cursor: pointer;
}
#top-player .swiper-button-prev4::after,
#top-player .swiper-button-next4::after {
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}
/* 前への矢印カスタマイズ */
#top-player .swiper-button-prev4::after {
	content: '';
	border: 0;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	transform: rotate(-45deg);
	margin: auto;
}
/* 次への矢印カスタマイズ */
#top-player .swiper-button-next4::after {
	content: '';
	border: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	margin: auto;
}
#top-player .swiper-button-wrap.slider-in .swiper-button-prev4::after,
#top-player .swiper-button-wrap.slider-in .swiper-button-next4::after {
	width: 36px;
	height: 36px;
}
#top-player .swiper-button-wrap.slider-out .swiper-button-prev4::after,
#top-player .swiper-button-wrap.slider-out .swiper-button-next4::after {
	width: 16px;
	height: 16px;
}
#top-player .common-button{
	margin-top: 215px;
}
@media (max-width: 768px) {
	#top-player {
		padding-top: 28vw;
	}
	#top-player .card-item .trigger-card .position{
		left: 5px;
		font-size: 13.6vw;
	}
	#top-player .card-item .trigger-card .number{
		gap: 2vw;
		top: 3vw;
		right: 10px;
	}
	#top-player .card-item .trigger-card .number .num{
		font-size: 50vw;
	}
	#top-player .card-item .trigger-card .number .name{
		font-size: 9px;
	}
	#top-player .card-item .trigger-card > .name{
		left: 5px;
		font-size: 15vw;
	}/* 各スライドの基本スタイル */
	#top-player .swiper-slide-active {
		transform: translateY(5.4vw);
	}

	#top-player .swiper-button-wrap.slider-in{
		display: none;
	}
	#top-player .swiper-button-wrap.slider-out{
		max-width: 70px;
		width: 100%;
		bottom: -20%;
	}
	/* 前への矢印カスタマイズ */
	#top-player .swiper-button-prev4::after {
		border-top: solid 1px #fff;
		border-left: solid 1px #fff;
	}
	/* 次への矢印カスタマイズ */
	#top-player .swiper-button-next4::after {
		border-top: solid 1px #fff;
		border-right: solid 1px #fff;
	}
	#top-player .swiper-button-wrap.slider-out .swiper-button-prev4::after,
	#top-player .swiper-button-wrap.slider-out .swiper-button-next4::after {
		width: 3vw;
		height: 3vw;
	}
	#top-player .common-button{
		margin-top: 25vw;
	}
}


#top-team{
	margin-top: 160px;
	background: #024082;
}
#top-team a{
	position: relative;
	text-decoration: none;
}
#top-team a .contents{
	max-width: 1100px;
	height: 477px;
	margin: 0 auto;
}
#top-team a img{
	position: absolute;
	top: 0;
	right: 0;
}
#top-team a .contents .text{
	position: relative;
	color: #fff;
	width: fit-content;
	height: 100%;
}
#top-team a .contents .text .title{
	font-family: var(--montserrat-font);
	font-size: 138px;
	font-weight: 500;
	line-height: 1;
    transform: skewX(-15deg);
}
#top-team a .contents .text .info{
	font-family: var(--smooch-font);
	font-size: 22px;
	font-weight: 600;
	font-style: italic;
}
#top-team a .contents .text .name{
	font-family: var(--montserrat-font);
	font-size: 43px;
	font-weight: 500;
	font-style: italic;
}
#top-team a .contents .text .japanese{
	font-weight: 500;
}
#top-team a .contents .text .more{
	position: absolute;
	right: 100px;
	bottom: 25px;
	display: flex;
	align-items: center;
	font-family: var(--montserrat-font);
	color: #fff;
}
#top-team a .contents .text .more:before{
    content: "";
    width: 28px;
    height: 7px;
    background-image: url(../../common/images/next-share-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
}
@media (max-width: 1600px) {
	#top-team a .contents{
		max-width: none;
		width: fit-content;
		margin-right: 940px;
	}
}
@media (max-width: 1380px) {
	#top-team a{
		display: flex;
	}
	#top-team a .contents{
		position: absolute;
		left: 1.45vw;
		height: 100%;
		margin: 0;
	}
	#top-team a .contents .text .title{
		font-size: 10.15vw;
	}
	#top-team a .contents .text .info{
		font-size: 1.62vw;
	}
	#top-team a .contents .text .name{
		font-size: 3.16vw;
	}
	#top-team a .contents .text .japanese{
		font-weight: 500;
	}
	#top-team a .contents .text .more{
		right: 7.35vw;
		bottom: 1.84vw;
	}
	#top-team a .contents .text .more:before{
		width: 2.06vw;
		height: 0.51vw;
	}
	#top-team a img{
		position: relative;
		display: block;
		margin: 0 0 0 auto;
		width: 74.420289855072463768%;
	}
}
@media (max-width: 768px) {
	#top-team{
		margin-top: 30vw;
	}
	#top-team a .contents .text .info{
		font-size: 2.6vw;
	}
	#top-team a .contents .text .name{
		font-size: 3.5vw;
	}
	#top-team a .contents .text .japanese{
		font-size: 2vw;
	}
	#top-team a .contents .text .more{
		font-size: 2vw;
		gap: 1vw;
	}
	#top-team a .contents .text .more:before{
		width: 2.06vw;
		height: 0.51vw;
	}
	#top-team a img{
		position: relative;
		display: block;
		margin: 0 0 0 auto;
		width: 74.420289855072463768%;
	}
}


#top-news{
    padding-top: 103px;
	background: #fff;
}
#top-news .link-wrap{
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	gap: 40px;
}
#top-news .link-wrap .topics-item{
	width: calc((100% - (40px * 3)) / 4);
	text-decoration: none;
}
#top-news .link-wrap .topics-item .image{
	position: relative;
}
#top-news .link-wrap .topics-item .image:before{
    position: absolute;
    top: 0;
    left: 0;
    content: 'NEW';
    font-family: var(--smooch-font);
    font-size: 25px;
    font-weight: 600;
	font-style: italic;
    line-height: 1;
    padding: 2px 16px 0 8px;
    text-align: center;
    color: #004082;
    background: #d1ae15;
    clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}
#top-news .link-wrap .topics-item .image img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    aspect-ratio: 245 / 181;
}
#top-news .link-wrap .topics-item .info{
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 13px;
}
#top-news .link-wrap .topics-item .info .day{
	font-family: var(--smooch-font);
	font-size: 28px;
	font-weight: 700;
	color: #004082;
}
#top-news .link-wrap .topics-item .info .category{
    background: #004082;
	color: #fff;
    clip-path: var(--category-design);
    font-size: 12px;
    padding: 2px 24px;
    position: relative;
    bottom: 2px;
    font-weight: 500;
    margin: 0;
}
#top-news .link-wrap .topics-item .title{
	color: #000846;
	font-weight: 700;
}
#top-news.theme-topics .common-width {
	margin-top: 32px;
}
#top-news.theme-topics .category{
	margin-top: 84px;
	margin-bottom: 0;
}
#top-news #selected-topics .image{
	max-width: 156px;
	width: auto;
}
#top-news #selected-topics ul,
#top-news #selected-topics ul li{
	border-color: #969696;
}
#top-news #selected-topics ul li a{
	position: relative;
	padding-top: 14px;
	padding-bottom: 14px;
	padding: 14px 44px;
	gap: 40px;
	align-items: center;
	justify-content: flex-start;
}
#top-news #selected-topics ul li a:after{
	content: '';
	width: 21px;
	height: 21px;
	border: 0;
	border-top: solid 1px #004082;
	border-right: solid 1px #004082;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 25px;
	margin: auto 0;
}
#top-news #selected-topics ul li.new a .image{
	position: relative;
}
#top-news #selected-topics ul li.new a .image:before{
    position: absolute;
    top: 0;
    left: 0;
    content: 'NEW';
    font-family: var(--smooch-font);
    font-size: 18px;
    font-weight: 600;
	font-style: italic;
    line-height: 1;
    padding: 2px 12px 0 5px;
    text-align: center;
    color: #004082;
    background: #d1ae15;
    clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}
#top-news #selected-topics ul li.new a .image img{
    aspect-ratio: 156 / 116;
}
#top-news .common-button{
	position: relative;
	width: 162px;
	height: 33px;
	margin: 48px 0 0 auto;
	background: #004082;
}
#top-news .common-button:before{
    content: "";
    width: 28px;
    height: 7px;
	background-image: url(../../common/images/next-share-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 35px;
    margin: auto;
}
#top-news .common-button .english{
	font-size: 15px;
	font-weight: 400;
	padding-left: 25px;
}
#top-news .category-select{
	display: none;
}
@media (max-width: 768px) {
	#top-news{
		padding-top: 17vw;
		padding-bottom: 8vw;
	}
	#top-news .link-wrap{
        padding: 0px clamp(31px, 8.6vw, 65px);
		flex-wrap: wrap;
		gap: 5vw;
	}
	#top-news .link-wrap .topics-item{
		width: calc((100% - (5vw * 1)) / 2);
	}
	#top-news .link-wrap .topics-item .image:before{
		font-size: 4vw;
	}
	#top-news .link-wrap .topics-item .info{
		gap: 6px;
		margin-top: 1vw;
	}
	#top-news .link-wrap .topics-item .info .day{
		font-size: 4.6vw;
	}
	#top-news .link-wrap .topics-item .info .category{
		font-size: 2vw;
		padding: 1px 2vw;
		bottom: 0;
		width: fit-content;
	}
	#top-news .link-wrap .topics-item .title{
		font-size: 2.8vw;
	}
	#top-news .common-button{
		height: 33px;
		margin: 12vw auto;
	}
	#top-news .second-class-list ul{
		display: none;
	}
	#top-news .category-select{
		position: relative;
		display: block;
	}
	#top-news .category-select select{
		-webkit-appearance: none;
		appearance: none;
		vertical-align: middle;
		font: inherit;
		margin: 0;
		outline: 0;
		border: none;
		border-radius: 0;

		background: #004082;
		color: #fff;
		text-align: center;
		text-align-last: center;
		font-size: 3.8vw;
		font-weight: 500;
		padding: 2.2vw 0;
	}
	#top-news .category-select{
		margin-top: 10.5vw;
	}
	#top-news.theme-topics .category{
		margin-top: 0;
	}
	#top-news .category-select:after{
		content: '';
		width: 7px;
		height: 7px;
		border-bottom: solid 1px #fff;
		border-right: solid 1px #fff;
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: 12px;
		margin-top: -6px;
		pointer-events: none;
	}
	#top-news #selected-topics{
		margin-top: 13vw;
	}
	#top-news #selected-topics .image{
		width: 40%;
        aspect-ratio: 110 / 82;
        overflow: hidden;
	}
	#top-news #selected-topics ul li.new a .image:before{
		font-size: 3vw;
	}
	#top-news #selected-topics .image img{
		margin: 0;
	}
	#top-news #selected-topics ul li a{
		display: flex;
		align-items: flex-start;
		gap: 3vw;
		padding: 3vw 8vw 3vw 0;
	}
	#top-news #selected-topics ul li a:after{
		width: 4vw;
		height: 4vw;
		border: 0;
		border-top: solid 1px #004082;
		border-right: solid 1px #004082;
		right: 0;
	}
	#top-news #selected-topics .content{
		width: 58%;
		line-height: 1;
	}
	#top-news #selected-topics .day{
		font-size: 4.6vw;
	}
	#top-news #selected-topics .category{
		font-size: 2vw;
		padding: 1px 2vw;
		bottom: 0.5vw;
		width: fit-content;
        clip-path: var(--sp-category-design);
	}
	#top-news #selected-topics .title{
		font-size: 2.8vw;
		margin: 0;
	}
}


#top-footer{
	position: relative;
	width: 100%;
	height: 744px;
	background-image: url('../images/img_blue-falcon.png');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
#top-footer:before,
#top-footer:after{
    content: "";
    width: 100%;
    height: clamp(47px, 3.6vw, 67px);
    background-image: url(../../common/images/item.svg);
    background-size: cover;
    background-position: center;
    position: absolute;
    display: block;
    z-index: 1;
}
#top-footer:before{
	top: 24px;
}
#top-footer:after{
	bottom: -20px;
}
#top-footer:before,
#top-footer:after{
    content: "";
    width: 100%;
    height: clamp(47px, 3.6vw, 67px);
    background-image: url(../../common/images/item.svg);
    background-size: cover;
    background-position: center;
    position: absolute;
    display: block;
    z-index: 1;
}
#top-footer .text{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;	
	height: fit-content;
	text-align: center;
	color: #d1ae15;
}
#top-footer .text .info{
	font-family: var(--smooch-font);
	font-size: 36px;
	font-weight: 600;
	font-style: italic;
	line-height: 1;
}
#top-footer .text .team-name{
	font-family: var(--montserrat-font);
	font-size: 95px;
	font-weight: 500;
	font-style: italic;
	line-height: 1;
}
@media (max-width: 768px) {
	#top-footer{
		height: 52vw;
	}
	#top-footer:before,
	#top-footer:after{
        content: "";
        width: 100%;
        height: clamp(21.76px, 6.4vw, 48px);
        background-image: url(../../common/images/sp_item.svg);
        background-size: cover;
        background-position: center;
        position: absolute;
        display: block;
	}
	#top-footer:before{
		top: -3vw;
	}
	#top-footer:after{
		bottom: -3vw;
	}
	#top-footer .text .info{
		font-size: 3vw;
		line-height: 1.3;
	}
	#top-footer .text .team-name{
		font-size: 7vw;
	}
}