#megamenu_container {
  /* width: 382px; */
}
/*
@media screen and (max-width:639px) {
#megamenu_container {
  position: relative;
  top: 1px;
}
}
*/
  #megamenu_container *,
  #megamenu_container *:before,
  #megamenu_container *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
  }

ul.megamenu {
  margin: 0px auto;
  list-style: none;
  display: none;
}

ul.megamenu li.mm-item {
}

ul.megamenu li {
  margin: 0px;
  padding: 0px;
}
  ul.megamenu li div {
    font-size: 12px;
  }
  ul.megamenu li div table th {
    border-bottom: 5px solid #CCC;
  }
  ul.megamenu li div table td {
    white-space: nowrap;
    border-right: 3px dotted #CCC;
    vertical-align: top;
  }
  ul.megamenu li div table td.last_cell {
    border: none;
  }
    ul.megamenu li div table td ul li {
      margin-right: 15px;
      color: #BBB;
      list-style-type: square;
    }
      ul.megamenu li div table td ul li a {
      }
ul.megamenu li.clear-fix {
  float: none;
  clear: both;
  margin: 0px;
  padding: 0px;
  height: 0px;
  font-size: 0px;
  line-height: 0px;
}

ul.sub_line {
  border-top:1px dashed #CCC;
  margin-top:5px;
}
/*
ul.megamenu a.mm-item-link:link, ul.megamenu a.mm-item-link:visited {
}
*html ul.megamenu a.mm-item-link:link, *html ul.megamenu a.mm-item-link:visited {
  border-color: pink;
  filter: chroma(color=pink);
}

ul.megamenu a.mm-item-link-hover:link, ul.megamenu a.mm-item-link-hover:visited {
  color: #555;
  background: #FFF;
  border-top: 1px solid #203040;
  border-left: 1px solid #203040;
  border-right: 1px solid #203040;
  -moz-border-radius: 3px 3px 0px 0px;
  border-radius: 3px 3px 0px 0px;
}
*/
ul.megamenu div.mm-item-content {
  background: #FFF;
  padding: 0px;
  position: absolute;
  z-index: 9;
}
.mm-content-base {
  background: #FFF;
  position: relative;
  z-index: 11;
  border-left:solid 1px #666;
  border-bottom:solid 1px #666;
  border-right:solid 1px #666;
  padding:0 0 20px 20px;
  margin:0 -2px 0;
  min-width:100px;
}
.mm-content-base li{
	list-style-type:none;
	padding:0;
	margin:0;
	background:none;
	height:auto;
}
.mm-js-shadow {
  position: absolute;
  z-index: 10;
}


/* button */
#head_menu ul.megamenu li.search a,
#head_menu ul.megamenu li.libinfo a,
#head_menu ul.megamenu li.mypage a	{
	width:100%;
	color:#DDD;
	line-height:45px;
	text-align:center;
	text-decoration:none;
	display:block;
	height:50px;
}
#head_menu ul.megamenu li.search a:hover,
#head_menu ul.megamenu li.libinfo a:hover,
#head_menu ul.megamenu li.mypage a:hover{
	background:#FFF;
	color:#84033E;
}
ul.megamenu li ul li{
}
ul.megamenu li ul li a{
	color:#333!important;
	background:none!important;
	text-indent:0!important;
	text-align:left!important;
	height:auto!important;
	width:160px!important;
	line-height:160%!important;
        background:url(../img/qu/menu/line_dot.gif) repeat-x bottom!important;
	padding:10px 0 5px 0;
}
.login_menu_upper{
	width:230px;
	float:left;
	margin:20px 10px 10px 0;
}
.login_menu_upper p{
	margin:0!important;
	word-break:break-all;
}
.login_menu_links{
	width:100px;
	float:left;
	margin:20px 0 10px 0;
	border:solid 1px #CCC;
	background:#EFEFEF;
}
@media screen and (max-width:599px) {
	.login_menu_upper{
		width:auto;
	}
	.login_menu_links{
		float:right;
		margin-right:20px;
	}
}
.login_menu_links a{
	width:auto!important;
	height:auto!important;
	line-height:1.6!important;
	text-align:left!important;
}
ul.megamenu .login_menu_links a{
}
ul.megamenu .login_menu_links p.setting a{
	background:url(../img/qu/menu/icon_setting.png) no-repeat left center!important;
	background-size: 15px 15px !important;
}
ul.megamenu .login_menu_links p.logout a{
	background:url(../img/qu/menu/icon_logout.png) no-repeat left center!important;
	background-size: 15px 15px !important;
}
ul.megamenu .login_menu_links p.setting a,
ul.megamenu .login_menu_links p.logout a{
	padding:0 0 0 20px;
	margin:0 0 0 10px;
	color:#333!important;
}
ul.megamenu .login_menu_links p.setting a:hover,
ul.megamenu .login_menu_links p.logout a:hover{
	color:#84043D!important;
}

#megamenu_container ul.megamenu li ul li a:hover{
	color:#84043D;
	text-decoration:underline;
}
ul.megamenu li ul li ul li a{
	background:url(../img/qu/menu/icon_downright.gif) no-repeat left center!important;
	padding:0 0 0 12px;
	width:auto!important;
}

ul.megamenu li ul{
	width:180px;
	float:left;
	padding-top: 7px;
}

.mm-content-base:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.mm-content-base {
  min-height: 1px;
}

* html .mm-content-base {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

@media screen and (max-width:599px) {
	ul.megamenu div.mm-item-content{
		width:97%;
		left:0;
	}
	nav li #login-content{
		width:300px!important;
	}
	ul.megamenu li.mypage .mm-item-content{
		right:0 !important;
		left:auto;
		width:97%;
	}
	ul.megamenu li ul{
		width:180px;
		float:left;
	}
	ul.megamenu li ul li{
		width:100%!important;
	}
}
@media screen and (max-width:447px) {
        ul.megamenu .mm-item-content .mm-content-base{
//                padding-right:20px;
        }
        ul.megamenu .mm-item-content .mm-content-base ul{
                width:100%;
        }
        ul.megamenu .mm-item-content .mm-content-base ul a{
                width:100% !important;
        }
}
@media screen and (max-width: 991px) {
	div ul.megamenu li.mypage .mm-item-content{
		right:0;
	}
	#megamenu_container .mypage .mm-content-base{
		margin:0;
		border-right-style:none;
		width:auto !important;
	}
	#megamenu_container .mypage .mm-js-shadow{
		left:0 !important;
		width:100% !important;
	}
}
#head_menu ul.megamenu li.search .menu_active,
#head_menu ul.megamenu li.libinfo .menu_active,
#head_menu ul.megamenu li.mypage .menu_active {
	background-image: none;
	color:#FFF;
	background:#7B7B7B;
}

ul.megamenu li.mypage p {
    margin: 5px 0;
}

#megamenu_container.anonymous .mypage .mm-content-base{
	width:260px;
}
#megamenu_container.anonymous .mypage .mm-content-base p{
	background:url(../img/qu/menu/icon_login_help.png) no-repeat 5px 14px;
	background-size:auto 45px;
	padding:15px 20px 0 60px;
	font-weight:normal;
	margin:0;
	min-height:60px;
}
#megamenu_container.anonymous .mypage .mm-content-base ul.example{
	padding:10px 20px 10px 0;
	width:auto;
	float:none;
}
#megamenu_container.anonymous .mypage .mm-content-base ul.link{
	width:auto;
	float:none;
	padding:0 20px 0 0;
}
#megamenu_container.anonymous .mypage .mm-content-base ul.example li{
	background:url(../img/qu/menu/icon_dot_gray.gif) no-repeat left 6px;
	padding:0 0 5px 10px;
	line-height:140%;
	margin:0 0 0 0;
	position:relative;
	font-weight:normal;
}
#megamenu_container.anonymous .mypage .mm-content-base ul.link li{
	text-align:right!important;
}
#megamenu_container.anonymous .mypage .mm-content-base ul.link a{
	color:#84043D!important;
	line-height:160%!important;
	background:none!important;
	height:auto!important;
	font-weight:normal!important;
	display:inline!important;
}
#megamenu_container .mypage .mm-content-base ul.link li.sso a{
        background:#84043D!important;
        border-radius:5px!important;
        text-align:center!important;
        color:#FFF!important;
        display:block!important;
        width:100%!important;
}
@media screen and (max-width:599px) {
	#megamenu_container .mypage .mm-content-base{
		width:100%!important;
	}
	#megamenu_container .mm-js-shadow{
		left:0!important;
		width:100%!important;
	}
}
#megamenu_container.anonymous .mypage #mypage_block .mm-content-base>p,
#megamenu_container.anonymous .mypage #mypage_block .mm-content-base ul.example li {
  color: #333;
}
