@charset "utf-8";
/* CSS Document */

body{
	margin: 0;
}

.wrapper{
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	background-color: #fff;
}

.wrapper img{
	display: block;
	line-height: 0;
}

.pcBox{
	display: none;
}

.lead{
	text-align: center;
	font-size: 15px;
	line-height: 2;
	margin: 10% auto;
}

.content{
	margin: 10% auto 2.5%;
	width: 95%;
	background-color: #fef594;
	box-sizing: border-box;
	padding: 10% 5%;
	border-top-right-radius: 80px;
	border-bottom-left-radius: 80px;
}

.box{
	width: 100%;
	margin: 10% auto 20%;
}

.style{
	margin: 0 auto 5%;
	position: relative;
}

.first-img{
	width: 65%;
	position: relative;
	z-index: 10;
}

.last-img{
	width: 50%;
	margin-left: 50%;
	margin-top: -15%;
}

.credit{
	position: relative;
    	width: 100%;
	margin: 8% auto;
}

.credit a{
	display: block;
	text-decoration: none;
	color: #000;
	font-size: 15px;
	line-height: 1.8;
}

.credit a span{
	display: inline-block;
	margin-left: 10px;
}

.credit a::after {
	content: "BUY";
    position: absolute;
    top: 50%;
    right: 2%;
    transform: translate(0, -50%);
    font-size: 14px;
	border: solid 1px #000;
	width: 100px;
	text-align: center;
	background-color: #fff;
}

.credit a span:after{
	display: inline-block;
	content: "(税込み)";
	font-size: 12px;
	margin-left: 3px;
}

.slide{
	position: relative;
	overflow: inherit;
	width: 80%;
	margin: 0 auto;
}

.slide-img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: auto;
	opacity: 0;
	animation :slideshow 8s;
	animation-duration: 4s;
	animation-iteration-count: infinite;
	animation-timing-function: steps(1, end);
}

@keyframes slideshow{
	  0%{
		opacity: 0;
	  }
	  50%{
		opacity: 1;
	  }
	  100%{
		opacity: 0;
	  }
	}

.event{
	background-color: #F0ABD5;
	box-sizing: border-box;
	padding: 5% 8% 10%;
}

.event-top{
	margin: 0 auto 5%;
}

.event-top p{
	text-align: center;
	margin: 5% auto 10%;
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: 1px;
}

.bg-color{
	margin: 10% auto;
}

.bg-color h1{
	width: 90%;
	margin: 3% auto;
	background-color: #fff;
	box-sizing: border-box;
	padding: 2% 0;
	text-align: center;
	font-weight: normal;
	font-size: 30px;
	letter-spacing: 1px;
}

.bg-color h1 span{
	font-size: 23px;
}

.bg-color h2{
	width: 90%;
	margin: 3% auto;
	background-color: #fff;
	box-sizing: border-box;
	padding: 2% 0;
	text-align: center;
	font-weight: normal;
	font-size: 22px;
	letter-spacing: 1px;
}

.bg-color p{
	margin: 8% auto;
	line-height: 2;
	font-size: 15px;
	text-align: center;
}

.event-conditions{
	margin: 10% auto;
}

.event-conditions h1{
	font-size: 20px;
	font-weight: normal;
	margin-bottom: 3%;
}

.event-conditions h1 span{
	background-color: #000;
	color: #fff;
	padding: 0.5% 2%;
}

.flex-box {
  display: flex;
  align-items: center; /* 上揃え（文章が長い場合に自然） */
  gap: 15px; /* 箱と箱の間の隙間 */
  margin-bottom: 15px;
	border: solid 1px #000;
}

/* 左のボックス（番号） */
.num-box {
  width: 50px;        /* 1. 幅を固定 */
  height: 100px;       /* 高さも固定（正方形にする場合） */
  flex-shrink: 0;     /* 2. 重要：テキストに押されて縮むのを防ぐ */
  
  /* 以下は見た目の装飾 */
  background-color: #333;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
	font-family: scale-variable,sans-serif;
    font-variation-settings: "wdth" 100,"wght" 700;
	font-size: 40px;
}

/* 右のボックス（テキスト） */
.text-box {
  flex: 1; /* 3. 残りのスペースを全て使う */
	font-size: 14px;
	line-height: 1.7;
	box-sizing: border-box;
	padding-right: 15px;
}

.text-box span{
	font-size:11px;
}

.makoto{
	margin: 10% auto 10%;
}

.makoto-box{
	margin-bottom: 10%;
}

.makoto-box p{
	font-size: 14px;
	line-height: 1.8;
	margin: 2% auto;
	text-align: center;
}

.makoto-box p span{
	font-weight: 600;
	font-size: 15px;
}

.makoto-box .makoto-link{
	display: block;
	width: 100%;
	margin: 2% auto;
	text-align: center;
	text-decoration: none;
	background-color: #000;
	color: #fff;
	font-size: 13px;
	line-height: 3;
	position: relative;
	border-radius: 5px;
}

.makoto-box a.makoto-link:after{
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 15px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: "";
	transform: translateY(-50%) rotate(45deg);
}

.attention{
	font-size: 12px;
	line-height: 2;
}

.profile{
	box-sizing: border-box;
	padding: 10% 0;
	width: 90%;
	margin: 0 auto;
}

.profile h1{
	text-align: center;
	margin: 5% auto;
	font-size: 20px;
}

.profile p{
	width: 90%;
	font-size: 15px;
	line-height: 2;
	margin: 5% auto;
	font-weight: 500;
}

.snsBOX__makoto{
	display: flex;
	padding: 0;
	list-style: none;
	justify-content: center;
	margin: 10% auto;
	column-gap: 20px;
}

.snsBOX__makoto li{
	margin: 0 7px;
	line-height: 0;
}

.snsBOX__makoto li img{
	width: 60px;
	height: auto;
}

@media(min-width:750px){
	.sticky__container{
		display: flex;
		background-color: #b5e8f8;
	}
	.pcBox{
		width: 33%;
		height: 100vh;
		position: sticky;
		left: 0;
		top: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.wrapper{
		width: 35%;
		box-sizing: border-box;
		margin: 0 auto;
	}
	
	.bg-01{
		background: url("../SVG/bg_l.svg") 50% no-repeat;
		 background-size: cover;
	}
	
	.bg-02{
		background: url("../SVG/bg_r.svg") 50% no-repeat;
		 background-size: cover;
	}
	
	.leftBox img{
		display: block;
		width: 33vh;
	}
	
	.snsBOX{
		font-family: 'Arial',sans-serif;
	}
	
	.snsBOX__inner{
		border-radius: 15px;
		text-align: center;
	}
	
	.snsBOX__list01{
		/*display: flex;*/
		padding: 0;
		list-style: none;
		justify-content: center;
		margin: 0;
	}
	
	.snsBOX__list01 li{
		margin: 0 7px;
		line-height: 0;
		margin-bottom: 10%;
	}
		
	.icon-link {
	  display: flex; /* 要素を横並びにし、中央揃えを可能にする */
	  align-items: center;  /* 垂直方向の中央揃え */
	  text-decoration: none;
	  color: #333;
	  font-family: scale-variable,sans-serif;
	  font-variation-settings: "wdth" 100,"wght" 700;
	  font-size: 25px;
	}

	.icon-link::before {
	  content: "";          /* 必須：これがないと表示されません */
	  display: block;       /* 幅と高さを指定するために必要 */
	  width: 50px;          /* 画像の幅 */
	  height: 50px;         /* 画像の高さ */
	  margin-right: 8px;    /* テキストとの余白 */

	  /* 画像の設定 */
	  background-image: url('https://www.dot-st.com/static/docs/bayflow/pages/snoopy_friends/assets/img/instagram.svg'); /* 画像パス */
	  background-repeat: no-repeat;
	  background-position: center;
	  background-size: contain; /* 画像をボックス内に収める */
	}
	
	.credit{
		position: relative;
			width: 80%;
		margin: 8% auto;
	}

	.br_s{
		display: none;
	}

	}










