html { 
overflow-y:scroll;
}

.clear{
clear: both;
}

.pc{ display:block; }
.sp{ display:none; }
@media only screen and (max-width: 767px) {
.pc{ display:none; }
.sp{ display:block; }	
}

a:link,
a:visited{
color: #005fc3;
text-decoration: none;
}

a:hover{
color: #6296ca;
text-decoration: none;
font-weight: normal;
}

body{
text-align:left;
font-family:"ＭＳ Ｐゴシック","MS PGothic",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,Sans-Serif;
color: #333;

	padding: 0 20px
}
@media only screen and (min-width: 768px) {
body{
	min-width: 980px;
}
}
@media only screen and (max-width: 767px) {
body{
width:100%;
background:none;
	padding: 0
}
}


/*ヘッダー*/
@media only screen and (min-width: 768px) {
#head {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;
width: 100%;
max-width: 1200px;
margin: 30px auto;
padding:0px;
box-sizing: border-box;
}
}
@media only screen and (max-width: 767px) {
#head {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;
align-items: flex-end;
width: 100%;
padding: 10px;
box-sizing: border-box;
}
#head .logo img{
width: 170px;
}
#head .back img{
width: 130px;
}
}
@media only screen and (max-width: 540px) {
#head .logo img{
width: 150px;
}
#head .back img{
width: 115px;
}
}


/*カード会員限定*/
#komeri_aqua{
background-color:#FFFFFF;
color:#000;
font-size:1.8em;
font-weight:bold;
padding:10px 0;
margin:0;
padding-left:2.0em;
text-align:left;
position:relative;
}
@media only screen and (max-width: 767px) {
#komeri_aqua{
font-size:3.8vw;
text-align:left;
padding-left:1.0em;
padding-bottom:5px;
}
}
#komeri_aqua span{
text-align:center;
background: #000;
color: #fff;
padding: 2px 0;
display: block;
width: 5.0em;
position: absolute;
top: 7px;
right: 2%;
}
@media only screen and (max-width: 767px) {
#komeri_aqua span{
font-size:0.8em;
}
}


/*コンテンツ*/
#contents{
max-width: 1200px;
margin: 0 auto;
padding-bottom: 10px;

clear: both;
}

#contents img{
width: 100%;
margin: 0 auto;
max-width: 1200px;
text-align:center;
}

#contents a:hover img{
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
background: #fff;
}

div.image{
text-align:center;
}

#contents .mainImage{
margin: 0;	
}
#wrapper{
width: 100%;
max-width: 1200px;
margin:0 auto 16px;
overflow:hidden;
padding: 0;
box-sizing: border-box;
}

.flame{
border: 6px solid #d80c18;
border-radius:30px;
box-sizing: border-box;
background-color:#fff;
margin: 20px auto;
overflow:hidden;
width:100%;
box-sizing:border-box;
/*	box-shadow: 6px 3px 14px -6px rgba(0,0,0,0.6);*/
}

.flameHead{
background-color:#750000; 
border-top-left-radius:12px;
-webkit-border-top-left-radius:12px;
-moz-border-top-left-radius:12px;
border-top-right-radius:12px;
-webkit-border-top-right-radius:12px;
-moz-border-top-right-radius:12px;
box-sizing: border-box;
color:#fff;
font-size:1.5em;
font-weight:bold;
text-align:center;
padding: 10px 8px;
}

.flameContent{
border:solid 4px #fff;	 
border-bottom-left-radius:12px;
-webkit-border-bottom-left-radius:12px;
-moz-border-bottom-left-radius:12px;
border-bottom-right-radius:12px;
-webkit-border-bottom-right-radius:12px;
-moz-border-bottom-right-radius:12px;
box-sizing: border-box;
background-color:#fff;
width:100%;
margin:0 auto 20px;
overflow:hidden;
}

.flameContent p {
text-align: center;
font-weight: bold;
font-size: 1.4em;
margin-top: 10px; 
}

ul.note{
font-size:1.0em;
padding-bottom:5px;
text-align:left;
text-align:justify;
margin-top:10px;
}
ul.note li{
padding-left:1.0em;
text-indent:-1.0em;	
}

ul.btnBox {
display: flex;
flex-wrap: wrap;
-webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;

overflow: hidden;
margin-top: 15px; 
}

ul.btnBox li {
width: calc(33.33% - 7px);
margin-bottom: 10px;
text-align: center;
}



#contents .text_summary {
font-size: 35px;
line-height: 1.6;
padding: 10px 0;
}
#contents .text_summary span {
font-size: 14px;
padding-left: 1.0em;
text-indent: -1.0em; 
}

#contents .text_summary02 {
font-size: 1.5em;
padding: 5px 0 10px;
text-align: justify;
font-weight: 400;
margin-left: 20px;
}

#contents .noticeTxt {
font-size: 1.2em;
text-align: justify;
font-weight: 400;
margin-left: 20px;
}

ul.cam_botton_box1 {
display: flex;
flex-wrap: wrap;
margin-top: 10px;
margin-bottom: 10px;
-webkit-justify-content: space-around;
-ms-justify-content: space-around;
justify-content: space-around; 
}
ul.cam_botton_box1 li {
width: calc(40% - 7px);
margin-right: calc(21px / 2);
margin-bottom: 10px;
text-align: center;
}


ul.cam_botton_box1 li a {
border-radius: 40px;
font-weight: bold;
background: #EA6D0D;
width: auto;
height: auto;
margin: 0;
color: #FFF;
display: flex;
cursor: pointer;
text-decoration: none;
box-sizing: border-box;
align-items: center;
justify-content: center;
text-align: center;
font-size: 1.0em;
padding: 0.75em 2.85em;
}

@media only screen and (max-width: 767px) {
#contents{
width: 100%;
margin: 0 auto;
max-width: 1200px;
}	
#contents img{
width: 100%;
margin: 0 auto;
max-width: 1200px;
height:auto;
}	 

#wrapper{
width:100%;
margin:0 auto;
padding: 0;
}	
.flame{
width:94%;
	margin: 10px 3%;
	border-radius: 10px
} 
.flameHead{
font-size:1.1em;
padding: 10px; 
}
.flameContent p {
font-size: 1em;
} 
ul.note{
font-size:0.9em;
} 

ul.btnBox li { 
width: 100%;
margin-right: 0px;
margin-bottom: 10px; 
}

#contents .text_summary {
font-size: 1.25em;
padding: 5px 0;
margin-top: 5px;
}
 
#contents .text_summary02 {
font-size: 1.0em;
margin: 10px 8px;
} 
#contents .noticeTxt {
font-size: 0.95em;
margin: 10px 8px;
} 
 
ul.cam_botton_box1 li {
width: 100%;
margin: 10px;  
}  
}




/*アプリ誘導*/
ul.appBox{
border-bottom:none;
overflow:hidden;
clear:both;
}

ul.appBox li{
display:block;
float:left;
width:48%;
margin:10px 1% 5px;
}
ul.appBox li span.heading{
display:block;
width:100%;
color:#fff;
text-align:center;
background-color:#E50012;	 
border-radius:4px;
-webkit-border-radius:4px;
-moz-border-radius:4px;
padding:5px 2%;
font-size:1.2em;
font-weight:bold;
margin-bottom:5px;
box-sizing: border-box;
}

ul.appBox li span.heading br{
display:none;
}
ul.appBox li span.bnrImage{
display:block;
float:left;
width:100%;
margin-top:5px;
}

@media only screen and (max-width: 640px) {
ul.appBox li span.heading{
font-size:0.75em;
line-height:1.0;
margin-bottom:0;
}
ul.appBox li span.heading br{
display:block;
} 
}


@media only screen and (max-width: 767px) {
ul.appBox li span.bnrImage{
width:100%;
}
}
ul.appBox li span.image img{
width:100%;
height:auto;	
}




a.topPage{
display:block;
margin:40px auto 60px;
width:18.0em;
text-align:center;
font-size: 18px;
font-weight: bold;
background-color: #969494;
padding: 10px 0;
border-radius: 30px;
color: #fff;
text-decoration: none;
}

a.topPage:link,
a.topPage:visited,
a.topPage:hover,
a.topPage:active{
color: #fff;
}
a.topPage:hover{
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
}
@media only screen and (max-width: 540px) {
a.topPage{
width:90%;
margin:20px 5% 40px;
}	
}

/*コピーライト
--------------------------------------*/
@media only screen and (min-width: 768px) {
#copyright {
width: 100%;
margin: 0 auto;
max-width: 1200px;
text-align: center;
padding-top: 15px;
padding-bottom: 15px;
padding-right: 0px;
padding-left: 0px;
clear: both;;
}
} 
@media (max-width: 767px) and (min-width: 320px){
#copyright {
width: 100%;
margin: 0 auto; 
text-align: center;
padding-top: 15px;
padding-bottom: 15px;
padding-right: 0px;
padding-left: 0px;
font-size: 0.8em;
clear: both;
}
}

/*ページトップ
--------------------------------------*/
#pageTop img {
width: 100%;
height: auto;
}
@media (min-width: 768px) {
#pageTop {
display: block;
position: fixed;
bottom: 0;
right: 0;
z-index: 9999;
width: 80px;
height: 80px;
z-index: 9999;
} 
}
@media (max-width: 767px) and (min-width: 320px) {
#pageTop {
display: block;
position: fixed;
bottom: 25px;
right: 10px;
width: 42px;
height: 42px;
}
}
.spacer-m{
    position: relative;
}
.spacer{
    position: absolute;
}

#contents img.spacer.apple{
    top: 72.3%;
    left: 5.5%;
    width: 43%;
    height: 18%;
}

#contents img.spacer.google{
    top: 72.3%;
    left: 50.9%;
    width: 43%;
    height: 18%;
}


/*マージン等
--------------------------------------*/
.mt10{
margin-top:10px;
}
.mt20{
margin-top:20px;
}
.mt30{
margin-top:30px;
}
.mt40{
margin-top:40px;
}
.mt50{
margin-top:50px;
}

.mb10{
margin-bottom:10px;
}
.mb20{
margin-bottom:20px;
}
.mb30{
margin-bottom:30px;
}
.mb40{
margin-bottom:40px;
}
.mb50{
margin-bottom:50px;
}

.mb1em{
margin-bottom:1em;
}



/*文字グラデ
-----------------*/
.nyanmoji {
	text-align:left;
	font-weight:700;
	color: transparent;
	background: linear-gradient( 90deg, #c9041d 0% 30%, #ee3d1f 40% 60%, #c9041d 70% 100% );
	-webkit-background-clip: text;
	 /* display     : inline-block; */      /* 奥行表示のためのブロック化 */
  font-size   : 17pt;               /* 文字サイズ */
  transform   : skewX(-15deg);       /* 傾き角度 */
}

.nyanmoji2 {
	text-align:left;
	line-height:0.95em;
	font-weight: 900;
  /*display     : inline-block;*/       /* 奥行表示のためのブロック化 */
  font-size   : 25pt;               /* 文字サイズ */
  /*transform   : skewX(-15deg);  */     /* 傾き角度 */
}


.hr1 {
  border-top: 1px dashed #000; /* 破線 */
}


.nyancon{
  display:flex; 
justify-content: center;
}

/* アイコン*/

.wrapnyan {
  display: flex;
  flex-wrap: wrap;
margin-bottom: 30px;
}

.itemnyan {
  padding: 5px;
  width: 20%;
  background-color: #fff;
}

.itemnyan:not(:nth-child(4n+4)) {
  margin-right: 2%;
}

.itemnyan:nth-child(n+5) {
  margin-top: 30px;
}






/*スーパーニャン、賞品組み
--------------------------------------*/

.column-wrap{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  /* 以降はレイアウトとは無関係です */
	margin-bottom: 40px;
}


img .column-wrap2 {
height: 100%;
width: 60px!important;
}

.column3-wrap{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  /* 以降はレイアウトとは無関係です */
margin-bottom: 20px;
	margin-top: 20px;
}





@media not all and (min-width: 768px) {
.itemnyan {
  padding: 5px;
  width: 40%;
  background-color: #fff;
}

  .itemnyan:not(:nth-child(4n+4)) {
    margin-right: 0;
  }


}



@media only screen and (min-width: 768px) {

.column-inner{
  flex-basis:calc((100% - 30px) / 4);
  max-width:calc((100% - 30px) / 4);
  margin-top:10px;
  /* 以降はレイアウトとは無関係です */
  text-align:center;
}
/* 1段目だけ上下マージンを無くす */
.column-inner:nth-of-type(1),
.column-inner:nth-of-type(2),
.column-inner:nth-of-type(3),
.column-inner:nth-of-type(4){
}
/* 最終行のアイテム数が2OR3つの時、左右に振り分けられるのを防ぐ */
.column-inner:nth-of-type(4n-1):nth-last-of-type(1),
.column-inner:nth-of-type(4n-2):nth-last-of-type(1){
  margin-right:auto;
  margin-left:20px;
}
.column-inner:nth-of-type(4n-2):nth-last-of-type(2){
  margin-right:0;
  margin-left:20px;
}


.column3-inner{
  flex-basis:calc((100% - 40px) / 3);
  max-width:calc((100% - 40px) / 3);
  margin-top:0px;
  /* 以降はレイアウトとは無関係です */
}
/* 1段目だけ上下マージンを無くす */
.column3-inner:nth-of-type(1),
.column3-inner:nth-of-type(2),
.column3-inner:nth-of-type(3){
  margin-top:0;
}
/* 最終行のアイテム数が2つの時、左右に振り分けられるのを防ぐ */
.column3-inner:nth-of-type(3n-1):nth-last-of-type(1){
  margin-right:auto;
  margin-left:20px;
}

}




@media only screen and (max-width: 767px) {

.column-inner{
  flex-basis:calc((100% - 20px) / 2);
  max-width:calc((100% - 10px) / 2);
  margin-top:10px;
  /* 以降はレイアウトとは無関係です */
}
.column-inner:nth-of-type(1),
.column-inner:nth-of-type(2){
}

.column-wrap{
padding: 10px;
}

.column3-inner{
  flex-basis:calc((100% - 20px) / 2);
  max-width:calc((100% - 10px) / 2);
  margin-top:10px;
  /* 以降はレイアウトとは無関係です */
  text-align:center;
}
.column3-inner:nth-of-type(1),
.column3-inner:nth-of-type(2){
}

.column3-wrap{
padding: 10px;
}
	
.nyanmoji {
 font-size   : 13pt;               /* 文字サイズ */
  
}

.nyanmoji2 {
 font-size   : 20pt;               /* 文字サイズ */
}	


}




