@charset "utf-8";

:root {
	/* base */
	--cts-gutter: 30px;
	--cts-width: 900px;

	/* font */
	--dp-font-jp: "Noto Sans JP", sans-serif;
	/* Noto Sans JP
	Noto Sans JP Thin 100
	Noto Sans JP Light 300
	Noto Sans JP Regular 400
	Noto Sans JP Medium 500
	Noto Sans JP Bold 600
	*/
	--dp-font-en: "Roboto", sans-serif;
	/* Roboto
	Roboto Bold 700 Italic
	*/
	--cts-font: myriad-pro, sans-serif;
	/* Myriad Pro
	Myriad Pro Bold 700;
	*/

	--dp-h1-size: clamp(24px,calc(1.159rem + 1.45vw),36px);
	--dp-h2-size: clamp(20px,calc(1.023rem + .97vw),28px);
	--dp-h3-size: clamp(18px,calc(.955rem + .73vw),24px);
	--dp-h4-size: clamp(16px,calc(.886rem + .48vw),20px);
	--dp-p-l-size: clamp(14px, 0.806rem + 0.3vw, 16px);/* 本文 Large */
	--dp-p-note-size: clamp(10px,calc(.597rem + .12vw),11px);/* 本文 Notes */
	--dp-price-s-size: clamp(16px,calc(.886rem + .48vw),20px);/* 価格 Small */
	--dp-price-tax-s-size: clamp(12px,calc(.693rem + .24vw),14px);/* 円・税 Small */

	--cts-font-size: clamp(12px,calc(.693rem + .24vw),14px);/* DP-Medium */
	--cts-font-ls: .05em;/*letter-spacing*/
	--cts-font-ls-02: .025em;

	/* color */
	--dp-color: #004da1;
	--dp-color-price: #e43344;
	--cts-color: #000;
	--cts-color-02: #D9DE00;

}


/* LP共通汎用
____________________*/
#container {
	width: 100%;
	margin: auto;
}
.column2R #main {
	float: none;
	width: auto;
}
.breadCrumb {
	margin: 10px auto 0 !important;
}
.pagetop {
	display: none;
}
#pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 55px;
}
#pagetop a {
	color: #fff;
	background-color: #333;
	border-radius: 5px;
	display: block;
	font-size: 12px;
	line-height: 1.5em;
	padding: 5px 10px;
	text-align: center;
	text-decoration: none;
}
figure {
	margin: 0;
}
img {
	image-rendering: -webkit-optimize-contrast;
}
.sp {
	display: none;
}
#s_container {
	font-family: var(--dp-font-jp);
	width: 100%;
	margin: 0 auto;
}
.contentsWrap {
	width: 100%;
	color: var(--cts-color);
	font-size: var(--cts-font-size);
}
.contentsWrap img {
	max-width: 100%;
}
.clearfix:after, #nav1:after, #nav2:after, #nav3:after, #container:after, #contents:after, #footerNav:after {
	content: none !important;
}

@media (max-width: 479px) {
	#container {
		margin-bottom: 0 !important;
	}
	.leadSection.clearfix {
		display: none;
	}
}

/*ヘッダー非表示*/
#Header, #Globalnavi, .leadSection {
	display: none !important;
}
/*パンくず非表示*/
.breadCrumb {
	display: none !important;
}
/*フッター非表示*/
.footerTagline, .footerTagline, #footer, #footerLinks, #footerCopy, .pagetop {
	display: none;
}
.p-registered,.l-pagetop.p-pagetop,.l-footer.p-footer {
	display: none!important;
}


/* コンテンツ
____________________*/
.contentsWrap {
	background: #001E60;
}
.contents {
	padding-block-start: clamp(60px, -0.417rem + 17.78vw, 180px);
	padding-block-end: clamp(60px, -1.111rem + 20.74vw, 200px);
}
.contents__inner {
	width: clamp(300px,100%,calc(var(--cts-width) +  var(--cts-gutter) * 2));
	margin-inline: auto;
	padding-inline: var(--cts-gutter);
	box-sizing: border-box;
}
.contents__ttl {
	text-align: center;
}
.contents__subttl {
	margin-block-start: clamp(17px, 0.681rem + 1.63vw, 28px);
	font-size: clamp(18px, 0.882rem + 1.04vw, 25px);
	font-weight: 600;
	text-align: center;
	letter-spacing: var(--cts-font-ls-02);
}
.__dp-h2--jp {
	display: inline-block;
	font-size: var(--dp-h2-size);
	font-weight: 600;
	transform: skewX(-10deg);
}
.__dp-h2--en {
	font-size: var(--dp-h2-size);
	font-family: var(--dp-font-en);
	font-weight: 700;
	font-style: italic;
	letter-spacing: var(--cts-font-ls-02);
}
.__dp-h3--en {
	font-size: var(--dp-h3-size);
	font-weight: 700;
	font-style: italic;
	letter-spacing: var(--cts-font-ls-02);
}
.link__inner {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-block: clamp(5px,0.236rem + 0.38vw,8px);
	padding-inline: clamp(25px,0.737rem + 2vw,40px);
	background: var(--dp-color);
	font-size: var(--dp-p-l-size);
	text-decoration: none;
	letter-spacing: var(--cts-font-ls);
	box-sizing: border-box;
	overflow: hidden;
	z-index: 1;
}
.link__inner::before {
	position: absolute;
	content: "";
	width: 150%;
	height: 100%;
	top: 0;
	left: -168%;
	background: #00a2e6;
	transform: skewX(-18deg);
	opacity: .3;
	z-index: -1;
}
.link__inner::after {
	content: "";
	position: absolute;
	top: calc(50% - 3px);
	right: 17px;
	width: 6px;
	height: 6px;
	border-right: 1px solid;
	border-bottom: 1px solid;
	border-color: #fff;
	transform: rotate(-45deg);
}
.link--over::before {
	animation: link-over ease-out .4s both;
}
.link--out::before {
	animation: link-out ease-in .4s both;
}
@keyframes link-over {
	0% {
		left: -168%;
	}
	100% {
		left: -18%;
	}
}
@keyframes link-out {
	0% {
		left: -18%;
	}
	100% {
		left: 168%;
	}
}
.link__bg-white {
	border: 1px solid var(--dp-color);
	background: #fff;
	color: var(--dp-color);
}
.link__bg-white.link__inner {
	margin-block-start: 0;
	margin-inline: auto;
	border: 1px solid var(--dp-color);
	background: #fff;
	color: var(--dp-color);
}
.link__bg-white.link__inner::before {
	background: #0078c4;
	opacity: .1;
}
.link__bg-white.link__inner::after {
	border-color: var(--dp-color);
}
.__dp_price,
.__dp_tax {
	color: #e43344;
	letter-spacing: var(--cts-font-ls);
}
.__dp_price {
	font-size: var(--dp-price-s-size);
	font-weight: 600;
}
.__dp_tax {
	font-size: var(--dp-price-tax-s-size);
}
.contents__cs {
	max-width: 690px;
	margin-block-start: clamp(25px, 0.994rem + 2.84vw, 50px);
	margin-inline: auto;
	padding-block: clamp(90px, 3.58rem + 10.23vw, 180px);
	background: #EFEFEF;
	border: 2px solid #000;
	border-radius: 10px;
	font-size: clamp(20px, 0.909rem + 1.7vw, 35px);
	font-weight: 900;
	text-align: center;
	letter-spacing: .025em;
}


/* mv
____________________*/
.contents--mv {
	width: 100%;
	padding: 0;
}
.contents--mv img {
	width: 100%;
	padding: 0;
}


/* concept
____________________*/
.content--concept {
	padding-block-start: clamp(25px, 1.215rem + 1.48vw, 35px);
	padding-block-end: clamp(50px, 1.438rem + 7.2vw, 95px);
	padding-inline: var(--cts-gutter);
	background: #010D2D;
	color: var(--cts-color-02);
	text-align: center;
}
.contents__subttl--concept {
	font-size: clamp(16px, 0.861rem + 0.59vw, 20px);
	font-weight: 300;
	color: #fff;
}
.concept__txt {
	display: inline-block;
	font-size: clamp(20px, 0.903rem + 1.48vw, 30px);
	letter-spacing: var(--cts-font-ls-02);
}
.news {
	margin-block-start: clamp(30px, 0.563rem + 5.6vw, 65px);
	color: #fff;
}
.news__ttl {
	font-size: clamp(13px, 0.7rem + 0.48vw, 16px);
	letter-spacing: .025em;
}
.news__inner {
	max-width: 550px;
	margin-inline: auto;
	padding-block: clamp(15px, 0.563rem + 1.6vw, 25px);
	border-right: 2px solid #fff;
	border-left: 2px solid #fff;
	box-sizing: border-box;
}
.news__detail {
	max-width: 310px;
	margin-inline: auto;
	text-align: left;
	line-height: 1.78;
}


/* nav
____________________*/
.contents--nav {
	padding-block: 25px;
}
.nav__list {
	display: flex;
	justify-content: center;
	gap: 35px;
}
.nav__anchor {
	position: relative;
	display: flex;
	justify-content: center;
	width: 166px;
	height: 21px;
	bottom: 0;
	border: 1px solid var(--cts-color-02);
	font-size: 14px;
	color: #D9DE00;
	text-decoration: none;
	letter-spacing: var(--cts-font-ls);
	box-shadow: 2px 1px 0px var(--cts-color-02);
	transition: all .5s;
}
.nav__anchor:hover {
	bottom: -1px;
	box-shadow: 0px 0px 0px var(--cts-color-02);
	opacity: .85;
}
.nav__anchor::before,
.nav__anchor::after {
	--circle-posi: 8px;
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	top: 50%;
	background: var(--cts-color-02);
	border-radius: 50%;
	transform: translateY(-50%);
}
.nav__anchor::before {
	left: var(--circle-posi);
}
.nav__anchor::after {
	right: var(--circle-posi);
}
.is-fixed {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	background: rgba(0,30,96,.85);
	z-index: 10000;
}


/* about
____________________*/
.contents--about {
	padding-block: clamp(40px, 0.813rem + 7.2vw, 85px);
	background: #282B31;
	color: #fff;
}
.about {
	width: clamp(300px,100%,1000px + var(--cts-gutter) * 2);
}
.about .contents__subttl {
	margin-block-start: 0;
	font-weight: 400;
	letter-spacing: .25em;
}
.about__detail {
	display: flex;
	max-width: 1000px;
	margin-inline: auto;
}
.about__item {
	width: 50%;
	margin-block-start: clamp(10px, 0.451rem + 0.74vw, 15px);
	padding-block-start: clamp(3px, 0.083rem + 0.44vw, 6px);
	border-left: 2px solid var(--cts-color-02);
	font-size: clamp(18px, 0.604rem + 2.22vw, 33px);
	text-align: center;
}
.about__item:last-child {
	border-right: 2px solid var(--cts-color-02);
}
.about__name {
	display: block;
	font-size: clamp(18px, 0.882rem + 1.04vw, 25px);
	font-weight: 400;
	letter-spacing: var(--cts-font-ls-02);
}
.about__date {
	font-size: clamp(25px, 0.694rem + 3.7vw, 50px);
	font-family: var(--cts-font);
	line-height: 1;
}
.about .contents__subttl--place {
	margin-block-start: 50px;
}
.about__detail--place {
	max-width: 550px;
}
.about__detail--place .about__item {
	width: 100%;
}
.about__camp-anchor {
	max-width: 500px;
	margin-block-end: clamp(40px, 0.625rem + 8vw, 90px);
	margin-inline: auto;
}
.about__camp-anchor-link {
	position: relative;
	display: inline-block;
	width: 100%;
	bottom: 0;
	padding-block: clamp(13px, 0.625rem + 0.8vw, 18px);
	border: 1px solid var(--cts-color-02);
	font-size: clamp(20px, 1.063rem + 0.8vw, 25px);
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	letter-spacing: .025em;
	box-shadow: 4px 3px 0px #dbdf1a;
	transition: all .3s;
}
.about__camp-anchor-link:hover {
	bottom: -3px;
	box-shadow: 0px 0px 0px #dbdf1a;
}
.about__date-wrap {
	display: flex;
	justify-content: center;
	margin-block-start: 5px;
}
.about__time {
	display: inline-block;
	margin-block-start: 4px;
	font-size: clamp(14px, 0.725rem + 0.64vw, 18px);
}
.about__note {
	display: inline-block;
	margin-block-start: clamp(5px, 0.237rem + 0.32vw, 7px);
	font-size: clamp(12px, 0.675rem + 0.32vw, 14px);
}


/* guest
____________________*/
.contents--bg01 {
	background: url(../5info/img/tgs2022/bg_guest.jpg) no-repeat center;
	background-size: cover;
	padding-inline: var(--cts-gutter);
}
.guest {
	width: clamp(300px,100%,var(--cts-width));
	padding-block: clamp(40px, 0.764rem + 7.41vw, 90px);
	padding-inline: 20px;
	background: rgba(255,255,255,.9);
	border: clamp(2px, 0.09rem + 0.15vw, 3px) solid #000;
}
.guest__vspo-box {
	text-align: center;
}
.guest__vspo-link:hover {
	animation-name: hover-flash;
	animation-duration: 1s;
	opacity: .85;
}
@keyframes hover-flash {
	0% {
		opacity: .3;
	}
	100% {
		opacity: .85;
	}
}
.guest__list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: clamp(25px, 1.042rem + 2.22vw, 40px) clamp(12px, 0.472rem + 1.19vw, 20px);
	margin-block-start: clamp(25px, 1.042rem + 2.22vw, 40px);
}
.guest__item {
	max-width: 166px;
}
.guest__img {
	border-radius: 10px;
	box-shadow: 0px 0px 5px #0000003b;
}
.guest__ttl {
	margin-block-start: clamp(10px, 0.417rem + 0.89vw, 16px);
	text-align: center;
}
.guest__name {
	margin-block-start: 2px;
	text-align: center;
}
.guest__link-list {
	display: flex;
	justify-content: center;
	gap: 9px;
	margin-block-start: clamp(5px, 0.243rem + 0.3vw, 7px);
}
.guest__link {
	display: inline-block;
	transition: all .3s;
}
.guest__link:hover {
	transform: scale(1.05);
	opacity: .85;
}
.guest__cate {
	margin-block-start: clamp(30px, 0.75rem + 4.8vw, 60px);
	font-size: clamp(20px, 1.063rem + 0.8vw, 25px);
	text-align: center;
	letter-spacing: .025em;
}
.contents__ttl + .guest__cate {
	margin-block-start: clamp(15px, 0.556rem + 1.63vw, 26px);
}
.guest__item.guest__item-vspo {
	max-width: none;
}
.guest__list--more {
	align-items: baseline;
	gap: clamp(25px, 1.042rem + 2.22vw, 40px) 80px;
}
.guest__item--more {
	font-size: clamp(20px, 0.988rem + 1.12vw, 27px);
	font-weight: 500;
	text-align: center;
}


/* campaign
____________________*/
.contents--campaign {
	margin-block-start: clamp(40px, -0.625rem + 13.33vw, 130px);
}
.campaign {
	width: clamp(300px,100%,var(--cts-width));
	padding-block: clamp(40px, 0.764rem + 7.41vw, 90px);
	padding-inline: 20px;
	background: var(--cts-color-02);
	border: clamp(2px, 0.09rem + 0.15vw, 3px) solid #000;
}
.campaign__list {
	display: flex;
	justify-content: center;
	gap: 25px 20px;
	max-width: 760px;
	margin-block-start: clamp(10px, 0.104rem + 2.22vw, 25px);
	margin-inline: auto;
}
.campaign__item {
	width: 240px;
	padding-block: clamp(25px, 1.389rem + 0.74vw, 30px) clamp(20px, 1.076rem + 0.74vw, 25px);
	padding-inline: 20px;
	background: #fff;
	border-radius: 5px;
	text-align: center;
	box-sizing: border-box;
}
.product__img {
	text-align: center;
}
.product__name {
	margin-block-start: clamp(12px, 0.646rem + 0.44vw, 15px);
	font-size: var(--dp-p-l-size);
	font-weight: 400;
}
.product__spec-list {
	margin-block-start: 2px;
	font-size: clamp(10px, 0.556rem + 0.3vw, 12px);
	letter-spacing: var(--cts-font-ls-02);
}
.product__price-box {
	margin-block-start: 8px;
}
.product__price {
	font-size: 18px;
	font-weight: 900;
	color: #585657;
	letter-spacing: var(--cts-font-ls);
}
.product__tax {
	margin-inline-start: .5em;
	font-size: clamp(10px, 0.59rem + 0.15vw, 11px);
	letter-spacing: var(--cts-font-ls);
}
.product__link-box {
	margin-block-start: 10px;
}
.campaign__note {
	max-width: 760px;
	margin-block-start: 25px;
	margin-inline: auto;
	padding-block: 20px;
	padding-inline: 1em;
	background: #001E60;
	font-size: clamp(14px, 0.667rem + 0.89vw, 20px);
	color: #fff;
	text-align: center;
	letter-spacing: var(--cts-font-ls-02);
	box-sizing: border-box;
}


/* event
____________________*/
.contents--bg02 {
	background: url(../5info/img/tgs2022/bg_event.jpg) no-repeat;
	background-size: cover;
}
.contents__ttl + .event__inner {
	margin-block-start: clamp(17px, 0.785rem + 1.19vw, 25px);
}
.event__lead-txt {
	margin-block-start: clamp(17px, 0.785rem + 1.19vw, 25px);
	font-size: clamp(20px, 1.063rem + 0.8vw, 25px);
	font-weight: 600;
	color: #001E60;
	text-align: center;
	letter-spacing: .025em;
}
.event__lead-link-wrap {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin-block-start: clamp(17px, 0.785rem + 1.19vw, 25px);
}
.event__lead-link {
	position: relative;
	display: inline-block;
	width: 440px;
	bottom: 0;
	padding-block: clamp(12px, 0.472rem + 1.19vw, 20px);
	border-radius: 100px;
	background: #FF0000;
	font-size: clamp(16px, 0.909rem + 0.45vw, 20px);
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	letter-spacing: .025em;
	box-shadow: 0px 3px 10px #00000066;
	transition: all .3s;
}
.event__lead-link:hover {
	bottom: -3px;
	opacity: .85;
	box-shadow: 0px 0px 0px #00000066;
}
.event__lead-link-box:nth-child(2) .event__lead-link {
	background: #9146FF;
}
.event__timeline {
	margin-block-start: clamp(40px, 1.111rem + 5.93vw, 80px);
}
.event__inner {
	margin-block-start: clamp(40px, 1.111rem + 5.93vw, 80px);
}
.event__subttl {
	display: flex;
	align-items: center;
	font-size: clamp(14px, 0.667rem + 0.89vw, 20px);
	color: #001E60;
	letter-spacing: var(--cts-font-ls-02);
	line-height: 1;
}
.event__date {
	--event-margin-l: clamp(32px, 1.375rem + 2.67vw, 50px);
	--event-margin-r: clamp(10px, 0.174rem + 1.93vw, 23px);
	--event-triangle-w: clamp(8px, 0.257rem + 1.04vw, 15px);
	position: relative;
	display: flex;
	align-items: flex-end;
	margin-inline-start: calc(var(--event-margin-l) + var(--event-triangle-w) + var(--event-margin-r));
	font-size: clamp(32px, 1.444rem + 2.37vw, 48px);
	font-family: var(--cts-font);
	font-weight: 900;
}
.event__date::before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 0;
	height: 0;
	top: 50%;
	left: calc((var(--event-triangle-w) + var(--event-margin-r)) * -1);
	border-style: solid;
	border-width: clamp(5px, 0.26rem + 0.22vw, 6.5px) 0 clamp(5px, 0.26rem + 0.22vw, 6.5px) var(--event-triangle-w);
	border-color: transparent transparent transparent #001E60;
	transform: translateY(-50%);
}
.event__date-week {
	padding-inline-start: .3em;
	font-size: clamp(22px, 0.924rem + 1.93vw, 35px);
}
.event__date-toggle {
	display: none;
}
.event__list {
	display: flex;
	flex-wrap: wrap;
	gap: 25px 20px;
	margin-block-start: clamp(13px, 0.743rem + 0.3vw, 15px);
}
.event__item {
	width: 100%;
	max-width: 440px;
	padding-block: 25px 30px;
	background: #fff;
	border-radius: 10px;
	color: #001E60;
	box-shadow: 0px 0px 6px #0000006B;
}
.event__time {
	display: inline-block;
	width: clamp(170px, 9.931rem + 2.96vw, 190px);
	padding-block: clamp(5.5px, 0.292rem + 0.22vw, 7px);
	padding-inline-start: clamp(25px, 1.389rem + 0.74vw, 30px);
	background: var(--cts-color-02);
	border-radius: 0 30px 30px 0;
	font-size: clamp(14px, 0.736rem + 0.59vw, 18px);
}
.event__detail {
	margin-block-start: 16px;
	padding-inline: clamp(25px, 1.389rem + 0.74vw, 30px);
	font-size: clamp(14px, 0.736rem + 0.59vw, 18px);
}
.event__txt {
	margin-block-start: 7px;
	font-size: clamp(12px, 0.681rem + 0.3vw, 14px);
	letter-spacing: .01em;
	line-height: 1.35;
}
.event__performer-ttl {
	font-size: clamp(12px, 0.681rem + 0.3vw, 14px);
	margin-block-start: 12px;
}
.event__performer-list {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(8px, 0.361rem + 0.59vw, 12px);
	margin-block-start: 4px;
}
.event__performer-item {
	max-width: clamp(82px, 4.224rem + 3.85vw, 86px);
}
.event__performer-item--vspo {
	max-width: inherit;
}
.event__performer-txt {
	margin-block-start: 3px;
	font-size: 10px;
}
.event__link-box {
	margin-block-start: 20px;
	text-align: center;
}
.event__link {
	position: relative;
	display: inline-block;
	width: clamp(270px, 16.528rem + 1.48vw, 280px);
	bottom: 0;
	padding-block: 10.5px;
	background: var(--cts-color-02);
	border-radius: 30px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	color: #001E60;
	transition: all .3s;
	box-shadow: 2px 3px 0px #001E60;
}
.event__link:hover {
	bottom: -2px;
	opacity: .85;
	box-shadow: 1px 1px 0px #001E60;
}
.event__link::after {
	content: "";
	position: absolute;
	width: 17px;
	height: 14px;
	top: 50%;
	right: 18px;
	background: url(../5info/img/tgs2022/event_link.png) no-repeat;
	background-size: cover;
	transform: translateY(-50%);
}


/* timetable
____________________*/
.contents--bg03 {
	background: url(../5info/img/tgs2022/bg_timetable.jpg) no-repeat;
	background-size: cover;
	color: #fff;
}
.timetable__inner + .timetable__inner .contents__subttl {
	margin-block-start: clamp(30px, 0.139rem + 7.41vw, 80px);
}
.timetable__img-box {
	margin-block-start: clamp(10px, 0.035rem + 2.52vw, 27px);
	text-align: center;
}
.timetable__detail {
	max-width: 800px;
	margin-block-start: clamp(30px, 0.139rem + 7.41vw, 80px);
	margin-inline: auto;
	padding: clamp(35px, 0.875rem + 5.6vw, 70px) 10px;
	background: #DBDF1A;
	color: #001E60;
	box-sizing: border-box;
}
.timetable__detail-ttl {
	font-size: clamp(16px, 0.909rem + 0.45vw, 20px);
	text-align: center;
}
.timetable__detail-inner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: clamp(30px, 0.75rem + 4.8vw, 60px);
	margin-block-start: clamp(15px, 0.375rem + 2.4vw, 30px);
}
.timetable__detail-01 {
	font-size: clamp(15px, 0.825rem + 0.48vw, 18px);
	font-weight: 600;
	line-height: 1.77;
}
.timetable__detail-02 {
	display: flex;
	gap: clamp(15px, 0.375rem + 2.4vw, 30px);
}
.timetable__detail-img-box {
	max-width: 125px;
	text-align: center;
}
.timetable__detail-img {
	border-radius: 10px;
}
.timetable__detail-img-txt {
	margin-block-start: clamp(5px, 0.2rem + 0.48vw, 8px);
}
.timetable__detail-note {
	margin-block-start: clamp(15px, 0.375rem + 2.4vw, 30px);
	text-align: center;
}


/* map
____________________*/
.contents--bg04 {
	background: url(../5info/img/tgs2022/bg_map.jpg) no-repeat;
	background-size: cover;
}
.map > * {
	max-width: 800px;
	margin-inline: auto;
}
.map__img-box {
	margin-block-start: clamp(15px, 0.556rem + 1.63vw, 26px);
	text-align: center;
}
.map__img-box + .map__img-box {
	margin-block-start: clamp(30px, 1.125rem + 3.2vw, 50px);
}
.map__note-ttl {
	margin-block-start: clamp(30px, 1.125rem + 3.2vw, 50px);
	font-size: clamp(15px, 0.825rem + 0.48vw, 18px);
	text-align: center;
	letter-spacing: .025em;
}
.map__note-txt {
	margin-block-start: clamp(5px, 0.2rem + 0.48vw, 8px);
	font-size: clamp(13px, 0.7rem + 0.48vw, 16px);
	letter-spacing: .025em;
}


/* model
____________________*/
.model__inner {
	max-width: 800px;
	margin-block-start: clamp(15px, 0.556rem + 1.63vw, 26px);
	margin-inline: auto;
}
.model__img-box {
	max-width: 650px;
	margin-inline: auto;
	text-align: center;
}
.model__list {
	max-width: 700px;
	margin-block-start: clamp(26px, 0.931rem + 2.96vw, 46px);
	margin-inline: auto;
}
.model__item {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-block: 11px;
	padding-inline: 28px;
	border-bottom: 1px solid var(--cts-color-02);
	color: #fff;
}
.model__name {
	width: 210px;
	font-size: 18px;
	letter-spacing: var(--cts-font-ls-02);
}
.model__spec-list {
	margin-inline-start: 25px;
	font-size: 12px;
	font-weight: 300;
	line-height: 1.25;
	letter-spacing: var(--cts-font-ls-02);
}
.model__link-box {
	margin-left: auto;
}
.model__catch.contents__subttl {
	margin-block-start: 15px;
	color: #fff;
}
.collab {
	margin-block-start: clamp(40px, 1.111rem + 5.93vw, 80px);
	padding-block: clamp(40px, 1.458rem + 4.44vw, 70px);
	padding-inline: var(--cts-gutter);
	background: var(--cts-color-02);
	color: #001E60;
	text-align: center;
}
.collab .contents__subttl {
	margin-block-start: 0;
}
.collab__txt {
	margin-block-start: 15px;
	font-size: clamp(14px, 0.806rem + 0.3vw, 16px);
}
.collab__link-box {
	margin-block-start: clamp(16px, 0.653rem + 1.48vw, 26px);
}
.collab__link {
	transition: all .3s;
}
.collab__link:hover {
	animation-name: hover-flash;
	animation-duration: 1s;
	opacity: .85;
}

.collab__note {
	margin-block-start: clamp(16px, 0.653rem + 1.48vw, 26px);
}


/* copy
____________________*/
.contents--game {
	padding-block-end: clamp(50px, 1.989rem + 5.68vw, 100px);
	background: #001134;
	color: #fff;
	text-align: center;
}
.game {
	width: 1100px;
}
.game__company {
	margin-block-start: clamp(35px, 1.392rem + 3.98vw, 70px);
	font-size: clamp(16px, 0.909rem + 0.45vw, 20px);
	font-weight: 600;
}
.game__company:first-child {
	margin-block-start: clamp(20px, 1.136rem + 0.57vw, 25px);
}
.game__item {
	margin-block-start: clamp(20px, 1.114rem + 0.68vw, 26px);
}
.contents__ttl--partner {
	margin-top: clamp(100px, 3.977rem + 11.36vw, 200px);
}
.partner__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(40px, 2.159rem + 1.7vw, 55px);
	margin-block-start: clamp(20px, 1.023rem + 1.14vw, 30px);
}
.partner__item img {
	display: inline-block;
	max-width: 300px;
}
.partner__item--wide img {
	max-width: 470px;
}
.partner__item--middle img {
	max-width: 400px;
}
.partner__item--middle-sqex {
	width: 100%;
}
.partner__link:hover {
	animation-name: hover-flash;
	animation-duration: 1s;
	opacity: .85;
}


/* copy
____________________*/
.contents--copy {
	background: #001134;
	padding-block-end: clamp(17px, 0.785rem + 1.19vw, 25px);
	font-size: clamp(12px, 0.681rem + 0.3vw, 14px);
	font-weight: 300;
	text-align: center;
	color: #fff;
}
.copy {
	width: 100%;
	padding-inline-end: 50px;
}
.copy__game-ttl {
	margin-block-start: 1.5em;
	font-size: 12px;
}
.copy__game {
	margin-block-start: .5em;
	font-size: 10px;
}
.copy__txt {
	padding-block-start: 5em;
}


/* anchor
____________________*/
.pagetop__box {
	position: fixed;
	bottom: 70px;
	right: 50px;
	opacity: 0;
	visibility: hidden;
	z-index: 1000;
	transition: all .3s;
}
.pagetop__box.is-active {
	opacity: 1;
	visibility: visible;
}
.pagetop__anchor {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: clamp(2px, 0.021rem + 0.44vw, 5px);
	width: clamp(50px, 2.083rem + 4.44vw, 80px);
	height: clamp(50px, 2.083rem + 4.44vw, 80px);
	bottom: 0;
	background: var(--cts-color-02);
	border: clamp(1px, 0.028rem + 0.15vw, 2px) solid #ACACAC;
	border-radius: 50%;
	font-size: clamp(12px, 0.646rem + 0.44vw, 15px);
	font-weight: 600;
	text-align: center;
	color: #001E60;
	text-decoration: none;
	line-height: 1.07;
	transition: all .3s;
	z-index: 1000;
}
.pagetop__anchor:hover {
	bottom: -3px;
	opacity: .85;
}
.pagetop__anchor span {
	color: #001E60;
}
.pagetop__anchor-triangle {
	position: relative;
	width: clamp(4px, 0.181rem + 0.3vw, 6px);
	height: clamp(4px, 0.181rem + 0.3vw, 6px);
	border: clamp(1.5px, 0.076rem + 0.07vw, 2px) solid;
	border-color: #001E60 #001E60 transparent transparent;
	transform: rotate(-45deg);
}


.end {
	font-size: clamp(15px, 0.825rem + 0.48vw, 18px);
	font-weight: 600;
}


/* モバイル
____________________*/
@media (max-width: 479px) {
	#s_container {
		margin: auto;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}

	.mv__sp {
		margin-block-start: 50px;
	}
	.contents--nav.sp {
		position: fixed;
		width: 100%;
		top: 0;
		padding-block: 16px;
		background: #001E60;
		z-index: 20000;
	}
	.nav--sp {
		position: relative;
		cursor: pointer;
		display: block;
		width: 40px;
		height: 18px;
		margin-inline: auto;
		z-index: 20000;
	}
	.nav--sp span {
		position: absolute;
		display: inline-block;
		width: 100%;
		height: 2px;
		background: var(--cts-color-02);
		transition: all .3s;
	}
	.nav--sp span:first-child {
		top: 0;
	}
	.nav--sp span:nth-child(2) {
		top: 8px;
	}
	.nav--sp span:last-child {
		bottom: 0;
	}
	.nav--sp.is-active span:first-child {
		transform: translateY(8px) rotate(-45deg);
	}
	.nav--sp.is-active span:nth-child(2) {
		opacity: 0;
	}
	.nav--sp.is-active span:last-child {
		transform: translateY(-8px) rotate(45deg);
	}
	.nav__list-sp {
		position: absolute;
		width: 100%;
		top: -100vh;
		background: #001E60;
		opacity: 0;
		z-index: -1;
		transition: all .3s;
	}
	.nav--sp.is-active + .nav__list-sp {
		top: 50px;
		opacity: 1;
		z-index: 15000;
	}
	.nav__item-sp {
		text-align: center;
	}
	.nav__anchor-sp {
		display: inline-block;
		width: 60%;
		padding-block: 25px;
		border-bottom: 1px solid var(--cts-color-02);
		font-size: 14px;
		font-weight: 300;
		text-decoration: none;
		letter-spacing: .1em;
	}
	.nav__item-sp:last-child .nav__anchor-sp {
		border: none;
	}
	.nav--sp-overlay {
		position: relative;
		width: 100%;
		height: 100%;
		transition: all .3s;
		z-index: 10000;
	}
	.nav--sp-overlay::before {
		content: "";
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background: rgba(0,0,0,0);
		transition: all .3s;
		z-index: -1;
	}
	.nav--sp-overlay.is-active::before {
		background: rgba(0,0,0,.7);
		z-index: 10000;
	}

	.contents__subttl--concept {
		font-size: clamp(14px, 0.623rem + 1.26vw, 16px);
	}
	.concept__txt {
		font-size: clamp(16px, 0.497rem + 2.52vw, 20px);
	}
	.about__detail {
		display: block;
		text-align: center;
	}
	.about__item {
		display: inline-block;
		width: 280px;
		border-right: 2px solid var(--cts-color-02);
	}
	.about__item + .about__item {
	margin-block-start: 15px;
	}
	.about__detail--place .about__item {
		width: 300px;
	}
	.guest__vspo-box img {
		margin-inline: auto;
	}
	.guest__item {
		width: clamp(120px, -2.867rem + 44.23vw, 166px);
	}
	.campaign__list {
		flex-direction: column;
		align-items: center;
	}
	.campaign__item {
		width: clamp(220px, 9.243rem + 19.23vw, 240px);
	}
	.event__list {
		display: block;
		transition: all .3s;
	}
	.event__list.is-hidden {
		display: none;
	}
	.event__item {
		width: max(300px,100%);
	}
	.event__item + .event__item {
		margin-block-start: 25px;
	}
	.event__date-toggle {
		position: relative;
		display: inline-block;
		width: 24px;
		height: 24px;
		bottom: 0;
		margin-inline-start: 15px;
		background: #fff;
		border: 1px solid #001E60;
		box-shadow: 1px 2px 0px #001E60;
		cursor: pointer;
		transition: all .3s;
	}
	.event__date-toggle.is-active {
		bottom: -2px;
		box-shadow: 0px 0px 0px #001E60;
	}
	.event__date-toggle-line {
		position: absolute;
		display: inline-block;
		width: 14px;
		height: 2px;
		top: 50%;
		left: 50%;
		background: #001E60;
		transform: translate(-50%);
		transition: all .3s;
	}
	.event__date-toggle-line:last-child {
		transform: translate(-50%) rotate(0deg);
	}
	.event__date-toggle.is-active .event__date-toggle-line:last-child {
		transform: translate(-50%) rotate(90deg);
	}

	.event__link {
		width: 100%;
	}
	.model__item {
		display: grid;
		grid-template-columns: 1fr 125px;
		grid-row-gap: 5px;
		padding-inline: 7px;
	}
	.model__name {
		grid-column: 1/3;
		grid-row: 1/2;
		width: 100%;
	}
	.model__spec-list {
		margin-inline-start: 0;
	}
	.model__link-box {
		width: 100%;
	}
	.model__link-box .link__inner {
		padding-inline: 10px;
		font-size: 10px;
		letter-spacing: .015em;
	}
	.game {
		width: 80%;
	}
	.partner__item.partner__item--wide,
	.partner__item.partner__item--middle {
		width: 100%;
	}
	.partner__item {
		width: 70%;
	}
	.contents--copy {
		text-align: center;
	}
	.copy {
		padding-inline: var(--cts-gutter);
	}
	.pagetop__box {
		bottom: 35px;
		right: 20px;
	}
	.news__detail {
		max-width: min(95%,270px);
	}
	.about__camp-anchor-link {
		font-size: clamp(16px, -0.455rem + 7.27vw, 20px);
	}
	.guest__item.guest__item-vspo {
		width: min(100%,396px);
	}
	.event__lead-link-wrap {
		flex-wrap: wrap;
	}
	.event__lead-link {
		width: clamp(17.5rem, 4.921rem + 62.89vw, 23.75rem);
	}
	.timetable__detail-inner {
		flex-direction: column;
	}
}


/* fade
____________________*/
.fade {
	opacity: 0;
	transform: translateY(50px);
	transition: all .5s ease;
}
.fade.fadeShow {
	transform: translateY(0);
	opacity: 1;
}
.fade--bg::after {
	opacity: 0;
	transform: translateX(-100px);
	transition: all 1.3s ease;
}
.fade--bg.fadeShow::after {
	transform: translateX(0);
	opacity: 1;
}
.fade--chart {
	transform: scale(0);
	transition: all 1s ease;
}
.fade--chart.fadeShow {
	transform: scale(1);
}



