
body {
	font-family: "zen-maru-gothic", sans-serif;
    font-weight: 400;
	position: relative;
    left: 0;
    overflow-x: hidden;
	-webkit-text-size-adjust: 100%; /* iphone横向き 文字拡大防止 */
}
img {
	display: block;
	width: 100%;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
a {
	text-decoration: none;
	color: #000;
	transition: all .3s;
}
a:hover {
	filter: brightness(1.1);
}
p {
	font-size: min(1.3vw,16px);
	line-height: 1.8;
}

/*最新のsafari用*/
::-webkit-full-page-media, :future, :root .AAA {
	
}
/*古いsafari用*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, .AAA {
		
	}
}

:root {
    --brown: #9d7262;
    --orange: #eb9143;
    --purple: #aa89bd;
    --red: #d93a15;
    --pink: #f19ec2;
}
/*==================================================================================
ヘッダー
==================================================================================*/
header {
    opacity: 0;
    position: absolute;
    top: 0;
}

/*==================================================================================
共通
==================================================================================*/
/* レイアウト */
section {
    padding: 3vw 0 6vw!important;
    background: url("../img/bg.png") left top / 240px repeat;
    position: relative;
}
.container {
	width: 100%;
    box-sizing: border-box;
	max-width: 1300px;
	padding: 0 5vw;
	margin: auto;
    position: relative;
}
.container * {
    position: relative;
    z-index: 3;
}
.max800 {
	max-width: 800px;
	margin: auto;
}
.w65per {
    width: 65%;
    margin: auto;
}
.w85per {
    width: 85%;
    margin: auto;
}
.row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.row.align_center {
	align-items: center;
}
.row.just_center {
	justify-content: center;
}
.row.just_start {
	justify-content: flex-start;
}
.col2 {
    width: 48%;
}
.col3 {
	width: 30%;
}

.wrap {
	display: inline-block;
}

.mb_10 {
	margin-bottom: min(1vw,10px);
}
.mb_20 {
	margin-bottom: min(2vw,20px);
}
.mb_30 {
	margin-bottom: min(3vw,30px);
}
.mb_40 {
	margin-bottom: min(4vw,40px);
}
.mb_60 {
	margin-bottom: min(6vw,60px);
}
.mb_120 {
	margin-bottom: min(12vw,120px);
}

/* フォント */
.font_12 {
	font-size: min(1vw,12px);
}
.font_14 {
	font-size: min(1.2vw,14px);
}
.font_16 {
	font-size: min(1.3vw,16px);
}
.font_20 {
	font-size: min(1.6vw,20px);
}
.font_24 {
	font-size: min(1.8vw,24px);
}
.font_30 {
	font-size: min(2.4vw,30px);
}
.font_34 {
	font-size: min(2.6vw,34px);
}
.font_46 {
	font-size: min(3.4vw,46px);
}
.font_54 {
	font-size: min(4vw,54px);
}
.txt_center {
	text-align: center;
}
.txt_right {
	text-align: right;
}
.bold {
	font-weight: 700;
}
.black {
    font-weight: 900;
}
.medium {
    font-weight: 500;
}
.white {
    color: #fff;
}
.red {
    color: #f00;
}
.brown {
    color: var(--brown);
}
.orange {
    color: var(--orange);
}
.purple {
    color: var(--purple);
}
.line1 {
    line-height: 1;
}
.line1_2 {
    line-height: 1.2;
}
.line1_4 {
    line-height: 1.4;
}
.line1_6 {
    line-height: 1.6;
}
.line1_8 {
    line-height: 1.8;
}
.gothic {
	font-family: "noto-sans-cjk-jp", sans-serif;
}
.indent {
	padding-left: 1em;
	text-indent: -1em;
}

/* アニメーション -----------*/
.animated.fadeinup {
	animation: fadeinup .6s;
}
@keyframes fadeinup {
	0% {opacity: 0; transform: translateY(1.5vh);}
	100% {opacity: 1; transform: translateY(0);}
}
.animated.fadeinup.second {
	animation: fadeinup_2nd .8s;
}
@keyframes fadeinup_2nd {
	0% {opacity: 0; transform: translateY(1.5vh);}
	25% {opacity: 0; transform: translateY(1.5vh);}
	100% {opacity: 1; transform: translateY(0);}
}
.yay {
    opacity: 0;
    transform: translateY(2px);
    transition: all .6s;
}
.yay.fadeinup {
    transform: translateY(1.5vh);
}
.yay.fadeinup.second.on {
    animation: yay_up_2nd 1s;
}
@keyframes yay_up_2nd {
	0% {opacity: 0; transform: translateY(1.5vh);}
	20% {opacity: 0; transform: translateY(1.5vh);}
	100% {opacity: 1; transform: translateY(0);}
}
.yay.fadeinup.third.on {
    animation: yay_up_3rd 1s;
}
@keyframes yay_up_3rd {
	0% {opacity: 0; transform: translateY(1.5vh);}
	40% {opacity: 0; transform: translateY(1.5vh);}
	100% {opacity: 1; transform: translateY(0);}
}
.yay.fadeinup.forth.on {
    animation: yay_up_4th 1.2s;
}
@keyframes yay_up_4th {
	0% {opacity: 0; transform: translateY(1.5vh);}
	42.85% {opacity: 0; transform: translateY(1.5vh);}
	100% {opacity: 1; transform: translateY(0);}
}

.yay.on {
    transform: translateY(0);
    opacity: 1;
}

/*==================================================================================
メイン
==================================================================================*/
section#main {
    background-color: #f8d0cb;
}
section#main .container {
    z-index: 2;
}
section#main .container::before {
    content: "";
    display: block;
    width: 100%;
    height: 120%;
    background: url("../img/main_deco01.png") left 3% top / 27% no-repeat, url("../img/main_deco02.png") right 1% top / 27% no-repeat;
    position: absolute;
    top: -2.5vw;
    left: 0;
    z-index: 2;
}
section#main .container::after {
    content: "";
    display: block;
    width: 23%;
    height: 20%;
    background: url("../img/character07.png") center center / contain no-repeat;
    position: absolute;
    bottom: -12%;
    left: 0;
    z-index: 2;
}
section#main .container.yay.on::after {
    animation: main_img07 1s;
}
@keyframes main_img07 {
	0% {opacity: 0; transform: translate(-1vw,.5vh);}
	40% {opacity: 0; transform: translate(-1vw,.5vh);}
	100% {opacity: 1; transform: translate(0,0);}
}

section#main img.main {
    position: relative;
    z-index: 3;
}
section#main img.main ~ img {
    width: 23%;
    position: absolute;
    z-index: 3;
}
section#main img.c01 {
    top: 6%;
    right: 1%;
}
section#main .yay.on img.c01 {
    animation: main_img01 .6s;
}
@keyframes main_img01 {
	0% {opacity: 0; transform: translate(1vw,-1.5vh);}
	100% {opacity: 1; transform: translate(0,0);}
}
section#main img.c02 {
    top: 3%;
    left: 0;
}
section#main .yay.on img.c02 {
    animation: main_img02 .6s;
}
@keyframes main_img02 {
	0% {opacity: 0; transform: translate(-1vw,-1.5vh);}
	100% {opacity: 1; transform: translate(0,0);}
}
section#main img.c03 {
    top: 20%;
    left: 0;
}
section#main .yay.on img.c03 {
    animation: main_img03 .7s;
}
@keyframes main_img03 {
	0% {opacity: 0; transform: translate(-1vw,0);}
	14.28% {opacity: 0; transform: translate(-1vw,0);}
	100% {opacity: 1; transform: translate(0,0);}
}
section#main img.c04 {
    top: 36%;
    right: 0;
}
section#main .yay.on img.c04 {
    animation: main_img04 .7s;
}
@keyframes main_img04 {
	0% {opacity: 0; transform: translate(1vw,0);}
	14.28% {opacity: 0; transform: translate(1vw,0);}
	100% {opacity: 1; transform: translate(0,0);}
}
section#main img.c05 {
    top: 54%;
    left: 2%;
}
section#main .yay.on img.c05 {
    animation: main_img05 .8s;
}
@keyframes main_img05 {
	0% {opacity: 0; transform: translate(-1vw,.5vh);}
	25% {opacity: 0; transform: translate(-1vw,.5vh);}
	100% {opacity: 1; transform: translate(0,0);}
}
section#main img.c06 {
    top: 70%;
    right: -3%;
}
section#main .yay.on img.c06 {
    animation: main_img06 .9s;
}
@keyframes main_img06 {
	0% {opacity: 0; transform: translate(1vw,.5vh);}
	33.33% {opacity: 0; transform: translate(1vw,.5vh);}
	100% {opacity: 1; transform: translate(0,0);}
}
section#main a {
    display: block;
    box-sizing: border-box;
    padding: 3em 2em;
    background: url("../img/main_btn01.png") center center / contain no-repeat;
    position: relative;
    z-index: 3;
	transition: all .3s;
}
section#main a:nth-child(2) {
    background-image: url("../img/main_btn02.png");
	margin-left: 1.5%;
}
section#main a::after {
    content: "";
    display: block;
    border: .5em transparent solid;
    border-top: .8em #fff solid;
    position: absolute;
    bottom: 1.4em;
    left: 50%;
    transform: translateX(-50%);
}
section#main a:hover {
    transform: scale(1.1);
}

/*==================================================================================
プレゼントキャンペーン
==================================================================================*/
section#present {
    background-color: #c9e6de;
}
section#present .container::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url("../img/present01_deco01.png") left 2% top 5% / 25% no-repeat, url("../img/present01_deco02.png") right 2% top 5% / 25% no-repeat, url("../img/present01_deco03.png") left 1% top 42% / 6% no-repeat, url("../img/present01_deco04.png") right 0.6% top 42% / 8.5% no-repeat, url("../img/present02_deco01.png") left bottom 25% / 14% no-repeat, url("../img/present02_deco02.png") right 2% bottom 24% / 14% no-repeat, url("../img/present02_deco03.png") left 1% bottom / 8% no-repeat, url("../img/present02_deco04.png") right 1% bottom / 8% no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
section#present h2 {
    padding: .35em;
    background: url("../img/present01_h2.png") center / contain no-repeat;
    position: relative;
}
section#present h2::after {
    content: "";
    display: block;
    width: min(22vw, 300px);
    height: min(22vw, 300px);
    background: url(../img/character08.png) center top / contain no-repeat;
    position: absolute;
    top: -110%;
    left: 78%;
    z-index: 2;
}
.frame {
    position: relative;
}
.frame .cont {
    width: 70%;
    background: url("../img/present01_frame_shine.png") center top 18% / 90% no-repeat;
    position: absolute;
    top: 18%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
}
.frame h3 img {
    width: 25%;
}
.frame h3 span {
    display: block;
}
.frame h3 span .font_54 {
    display: inline-block;
}
section#present .frame .chuki {
    display: inline-block;
    position: relative;
    left: 50%;
}
/* 応募方法 */
section#present .boad {
    margin-top: -25%;
	box-sizing: border-box;
    padding: 30px;
    background: #fff;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.3);
}
section#present .boad::before {
    content: "";
	display: block;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	box-sizing: border-box;
	border: 3px #e7c8aa solid;
	position: absolute;
	top: 5px;
	left: 5px;
}
section#present .boad * {
    position: relative;
	z-index: 2;
}
section#present .boad h4 span {
    display: inline-block;
    padding: .2em 0 .2em 2em;
    background: url("../img/present01_boad_h4_a.png") left center / contain no-repeat;
}
section#present .boad .col2:last-child h4 span {
    background-image: url("../img/present01_boad_h4_b.png");
}
section#present .boad .col2:first-child h4 span {
    letter-spacing: .3em;
}
section#present .boad .limited span {
    display: inline-block;
    padding: .3em 1em;
    border-radius: 5px;
    background: var(--red);
}
section#present .boad .result span.font_20 {
    display: inline-block;
    padding: .3em .5em;
    background: var(--purple);
    color: #fff;
    letter-spacing: .2em;
}
section#present .boad .result p {
    padding: .5em .8em;
    border: 2px var(--purple) solid;
}
/* PRESENT 2 -----------------------------------------------------------------------*/
section#present .frame.p02 .cont {
    width: 60%;
    background: none;
	top: 17%;
}
section#present .frame.p02 h3 {
    margin-bottom: -6%;
}
section#present .frame.p02 h3 .font_54 {
	font-size: min(4vw,50px);
	letter-spacing: -0.02em;
}
section#present .frame.p02 h4.limited {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	width: 8.5em;
	height: 8.5em;
	border-radius: 50%;
	background: var(--pink);
	position: absolute;
    top: -8%;
    right: -16%;
	z-index: 3;
}
section#present .frame.p02.yay.on h4.limited {
	animation: present02_limited .8s;
	opacity: 1;
}
@keyframes present02_limited {
	0% {opacity: 0; transform: scale(0);}
	50% {opacity: 0; transform: scale(0);}
	100% {opacity: 1; transform: scale(1);}
}
section#present .frame.p02 h4.limited span {
	display: block;
	width: 100%;
	margin-bottom: .3em;
}
section#present .frame.p02 .img {
    width: 126%;
	position: relative;
	left: -13%;
}
section#present .frame.p02 h4.comp {
    display: inline-block;
	margin-top: -17%;
	padding: 1.5em 1.2em;
	background: url("../img/present02_h4.png") center / contain no-repeat;
	transform: translateX(-9%) rotate(-5deg);
}
/* 対象店舗 */
section#present h5 {
	padding: .3em 25% .3em 3em;
	background: #f8b62d;
	position: relative;
}
section#present h5.store_b {
	background: #dae000;
}
section#present h5.store_c {
	background: #f3abca;
}
section#present h5.store_d {
	background: #95b9e2;
}
section#present h5::before {
	content: "";
	display: block;
	width: 3em;
	height: 3em;
	background: url("../img/present02_h5_a.png") center center / contain no-repeat;
	position: absolute;
	top: 50%;
	left: -2%;
	transform: translateY(-50%);
}
section#present h5.store_b::before {
	background-image: url("../img/present02_h5_b.png");
}
section#present h5.store_c::before {
	background-image: url("../img/present02_h5_c.png");
}
section#present h5.store_d::before {
	background-image: url("../img/present02_h5_d.png");
}
section#present h5::after {
	content: "";
	display: block;
	width: 20%;
	height: 5em;
	background: url("../img/present02_sticker01.png") center bottom / contain no-repeat;
	position: absolute;
	right: .3em;
	bottom: .3em;
}
section#present h5.store_b::after {
	background-image: url("../img/present02_sticker02.png");
}
section#present h5.store_c::after {
	background-image: url("../img/present02_sticker03.png");
}
section#present h5.store_d::after {
	background-image: url("../img/present02_sticker04.png");
}

/*==================================================================================
コラボイベント
==================================================================================*/
section#collaboration {
    background-color: #d9dbee;
}
section#collaboration .container::before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% + 9vw);
    background: url("../img/place_deco01.png") left 2% top / 14% no-repeat, url("../img/place_deco02.png") right 1% top / 14% no-repeat, url("../img/popup_deco01.png") left 1% top 24% / 18% no-repeat, url("../img/popup_deco02.png") right 0.6% top 24% / 18% no-repeat, url("../img/greeting_deco01.png") left bottom 37% / 14% no-repeat, url("../img/greeting_deco02.png") right 2% bottom 38% / 14% no-repeat, url("../img/photo_deco01.png") left bottom 1% / 18% no-repeat, url("../img/photo_deco02.png") right 1% bottom / 19% no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
section#collaboration h2 span {
	display: block;
	margin-top: .4em;
    padding: .45em;
    background: url("../img/present02_h2.png") center / contain no-repeat;
}
section#collaboration .frame .cont {
	width: 62%;
    background: none;
	top: 5%;
}
section#collaboration .frame h3 img {
    width: 60%;
	margin: 0 auto 5px;
}
section#collaboration .frame .days img {
    width: 30%;
	margin: 0 auto 5px;
}
section#collaboration .frame .img {
    width: 75%;
	margin: 1% auto -3%;
}
section#collaboration .frame .img + p {
    padding-left: 6%;
}
/* グリーティングイベント ----------------------------------------------------------------*/
section#collaboration .frame.c02 .cont {
	top: 17%;
}
section#collaboration .frame.c02 h3 {
	margin-bottom: min(10vw,60px);
}
section#collaboration .frame.c02 h3 img {
	margin: 0 auto 20px;
}
section#collaboration .frame.c02 .days img {
	width: 46%;
	margin: 0 0 20px;
}
section#collaboration .frame.c02 .days p {
	padding-left: 1em;
}
section#collaboration .frame.c02 .img {
    width: 40%;
    margin: 0;
    position: absolute;
    top: 47%;
    right: 4%;
}
section#collaboration .frame.c02 .limited span {
    display: inline-block;
	padding: .4em 1em;
	background: var(--pink);
}
/* フォトスポット ---------------------------------------------------------------------- */
section#collaboration .frame.c03 .cont {
	width: 64%;
	top: 14%;
}

/*==================================================================================
注意事項
==================================================================================*/
section#caution {
	background-color: #f8d0cb;
}
section#caution .container::before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% + 9vw);
    background: url(../img/caution_deco01.png) left 1% top -4% / 11% no-repeat, url(../img/caution_deco02.png) right top / 11% no-repeat;
    position: absolute;
    top: -5vw;
    left: 0;
}
section#caution h2 {
	letter-spacing: 0.2em;
}

/*==================================================================================
フッター
==================================================================================*/
footer {
	padding: 20px 0!important;
}


.tb {display: none;}
.pc {display: inline;}
.sp {display: none;}

@media screen and (max-width : 960px) {
	.pc {display: none;}
	.tb {display: inline;}
	
	p { font-size: min(2vw, 14px); }
	
	/*==================================================================================
	共通
	==================================================================================*/
	/* レイアウト */
	.container {
        max-width: 800px;
		padding: 0 3vw;
	}
	.w65per {
	    width: 75%;
	}
	.w85per {
	    width: 100%;
	}
	.col2 {
		width: 100%;
		margin-bottom: min(3vw,20px);
	}
	.col2:last-child {
		margin-bottom: 0;
	}
	.col3 {
		width: 100%;
		margin-bottom: min(2vw,15px);
	}
	.col3:last-child {
		margin-bottom: 0;
	}
	.mb_10 {
		margin-bottom: min(1vw,8px);
	}
	.mb_20 {
		margin-bottom: min(2vw,15px);
	}
	.mb_30 {
		margin-bottom: min(3vw,20px);
	}
	.mb_40 {
		margin-bottom: min(4vw,30px);
	}
	.mb_60 {
		margin-bottom: min(6vw,45px);
	}
	.mb_120 {
		margin-bottom: min(12vw,80px);
	}

	/* フォント */
    .font_12 {
        font-size: min(1.8vw, 12px);
    }
    .font_14,
    .font_16 {
        font-size: min(2vw, 14px);
    }
    .font_20,
    .font_24 {
    	font-size: min(2.2vw, 16px);
    }
    .font_30,
    .font_34 {
    	font-size: min(3vw, 24px);
    }
    .font_46 {
        font-size: min(3.5vw, 30px);
    }
    .font_54 {
    	font-size: min(4.5vw, 45px);
    }
	/*==================================================================================
	メイン
	==================================================================================*/
	section#main .container::before {
	    background: url("../img/main_deco01.png") left 3% top / 30% no-repeat, url("../img/main_deco02.png") right top 5% / 28% no-repeat;
	}
	section#main .container::after {
	    left: -3%;
	}
	section#main img.main ~ img {
		width: 20%;
	}
	section#main img.c03 {
	    left: -2%;
	}
	section#main img.c05 {
		top: 55%;
	}
	section#main img.c06 {
		right: -1%;
	}
	section#main a {
	    padding: 2.4em 1em;
	}
	section#main a:nth-child(2) {
		margin-left: 1%;
	}
	section#main a::after {
	    content: "";
	    bottom: .8em;
	}
	/*==================================================================================
	プレゼントキャンペーン
	==================================================================================*/
	section#present .container::before {
		background-position: left 1% top 2%, right 1% top 3%, left 2% top 22%, right 2% top 23%, left 1% top 32%, right 1% top 33%, left 3% bottom 25%, right 2% bottom 12%;
		background-size: 23%, 24%, 6%, 8.5%, 12%, 12%, 10%, 10%;
	}
	section#present h2::after {
	    left: 74%;
	}
	/* 応募方法 */
	section#present .boad {
        max-width: 540px;
	    padding: 20px;
	    box-shadow: 3px 3px 8px rgba(0,0,0,0.3);
	}
	section#present .boad .txt_center {
	    text-align: left;
	}
	section#present .boad .col2:first-child h4 span {
	    letter-spacing: .2em;
	}
	section#present .boad .limited span {
	    padding: .5em 1em;
	}
	section#present .boad .result span.font_20 {
	    padding: .3em 1em;
	    letter-spacing: .1em;
	}
	/* PRESENT 2 -----------------------------------------------------------------------*/
	section#present .frame.p02 .cont {
	    width: 62%;
	}
	section#present .frame.p02 h3 .font_54 {
	    font-size: min(4.5vw, 45px);
	}
	section#present .frame.p02 h4.limited {
		width: 8em;
		height: 8em;
	}
	section#present .frame.p02 h4.comp {
		margin-top: -20%;
    	font-size: min(2.5vw, 16px);
	}
	section#present .frame.p02 .font_20 {
        font-size: min(2.2vw, 14px);
	}
	/* 対象店舗 */
	section#present .col3 {
		max-width: 460px;
		margin: 0 auto 20px;
	}
	section#present .col3:first-child {
		margin-top: 5%;
	}
	/*==================================================================================
	コラボイベント
	==================================================================================*/
	section#collaboration .container::before {
		background: url("../img/place_deco01.png") left 1% top / 13% no-repeat, url("../img/place_deco02.png") right 1% top / 13% no-repeat;
	}
    section#collaboration .frame .cont {
    	width: 65%;
    }
    section#collaboration .frame h3 img {
        width: 50%;
    }
    section#collaboration .frame .img {
        width: 65%;
    }
    /* グリーティングイベント ----------------------------------------------------------------*/
	section#collaboration .frame.c02 .cont {
		top: 15%;
	}
    section#collaboration .frame.c02 h3 {
		margin-bottom: min(6vw,30px);
    }
    section#collaboration .frame.c02 h3 img {
    	margin: 0 auto 10px;
    }
    section#collaboration .frame.c02 .days img {
    	width: 50%;
    	margin: 0 0 15px;
    }
    section#collaboration .frame.c02 .days p {
    	padding-left: 2em;
    }
    section#collaboration .frame.c02 .img {
        width: 38%;
        top: 42%;
    }
    section#collaboration .frame.c02 .font_14 {
        font-size: min(1.8vw, 12px);
    }
    /* フォトスポット ---------------------------------------------------------------------- */
    section#collaboration .frame.c03 .cont {
    	width: 65%;
    }
    /*==================================================================================
    注意事項
    ==================================================================================*/
    section#caution .container::before {
        display: none;
    }
}


@media screen and (max-width : 460px) {
	.tb {display: none;}
	.sp {display: inline;}
    p {font-size: 2.4vw;}
	/*==================================================================================
	共通
	==================================================================================*/
	/* レイアウト */
    section {
        padding: 5vw 0 8vw!important;
    }
	.w85per {
	    width: 100%;
	}
	/* フォント */
    .font_12 {
        font-size: 2vw;
    }
    .font_14,
    .font_16 {
        font-size: 2.4vw;
    }
    .font_20,
    .font_24,
    .font_30 {
    	font-size: 3.4vw;
    }
    .font_34 {
    	font-size: min(3vw, 24px);
    }
    .font_46 {
        font-size: min(3.5vw, 30px);
    }
    .font_54 {
    	font-size: 6vw;
    }
	/*==================================================================================
	メイン
	==================================================================================*/
	section#main .container::after {
		bottom: -18%;
	}
	section#main img.c05 {
		top: 46%;
	}
    section#main img.c06 {
        top: 77%;
    }
	/*==================================================================================
	プレゼントキャンペーン
	==================================================================================*/
	section#present .container::before {
        background: url("../img/present01_deco01.png") left -1% top 2% / 23% no-repeat, url("../img/present01_deco02.png") right 1% top 2% / 24% no-repeat, url("../img/present02_deco03.png") left 3% bottom 25% / 10% no-repeat, url("../img/present02_deco04.png") right 2% bottom 12% / 10% no-repeat;
	}
	/* 応募方法 */
    section#present .boad {
        margin-top: -20%;
        box-shadow: 0 0 5px rgba(0,0,0,0.3);
    }
    section#present .boad h4 + .font_20 {
        font-size: 3vw;
    }
    /* PRESENT 2 -----------------------------------------------------------------------*/
    section#present .frame.p02 .cont {
        width: 64%;
    }
    section#present .frame.p02 h3 .font_54 {
        font-size: 5vw;
    }
    section#present .frame.p02 h4.limited {
        width: 7em;
        height: 7em;
        top: -15%;
    }
    section#present .frame.p02 .font_12 {
        margin-bottom: -10%;
    }
    section#present .frame.p02 .font_20 {
        font-size: 2.4vw;
    }
	/* 対象店舗 */
	section#present .col3 {
		max-width: 300px;
		margin: 0 auto 20px;
	}
	section#present .col3:first-child {
		margin-top: 10%;
	}
    section#present h5::before {
        width: 2.5em;
        height: 2.5em;
    }
	/*==================================================================================
	コラボイベント
	==================================================================================*/
    section#collaboration .frame .cont .font_20 {
        margin-bottom: 0;
    	font-size: 2.4vw;
    }
    section#collaboration .frame .days {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }
    section#collaboration .frame .days img {
        width: 35%;
        margin: 0 10px 0 0;
    }
    section#collaboration .frame .img {
        width: 55%;
    	margin: -3% auto;
    }
    section#collaboration .frame p:last-child {
        font-size: 2vw;
    }
    /* グリーティングイベント ----------------------------------------------------------------*/
    section#collaboration .frame.c02 .cont {
		width: 70%;
        top: 12%;
    }
    section#collaboration .frame.c02 h3.font_30 {
        margin-bottom: 2vw;
    	font-size: 3vw;
    }
    section#collaboration .frame.c02 .limited span {
        padding: .4em .6em;
    }
    section#collaboration .frame.c02 .days {
        display: block;
		margin-bottom: min(2vw,15px);
    }
	section#collaboration .frame.c02 .days img {
		margin-bottom: 10px;
	}
    section#collaboration .frame.c02 .days .font_20 {
        padding-left: 1em;
        font-size: 3vw;
    }
    /* フォトスポット ---------------------------------------------------------------------- */
    section#collaboration .frame.c03 .cont {
    	top: 12%;
    }
    section#collaboration .frame.c03 .cont .font_30 {
    	font-size: 3vw;
    }
    /*==================================================================================
    注意事項
    ==================================================================================*/
    section#caution .font_14 {
        font-size: 2.4vw;
    }
}


