@charset "UTF-8";

/* ================================
			Common
================================ */
html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	overflow-y: scroll;
	font-size: 62.5%;
}

body {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "verdana", sans-serif;
	width: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	/* font-size: 1.6rem; */
	line-height: 1.8;
	font-weight: 500;
	color: rgba(35, 24, 21, 1);
	margin: 0;
	-webkit-font-smoothing: antialiased;
	position: relative;
}

/*
100	Thin
300	Light
400	Regular
500	Medium
700	Bold
900	Black */

.Content {
	overflow: hidden;
}

a {
	text-decoration: none;
	transition: all .2s ease-out;
	text-decoration: none;
}

a:hover {
	transition: all .2s ease-out;
	cursor: pointer;
}

ol,
ul,
li {
	list-style: none;
	padding: 0;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

._pc {
	display: block;
}

.s ._pc {
	display: none;
}

._sp {
	display: none;
}

.s ._sp {
	display: block;
}

.HiddenText {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* ================================
			PopIn
================================ */
.PopIn {
	transition: 0.5s;
	transform: scale(3);
	opacity: 0;
}

.PopIn.ZoomIn {
	transform: scale(1);
	opacity: 1;
}


.SlideInL1,
.SlideInL2 {
	transition: 0.8s;
	transform: translate(-100%, 0);
	opacity: 0;
}

.SlideInL1.ZoomIn,
.SlideInL2.ZoomIn {
	transform: translate(0, 0);
	opacity: 1;
}

.SlideInR1,
.SlideInR2 {
	transition: 0.8s;
	transform: translate(100%, 0);
	opacity: 0;
}

.SlideInR1.ZoomIn,
.SlideInR2.ZoomIn {
	transform: translate(0, 0);
	opacity: 1;
}

.MvFloat {
	animation: floatUpDown 1.5s ease-in-out infinite;
	display: inline-block;
}

.s .MvFloat {
	animation: floatUpDownSp 1.5s ease-in-out infinite;
	display: inline-block;
}

@keyframes floatUpDown {
	0% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-10px);
	}

	100% {
		transform: translateY(0);
	}
}

@keyframes floatUpDownSp {
	0% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-4px);
	}

	100% {
		transform: translateY(0);
	}
}

/* ================================
			FadeIn
================================ */

.FadeIn {
	opacity: 0;
}

.FadeIn.Center {
	opacity: 0;
	transform: scale(0.9);
}

.FadeIn.UpDown {
	opacity: 0;
	transform: translate(0, -50px);
}

.FadeIn.DownUp {
	opacity: 0;
	transform: translate(0, 50px);
}

.FadeIn.SlideRight {
	transform: translate(50px, 0);
}

.FadeIn.SlideLeft {
	transform: translate(-10px, 0);
}

.FadeIn.ScrollIn {
	opacity: 1;
	transform: translate(0, 0);
	transform: scale(1);
	transition: all 800ms;
}

.FadeInOrder {
	opacity: 0;
}

.FadeInOrder.Center {
	opacity: 0;
	transform: scale(0.9);
}

.FadeInOrder.UpDown {
	opacity: 0;
	transform: translate(0, -50px);
}

.FadeInOrder.DownUp {
	opacity: 0;
	transform: translate(0, 50px);
}

.FadeInOrder.SlideRight {
	transform: translate(50px, 0);
}

.FadeInOrder.SlideLeft {
	transform: translate(-10px, 0);
}

.FadeInOrder.ScrollIn {
	opacity: 1;
	transform: translate(0, 0);
	transform: scale(1);
	transition: all 800ms;
}

/* ================================
        Layout
================================ */
.Center {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	max-width: 1020px;
	position: relative;
}

.s .Center {
	padding-left: 4vw;
	padding-right: 4vw;
}

/* ================================
			Header
================================ */
#Content .attention_box {
	font-family: YuGothic, "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-weight: 200;
	font-size: 1.2rem;
	line-height: 1.5;
	width: 100%;
	max-width: 1150px;
	margin: 0 auto;
	color: rgba(0, 0, 0, 1);
	background-color: rgba(255, 255, 255, 1);
	padding: 1vw;
}

#Content .attention_box a {
	color: rgba(0, 0, 0, 1);
	text-decoration: underline;
}

@media screen and (max-width:1000px) {
	#Content .attention_box {
		padding: 20px 2vw;
	}

	#Content .attention_box p {
		width: fit-content;
		margin: 0 auto;
	}
}

.sr-only {
	border: 0 !important;
	clip: rect(0, 0, 0, 0) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	white-space: nowrap !important;
	width: 1px !important;
}

/* ================================
       Mv
================================ */
.Mv {
	background: url(../img/mv-bg.png);
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	aspect-ratio: 2880 / 1619;
	background-size: 100%;
	background-position: top center;
	position: relative;
}

.s .Mv {
	background: url(../img/mv-bg-sp.png);
	background-repeat: no-repeat;
	aspect-ratio: 750 / 1084;
	background-position: bottom center;
	background-size: 100%;
}

.MvBg {
	width: 100%;
	height: 100%;
	background: url(../img/mv-flag.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	aspect-ratio: 2880 / 375;
	background-position: top center;
}

.s .MvBg {
	width: 100%;
	background: url(../img/mv-flag-sp.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	aspect-ratio: 750 / 141;
	background-position: top center;
}

.MvInner {
	width: 100%;
	height: 100%;
	background: url(../img/mv-paper.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	aspect-ratio: 2880 / 1155;
	background-position: top center;

}

.s .MvInner {
	background: url(../img/mv-paper-sp.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	/* aspect-ratio: 750 / 982; */
	background-position: top 8.93vw center;
}

/* Inner Logo */
.MvContentList {
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translateX(3.9vw);
	padding-top: 1.2vw;
}

.s .MvContentList {
	display: flex;
	transform: translateX(0);
	padding-top: 19.3vw;
	position: relative;
	z-index: 5;
}

#Mv h1 {
	width: 49.3vw;
	margin: 0 auto;
	line-height: 1;
	position: relative;
	z-index: 2;
}

.s #Mv h1 {
	width: 93.3vw;
	position: relative;
	transform: translateY(2vw);
}

.MvContentList li div {
	position: relative;
	z-index: 1;
}

.MvContentList li:nth-of-type(1) {
	width: 17vw;
	transform: translate(3vw, 1.5vw);
}

.s .MvContentList li:nth-of-type(1) {
	position: absolute;
	top: 0;
	left: 0;
	width: 25.5vw;
	transform: translate(-1vw, 14.3vw);
}

.MvContentList li:nth-of-type(3) {
	width: 22.8vw;
	transform: translate(-6.5vw, 2.5vw);
}

.s .MvContentList li:nth-of-type(3) {
	position: absolute;
	top: 0;
	right: 0;
	width: 32.3vw;
	transform: translate(7vw, 16vw);
}


/* Inner Info */
.MvItemList {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 3vw;
	z-index: 1;
}

.s .MvItemList {
	display: flex;
	align-items: flex-start;
	position: relative;
	z-index: 1;
}

.MvItemList li:nth-of-type(1) {
	width: 21.8vw;
	transform: translateX(-1.2vw);
}

.s .MvItemList li:nth-of-type(1) {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 33.6vw;
	transform: translate(-6.8vw, 33vw);
	z-index: -1;
}

.MvItemList li:nth-of-type(3) {
	width: 18.27vw;
	transform: translate(1.2vw, 0.5vw);
}

.s .MvItemList li:nth-of-type(3) {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 28vw;
	transform: translate(3vw, 17vw);
	z-index: 10;
}

.MvContentInfo {
	display: block;
	width: 32.6vw;
	margin: 0 auto;
	position: relative;
	z-index: 3;
	transform: translate(-3vw, -4.5vw);
}

.s .MvContentInfo {
	width: 53.9vw;
	transform: translate(-3vw, 9vw);
}

.MvContentInfo div:nth-of-type(1) {
	padding-bottom: 5px;
}


.MvContentInfo div:nth-of-type(2) {
	display: block;
	width: 31.8vw;
	margin: 0 auto;
}

.s .MvContentInfo div:nth-of-type(2) {
	width: 65.1vw;
}

/* Credit / Logo */
.MvCreditList li {
	position: absolute;

}

/* .MvCreditList li:nth-of-type(1) {
	width: 12.84vw;
	left: 1.4vw;
	top: 1.4vw;
} */

/* .s .MvCreditList li:nth-of-type(1) {
	width: 24vw;
	left: 1.6vw;
	top: 2.67vw;
} */

/* .MvCreditList li:nth-of-type(2) {
	width: 10.6vw;
	right: 1.4vw;
	top: 1.4vw;
} */

/* .s .MvCreditList li:nth-of-type(2) {
	width: 17.7vw;
	right: 1.6vw;
	top: 2.67vw;
} */

.MvCreditList li.copyright {
	width: 19.4vw;
	left: 0;
	right: 0;
	bottom: 0.69vw;
	margin: 0 auto;
}

.s .MvCreditList li.copyright {
	width: 39.9vw;
	bottom: 1vw;
}

/* Ornament */
.MvOrnametList li {
	position: absolute;
	z-index: 0;
}

.MvOrnametList li:nth-of-type(1) {
	width: 9.86vw;
	left: 3.05vw;
	top: 12.85vw;
}

.s .MvOrnametList li:nth-of-type(1) {
	width: 14vw;
	left: 1vw;
	top: 81vw;
}

.MvOrnametList li:nth-of-type(2) {
	width: 12.7vw;
	left: 19.44vw;
	bottom: 1.32vw;
}

.s .MvOrnametList li:nth-of-type(2) {
	width: 17.7vw;
	left: 28.44vw;
	bottom: 3.8vw;
}

.MvOrnametList li:nth-of-type(3) {
	width: 11.7vw;
	right: 17.7vw;
	bottom: 1.32vw;
}

.s .MvOrnametList li:nth-of-type(3) {
	width: 16.3vw;
	right: 25.7vw;
	bottom: 3.8vw;
}

/* ================================
       Lead
================================ */
.Lead {
	position: relative;
	background: rgba(19, 162, 241, 1) url(../img/lead-bg.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	/* aspect-ratio: 2810 / 5730; */
	width: 100%;
	background-position: top 10px center;
	position: relative;
	z-index: 1;
}

.s .Lead {
	position: relative;
	background: rgba(19, 162, 241, 1) url(../img/lead-bg-sp.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top 1.3vw center;
	position: relative;
	z-index: 1;
}

.LeadOrnamentArea li {
	position: absolute;
}

.LeadOrnamentArea li:nth-of-type(1) {
	bottom: 5vw;
	left: 0;
	max-width: 168px;
}

.s .LeadOrnamentArea li:nth-of-type(1) {
	bottom: 4vw;
	max-width: 12.8vw;
}

.LeadOrnamentArea li:nth-of-type(2) {
	bottom: 5vw;
	right: 0;
	max-width: 192px;
}

.s .LeadOrnamentArea li:nth-of-type(2) {
	bottom: 3vw;
	max-width: 15.6vw;
}

.LeadInner {
	padding: 100px 0 160px;
}

.s .LeadInner {
	padding: 11.1vw 0 25.6vw;
}

.LeadLogo {
	max-width: 993px;
	margin: 0 auto;
	padding-bottom: 20px;
}

/* .LeadLogo img {
	transform: translateX(-3vw);
} */

.s .LeadLogo {
	max-width: 92.1vw;
	padding-bottom: 2vw;
}

.LeadTitle {
	max-width: 177px;
	margin: 0 auto;
	padding-bottom: 20px;
	position: relative;
}

.s .LeadTitle {
	max-width: 23.5vw;
	padding-bottom: 1.3vw;
}

.LeadTitle::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 43px;
	height: 25.5px;
	background: url(../img/icon-titledeco.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: right center;
	transform: translate(25px, -25px);
}

.s .LeadTitle::after {
	width: 5.87vw;
	height: 3.6vw;
	transform: translate(100%, -100%);
}

.LeadText {
	max-width: 608px;
	margin: 0 auto;
	padding-bottom: 40px;
}

.s .LeadText {
	max-width: 73.73vw;
	padding-bottom: 2.67vw;
}

.LeadTerm {
	max-width: 874px;
	margin: 0 auto;
	margin-bottom: 50px;
}

.s .LeadTerm {
	max-width: 93.3vw;
}

.LeadPkgArea {
	position: relative;
	background: url(../img/lead-pkg-bg.png);
	background-size: 100%;
	aspect-ratio: 1958 /1298;
	max-width: 979px;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top center;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	flex-direction: column;
}

.s .LeadPkgArea {
	position: relative;
	background: url(../img/lead-pkg-bg-sp.png);
	background-size: 100%;
	aspect-ratio: 689 /934;
	max-width: 91.86vw;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top center;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	flex-direction: column;
}


.LeadPkgTextArea {
	position: absolute;
	bottom: 0;
	transform: translateY(-80%);
}

.s .LeadPkgTextArea {
	transform: translateY(-21vw);
}

.LeadPkgText {
	font-size: clamp(1.4rem, 1.82vw, 2rem);
	margin-bottom: 1vw;
	letter-spacing: -0.069vw;
	font-weight: 500;
}

.s .LeadPkgText {
	font-size: 3.73vw;
	line-height: 1.4;
	letter-spacing: 0;
}

.LeadPkgText span {
	font-weight: 900;
}

.LeadPkgNote {
	font-size: clamp(1.1rem, 1.43vw, 1.4rem);
	font-weight: 300;
}

.s .LeadPkgNote {
	font-size: 3.2vw;
	letter-spacing: -0.2vw;
	line-height: 1.4;
}



/* ================================
       About
================================ */
.About {
	margin-top: -8.6vw;
}

.AboutBg {
	position: relative;
	background: url(../img/about-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top center;
	position: relative;
	z-index: 1;
	padding-bottom: 12.5vw;
}

.s .AboutBg {
	position: relative;
	background: url(../img/about-bg-sp.png);
	background-size: 100%;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top center;
	position: relative;
	z-index: 1;
	padding-bottom: 12.5vw;
}

.AboutBg::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/about-bg-paper.png);
	background-size: 97.81vw auto;
	background-repeat: no-repeat;
	/* aspect-ratio: 2797 / 5752; */
	background-position: top 6vw center;
	z-index: -1;
}

.s .AboutBg::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/about-bg-paper-sp.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	/* aspect-ratio: 2797 / 5752; */
	background-position: top 5vw center;
	z-index: -1;
}

#About h2 {
	max-width: 715px;
	width: 68vw;
	margin: 0 auto;
	padding-top: 11.1vw;
	padding-bottom: 50px;
	position: relative;
	left: 25px
}

.s #About h2 {
	max-width: 82.5vw;
	width: 100%;
	padding-top: 17.7vw;
	padding-bottom: 6.6vw;
	left: 4vw;
}

.AboutList {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	font-weight: 500;
}

.s .AboutList {
	flex-wrap: wrap;
	gap: 8.33vw;
}

.AboutList._upper {
	padding-bottom: 90px;
}

.s .AboutList._upper {
	padding-bottom: 12.4vw;
}

.AboutList li {
	width: 50%;
	text-align: center;
}

.s .AboutList li {
	width: 100%;
}

.AboutList li h3 {
	padding-bottom: 20px;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: center;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
}

.s .AboutList li h3 {
	padding-bottom: 4.8vw;
	font-size: 4.27vw;
}

.AboutList li:nth-of-type(1) h3 span:nth-of-type(1) {
	max-width: 254px;
	margin-right: 10px;
}

.s .AboutList li:nth-of-type(1) h3 span:nth-of-type(1) {
	max-width: 33.9vw;
	margin-right: 2.27vw;
}

.AboutList li:nth-of-type(2) h3 span:nth-of-type(1) {
	max-width: 222px;
	margin-right: 10px;
}

.s .AboutList li:nth-of-type(2) h3 span:nth-of-type(1) {
	max-width: 29.6vw;
	margin-right: 2.27vw;
}

.AboutList li div {
	font-size: clamp(1.4rem, 1.82vw, 2rem);
}

.s .AboutList li div {
	font-size: 3.73vw;
	letter-spacing: -0.8px;
	line-height: 1.6;
}

.AboutList li div span {
	font-weight: 900;
}

.AboutList._lower {
	padding-bottom: 50px;
}

.s .AboutList._lower {
	padding-bottom: 10.67vw;
}

.AboutList._lower li p:nth-of-type(2) {
	max-width: 469px;
	margin: 0 auto;
	padding-top: 45px
}

.AboutList._lower li p:nth-of-type(2) {
	max-width: 92vw;
	padding-top: 5.33vw;
}

#About h4 {
	max-width: 161px;
	margin: 0 auto;
	padding-bottom: 35px;
}

.s #About h4 {
	max-width: 28.5vw;
	padding-bottom: 3.73vw;
}

/* ================================
       Sport
================================ */
.Sport {
	position: relative;
	z-index: 1;
}

.Sport::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/sport-bg-head.png);
	background-repeat: no-repeat;
	background-position: top 0 left 0;
	background-size: 100%;
	aspect-ratio: 2880 / 238;
	width: 100%;
	height: 100%;
	bottom: 100%;
	height: auto;
	z-index: 0;
}

.s .Sport::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/sport-bg-head-sp.png);
	background-repeat: no-repeat;
	background-position: top 0 left 0;
	background-size: 100%;
	aspect-ratio: 750 / 134;
	width: 100%;
	height: 100%;
	bottom: 100%;
	height: auto;
	z-index: 0;
}

.Sport::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	aspect-ratio: 2880 / 280;
	background: url(../img/shop-bg-head.png) no-repeat;
	background-size: 100% auto;
	background-position: top left;
	display: block;
	transform: translateY(-99%);
	z-index: 1;
}

.SportBg {
	background: rgba(19, 162, 241, 1);
	position: relative;
	z-index: 1;
}

.SportBg::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/sport-bg.png);
	background-size: 100% auto;
	background-repeat: repeat-y;
	background-position: top center;
	z-index: 0;
}

.s .SportBg::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/sport-bg-sp.png);
	background-size: 100%;
	background-repeat: repeat-y;
	background-position: top center;
	z-index: -1;
}

.SportInner {
	padding: 90px 0 14.58vw;
}

.s .SportInner {
	padding: 0 0 20.5vw;
}

.SportTitleBg {
	background-image: url(../img/sport-star.png);
	background-size: 100%;
	width: 100%;
	max-width: 1100px;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top center;
	margin: 0 auto;
}

.s .SportTitleBg {
	background-image: url(../img/sport-star-sp.png);
	background-size: 100%;
	width: 100%;
	background-repeat: no-repeat;
	width: 100%;
	background-position: top center;
	z-index: 2;
	padding-top: 8.93vw;
}

.SportOrnamentArea li {
	position: absolute;
}

.SportOrnamentArea li:nth-of-type(1) {
	top: 0;
	left: 0;
	max-width: 86px;
	width: 7.29vw;
	transform: translate(238.9%, 5.45%);
	z-index: 12;
}

.s .SportOrnamentArea li:nth-of-type(1) {
	max-width: 9.3vw;
	width: 100%;
	transform: translate(15.6vw, 2.4vw);
}

.SportOrnamentArea li:nth-of-type(2) {
	top: 0;
	right: 0;
	max-width: 101px;
	width: 9.24vw;
	transform: translate(-105.97%, 45%);
	z-index: 12;
}

.s .SportOrnamentArea li:nth-of-type(2) {
	max-width: 10.8vw;
	width: 100%;
	transform: translate(-10vw, 14.9vw);
}

.SportOrnamentArea li:nth-of-type(3) {
	top: 0;
	left: 0;
	max-width: 109px;
	width: 10.28vw;
	transform: translate(51.97%, 168%);
	z-index: 12;
}

.s .SportOrnamentArea li:nth-of-type(3) {
	max-width: 11.7vw;
	width: 100%;
	transform: translate(6.67vw, 24.8vw);
}

#Sport h2 {
	max-width: 469px;
	margin: 0 auto;
	padding-bottom: 70px;
}

.s #Sport h2 {
	max-width: 50.5vw;
	padding-bottom: 5.1vw;
}

.SportProduct1 {
	max-width: 900px;
	margin: 0 auto;
	z-index: -1;
	position: relative;
}

.s .SportProduct1 {
	max-width: 100%;
}

.SportProduct2 {
	max-width: 787.5px;
	margin: 0 auto;
	transform: translateY(-12%);
	z-index: -1;
	position: relative;
}

.s .SportProduct2 {
	max-width: 87.1vw;
	transform: translateY(-18%);
	margin: 0 -2vw;
}

.SportProduct4 {
	max-width: 770px;
	margin: 0 auto;
	transform: translateY(-12%);
	z-index: -1;
	position: relative;
}

.s .SportProduct4 {
	max-width: 86.1vw;
	transform: translateY(-18%);
	margin: 0 -3vw;
}

.SportProduct2Subtitle {
	max-width: 335px;
	margin: 0 auto;
	margin-top: -19%;
	position: relative;
	padding-bottom: 14px;
}

.s .SportProduct2Subtitle {
	max-width: 58.8vw;
	margin-top: -28vw;
	padding-bottom: 2.93vw;
}

.SportOrnament li {
	width: 18px;
	position: absolute;
}

.s .SportOrnament li {
	width: 7px;
	position: absolute;
}

.SportOrnament li:nth-of-type(1) {
	top: 10px;
	left: 10px;
}

.SportOrnament li:nth-of-type(2) {
	top: 10px;
	right: 10px;
}

.SportOrnament li:nth-of-type(3) {
	bottom: 10px;
	right: 10px;
}

.SportOrnament li:nth-of-type(4) {
	bottom: 10px;
	left: 10px;
}

.s .SportOrnament li:nth-of-type(1) {
	top: 4px;
	left: 4px;
}

.s .SportOrnament li:nth-of-type(2) {
	top: 4px;
	right: 4px;
}

.s .SportOrnament li:nth-of-type(3) {
	bottom: 4px;
	right: 4px;
}

.s .SportOrnament li:nth-of-type(4) {
	bottom: 4px;
	left: 4px;
}

.SportBadge {
	max-width: 136px;
	width: 12vw;
	position: absolute;
	top: 6%;
	right: 2%
}

@media screen and (min-width:769px) and (max-width:1000px) {
	.SportBadge {
		top: 4%;
	}
}

.s .SportBadge {
	max-width: 18.1vw;
	width: 100%;
	top: -1.2vw;
	right: 1.2vw;
}

.SportBadgeLimited {
	max-width: 136px;
	width: 12vw;
	position: absolute;
	top: 3%;
	right: 2%
}

.s .SportBadgeLimited {
	max-width: 18.1vw;
	width: 100%;
	top: -1.6vw;
	right: 1.2vw;
}

.SportList {
	display: flex;
	text-align: center;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-bottom: 30px;
	background: url(../img/SportGradationBoxInner-bg.png) no-repeat left 20% center/contain;
}

.s .SportList {
	flex-direction: column;
	gap: 4vw;
	margin-bottom: 2vw;
	padding-top: 6.8vw;
	background: url(../img/SportGradationBoxInner-bg.png) no-repeat top center/100% 35%;
}

#Sport .SportList:last-child {
	margin-bottom: 0;
}

.SportListTitle {
	font-size: clamp(2.4rem, 3.125vw, 2.8rem);
	font-weight: 900;
	line-height: 1;
	padding-bottom: 15px;
}

.s .SportListTitle {
	font-size: 4vw;
	padding-bottom: 2vw;
}

.SportListText {
	font-size: clamp(1.5rem, 1.95vw, 1.8rem);
	letter-spacing: -1px;
	font-weight: 500;
}

.s .SportListText {
	font-size: 3.47vw;
}

@media screen and (min-width:500px) and (max-width:768px) {
	.s .SportListText {
		font-size: 3.2vw;
	}
}

.s .SportGradationArea._second .SportListText {
	letter-spacing: -1.6px;
}

.SportList li:nth-of-type(1) {
	flex: 0 1 400px;
}

.s .SportList li:nth-of-type(1) {
	flex: unset;
}

.SportList li:nth-of-type(2) {
	flex: auto;
	max-width: 312px;
}

.s .SportList li:nth-of-type(2) {
	max-width: 100%;
}




.SportNoteList li {
	font-size: 1.4rem;
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
	max-width: 750px;
	margin: 0 auto;
	letter-spacing: -1.5px;
	text-align: left;
	font-weight: 300;
}

.s .SportNoteList li {
	font-size: 3.2vw;
	letter-spacing: -0.8px;
}

.SportGradationArea._fourth .SportNoteList {
	margin-top: -12%;
}

.s .SportGradationArea._fourth .SportNoteList {
	margin-top: -25%;
}

.SportNoteList._ac li {
	text-align: center;
}

.SportGradationArea {
	position: relative;
}

.SportGradationArea._first .SportGradationBox {
	background: rgba(255, 255, 255, 1);
	border: solid 5px rgba(35, 24, 21, 1);
	margin-bottom: 60px;
	position: relative;
	text-align: center;
	z-index: 10;
}

.s .SportGradationArea._first .SportGradationBox {
	border: solid 3px rgba(35, 24, 21, 1);
	margin-bottom: 6.67vw;
}


.SportGradationArea._second .SportGradationBox {
	background: rgba(255, 255, 255, 1) url(../img/sport-box-dot2.png);
	background-size: 100%;
	background-repeat: no-repeat;
	aspect-ratio: 1974 / 1422;
	background-position: bottom -27vw center;
	background-position: bottom -27vw center;
	width: 100%;
	border: solid 5px rgba(35, 24, 21, 1);
	margin-bottom: 60px;
	position: relative;
	text-align: center;
	z-index: 10;
}

.s .SportGradationArea._second .SportGradationBox {
	background: rgba(255, 255, 255, 1) url(../img/sport-box-dot2-sp.png);
	background-size: 100%;
	background-repeat: no-repeat;
	aspect-ratio: 750 / 1141;
	background-position: bottom -27vw center;
	border: solid 3px rgba(35, 24, 21, 1);
	margin-bottom: 6.67vw;
}

.SportGradationArea._third .SportGradationBox,
.SportGradationArea._fourth .SportGradationBox {
	background: rgba(255, 255, 255, 1) url(../img/sport-box-dot1.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: bottom center;
	width: 100%;
	border: solid 5px rgba(35, 24, 21, 1);
	margin-bottom: 60px;
	position: relative;
	text-align: center;
	z-index: 10;
}

.s .SportGradationArea._third .SportGradationBox,
.s .SportGradationArea._fourth .SportGradationBox {
	background: rgba(255, 255, 255, 1) url(../img/sport-box-dot1-sp.png);
	background-size: 100%;
	background-repeat: no-repeat;
	aspect-ratio: 750 / 711;
	background-position: bottom center;
	width: 100%;
	border: solid 3px rgba(35, 24, 21, 1);
	margin-bottom: 6.67vw;
}


.SportGradationArea._first .SportCloud {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 428px;
	width: 29.7vw;
	transform: translateY(-8vw);
	z-index: -1;
}

.s .SportGradationArea._first .SportCloud._first {
	max-width: 39.1vw;
	width: 100%;
	transform: translateY(43.2vw);
}

.s .SportGradationArea._first .SportCloud._second {
	top: auto;
	bottom: 0;
	left: 0;
	max-width: 29.9vw;
	width: 100%;
	transform: translateY(-36vw);
}




.SportGradationArea._second .SportCloud {
	position: absolute;
	top: 0;
	left: 0;
	max-width: 438px;
	width: 30.4vw;
	transform: translateY(-40vw);
	z-index: -1;
}


.s .SportGradationArea._second .SportCloud._first {
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	max-width: 39.1vw;
	width: 100%;
	transform: translateY(31.2vw);
}

.s .SportGradationArea._second .SportCloud._second {
	position: absolute;
	top: 0;
	left: 0;
	max-width: 29.9vw;
	width: 100%;
	transform: translateY(141.6vw);
}

.s .SportGradationArea._second .SportCloud._third {
	position: absolute;
	top: auto;
	bottom: 0;
	left: auto;
	right: 0;
	max-width: 39.1vw;
	width: 100%;
	transform: translateY(-67vw);
}

.SportGradationArea._third .SportCloud {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 428px;
	width: 29.7vw;
	transform: translateY(-35vw);
	z-index: -1;
}



.SportGradationBoxInner {
	padding: 45px 35px;
}

@media screen and (min-width:769px) and (max-width:1000px) {
	.SportGradationBoxInner {
		padding: 45px 30px;
	}
}

.s .SportGradationBoxInner {
	padding: 6.93vw 5vw;
}

.s .SportGradationArea._second .SportGradationBoxInner {
	padding: 12.8vw 6vw 6.93vw 5vw;
}



.SportTitleList {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	transform: translateX(-1vw);
}

.s .SportTitleList {
	gap: 2.53vw;
	justify-content: flex-start;
	transform: translateX(2vw);
}

.SportTitleList li:first-child {
	max-width: 54.5px;
	width: 5vw;
}

.s .SportTitleList li:first-child {
	max-width: 9.06vw;
	width: 100%;
}

.SportGradationArea h3 {
	font-size: clamp(2.6rem, 3.38vw, 3rem);
	position: relative;
	display: inline-block;
	line-height: 1.6;
	font-weight: 900;
}

.s .SportGradationArea h3 {
	font-size: 4.8vw;
	text-align: left;
	line-height: 1.5;
}

.s .SportGradationArea._third h3 ._palt {
	margin-left: -0.5em;
}


.SportGradationArea h3:after {
	content: "";
	position: absolute;
}

.SportGradationArea._first h3::after {
	bottom: 5px;
	left: 0;
	right: 0;
	max-width: 544px;
	margin: auto;
	height: auto;
	aspect-ratio: 1088 / 18;
	background: url(../img/icon-textline1.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
	z-index: -1;
}

.s .SportGradationArea._first h3::after {
	bottom: 0.3vw;
	left: 0;
	right: 0;
	max-width: 47.7vw;
	margin: auto;
	height: auto;
	aspect-ratio: 358 / 59;
	background: url(../img/icon-textline1-sp.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
}

.SportGradationArea._second h3:after {
	bottom: 5px;
	left: 0;
	right: 0;
	max-width: 385px;
	margin: auto;
	height: auto;
	aspect-ratio: 770 / 18;
	background: url(../img/icon-textline2.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
	z-index: -1;
}

.s .SportGradationArea._second h3:after {
	bottom: 0.3vw;
	left: 0;
	right: 0;
	max-width: 59.1vw;
	margin: auto;
	height: auto;
	aspect-ratio: 443 / 9;
	background: url(../img/icon-textline2-sp.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
}

.SportGradationArea._third h3:after {
	bottom: 5px;
	left: 0;
	right: 0;
	max-width: 466px;
	margin: auto;
	height: auto;
	aspect-ratio: 932 / 18;
	background: url(../img/icon-textline3.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
	z-index: -1;
}

.s .SportGradationArea._third h3:after {
	bottom: 0.3vw;
	left: 0;
	right: 0;
	max-width: 515px;
	margin: auto;
	height: auto;
	aspect-ratio: 341 / 58;
	background: url(../img/icon-textline3-sp.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
}

.SportGradationArea._fourth h3:after {
	bottom: 5px;
	left: 0;
	right: 0;
	max-width: 479px;
	margin: auto;
	height: auto;
	aspect-ratio: 958 / 18;
	background: url(../img/icon-textline4.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
	z-index: -1;
}

.s .SportGradationArea._fourth h3:after {
	bottom: 0.3vw;
	left: 0;
	right: 0;
	max-width: 38.5vw;
	margin: auto;
	height: auto;
	aspect-ratio: 289 / 58;
	background: url(../img/icon-textline4-sp.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
}

.SportGradationArea h4 {
	font-size: clamp(1.9rem, 2.47vw, 2.4rem);
	background-color: rgba(187, 219, 54, 1);
	padding: 3px 32px;
	border-radius: 50px;
	display: inline-block;
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
}


.s .SportGradationArea h4 {
	font-size: 3.73vw;
	padding: 2.93vw 12vw;
	letter-spacing: -1px;
	line-height: 1.2;
	margin-top: 3.8vw;
	/* margin-bottom: 6.6vw; */
	margin-bottom: 2vw;
}

@media screen and (min-width:500px) and (max-width:768px) {
	.s .SportGradationArea h4 {
		font-size: 3.6vw;
	}
}


.SportGradationBoxTextBg {
	background-image: url(../img/sport-text-bg.png);
	background-size: 100%;
	width: 100%;
	aspect-ratio: 1572 /276;
	max-width: 786px;
	background-repeat: no-repeat;
	background-position: bottom center;
	margin: 0 auto;
}

.s .SportGradationBoxTextBg {
	background-image: none;
	aspect-ratio: auto;
}


.SportGradationBoxText {
	font-size: clamp(1.6rem, 2.1vw, 2rem);
	padding-top: 8px;
}

.s .SportGradationBoxText {
	font-size: 3.73vw;
	padding-top: 3.06vw;
	padding-bottom: 4.67vw;
	letter-spacing: -1px;
}

@media screen and (min-width:500px) and (max-width:768px) {
	.s .SportGradationBoxText {
		font-size: 3.6vw;
	}
}

.SportGradationBoxText span {
	font-size: clamp(1.8rem, 2.3vw, 2.2rem);
	font-weight: 900
}

.s .SportGradationBoxText span {
	font-size: 3.73vw;
}

.SportGradationArea._second .SportGradationBoxText {
	font-size: clamp(1.4rem, 1.8vw, 2rem);
	padding-top: 40px;
	padding-bottom: 35px;
	position: relative;
	letter-spacing: -0.5px;
	;
}

.s .SportGradationArea._second .SportGradationBoxText {
	font-size: 3.73vw;
	padding-top: 5.33vw;
	padding-bottom: 0;
}


.SportGradationArea._second .SportGradationBoxText::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background: url(../img/sport-paper.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 100%;
	aspect-ratio: 286 / 386;
	max-width: 143px;
	width: 14vw;
	z-index: 0;
}

.s .SportGradationArea._second .SportGradationBoxText::before {
	display: none;
}

.s .SportGradationArea._second .SportGradationBoxText::after {
	content: "";
	display: block;
	position: relative;
	top: auto;
	bottom: 0;
	margin: auto;
	background: url(../img/sport-paper.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 100%;
	aspect-ratio: 333 / 457;
	max-width: 44.4vw;
	padding-top: 2.93vw;
}


.SportGradationArea._third .SportGradationBoxText {
	letter-spacing: -1.4px;
}

.SportSnsArrow {
	max-width: 781px;
	width: 84.3vw;
	margin: 0 auto;
	padding: 15px 0 70px;
	;
}

.s .SportSnsArrow {
	max-width: 91.9vw;
	width: 100%;
	padding: 0;
	padding-bottom: 10.1vw;
}


.SportFaq {
	font-size: clamp(1.6rem, 2.1vw, 2rem);
	text-align: center;
	position: relative;
	z-index: 3;
	padding-bottom: 40px;
}

.s .SportFaq {
	font-size: 3.73vw;
	padding-bottom: 2.6vw;
}

.SportFaq h4 {
	background-color: rgba(255, 255, 255, 1);
	padding: 8px 25px;
	margin-bottom: 15px;
	border-radius: 50px;
	display: inline-block
}

.s .SportFaq h4 {
	margin-bottom: 2vw;
}

.SportFaq a {
	color: rgba(35, 24, 21, 1);
}

.SportFaq a:hover {
	text-decoration: underline;
}


/* ================================
        Shop
================================ */
.Shop {
	background: rgba(255, 223, 0, 1);
	position: relative;
}

.ShopTitleOrnament {
	position: absolute;
	top: 2%;
	left: 0;
	right: 0;
	max-width: 1317px;
	z-index: 1;
	margin: 0 auto;
	padding: 0 20px;
}

.s .ShopTitleOrnament {
	position: absolute;
	top: -2vw;
	left: 0;
	right: 0;
	max-width: 100%;
	padding: 0;
}

.ShopInner {
	padding: 0 0 15vw;
}

.s .ShopInner {
	padding: 0 0 23vw;
}

.ShopTitleBgArea {
	padding: 0 20px;
	position: relative;
	z-index: 2
}

.ShopSubText {
	font-size: clamp(2rem, 2.6vw, 2.2rem);
	padding-top: 10px;
	line-height: 1.4;
	display: flex;
	justify-content: center;
	align-items: center;
}

.s .ShopSubText {
	font-size: 3.2vw;
	padding-top: 2.67vw;
}

.ShopSubText ._star {
	position: relative;
}

.ShopSubText ._star:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -9%;
	margin: auto;
	width: 33px;
	height: 32px;
	background: url(../img/icon-corn-red.png);
	background-size: 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.s .ShopSubText ._star:before {

	left: -6%;
	width: 4.93vw;
	height: 4.67vw;
}

#Shop h2 {
	max-width: 175px;
	margin: 0 auto;
	padding-bottom: 40px;
	position: relative;
}

.s #Shop h2 {
	max-width: 23.3vw;
	padding-bottom: 5.6vw;
}

#Shop h2::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 43px;
	height: 25.5px;
	background: url(../img/icon-titledeco.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: right center;
	transform: translate(25px, -25px);
	z-index: 10;
}

.s #Shop h2::after {
	width: 5.87vw;
	height: 3.6vw;
	transform: translate(100%, -100%);
}

#Shop h4 {
	font-size: clamp(2.4rem, 3.125vw, 2.6rem);
	font-weight: 700;
	padding-bottom: 10px;
	text-align: center;
	line-height: 1.4;
}

.s #Shop h4 {
	font-size: 3.73vw;
	padding-bottom: 2.67vw;
}

#Shop h5 {
	max-width: 153px;
	margin: 0 auto;
	padding-bottom: 25px;
}

.s #Shop h5 {
	max-width: 28.5vw;
	padding-bottom: 3.33vw;
}

.ShopStickey {
	padding-top: 40px;
	z-index: 0;
	position: relative;
}

.s .ShopStickey {
	padding-top: 11.7vw;
}

.ShopStickeyWindowBoxArea {
	width: 100%;
	height: 100%;
	position: relative;
}

#ShopVsPark .ShopStickeyBox {
	position: relative;
	height: 768px;
	margin-right: calc(50% - 50vw);
	background-color: transparent;
	z-index: 0;
	overflow: hidden;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.s #ShopVsPark .ShopStickeyBox {
	position: relative;
	height: 100%;
	margin-right: 0;
	overflow: visible;
	aspect-ratio: 750 / 1091;
}

#ShopVsPark .ShopStickeyBox::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: calc(100% - 1340px - 6.92vw);
	height: 100%;
	background: url('../img/bg-repeat.png') repeat-x;
	background-size: 40px 100%;
	z-index: -1;
}

.s #ShopVsPark .ShopStickeyBox::before {
	display: none;
}

#ShopVsPark .ShopStickeyBox::after {
	content: "";
	position: absolute;
	top: 0;
	right: 6.94vw;
	width: 1340px;
	height: 100%;
	background: url('../img/bg-right.png') no-repeat;
	background-size: contain;
	z-index: -1;
}

.s #ShopVsPark .ShopStickeyBox::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	background: url('../img/bg-right-sp.png') no-repeat;
	background-size: 100%;
}

#ShopVsPark .ShopCloud {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 370px;
	width: 27vw;
	transform: translateY(55%);
	z-index: 2;
}

.s #ShopVsPark .ShopCloud {
	max-width: 28.1vw;
	width: 100%;
	transform: translateY(-5vw);
}

#ShopTondemi .ShopStickeyBox {
	position: relative;
	height: 768px;
	margin-left: calc(50% - 50vw);
	background-color: transparent;
	z-index: 0;
	overflow: hidden;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.s #ShopTondemi .ShopStickeyBox {
	position: relative;
	height: 100%;
	margin-left: 0;
	overflow: visible;
	aspect-ratio: 750 / 877;
}

#ShopTondemi .ShopStickeyBox::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: calc(100% - 1340px - 6.92vw);

	height: 100%;
	background: url('../img/bg-repeat.png') repeat-x;
	background-size: 40px 100%;
	z-index: -1;
}

.s #ShopTondemi .ShopStickeyBox::before {
	display: none;
}

#ShopTondemi .ShopStickeyBox::after {
	content: "";
	position: absolute;
	top: 0;
	left: 6.94vw;
	width: 1340px;
	height: 100%;
	background: url('../img/bg-left.png') no-repeat;
	background-size: contain;
	z-index: -1;
}

.s #ShopTondemi .ShopStickeyBox::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: url('../img/bg-left-sp.png') no-repeat;
	background-size: 100%;
}

#ShopTondemi .ShopCloud {
	position: absolute;
	top: 0;
	left: 0;
	max-width: 349px;
	width: 30.23vw;
	transform: translateY(60%);
	z-index: 2;
}

.s #ShopTondemi .ShopCloud {
	max-width: 36.7vw;
	width: 100%;
	transform: translateY(8vw);
}

#ShopTondemi .ShopStarCenter {
	position: absolute;
	top: 0;
	right: 0;
	max-width: 139px;
	transform: translate(-4vw, -140px);
	z-index: 2;
}

.s #ShopTondemi .ShopStarCenter {
	display: none;
}

#ShopTondemi .ShopBaton {
	position: absolute;
	bottom: 0;
	left: 0;
	max-width: 286px;
	width: 23.86vw;
	transform: translate(4.86vw, 10vw);
	z-index: 2;
}

.s #ShopTondemi .ShopBaton {
	max-width: 25.5vw;
	width: 100%;
	transform: translate(-4vw, 21vw);
}

#ShopTondemi .ShopToy {
	position: absolute;
	bottom: 0;
	right: 0;
	max-width: 345px;
	width: 27.95vw;
	transform: translate(-5.34vw, 13.5vw);
	z-index: 2;
}

.s #ShopTondemi .ShopToy {

	max-width: 33.1vw;
	width: 100%;
	transform: translate(2.5vw, 14.5vw)
}

.ShopStickeyBoxItem {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
}

#ShopVsPark h3 {
	max-width: 254px;
	margin: 0 auto;
	padding-bottom: 44px;
}

.s #ShopVsPark h3 {
	max-width: 45.9vw;
	padding-bottom: 6.4vw;
}

#ShopTondemi h3 {
	max-width: 222px;
	margin: 0 auto;
	padding-bottom: 44px;
}

.s #ShopTondemi h3 {
	max-width: 29.6vw;
	padding-bottom: 6.4vw;
}

.ShopStickeyBoxList {
	max-width: 500px;
	width: 100%;
	margin: 0 auto;
	display: block;
	font-size: clamp(1.8rem, 2.34vw, 2rem);
	/* letter-spacing: -1.4px; */
	padding-bottom: 30px;
}

.s .ShopStickeyBoxList {
	max-width: 100%;
	font-size: 3.73vw;
	letter-spacing: 0;
	padding-bottom: 6.67vw;
}

.ShopStickeyBoxList li {
	display: flex;
	align-items: center;
	list-style: none;
	justify-content: flex-start;
	text-align: left;
	padding: 0;
	margin: 0 auto;
	max-width: 500px;
	transition: all .2s ease-out;
}

.s .ShopStickeyBoxList li {
	padding-left: 1.4vw;
	max-width: 100%;
}

.ShopStickeyBoxList li span {
	position: relative;
}

@media screen and (min-width:769px) and (max-width:1010px) {
	.ShopStickeyBoxList li {
		max-width: 57.24vw;
	}
}

.ShopStickeyBoxList li span:nth-of-type(1) {
	display: inline-block;
	max-width: 140px;
	width: 15.5vw;
	flex-shrink: 0;
}

.s .ShopStickeyBoxList li span:nth-of-type(1) {
	max-width: 27vw;
	width: 100%;
	flex-shrink: 0;
}

.ShopStickeyBoxList li span:nth-of-type(2) {
	flex-shrink: 1;
}


#ShopVsPark .ShopStickeyBoxList li:nth-of-type(7) span:nth-of-type(2)::before {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 343px;
	height: 32px;
	background: url('../img/icon-text-ornament1.png') no-repeat;
	background-size: 100%;
	z-index: 0;
}

@media screen and (min-width:769px) and (max-width:800px) {
	#ShopVsPark .ShopStickeyBoxList li:nth-of-type(7) span:nth-of-type(2)::before {
		content: "";
		width: 310px;
		height: 29px;
	}
}

.s #ShopVsPark .ShopStickeyBoxList li:nth-of-type(7) span:nth-of-type(2)::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 62.1vw;
	height: 4.93vw;
	background: url('../img/icon-text-ornament1-sp.png') no-repeat;
	background-size: 100%;
	z-index: 0;
}


#ShopTondemi .ShopStickeyBoxList li:nth-of-type(2) span:nth-of-type(2)::before {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 178px;
	height: 32px;
	background: url('../img/icon-text-ornament2.png') no-repeat;
	background-size: 100%;
	z-index: 0;
}

@media screen and (min-width:769px) and (max-width:800px) {
	#ShopTondemi .ShopStickeyBoxList li:nth-of-type(2) span:nth-of-type(2)::before {
		content: "";
		width: 160px;
		height: 29px;
	}
}

.s #ShopTondemi .ShopStickeyBoxList li:nth-of-type(2) span:nth-of-type(2)::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 30.8vw;
	height: 4.67vw;
	background: url('../img/icon-text-ornament2-sp.png') no-repeat;
	background-size: 100%;
	z-index: 0;
}







.ShopSearchBtn {
	max-width: 271px;
	width: 28.8vw;
	margin: 0 auto;
}

.s .ShopSearchBtn {
	max-width: 65.3vw;
	width: 100%;
}

.ShopSearchBtn a {
	display: block;
	box-shadow: 0px 8px 16px -2px rgba(10, 10, 10, 0.1), 4px 8px 0px 0px rgba(51, 51, 51, 0.8);
	border-radius: 7px;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
	z-index: 20;
	position: relative;
}

.ShopSearchBtn a:hover {
	box-shadow: none;
	transform: translateY(2px);
}

/* ================================
        Present
================================ */
.Present {
	background: rgba(19, 162, 241, 1);
	position: relative;
	z-index: 1;
}

.Present::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/present-bg-head.png);
	background-repeat: no-repeat;
	background-position: top 0 left 0;
	background-size: 100%;
	aspect-ratio: 2880 / 263;
	width: 100%;
	height: 100%;
	bottom: 99.9%;
	height: auto;
	z-index: 0;
}

.s .Present::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/present-bg-head-sp.png);
	background-repeat: no-repeat;
	background-position: top 0 left 0;
	background-size: 100%;
	aspect-ratio: 750 / 84;
	width: 100%;
	height: 100%;
	bottom: 99.9%;
	height: auto;
	z-index: 0;
}

.Present::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	background: url(../img/present-bg-tail.png);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: 100%;
	aspect-ratio: 2880 / 1234;
	width: 100%;
	z-index: -1;
}

.s .Present::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	background: url(../img/present-bg-tail-sp.png);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: 100%;
	aspect-ratio: 750 / 412;
	width: 100%;
	z-index: -1;
}

.PresentInner {
	padding: 120px 0 100px;
	height: 100%;
	position: relative;
}

.s .PresentInner {
	padding: 7.5vw 0 15.6vw;
}

.PresentInner::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/present-bg.png);
	background-size: 100% auto;
	background-repeat: repeat-y;
	background-position: top 2vw center;
	z-index: 0;
}

.s .PresentInner::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/present-bg-sp.png);
	background-repeat: repeat-y;
	background-size: 100%;
	background-position: top center;
	aspect-ratio: 750 / 3679;
	width: 100%;
	height: 100%;
	background-position: top 3vw center;
}

.PresentInnerItem {
	position: relative;
	z-index: 1;
}

.PresentLogo {
	max-width: 832px;
	margin: 0 auto;
	padding-bottom: 45px;
	position: relative;
	z-index: 2;
}

.s .PresentLogo {
	max-width: 80.1vw;
	padding-bottom: 6.67vw;
}

.PresentTitle {
	max-width: 782px;
	margin: 0 auto;
	padding-bottom: 45px;
}

.s .PresentTitle {
	max-width: 70.1vw;
	padding-bottom: 4.67vw;
}

.PresentLeadText {
	text-align: center;
	font-size: clamp(1.8rem, 2.34vw, 2rem);
	padding-bottom: 75px;
}

.s .PresentLeadText {
	font-size: 3.2vw;
	padding-bottom: 16vw;
	letter-spacing: -1.2px;
}

.PresentLeadText span {
	text-align: center;
	font-size: clamp(2.4rem, 3.125vw, 2.6rem);
	font-weight: 900;
}

.s .PresentLeadText span {
	font-size: 4vw;
}



.PresentWhiteBox {
	background: url(../img/present-box-bg1.png);
	background-position: center;
	padding: 100px 40px 70px 100px;
	background-size: cover;
	background-repeat: no-repeat;
	font-size: 1.6rem;
	font-weight: 600;
	border: solid 5px rgba(255, 255, 255, 1);
	margin-bottom: 90px;
	position: relative;
	text-align: center;
	z-index: 2;
}

@media screen and (min-width:769px) and (max-width:980px) {
	.PresentWhiteBox {
		padding: 12vw 3vw 9vw 3vw;
	}
}


.s .PresentWhiteBox._first {
	background: url(../img/present-box-bg1-sp.png);
	background-position: center;
	background-size: cover;
	padding: 10.7vw 2vw 9.89vw 2vw;
	border: solid 3px rgba(255, 255, 255, 1);
	margin-bottom: 17.3vw;
}

.s .PresentWhiteBox._second {
	background: url(../img/present-box-bg2-sp.png);
	background-position: center;
	background-size: cover;
	padding: 10.7vw 2vw 9.89vw 2vw;
	border: solid 3px rgba(255, 255, 255, 1);
	margin-bottom: 9.3vw;
}

.PresentWhiteBox._third {
	background: rgba(255, 255, 255, 1);
	border: solid 5px rgba(35, 24, 21, 1);
	padding: 52px 35px 40px 50px;
	margin-bottom: 0;
}

.s .PresentWhiteBox._third {
	border: solid 3px rgba(35, 24, 21, 1);
	padding: 7.16vw 3.9vw 0 3.9vw;

}

.PresentCampaignNumber {
	max-width: 247px;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	transform: translateY(-50%);
}

.s .PresentCampaignNumber {
	max-width: 32.9vw;
}



.PresentLead {
	font-size: clamp(2.1rem, 2.73vw, 2.6rem);
	font-weight: 900;
	padding-bottom: 35px;
	text-align: center;
	line-height: 1.6;
}

.s .PresentLead {
	font-size: 4vw;
	padding-bottom: 5.46vw;
}

.PresentLead ._small {
	font-size: clamp(1.6rem, 2.08vw, 2rem);
	font-weight: 500;
	line-height: 1;
}

.s .PresentLead ._small {
	font-size: 3.46vw;
}

@media screen and (min-width:500px) and (max-width:768px) {
	.s .PresentLead ._palt {
		letter-spacing: -2.5px;
	}
}

@media screen and (max-width:499px) {
	.s .PresentLead ._palt {
		letter-spacing: -2px;
	}
}

.PresentWhiteBox._first .PresentDate {
	max-width: 769px;
	margin: 0 auto;
	padding-bottom: 20px;
}

.s .PresentWhiteBox._first .PresentDate {
	max-width: 87.2vw;
	padding-bottom: 0;
	margin-bottom: -3vw;
}

.PresentWhiteBox._second .PresentDate {
	max-width: 769px;
	margin: 0 auto;
	padding-bottom: 40px;
}

.s .PresentWhiteBox._second .PresentDate {
	max-width: 87.2vw;
	padding-bottom: 0;
	margin-bottom: -3vw;
}

.PresentWhiteBox._first .PresentApplyItem {
	max-width: 824px;
	margin: 0 auto;
	padding-bottom: 15px;
}

.s .PresentWhiteBox._first .PresentApplyItem {
	max-width: 85.2vw;
	padding-bottom: 6.66vw;
}

.PresentWhiteBox._second .PresentApplyItem {
	max-width: 827px;
	margin: 0 auto;
	padding-bottom: 15px;
}

.s .PresentWhiteBox._second .PresentApplyItem {
	max-width: 84.5vw;
	padding-bottom: 8.4vw;
}

.PresentListNote li {
	font-size: clamp(1.2rem, 1.56vw, 1.4rem);
	font-weight: 300;
	line-height: 1.6;
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
}

.s .PresentListNote {
	padding-left: 4vw;
	letter-spacing: -0.5px;
}

.s .PresentListNote li {
	font-size: 2.93vw;
}

.PresentApplyTitle {
	max-width: 124px;
	margin: 0 auto;
	padding-bottom: 20px;
}

.s .PresentApplyTitle {
	width: 22.8vw;
	max-width: 100%;
	padding-bottom: 5.3vw;
}

.s .PresentApplyTitle {
	width: 22.8vw;
	max-width: 100%;
	padding-bottom: 5.3vw;
}

.s .PresentWhiteBox._second .PresentApplyTitle {
	margin-top: -4vw;
}

.PresentFlowList {
	font-size: clamp(1.8rem, 2.34vw, 2.4rem);
	padding: 0 34px 20px 34px;
	font-weight: 900;
}

.s .PresentFlowList {
	font-size: 4vw;
	padding: 0 0 2.93vw 4vw;
	letter-spacing: -1px;
}

.PresentFlowList div span {
	font-weight: 500 !important;
}

.PresentWhiteBox .PresentFlowList li {
	line-height: 1.4;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	text-align: left;
	gap: 20px;
}

.s .PresentWhiteBox .PresentFlowList li {
	gap: 2.8vw;
}

.PresentWhiteBox .PresentFlowList li div:nth-of-type(1) {
	max-width: 52px;
}

.s .PresentWhiteBox .PresentFlowList li div:nth-of-type(1) {
	max-width: 8.85vw;
}

.PresentFlowList li:not(:last-child) {
	margin-bottom: 70px;
	position: relative;
}

.s .PresentFlowList li:not(:last-child) {
	margin-bottom: 8.8vw;
}

.PresentFlowList li:not(:last-child)::after {
	content: '';
	position: absolute;
	width: 29px;
	height: 22px;
	bottom: -50px;
	left: 50%;
	transform: translateX(-50%);
	background: url(../img/icon-triangle.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
}

.s .PresentFlowList li:not(:last-child)::after {
	content: '';
	position: absolute;
	width: 5.46vw;
	height: 3.87vw;
	bottom: -5.51vw;
}

.PresentlotteryList {}

.PresentlotteryList li {
	margin: 0 auto;
}

.PresentlotteryList li:nth-of-type(1) {
	max-width: 563.5px;
}

.s .PresentlotteryList li:nth-of-type(1) {
	max-width: 85.6vw;
}

.PresentlotteryList li:nth-of-type(2) {
	max-width: 668px;
}

.s .PresentlotteryList li:nth-of-type(2) {
	max-width: 81.2vw;
	padding-bottom: 2vw;
}

.PresentNote li {
	font-size: clamp(1.2rem, 1.56vw, 1.4rem);
	font-weight: 400;
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
}

.s .PresentNote li {
	font-size: 3.2vw;
	letter-spacing: -1px;
}


.PresentRuleTitle {
	max-width: 124px;
	margin: 0 auto;
	padding-bottom: 20px;
}

.s .PresentRuleTitle {
	width: 20.1vw;
	max-width: 100%;
	padding-bottom: 10px;
}

.PresentRuleScroll {
	text-align: center;
	margin-bottom: 30px;
}

.s .PresentRuleScroll {
	margin-bottom: 3.125vw;
}

.PresentRuleScroll span {
	background-color: rgba(255, 239, 0, 1);
	font-size: 1.6rem;
	padding: 5px 33px;
	border-radius: 5px;
	display: inline-block;
	font-weight: 500;
}

.s .PresentRuleScroll span {
	font-size: 3.2vw;
	padding: 1.56vw 15px;
	border-radius: 3px;
	line-height: 1;
	font-weight: 700;
}

.PresentRuleText {
	font-size: 1.4rem;
	text-align: left;
	height: 450px;
	padding-right: 80px;
	font-weight: 400;
	position: relative;
}

.s .PresentRuleText {
	font-size: 3.2vw;
	height: 250px;
	line-height: 1.4;
	letter-spacing: -0.3px;
	padding-right: 4.5vw;
	font-weight: 400;
}

.scrollbar {
	overflow-y: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.scrollbar::-webkit-scrollbar {
	display: none;
}

.custom-scrollbar-track {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	height: 80%;
	right: 35px;
	width: 7px;
	border-radius: 50vw;
	z-index: 5;
}

.s .custom-scrollbar-track {
	height: 80%;
	right: 3.6vw;
	width: 5px;
}

.custom-scrollbar-thumb {
	width: 100%;
	background: rgba(204, 204, 204, 1);
	border-radius: 50vw;
	position: absolute;
	top: 0;
}

.PresentRuleText div {
	padding-bottom: 40px;
}

.s .PresentRuleText div {
	padding-bottom: 3.9vw;
}

.PresentRuleText li {
	text-indent: -1em;
	padding-left: 1em;
	list-style: none;
}

.PresentRuleText a {
	text-decoration: underline;
}

.PresentRuleText a:hover {
	text-decoration: none;
}

/* ================================
        Page Footer
================================ */
.PageFooter {
	padding: 60px 0;
}

.s .PageFooter {
	padding: 7.16vw 15px;
}

.PageFooter ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 74px;
}

.PageFooter ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 9.4vw;
}

.PageFooter ul li:nth-of-type(1) {
	max-width: 150px;
}

.PageFooter ul li:nth-of-type(2) {
	max-width: 160px;
}

.PageFooter ul li:nth-of-type(3) {
	max-width: 149px;
}

.PageFooter p {
	font-size: 1.8rem;
	text-align: center;
	padding-top: 30px;
	font-weight: 400;
}

.s .PageFooter p {
	font-size: 2.66vw;
	padding-top: 5.86vw;
}
