@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;
cursor:pointer;
}
#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:#e9eadd;
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{
 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/common/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_x_sp, .menu_text{
 float:left;
 margin:0 5px;
 cursor:pointer;
}

.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_x_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;
 display: block;
 overflow-y: auto;
 background:url("../../images/p/common/logo.png") bottom right no-repeat;
 padding-bottom:100px;
}
#contents_main_menu ul li{
 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:#fe3c70;
}
#contents_main_menu ul#gnavi_list>li:nth-of-type(odd) a{
 background-color:#ffc6cf;
}
#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:#fae68d;
 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 + ul.inner_2nd_menu > li > a{
 background-image:url("../../images/s/common/arrow_close2.png");
} 
#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:#ffd548;
}
/* 2階層目は全部押せるのでグレー */
#contents_main_menu ul .inner_menu ul.inner_2nd_menu li a{
 padding-left:30px;
 background-color:#feffb7;
 border-top:solid 1px #ffd548;
}
#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;
}
ul#gnavi_list>li.new{
position:relative;
}
ul#gnavi_list>li.new::before{
display:block;content:"NEW";background:#f00;color:#fff;
font-weight:bold;font-size:10px;line-height:1;vertical-align:top;text-align:center;
margin:0px;padding:2px;width:26px;position:absolute;top:50%;right:20px;
transform:translate(0%, -50%);-webkit-transform:translate(0%, -50%);-ms-transform:translate(0%, -50%);
animation:newAnime 1.6s infinite alternate;
}
@keyframes newAnime {
0%{color:#ff0000;background:#ffffff;}
100%{color:#ffffff;background:#ff0000;}
}

#main_contents{
 padding-bottom:20px;
}
/* 左サブメニュー */
.left_contents{
 display:none;
}
/*　右メインコンテンツ */
.right_contents{
  padding: 0;
}
.Rcont_box {
 background:#fffdec;
 border:4px solid #6561b8;outline:4px solid #f86d72;outline-offset:-8px;
 box-shadow:0px 6px #adcae4;
 border-radius:0px 20px 0px 20px;
 padding:6px;margin-bottom:50px;
}
.Rcont_info{
}
.Rcont_inner{
 padding-bottom:10px;
}
.inner_contents{
 padding:40px 10px 0px;
}
.right_title{
 width:calc(100% + 5px);
 height:0;
 padding-top:45px;
 overflow:hidden;
 background-repeat:no-repeat;
 background-position:top left;
 background-size:contain;
 float: left;
 background:linear-gradient(180deg, #ffd552 0px, #ffd552 50%,#ffd552 50%,#ffa6a8 51%, #ffa6a8 100%);
 border-radius: 0px 12px 0px 0px;
 margin:-3px 0px 5px -3px;position:relative;
}
.right_title:after{
 content:'';
 width:100%;height:45px;display:block;top:0;left:2px;position:absolute;
}

/*====================================================*/
/* site main */
/*====================================================*/
h4 {border-bottom: 2px solid #1f2858; margin-top:0px; margin-bottom:4px; font-size:14px; padding:20px 3px 3px 3px;color:#1f2858;}
.fpass_img {
width: 280px;
height: 280px;
position:absolute;
background-size:contain !important;
margin:0px auto 0px auto;
}

.Rcont_inner img{
max-width:100%;
}
}
@media (max-width: 499px) {
.right_title{
padding-top:40px;
}
.right_title:after{
height:40px !important;
}
}

/* EOF */