/* layout sp
--------------------------------------------------*/
@media screen and (max-width: 768px) {

html,body {
	position:relative;
	width:100%;
	min-width:320px;
	text-align:left;
	-webkit-text-size-adjust: none;
}

body {
	box-sizing:border-box;
	overflow-x:hidden;
}



/* バナー */
.banner {
	position:fixed;
	bottom:1.5%;
	right:3%;
	z-index:2;
	display:block;
	display:none;
}

.banner img {
	width:30vw;
	height:auto;
	display:block;
}

.over:hover img {
	animation:none;
}

.over02:hover img {
	animation:none;
}



/* メインエリア */
.main{
	position:relative;
	box-sizing:border-box;
}


/* 参加方法エリア */
.entry_text_slide_caption{
	position:relative;
	margin:0 auto 7vw;
	line-height:1.6;
	text-align:center;
	font-size:4.2vw;
	font-weight:700;
	letter-spacing:0;
}

/* 過去の投稿スライダー部分 */
#photo_splide .splide__slide img{
	width:100%;
	height:auto;
	transform:scale(0.7); 
	transition:0.4s; 
}

/* アクティブなスライドのスタイル  */
#photo_splide .splide__slide.is-active img{
      transform:scale(1);
      z-index:1;
}

/* ドラッグ中のアクティブなスライドのスタイル  */
#photo_splide .splide__slide.is-active.dragging img {
	transform:scale(1); 
}

#photo_splide .splide_btn_set{
	position:relative;
	width:74vw;
	display:block;
	overflow:hidden;
	margin:6.5vw auto 0;
}

#photo_splide .splide_btn{
	width:2.5vw;
	height:auto;
	float:left;
	margin-right:3vw;
	transform:scale(0.7); 
	cursor:pointer;
	filter:grayscale(100%);
	opacity:0.5;
	transition:
		transform 0.4s ease 0.4s,
		filter 0.4s ease,
		opacity 0.4s ease;
}

#photo_splide .splide_btn_last{
	margin-right:0;
}

#photo_splide .splide_btn_set .is_active{
	filter:none;
	opacity:1;
	transform:scale(1);
	z-index:1;
}

/* スライド矢印 */
#photo_splide .splide__arrows{
	position:relative;
	width:100%;
	margin:0 auto 0;
}

#photo_splide .splide__arrow{
	margin-top:7.5vw;
	background:none;
	border-radius:none;
	height:auto;
}

#photo_splide .splide__arrow--prev{
	width:3.5vw;
	height:auto;
	left:0;
	margin-left:3%;
	opacity:1;
}

#photo_splide .splide__arrow--prev img{
	width:100%;
	height:auto;
}

#photo_splide .splide__arrow--next{
	width:3.5vw;
	height:auto;
	margin-right:calc(3% +17px);
	opacity:1;
}

#photo_splide .splide__arrow--next img{
	width:100%;
	height:auto;
}

/* SP/PC用 */
.rps_del{
	display:none;
}
.rps_visible{
	display:block;
}


	/* 第4回 202607記述ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */
	.cts_area {
		width: 100%;
		max-width: 500px;
		padding: 0 20px;
	}
	a.btnBase {
		padding: 15px 20px;
		margin-top: 40px;
		min-width: 300px;
		font-size: 1.8rem;
		font-weight: 700;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	/* 追従バナー 
	ーーーーーーーーーーーーーー*/
	.banner01 img,.banner02 img {
		width: 100px;
		height: 100px;
	}
	.banner01 {
		bottom: 125px;
	}
	/* kv 
	ーーーーーーーーーーーーーー*/
	.kv_area {
		flex-direction: column;
		height: 670px;
		min-height: 375px;
		gap: 5px;
	}
	#kv_left {
		height: 65%;
	}
	#kv_left,
	#kv_right {
		width: 100%;
	}
	#kv_left .swiper_area {
		min-width: auto;
		max-width: 230px;
		width: 58%;
	}
	#kv_right {
		height: 35%;
	}
	.tit_h1 {
		width: 250px;
		top: 10px;
		left: 10px;
	}
	.kv_day {
		width: 80%;
		max-width: 390px;
		min-width: 268px;
		bottom: 15px;
		filter: drop-shadow(0px 0px 3px rgba(122, 108, 0, 0.2));
	}


	/* concept
	ーーーーーーーーーーーーーー*/
	#concept {
		padding-top: 60px;
		padding-bottom: 70px;
	}
	#concept::after {
		content: "";
		background: url(../images/line_dots.png) no-repeat center /contain;
		width: 4px;
		height: 88px;
		bottom: -30px;
	}
	#concept .tit_h2.sp {
		margin-bottom: 30px;
		font-size: 2.1rem;
		font-weight: 700;
		letter-spacing: 0rem;
		line-height: 1.7;
		display: flex;
		flex-direction: column;
		gap: 13px;
	}

	#concept .concept_txt {
		line-height: 2;
	}
	#concept .concept_area p:nth-of-type(2) {
	margin-top: 20px;
	}
	#concept .item01 {
		width: 74px;
		left: 0px;
		top: 60px;
	}
	#concept .item02 {
		width: 78px;
		height: auto;
		right: 0px;
		top: 170px;
	}


	/* theme
	ーーーーーーーーーーーーーー*/
	#theme {
		padding: 40px 20px 60px;
	}
	#theme .bg_item {
		height: 25px;
		bottom: -24px;
	}
	.theme_area {
		padding: 60px 15px;
		filter: drop-shadow(2px 5px 5px rgba(50, 50, 50, 0.2));
	}
	#theme .txt_box {
		gap: 20px;
		line-height: 2;
	}
	#theme .tit_h3 {
		width: 304px;
	}
	#theme .theme_txt {
		font-size: 1.4rem;
	}
	#theme .txt_box .box_green {
		padding: 4px 0px 5px 0px;
		font-weight: 700;
		font-size: 1.8rem;
	}
	#theme .green {
		font-size: 1.9rem;;
		font-weight: 700;
		line-height: 1.4;
	}
	#theme .txt_box .size_up {
		font-size: 3rem;
	}
	#theme .txt_box .size_down {
		font-size: 1.7rem;
	}
	#theme .txt_box .note {
		line-height: 1.6;
	}
	.award {
		margin-top: 0px;
	}
	.award_list {
		padding: 20px 0;
		gap: 0px;
		text-align: center;
		flex-direction: column;
		align-items: center;
	}
	.award_badge {
		width: 74px;
	}
	.award_list:nth-of-type(2) .award_badge {
		width: 58px;
		margin:0 ;
	}
	.award_prizes {
		width: 100%;
		max-width: 400px;
	}
	.award_txt {
		padding: 3px 0 0 0;
		font-size: 1.4rem;
	}
	.award_img {
		width: 100%;
		max-width: 400px;
		margin: 30px auto 0;
	}
	.award .size_up {
		font-size: 2rem;
	}

	/* judge
	ーーーーーーーーーーーーーー*/
	.judge_area {
		width: 100%;
		max-width: 500px;
		padding: 70px 20px;
	}
	.tit_base {
		font-size: 2.7rem;
		font-weight: 700;
	}
	.tit_base::before {
		background: url(../images/bg_section_tit_sp.png) no-repeat center /contain;
		width: 236px;
		height: 53px;
	}
	.txt_base {
		margin-top: 30px;
		font-size: 1.4rem;
		line-height: 1.7;
	}
	.judge_ul {
		margin-top: 25px;
		gap: 50px;
	}
	#judge .tit_h5 {
		font-size: 2.4rem;
		font-weight: 700;
	}
	#judge .tit_h5 .size_up {
		font-size: 2.8rem;
		line-height: 1;
		display: inline-block;
		transform: translateY(1px);
	}
	.judge_box {
		flex-direction: column;
		gap: 20px;
		padding: 30px 15px 20px;
	}
	.people {
		width: 180px;
		height: auto;
		margin: 0 auto;
	}
	.name_box {
		display: block;
		text-align: center;
	}
	.job {
		font-size: 1.2rem;
	}
	#judge .tit_h6 {
		font-size: 1.9rem;
	}
	.btn.pc {
		display: none;
	}
	.btn.sp {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 15px;
	}
	a.icon_insta {
		width: 30px;
	}
	a.icon_x {
		width: 28px;
	}
	.txt_profile {
		margin-top: 10px;
		margin-bottom: 20px;
		font-size: 1.2rem;
		line-height: 1.7;
	}
	/* entry
	ーーーーーーーーーーーーーー*/

	.entry_area {
		width: 100%;
		max-width: 500px;
		padding: 60px 20px 60px;
	}
	.entry_ul {
		margin-top: 25px;
		flex-direction: column;
		align-items: center;
		gap: 70px;
	}
	.entry_list {
		width: 100%;
		max-width: 400px;
	}
	.entry_list:not(:last-child)::after {
		width: 11px;
		height: 15px;
		top: auto;
		bottom: -50px;
		right: auto;
		left: 50%;
		transform: translate(-50%,0%) rotate(90deg);
	}
	#entry *[class ^= bg_item] {
		height: 25px;
		top: -24px;
	}
	#entry .bg_item02 {
		top: auto;
		bottom: -24px;
	}
	.entry_txt {
		margin: 10px auto 0;
		padding:  10px 20px;
		font-size: 1.2rem;
	}
	.entry_txt li{
		line-height: 1.5;
		padding: 0 0 5px 0;
	}
	#entry a.btnBase span {
		padding-left: 0px;
	}
	#entry .btnBase span::after{
		width: 25px;
		height: 25px;
		left: -68px;
	}
	#slide_photo {
		margin: 50px auto 70px;
	}


	/* tyroldo
	ーーーーーーーーーーーーーー*/

	.tyroldo_area {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.tit_tyroldo {
		gap: 15px;
		line-height: 1.6;
	}
	.tit_tyroldo img {
		width: 45%;
	}
	.tit_tyroldo .tit_h4 {
		font-size: 2rem;
	}
	.tyroldo_box {
		margin-top: 30px;
	}
	.tyroldo_box .tit_h5 {
		font-size: 2rem;
		line-height: 1.3;
	}
	.tyroldo_box ul {
		gap: 10px;
		margin-top: 15px;
	}
	.tyroldo_box .txt {
		margin-top: 15px;
		line-height: 1.7;
		text-align: justify;
	}
	.txt_donation {
		margin-top: 20px;
		padding: 15px 30px;
		font-size: 1.5rem;
		line-height: 1.6;
	}
	#tyroldo a.btnBase {
	font-size: 1.8rem;
}

/* disclaimer
ーーーーーーーーーーーーーー*/

	#disclaimer.cts_area{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	#disclaimer .tit_h4{
		font-size: 2.7rem;
	}
	.disclaimer_ul {
		width: 100%;
		max-width: 500px;
		gap: 10px;
		margin: 15px 0 auto;
	}
	.disclaimer_list > li{
		padding: 0 0 5px 0;
	}

	#footer {
		padding: 20px 0;
	}
	.footer_area {
		gap: 20px;
	}
	.logo_tit {
		width: 200px;
	}
	.logo_crecia {
		width: 110px;
	}



}