@media (max-width: 979px) {
#contents_wrapper{
 position:relative;
}
#contents_container{
 width:100%;
 overflow:hidden;
}
#menu_close{
position: fixed;
top: 0;
right: 0;
z-index: 200;
display:none;
}
#menu_close a{
 display:block;
 background:url("../../images/s/common/batu_close.png") no-repeat center center;
 background-size:40px auto;
 color:#ffffff;
 text-decoration:none;
 width:40px;
 height:0;
 padding-top:40px;
 overflow:hidden;
}
#contents_main_menu{
position: fixed;
width: 0;
display: block;
z-index: 150;
top: 0;
overflow-y: auto;
right: 0;
height:100%;
background:#ffffc7;
border-bottom:10px solid #d92f66;
box-sizing: border-box;
}
#page_cover{
position: fixed;
display: none;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 100;
background-color:rgba(33,33,33,0.7);
}

/* PCメニューは非表示 */
.gnavi ul#gnavi_list,.pc_only{
 display:none;
}

/* ポップンヘッダー */
.top_menu{
 background:url("../../images/p/top/br_top_bg.png") repeat-x;
 background-size:auto 62px;
 width:100%;
 height:62px;
 margin:0 auto;
 position:relative;
 z-index:2;
}
#top_title{
 float:left;
 position: absolute;
 top:5px;
 z-index:2;
}
#top_title a{
 background:url("../../images/p/top/logo.png") no-repeat;
 background-size:auto 55px;
 width:97px;
 height:0;
 padding-top:55px;
 overflow:hidden;
 display:block;
}
.menu_bg{
 float:right;
 margin-top:14px;
 margin-right:10px;
}
#btn_shop_sp, #btn_twitter_sp, .menu_text{
 float:left;
 margin:0 5px;
}

.menu_text{
 background:url("../../images/s/common/menu_icon.png") no-repeat bottom center #d92f66;
 background-size:32px;
 height:0;
 padding:42px 5px 0px;
 overflow:hidden;
}
.fixed_menu {
 position: fixed;
 top: 0px;
 right:0px;
 background-color:#d92f66;
 padding: 42px 5px 0;
 background-position: center center;
 margin:0;
}
.fixed_menu #btn_shop_sp, .fixed_menu #btn_twitter_sp{
 display:none;
}
#top_menu_bg .top_menu .fixed {
    height: 90%;
    position: fixed;
    top: 42px;
}


#contents_main_menu ul#gnavi_list{
 width:100%;
 z-index:10;
 top:0;
 /*position: relative;*/
 display: block;
 overflow-y: auto;
 background:url("../../images/s/common/kazari_sakana.png") bottom right no-repeat;
 padding-bottom:100px;
}
#contents_main_menu ul li{
 /*position:relative;*/
 overflow-y:auto;
}
#contents_main_menu ul li a{
 background-image: url(../../images/s/common/arrow_open.png);
 background-size:16px auto;
 background-position:right center;
 background-repeat:no-repeat;
 display:block;
 color:#000000;
 text-decoration:none;
 font-size:16px;
 font-weight:bold;
 padding:10px 10px;
}
#contents_main_menu ul#gnavi_list>li:nth-of-type(even) a{
 background-color:#a1dfee;
}
#contents_main_menu ul#gnavi_list>li:nth-of-type(odd) a{
 background-color:#44c0dd;
}
#contents_main_menu ul li a.textindent{
 text-indent:0;
}
#contents_main_menu ul li a.sp_link{
 background-image:url("../../images/s/common/arrow_close.png");
 background-size:11px auto;
 background-repeat:no-repeat;
 background-position:right center;
}
#contents_main_menu ul ul.inner_menu li a{
 padding-left:15px;
 background-color:#bce7ef;
 background-image:url("../../images/s/common/arrow_close.png");
 background-size:11px auto;
 background-repeat:no-repeat;
 background-position:right center;
 /*position:relative;*/
}
#contents_main_menu ul ul.inner_menu li.sp_nolink_2nd a{
 background-image: url(../../images/s/common/arrow_open.png);
 background-size:16px auto;
 background-position:right center;
 background-repeat:no-repeat;
}
#contents_main_menu ul li a.open{
 background-image: url(../../images/s/common/arrow_open2.png) !important;
 background-size:16px auto;
}
/* 押せない項目は黒 */
#contents_main_menu ul ul.inner_menu li.sp_nolink_2nd a{
 background-color:#bce7ef;
}
/* 2階層目は全部押せるのでグレー */
#contents_main_menu ul .inner_menu ul.inner_2nd_menu li a{
 padding-left:30px;
 background-color:#feffb7;
 border-top:solid 1px #ffffff;
}
#contents_main_menu ul ul.inner_menu{
 display:none;
}
#contents_main_menu ul .inner_menu ul{
 display:none;
}

#contents_main_menu li#gnavi_btn1 .center a.nolink,
#contents_main_menu li#gnavi_btn2 .center a.nolink,
#contents_main_menu li#gnavi_btn3 .center a.nolink,
#contents_main_menu li#gnavi_btn4 .center a.nolink,
#contents_main_menu li#gnavi_btn5 .center a.nolink,
#contents_main_menu li#gnavi_btn6 .center a.nolink,
#contents_main_menu li#gnavi_btn7 .center a.nolink,
#contents_main_menu li#gnavi_btn8 .center a.nolink{
 color:#444444 !important;
 background-image:none;
}
/* PCメニューは非表示 */
.gnavi ul#gnavi_list{
 display:none;
}
.gnavi #menu_close{
 display:none;
}

#main_contents{
 background:url("../../images/p/common/bg_top.jpg") top center repeat;
 background-size:auto auto;
 padding-top:20px;
 padding-bottom:20px;
}

/* 左サブメニュー */
.left_contents{
 display:none;
}
/*　右メインコンテンツ */
.right_contents{
  padding: 0;
}
.Rcont_box {
/* background-image:url("../../images/p/top/frame2.png"),url("../../images/p/top/frame1.png");
 background-position:top center, bottom center;
 background-repeat:repeat-x, repeat-x;
 padding:26px 0 29px;
 margin-top:-14px;
 margin-bottom:30px;*/
 background: linear-gradient(180deg,#fff 0px,#fff 10px,#44c0dd calc(100% - 18px),#44c0dd calc(100% - 6px),#d9068c calc(100% - 6px),#d9068c 100%);
 padding: 6px 0 18px;
 margin-bottom: 30px;
 position: relative;
}
.Rcont_info{
 background: url(../../images/p/common/repeat_top_01.png) repeat-x left top, url(../../images/p/common/repeat_under_01.png) repeat-x left bottom;
 background-color:#ffffc7;
}
.Rcont_inner{
 padding-bottom:30px;
}
.inner_contents{
 padding:40px 10px;
/* padding:0px 10px;*/
}
.right_title{
 width:100%;
 height:0;
 padding-top:45px;
 overflow:hidden;
 background-repeat:no-repeat;
 background-position:top left;
 background-size:auto 100%;
 margin-top: -12px;
 float: left;
}
/* ボタン */
.poputomo_btn {
    background-color: #d8f1f6;
    border: 2px solid #44c0dd;
    border-radius:5px;
    font-size: 14px;
    font-weight: bold;
    margin: 3px 3px 10px 3px;
    padding: 3px 30px;
    display: inline-block;
    cursor: pointer;
}
.poputomo_btn:hover{
    background-color: #89d0e3;
    border: 2px solid #2b8195;
    color:#fff;
}
a.poputomo_btn{
  color:#044960;
  text-decoration:none;
}
.poputomo_rebtn {
  font-size: 14px; font-weight:bold;
  background-color:#CCCCCC;
  border: 2px solid #666666;
  border-radius:5px;
  padding:3px 12px;
  margin:3px;
  cursor:pointer;
}
.poputomo_rebtn:hover{
  background:#a5a5a5;
  border:2px solid #444;
  color:#fff;
}
/*====================================================*/
/* キャラデコ表示 */
/*====================================================*/
.chardeco_box {
position: relative;
height: 325px;
width: 320px;
margin:0 auto;
}
.popple_come {
width: 234px;
padding-top: 40px;
padding-right: 24px;
padding-left: 24px;
text-align: center;
position:absolute;
z-index:2;
}
.fpass_img {
width: 320px;
height: 320px;
position:absolute;
background-size:contain !important;
margin:0px auto 0px auto;
}

/*====================================================*/
/* site main */
/*====================================================*/
h4 {border-bottom: 2px solid #44c0dd; margin-top:0px; margin-bottom:4px; font-size:14px; padding:20px 3px 3px 3px;color:#A20000;}

.Rcont_inner img{
max-width:100%;
}
} 
@media (max-width: 360px) {
.chardeco_box {
position: relative;
height: 285px;
width: 280px;
margin:0 auto;
}
.fpass_img {
width: 280px;
height: 280px;
position:absolute;
background-size:contain !important;
margin:0px auto 0px auto;
}
}


/* EOF */