@charset "utf-8";

body {
	/*opacity: 0;*/
	line-height: 1.4;
}
article {
	margin: 0 auto;
	overflow: hidden;
}
h2 {
  margin: 0 10px 35px;
  font-size: 25px;
  font-weight: bold;
}
.weight{
	font-weight: bold;
}
.bg_orange_line {
  background: linear-gradient(transparent 70%, #ffb97b 0%);
}
.bg_yellow_line {
  background: linear-gradient(transparent 70%, #fff575 0%);
}
.bg_pink_line {
  background: linear-gradient(transparent 70%, #f98380 0%);
}
.small {
  font-size: 12px;
  color: #333333;
}
.red {
  color: #f33;
}

/*-----終了文言-----*/
.cp_end_txt {
	width: 960px;
    margin: 10px auto 0;
    text-align: center;
    font-size: 15px;
    font-weight: bold;
    color: #f33;
}
.cp_end_txt p {
	margin: 0 10px;
}

/*-----注釈-----*/
.caution {
	max-width: 800px;
	margin: 25px auto 30px;
	text-align: left;
	font-size: 14px;
	color: #666666;
}
.caution li {
	margin: 0 10px;
	padding-left: 1em;
	text-indent: 	-1em;
}
.caution_center {
	max-width: 615px;
	margin: 10px auto 0px;
	text-align: center;
	font-size: 12px;
	color: #666666;
}
.caution_center p {
	margin: 0 10px;
	padding-left: 1em;
}

/*-----テキストリンク設定-----*/
body a {
  color:#3583f0;
  text-decoration:underline;
}
body a:hover {
  color: #3542f0;
}

/*-----メインビジュアル-----*/
#main_area {
    position: relative;
    background: repeating-linear-gradient(-45deg,#ffd59f 0,#ffd59f 8px,#ffe1b9 8px,#ffe1b9 16px);
    background: -o-repeating-linear-gradient(-45deg,#ffd59f 0,#ffd59f 8px,#ffe1b9 8px,#ffe1b9 16px);
    background: -webkit-repeating-linear-gradient(-45deg,#ffd59f 0,#ffd59f 8px,#ffe1b9 8px,#ffe1b9 16px);
	text-align: center;
	overflow: hidden;
	/*margin-top: 5px;*/
}
#main_area{
	padding-bottom: 0px;
}
.mv {
  margin: 0px auto 0px;
}

/*-----ポイントプレゼント-----*/
.point_area_wrap {
    position: absolute;
    bottom: 22px;
    right: 0;
    left: 42px;
    margin: 0 auto 0;
}
.point_area_inner {
  width: 782px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.point_back_wrap {
    /*bottom: 9.2em;*/
    margin: 0 0 0 0;
    padding: 10px 0;
/*    border-top: 4px solid #ffca84;
    border-bottom: 4px solid #ffca84;*/
    background: #ffd399;
/*    background: linear-gradient(#3686ff, #00c0fa);*/
}
.point_back_wrap img {
	margin: 0 auto;
    /*position: relative;*/
    bottom: 1.5em;
    display: block;
}
.point_back_wrap_inner img.sp {
    display: none;        
}
.point_area_inner p:nth-child(2) {
    margin: 50px 0 0 0;
}
.point_area_inner p a:hover {
    opacity: 0.9;
    transition: .3s;
}
.period_area_wrap {
    position: absolute;
	bottom: 20px;
    right: 0;
    left: 0;
	margin: 0 auto 0;
}
.period{
/*    border-top: solid 2px #eb5c02;
    border-bottom: solid 2px #eb5c02;*/
	background-color: #eb5c02;
	padding: 12px 0;
}
.period img{
	display: block;
	margin: 0 auto;
}

/*-----応募のステップ-----*/
#step_wrapper {
  padding: 50px 0;
	background: url("../images/bg01.png") repeat center top;
}
.step_inner {
  margin: 0 auto;
  text-align: center;
}
.flex{
	display: flex;
    margin: 0 auto;
    width: 800px;
}
.step01_wrap {
  margin: 0 0 35px;
}
.step_txt_img_01{
  margin: 0 0 10px 0;
}
.step_txt_img_01 img {
	width: 90%;
	height: auto;
	max-width: 218px;
}
.step_01_txt {/*step01内テキスト部分*/
  margin: 10px auto 0;
    font-size: 12px;
    width: 310px;
}

.step02_wrap {
  margin: 0 0 40px;
}
.step_txt_img_02{
  margin: 0 0 9px 0;
}
.step_txt_img_02 img {
	width: 90%;
	height: auto;
	max-width: 342px;
}

.step_no {/*step01 step02 ふきだし部分*/
  margin: 0 0 30px;
}
.step_no img {
  width: 200px;
}
.allow_wrap {/*やじるし*/
  margin: 140px auto 0;
}
.step_btn_wrap a img {
  transition: .3s;/*ゆっくり透明に*/
}
.step_btn_wrap a img:hover {
  opacity: 0.7;/*ホバー時に透明度70%*/
}

/*-----応募のステップ赤文字_〆切エリア-----*/
.step_red_wrapper {
  margin: 0 0 40px;
}
.step_red_wrap {
  text-align: center;
}
.step_red_wrap p {
  font-size: 20px;
  font-weight: bold;
  color: #f33;
}

/*-----応募のステップテキストエリア-----*/
.step_txt_wrapper {
  margin: 0 10px;
}
.step_txt_wrap {
      margin: 0 auto;
    width: 800px;
    text-align: left;
    background-color: #fff;
    font-size: 14px;
}
.step_txt_wrap ul {
 padding: 20px 0;
    width: 640px;
    margin: 0 auto;
}
.step_txt_wrap ul li {
  padding-left: 1em;
	text-indent: 	-1em;
}

/*-----リクルートカード(JCB)詳細----*/
#rcard_spec_wrapper {
  padding: 50px 0;
  background: #fcf3e6;
}
.rcard_spec_inner {
  margin: 0 auto;
  text-align: center;
}
.spec_images_wrap {
  margin: 0 auto;
  padding: 0 10px;
  max-width: 554px;
  text-align: center;
}
.spec_images_wrap p img{
  width: 100%;
}

/*-----たまったポイントはポンタポイントに！----*/
#ponta_p_wrapper {
  padding: 50px 0;
  background: #fff;
}
.ponta_p_inner {
  margin: 0 auto;
  text-align: center;
}
.ponta_p_wrap p {
  margin: 0 auto;
  padding: 0 10px;
  max-width: 760px;
  text-align: center;
}
.ponta_p_wrap .caution{
	width: 760px;
}

/*-----詳細-----*/
#about {
  margin: 0 0 20px 0;
	padding: 50px 0 50px 0;
  background: #f3f8f9;
}
.about_inner {
	margin: 0 auto;
	text-align: center;
}
.about_txt {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 15px;
	text-align: left;
	font-size: 15px;
	color: #111111;
}
.about_txt dt {
	font-weight: bold;
}
.about_txt dd {
	padding: 10px 0 25px 0;
}
.about_txt ul li {
	padding-left: 1em;
	text-indent: 	-1em;
}
.about_txt ul .non_em {
  padding-left: 0;
	text-indent: 	0;
}
.small {
  font-size: 12px;
  color: #666666;
}

/*-----エントリーに戻るボタン-----*/
.return_btn_wrap {
  margin-top: -40px;
  text-align: center;
}
.return_btn_wrap p img {
  width: 210px;
}

/*-----画像のフェードイン-----*/
.fadein {
    opacity : 0;
    transform : translate(0, 50px);
    transition : all 350ms;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

/*-----SP用画像非表示-----*/
.sp,
.mv_sp,
.btn_area_sp,
.ex_point_use_sp,
.ex_point_img_sp,
.step_img_sp,
.otokuimg_sp,
.about_inner_sp {
	display: none;
}

/*-----余白など-----*/
.mt5 {
  margin-top: 5px;
}
.mt10 {
  margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mb10 {
  margin-bottom: 10px;
}
.mb20 {
  margin-bottom: 20px;
}
.pb20 {
	padding-bottom: 20px;
}
.pb25 {
	padding-bottom: 25px;
}
.tal {
  text-align: left;
}
.tac {
  text-align: center;
}
.tar {
  text-align: right;
}
.indent {/*１文字分インデント*/
  padding-left: 1em;
	text-indent: 	-1em;
}
.indent2 {/*3文字分インデント*/
  padding-left: 3em;
	text-indent: 	-2.5em;
}
.nobreak{/*囲ったフレーズを改行させない ※-1emしている文章にはつけない*/
  display:inline-block;
}