@charset "UTF-8";

@media screen and (min-width:1025px) {
	.tokushu-wrap .sp {
		display: none !important;
	}
}

/* -- all -- */
.tokushu-wrap {
	width: 100%;
	margin: 0;
	padding: 0 !important;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Meiryo", "メイリオ", "sans-serif";
	font-size: 62.5% !important;
	line-height: 100%;
	text-align: center;
	overflow: hidden;
	color: #3d3d3d;
	/* IE */
	background: -ms-linear-gradient(left, #faf5ff, #f3fbff);
	/* Mozilla */
	background: -moz-linear-gradient(left, #faf5ff, #f3fbff);
	/* Opera */
	background: -o-linear-gradient(left, #faf5ff, #f3fbff);
	/* Webkit */
	background: -webkit-linear-gradient(left, #faf5ff, #f3fbff);
	/* W3C */
	background: linear-gradient(left, #faf5ff, #f3fbff);
}

.tokushu-wrap a {
	text-decoration: none !important;
}

/* -- sns -- */
.sns-wrap {
	margin: 5px 0 5px 3px !important;
}

.sns-wrap .fb-like {
	margin-top: -2px !important;
}

.sns-wrap .line {
	display: inline-block;
	margin-top: -2px !important;
	padding-left: 5px\0 !important;
	padding-left: 5px\9 !important;
	line-height: 0;
}

/* -- header -- */
.tokushu-wrap .header {
	position: relative;
	width: 510px;
	margin: 0 !important;
	text-align: center;
}

.tokushu-wrap .header img {
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 0 auto !important;
}

.tokushu-wrap .header div > img {
	position: absolute;
	top: -30px;
	left: 6px;
	z-index: 2;
}

/* -- cont_wrap -- */
.tokushu-wrap .cont-wrap {
	margin: 10px auto !important;
}

/* -- cont -- */
.tokushu-wrap .cont {
	width: 490px;
	margin: 15px auto !important;
	padding: 7px !important;
	background: url(../imgs/contents_bg.jpg) repeat;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 8px;
	-ms-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-shadow: 2px 3px 3px #606060;
	-moz-box-shadow: 2px 3px 3px #606060;
	box-shadow: 2px 3px 3px #606060;
}

/*.tokushu-wrap .cont > div {
	display: block;
	position: relative;
	width: 100%;
	padding: 8px !important;
	background-color: #fff;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 8px;
	-ms-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
}*/

/* -- cont_title -- */
.tokushu-wrap .cont-title {
	position: relative;
	width: 100%;
	height: auto;
	padding: 8px 0 5px !important;
	margin: 0 auto !important;
	text-align: center;
	-webkit-border-radius: 11px;
	-ms-border-radius: 11px;
	-moz-border-radius: 11px;
	-o-border-radius: 11px;
	border-radius: 11px;
	font-size: 2.0em;
	font-size: 20px !important;
	line-height: 20px;
	font-weight: 600;
	color: #fff;
	text-shadow: #5ca8dd 2px 2px 0px, #5ca8dd -2px 2px 0px,
		#5ca8dd 2px -2px 0px, #5ca8dd -2px -2px 0px;
	/* IE */
	background: -ms-linear-gradient(left, #7d61a7, #5ca8dd);
	/* Mozilla */
	background: -moz-linear-gradient(left, #7d61a7, #5ca8dd);
	/* Opera */
	background: -o-linear-gradient(left, #7d61a7, #5ca8dd);
	/* Webkit */
	background: -webkit-linear-gradient(left, #7d61a7, #5ca8dd);
	/* W3C */
	background: linear-gradient(left, #7d61a7, #5ca8dd);
}

/* info */
.tokushu-wrap .cont_inner {
	display: block;
	position: relative;
	width: 100%;
	padding: 8px 10px !important;
	background-color: #fff;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 8px;
	-ms-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	width: 100%;
	margin: 0 !important;
	text-align: left;
	font-size: 1.2em;
	font-size: 12px !important;
	line-height: 1.3 !important;
}

.tokushu-wrap .cont_inner .lead {
	font-size: 1.4em;
	font-size: 14px !important;
	font-weight: bold;
	line-height: 1.2 !important;
	margin: 10px 5px 5px !important;
}

.tokushu-wrap .cont_inner .lead ins {
	--ins-color: #fcff00;
	--color: var(--ins-color, yellow);
	text-decoration: none;
	background-repeat: no-repeat;
	background-image:
		linear-gradient(to left, rgba(255, 255, 255, .5), transparent),
		linear-gradient(2deg, var(--color) 50%, transparent 50%),
		linear-gradient(-.9deg, var(--color) 50%, transparent 50%),
		linear-gradient(-60deg, var(--color) 50%, transparent 50%),
		linear-gradient(120deg, var(--color) 50%, transparent 50%);
	background-size:
		30% 1.5px,
		calc(100% - 20px) 10px,
		calc(100% - 20px) 10px,
		10px 10px,
		8px 8px;
	background-position:
		100% calc(50% + 2px),
		center center,
		center center,
		2px 50%,
		calc(100% - 3px) calc(50% + 1px);
}

.tokushu-wrap .cont_inner .text-area {
	display: inline-block;
	width:315px;
}
.tokushu-wrap .cont_inner .img-area {
	display: inline-block;
	width:133px;
	vertical-align: top;
	text-align:center !important;
}

.tokushu-wrap .cont_inner .image {
	width: auto;
	text-align: center !important;
	margin: 10px 0 !important;
	padding: 0 !important;
}

.tokushu-wrap .cont_inner .cont_text {
	width: 100%;
	margin: 0 !important;
	padding:5px !important;
	font-size: 1.2em;
	font-size: 12px !important;
	vertical-align: top;
	line-height: 1.5 !important;
	font-weight: bold;
}

.tokushu-wrap .cont_inner .cont_text span {
	color: #4d4a45;
	font-size: 1.05em;
	font-size: 10.5px !important;
	font-weight: normal;
}

/* -- サブ見出し -- */
.tokushu-wrap .cont_inner h3 {
	display: table;
	padding: 4px 15px 2px !important;
	margin: 10px 0 0 5px !important;
	color: #ffffff;
	font-size: 1.3em;
	font-size: 13px !important;
	font-weight: bold;
	-webkit-border-radius: 12px;
	-ms-border-radius: 12px;
	-moz-border-radius: 12px;
	-o-border-radius: 12px;
	border-radius: 12px;
	/* IE */
	background: -ms-linear-gradient(left, #fd83a0, #d099f9);
	/* Mozilla */
	background: -moz-linear-gradient(left, #fd83a0, #d099f9);
	/* Opera */
	background: -o-linear-gradient(left, #fd83a0, #d099f9);
	/* Webkit */
	background: -webkit-linear-gradient(left, #fd83a0, #d099f9);
	/* W3C */
	background: linear-gradient(left, #fd83a0, #d099f9);
}

/* -- dl/dt/dd -- */
.tokushu-wrap .cont_inner dl {
	margin-top: 5px !important;
	margin-left: 5px !important;
}
.tokushu-wrap .cont_inner dl dt {
	display: inline-block;
	width: 13%;
	margin: 2px 0 !important;
	padding: 0;
	color: #805db7;
	font-size: 1.2em;
	font-size: 12px !important;
	font-weight: bold;
	vertical-align: top;
	line-height: 1.4 !important;
}

.tokushu-wrap .cont_inner dl dt:after {
	display: inline-block;
	margin-left: 6px !important;
	font-family: FontAwesome;
	content: "\f0da";
}

.tokushu-wrap .cont_inner dl dd {
	display: inline-block;
	width: 80%;
	margin: 2px 0 !important;
	padding: 0;
	color: #4d4a45;
	font-size: 1.2em;
	font-size: 12px !important;
	vertical-align: top;
	line-height: 1.4 !important;
	font-weight: bold;
}

.tokushu-wrap .cont_inner dl dd span {
	color: #4d4a45;
	font-size: 1.05em;
	font-size: 10.5px !important;
	font-weight: normal;
}


.tokushu-wrap .cont_inner dl.limit {
	width: 100%;
	margin: 0 5px 8px !important;
	text-align: left;
}

.tokushu-wrap .cont_inner dl.limit dd {
	width: 100%;
	color: #eb3564;
	font-size: 1.6em;
	font-size: 16px !important;
	font-weight: bold;
	line-height: 1.7 !important;
}

.tokushu-wrap .cont_inner dl.limit dd small {
	font-size: 1.2em;
	font-size: 12px !important;
	margin-left: -4px !important;
}

.tokushu-wrap .cont_inner dl.limit dd span {
	color: #4d4a45;
	font-size: 1.05em;
	font-size: 10.5px !important;
	font-weight: normal;
}

.tokushu-wrap a.button {
	display: inline-block;
	width: 65%;
	margin: 0 auto 10px auto !important;
	background-color: #9781b9;
	color: #ffeaac;
	font-size: 1.6em;
	font-size: 16px !important;
	font-weight: bold;
	text-align: center;
	line-height: 40px !important;
	-webkit-border-radius: 25px;
	-ms-border-radius: 25px;
	-moz-border-radius: 25px;
	-o-border-radius: 25px;
	border-radius: 25px;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	-ms-transition-property: transform;
	-moz-transition-property: transform;
	-o-transition-property: transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-box-shadow: 2px 3px 3px #606060;
	-moz-box-shadow: 2px 3px 3px #606060;
	box-shadow: 2px 3px 3px #606060;
}

.tokushu-wrap a.button:hover,
.tokushu-wrap a.button:focus,
.tokushu-wrap a.button:active {
	color: #fef124 !important;
	-webkit-transform: scale(0.95);
	-ms-transform: scale(0.95);
	-moz-transform: scale(0.95);
	-o-transform: scale(0.95);
	transform: scale(0.95);
	-webkit-box-shadow: 1px 1px 3px #606060;
	-moz-box-shadow: 1px 1px 3px #606060;
	box-shadow: 1px 1px 3px #606060;
}

/* 参加方法・内容 サブ */
.tokushu-wrap .register,
.tokushu-wrap .step {
	width: 98%;
	margin: 6px auto 12px auto !important;
	padding: 1px 5px 5px !important;
	background-color: #ffd6d2;
	text-align: left;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
}

.tokushu-wrap .register h4,
.tokushu-wrap .step h4 {
	margin: 8px 0 !important;
	padding: 0 0 1px !important;
	color: #ffffff;
	font-size: 1.3em;
	font-size: 13px !important;
	font-weight: bold;
	text-align: center;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	text-shadow:
		2px 2px 1px #ff547d,
		-2px 2px 1px #ff547d,
		2px -2px 1px #ff547d,
		-2px -2px 1px #ff547d,
		2px 0px 1px #ff547d,
		0px 2px 1px #ff547d,
		-2px 0px 1px #ff547d,
		0px -2px 1px #ff547d;
}


.tokushu-wrap .register .inner,
.tokushu-wrap .step .inner {
	display: block;
	position: relative;
	width: 100%;
	padding: 10px !important;
	background-color: #fff;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 8px;
	-ms-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	text-align: left !important;
	font-size: 1.1em;
	font-size: 11px !important;
}
.tokushu-wrap .step .inner img {
	border: 1px solid #ccc;
}

.tokushu-wrap .register .inner > p,
.tokushu-wrap .step .inner > p {
	font-size: 1.1em;
	font-size: 11px !important;
	margin: 0 !important;
}

.tokushu-wrap .register .inner > p span,
.tokushu-wrap .step .inner > p span {
	color: #ff4470;
	font-weight: bold;
	text-decoration: underline;
}

.tokushu-wrap .register .inner a,
.tokushu-wrap .step .inner a {
	color: #ff4470 !important;
	font-weight: bold;
}

.tokushu-wrap .register .inner > div,
.tokushu-wrap .step .inner > div {
	margin: 10px 0 0 !important;
}

.tokushu-wrap .register .inner > div > p,
.tokushu-wrap .step .inner > div > p {
	margin: 0 5px !important;
	font-size: 1.05em;
	font-size: 10.5px !important;
	text-indent: -10px;
	line-height: 1.4 !important;
}

.tokushu-wrap .register .inner > div > p > span,
.tokushu-wrap .step .inner > div > p > span {
	color: #eb3564;
	font-weight: bold;
}

.tokushu-wrap .register img,
.tokushu-wrap .step img {
	margin: 10px !important;
}

/* 商品項目 */
.tokushu-wrap .item_inner {
	display: block;
	position: relative;
	width: 100%;
	padding: 8px !important;
	background-color: #fff;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 8px;
	-ms-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	width: 100%;
	margin: 0 !important;
	text-align: left;
	font-size: 1.2em;
	font-size: 12px !important;
	line-height: 1.3 !important;
}

.tokushu-wrap .item_inner .cnt {
	width: 100% !important;
	color: #eb3564;
	text-align: center !important;
	font-size: 1.4em;
	font-size: 14px !important;
	margin: 10px 0 !important;
	font-weight: bold;
}

.tokushu-wrap .item_inner .item {
	position: relative;
}

.tokushu-wrap .item_inner .item img {
	display: inline-block;
	width: 210px;
	height: 210px;
	border: 1px solid #ccc;
}

.tokushu-wrap .item_inner .item .text-area {
	display: inline-block;
	width: 240px;
	vertical-align: top !important;
	text-align: left !important;
}

.tokushu-wrap .item_inner .item .text-area h5 {
	margin: 3px !important;
	font-size: 1.55em;
	font-size: 15.5px !important;
	font-weight: bold;
	line-height: 1.6 !important;
}

.tokushu-wrap .item h5 span {
	font-size: 1.1em;
	font-size: 11px !important;
	font-weight: normal;
}

.tokushu-wrap .item_inner .item .text-area .detail {
	text-align: left;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	background-color: #eee;
	padding: 3px !important;
}

.tokushu-wrap .item_inner .item .detail > dl {
	width: 230px;
	text-align: left;
	padding-left:5px !important;
}

.tokushu-wrap .item_inner .item .detail > dl dt,
.tokushu-wrap .item_inner .item .detail > dl dd {
	display: inline-block;
	color: #555555 !important;
	font-size: 1.1em;
	font-size: 11px !important;
	line-height: 1.7 !important;
	vertical-align: top;
}

.tokushu-wrap .item_inner .item .detail > dl dt {
	width: 26%;
}

.tokushu-wrap .item_inner .item .detail > dl dd {
	width: 68%;
}

.tokushu-wrap .item_inner .item .detail > dl dt:after {
	display: inline-block;
	margin: 0 5px;
	font-family: FontAwesome;
	font-weight: 100;
	content: "\f0da";
}

.tokushu-wrap .item a {
	color: #4d4a45 !important;
	-webkit-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.tokushu-wrap .item a:hover {
	color: #95918a !important;
	text-decoration: underline !important;
}

.tokushu-wrap .item_inner .item dl.value {
	position: absolute;
	right: 5px;
	bottom: 0;
	color: #e62e8b;
	font-weight: bold;
}

.tokushu-wrap .item_inner .item dt {
	display: inline-block;
	font-size: 1.2em;
	font-size: 12px !important;
}

.tokushu-wrap .item_inner .item dd {
	display: inline-block;
	margin-left: 6px !important;
	font-size: 2.2em;
	font-size: 22px !important;
}

.tokushu-wrap .item_inner .item dd span {
	font-size: 1.05em;
	font-size: 10.5px !important;
	font-weight: normal;
}

.tokushu-wrap .item_inner a.button-item {
	display: inline-block;
	width: 45%;
	margin: 15px 0 10px 13px !important;
	background-color: #f72673;
	color: #ffeaac;
	font-size: 1.6em;
	font-size: 16px !important;
	font-weight: bold;
	text-align: center;
	line-height: 40px !important;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	-ms-transition-property: transform;
	-moz-transition-property: transform;
	-o-transition-property: transform;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-box-shadow: 2px 3px 3px #606060;
	-moz-box-shadow: 2px 3px 3px #606060;
	box-shadow: 2px 3px 3px #606060;
}

.tokushu-wrap a.button-item:hover,
.tokushu-wrap a.button-item:focus,
.tokushu-wrap a.button-item:active {
	color: #fef124 !important;
	-webkit-transform: scale(0.98);
	-ms-transform: scale(0.98);
	-moz-transform: scale(0.98);
	-o-transform: scale(0.98);
	transform: scale(0.98);
	-webkit-box-shadow: 1px 1px 3px #606060;
	-moz-box-shadow: 1px 1px 3px #606060;
	box-shadow: 1px 1px 3px #606060;
}

/* 注意事項 */
.tokushu-wrap .caution {
	margin: 10px 3px 10px !important;
	text-align: left;
}

.tokushu-wrap .caution li {
	margin: 1px 0 1px 18px !important;
	font-size: 1.05em;
	font-size: 10.5px !important;
	list-style-type: square;
	line-height: 1.8 !important;
}

.tokushu-wrap .caution li span {
	color: #eb3564;
	font-weight: bold;
}

/* 個人情報のとりあつかい */

.tokushu-wrap .privacy {
	margin: 10px 3px 10px !important;
	text-align: left;
}

.tokushu-wrap .privacy li {
	margin: 1px 0 1px 5px !important;
	color: #4d4a45;
	font-size: 1.05em;
	font-size: 10.5px !important;
	line-height: 1.8 !important;
}

/* -- footer -- */
.tokushu-wrap .footer {
	width: 100%;
	height: 45px;
	margin: auto !important;
	background-color: #535353;
	text-align: center;
}

.tokushu-wrap .footer p {
	margin-top: 2px !important;
	color: #ffffff;
	font-size: 1.05em;
	font-size: 10.5px !important;
	line-height: 50px !important;
}

.tokushu-wrap .footer p:before {
	display: inline-block;
	margin-right: 6px !important;
	font-family: FontAwesome;
	content: "\f1f9";
}

/* -- backtop -- */
.tokushu-wrap .backtop {
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index: 9999;
}

.tokushu-wrap .backtop a {
	display: block;
	width: 69px;
	height: 69px;
	-webkit-transition-duration: 0.3s;
	-ms-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition: 1s;
	-ms-transition: 1s;
	-moz-transition: 1s;
	-o-transition: 1s;
	transition: 1s;
}

.tokushu-wrap .backtop span {
	display: block;
	width: 69px;
	height: 69px;
	background: url(../imgs/backtop.png) no-repeat left top;
}

.tokushu-wrap .backtop a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: alpha(opacity=70);
}
