@charset "utf-8";
#instagram{

	@media (width <= 767px) {/* SP */
		padding-top: 3.2rem;
	}
	.pageCnt{
		@media (width > 767px) {/* PC */
			margin-top: 10.5rem;
			padding-bottom: 16rem;
		}
		@media (width <= 767px) {/* SP */
            padding-bottom: 7.5rem;
		}
	}
	.c-introBlock{
		.-red{
			color: var(--cc-red);
		}
	}
	.secHead{
		text-align: center;
		margin-bottom: 9.5rem;
		@media (width <= 767px) {/* SP */
			margin-bottom: 7rem;
		}
		.secHead__icoIg{
			text-align: center;
			svg{
				width: 1.6rem;
				height: 1.6rem;
				fill: var(--cc-red);
			}
		}
		.secHead__enTxt{
			letter-spacing: .1em;
			font-weight: 500;
			color: var(--cc-red);
			font-family: var(--ff-avenir);
			line-height: 1;
			font-size: 1.4rem;
			margin-bottom: 2.4rem;
			@media (width <= 767px) {/* SP */
				font-size: 1.6rem;
				margin-bottom: 1.2rem;
			}
		}
		.secHead__ttl{
			font-weight: 400;
			font-family: var(--ff-zen);
			letter-spacing: .14em;
			line-height: 1.8;
			font-size: 2.8rem;
			@media (width <= 767px) {/* SP */
				font-size: 2rem;
			}
		}
		.secHead__leadTxt{
			color: var(--cc-gray-text);
			letter-spacing: .08rem;
			line-height: 2.2;
			font-size: 1.5rem;
			margin-top: 3.5rem;
			@media (width <= 767px) {/* SP */
				letter-spacing: .2rem;
				line-height: 2;
				font-size: 1.6rem;
				margin-top: 2.9rem;
			}
		}
		.secHead__btn{
			margin-top: 4rem;
			@media (width <= 767px) {/* SP */
				margin-top: 3rem;
			}
		}
	}
	.contestSec{
		padding-top: 19.5rem;
		@media (width <= 767px) {/* SP */
			padding-top: 10rem;
		}
		.kvBlock{
			text-align: center;
			margin-bottom: 10.4rem;
			@media (width <= 767px) {/* SP */
				margin-bottom: 8.5rem;
			}
			.kvBlock__txt{
				margin-left: auto;
				margin-right: auto;
				margin-bottom: 4rem;
				width: 42.6rem;
				@media (width <= 767px) {/* SP */
					width: 27.2rem;
				}
				img{
					width: 100%;
				}
			}
			.kvBlock__img{
				img{
					width: 100%;
				}
			}
		}

		.infoBlock{
			display: flex;

			margin-left: auto;
			margin-right: auto;
			@media (width > 767px) {/* PC */
				justify-content: space-between;
				width: 96rem;
			}
			@media (width <= 767px) {/* SP */
				flex-direction: column;
			}
			.infoBlock__ttl{
				font-family: var(--ff-zen);
				font-weight: 400;
				line-height: 1;
				letter-spacing: .14em;
				font-size: 1.8rem;
				@media (width > 767px) {/* PC */
					padding-top: .5rem;
				}
				@media (width <= 767px) {/* SP */
					text-align: center;
					margin-bottom: 5rem;
				}
			}
			.infoBlock__cnt{
				display: flex;
				flex-direction: column;
				gap: 2.4rem;
				@media (width > 767px) {/* PC */
					width: 64rem;
				}

				@media (width <= 767px) {/* SP */
					width: 33rem;
					margin: 0 auto;
					gap: 2.4rem;
				}
				dl{
					display: flex;
					border-bottom: solid 1px var(--cc-sen-gray);
					letter-spacing: .12em;
                    padding-bottom: 1.1rem;
					line-height: 1.8;
					font-size: 1.6rem;
					@media (width <= 767px) {/* SP */
						flex-direction: column;
					}
					dt{
						color: var(--cc-red);
						@media (width > 767px) {/* PC */
							width: 13.5rem;
						}
						@media (width <= 767px) {/* SP */
							margin-bottom: .7rem;
						}
					}
					dd{
						text-align: justify;
						/* white-space: nowrap; */
						color: var(--cc-gray-text);
						display: flex;
						flex-direction: column;
						gap: .8rem;
						@media (width > 767px) {/* PC */
							width: 52.2rem;
						}
					}
				}
			}
		}

		.aboutBlock{
			display: flex;

			margin-left: auto;
			margin-right: auto;
			margin-top: 8rem;
			@media (width > 767px) {/* PC */
				justify-content: space-between;
				width: 96rem;
			}
			@media (width <= 767px) {/* SP */
				flex-direction: column;
			}
			.aboutBlock__ttl{
				font-family: var(--ff-zen);
				font-weight: 400;
				line-height: 1;
				letter-spacing: .14em;
				font-size: 1.8rem;
				@media (width > 767px) {/* PC */
					padding-top: .5rem;
				}
				@media (width <= 767px) {/* SP */
					text-align: center;
					margin-bottom: 5rem;
				}
			}
			.aboutBlock__cnt{
				display: flex;
				flex-direction: column;
				gap: 2.4rem;

				@media (width > 767px) {/* PC */
					width: 64rem;
				}

				@media (width <= 767px) {/* SP */
					width: 33rem;
					margin: 0 auto;
					gap: 2.4rem;
				}
				dl{
					display: flex;
					border-bottom: solid 1px var(--cc-sen-gray);
					letter-spacing: .12em;
                    padding-bottom: 1.1rem;
					line-height: 1.8;
					font-size: 1.6rem;
					gap: .8rem;
					@media (width <= 767px) {/* SP */
						gap: .6rem;
					}
					dt{
						color: var(--cc-red);
						white-space: nowrap;
						@media (width > 767px) {/* PC */
							/* width: 13.5rem; */
						}
						@media (width <= 767px) {/* SP */
							margin-bottom: .7rem;
						}
					}
					dd{
						text-align: justify;
						/* white-space: nowrap; */
						color: var(--cc-gray-text);
						display: flex;
						flex-direction: column;
						gap: .8rem;
						a{
							text-decoration: underline;
						}
					}
				}
			}
		}
		.judgeBlock{
			display: flex;

			margin-left: auto;
			margin-right: auto;
			margin-top: 8rem;
			@media (width > 767px) {/* PC */
				width: 96rem;
				justify-content: space-between;
			}
			@media (width <= 767px) {/* SP */
				flex-direction: column;
				margin-top: 8.5rem;
			}
			.judgeBlock__ttl{
				font-family: var(--ff-zen);
				font-weight: 400;
				line-height: 1;
				letter-spacing: .14em;
				font-size: 1.8rem;
				margin-bottom: 1.2rem;
				@media (width > 767px) {/* PC */
					padding-top: .5rem;
					letter-spacing: .64em;
				}
				@media (width <= 767px) {/* SP */
					text-align: center;
					letter-spacing: .64em;
					margin-bottom: 4.5rem;
				}
			}
			.judgeBlock__cnt{
				display: flex;
				flex-direction: column;
				gap: 4.8rem;
				@media (width > 767px) {/* PC */
					width: 64rem;
				}
				@media (width <= 767px) {/* SP */
					width: 33rem;
					margin: 0 auto;
					gap:5.6rem;
				}
			}
			.photog{
				display: flex;
				@media (width > 767px) {/* PC */
					justify-content: space-between;
				}
				@media (width <= 767px) {/* SP */
					flex-direction: column;
					gap: 5rem;
				}
				.photog__img{
					@media (width > 767px) {/* PC */
						width: 20rem;
					}
					img{
						width: 100%;
					}
				}
				.photog__txtarea{
					color: var(--cc-gray-text);
					@media (width > 767px) {/* PC */
						width: 40rem;
						padding-top: .8rem;
					}
				}
				.photog__name{
					line-height: 1;
					letter-spacing: .12em;
					font-weight: 500;
					font-size: 1.8rem;
				}
				.photog__txt{
					text-align: justify;
					line-height: 2;
					letter-spacing: .12em;
					font-size: 1.6rem;
					margin-top: 2rem;
				}
			}
		}
		.btnBlock{
			text-align: center;
			margin-top: 8rem;
			@media (width <= 767px) {/* SP */
				margin-top: 4rem;
			}

			a{
				font-family: var(--ff-default);
				border: solid 1px var(--cc-red);
				font-size: 1.5rem;
				padding: 1.9rem 2rem 1.9rem 2rem;
			}
		}
		.bnrBlock{
			text-align: center;
			margin: 8rem auto 0;
			width: 80rem;
			@media (width <= 767px) {/* SP */
				margin-top: 6rem;
				width: 33rem;
			}
			.bnrBlock__txt{
				color: var(--cc-red);
				font-weight: 500;
				line-height: 180%; /* 32.4px */
				font-size: 1.8rem;
				letter-spacing: 0.12em;
				margin-bottom: 1rem;
				@media (width <= 767px) {/* SP */
					line-height: 1.5;
					font-size: 1.5rem;
					margin-bottom: 2rem;
				}
				&:after{
					display: inline-block;
					content: '';
					background: url(../images/common/ico-btn-arw.svg) center center /100% auto no-repeat;
					width: .7rem;
					height: .9rem;
					margin-left: .8rem;
					transform: rotate(90deg);
				}
			}
			.bnrBlock__img{
				img{
					width: 100%;
				}
			}
		}
	}

	.instagramSec{
		padding-top: 13.7rem;

		@media (width <= 767px) {/* SP */
			padding-top: 9.7rem;
		}
		.secHead__ttl{
			@media (width > 767px) {/* PC */
				font-size: 2.4rem;
			}
			@media (width <= 767px) {/* SP */
				padding-top: 1rem;
			}
		}
		.imgListBlock{
			display: grid;
			grid-template-columns: repeat(4,1fr);
			gap: .4rem;
			padding-bottom: .4rem;
			@media (width <= 767px) {/* SP */
				grid-template-columns: repeat(2,1fr);
				gap: .2rem;
				padding-bottom: .2rem;
			}
			li{
				img{
					max-width: none;
					width: 100%;
					object-fit: cover;
					@media (width > 767px) {/* PC */
						aspect-ratio: 109 / 82;
					}
					@media (width <= 767px) {/* SP */
						aspect-ratio: 214 / 161;
					}
				}
			}
		}
		.btnBlock{
			text-align: center;
			margin-top: 6.5rem;
			@media (width <= 767px) {/* SP */
				margin-top: 5rem;
			}
		}
	}
	.sb_instagram_header {
		display: none !important;
	}
	#sbi_load {
		display: none !important;
	}
}
