@charset "utf-8";


@import url(reset.css);
@import url(font.css);


/*-----------------------------------------------
	LAYOUT
-----------------------------------------------*/
#wrapper{
	margin: 0 auto;
	text-align: left;
	background-color:#fff;
	color: #222;
	height: 100%;
	min-height: 100%;	
	min-width: 1000px;
	position:relative;
	overflow:hidden;
	padding-top:0 !important;
}
body > #wrapper {
	height: auto;
}
.top{
	padding:0 0 15em 0;
	
}
.top2{
	padding:0 0 5em 0;
	
}
/*-----------------------------------------------
	TOP MAIN IM
-----------------------------------------------*/
.topMain{
	background-image:url(../img/main.jpg);
	background-position:center center;
	background-repeat: no-repeat;
	background-size: cover;
	position:relative;
	width:100%;
	height:100%;
	min-height:800px;
	overflow:hidden;
	background-color:#fff;
}
.topArea{
	position:absolute;
	top:0;
	width:100%;
	height:100%;
	left:0;
	
}

.logoArea{
	position:absolute;
	width:100%;
	left:0;
	top:50%;
	background:rgba(0,195,184,0.9);
	padding:1em 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.logoArea h2{
	width:420px;
	margin:0 auto;
}
.logoArea h2 img{
	width:100%;
	height:auto;
}
.main_sp{
	display:none;
}
.main_sb{
	padding-bottom:15em;
	padding-top:5em;
	position:relative;
	
}
.main_sb h3{
	text-align:center;
	font-size:24px;
	line-height:2.4;
	letter-spacing:0.05em;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.main_sb h4{
	width:340px;
	margin:0 auto;
	padding:5em 0;
}
.main_sb h4 img{
	width:100%;
	height:auto;
}
.main_sb .dataArea{
	text-align:center;
	margin-bottom:3em;
	padding-top:0em;
	
}
.main_sb .dataArea p{
	width:80%;
}
.main_sb .dataArea p img{
	width:100%;
	height:auto;
}
.main_sb .dataArea p{
	display:inline-block;
	background: linear-gradient(transparent 80%, #00b9ad 80%);
	padding:0;
}
.photo{
	padding-top:5em;
}
.photo img{
	width:100%;
	height:auto;
}
.photo img.sp{
	display:none;
}
/*-----------------------------------------------
	タイトル
-----------------------------------------------*/
.mainTitleArea{
	margin-bottom:5em;
}
.mainTitle{
	text-align: center;
	letter-spacing: 0.1em;
	font-weight: 500;
	font-family: "Noto Sans JP";
	font-size: 22px;
	color: #00b9ad;
}
.subTitle{
	text-align:center;
	font-size:14px;
	padding-top:2em;
	line-height:1.6;
}
.subTitle br{
	display:none;
}
/*-----------------------------------------------
	背景
-----------------------------------------------*/
.bg-green::before, .bg-white::before, .bg-grey::before {
    content: "";
    display: block;
    position: absolute;
    top: -206px;
    width: 100%;
    height: 207px;
    background-position: center top;
    z-index: 2;
    pointer-events: none;
}

.bg-green::before {
    background-image:url(../img/line-green.png);
}
.bg-white::before {
    background-image:url(../img/line-white.png);
}
.bg-grey::before {
    background-image:url(../img/line-grey.png);
}

/*-----------------------------------------------
	BT
-----------------------------------------------*/
.btArea{
	text-align:center;
	padding:5em 0;
}
.btArea li{
	width:46%;
	display:inline-block;
	margin:0 1%;
	letter-spacing:0.2em;
	font-weight:500;
	font-family: "Noto Sans JP";
}
.btArea li a:link{
	background-color:#000;
	color:#fff;
	display:block;
	line-height:5;
	font-size:16px;
	position: relative;
	text-align:left;
	padding:0 10em 0 2em;
	text-decoration:none;
	
}
.btArea li a:link::before {
  position: absolute;
  top:50%;
  right:2em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  content: "";
  width: 20%;
  height: 1px;
  background: #fff;
  margin-right:-2px;
}
.btArea li a:link::after {
  position: absolute;
  top:50%;
  right:2em;
  margin-top:-10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  transform: rotate(45deg);
}
.btArea li a:visited{
	background-color:#000;
	color:#fff;
	text-decoration:none;
}
.btArea li a:hover{
	background-color:#333;
	color:#fff;
	text-decoration:none;
}
/*-----------------------------------------------
	menu
-----------------------------------------------*/
.aMenu{
	position: absolute;
	letter-spacing: 0.1em;
	font-weight: 500;
	font-family: "Noto Sans JP";
	bottom: -2em;
}
.aMenu li{
	margin-bottom:2em;
}
.aMenu li:last-child{
	margin-bottom:0;
}
.aMenu a:link{
	font-size:16px;
	padding-bottom:0.2em;
	border-bottom:2px solid #222;
	text-decoration:none;
}
.aMenu a:visited{
	color:#222;
	padding-bottom:0.2em;
	border-bottom:2px solid #222;
	text-decoration:none;
}
.aMenu a:hover{
	color:#666;
	padding-bottom:0.2em;
	border-bottom:2px solid #666;
	text-decoration:none;
}
/*-----------------------------------------------
	メイン
-----------------------------------------------*/
.main{
	background-image:url(../img/main_im.jpg);
	background-repeat:no-repeat;
	background-position:top center;
}
.main h2{
	position: relative;
	left: -26em;
	top: -4em;
	z-index: 3;
}
.main h3{
	width: 160px;
	margin-left: 20em;
	position: relative;
	top: -7em;
	z-index:3;
}
.main h3 img{
	width:100%;
	height:auto;
}
.main .area{
	position:relative;
	padding-bottom:5em;
}
.mainSp{
	display:none;
}
.main p.k1{
	width: 326px;
	position: absolute;
	top: 33em;
	left: -11em;
	z-index: 2;
}
.main p.k2{
	width:290px;
	position: absolute;
	bottom:0;
	left:30%;
}
.main p.k3{
	text-align:right;
}
.main p.k3 img{
	width:310px;
}
.main p.k1 img,.main p.k2 img{
	width:100%;
	height:auto;
}
/*-----------------------------------------------
	メインBT
-----------------------------------------------*/
.mainBt{
	padding-bottom:5em;
	margin-top:0em;
}
.mainBt .aMenu{
	display:none;
}
.mainBt .dataArea{
	text-align:center;
	margin-bottom:3em;
	padding-top:8em;
	
}
.mainBt .dataArea p{
	width:80%;
}
.mainBt .dataArea p img{
	width:100%;
	height:auto;
}
.mainBt .dataArea p{
	display:inline-block;
	background: linear-gradient(transparent 80%, #00b9ad 80%);
	padding:0;
}
.mainBt p.sc{
	font-family: 'Oswald', sans-serif;
	letter-spacing: 0.05em;
	font-weight:300;
	font-size:18px;
	text-align:center;
	padding-top:5em;
}
/*-----------------------------------------------
	テーマ
-----------------------------------------------*/
.postArea{
	padding-bottom:15em;
	padding-top:10em;
	position:relative;
	background-color:#00b9ad;
	
}
.postArea p.ss{
	padding-top:2em;
	line-height:1.6;
}
.postArea p.ss a:link{
	text-decoration:underline;
}
.postArea .mainTitleArea{
	color:#fff;
}
.postArea .mainTitle{
	color:#fff;
}
.postArea p.iphone{
	position:absolute;
	bottom:0em;
	z-index:3;
	left:48%;
	width:900px;
}
.postArea p.iphone img{
	width:100%;
	height:auto;
}
.postBoxArea{
	position:relative;
	z-index:4;
}
.postBoxArea p.mainTitle2{
	margin-bottom:1em;
}
.postBoxArea p.mainTitle2 img{
	width:100%;
	height:auto;
}
.postBoxArea li{
	width:100%;
	margin:0 0 3em;
}
.postBox{
	background-color:#fff;
	padding:5em;
	position:relative;
}
.postBox p.postIcon{
	position:absolute;
	top:0;
	left:3em;
	width:80px;
}
.postBox p.postIcon img{
	width:100%;
	height:auto;
}
.postBox p.postShow{
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size:15px;
	text-align:right;
}
.postBox p.postShow span{
	color:#fff;
	background-color:#00b9ad;
	line-height:2;
	display:inline-block;
	padding:0 2em;
}
.postTitleArea{
	width: 100%;
	margin-bottom: 2em;
	padding-top: 0px;
}
.postBox p.postTitle{
	letter-spacing: 0.1em;
	font-weight: 500;
	font-family: "Noto Sans JP";
	font-size: 22px;
	margin-bottom: 1em;
	line-height: 1.7;	
}

.postBox p.postTitle span{
	background: linear-gradient(transparent 70%, #00b9ad 70%);
	padding:0 0.2em;
}

.postBox p.postTitle br.bh{
	display:none;
}
.postBox p.postTx{
	color: #00b9ad;
	font-family: "Noto Sans JP";
	font-size: 16px;
	line-height: 1.6;
	
}
.postBox p.postTx br.bh{
	display:none;
}
.postSub{
	line-height: 1.8;
	font-size: 14px;
	padding-top: 2em;
}

.postSub span{
	background: linear-gradient(transparent 70%, #ff7f7f 70%);
}
.postSubBox{
	padding:3em 0 1em;
	position:relative;
}
.postSubTitleArea{
	position: relative;
	border-bottom: solid 2px #ff0014;
	padding:0 1em 0.5em 1em;
	display:inline-block;
	margin-bottom:3em;
}
.postSubTitleArea:before {
     content: '';
     position: absolute;
     display: block;
     z-index: 1;
     border-style: solid;
     border-color: #FFF transparent;
     border-width: 20px 20px 0 0;
     bottom: -15px;
     left: 40%;
     margin-left: -12px;
}
.postSubTitleArea:after{
     content: '';
     position: absolute;
     display: block;
     z-index: 0;
     border-style: solid;
     border-color: #ff0014 transparent;
     border-width: 20px 20px 0 0;
     bottom: -20px;
     left: 40%;
     margin-left: -14px;
}

.postSubBox p.postSubTitle{
	color:#ff0014;
	font-size:14px;
	font-weight:bold;
}
.postSubBox p.postSubTitle span{
	font-family: 'Oswald', sans-serif;
	letter-spacing: 0.05em;
	font-weight:400;
	font-size:18px;
	margin-left:0.3em;
}
.postSubBoxLeft{
	width: 54%;
	float: left;
	padding-top: 4em;
	padding-left: 2em;
}
.postSubBoxRight{
	width:44%;
	float:right;
}
.postSubBoxRight p.im img{
	width:100%;
	height:auto;
}
.postSubBoxRight p.tx{
	text-align:center;
	color:#666;
	line-height:1.8;
	font-size:12px;
}
.postBoxArea ul.check li{
	width: 100%;
	margin: 0;
	float: none;
	background-image: url(../img/check.png);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 2.5em;
	line-height: 1.6;
	margin-bottom: 1.5em;
	font-size: 13px;
}
.postBoxArea ul.check li:last-child{
	margin-bottom:0;
}
.postBoxArea ul.check li span{
	border-bottom:2px solid #00b9ad;
	padding:0.3em 0.2em;
}
.postBoxArea ul.check li.red span{
	border-bottom:2px solid #ff0014;
}
.tokubetsu{
	padding-top:3em;
}
.tokubetsu p.title{
	width:340px;
	margin-bottom:3em;
}
.tokubetsu p.title img{
	width:100%;
	height:auto;
}
.tokubetsu .txArea{
	padding-left:1.5em;
}
.tokubetsu p.mainTx{
	font-family: "Noto Sans JP";
	font-weight:500;
	font-size:20px;
	line-height:1.8;
}
.tokubetsu p.mainTx span.small{
	font-size:14px;
}
.tokubetsu p.mainTx span.small2{
	font-size:16px;
}
.tokubetsu p.mainTx span.line{
	background: linear-gradient(transparent 70%, #ff0000 70%);
}
.tokubetsu .appBtArea{
	padding-top:3em;
	
}
.tokubetsu .appBtArea p{
	font-family: "Noto Sans JP";
	font-weight:500;
	font-size:18px;
}
.tokubetsu .appBtArea ul.app li{
	margin:0 1em 0 0;
	width:auto;
	display:inline-block;
}
.tokubetsu .appBtArea ul.app{
	padding-top:2em;
}
.tokubetsu .appBtArea ul.app li img{
	height:60px;
}

ul.all li{
	width:48%;
	float:left;
	margin:0;
	background-color:#fff;
	padding:5em 3em 3em 3em;
	margin-right:4%;
}
ul.all li:last-child{
	margin-right:0;
}
ul.all li .preBox p.kazari{
	right:auto;
	top:-2em;
	left:-1em;
}
ul.all li .preBox p.im{
	padding-left:3em;
	padding-top:3em;
}

ul.all li {
}
.themeListArea{
	margin-top: -3em;
	margin-bottom: 1em;
}
ul.themeList{
	display:inline-block;
	vertical-align:top;
	margin-right:3em;
}
ul.themeList li{
	width:auto;
	margin-bottom:0.5em;
	list-style-position:inside;
	font-family: "Noto Sans JP";
	font-weight:400;
	font-size:16px;
}
ul.themeList li a:link{
	color:#222;
	text-decoration:underline;
}
ul.themeList li a:visited{
	color:#222;
	text-decoration:underline;
}
ul.themeList li a:hover{
	color:#222;
	text-decoration:none;
}
ul.all li .preBox p.cc{
	position:absolute;
	top:-0.5em;
	width:50%;
	right:0em;
	font-family: "Noto Sans JP";
	font-weight:500;
	font-size:14px;
	line-height:1.7;
	
}
ul.all li .preBox p.cc span{
background: linear-gradient(transparent 70%, #ff7f7f 70%);
}
/*-----------------------------------------------
	ルール
-----------------------------------------------*/
.ruleArea{
	background-color:#eee;
	padding-bottom:15em;
	padding-top:10em;
	position:relative;
}
.ruleArea .ruleBox:first-child{
	margin-bottom:5em;
}
.ruleArea .ruleBox:first-child .ruleBoxLeft{
	float:left;
	width:54%;
}
.ruleArea .ruleBox:first-child .ruleBoxRight{
	float:right;
	width:40%;
	padding-top:3em;
}
.ruleArea .ruleBox:last-child .ruleBoxLeft{
	float:right;
	width:54%;
}
.ruleArea .ruleBox:last-child .ruleBoxRight{
	float:left;
	width:40%;
}

.ruleBox li{
	list-style:disc;
	list-style-position:inside;
	text-indent:-1em;
	margin-left:1em;
	line-height:1.6;
	margin-bottom:1em;
}
.ruleBox li:last-child{
	margin-bottom:0;
}
.ruleBox p.im img{
	width:100%;
	height:auto;
}
/*-----------------------------------------------
	賞品
-----------------------------------------------*/
.preArea{
	background-color:#eee;
	padding-bottom:15em;
	padding-top:10em;
	position:relative;
}
.preBoxArea{
	padding-top:5em;
	position:relative;
}
.preBoxArea p.ph{
	position:absolute;
	z-index:3;
	bottom:-10em;
	width:600px;
	right:-8em;
}
.preBoxArea p.ph img{
	width:100%;
	height:auto;
}

.preBoxArea li{
	float:left;
	width:30%;
	margin-right:5%;
	margin-bottom:5em;
}
.preBoxArea li:last-child{
	margin-bottom:0;
}
.preBoxArea li:nth-of-type(3n){
	margin-right:0;
}
.preBox{
	position: relative;
	padding-top: 5em;
}
.preBox p.kazari{
	width: 45%;
	position: absolute;
	right: -2em;
	top: -6em;
	z-index: 1;
}
.preBox p.im img,.preBox p.kazari img{
	width:100%;
	height:auto;
}
.preBox p.preName{
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 18px;
	margin-bottom: 0.5em;
	text-align: center;
}
.preBox p.preName span{
	background: linear-gradient(transparent 70%, #ff7f7f 70%);
}
.preBox p.preTx{
	color: #999;
	text-align: center;
	line-height: 1.6;
	font-size: 14px;
	display:none;
}
.preTxArea{
	padding: 0;
}
/*-----------------------------------------------
	STEP
-----------------------------------------------*/
.stepBox{
	padding-bottom:15em;
	padding-top:10em;
	position:relative;
	 
}
.stepArea{
	 width:84%;
	 margin:0 auto;
}

.stepArea ul.step li{
	 width:100%;
	 border:1px solid #434343;
	 vertical-align:middle;
}
.stepArea ul.step li.ss{
	width:40px;
	 margin:0 auto;
	 border:none;
	 text-align:center;
	 padding:1em 0;
	 
}
.stepArea ul.step li.ss img{
	width:100%;
	height:auto;
}
.stepArea ul.step li p.name{
	background-color: #000;
	font-family: 'Oswald', sans-serif;
	letter-spacing: 0.05em;
	font-weight: normal;
	font-size: 20px;
	padding: 0em 0.5em;
	line-height: 2;
	color: #fff;	
}
.stepArea ul.step_attention{
	padding-left:1em;
}
.stepArea ul.step_attention li{
	line-height:2;
}
.step_tx{
	padding:2em;
}
.step_tx p.main_tx{
	font-size: 15px;
	line-height: 1.8;
}
.step_attentionArea{
	padding-top:3em;
}

.step_attentionArea ul{
	margin-bottom:2em;
}



/*-----------------------------------------------
	概要
-----------------------------------------------*/
.gaiyo{
	color:#fff;
	background-color:#00b9ad;
	position:relative;
	padding-bottom:15em;
	padding-top:10em;
}
.gaiyoArea{
	padding:0 5em;
}
.gaiyo .mainTitle{
	color:#fff;
}
.gaiyo dl{
	border-top:1px solid #fff;
	padding:3em 2em;
}
.gaiyo dl:last-child{
	border-bottom:1px solid #fff;
}
.gaiyo dl p{
	line-height:1.8;
}
.gaiyo dt{
	float:left;
	width:25%;
	vertical-align:top;
}
.gaiyo dt p{
	font-size:14px;
	font-weight:bold;
}
.gaiyo dd{
	float:left;
	width:75%;
}
.gaiyo dd p{
	font-size:14px;
	margin-bottom:1em;
}
.gaiyo dd p.sst{
	font-weight:bold;
	font-size:15px;
}
.gaiyo dd p.tx2{
	margin-bottom:1em;
}
.gaiyo dd ul{
	margin-bottom:2em;
}

.gaiyo dd li{
	font-size: 14px;
	list-style-type: disc;
	margin-left: 1.5em;
	margin-bottom:1em;
	line-height:1.8;
}
.gaiyo dd li:last-child{
	margin-bottom:0;
}
/*-----------------------------------------------
	規約
-----------------------------------------------*/
.atten{
	position:relative;
	padding-top:10em;
}
.attentionArea{
	padding:0 5em;
}
#attention{
	
	margin:0 0 5em 0;
	border: 1px solid #999;
	padding:2em 1em;
	
}
.attention{
	overflow: auto;
	padding: 1em;
	font-size: 12px;
	height: 500px;
}
.attention p.title{
	margin-bottom:2em;
	font-size:13px;
}
.attention p.title2{
	margin-bottom:1em;
	font-size:14px;
}
.attention p.title3{
	margin-bottom:1em;
}
.attention p.title4{
	margin-bottom:1em;
	font-weight:bold;
}
.attention p{
	line-height:1.8;
}
.attention ul{
	margin-bottom:2em;
}
.attention a:link{
	text-decoration:underline;
	word-break: break-all;
	color:#333;
}
.attention a:visited{
	text-decoration:underline;
	word-break: break-all;
	color:#333;
}
.attention a:hover{
	text-decoration:none;
	color:#333;
}

.attention li{
	list-style-type:disc;
	margin-left: 1.5em;
	line-height:1.8;
	margin-bottom:0.5em;
}
.attentionBox{
	margin-bottom:3em;
	padding:1em 0 1em 1em;
}
.attentionBox2{
	margin-bottom:2em;
	padding:0 0 0 1em;
}
.attention li ul{
	padding:0 0 0 1em;
}
.attention li ul li{
	list-style:none;
	margin-bottom:0.5em;
}


.fadeIn_up {
  opacity: 0;
  transform: translate(0, 5%);
  transition: 1s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}


.postBana{
	text-align:center;
	padding-top:3em;
}
.postBana li{
	display:inline-block;
	width:45%;
	margin:0 1% 1em;
}
.postBana img{
	width:100%;
	height:auto;
	border:1px solid #999;
}


.att{
	padding-top:10em;
}
.att p{
	font-family: "Noto Sans JP";
	font-weight:500;
	font-size:18px;
	line-height:2.4;
	text-align: justify;
	text-justify: inter-ideograph;
}
.attArea{
	width:70%;
	margin:0 auto;
}

.bana{
	padding-top:10em;
}
.banaArea{
	width:50%;
	margin:0 auto;
}
.banaArea img{
	width:100%;
	height:auto;
}