@charset "utf-8";

/*全体*/
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.flex {
	display: flex;
}
.el-d-section,
.el-d-section--fullWidth {
	text-align: center;
}
@media screen and (max-width:699px) {
	.flex {
		display: block;
	}
}
a:hover {
	opacity: 0.7;
}
.indent {
	padding-left: 1em;
	text-indent: -1em;
}
.mgb1em {
	margin-bottom: 1em;
}
.mgb05em {
	margin-bottom: 0.5em
}
br.forsp {
	display: none;
}
br.forpc {
	display: inline-block;
}
@media screen and (max-width:699px) {
	br.forsp {
		display: inline-block;
	}
	br.forpc {
		display: none;
	}
}

/*----------mask--------------*/
/*bg*/
.pink__bg {
	background: #E63178;
}
.white__bg {
	background: #fff;
}
.zutto__logo {
	width: 28.1%;
	max-width: 140px;
	margin: 0 auto;
	padding-top:1.56vw;
}
.entry_detail .comment {
	text-align: left;
	margin: 0.5em 0;
	font-size: 2.34vw;
	color: #fff;
}
.caseDissatisfaction {
	margin: 21vw 0 9.6vw;
}
@media screen and (min-width: 700px) {
	.zutto__logo {
		width: 120px;
		padding-top:17px;
	}
	.entry_detail .comment {
		font-size: 20px;
	}
	.caseDissatisfaction {
		margin: 100px 0 96px;
	}
}

/* width for PC */
@media screen and (min-width: 700px) {
	.el-d-section.kv__sec{
		max-width: 700px;
	}
	.el-d-section.dissatisfied__sec {
		max-width: 800px;
	}
	.el-d-section.satisfied__sec {
		max-width: 750px;
	}
	.el-d-section.targetProducts {
		max-width: 900px;
	}
}

/*応募要項タイトル*/
.ttl--dot {
	position: relative;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: bold;
	font-size: 5.46vw;
	margin-bottom: 6.25vw;
}
.ttl--dot:before {
	position: absolute;
	content: "";
	left: 1em;
	top: 50%;
	transform: translateY(-50%);
	width: 5em;
	height: 1em;
	background-image: radial-gradient(#fff 20%, transparent 20%);
	background-size: 1em 1em;
	border-radius: 50%;
	background-repeat: repeat-x;
}
.ttl--dot:after {
	position: absolute;
	content: "";
	right: 1em;
	top: 50%;
	transform: translateY(-50%);
	width: 5em;
	height: 1em;
	background-image: radial-gradient(#fff 20%, transparent 20%);
	background-size: 1em 1em;
	border-radius: 50%;
	background-repeat: repeat-x;
}
.dot--white {
	color: #fff;
}
.dot--pink {
	color: #E63178;
}
.dot--pink:before {
	background-image: radial-gradient(#E63178 20%, transparent 20%);
}
.dot--pink:after {
	background-image: radial-gradient(#E63178 20%, transparent 20%);
}
@media screen and (min-width: 700px) {
	.ttl--dot {
		font-size: 48px;
		margin-bottom: 50px;
	}
	.ttl--dot:before {
		left: .5em;
	}
	.ttl--dot:after {
		right: .5em;
	}
}

/*applicationGuideline*/
.entryBox {
	position: relative;
	background: #fff;
	border-radius: 15px;
	border: solid 2px #E63178;
	margin: 0 auto;
	width: 95%;
	padding: 40px 30px;
}
.applicationGuideline {
	/*margin-top:7vw;*/
}
.applicationGuideline__wrap .scroll-box {
	height: 340px;
}
.applicationGuideline__contents {
	text-align: left;
	padding: 0 30px 0 10px;
	word-break: break-all;
	overflow-wrap: break-word;
}
.applicationGuideline__contents dl {
	margin-bottom: 30px;
}
.applicationGuideline__contents dt {
	font-weight: bold;
}
.applicationGuideline__contents * {
	font-size: 16px;
	font-family: "M PLUS 1p", sans-serif;
}
.disc li {
	list-style-type: disc;
	margin-left: 1em;
}
@media screen and (max-width:699px) {
	.applicationGuideline__wrap {
		padding: 4vw 1.71vw 4vw;
	}
	.applicationGuideline__contents {
		padding: 0 3.43vw;
	}
	.applicationGuideline__contents dl {
		margin-bottom: 5.72vw;
	}
	.applicationGuideline__contents * {
		font-size: 14px;
	}
	.disc li {
		margin-left: 0.8em;
	}
}

/*-----scroll-box------*/
.scroll-box {
	height: 180px;
	overflow-y: scroll;
}

/*
.scroll-box::-webkit-scrollbar {
	background: #E63178;
	width: 12px;
	height: 12px;	
	border-radius: 20px;
}
.scroll-box::-webkit-scrollbar-thumb {
	background-color: #fff;
	border-radius: 20px;
	border:2px solid #E63178;
}
.scroll-box::-webkit-scrollbar-thumb:hover {
	background-color: #fff;
	border:2px solid #E63178;
}
*/

/*-----------webEntry--------------*/
.webEntry {
	text-align: center;
	margin: 55px auto 77px;
	width: 95%;
}
.webEntry label {
	display: flex;
	align-items: center;
	margin-bottom: 30px;
}
.webEntry .checkbox-input {
	display: none !important;
}
.webEntry .checkbox-parts {
	padding-left: 40px;
	position: relative;
	margin: 0 auto;
	font-size: 24px;
	line-height: 1.4;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: bold;
	color: #1f1f1f;
	cursor: pointer;
}
.webEntry .checkbox-parts::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 25px;
	height: 25px;
	transform: translateY(-50%);
	border-radius: 1px;
	margin-right: 25px;
	background-color: #FFFFFF;
}
.webEntry .checkbox-input:checked+.checkbox-parts::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 12px);
	left: 6px;
	width: 8px;
	height: 16px;
	transform: rotate(40deg);
	border-bottom: 4px solid #1481D2;
	border-right: 4px solid #1481D2;
}
.webEntry .webEntryBtn .webEntryBtn__btn button[type="submit"] {
	cursor: pointer;
}
.webEntry .webEntryBtn .webEntryBtn__btn button[type="submit"]:hover {
	opacity: 0.7;
}
.webEntry .webEntryBtn .webEntryBtn__btn a:disabled,
.webEntry .webEntryBtn .webEntryBtn__btn button[type="submit"]:disabled,
.webEntry .webEntryBtn .webEntryBtn__btn button[type="submit"][disabled],
.webEntry .webEntryBtn .webEntryBtn__btn button[type="submit"]:disabled:hover,
.webEntry .webEntryBtn .webEntryBtn__btn button[type="submit"][disabled]:hover {
	opacity: 0.5;
}
.webEntry .webEntryBtn .caption {
	text-align: center;
	font-size: 18px;
	font-family: "M PLUS Rounded 1c", sans-serif;
	color: #fff;
	line-height: 1.4;
}
.webEntry .txt-link {
	color: #fff;
	text-decoration: underline;
}
.webEntryBtn__btn img {
	max-width: 440px;
}
@media screen and (max-width:699px) {
	.webEntry {
		margin: 9.44vw auto 15.73vw;
		width: 100%;
	}
	.webEntry label {
		margin-bottom: 5.72vw;
	}
	.webEntry .checkbox-parts {
		padding-left: 10vw;
		font-size: 5.85vw;
	}
	.webEntry .checkbox-parts::before {
		width: 5.86vw;
		height: 5.86vw;
		margin-right: 5.33vw;
	}
	.webEntry .checkbox-input:checked+.checkbox-parts::after {
		top: calc(50% - 1.8vw);
		left: 2.1vw;
		width: 1.1vw;
		height: 2.4vw;
	}
	.webEntry .webEntryBtn .caption {
		font-size: 3.2vw;
		text-align: left;
	}
	.webEntryBtn__btn img {
		max-width: 100%;
	}
}

/*satisfied__sec*/
.applicationMethod {
	margin-bottom: 7.812vw;
}
.sec__inner {
	position: relative;
	max-width: 1080px;
	margin: 7.81vw auto 10.15vw;
	background: #fff;
	border-radius: 15px;
	padding: 1.56vw;
}
.sec__inner--pinkBorder {
	padding: 4.68vw 0;
	border: 2.5px solid #E63178;
	border-radius: 15px;
}
.satisfied__img {
	margin-bottom: 3.9vw;
}
.snsCampaign__read {
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 3.9vw;
	color: #595757;
	line-height: 1.4;
	font-weight: bold;
	cursor: pointer;
}
.snsCampaign__read--blue {
	color: #278EB4;
}
.snsCampaign__read--pink {
	color: #E63178;
}
.snsCampaign__read--pink a {
	color: #E63178;
	text-decoration: none;
}
@media screen and (min-width: 700px) {
	.applicationMethod {
		margin-bottom: 78px;
	}
	.sec__inner {
		margin: 78px auto 101px;
		padding: 15.6px;
	}
	.sec__inner--pinkBorder {
		padding: 47px 0;
	}
	.satisfied__img {
		margin-bottom: 39px;
	}
	.snsCampaign__read {
		font-size: 32px;
	}
}
.gift {
	max-width: 880px;
	width: 85%;
	margin: 3.9vw 0 7.42vw;
}
.sns__box {
	width: 85%;
	margin: 0 auto;
	margin-inline: auto;
	border: 2px solid;
	border-radius: 15px;
	margin-bottom: 32px;
	padding: 5.62vw 4%;
}
.border--instagram {
	position: relative;
	border: none;
	background: linear-gradient(0deg, rgba(244, 184, 25, 1) 0%, rgba(229, 36, 105, 1) 34.88%, rgba(72, 82, 161, 1) 74.52%, rgba(72, 82, 161, 1) 100%);
	z-index: 0;
}
.border--instagram::before {
	content: '';
	position: absolute;
	top: 2px;
	left: 2px;
	right: 2px;
	bottom: 2px;
	border-radius: 13px;
	background: #fff;
	z-index: -1;
}
.border--x {
	margin-top: 7.5vw;
}
.instagram__logo {
	max-width: 200px;
	width: 25%;
	margin-bottom: 3.12vw;
}
.x__logo {
	max-width: 200px;
	width: 25%;
	margin: 0 auto 3.12vw;
}
.sns__box--inner {
	background: rgba(230, 49, 120, 0.1);
	margin-top: 4.68vw;
	padding: 7.5vw 2%;
}
.follow {
	width: 55.3%;
	margin: 0 auto 4.68vw;
}
.sns__linkbtn,{
	width:100%;
}
.post {
	width: 32.1%;
	margin: 0 auto 2vw;
}
.triangle {
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 4.68vw solid transparent;
	border-left: 4.68vw solid transparent;
	border-top: 6.25vw solid #E63178;
	border-bottom: 0;
	margin: 2vw auto 3.9vw;
}
.plus {
	width: 6.9%;
	margin: 1em auto;
}
@media screen and (min-width: 700px) {
	.gift {
		margin: 39px 0 74px;
	}
	.sns__box {
		padding: 4%;
	}
	.border--x {
		margin-top: 75px;
	}
	.instagram__logo {
		width:15%;
		margin-bottom: 10px;
	}
	.x__logo {
		width:15%;
		margin-bottom: 10px;
	}
	.sns__box--inner {
		background: rgba(230, 49, 120, 0.1);
		margin-top: 24px;
		padding: 35px 2%;
	}
	.follow {
		margin: 0 auto 20px;
	}
	.sns__linkbtn{
		max-width:400px;
	}
	.post {
		margin: 0 auto 20px;
	}
	.follow>img,
	.post>img {
		height: 50px;
	}
	.triangle {
		border-right: 36px solid transparent;
		border-left: 36px solid transparent;
		border-top: 42px solid #E63178;
		margin: 15px auto 20px;
	}
}
.satisfied__sec .applicationGuideline {
	width: 85%;
	margin: 0 auto;
}
.satisfied__sec .entryBox {
	width: 100%;
}
/*target_products*/
.white__bg {
	padding: 9.37vw 0;
}
.targetProducts__ttl {
	max-width: 80%;
	margin: 0 auto 6.7vw;
}
.targetProducts__subttl {
	font-size: 5.35vw;
	margin-bottom: 3.125vw;
	color: #E63178;
}
.targetProducts__lineup {
	background: url(/_var/mask/campaign/soukai_henkin/img/target_products.png);
	background-size: contain;
	background-repeat: no-repeat;
	margin-bottom: 11.71vw;
}
.targetProducts__txt {
	padding-top: 38vw;
	font-family: "M PLUS Rounded 1c", sans-serif;
}
.targetProducts__lists {
	text-align: left;
}
.targetProducts__lists li,
.targetProducts__lists p {
	font-size: 14px;
}
@media screen and (min-width: 700px) {
	.white__bg {
		padding: 60px 0;
	}
	.targetProducts__ttl {
		max-width: 440px;
		margin: 0 auto 43px;
	}
	.targetProducts__subttl {
		font-size: 32px;
		margin-bottom: 30px;
	}
	.targetProducts__lineup {
		margin-bottom: 60px;
	}
	.targetProducts__txt {
		padding-top: 360px;
	}
	.targetProducts__lists {
		width: 70%;
		margin: 0 auto;
	}
	.targetProducts__lists li,
	.targetProducts__lists p {
		font-size: 18px;
	}
}

/*more__btn*/
.more__btn {
	margin-bottom: 6.17vw;
}
.more__btn--link {
	position: relative;
	font-size: 5.39vw;
	color: #fff;
	font-family: "M PLUS Rounded 1c", sans-serif;
	background: #004385;
	border: 4px #fff solid;
	border-radius: 100px;
	max-width: 440px;
	margin: 0 auto;
	display: block;
	padding: 10px 2%;
	box-shadow: 13px 11px 13px 0px #d2c9c9;
}
.more__btn--link:before {
	position: absolute;
	content: '';
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 4vw;
	height: 4vw;
	background: url(/_var/mask/campaign/soukai_henkin/img/right_arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.more__btn--link:visited,
.more__btn--link:hover {
	color: #fff;
	text-decoration: none;
}
@media screen and (min-width: 700px) {
	.more__btn {
		margin-bottom: 39.5px;
	}
	.more__btn--link {
		font-size: 34.5px;
	}
	.more__btn--link:before {
		width: 32px;
		height: 32px;
	}
}

/*inquiry*/
.inquiry {
	font-family: "M PLUS Rounded 1c", sans-serif;
	color: #fff;
	padding: 12.89vw 0 11.32vw;
}
.inquiry .ttl--dot:before {
	width: 4em;
}
.inquiry .ttl--dot:after {
	width: 4em;
}
.inquiry__ttl {
	font-size: 5.31vw;
	margin-bottom: 3.51vw;
}
.inquiry__mail {
	font-size: 4.6vw;
}
.inquiry__period {
	font-size: 3.28vw;
	margin-bottom: 3.51vw;
}
.inquiry__list li {
	font-size: 3.51vw;
	text-align: left;
}
@media screen and (min-width: 700px) {
	.inquiry {
		padding: 40px 0;
	}
	.inquiry .ttl--dot {
		width: 60%;
		font-size: 36px;
		margin: 0 auto 60px;
	}
	.inquiry__ttl {
		font-size: 36px;
		margin-bottom: 35px;
	}
	.inquiry__mail {
		font-size: 48px;
	}
	.inquiry__period {
		font-size: 24px;
		margin-bottom: 35px;
	}
	.inquiry__list {
		width: 70%;
		margin: 0 auto;
	}
	.inquiry__list li {
		font-size: 18px;
	}
}
.float-button {
	position: fixed;
	right: 2.34vw;
	bottom: 2.34vw;
	width: 19.53vw;
	height: 19.53vw;
	background: url(/_var/mask/campaign/soukai_henkin/img/top.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transition: all 0.4s;
}
@media screen and (min-width: 700px) {
	.float-button {
		right: 30px;
		bottom: 30px;
		width: 100px;
		height: 100px;
	}
}