@charset "utf-8";
.wrapper {
	overflow-x: hidden;
}
/*=====campaign=====*/
main {
	background: url(/campaign/winter/img/bg.png) no-repeat;
	background-position: center bottom;
	background-size: contain;
	background-color: #57a832;
}
.mvArea {
	position: relative;
	max-width: 100rem;
	margin: 0 auto;
	background: #fff;
}
h2 {
	width: 88rem;
	position: absolute;
	bottom: 13rem;
	left: calc(50% - 44rem);
}
.content {
	max-width: 100rem;
	margin: 0 auto;
	background: #fff;
	padding-bottom: 5rem;
}
.inner {
	max-width: 90rem;
	margin: 0 auto;
}
.leadArea {
	margin: -11.5rem auto 0;
	width: 79.5rem;
	position: relative;
	z-index: 5;
}
.leadArea .lead {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 3rem;
	text-align: center;
}
.leadArea .lead span {
	color: #ed6d46;
}
.leadArea .leadNote {
	margin-top: 1rem;
	font-size: 1.3rem;
	line-height: 2.4rem;
	text-align: center;
}
@media (max-width: 768px) {
	.mvArea {
		max-width: 100%;
		background: transparent;
	}
	.mvArea h1 {
		background: #fff;
	}
	h2 {
		position: static;
		width: 63.2rem;
		margin: -8.5rem auto 0;
	}
	.content {
		max-width: 100%;
		padding-bottom: 5rem;
		margin: 0 3rem;
	}
	.contentArea {
		padding-top: 4rem;
	}
	.inner {
		max-width: 100%;
		padding: 0 3rem;
	}
	.leadArea {
		width: 100%;
		margin: 0 auto;
	}
	.leadArea .lead {
		font-size: 2.8rem;
		line-height: 4.6rem;
	}
	.leadArea .leadNote {
		margin-top: 2rem;
		font-size: 2.2rem;
		line-height: 4.2rem;
		text-align: left;
		padding-left: 1em;
		text-indent: -1em;
	}
}
/*=====end=====*/
.end {
	width: 56rem;
	margin: 1rem auto 0;
	font-size: 2.8rem;
	font-weight: bold;
	text-align: center;
	color: #e60012;
	background: #fff836;
	padding: 1rem;
}
.end.mgt {
	margin-top: 2rem;
}
@media (max-width: 768px) {
	.end {
		width: 59rem;
		margin: 3rem auto 0;
		font-size: 3.4rem;
		padding: 2rem;
	}
	.end.mgt {
		margin-top: 4rem;
	}
}
/*=====present=====*/
.present {
	padding-top: 5.5rem;
}
.present h3 {
	font-size: 4.6rem;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 700;
	text-align: center;
	color: #3cb034;
}
.present .presentContent {
	margin-top: 4rem;
}
.present .presentContent .presentBox {
	padding: 3rem 3rem 2.5rem 2.5rem;
	border-radius: 1.5rem;
	display: flex;
	justify-content: space-between;
	position: relative;
	border: 3px solid #3cb034;
}
.present .presentContent .presentBox + .presentBox {
	margin-top: 5rem;
}
.present .presentContent .presentBox .presentTtl {
	margin-top: -6rem;
	width: 10.2rem;
}
.present .presentContent .presentBox .presentContentsBox {
	width: 68.5rem;
}
.present .presentContent .presentBox .presentContentsBox .giftBox {
	display: flex;
}
.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox {
	width: 40rem;
}
.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTtl {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 3.4rem;
}
.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTxt {
	margin-top: 0.5rem;
	font-size: 1.6rem;
	line-height: 2.4rem;
	font-weight: bold;
}
.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTxt.sm {
	font-size: 1.4rem;
}
.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTxt span {
	font-size: 1.3rem;
}
.present .presentContent .presentBox .presentContentsBox .presentList {
	margin-top: 2rem;
	display: flex;
	gap: 0 1rem;
	position: relative;
}

.present .presentContent .presentBox .presentContentsBox .presentList li {
	width: 59.4rem;
	display: flex;
	flex-direction: column;
}
.present .presentContent .presentBox .presentContentsBox .presentList li .presentListTtl {
	font-size: 1.4rem;
	font-weight: bold;
	margin-bottom: 0.5rem;
	flex-grow: 1;
}
/*red*/

.present .presentContent .presentBox.red .presentContentsBox .giftBox {
	justify-content: start;
	gap: 4rem;
}
.present .presentContent .presentBox.red .presentContentsBox .giftBox .giftPic {
	width: 15.3rem;
}
/*yellow*/

.present .presentContent .presentBox.yellow .presentContentsBox .giftBox {
	justify-content: start;
	gap: 0 4rem;
}
.present .presentContent .presentBox.yellow .presentContentsBox .giftBox.box02 .giftTxtBox {
	width: 37rem;
}
.present .presentContent .presentBox.yellow .presentContentsBox .giftBox .giftPic.pic01 {
	width: 15.6rem;
}
.present .presentContent .presentBox.yellow .presentContentsBox .giftBox .giftPic.pic02 {
	width: 29rem;
}
.present .presentContent .presentBox.yellow .presentContentsBox .giftBox .giftPic {
	width: 12.4rem;
}
/*blue*/
.present .presentContent .presentBox.blue {
	justify-content: flex-start;
	gap: 0 3rem;
}
.present .presentContent .presentBox.blue .presentTtl {
	margin-bottom: -4rem;
}
.present .presentContent .presentBox.blue .giftTxt {
	width: 50rem;
	padding: 0 13rem 0 16.5rem;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 3.4rem;
	position: relative;
	margin-bottom: 5rem;
}
.present .presentContent .presentBox.blue .giftTxt::before {
	content: "";
	width: 15rem;
	height: 11rem;
	background: url(/campaign/winter/img/C_img01.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
}
.present .presentContent .presentBox.blue .giftTxt::after {
	content: "";
	width: 12rem;
	height: 13.1rem;
	background: url(/campaign/winter/img/C_img02.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: -1rem;
	right: 0;
}
@media (max-width: 768px) {
	.present {
		padding-top: 10rem;
	}
	.present h3 {
		font-size: 5.6rem;
		line-height: 7rem;
		margin-bottom: 2rem;
	}
	.present .presentContent {
		margin-top: 4rem;
	}
	.present .presentContent .presentBox {
		padding: 3.5rem 3rem 3.5rem 3rem;
		gap: 0 1.5rem;
		display: block;
	}
	.present .presentContent .presentBox + .presentBox {
		margin-top: 4.5rem;
	}
	.present .presentContent .presentBox .presentTtl {
		margin-top: -6rem;
		width: 14.3rem;
	}
	.present .presentContent .presentBox .presentContentsBox {
		width: 100%;
		margin-top: 5rem;
	}
	.present .presentContent .presentBox .presentContentsBox .giftBox {
		flex-direction: column;
	}
	.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox {
		width: 100%;
	}
	.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTtl {
		font-size: 3.6rem;
		line-height: 5rem;
	}
	.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTxt {
		margin-top: 0.5rem;
		font-size: 2.6rem;
		line-height: 4.4rem;
	}
	.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTxt.sm {
		font-size: 2.4rem;
	}
	.present .presentContent .presentBox .presentContentsBox .giftBox .giftTxtBox .giftTxt span {
		font-size: 2.4rem;
	}
	.present .presentContent .presentBox .presentContentsBox .presentList {
		margin-top: 2rem;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 1.5rem 1rem;
		padding-left: 0;
	}

	.present .presentContent .presentBox .presentContentsBox .presentList li {
		width: 100%;
	}
	.present .presentContent .presentBox .presentContentsBox .presentList li .presentListTtl {
		font-size: 2.1rem;
		margin-bottom: 0.5rem;
	}
	/*red*/
	.present .presentContent .presentBox.red .presentContentsBox .giftBox {
		flex-direction: column-reverse;
	}
	.present .presentContent .presentBox.red .presentContentsBox .giftBox .giftPic {
		width: 25.8rem;
		margin-bottom: 2.5rem;
		position: absolute;
		top: -27rem;
		right: 12rem;
	}
	/*yellow*/
	.present .presentContent .presentBox.yellow .presentContentsBox .giftBox.box01 {
		gap: 2.5rem 0;
	}
	.present .presentContent .presentBox.yellow .presentContentsBox .giftBox.box02 {
		margin-top: 2rem;
		justify-content: space-between;
	}
	.present .presentContent .presentBox.yellow .presentContentsBox .giftBox.box02 .giftTxtBox {
		width: 100%;
	}
	.present .presentContent .presentBox.yellow .presentContentsBox .giftBox .giftPic.pic01 {
		width: 23.1rem;
	}
	.present .presentContent .presentBox.yellow .presentContentsBox .giftBox .giftPic.pic02 {
		margin-top: 2rem;
		width: 38.8rem;
	}
	.present .presentContent .presentBox.yellow .presentContentsBox .giftBox .giftPic {
		position: absolute;
		top: -26rem;
		right: 14rem;
		width: 20rem;
	}
	/*blue*/
	.present .presentContent .presentBox.blue {
		justify-content: space-between;
		gap: 0 1.5rem;
	}
	.present .presentContent .presentBox.blue .presentTtl {
		margin-bottom: 0;
	}
	.present .presentContent .presentBox.blue .giftTxt {
		width: 100%;
		padding: 0 0 0 23rem;
		font-size: 3.6rem;
		line-height: 5rem;
		margin-top: 8rem;
		margin-bottom: 0;
	}
	.present .presentContent .presentBox.blue .giftTxt::before {
		width: 19.7rem;
		height: 14.4rem;
		top: 0;
		left: 0;
	}
	.present .presentContent .presentBox.blue .giftTxt::after {
		width: 23.1rem;
		height: 24.3rem;
		top: -29rem;
    	right: 7rem;
	}
}
/* @media (max-width: 335px) {
	.present .presentContent .presentBox .presentContentsBox {
		width: 65rem;
	}
	.present .presentContent .presentBox .presentContentsBox .presentList::before {
		width: 10.5rem;
		height: 9.1rem;
		top: 2.5rem;
		left: -11.5rem;
	}
	.present .presentContent .presentBox.blue .giftTxt {
		width: 65rem;
	}
} */
/*=====entry=====*/
.entry {
	margin-top: 7rem;
}
.entry h4 {
	font-size: 3.8rem;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 500;
	text-align: center;
	color: #fff;
	background: #3cb034;
	border-radius: 1rem;
	padding: 0.8rem;
}
.entry .entryBox {
	margin-top: 3.5rem;
	padding-bottom: 2.5rem;
	border-bottom: 0.1rem solid #999;
}
.entry .entryBox + .entryBox {
	margin-top: 3rem;
}
.entry .entryBox .stepArea {
	display: flex;
	gap: 0 1.5rem;
}
.entry .entryBox .stepArea .step {
	width: 8.6rem;
	height: 8.6rem;
	border-radius: 50%;
	background: #3cb034;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.3;
	text-align: center;
	padding: 1.5rem;
}
.entry .entryBox .stepArea .step span {
	font-size: 3rem;
}
.entry .entryBox .stepArea .stepBox {
	width: 90%;
}
.entry .entryBox .stepArea .stepBox .stepTtl {
	font-size: 1.8rem;
	font-weight: bold;
}
.entry .entryBox .stepArea .stepBox .stepTtl span {
	background: linear-gradient(transparent 60%, #ffff00 60%);
}
.entry .entryBox .linkBtn a {
	display: block;
	width: 37.6rem;
	margin: -4.5rem auto 0;
	border: 0.2rem solid #3cb034;
	border-radius: 1rem;
	padding: 1.2rem;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	color: #3cb034;
}
.entry .entryBox .linkBtn a span {
	display: inline-block;
	position: relative;
}
.entry .entryBox .linkBtn a span::before {
	content: "";
	width: 3.1rem;
	height: 3.1rem;
	background: url(/campaign/winter/img/icn_insta01.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 1.3rem);
	left: -4rem;
}
.entry .entryBox .linkBtn a span::after {
	content: "";
	width: 2.2rem;
	height: 2.2rem;
	background: url(/campaign/winter/img/icn_link.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 0.8rem);
	right: -3rem;
}
.entry .entryBox .stepArea .stepBox .stepTxt {
	margin-top: 0.5rem;
	font-size: 1.5rem;
	line-height: 3rem;
}
.entry .entryBox .stepArea .stepBox .stepTxt .green {
	font-weight: bold;
	color: #3cb034;
}
.entry .entryBox .stepArea .stepBox .stepTxt .red {
	font-weight: bold;
	color: #ed6d46;
}
.entry .entryBox .stepArea .stepBox .stepTxt .bold {
	font-weight: bold;
}
.entry .entryBox .stepArea .stepBox .stepTxt .small {
	font-size: 1.4rem;
}
.entry .entryBox .stepArea .stepBox ol.stepTxt {
	margin-top: 1rem;
	padding-left: 1em;
	text-indent: -1em;
}
.entry .entryBox .sample {
	width: 40.6rem;
	display: flex;
	margin: 2rem auto 0;
	background: #ebf9e8;
	border-radius: 1rem;
	padding: 1.5rem 4rem;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 3rem;
	position: relative;
}
.entry .entryBox .sample .black {
	width: 2em;
	color: #333;
}
.entry .entryBox .sample .green {
	width: 90%;
	color: #3cb034;
}
.entry .entryBox .sample::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3rem 4.5rem 0 4.5rem;
	border-color: #3cb034 transparent transparent transparent;
	position: absolute;
	bottom: -5rem;
	left: calc(50% - 4.5rem);
}
.entry .entryBox .copyTxt {
	margin-top: 7rem;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 3rem;
	text-align: center;
}
.entry .entryBox .copyBox {
	margin-top: 2rem;
	display: flex;
	justify-content: center;
	gap: 0 1.5rem;
	position: relative;
}
.entry .entryBox .copyBox .selectBox {
	width: 28rem;
	position: relative;
}
.entry .entryBox .copyBox .selectBox::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1rem 0.7rem 0 0.7rem;
	border-color: #3cb034 transparent transparent transparent;
	position: absolute;
	top: calc(50% - 0.5rem);
	right: 1.5rem;
}
.entry .entryBox .copyBox #selectCopy {
	width: 28rem;
	background: #fff;
	border: 0.2rem solid #3cb034;
	border-radius: 1rem;
	padding: 1rem;
	font-size: 1.6rem;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	outline: none;
	cursor: pointer;
}
.entry .entryBox .copyBox #btnCopy {
	width: 12rem;
	background: #3cb034;
	border-radius: 1rem;
	padding: 1rem;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	color: #fff;
	text-align: center;
	cursor: pointer;
}
.entry .entryBox .sampleTtl {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}
.entry .entryBox .samplePic {
	width: 83.9rem;
	margin: 1.5rem auto 0;
}
.entry .entryNotes {
	margin-top: 4rem;
}
.entry .entryNotes dt {
	font-size: 1.6rem;
	font-weight: bold;
}
.entry .entryNotes dd + dt {
	margin-top: 2rem;
}
.entry .entryNotes dd > p{
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 3rem;
}
.entry .entryNotes dd > ul {
	margin-top: 1rem;
}
.entry .entryNotes dd > ul li {
	font-size: 1.4rem;
	line-height: 2.6rem;
	padding-left: 1em;
	text-indent: -1em;
}
.entry .entryNotes dd > ul li.red {
	color: #ff0000;
}
@media (max-width: 768px) {
	.entry {
		margin-top: 6rem;
	}
	.entry h4 {
		font-size: 4.8rem;
		border-radius: 1.5rem;
		padding: 1rem;
	}
	.entry .entryBox {
		margin-top: 3.5rem;
		padding-bottom: 5rem;
		border-bottom: 0.1rem solid #999;
	}
	.entry .entryBox + .entryBox {
		margin-top: 5rem;
	}
	.entry .entryBox .stepArea {
		gap: 0 2.5rem;
	}
	.entry .entryBox .stepArea .step {
		width: 11.8rem;
		height: 11.8rem;
		font-size: 2.6rem;
		line-height: 1.3;
		padding: 2rem;
	}
	.entry .entryBox .stepArea .step span {
		font-size: 4.2rem;
	}
	.entry .entryBox .stepArea .stepBox {
		width: 76%;
	}
	.entry .entryBox .stepArea .stepBox .stepTtl {
		font-size: 2.8rem;
		line-height: 4.6rem;
	}
	.entry .entryBox .linkBtn a {
		width: 53rem;
		margin: 3.5rem auto 0;
		border: 0.4rem solid #3cb034;
		border-radius: 1.5rem;
		padding: 2rem;
		font-size: 3.2rem;
	}
	.entry .entryBox .linkBtn a span::before {
		width: 4.9rem;
		height: 4.9rem;
		top: calc(50% - 2.3rem);
		left: -6rem;
	}
	.entry .entryBox .linkBtn a span::after {
		width: 3.5rem;
		height: 3.3rem;
		top: calc(50% - 1.5rem);
		right: -5rem;
	}
	.entry .entryBox .stepArea .stepBox .stepTxt {
		margin-top: 0.5rem;
		font-size: 2.4rem;
		line-height: 4.8rem;
	}
	.entry .entryBox .stepArea .stepBox .stepTxt .small {
		font-size: 2.3rem;
	}
	.entry .entryBox .stepArea .stepBox ol.stepTxt {
		margin-top: 1rem;
		padding-left: 0;
		text-indent: 0;
	}
	.entry .entryBox .sample {
		width: 100%;
		margin: 3.5rem auto 0;
		border-radius: 1rem;
		padding: 2.5rem 4rem;
		font-size: 3rem;
		line-height: 4.6rem;
	}
	.entry .entryBox .sample::after {
		border-width: 4.5rem 6.5rem 0 6.5rem;
		bottom: -7rem;
		left: calc(50% - 6.5rem);
	}
	.entry .entryBox .copyTxt {
		margin-top: 10rem;
		font-size: 2.8rem;
		line-height: 4.8rem;
		text-align: left;
	}
	.entry .entryBox .copyBox {
		margin-top: 3.5rem;
		justify-content: space-between;
	}
	.entry .entryBox .copyBox .selectBox {
		width: 43rem;
	}
	.entry .entryBox .copyBox .selectBox::after {
		border-width: 1.5rem 1rem 0 1rem;
		top: calc(50% - 1rem);
		right: 3rem;
	}
	.entry .entryBox .copyBox #selectCopy {
		width: 43rem;
		border: 0.3rem solid #3cb034;
		border-radius: 1rem;
		padding: 1.5rem 1rem;
		font-size: 2.8rem;
	}
	.entry .entryBox .copyBox #btnCopy {
		width: 18rem;
		border-radius: 1rem;
		padding: 1.5rem 1rem;
		font-size: 2.8rem;
		line-height: 1.4;
	}
	.entry .entryBox .sampleTtl {
		font-size: 3rem;
	}
	.entry .entryBox .samplePic {
		width: 100%;
		margin: 1.5rem auto 0;
	}
	.entry .entryNotes {
		margin-top: 4rem;
	}
	.entry .entryNotes dt {
		font-size: 2.8rem;
	}
	.entry .entryNotes dd + dt {
		margin-top: 5rem;
	}
	.entry .entryNotes dd > p{
		margin-top: 2rem;
		font-size: 2.6rem;
		line-height: 4.6rem;
	}
	.entry .entryNotes dd > ul {
		margin-top: 2rem;
	}
	.entry .entryNotes dd > ul li {
		font-size: 2.5rem;
		line-height: 4.6rem;
	}
}
/*=====info=====*/
.info {
	margin-top: 5rem;
}
.info dl {
	margin-top: 5rem;
}
.info dl + dl {
	margin-top: 3.5rem;
}
.info dl dt {
	font-size: 2rem;
	font-weight: 600;
}
.info dl dd {
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 2.6rem;
}
.info dl dd > p + ul {
	margin-top: 2.5rem;
}
.info dl dd > ul {
	text-indent: -1em;
	padding-left: 1em;
}
.info .accordionArea .accordionContent .ttl {
	padding: 1.5rem 2.5rem;
	background: #3cb034;
	border-radius: 1rem;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
	position: relative;
	cursor: pointer;
}
.info .accordionArea .accordionContent .ttl .accordionBtn {
	display: block;
	width: 3.3rem;
	height: 3.3rem;
	background: #fff;
	border-radius: 0.5rem;
	position: absolute;
	top: calc(50% - 1.65rem);
	right: 1.5rem;
	cursor: pointer;
}
.info .accordionArea .accordionContent .ttl .accordionBtn::before,
.info .accordionArea .accordionContent .ttl .accordionBtn::after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 1em;
	height: 0.3rem;
	background: #3cb034;
	transition: all .4s;
}
.info .accordionArea .accordionContent .ttl .accordionBtn::before {
	transform: rotate(0deg);
}
.info .accordionArea .accordionContent .ttl .accordionBtn.active::before {
	display: none;
}
.info .accordionArea .accordionContent .ttl .accordionBtn::after {
	transform: rotate(90deg);
}
.info .accordionArea .accordionContent .ttl .accordionBtn.active::after {
	transform: rotate(180deg);
}
.info .accordionArea .accordionContent .accordionBox {
	display: none;
	margin-top: 2.5rem;
}
.info .accordionArea .accordionContent .accordionBox .red {
	color: #ff0000;
}
.info .accordionArea .accordionContent dd + dt {
	margin-top: 2rem;
}
.info .accordionArea .accordionContent dd .bold span {
	font-weight: bold;
}
.info .accordionArea .accordionContent ul li {
	font-size: 1.5rem;
	line-height: 2.6rem;
	padding-left: 0;
	text-indent: 0;
}
.info .accordionArea .accordionContent a {
	text-decoration: underline;
}
.info .accordionArea .accordionContent .list + .list {
	margin-top: 2rem;
}
.info .accordionArea .accordionContent .list li {
	padding-left: 1em;
	text-indent: -1em;
}
.info .accordionArea .accordionContent .list.prize li {
	padding-left: 2em;
	text-indent: -2.5em;
}
.info .accordionArea .accordionContent .list.prize li.indent {
	padding-left: 2em;
	text-indent: -3em;
}
.info .accordionArea .accordionContent .list li span {
	font-weight: 600;
}
.info .accordionArea .accordionContent p + ul {
	margin-top: 0.7rem;
}
.info .accordionArea .accordionContent ul + p {
	margin-top: 2rem;
}
.info .accordionArea .accordionContent .accordionBox .txt {
	font-size: 1.5rem;
	line-height: 2.6rem;
}
@media (max-width: 768px) {
	.info {
		margin-top: 6rem;
	}
	.info dl {
		margin-top: 5rem;
	}
	.info dl + dl {
		margin-top: 3rem;
	}
	.info dl dt {
		font-size: 3.2rem;
	}
	.info dl dd {
		font-size: 2.6rem;
		line-height: 4.2rem;
	}
	.info dl dd > p + ul {
		margin-top: 2rem;
	}
	.info dl dd > p.pink {
		margin-top: 2.5rem;
	}
	.info .accordionArea {
		margin-top: 5rem;
	}
	.info .accordionArea .accordionContent + .accordionContent {
		margin-top: 3.5rem;
	}
	.info .accordionArea .accordionContent .ttl {
		padding: 2rem 2.5rem;
		border-radius: 1.5rem;
		font-size: 3.6rem;
	}
	.info .accordionArea .accordionContent .ttl .accordionBtn {
		width: 5.1rem;
		height: 5.1rem;
		top: calc(50% - 2.55rem);
		right: 2rem;
	}
	.info .accordionArea .accordionContent .ttl .accordionBtn::before,
	.info .accordionArea .accordionContent .ttl .accordionBtn::after {
		height: 0.6rem;
	}
	.info .accordionArea .accordionContent .accordionBox {
		margin-top: 3rem;
	}
	.info .accordionArea .accordionContent .accordionBox .list a {
		font-size: 2.3rem;
	}
	.info .accordionArea .accordionContent .accordionBox .txt {
		font-size: 2.6rem;
		line-height: 4.2rem;
	}
	.info .accordionArea .accordionContent .accordionBox .txt.indent {
		text-indent: -1em;
		padding-left: 1em;
	}
	.info .accordionArea .accordionContent ul li {
		font-size: 2.6rem;
		line-height: 4.2rem;
	}
}
/*=====contact=====*/
.contact {
	margin-top: 5rem;
	background: #f2f2f2;
	padding: 2.5rem 0 3rem;
}
.contact .contactTtl {
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
}
.contact .contactTxt {
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 3rem;
	text-align: center;
}
.contact .linkBtn a {
	display: block;
	width: 37.6rem;
	margin: 2.5rem 27rem 0 auto;
	border: 0.2rem solid #3cb034;
	border-radius: 1rem;
	background: #fff;
	padding: 1.2rem;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	color: #3cb034;
}
.contact .linkBtn a span {
	display: inline-block;
	position: relative;
}
/* .contact .linkBtn a span::before {
	content: "";
	width: 3.1rem;
	height: 3.1rem;
	background: url(/campaign/winter/img/icn_insta01.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 1.5rem);
	left: -4rem;
} */
.contact .linkBtn a span::after {
	content: "";
	width: 2.2rem;
	height: 2.2rem;
	background: url(/campaign/winter/img/icn_link.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 1.1rem);
	right: -3rem;
}
@media (max-width: 768px) {
	.contact {
		margin-top: 6rem;
		padding: 5rem 4rem 4rem;
	}
	.contact .contactTtl {
		font-size: 3.8rem;
	}
	.contact .contactTxt {
		margin-top: 2.5rem;
		font-size: 2.6rem;
		line-height: 4.8rem;
		text-align: left;
	}
	.contact .linkBtn a {
		width: 53rem;
		margin: 2.5rem auto 0;
		border: 0.4rem solid #3cb034;
		border-radius: 1.5rem;
		padding: 2rem;
		font-size: 3.2rem;
	}
	/* .contact .linkBtn a span::before {
		width: 4.5rem;
		height: 4.5rem;
		top: calc(50% - 2.3rem);
		left: -6rem;
	} */
	.contact .linkBtn a span::after {
		width: 3.5rem;
		height: 3.3rem;
		top: calc(50% - 1.65rem);
		right: -5rem;
	}
}
/*=====instaArea=====*/
.instaArea {
	margin-top: 7rem;
}
.instaArea h5 {
	font-size: 4.6rem;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 500;
	text-align: center;
	color: #fff;
	padding: 1.5rem;
	background-image: linear-gradient(90deg, rgba(233, 128, 55, 1) 10%, rgba(205, 56, 118, 1) 40%, rgba(140, 45, 146, 1) 70%, rgba(110, 57, 147, 1) 90%);
}
.instaArea h5 span {
	display: inline-block;
	position: relative;
}
.instaArea h5 span::before {
	content: "";
	width: 4.6rem;
	height: 4.6rem;
	background: url(/campaign/winter/img/icn_insta02.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 2rem);
	left: -5rem;
}
.instaArea .instaNotes {
	margin-top: 2.5rem;
	font-size: 1.4rem;
	text-align: center;
}
/*=====visumo=====*/
.instaArea .vsm-gallery, .vsm-tile, .vsm-tile-goods {
	margin-top: 3rem !important;
}
.instaArea .ecbn-selection-page-wrapper .ecbn-selection-more-btn {
	width: 37.6rem !important;
	background: linear-gradient(90deg, rgba(233, 128, 55, 1) 10%, rgba(205, 56, 118, 1) 40%, rgba(140, 45, 146, 1) 70%, rgba(110, 57, 147, 1) 90%) !important;
	border-radius: 1.5rem !important;
	border: none !important;
	padding: 1.5rem 0 !important;
	font-size: 2rem !important;
	font-weight: bold !important;
	color: #fff !important;
	position: relative !important;
}
.instaArea .ecbn-selection-page-wrapper .ecbn-selection-more-btn::after {
	content: "";
	border-bottom: solid 0.3rem #fff;
	border-right: solid 0.3rem #fff;
	width: 1.3rem;
	height: 1.3rem;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 0.65rem);
	right: 2rem;
}
@media (max-width: 768px) {
	.instaArea {
		margin-top: 7rem;
	}
	.instaArea h5 {
		font-size: 5.6rem;
	}
	.instaArea h5 span::before {
		width: 5.6rem;
		height: 5.7rem;
		top: calc(50% - 2.5rem);
		left: -7rem;
	}
	.instaArea .instaNotes {
		margin-top: 4.5rem;
		font-size: 2.5rem;
		line-height: 4.6rem;
		text-align: left;
	}
	/*visumo*/
	.instaArea .ecbn-selection-page-wrapper .ecbn-selection-more-btn {
		width: 53rem !important;
		border-radius: 1.3rem !important;
		padding: 2rem 0 !important;
		font-size: 3.2rem !important;
	}
	.instaArea .ecbn-selection-page-wrapper .ecbn-selection-more-btn::after {
		border-bottom: solid 0.4rem #fff;
		border-right: solid 0.4rem #fff;
		width: 2rem;
		height: 2rem;
		top: calc(50% - 1.3rem);
		right: 3rem;
	}
}
/*=====mapArea=====*/
.mapArea {
	margin-top: 5rem;
}
.mapArea h6 {
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: #3cb034;
	border-radius: 1rem;
	padding: 1.3rem;
}
.mapArea .mapBox {
	margin-top: 4rem;
	display: flex;
	justify-content: space-between;
}
.mapArea .mapBox .linkBox {
	width: 44rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1rem 0;
}
.mapArea .mapBox .linkBox li {
	width: 48%;
}
.mapArea .mapBox .linkBox li a {
	display: block;
	border: 0.2rem solid #3cb034;
	border-radius: 1rem;
	padding: 1rem 1.5rem;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 2.2rem;
	color: #3cb034;
	position: relative;
}
.mapArea .mapBox .linkBox li a span {
	font-size: 1.4rem;
}
.mapArea .mapBox .linkBox li a::after {
	content: "";
	border-top: solid 0.2rem #3cb034;
	border-right: solid 0.2rem #3cb034;
	width: 1rem;
	height: 1rem;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 0.5rem);
	right: 1.5rem;
}
.mapArea .mapBox .map {
	width: 41.7rem;
}
@media (max-width: 768px) {
	.mapArea {
		margin-top: 5.5rem;
	}
	.mapArea h6 {
		font-size: 3.6rem;
		border-radius: 1.5rem;
		padding: 1.5rem;
	}
	.mapArea .mapBox {
		margin-top: 2.5rem;
		flex-direction: column-reverse;
		gap: 5rem 0;
	}
	.mapArea .mapBox .linkBox {
		width: 100%;
		gap: 2rem 1.5rem;
	}
	.mapArea .mapBox .linkBox li {
		width: 48.5%;
	}
	.mapArea .mapBox .linkBox li a {
		border: 0.3rem solid #3cb034;
		border-radius: 1rem;
		padding: 1rem 1.5rem;
		font-size: 2.6rem;
		line-height: 3.6rem;
	}
	.mapArea .mapBox .linkBox li a span {
		font-size: 2.4rem;
	}
	.mapArea .mapBox .linkBox li a::after {
		border-top: solid 0.3rem #3cb034;
		border-right: solid 0.3rem #3cb034;
		width: 1.5rem;
		height: 1.5rem;
		top: calc(50% - 0.75rem);
		right: 1.5rem;
	}
	.mapArea .mapBox .map {
		width: 100%;
	}
}

/* .sec */
.sec01 h3 {
	text-align: center;
	width: 50%;
	margin: 0 auto 5rem;
	padding-top: 6rem;
}
.sec01 .stepWrap {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	gap: 2rem;
}
.sec01 .stepWrap .step {
	width: 48%;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
}
.sec01 .stepWrap .step::after {
	content: "";
	border-bottom: 3px solid #000;
	display: block;
	width: 89%;
	height: 3px;
	margin: 0.2rem 0 0 auto;
}
.sec01 .stepWrap .step .head {
	position: relative;
}
.sec01 .stepWrap .step .head p {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	padding-left: 9rem;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
}
.sec01 .stepWrap .step .head p .line {
	background-color: #fff100;
}
.sec01 .stepWrap .step .head p .sm {
	font-size: 1.2rem;
}
.sec01 .stepWrap .step .body {
	border-bottom: 3px solid #000;
	border-left: 3px solid #000;
	border-radius: 0 0 0 2rem;
	margin-left: 3rem;
	padding: 3rem;
}
.sec01 .stepWrap .step .body .flexBox {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.sec01 .stepWrap .step .body .flexBox div {
	width: 71%;
}
.sec01 .stepWrap .step .body .flexBox .phoneImage {
	max-width: 7.3rem;
	width: 30%;
}
.sec01 .stepWrap .step .body .linkBtn {
	margin-top: 1rem;
}
.sec01 .stepWrap .step .body .linkBtn a {
    display: block;
    width: 100%;
    margin: 0 auto 0;
    border: 0.2rem solid #3cb034;
    border-radius: 1rem;
    padding: 1.2rem 3.2rem 1.5rem 1.2rem;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    color: #3cb034;
	line-height: 1;
}
.sec01 .stepWrap .step .body .linkBtn a span {
	display: inline-block;
	position: relative;
}
.sec01 .stepWrap .step .body .linkBtn a span::after {
	content: "";
	width: 2.2rem;
	height: 2.2rem;
	background: url(/campaign/winter/img/icn_link.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 0.8rem);
	right: -3rem;
}
@media (max-width: 768px) {
	.sec01 .stepWrap {
		display: block;
	}
	.sec01 .stepWrap .step {
		width: 100%;
		font-size: 2.6rem;
	}
	.sec01 .stepWrap .step .head p {
		font-size: 2.6rem;
		padding-left: 13rem;
	}
	.sec01 .stepWrap .step .head p .sm {
		font-size: 2rem;
	}
	.sec01 .stepWrap .step .body .flexBox .phoneImage {
		max-width: 10rem;
	}
	.sec01 .stepWrap .step .body .flexBox div {
		width: 74%;
	}
	.sec01 .stepWrap .step .body .linkBtn a {
		width: 40rem;
		margin: 1.5rem auto 0;
		border: 0.4rem solid #3cb034;
		border-radius: 1.5rem;
		padding: 2rem 1.5rem 2rem 1.5rem;
		font-size: 3.2rem;
	}
	.sec01 .stepWrap .step .body .linkBtn a span::after {
		width: 3.5rem;
		height: 3.3rem;
		top: calc(50% - 1.5rem);
		right: -5rem;
	}
}
/* step01 */
.sec01 .stepWrap .step01 .head p img {
	width: 21px;
	height: 21px;
	margin-right: .5rem;
	vertical-align: sub;
}
/* step02 */
.sec01 .stepWrap .step02 {
	margin-top: 15rem;
}
/* step03 */
.sec01 .stepWrap .step03 {
	margin-top: -12rem;
}
.sec01 .stepWrap .step03 .body .txtArea {
	color: #3cb034;
	font-size: 2rem;
	line-height: 1.3;
}
.sec01 .stepWrap .step03 .body .txtArea .sm {
	font-size: 1.2rem;
	color: #000;
}
.sec01 .stepWrap .step03 .copyBox {
	margin-top: 2rem;
	display: flex;
	justify-content: center;
	gap: 0 1.5rem;
	position: relative;
}
.sec01 .stepWrap .step03 .copyBox .selectBox {
	width: 18rem;
	position: relative;
}
.sec01 .stepWrap .step03 .copyBox .selectBox::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1rem 0.7rem 0 0.7rem;
	border-color: #3cb034 transparent transparent transparent;
	position: absolute;
	top: calc(50% - 0.5rem);
	right: 1.5rem;
}
.sec01 .stepWrap .step03 .copyBox #selectCopy {
	width: 18rem;
	background: #fff;
	border: 0.2rem solid #3cb034;
	border-radius: 1rem;
	padding: 1rem;
	font-size: 1.6rem;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	outline: none;
	cursor: pointer;
}
.sec01 .stepWrap .step03 .copyBox #btnCopy {
	width: 12rem;
	background: #3cb034;
	border-radius: 1rem;
	padding: 1rem;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	color: #fff;
	text-align: center;
	cursor: pointer;
}
/* step04 */
.sec01 .stepWrap .step04 {
	margin-top: 9rem;
}
.sec01 .stepWrap .step04 .body {
	padding-bottom: 0;
}
@media (max-width: 768px) {
	.sec01 .stepWrap .step02 {
		margin-top: 5rem;
	}
	.sec01 .stepWrap .step03 {
		margin-top: 5rem;
	}
	.sec01 .stepWrap .step04 {
		margin-top: 5rem;
	}
	.sec01 .stepWrap .step03 .body .txtArea {
		color: #3cb034;
		font-size: 2.6rem;
		line-height: 1.3;
	}
	.sec01 .stepWrap .step03 .body .txtArea .sm {
		font-size: 2rem;
	}
	.sec01 .stepWrap .step03 .copyBox {
		margin-top: 3.5rem;
		justify-content: space-between;
	}
	.sec01 .stepWrap .step03 .copyBox .selectBox {
		width: 31rem;
	}
	.sec01 .stepWrap .step03 .copyBox .selectBox::after {
		border-width: 1.5rem 1rem 0 1rem;
		top: calc(50% - 1rem);
		right: 3rem;
	}
	.sec01 .stepWrap .step03 .copyBox #selectCopy {
		width: 31rem;
		border: 0.3rem solid #3cb034;
		border-radius: 1rem;
		padding: 1.5rem 1rem;
		font-size: 2.8rem;
	}
	.sec01 .stepWrap .step03 .copyBox #btnCopy {
		width: 18rem;
		border-radius: 1rem;
		padding: 1.5rem 1rem;
		font-size: 2.8rem;
		line-height: 1.4;
	}
}
