@charset "utf-8";
html {
	font-size: calc(10vw / 7.5);
	-webkit-font-smoothing: antialiased;
}
body {
	background-size: 100%;
	background-position: 0 0;
	background-repeat: repeat-y;
/* 	color: #222222; */
	font-family: YakuHanJP, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
	font-size: 14px;
	font-size: 2.8rem;
	line-height: 1;
	background-color: #0e0e0e;
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
@media screen and (min-width: 769px) {
	html {
		font-size:8px;
	}
	body {
		font-size: 1.4rem;
	}
}
* {
	-webkit-tap-highlight-color: transparent;
}
a {
	color: inherit;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
p, dt, dd, li {
	word-break: break-word;
	word-wrap: normal;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
.ib {
	display: inline-block;
	line-height: inherit;
	font-weight: inherit;
}
.serif {
	font-family: YakuHanMP_Noto, 'Noto Serif JP', serif;
}
.txtBold {
	font-weight: 700;
}
.super {
	font-size: 0.5em;
	vertical-align: super;
}
.wrapper {
	transition: opacity 1.0s;
}
body.loading .wrapper {
	opacity: 0;
}
body.load_complete .mainpage {
	background: url(../img/bg.jpg) no-repeat;
	background-size: cover;
	opacity: 1;
}
body.load_complete .faq  {
	background: url(../img/bg3.jpg) ;
	background-size: 100%;
	background-repeat: repeat-y;
	opacity: 1;
}

body.load_complete .faq>div  {
	background: url(../img/bg2.jpg) ;
	background-size: 100%;
	background-repeat: no-repeat;
	opacity: 1;
}


@media screen and (min-width: 769px) {
	body.load_complete .faq {
/* 	    background-position: 0 4em; */
	}
}


/* loading */
html {
	width: 100%;
	height: 100%;
}
body.loading {
	overflow: hidden;
	width: 100%;
	height: 100%;
	background-color: #000000;
}
#loading {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 3000;
	background-image: url(../img/loading_blk.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 180px 180px;
}
#loading.load {
	animation: fade 4s linear infinite;
}
@keyframes fade {
	0% { opacity: 1; }
	50% { opacity: 0; }
	100% { opacity: 1; }
}
body.load_complete #loading {
	display: none;
}
#suntory_contents {
	transition: opacity 0.5s;
}
body.loading #suntory_contents {
	opacity: 0;
}
body.load_complete #suntory_contents {
	opacity: 1;
}
@media screen and (min-width: 769px) {
	#loading {
		background-size: 220px 220px;
	}
}

.contentWrap {
}
.contentInner {
	width: calc(680 / 750 * 100%);
	margin: auto;
}
.fadeContent {
	opacity: 0;
	transition: opacity 1.0s ease-out;
}
.fadeContent.current {
	opacity: 1;
}
.accordionTrigger {
	cursor: pointer;
}
.accordionContent {
	display: none;
}
.mode_pc {
	display: none;
}
.mode_sp {
	display: block;
}
@media screen and (min-width: 769px) {
	.wrapper {
		max-width: 750px;
		margin: auto;
	}
	.mode_sp {
		display: none;
	}
}

/* campaignArea */
#campaignArea .title {
	margin: 0 0 calc(25 / 750 * 100%) 0;
}
#campaignArea .row .head {
	color: #ffffff;
	font-size: 3.4rem;
	line-height: 1;
	text-align: center;
	padding: 0 0 0.3em 0;
}
#campaignArea .row .cont {
	text-align: center;
	padding: calc(27 / 690 * 100%) 0 calc(34 / 690 * 100%) 0;
}
#campaignArea .row:nth-of-type(2) .cont {
	padding: calc(40 / 690 * 100%) 0 calc(50 / 690 * 100%) 0;
}
#campaignArea .row:nth-of-type(3) .cont {
	padding: calc(0 / 690 * 100%) 0 0 0;
}
#campaignArea .row:nth-of-type(3) .head {
	padding: 0 0 0 0;
}
#campaignArea .row .cont .period {
	display: inline-block;
	font-size: 3.4rem;
	line-height: 5.6rem;
	font-weight: 700;
}
#campaignArea .row .cont .period .small {
	display: block;
	font-size: 3.0rem;
	line-height: 5.6rem;
	text-align: center;
}
#campaignArea .row .cont .period .wrap {
	display: inline-block;
}
#campaignArea .row .cont .period .start,
#campaignArea .row .cont .period .end {
	display: block;
	text-align: left;
}
#campaignArea .row .cont .period .num {
}
#campaignArea .row .cont .prize {
	font-size: 4rem;
	font-weight: 700;
}

#campaignArea .row .cont .image {
	margin: 0 0 calc(60 / 690 * 100%) 0;
}
#campaignArea .row .cont .attention {
	position: relative;
	background-color: #ffffff;
	border: 5px solid #c90010;
	border-radius: 5px;
}
#campaignArea .row .cont .attention .attentionTitle {
	color: #ffffff;
	font-size: 3.154rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	background-color: #c90010;
	padding: 0.5em 0 0.4em 0;
}
#campaignArea .row .cont .attention .attentionCont {
	text-align: left;
	padding: 0.9em 1.5em 0.3em 0.9em;
}
#campaignArea .row .cont .attention .attentionCont .text {
	color: #c90010;
	font-size: 2.6rem;
	line-height: 4.4rem;
	text-indent: -1em;
	margin: 0 0 0.4em 0;
	padding-left: 1em;
}
#campaignArea .row .cont .attention .attentionCont .text:before {
	content: "●";
}
@media screen and (min-width: 769px) {
	#campaignArea .row .cont .attention {
		border-left: 10px solid #c90010;
		border-right: 10px solid #c90010;
		border-bottom: 10px solid #c90010;
		border-top: none;
	}
	#campaignArea .row .cont .attention:before {
		top: -10px;
		height: 10px;
	}
	#campaignArea .row .cont .attention:after {
		bottom: -10px;
		height: 10px;
	}
}

/* applyArea */
#applyArea .content {
	padding: calc(30 / 750 * 100%) 0 0 0;
}
#applyArea .title {
	color: #ffffff;
	font-size: 3.6rem;
	line-height: 1;
	text-align: center;
	margin: 0 0 calc(50 / 690 * 100%) 0;
	padding: 0.5em 0 0.3em 0;
}
#applyArea .title:nth-of-type(1)  {
	margin: 0 0 calc(50 / 690 * 100%) 0;
	padding: 0 0 0.3em 0;
}
#applyArea .list {
}
#applyArea .list .item {
	position: relative;
	margin: 0 0 calc(60 / 690 * 100%) 0;
}
#applyArea .list .item .step {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	width: calc(120 / 690 * 100%);
	margin: calc(-14 / 690 * 100%) 0 0 calc(22 / 690 * 100%);
}
#applyArea .list .item .inner {
	position: relative;
	color: #333333;
	background-color: #ffffff;
	padding: calc(50 / 690 * 100%) 0 calc(40 / 690 * 100%) 0;
	border-radius: 5px;
	border: 5px solid;
	border-image: linear-gradient(to bottom, #d6aa28, #f1dd83, #d6aa28) 1;
}

#applyArea .list .item.step3 .inner {
	padding-bottom: 0;
}
#applyArea .list .item .stepTitle {
	color: #333333;
	font-size: 3.8rem;
	line-height: 5.0rem;
	text-align: center;
	padding: 0 0 calc(35 / 670 * 100%) 0;
}
#applyArea .list .item.step2 .stepTitle,
#applyArea .list .item.step4 .stepTitle {
	color: #000000;
}
#applyArea .list .item .stepTitle .num {
	color: #05974e;
	font-size: 5.0rem;
}
#applyArea .list .item .stepTitle .em {
	display: inline-block;
	color: #ffffff;
	font-size: 4.4rem;
	letter-spacing: -0.05em;
	background-image: url(../img/bg_band.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0.25em 0 0 0;
	padding: 0.25em 0.7em 0.25em 1.1em;
}
#applyArea .list .item .stepTitle .em .color {
	color: #fff000;
}
#applyArea .list .item .desc {
	font-size: 2.6rem;
	line-height: 3.6rem;
	letter-spacing: -0.03em;
	padding: 0 calc(40 / 670 * 100%);
}
#applyArea .list .item.step3 .desc {
	padding: calc(30 / 670 * 100%) calc(40 / 670 * 100%) calc(30 / 670 * 100%) ;
}
#applyArea .list .item.step3 .pointupBg .desc {
	padding: calc(24 / 670 * 100%)  calc(40 / 670 * 100%)  calc(30 / 670 * 100%) ;
	color: #ffffff;
	text-align: center;
}
#applyArea .list .item .wrap {
	display: flex;
	padding: calc(51 / 670 * 100%) 0 0 0;
}
#applyArea .list .item .wrap .scene {
	flex-basis: 50%;
	text-align: center;
}
#applyArea .list .item .wrap .scene .image {
	margin: 0 0 calc(30 / 325 * 100%) 0;
}
#applyArea .list .item .wrap .scene .sceneName {
	display: inline-block;
	color: #ffffff;
	font-size: 3.33rem;
	letter-spacing: 0.5em;
	background-color: #016e3e;
	margin: 0 0 calc(18 / 325 * 100%) 0;
	padding: 0.4em 1em 0.4em 1.5em;
	border-radius: 1.5em;
}
#applyArea .list .item .wrap .scene:nth-of-type(2) .sceneName {
	background-color: #e27e00;
}
#applyArea .list .item .wrap .scene .sceneDesc {
	font-size: 2.8rem;
	line-height: 3.87rem;
}
#applyArea .list .item .wrap .scene .sceneDesc .color {
	color: #05974e;
}
#applyArea .list .item .wrap .scene .sceneNote {
	font-size: 2.3rem;
	line-height: 3.0rem;
}
#applyArea .list .item .note {
	font-size: 2.3rem;
	line-height: 3.6rem;
	text-align: center;
	margin: 0 0 0.3em 0;
}
#applyArea .list .item .pointupBg {
	background-color: #000000;
	margin: calc(50 / 670 * 100%) 0 0 0;
	padding: calc(50 / 670 * 100%) 0 calc(60 / 670 * 100%) 0;
}
#applyArea .list .item .pointUp {
	color: #ffffff;
	font-size: 4.2rem;
	text-align: center;
	margin: 0 0 calc(50 / 670 * 100%) 0;
}
@media screen and (min-width: 769px) {
	#applyArea .list .item .inner {
		border: 10px solid;
		border-image: linear-gradient(to bottom, #d6aa28, #f1dd83, #d6aa28) 1;
	}
	#applyArea .list .item .inner:before {
		top: -10px;
		height: 10px;
	}
	#applyArea .list .item .inner:after {
		bottom: -10px;
		height: 10px;
	}
}

/* termArea */
#termArea {
}
#termArea .contentInner {
}
#termArea .title {
	font-size: 3.6rem;
	text-align: center;
	padding: calc(6 / 678 * 100%) 0 calc(40 / 678 * 100%) 0;
}
#termArea .box {
	font-family: YakuHanJP, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
	background-color: #ffffff;
	margin: 0 0 calc(29 / 678 * 100%) 0;
	padding: calc(35 / 678 * 100%) calc(10 / 678 * 100%) calc(35 / 678 * 100%) calc(30 / 678 * 100%);
	border: 5px solid;
	border-image: linear-gradient(to bottom, #d6aa28, #f1dd83, #d6aa28) 1;
}
#termArea .box .boxInner {
	overflow: auto;
	height: 66.2vh;
	font-size: 2.2rem;
	padding: 0 calc(20 / 678 * 100%) 0 0;
	-webkit-overflow-scrolling: touch;
}
#termArea .box .intro {
	color: #333333;
	font-size: 2.2rem;
	line-height: 3.2rem;
	margin: 0 0 3em 0;
}
#termArea .box .row {
	color: #333333;
}
#termArea .box .row .head {
	background: #000000;
	color: #ffffff;
	display: flex;
	align-item: center;
	font-size: 2.5rem;
	line-height: 1;
	font-weight: 500;
	text-align: center;
	margin: 0 0 1.5em 0;
	padding: 0.5em 0;
	border-radius: 3px;
}
#termArea .box .row .head .text {
	flex-shrink: 0;
/* 	padding: 0.2em 0.7em 0 0.7em; */
	font-weight: 700;
	width: 100%;
}
#termArea .box .row .cont {
	margin: 0 0 3em 0;
}
#termArea .box .row:last-child .cont {
	margin: 0 0 0 0;
}
#termArea .box .row .cont p {
	font-size: 2.2rem;
	line-height: 3.2rem;
	margin: 0 0 0.5em 0;
}
#termArea .box .row .cont li {
	font-size: 2.2rem;
	line-height: 3.6rem;
	text-indent: -1em;
	margin: 0 0 0.5em 0;
	padding: 0 0 0 1em;
}
#termArea .box .row .cont li .small {
	font-size: 1.85rem;
}
#termArea .box .row .cont a {
	color: #0066cc;
	text-decoration: underline;
}
#termArea .box .row .cont .mb {
	margin: 0 0 1em 0;
}
#termArea .box .row .cont .bold {
	font-weight: 700;
}
#termArea .box .row .cont .large {
	font-size: 2.8rem;
    line-height: 1.4em;
}
#termArea .box .row .cont .t_right {
	text-align: right;
}
#termArea .box .row .cont .note {
	font-size: 2.05rem;
	line-height: 3.2rem;
}
@media screen and (min-width: 769px) {
	#termArea .box {
		border: 10px solid;
		border-image: linear-gradient(to bottom, #d6aa28, #f1dd83, #d6aa28) 1;
	}
}



/* faqArea */
#faqArea .content {
	padding: 0 0 calc(40 / 750 * 100%) 0;
	color: #ffffff;
}
#faqArea .title {
	margin: 0 0 calc(28 / 690 * 100%) 0;
}
#faqArea .title .small {
	font-size: 5rem;
}
#faqArea .desc {
	font-size: 2.8rem;
	text-align: center;
	margin: 0 0 calc(28 / 690 * 100%) 0;
}
#faqArea .row {
	position: relative;
}
#faqArea .row:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 1px;
	background-color: #ffffff;
	margin: auto;
}
#faqArea .row .question {
	position: relative;
	color: #ffffff;
	font-size: 2.8rem;
	line-height: 4.6rem;
	padding: calc(36 / 690 * 100%) 1.6em calc(36 / 690 * 100%) 0;
}
#faqArea .row .question:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0.4em;
	width: 0.6em;
	height: 0.6em;
	margin: auto;
	border-bottom: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	transform: rotate(45deg);
}
#faqArea .row.open .question:before {
	top: 0.2em;
	transform: rotate(-135deg);
}
#faqArea .row .question .icon {
	display: flex;
	align-items: center;
	position: relative;
}
#faqArea .row .question .icon:before {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 8rem;
	background-image: url(../img/icon_question.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 1rem 0 0;
	padding: calc(56 / 690 * 100%) 0 0 0;
}
#faqArea .row .answer {
	font-size: 2.6rem;
	line-height: 4.4rem;
	padding: 0 0 calc(36 / 690 * 100%)  0;
}
#faqArea .row .answer li {
	text-indent: -1em;
	padding-left: 1em;
}

#faqArea .row .answer .mb {
	margin: 0 0 1em 0;
}
#faqArea .row .note {
	font-size: 2.4rem;
    line-height: 3.8rem;
}
#faqArea+#linkArea {
	padding-bottom: calc(60 / 750 * 100%);
}

/* contactArea */
#contactArea .content {
}
#contactArea .title {
	position: relative;
	color: #ffffff;
	font-size: 3.5rem;
	line-height: 1;
	font-weight: 500;
	text-align: center;
	margin: 0 0 calc(40 / 690 * 100%) 0;
}
#contactArea .title:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: calc(50% + 3.2em);
	height: 1px;
	background-color: #ffffff;
	margin: auto;
}
#contactArea .title:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(50% + 3.2em);
	right: 0;
	height: 1px;
	background-color: #ffffff;
	margin: auto;
}
#contactArea .contact {
	padding: 0 0 calc(30 / 690 * 100%) 0;
}

/* linkArea */
#linkArea {
	width: calc(608 / 750 * 100%);
	margin: 0 auto;
	padding: calc(30 / 750 * 100%) 0 calc(60 / 750 * 100%) 0;
}

/* toTop */
#toTop {
	font-size: 2.6rem;
	letter-spacing: 0.1em;
	text-align: center;
	background-color: #008b44;
}
#toTop .link {
	display: block;
	padding: calc(17 / 750 * 100%) 0 calc(14 / 750 * 100%) 0;
}
#toTop .link img{
	width: calc(162 / 750 * 100%);
}
@media screen and (min-width: 769px) {
	#toTop .link {
	    display: block;
	    padding: 15px 0;
	}
	#toTop .link img{
		width: 130px;
	}
	#contactArea .contact  img{
		width: 70%;
		margin-left: 102px;
	}
}
