@charset "UTF-8";

/*************************
font_import
*************************/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/*************************
reset style　＆　CMS unique style
*************************/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,main,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block}*[hidden]{display:none}body{line-height:1}menu,ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}body.noscroll{overflow:hidden}.iframe{width:100%;height:100%}.overlay{position:fixed;top:0;left:0;height:100vh;width:100%}.overlay.hidden{top:-100vh}#header.fixed{top:0;height:48px;position:sticky;box-shadow:0 2px 10px #2121211a}#header,#footer{overflow:hidden}@media screen and (min-width: 768px){#header.fixed{height:64px}}

*, *::before, *::after { box-sizing: border-box; }

#header {
	position: relative;
	z-index: 100;
}

#drawer.overlay,
#search-modal.overlay { z-index: 101; }

#drawer.overlay.hidden,
#search-modal.overlay.hidden {
	opacity: 0;
	z-index: 0;
}

/* 以下へページ固有のスタイル記述していく */

/*************************
custom properties
*************************/

#LP.rainyCoupon {
	--lp-color_black: #222222;
	--lp-color_gray: #707070;
	--lp-color_white: #fff;

	--lp-color_kv-bg: #3093BA;
	--lp-color_navy: #2593BA;
	--lp-color_blue: #0B6DD6;
	--lp-color_pale-blue: #93D2F9;

	--lp-color_yellow: #FBDB02;

	--lp-color_vivid-green: #09c655;
	--lp-color_light-green: #c4edd5;
}

/*************************
main
SP_layout（980px未満）
*************************/

/* -------------
LP共通
------------- */
#LP.rainyCoupon {
	width: 100%;
	overflow: hidden;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	background-color: var(--lp-color_pale-blue);
	color: var(--lp-color_black);
}

#LP.rainyCoupon .device-sp { display: block; }
#LP.rainyCoupon .device-pc { display: none; }

#LP.rainyCoupon img {
	user-select: none;
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

/* スペーサー */
#LP.rainyCoupon .mb_xs { margin-bottom: 3% !important; }
#LP.rainyCoupon .mb_sm { margin-bottom: 5% !important; }
#LP.rainyCoupon .mb_md { margin-bottom: 8% !important; }
#LP.rainyCoupon .mb_lg { margin-bottom: 12% !important; }
#LP.rainyCoupon .mb_xlg { margin-bottom: 15% !important; }

#LP.rainyCoupon .mt_xs { margin-top: 3% !important; }
#LP.rainyCoupon .mt_sm { margin-top: 5% !important; }
#LP.rainyCoupon .mt_md { margin-top: 8% !important; }
#LP.rainyCoupon .mt_lg { margin-top: 12% !important; }
#LP.rainyCoupon .mt_xlg { margin-top: 15% !important; }

/* スペーサー（SP限定） */
@media screen and (max-width: 980px) {
#LP.rainyCoupon .mb_xs_sp { margin-bottom: 3% !important; }
#LP.rainyCoupon .mb_sm_sp { margin-bottom: 5% !important; }
#LP.rainyCoupon .mb_md_sp { margin-bottom: 8% !important; }
#LP.rainyCoupon .mb_lg_sp { margin-bottom: 12% !important; }

#LP.rainyCoupon .mt_xs_sp { margin-top: 3% !important; }
#LP.rainyCoupon .mt_sm_sp { margin-top: 5% !important; }
#LP.rainyCoupon .mt_md_sp { margin-top: 8% !important; }
#LP.rainyCoupon .mt_lg_sp { margin-top: 12% !important; }
}

#LP.rainyCoupon time,
#LP.rainyCoupon span {
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
}

#LP.rainyCoupon .txt_block,
#LP.rainyCoupon .txt_block.device-sp,
#LP.rainyCoupon .sp-block-pc-inline { display: block; }

#LP.rainyCoupon .txt_orange { color: var(--lp-color_vivid-green); }

#LP.rainyCoupon a { transition: .4s; }
#LP.rainyCoupon a:hover { filter: brightness(.7); }

#LP.rainyCoupon .common__button-ecLink {
	margin: 0 auto;
}

#LP.rainyCoupon .common__button-ecLink a {
	display: block;
	user-select: none;
	text-align: center;
	transition: all .4s;
	position: relative;
	width: 75vw;
	height: 15vw;
	margin: 0 auto;
	border-radius: 100px;
	font-weight: 700;
	letter-spacing: .03em;
	line-height: 1.5;
    text-decoration: none;
	color: var(--lp-color_white);
	background-color: var(--lp-color_black);
}

#LP.rainyCoupon .common__button-ecLink.btn_andmall a {
	padding: 5% 0;
	font-size: 4vw;
}

#LP.rainyCoupon .common__button-ecLink.btn_mop a {
	padding: 3% 0;
	font-size: 3.3vw;
}

#LP.rainyCoupon .common__button-ecLink a:hover {
	filter: hue-rotate(45deg);
	background-color: #4c4c4c;
}

#LP.rainyCoupon .common__button-ecLink a::before {
	content: '';
    right: 5%;
    width: 9px;
    height: 9px;
	vertical-align: middle;
	transform: rotate(45deg);
	position: absolute;
    top: calc(50% - 4px);
	border-top: 2px solid var(--lp-color_white);
    border-right: 2px solid var(--lp-color_white);
}

#LP.rainyCoupon .mainArea__inner {
	width: 92%;
	margin: 0 auto;
	padding: 0 0 12%;
}

#LP.rainyCoupon .mainArea__common-block {
	margin: 0 auto;
	width: 100%;
}

/* -------------
キービジュアル
------------- */
#LP.rainyCoupon .kvArea__wrapper {
	margin: 0 auto;
	width: 100%;
}

#LP.rainyCoupon .kvArea__top {
	position: relative;
	background-color: var(--lp-color_kv-bg);
}

#LP.rainyCoupon .kvArea__top__inner,
#LP.rainyCoupon .kvArea__header {
	margin: 0 auto;
	width: 100%;
}

/* -------------
クーポンコード
------------- */
#LP.rainyCoupon .kvArea__bottom__inner {
	margin: 0 auto;
	width: 82%;
}
#LP.rainyCoupon .kvArea__bottom__block { padding: 8% 0; }

#LP.rainyCoupon .kvArea__couponcode__h2 {
	background-color: var(--lp-color_white);
	border-radius: 9px 9px 0 0;
	color: var(--lp-color_gray);
	font-size: 6vw;
	font-weight: 900;
	text-align: center;
	line-height: 1;
	padding: 5% 0 2% 0;
}

#LP.rainyCoupon .kvArea__couponcode__border {
	background-image: url('../images/common/wh_kv_decoration-hole_left.png'),
					url('../images/common/wh_kv_decoration-hole_right.png');
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
	background-size: 12px auto;
}

#LP.rainyCoupon .kvArea__couponcode__border-line {
	background-color: var(--lp-color_white);
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	width: calc(100% - 24px);
	height: 24px;
}

#LP.rainyCoupon .kvArea__couponcode__border-line > span {
	background: repeating-linear-gradient(
		90deg,
		var(--lp-color_gray) 0,  var(--lp-color_gray) 9px,
		transparent 0, transparent 18px
	);
	display: block;
	width: calc(100% - 22px);
	height: 2px;
}

#LP.rainyCoupon .kvArea__couponcode-body {
	background-color: var(--lp-color_white);
	display: flex;
	justify-content: space-between;
    flex-flow: column wrap;
    row-gap: 1rem;
	margin: 0 auto;
	padding-bottom: 3%;
	width: 83.6%;
}
#LP.rainyCoupon .kvArea__couponcode-body > li {
	line-height: 1;
	flex-basis: 100%;
}

#LP.rainyCoupon .kvArea__couponcode-body > li:first-of-type {
	background-color: var(--lp-color_white);
	border: none;
	box-sizing: border-box;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

#LP.rainyCoupon .js-copytext {
	color: var(--lp-color_navy);
	font-size: 10vw;
	font-weight: 900;
	letter-spacing: .05em;
	line-height: 1;
	width: auto;
}
#LP.rainyCoupon .js-copybtn {
	background: transparent;
	border: none;
    cursor: pointer;
	transition: .4s;
	padding: 0;
	width: 100%;
}
#LP.rainyCoupon .js-copybtn:hover { filter: brightness(.7); }

#LP.rainyCoupon .kvArea__couponcode__block {
	background-color: var(--lp-color_white);
	border-radius: 0 0 9px 9px;
	box-shadow: 0 6px 0 var(--lp-color_gray);
	margin-bottom: 8%;
}

#LP.rainyCoupon .kvArea__couponcode-message {
	text-align: center;
	padding: 0 5% 8% 5%;
}

#LP.rainyCoupon .kvArea__couponcode-message span { display: block; }

#LP.rainyCoupon .kvArea__couponcode-message > p:not(:last-of-type) { margin-bottom: 5%; }

#LP.rainyCoupon .kvArea__couponcode-explanation {
	font-size: 2.8vw;
	line-height: 1.2;
}
#LP.rainyCoupon .kvArea__couponcode-explanation.txt_bold {
	font-size: 3.2vw;
	font-weight: 700;
	color: var(--lp-color_navy);
}

#LP.rainyCoupon .kvArea__couponcode-deadline {
	font-size: 4.5vw;
	font-weight: 700;
	color: var(--lp-color_black);
}

#LP.rainyCoupon .kvArea__couponcode-deadline > time {
	display: inline-block;
	margin-left: .5em;
}

#LP.rainyCoupon .kvArea__bottom__etc-box {
	margin: 0 auto;
	width: 100%;
}

/* -------------
クーポンコード使い方へのアンカーリンク
------------- */
#LP.rainyCoupon .kvArea__bottom__anchor {
	display: flex;
	justify-content: space-between;
}

#LP.rainyCoupon .kvArea__bottom__anchor > li {
	position: relative;
	padding: 5% 3%;
	width: 100%;
	font-size: 4.2vw;
	font-weight: 700;
	text-align: center;
	line-height: 1.2;
	transition: .4s;
	user-select: none;
	cursor: pointer;
	color: var(--lp-color_black);
	background-color: var(--lp-color_yellow);
}
#LP.rainyCoupon .kvArea__bottom__anchor > li::before { 
	content: '';
	vertical-align: middle;
    right: 4%;
    width: 10px;
    height: 10px;
	transform: rotate(135deg);
	position: absolute;
    top: calc(50% - 8px);
	border-top: 2px solid var(--lp-color_black);
    border-right: 2px solid var(--lp-color_black);
}

#LP.rainyCoupon .kvArea__bottom__anchor > li:hover { filter: brightness(.7); }

/* -------------
注意事項へのアンカーリンク
------------- */
#LP.rainyCoupon .anchorLink.wideBtn {
	position: relative;
	width: 100%;
	margin: 0 auto 20%;
	padding: 6% 0 6% 6%;
	display: block;
	text-align: left;
	font-size: 3.2vw;
	font-weight: bold;
	letter-spacing: 0.01em;
	color: var(--lp-color_white);
	background-color: var(--lp-color_black);
	transition: .3s;
}

#LP.rainyCoupon .anchorLink.wideBtn::after {
	content: "";
	display: block;
	position: absolute;
	right: 3%;
	top: 38%;
	transition: all 0.2s ease-in-out;
	transform: rotate(135deg);
	width: 9px;
	height: 9px;
	border-top: solid 2px var(--lp-color_white);
	border-right: solid 2px var(--lp-color_white);
}

#LP.rainyCoupon .anchorLink:hover {
	filter: brightness(.7);
	cursor: pointer;
	transition: .3s;
}

#LP.rainyCoupon .anchorLink.round {
	position: absolute;
	left: 31%;
	bottom: 5%;
	width: 36vw;
	margin: 0 auto;
	padding: 1%;
	display: block;
	text-align: center;
	font-size: 3.3vw;
	font-weight: bold;
	letter-spacing: 0.05em;
	background-color: var(--lp-color_dark-gray);
	color: var(--lp-color_white);
	border-radius: 50px;
	transition: .3s;
}

#LP.rainyCoupon .anchorLink.round::after {
	content: "";
	display: block;
	position: absolute;
	right: 7%;
	top: 26%;
	transition: all 0.2s ease-in-out;
	transform: rotate(135deg);
	width: 8px;
	height: 8px;
	border-top: solid 1px var(--lp-color_white);
	border-right: solid 1px var(--lp-color_white);
}

/* 他施策バナー */
#LP.rainyCoupon .mainArea__bnrLink .header_txt {
	width: 85%;
	margin: 0 auto 2%;
}

#LP.rainyCoupon .mainArea__bnrLink .notes_txt {
	text-align: center;
	font-size: 2.5vw;
}

#LP.rainyCoupon .mainArea__bnrLink .regist_bnr {
	position: relative;
}

#LP.rainyCoupon .mainArea__bnrLink .regist_bnr .mainArea__btnLink.regist {
	position: absolute;
	top: 61%;
}

#LP.rainyCoupon .mainArea__bnrLink .regist_bnr .mainArea__btnLink.regist a {
	position: relative;
	display: block;
	width: 40vw;
	margin: 0 auto;
	text-align: center;
	line-height: 1;
	border-radius: 100px;
	transition: .4s;
	user-select: none;
	padding: 1.2rem 0;
	font-size: 3vw;
	font-weight: 700;
	color: var(--lp-color_white);
	background-color: var(--lp-color_navy);
}

#LP.rainyCoupon .mainArea__bnrLink .regist_bnr .mainArea__btnLink.regist a::after {
	content: "";
    display: block;
    position: absolute;
    top: 40%;
    right: 6%;
    transform: rotate(45deg);
    transition: all 0.2s ease-in-out;
    width: 7px;
    height: 7px;
	border-top: solid 1px var(--lp-color_white);
    border-right: solid 1px var(--lp-color_white);
}

/* -------------
おすすめカテゴリー
------------- */
#LP.rainyCoupon .mainArea__common-block#RECOMMEND {
	background-color: var(--lp-color_white);
	border-radius: 5px;
}

#LP.rainyCoupon .mainArea__common-box { padding: 0 2.97%; }

#LP.rainyCoupon .mainArea__recommend-inner {
	position: relative;
	padding: 11% 6% 7%;
}

#LP.rainyCoupon .mainArea__recommend-h2 {
	position: absolute;
    width: 90%;
}

#LP.rainyCoupon .mainArea__recommend-h2.header_andmall {
    left: 50%;
    top: -5%;
    transform: translateX(-50%);
}

#LP.rainyCoupon .mainArea__recommend-h2.header_mop {
    left: 50%;
    top: -9%;
    transform: translateX(-50%);
}

#LP.rainyCoupon .mainArea__recommend-h2 p {
	position: absolute;
	text-align: center;
    width: 100%;
    font-weight: 900;
    top: 50%;
    left: 50%;
	color: var(--lp-color_white);
}

#LP.rainyCoupon .mainArea__recommend-h2 p.fs_md {
	transform: translate(-50%, -80%);
    font-size: 5.3vw;
}

#LP.rainyCoupon .mainArea__recommend-h2 p.fs_sm {
	transform: translate(-50%, -70%);
	line-height: 1.4;
    font-size: 3.9vw;
}

#LP.rainyCoupon .mainArea__recommend-image { margin-bottom: 4%; }

#LP.rainyCoupon .mainArea__recommend-caption {
	font-size: 3.3vw;
	font-weight: 500;
	letter-spacing: -.01em;
	line-height: 1.5;
	text-align: center;
}

#LP.rainyCoupon .mainArea__recommend-category {
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
	margin: 0 auto;
	padding-bottom: 8%;
}
#LP.rainyCoupon .mainArea__recommend-category a {
	color: var(--lp-color-common_white);
	display: block;
    text-decoration: none;
}
#LP.rainyCoupon .mainArea__recommend-category > li { flex-basis: 47.8%; }
#LP.rainyCoupon .mainArea__recommend-category > li:not(:nth-last-of-type(-n+2)) { margin-bottom: 8%; }

#LP.rainyCoupon .mainArea__recommend-image { margin-bottom: 2%; }

#LP.rainyCoupon .mainArea__recommend-caption {
	font-size: 4vw;
	letter-spacing: -.01em;
	line-height: 1.5;
	text-align: center;
}

/* -------------
注意事項
------------- */
#LP.rainyCoupon .mainArea__notes {
	width: 100%;
	margin: 0 auto 10%;
}

#LP.rainyCoupon .mainArea__notes-inner {
	padding: 6% 4%;
    border-radius: 5px;
	background-color: var(--lp-color_white);
}

#LP.rainyCoupon .mainArea__notes-h3 {
	text-align: center;
	margin-bottom: 4%;
    font-size: 4.3vw;
    font-weight: 900;
    letter-spacing: .05em;
	color: var(--lp-color_navy);
}

#LP.rainyCoupon .mainArea__notes-list a {	
    text-decoration: none;
	padding: 0 .5%;
	border-bottom: 1px solid var(--lp-color_black);
	color: var(--lp-color_black);
}

#LP.rainyCoupon .mainArea__notes-list span.underline {
	border-bottom: 2px solid var(--lp-color_yellow);
}

#LP.rainyCoupon .mainArea__notes-list span.font_bold {
	font-weight: 700;
}

#LP.rainyCoupon .mainArea__notes-list li .inlineLink {
	color: var(--lp-color_blue);
	border-bottom: 1px solid var(--lp-color_blue);
}

#LP.rainyCoupon .mainArea__notes-list > li {
	color: var(--lp-color_black);
	font-size: 2.5vw;
	line-height: 1.5;
	letter-spacing: -.01em;
	text-align: left;
	padding-left: 1em;
}
#LP.rainyCoupon .mainArea__notes-list > li::before {
    content: '※';
	display: inline-block;
	text-align: center;
	margin-left: -1em;
	width: 1em;
}
#LP.rainyCoupon .mainArea__notes-list > li:not(:last-of-type) { margin-bottom: 1%; }

/* -------------
クーポンコードの使い方
------------- */
#LP.rainyCoupon .mainArea__usage-h2 {
    text-align: center;
    padding: 3% 0;
    border-radius: 5px 5px 0 0;
    font-size: 6vw;
    font-weight: 900;
    letter-spacing: .05em;
	color: var(--lp-color_white);
	background-color: var(--lp-color_navy);
}

#LP.rainyCoupon .mainArea__usage-list {
    background-color: var(--lp-color_white);
    padding: 5% 0 8% 0;
	border-radius: 0 0 5px 5px;
}

#LP.rainyCoupon .mainArea__usage-list > li {
	margin: 0 auto;
	width: 100%;
}

#LP.rainyCoupon .mainArea__usage-arrow {
	background-image: url('../images/common/wh_main_icon-arrow_bottom.png');
	background-repeat: no-repeat;
	background-position-x: center;
	background-position-y: 1.5rem;
	background-size: 4rem;
	padding: 2rem;
}

#LP.rainyCoupon .mainArea__usage-h3 {
	font-size: 2.8vw;
	font-weight: bold;
	line-height: 1.5;
	text-align: left;
	position: relative;
	padding-left: 13%;
}

#LP.rainyCoupon .mainArea__usage-h3 .icon {
	content: '';
	vertical-align: middle;
	position: absolute;
	top: 6.3%;
	left: 5%;
	width: 6.3%;
}
#LP.rainyCoupon .mainArea__usage-h3 i.number {
	border-radius: 50%;
	font-size: 3.2vw;
	font-weight: bold;
	font-style: normal;
	line-height: 0;
	display: block;
	position: relative;
	padding-top: 100%;
	height: 0;
	color: var(--lp-color_black);
	background-color: var(--lp-color_yellow);
}
#LP.rainyCoupon .mainArea__usage-h3 i.number::before {
	font-family: 'Poppins', sans-serif;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	top: 0;
	width: 100%;
	height: 100%;
}
#LP.rainyCoupon .mainArea__usage-h3 i.number.one::before { content: '1'; }
#LP.rainyCoupon .mainArea__usage-h3 i.number.two::before { content: '2'; }
#LP.rainyCoupon .mainArea__usage-h3 i.number.three::before { content: '3'; }
#LP.rainyCoupon .mainArea__usage-h3 i.number.four::before { content: '4'; }
#LP.rainyCoupon .mainArea__usage-h3 i.number.five::before { content: '5'; }

#LP.rainyCoupon .mainArea__usage-h3 .emphasis {
	font-size: 3.8vw;
	font-weight: bold;
	letter-spacing: -.05em;
	color: var(--lp-color_blue);
}
#LP.rainyCoupon .mainArea__usage-h3 .check {
	font-size: 3.2vw;
	display: inline-flex;
	align-items: center;
}

#LP.rainyCoupon .mainArea__usage-h3 .box-inner {
	font-size: 3.8vw;
	font-weight: bold;
	letter-spacing: -.05em;
}
#LP.rainyCoupon .mainArea__usage-h3 .box-inner,
#LP.rainyCoupon .mainArea__usage-h3 .emphasis,
#LP.rainyCoupon .mainArea__usage-h3 .device-sp.newline,
#LP.rainyCoupon .mainArea__usage-h3 .device-sp.inline,
#LP.rainyCoupon .mainArea__usage-h3 .device-pc.inline { font-weight: bold; }

#LP.rainyCoupon .mainArea__usage-h3 .device-sp.inline { display: inline; }
#LP.rainyCoupon .mainArea__usage-h3 .device-pc.inline { display: none; }

#LP.rainyCoupon .mainArea__usage-image {
	margin: 0 auto;
	padding-top: 2.5%;
	width: 90%;
}

/* 期間終了後表示 */
#LP.rainyCoupon.is_end { pointer-events: none; }

#LP.rainyCoupon .kvArea__campaignEnd {
	background-color: var(--lp-color_white);
	border-radius: 5px;
	color: var(--lp-color_black);
	display: none;
	font-size: 4.3vw;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	margin: 0 auto;
	margin-top: 6%;
	padding: 3% 0;
}
#LP.rainyCoupon .kvArea__campaignEnd span {
    display: inline-block;
	line-height: 1.5;
	font-size: 70%;
	font-weight: 500;
}

/*************************
main
PC_layout（980px以上）
*************************/

@media screen and (min-width: 980px) {
	/* -------------
	LP共通
	------------- */
	#LP.rainyCoupon .device-sp { display: none; }
	#LP.rainyCoupon .device-pc { display: block; }

	#LP.rainyCoupon .device-sp.newline,
	#LP.rainyCoupon .txt_block.device-sp,
	#LP.rainyCoupon .sp-block-pc-inline { display: inline; }

	#LP.rainyCoupon img {
		width: fit-content;
	}
	
	/* スペーサー */
	#LP.rainyCoupon .mb_xs { margin-bottom: 16px !important; }
	#LP.rainyCoupon .mb_sm { margin-bottom: 32px !important; }
	#LP.rainyCoupon .mb_md { margin-bottom: 48px !important; }
	#LP.rainyCoupon .mb_lg { margin-bottom: 60px !important; }
	#LP.rainyCoupon .mb_xlg { margin-bottom: 100px !important; }

	#LP.rainyCoupon .mt_xs { margin-top: 16px !important; }
	#LP.rainyCoupon .mt_sm { margin-top: 24px !important; }
	#LP.rainyCoupon .mt_md { margin-top: 48px !important; }
	#LP.rainyCoupon .mt_lg { margin-top: 60px !important; }
	#LP.rainyCoupon .mt_xlg { margin-top: 100px !important; }

	#LP.rainyCoupon .button-ecLink_2col {
		display: flex;
		justify-content: center;
		margin-bottom: 100px;
	}

	#LP.rainyCoupon .common__button-ecLink {
		width: 580px;
	}

	#LP.rainyCoupon .common__button-ecLink a {
		width: 450px;
		height: 82px;
		font-size: 24px;
		padding: 12px 0;
	}

	#LP.rainyCoupon .common__button-ecLink.btn_andmall a {
		padding: 22px 0;
		font-size: 25px;
	}
	
	#LP.rainyCoupon .common__button-ecLink.btn_mop a {
		padding: 12px 0;
		font-size: 20px;
	}

	#LP.rainyCoupon .common__button-ecLink a::before {
		top: calc(50% - 7px);
		right: 25px;
		width: 15px;
		height: 15px;
		border-top: 3px solid var(--lp-color_white);
		border-right: 3px solid var(--lp-color_white);
	}

	/* -------------
	キービジュアル
	------------- */
	#LP.rainyCoupon .kvArea__top {
		position: relative;
		height: 265px;
	}

	#LP.rainyCoupon .kvArea__top .kv_decorations {
		position: absolute;
        top: -15px;
        left: 50%;
        transform: translateX(-623px);
        z-index: 10;
	}

	#LP.rainyCoupon .kvArea__header {
		position: absolute;
		width: fit-content;
		top: 50%;
        left: 50%;
        transform: translate(-435px, -100px);
	}

	#LP.rainyCoupon .kvArea__header img {
		width: fit-content;
	}

	/* -------------
	クーポンコード
	------------- */
	#LP.rainyCoupon .kvArea__bottom__inner {
		padding: 0 10px;
		max-width: 1000px;
	}

	#LP.rainyCoupon .kvArea__bottom__block {
		margin: 0 auto;
		padding: 56px 0 0;
		width: 680px;
	}

	#LP.rainyCoupon .kvArea__bottom__couponcode {
		margin: 0 auto;
		width: 587px;
	}
	
	#LP.rainyCoupon .kvArea__couponcode__h2 {
		font-size: 38px;
		padding: 25px 0 10px 0;
	}

	#LP.rainyCoupon .kvArea__couponcode__border { background-size: 18px auto; }

	#LP.rainyCoupon .kvArea__couponcode__border-line {
		width: calc(100% - 36px);
		height: 35px;
	}

	#LP.rainyCoupon .kvArea__couponcode__border-line > span {
		background: repeating-linear-gradient(
			90deg,
			var(--lp-color_gray) 0,  var(--lp-color_gray) 8px,
			transparent 0, transparent 16px
		);
		width: calc(100% - 28px);
	}

	#LP.rainyCoupon .kvArea__couponcode-body > li { flex-basis: 100%; }
	#LP.rainyCoupon .kvArea__couponcode-body > li:last-of-type { width: 100%; }

	#LP.rainyCoupon .kvArea__couponcode-body {
		row-gap: 28px;
		padding-bottom: 10px;
		width: 409px;
	}

	#LP.rainyCoupon .kvArea__couponcode-message > p:not(:last-of-type) {
		margin-bottom: 20px;
	}

	#LP.rainyCoupon .js-copytext { font-size: 63px; }

	#LP.rainyCoupon .kvArea__couponcode__block { margin-bottom: 40px; }

	#LP.rainyCoupon .kvArea__bottom__etc-box {
		margin: 0 auto;
        width: 587px;
	}

	/* -------------
	アンカーリンク
	------------- */
	#LP.rainyCoupon .kvArea__bottom__anchor { margin-bottom: 40px; }

	#LP.rainyCoupon .kvArea__bottom__anchor > li {
		font-size: 24px;
		padding: 20px 0;
	}
	#LP.rainyCoupon .kvArea__bottom__anchor > li::before { 
		top: calc(50% - 10px);
		right: 25px;
		width: 15px;
		height: 15px;
		border-top: 3px solid var(--lp-color_black);
		border-right: 3px solid var(--lp-color_black);
	}

	#LP.rainyCoupon .kvArea__couponcode-message { padding: 0 30px 30px 30px; }

	#LP.rainyCoupon .kvArea__couponcode-explanation {
		font-size: 14px;
		letter-spacing: .05em;
		line-height: 1.6;
	}
	#LP.rainyCoupon .kvArea__couponcode-explanation.txt_bold {
		font-size: 18px;
	}

	#LP.rainyCoupon .kvArea__couponcode-deadline {
		font-size: 26px;
	}

	#LP.rainyCoupon .mainArea__inner {
		margin: 0 auto;
		padding: 0 0 70px;
		max-width: 1000px;
	}

	/* 黒帯アンカーリンク */
	#LP.rainyCoupon .anchorLink.wideBtn {
		width: 800px;
		margin-bottom: 110px;
		text-align: center;
		font-size: 24px;
		padding: 24px 0;
		letter-spacing: 0.01em;
		cursor: pointer;
		transition: .4s;
		line-height: 1;
	}

	#LP.rainyCoupon .anchorLink.wideBtn::after {
		top: 22px;
        width: 18px;
        height: 18px;
        border-top: solid 2px var(--lp-color_white);
        border-right: solid 2px var(--lp-color_white);
	}

	#LP.rainyCoupon .mainArea__common-block:not(:last-of-type) { margin-bottom: 65px; }

	/* 他施策バナー */
	#LP.rainyCoupon .mainArea__bnrLink .header_txt {
		width: fit-content;
		margin: 0 auto 16px;
	}

	#LP.rainyCoupon .mainArea__bnrLink .notes_txt {
		font-size: 14px;
	}

	#LP.rainyCoupon .mainArea__bnrLink .regist_bnr .mainArea__btnLink.regist {
		top: 265px;
	}

	#LP.rainyCoupon .mainArea__bnrLink .regist_bnr .mainArea__btnLink.regist a {
		width: 300px;
		height: 60px;
		padding: 20px;
		font-size: 18px;
	}

	#LP.rainyCoupon .mainArea__bnrLink .regist_bnr .mainArea__btnLink.regist a::after {
		top: 25px;
		right: 20px;
		width: 10px;
		height: 10px;
		border-top: solid 2px var(--lp-color_white);
		border-right: solid 2px var(--lp-color_white);
	}

	#LP.rainyCoupon .anchorLink.round {
		left: 270px;
		bottom: 18px;
		width: 260px;
		padding: 14px;
		font-size: 20px;
		font-weight: bold;
		letter-spacing: 0.01em;
	}
	
	#LP.rainyCoupon .anchorLink.round::after {
		right: 20px;
		top: 15px;
		width: 12px;
		height: 12px;
		border-top: solid 2px var(--lp-color_white);
		border-right: solid 2px var(--lp-color_white);
	}

	#LP.rainyCoupon .mainArea__bnrLink.xFollow {
		width: 800px;
		margin-bottom: 48px;
	}

	/* -------------
	おすすめカテゴリー
	------------- */
	#LP.rainyCoupon .mainArea__common-block#RECOMMEND {
		width: 800px;
		border-radius: 8px;
	}

	#LP.rainyCoupon .mainArea__common-block#HOWTOUSE { margin-bottom: 50px; }

	#LP.rainyCoupon .mainArea__common-h2 {
		font-size: 34px;
		margin-bottom: 19px;
	}

	#LP.rainyCoupon .mainArea__common-block {
		width: 100%;
		max-width: 980px;
	}

	#LP.rainyCoupon .mainArea__common-box { padding: 0 40px; }

	#LP.rainyCoupon .mainArea__common-registBtn { width: 500px; }
    #LP.rainyCoupon .mainArea__common-registBtn a {
		font-size: 28px;
		padding: 25px;
    }
    #LP.rainyCoupon .mainArea__common-registBtn a::before {
		border: 10px solid transparent;
		border-left: 10px solid var(--lp-color_white);
		right: 10px;
		width: 12.5px;
		height: 12.5px;
    }
    #LP.rainyCoupon .mainArea__common-registText { font-size: 16px; }

	#LP.rainyCoupon .mainArea__recommend-inner { padding: 70px 0 42px; }

    #LP.rainyCoupon .mainArea__recommend-h2 {
        width: fit-content;
    }

	#LP.rainyCoupon .mainArea__recommend-h2.header_andmall {
		top: -50px;
	}
	
	#LP.rainyCoupon .mainArea__recommend-h2.header_mop {
		top: -95px;
	}

	#LP.rainyCoupon .mainArea__recommend-h2 p.fs_md {
		font-size: 34px;
	}

	#LP.rainyCoupon .mainArea__recommend-h2 p.fs_sm {
		font-size: 30px;
	}

	#LP.rainyCoupon .mainArea__recommend-category {
		row-gap: 30px;
		padding-bottom: 40px;
		width: 475px;
	}

	#LP.rainyCoupon .mainArea__recommend-category > li { flex-basis: 210px; }
	#LP.rainyCoupon .mainArea__recommend-category > li:not(:nth-last-of-type(-n+2)) { margin-bottom: 0; }

	#LP.rainyCoupon .mainArea__recommend-image { margin-bottom: 8px; }

	#LP.rainyCoupon .mainArea__recommend-caption { font-size: 20px; }

	#LP.rainyCoupon .mainArea__usage-h2 {
        font-size: 42px;
        padding: 15px 0;
		border-radius: 8px 8px 0 0;
    }

	/* -------------
	注意事項
	------------- */
	#LP.rainyCoupon .mainArea__notes {
		width: 800px;
		margin: 0 auto 80px;
	}

	#LP.rainyCoupon .mainArea__notes-inner {
		padding: 40px 24px;
    }

	#LP.rainyCoupon .mainArea__notes-h3 {
		margin-bottom: 24px;
		font-size: 28px;
		letter-spacing: .05em;
	}

	#LP.rainyCoupon .mainArea__notes-list {
        margin: 0 auto;
        width: fit-content;
    }

	#LP.rainyCoupon .mainArea__notes-list > li {
		font-size: 14px;
		font-weight: 500;
		line-height: 1.35;
	}

	/* -------------
	クーポンコードの使い方
	------------- */
    #LP.rainyCoupon .mainArea__usage-list,
    #LP.rainyCoupon .mainArea__usage-list > li { width: 100%; }

    #LP.rainyCoupon .mainArea__usage-list {
		padding: 40px 0 60px 0;
		border-radius: 0 0 8px 8px;
	}

    #LP.rainyCoupon .mainArea__usage-list > li { max-width: 700px; }

	#LP.rainyCoupon .mainArea__usage-h3 {
		font-size: 20px;
		font-weight: bold;
		text-align: center;
		padding-left: 0;
	}
	#LP.rainyCoupon .mainArea__usage-h3 .icon {
		display: inline-block;
		position: initial;
		margin-right: 10px;
		width: 34px;
	}
	#LP.rainyCoupon .mainArea__usage-h3 .box-inner,
	#LP.rainyCoupon .mainArea__usage-h3 .emphasis,
	#LP.rainyCoupon .mainArea__usage-h3 .device-sp.newline { font-size: 18px; }

	#LP.rainyCoupon .mainArea__usage-h3 i.number { font-size: 22px; }

	#LP.rainyCoupon .mainArea__usage-h3 .box-inner {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#LP.rainyCoupon .mainArea__usage-arrow {
		background-position-y: 38px;
		background-size: 104px;
		padding: 48px;
	}

	#LP.rainyCoupon .mainArea__usage-h3 .device-sp.inline { display: none; }
	#LP.rainyCoupon .mainArea__usage-h3 .device-pc.inline { display: inline; }

	#LP.rainyCoupon .mainArea__usage-image {
		padding-top: 15px;
		width: 100%;
	}

	/* 期間終了後表示 */
	#LP.rainyCoupon .kvArea__campaignEnd {
		line-height: 1.5;
		font-size: 32px;
		margin-top: 40px;
		padding: 24px 0;
	}
}