/* 省エネ設備のプルダウンメニュー（HTML/CSS のみ）
   他のグローバルメニューには適用しません。
   開閉はブラウザ標準の details / summary が担当します。*/
#gnavi {position:relative;z-index:100;}
#gnavi > ul {overflow:visible;}
#gnavi > ul > li.gn7 {position:relative;}
#gnavi .energy-menu-details {display:block;position:relative;margin:0;padding:0;}
#gnavi .energy-menu-details > summary {
  box-sizing:border-box;
  display:block;
  position:relative;
  list-style:none;
  margin:0;
  padding:85px 17px 0 4px;
  width:154px;
  height:108px;
  line-height:23px;
  font-size:13px;
  color:#fff;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
  white-space:nowrap;
}
#gnavi .energy-menu-details > summary::marker{content:"";}
#gnavi .energy-menu-details > summary::-webkit-details-marker {display:none;}
#gnavi .energy-menu-details > summary::after {
  content:"";
  position:absolute;
  right:7px;
  bottom:8px;
  width:6px;
  height:6px;
  border-right:1.5px solid #fff;
  border-bottom:1.5px solid #fff;
  transform:rotate(45deg);
  transition:transform .15s ease;
}
#gnavi .energy-menu-details[open] > summary::after {transform:translateY(3px) rotate(225deg);}
#gnavi .energy-menu-details > summary:hover {opacity:.75;}
#gnavi .energy-menu-details > summary:focus-visible {outline:2px solid #739820;outline-offset:-3px;}
/* 既存の #gnavi ul/li/a 共通指定をサブメニュー内だけ上書き */
#gnavi ul.energy-dropdown-links {
  box-sizing:border-box;
  display:block;
  position:absolute;
  left:0;
  top:100%;
  width:312px;
  max-width:calc(100vw - 24px);
  height:auto;
  margin:0;
  padding:7px 0;
  background:#fff;
  border-top:4px solid #739820;
  border-left:1px solid #dae3d0;
  border-right:1px solid #dae3d0;
  border-bottom:1px solid #dae3d0;
  box-shadow:0 13px 26px rgba(40,50,35,.20);
  z-index:110;
  list-style:none;
  flex-direction:column;
  flex-wrap:nowrap;
}
#gnavi ul.energy-dropdown-links > li {
  box-sizing:border-box;
  display:block;
  float:none;
  clear:both;
  position:relative;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
  background:none;
  border:0;
  list-style:none;
}
#gnavi ul.energy-dropdown-links > li + li {border-top:1px solid #edf0e8;}
#gnavi ul.energy-dropdown-links > li > a {
  box-sizing:border-box;
  display:block;
  position:relative;
  width:100%;
  height:auto;
  min-height:0;
  margin:0;
  padding:11px 32px 11px 17px;
  background:#fff;
  color:#493c36;
  font-size:13px;
  line-height:1.55;
  font-weight:normal;
  text-align:left;
  white-space:normal;
  text-decoration:none;
  opacity:1;
}
#gnavi ul.energy-dropdown-links > li:first-child > a {font-weight:bold;color:#2c4f85;background:#f6feef;}
#gnavi ul.energy-dropdown-links > li > a::after {
  content:"›";
  position:absolute;
  right:13px;
  top:50%;
  transform:translateY(-50%);
  color:#739820;
  font-size:19px;
  font-weight:normal;
}
#gnavi ul.energy-dropdown-links > li > a:hover,
#gnavi ul.energy-dropdown-links > li > a:focus-visible {
  color:#2c4f85;
  background:#f0f7e4;
  opacity:1;
}
@media(max-width:960px) {
  #gnavi .energy-menu-details > summary {width:100%;height:auto;min-height:108px;padding-top:85px;}
  #gnavi ul.energy-dropdown-links {display:block;width:290px;max-width:min(312px,calc(100vw - 20px));}
}
@media(max-width:650px) {
  #gnavi .energy-menu-details > summary {min-height:104px;padding-top:78px;font-size:12px;}
  #gnavi ul.energy-dropdown-links {width:280px;left:-80px;}
}
