@charset "utf-8";

/**
 * subUgc
 */
.subUgc {
	padding-top: 80px;
	padding-bottom: 160px;
}
@media screen and (max-width:767px){
	.subUgc {
		padding-top: 24px;
		padding-bottom: 48px;
	}
}
.subUgc.is-ovhidden {
	overflow: hidden;
}

/**
 * title
 */
.subUgc__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 80px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	.subUgc__title {
		margin-bottom: 40px;
	}
}

/* img */
.subUgc__title--img {
	background: url(../img/common/title_ugc.svg) no-repeat 0 0 / 100%;
	display: block;
	width: 924px;
	height: 162px;
}
@media screen and (max-width: 767px) {
	.subUgc__title--img {
	    width: 327px;
	    height: 56px;
	}
}

/* txt */
.subUgc__title--txt {
	color: #fff;
	display: block;
	font-size: 24px;
    font-weight: 700;
    margin-top: 20px;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.subUgc__title--txt {
		font-size: 16px;
		margin-top: 12px;
	}
}

/**
 * topTextWrap
 */
.topTextWrap {
	width: 878px;
	margin: 0 auto;
}
@media screen and (max-width:767px){
	.topTextWrap {
		width: 100%;
		padding: 0 24px;
	}
}

/* text */
.topText {
	color: #fff;
	font-size: 18px;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.topText {
		font-size: 14px;
	}
}

/**
 * bottomTextWrap
 */
.bottomTextWrap {
	width: 878px;
	margin: 80px auto 0;
}
@media screen and (max-width:767px){
	.bottomTextWrap {
		width: 100%;
		margin: 40px auto 0;
		padding: 0 24px;
	}
}

/* text */
.bottomText {
	color: #fff;
	font-size: 16px;
	line-height: 2;
}
@media screen and (max-width:767px){
	.bottomText {
		font-size: 12px;
	}
}

/**
 * ugcDetailDl
 */
.ugcDetailDl a {
	color: rgb(var(--color-main));
}

/* dt */
.ugcDetailDl__dt {
	display: flex;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 16px;
}
@media screen and (max-width:767px){
	.ugcDetailDl__dt {
		font-size: 14px;
		font-size: 1.4rem;
		margin-bottom: 8px;
	}
}

/* icon */
.ugcDetailDl__dt:before {
    content: "";
    background-color: #ff0056;
    display: block;
    flex: none;
    width: 16px;
    height: 24px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-image: url(../img/common/icon_thunder.svg);
    mask-image: url(../img/common/icon_thunder.svg);
    margin-top: 5px;
    margin-right: 8px;
    position: relative;
}
@media screen and (max-width:767px){
	.ugcDetailDl__dt:before {
		width: 12px;
    	height: 20px;
    	margin-top: 2px;
	}
}

/* dd */
.ugcDetailDl__dd {
	margin-bottom: 40px;
}
@media screen and (max-width:767px){
	.ugcDetailDl__dd {
		margin-bottom: 24px;
	}
}

/* text */
.ugcDetailDl__text {
	color: #fff;
	font-size: 16px;
}
@media screen and (max-width:767px){
	.ugcDetailDl__text {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* font-size 96% */
.ugcDetailDl__text.is-fsize96 {
	font-size: 96%;
}

/**
 * ugcHowtoDl
 */
/* item */
.ugcHowtoDl__item {
	color: #fff;
	display: flex;
	font-size: 16px;
}
.ugcHowtoDl__item:not(:first-child) {
	margin-top: 6px;
}
@media screen and (max-width:767px){
	.ugcHowtoDl__item {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* dt in */
.ugcHowtoDl__dt__in {
	background-color: #fff;
	color: #000;
	font-weight: bold;
	font-size: 18px;
	padding: 0 4px;
}
@media screen and (max-width:767px){
	.ugcHowtoDl__dt__in {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

/* dd */
.ugcHowtoDl__dd {
	padding-top: 2px;
	padding-left: 16px;
}


/**
 * ugcOneWrap
 */
.ugcOneWrap {
	width: 878px;
	margin: 80px auto 0;
}
@media screen and (max-width:767px){
	.ugcOneWrap {
		width: 100%;
		margin: 40px auto 0;
		padding: 0 24px;
	}
}

/* ugcOne */
.ugcOne:not(:first-child) {
	margin-top: 80px;
}
@media screen and (max-width:767px){
	.ugcOne:not(:first-child) {
		margin-top: 40px;
	}
}

/* title */
.ugcOne__title {
	border-bottom: 1px solid rgba(var(--color-main),1);
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 40px;
    padding-bottom: 30px;
}
@media screen and (max-width:767px){
	.ugcOne__title {
		font-size: 16px;
		margin-bottom: 24px;
    	padding-bottom: 12px;
	}
}

/* text */
.ugcOne__text {
	color: #fff;
	font-size: 16px;
}
@media screen and (max-width:767px){
	.ugcOne__text {
		font-size: 12px;
	}
}

/**
 * ugcLists
 */
.ugcLists {
	display: flex;
	flex-wrap: wrap;
}

/* item */
.ugcLists__item {
	width: calc((100% - 64px) / 3);
	margin-bottom: 50px;
}
.ugcLists__item:not(:nth-child(3n + 1)) {
    margin-left: 32px;
}
@media screen and (max-width:767px){
	.ugcLists__item {
		width: calc((100% - 24px) / 2);
		margin-bottom: 24px;
	}
	.ugcLists__item:not(:nth-child(3n + 1)) {
		margin-left: 0;
	}
	.ugcLists__item:not(:nth-child(2n + 1)) {
		margin-left: 24px;
	}
}

/* a */
.ugcLists__item > a {
	display: block;
	width: 100%;
	text-decoration: none;
}

/* thumbArea */
.ugcLists__thumbArea {
	width: 100%;
	padding-top: 100%;
	position: relative;
}
.ugcLists__thumbWrap {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.ugcLists__thumb {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: transform .4s cubic-bezier(0.25, 1, 0.5, 1);
}
/*.ugcLists__item > a:hover .ugcLists__thumb {
	transform: scale(1.4);
}*/

/* time */
.ugcLists__timeWrap {
	height: 20px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
@media screen and (max-width:767px){
	.ugcLists__timeWrap {
		height: 16px;
	}
}

.ugcLists__timeWrap:before {
	content: "";
	background-color: rgba(var(--color-main),1);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.ugcLists__timeWrap time {
	color: #fff;
	font-size: 16px;
	line-height: 1;
	padding: 0 4px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:767px){
	.ugcLists__timeWrap time {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* title */
.ugcLists__title {
	color: #fff;
	overflow: hidden;
	font-size: 16px;
	line-height: 2;
	margin-top: 12px;
}
@media screen and (max-width:767px){
	.ugcLists__title {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* alink */
.ugcLists__aLink {
	background-color: #fff;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    margin-top: 10px;
    padding: 12px 80px;
    text-align: center;
}
.ugc__more {
	width: 100%;
    margin: 80px auto 0;
    display: flex;
    justify-content: center;
}
@media screen and (max-width:767px){
	.ugcLists__aLink {
		font-size: 12px;
		font-size: 1.2rem;
		padding: 12px 10px;
	}
	.ugc__more {
		width: 100%;
	    margin: 48px auto 0;
	}
}

/**
 * guideline
 */
/* wrap */
.ugcOne__guidelineWrap {
	-webkit-overflow-scrolling: touch;
	border: 1px solid rgba(var(--color-main),1);
	padding: 40px;
	height: 500px;
    overflow-y: scroll;
}
@media screen and (max-width:767px){
	.ugcOne__guidelineWrap {
		padding: 20px;
		height: 350px;
	}
}

/* guideline */
.ugcOne__guideline:not(:first-of-type) {
	margin-top: 40px;
}
@media screen and (max-width:767px){
	.ugcOne__guideline:not(:first-of-type) {
		margin-top: 30px;
	}
}

/* a */
.ugcOne__guideline a {
	color: rgb(var(--color-main));
}


/**
 * guideline title
 */
.ugcOne__guideline__title {
	display: flex;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 16px;
}
@media screen and (max-width:767px){
	.ugcOne__guideline__title {
		font-size: 14px;
		font-size: 1.4rem;
		margin-bottom: 10px;
	}
}

/* icon */
.ugcOne__guideline__title:before {
    content: "";
    background-color: #ff0056;
    display: block;
    flex: none;
    width: 16px;
    height: 24px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-image: url(../img/common/icon_thunder.svg);
    mask-image: url(../img/common/icon_thunder.svg);
    margin-top: 5px;
    margin-right: 8px;
    position: relative;
}
@media screen and (max-width:767px){
	.ugcOne__guideline__title:before {
		width: 12px;
    	height: 20px;
    	margin-top: 2px;
	}
}

/**
 * guideline text
 */
.ugcOne__guideline__text {
	color: #fff;
	font-size: 16px;
}
.ugcOne__guideline__text:not(:first-of-type) {
	margin-top: 16px;
}
@media screen and (max-width:767px){
	.ugcOne__guideline__text {
		font-size: 12px;
		font-size: 1.2rem;
	}
}