/* @charset "utf-8"; */

/* @import "/Portals/0/css/ver2/base.css"; */
/* @import "/Portals/0/css/ver2/contents.css"; */
/* @import url("//fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,600,700&subset=japanese"); */

/* ===========================================================
 html
=========================================================== */
form[action="/default.aspx?ctl=login"] .headWrap {
  position: relative;
}

/* size settings */
html,
body {
  min-width: 1040px;
}

/* font settings */
html,
body {
  color: #333;
  font-size: 14px;
  line-height: 1.6;
}

body {
  min-width: 1000px;
  height: 100%;
  color: #555;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "sans-serif";
  font-size: 100%;
  line-height: 1.6;
}

/* pc/sp settings */
.pcArea {
  display: block;
}

.spArea {
  display: none;
}

/* ===========================================================
 skin
=========================================================== */
.skinBody {
  overflow: hidden;
  position: relative;
  color: #555;
}

.Ver2 #headBody {
  border-bottom: none;
}

#blockskip {
  display: none;
}

.inner {
  width: 1000px;
  margin: 0 auto;
}

.DNNEmptyPane {
  margin: 0 !important;
  padding: 0 !important;
}

/* ===========================================================
 skin2Columns
=========================================================== */
.mainArea {
  display: flex;
  justify-content: space-between;
}

.skin2Columns .mainArea .ContentPane {
  width: 700px;
}

.skin2Columns .mainArea #sideWrap {
  width: 250px;
}

/* ===========================================================
 common
=========================================================== */
body,
img {
  margin: 0;
  padding: 0;
  border: none;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

* {
  box-sizing: border-box;
}

.pcArea {
  display: block !important;
}

.spArea {
  display: none !important;
}

/* forHTML5 */
img {
  max-width: 100%;
  vertical-align: bottom;
}

main {
  display: block;
  /* padding-top: 100px !important; */
}

/* forIE */


/* ===========================================================
 skin
=========================================================== */
.skinBody {
  overflow: hidden;
  position: relative;
  color: #555;
}

/* ===========================================================
 headBody
=========================================================== */
.adminMode .headWrap {
  position: relative;
}

.adminMode #skin>#header {
  position: relative;
}

#skin>#header {
  position: fixed;
  z-index: 50;
  width: 100%;
  min-width: 1000px;
  background: #fff;
}

.headWrap {
  display: flex;
  padding: 0 20px;
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  justify-content: space-between;
}

#headBody {
  border-bottom: 5px solid #0068b3;
}

#headBody #headWrap {
  display: flex;
  clear: both;
  width: 1000px;
  margin: 0 auto;
  padding: 0;
  text-align: left;
  justify-content: space-between;
}

#headBody #headWrap .headLeftWrap {
  float: left;
  width: 260px;
  margin: 0;
  padding: 0;
}

#headBody #headWrap .headRightWrap {
  width: 573px;
  margin: 0;
  padding: 0;
}

.headLogo {
  width: 340px;
  margin: 10px 0 20px;
  padding: 0;
}

.headLogo .logo {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  font-size: 0;
  line-height: 1;
}

.headLogo .logo:before {
  display: none;
}

.headLogo .logo a {
  display: block;
}

.headLogo .logo a img {
  background-size: 80%;
}

.headLogo .logo a:hover {
  opacity: 0.8;
}

.headWrap .headLeftWrap .LogoPane .logo {
  margin-top: 20px;
  margin-bottom: 12px;
  padding-bottom: 0;
}

.headWrap .headLeftWrap .LogoPane .logo a:hover {
  opacity: 0.7;
  transition: all 0.3s;
}

/*-----------------------
 headTopWrap
-----------------------*/
.headTopWrap {
  display: flex;
  margin-top: 20px;
  justify-content: flex-end;
}

/* HeadLangPane */
.btnLang {
  display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  width: 98px;
  margin: 2px 0 0 0;
  padding: 0;
  justify-content: flex-end;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
}

.btnLang li {
  list-style-type: none;
  padding: 0 16px 0 0;
  border-right: 1px solid #dfdfdf;
}

.btnLang li:last-child {
  margin-left: 16px;
  border-right: none;
}

.btnLang li a {
  padding: 5px 0;
  color: #888;
  font-size: 115%;
  text-decoration: none;
}

.btnLang li a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.btnLang li.current a {
  color: #006cb8;
  font-weight: 700;
  transition-duration: 0.3s;
  transition-property: all;
}

/* search */
.searchWrap {
  position: relative;
  float: none;
  width: 200px;
  height: 26px;
  margin: 0;
  padding: 0;
  border-bottom: none;
  background: transparent;
}

.searchWrap .placeholder {
  position: absolute;
  top: 8px;
  right: 36px;
  z-index: 1;
  color: #888;
  font-weight: 700;
  font-size: 100%;
  line-height: 1;
}

.searchWrap .searchBtn {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  width: 35px;
  height: 100%;
  margin: 0;
  border: none;
  border-radius: 0;
  background: url("/Portals/0/images/ver2/common/ico_search.png") center center no-repeat;
  white-space: nowrap;
  text-indent: 200%;
}

.searchWrap input.txtSearch {
  width: 100%;
  height: 100%;
  padding: 3px 35px 3px 3px;
  border: none;
  color: #888;
}


.backToTopWrap {
  float: left;
  width: 150px;
  margin: 12px 0 0;
  padding: 0;
}

.backToTopWrap .backToTopLink {
  margin: 0;
  padding: 0;
  text-align: right;
}

.backToTopWrap .backToTopLink a {
  padding: 0 0 0 8px;
  background: url(/Portals/0/images/common/arrow_blue_small.png) no-repeat 0 center;
  color: #555;
  font-size: 86%;
  text-decoration: none;
}

.backToTopWrap .backToTopLink a:hover {
  text-decoration: underline;
}

/* ===========================================================
 gNav
=========================================================== */
#gNav .tokenMenu ul {
  display: flex;
  padding: 0;
  justify-content: space-around;
}

/* #gNav .tokenMenu > ul{width:573px;} */
#gNav .tokenMenu ul li.Tab102,
#gNav .tokenMenu ul li.Tab111,
#gNav .tokenMenu ul li.Tab292,
#gNav .tokenMenu ul li.Tab121,
#gNav .tokenMenu ul li.Tab141,
#gNav .tokenMenu ul li.Tab162 {
  display: block;
}

#gNav .tokenMenu ul li {
  display: none;
  padding: 0;
}

#gNav .tokenMenu>ul>li>ul {
  padding-top: 0;
  padding-bottom: 0;
}

#gNav .tokenMenu ul li a {
  display: block;
  position: relative;
  padding: 0;
  padding-top: 15px;
  padding-right: 15px;
  padding-bottom: 10px;
  padding-left: 15px;
  color: #000;
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
}

#gNav .tokenMenu ul li a.parentLink,
#gNav .tokenMenu ul li a.currentLink {
  color: #bf1f2d;
}

#gNav .tokenMenu ul li a:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 5px;
  margin: auto;
  background-color: transparent;
}

#gNav .tokenMenu ul li a:hover {
  text-decoration: none;
}

#gNav .tokenMenu ul li a:hover:before {
  content: "";
  display: block;
  position: absolute;
  top: 40px;
  height: 5px;
  margin: 0 auto;
  background-color: #bf1f2d;
  text-decoration: underline;
  transition-duration: 0.3s;
  transition-property: all;
}


/* ===========================================================
 megamenu
=========================================================== */
/* megaMenuOverlay */
.megaMenuOverlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  background: rgba(0, 0, 0, 0.25);
}

.MegamenuPane {
  /* position:relative; */
}

/*.megamenuWrap{background:-moz-linear-gradient(top, rgba(0,108,184,1) 0%, rgba(0,108,184,0) 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#006cb8', endColorstr='#00006cb8',GradientType=0 );}*/
.megaItem {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  margin: auto;
  padding: 30px 0 30px 0;
  background: linear-gradient(to bottom, rgba(1, 108, 184, 0.9) 0%, rgba(64, 167, 239, 1) 100%);
  flex-wrap: wrap;
}

.megamenuWrap .megamenu {
  display: flex;
  width: 1000px;
  margin: 0 auto;
  padding: 30px 0 30px 0;
  flex-wrap: wrap;
}

.megamenuWrap .Tab111 .megamenu,
.megamenuWrap .Tab121 .megamenu,
.megamenuWrap .Tab141 .megamenu {
  display: flex;
  justify-content: center;
}

.megamenuWrap .Tab121 .megamenu {
  flex-wrap: wrap;
}

.megamenuWrap>div {
  display: none;
}

.megamenuWrap .Tab141>.megamenu>ul {
  display: flex;
  position: relative;
  width: 50%;
  margin-bottom: 1px;
  padding-top: 22px;
  padding-bottom: 30px;
  flex-wrap: wrap;
}

.megamenuWrap>.Tab121>.megamenu>ul.txt:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -16px;
  left: 0;
  width: 90%;
  height: 1px;
  margin: auto;
  background: rgba(255, 255, 255, 0.5);
}

.megamenuWrap .Tab141>.megamenu>ul:before {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 16px;
  width: 90%;
  height: 1px;
  margin: auto;
  background: rgba(255, 255, 255, 0.5);
}

.megamenuWrap .megamenu li {
  list-style: none;
  padding: 0;
  text-align: left;
}

/* @media all and (-ms-high-contrast:none){.megamenuWrap .Tab292 .megamenu li {list-style:none;padding:0;text-align:left;}} */
.megamenuWrap .megamenu li ul li {
  position: relative;
}

.megamenuWrap .megamenu>li:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 90%;
  height: 1px;
  margin: auto;
  background: rgba(255, 255, 255, 0.5);
}


.megamenuWrap .megamenu>li {
  display: flex;
  position: relative;
  margin-top: 0;
  margin-bottom: 10px;
  padding-top: 16px;
  color: #fff;
  font-weight: 700;
  font-size: 114.3%;
  text-align: center;
  align-items: center;
}

.megamenuWrap .megamenu>li ul {
  padding: 16px;
}

.megamenuWrap .megamenu li.Tab100.magamenu:before {
  position: relative;
}

.megamenuWrap .Tab102 .megamenu>li,
.megamenuWrap .Tab121 .megamenu>li {
  display: block;
  width: 240px;
}

.megamenuWrap .Tab102 .megamenu>li.bgImg {
  display: flex;
  width: auto;
  margin: 0 0 10px;
  padding: 30px 36px;
  justify-content: center;
  align-items: center;
}

.megamenuWrap .Tab111 .megamenu li.bgImg,
.megamenuWrap .Tab121 .megamenu li.bgImg,
.megamenuWrap .Tab141 .megamenu li.bgImg {
  padding: 0;
}

.megamenuWrap .megamenu li a {
  /* display:block; */
  padding-right: 15px;
  padding-bottom: 10px;
  color: #fff;
  font-weight: 500;
  font-size: 75%;
}

.megamenuWrap .megamenu>li:after {
  content: "";
  position: absolute;
  top: 10px;
  right: 0;
  width: 1px;
  height: 90%;
  background: rgba(255, 255, 255, 0.5);
}

.megamenuWrap .Tab111 .megamenu>li:nth-child(3n):after,
.megamenuWrap .Tab141 .megamenu>li:nth-child(3n):after,
.megamenuWrap .Tab121 .megamenu>li:nth-child(2n):after {
  background: none;
}

.megamenuWrap .Tab102 .megamenu>li:nth-child(5n-1):before,
.megamenuWrap .megamenu .Tab102>li:nth-of-type(3):before,
.megamenuWrap .megamenu .Tab102>li:nth-of-type(4):before {
  position: relative;
}

.megamenuWrap .megamenu>li:last-child:after {
  background: transparent;
}

.megamenuWrap .Tab102 .megamenu>li:last-child:after {
  border: none;
}

.megamenuWrap .Tab102 .megamenu .Tab102>li:last-child:after {
  top: -42px;
  width: 98%;
  height: 1px;
}

.megamenuWrap .Tab102 .megamenu>li:nth-of-type(3)::before {
  content: "";
  position: absolute;
  left: 12px;
  width: 190%;
}

.megamenuWrap .Tab102 .megamenu>li>ul,
.megamenuWrap .Tab121 .megamenu>li>ul {
  display: block;
  position: relative;
  height: auto;
  margin-top: 27px;
  padding: 16px;
}

.megamenuWrap .Tab102 .megamenu>li.bgImg ul {
  position: relative;
  width: 100%;
  margin-top: 0;
  padding: 10px 38px;
  padding: 0;
}

.megamenuWrap .Tab102 .megamenu>li.bgImg ul li.Tab224 a {
  background-image: url(/Portals/0/images/index/megamenu/img_megamenu_01.jpg);
}

.megamenuWrap>.Tab121>.megamenu>ul.txt {
  position: relative;
  width: 25%;
  margin-top: 25px;
  margin-bottom: 20px;
  margin-left: 0;
}

.megamenuWrap .megamenu .txt li {
  display: block;
  width: 50%;
}

.megamenuWrap .Tab102 .megamenu li ul:before,
.megamenuWrap .Tab121 .megamenu li ul:before {
  content: "";
  position: absolute;
  top: -20px;
  right: 0;
  left: 0;
  width: 20px;
  height: 3px;
  margin: auto;
  background: #c12634;
}

.megamenuWrap .Tab102 .megamenu>li.bgImg ul:before {
  content: "";
  display: block;
  position: static;
  width: 0;
  height: 0;
  background: transparent;
}

.megamenuWrap .Tab102 .megamenu>li.bgImg ul li {
  display: block;
}

.megamenu>ul>li>ul li {
  display: none;
}

.megamenuWrap .Tab102 .megamenu>li.bgImg ul li a {
  display: flex;
  width: 420px;
  height: 205px;
  padding: 20px;
  background: #000;
  color: #fff;
  font-size: 108.3%;
  text-align: center;
  justify-content: center;
  align-items: center;
}

.megamenuWrap .megamenu>li.bgImg ul li a {
  display: flex;
  position: relative;
  z-index: 0;
  width: 100%;
  height: 150px;
  padding: 20px;
  background-color: #000;
  color: #fff;
  font-size: 108.3%;
  text-align: center;
  cursor: pointer;
  ;
  justify-content: center;
  align-items: center;
}

.megamenuWrap .Tab141 .megamenu>li.bgImg ul li a,
.megamenuWrap .Tab111 .megamenu>li.bgImg ul li a {
  width: 300px;
}

.megamenuWrap .megamenu>li.bgImg ul li a:hover {
  opacity: 0.7;
  text-decoration: none;
  transition: all 0.3s;
}

.megamenuWrap .Tab121 .megamenu li.bgImg ul:before {
  display: none;
  align-items: center;
}

.megamenu>ul>li .megaMenuCloseBtn p {
  display: none;
}

.megamenuWrap .Tab121 .megamenu li.bgImg ul:before {
  display: none;
  align-items: center;
}

.megamenuWrap .Tab121 .megamenu>li {
  width: 50%;
}

.megamenuWrap .Tab121 .megamenu>li.irInvestor ul {
  display: flex;
  flex-wrap: wrap;
}

.megamenuWrap .Tab121 .megamenu>li.irInvestor>ul li {
  width: 50%;
}

.megamenuWrap .Tab121 .megamenu ul {
  display: flex;
  padding: 0;
}

.megamenuWrap .Tab121 .megamenu>ul>li {
  position: relative;
  margin-right: 25px;
}

.megamenuWrap .Tab121 .megamenu>ul>li>a {
  padding-bottom: 0;
}

.megamenuWrap .Tab121 .megamenu>li.bgImg>ul {
  margin-top: 0;
}

.megamenuWrap .Tab121 .megamenu li.bgImg ul li a {
  height: 199px;
}

.megamenuWrap .Tab121 .megamenu>ul>li>a:before {
  background: linear-gradient(45deg, transparent 40%, #fff 40%, #fff 60%, transparent 60%, transparent 100%), linear-gradient(135deg, transparent 40%, #fff 40%, #fff 60%, transparent 60%, transparent 100%);
  background-size: 100% 50%;
  background-repeat: no-repeat;
  background-position: top left, bottom left;
}

.megamenuWrap .megamenu li.bgImg ul li {
  /* position:relative; */
  /* width:100%; */
}

.megamenuWrap .megamenu>li.bgImg ul li a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.3);
}

.megamenuWrap .megamenu>li.bgImg ul li.office05 a:after {
  background-color: rgba(0, 0, 0, 0.5);
}

/* 画像 */
.megamenuWrap .megamenu>li.bgImg ul li a img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  margin: auto;
}

/* megaMenuCloseBtn */
.megamenuWrap {
  position: relative;
  width: 100%;
  background: linear-gradient(to bottom, rgba(0, 108, 184, 0.9) 0%, rgba(64, 167, 239, 1) 100%);
}

.megaMenuCloseBtn p:hover {
  opacity: 0.7;
  transition: all 0.3s;
}

.megaMenuCloseBtn {
  position: absolute;
  top: 25px;
  right: calc(50% - 530px);
  cursor: pointer;
  transition: opacity 0.3s;
}

.megaMenuCloseBtn:hover {
  opacity: 0.75;
}

.megaMenuCloseBtn p {
  position: relative;
  width: 38px;
  height: 38px;
  margin: 0;
  padding: 0 0 0 0;
  border-radius: 50%;
  background: #fff;
  font-size: 14px;
}

.megaMenuCloseBtn p span {
  overflow: hidden;
  position: absolute;
  top: -4px;
  right: 0;
  width: 28px;
  height: 32px;
  color: #fff;
  white-space: nowrap;
  text-indent: 100%;
}

.megaMenuCloseBtn p span:before,
.megaMenuCloseBtn p span:after {
  content: "";
  display: block;
  position: absolute;
  transform: rotate(45deg);
  width: 18px;
  height: 3px;
  background-color: #268ed8;
}

.megaMenuCloseBtn p span:before {
  transform: rotate(-45deg);
  margin-top: 22px;
}

.megaMenuCloseBtn p span:after

/* ===========================================================
 moduleMenu
 =========================================================== */
.moduleMenu {
  margin: 0 0 30px;
  padding: 0;
}

.moduleMenu ul {
  margin: 0;
  padding: 0;
}

.moduleMenu ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.moduleMenu ul li a {
  display: block;
  color: #222;
  line-height: 1.3;
  text-decoration: none;
}

.moduleMenu ul li a:hover {
  opacity: 0.7;
  text-decoration: none;
  transition: all 0.3s;
}

/* toggleSwitch */
.moduleMenu ul li a.toggleSwitch {
  position: relative;
}

.moduleMenu ul li a.toggleSwitch:before,
.moduleMenu ul li a.toggleSwitch:after {
  content: "";
  position: absolute;
  top: 0;
  right: 14px;
  bottom: 0;
  left: inherit;
  width: 14px;
  height: 2px;
  margin: auto;
  background: #006cb8;
  transition: all 0.3s ease-in-out;
}

.moduleMenu ul li a.toggleSwitch:after {
  transform: rotate(90deg);
}

.moduleMenu ul li a.toggleSwitch.open:before {
  opacity: 0;
}

.moduleMenu ul li a.toggleSwitch.open:after {
  transform: rotate(180deg);
}

/* １階層目 */
.moduleMenu>ul {
  border: 1px solid #ccc;
}

.moduleMenu>ul>li {
  display: none;
}

.moduleMenu>ul>li.currentItem,
.moduleMenu>ul>li.parentItem {
  display: block;
}

.moduleMenu>ul>li>a {
  padding: 18px 20px 16px 20px;
  background-color: #1e7ac4;
  color: #fff;
  font-size: 143%;
}

.moduleMenu>ul>li>a:hover {
  color: #eff6fc;
}

/* ２階層目 */
.moduleMenu>ul>li>ul>li>a {
  padding: 14px 25px;
  border-top: 1px solid #ccc;
  font-size: 100%;
}

.moduleMenu>ul>li>ul>li>a.currentLink {
  background-color: #eff6fc;
}

/* ３階層目 */
.moduleMenu>ul>li>ul>li>ul {
  display: none;
}

.moduleMenu>ul>li>ul>li.currentItem>ul,
.moduleMenu>ul>li>ul>li.parentItem>ul {
  display: block;
}

.moduleMenu>ul>li>ul>li>ul {
  margin: 0 0 0 18px;
  background: rgba(0, 108, 184, 0.2);
}

.moduleMenu>ul>li>ul>li>ul>li {
  border-bottom: 1px solid #85b8dd;
}

.moduleMenu>ul>li>ul>li>ul>li>a {
  position: relative;
  padding: 12px 25px;
  font-size: 86%;
}

.moduleMenu>ul>li>ul>li>ul>li>a:not(.toggleSwitch).currentLink:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  height: 30px;
  margin: auto;
  background: #bf1e2d;
}

/* ４階層目 */
.moduleMenu>ul>li>ul>li>ul>li>ul {
  display: none;
}

.moduleMenu>ul>li>ul>li>ul>li.currentItem>ul,
.moduleMenu>ul>li>ul>li>ul>li.parentItem>ul {
  display: block;
}

.moduleMenu>ul>li>ul>li>ul>li>ul {
  margin: 0 0 0 18px;
  background: #79b3d9;
}

.moduleMenu>ul>li>ul>li>ul>li>ul>li>a {
  position: relative;
  padding: 12px 25px;
  border-bottom: 1px solid #fff;
  color: #fff;
  font-size: 86%;
}

.moduleMenu>ul>li>ul>li>ul>li>ul>li>a.currentLink:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  height: 26px;
  margin: auto;
  background: #bf1f2d;
}

.moduleMenu>ul>li>ul>li>ul>li>ul>li:last-child>a {
  border-bottom: none;
}

/* サステナビリティ用 */
.megamenuSustaina {
  display: block !important;
  font-family: "メイリオ";
}

.megamenuSustaina .megamenuSustainaHead {
  position: relative;
  color: #fff;
  font-weight: bold;
  font-size: 143%;
}

.megamenuSustaina .megamenuSustainaHead::before {
  content: "";
  position: absolute;
  top: 40px;
  right: 0;
  left: 0;
  width: 20px;
  height: 3px;
  margin: auto;
  background: #c12634;
}

.megamenuSustaina .megamenuSustainaLinker {
  border-bottom: 1px solid #fff;
}

.megamenuSustaina .megamenuSustainaLinkList {
  display: flex;
  justify-content: center;
}

.megamenuSustaina .megamenuSustainaLinkItem {
  position: initial !important;
  margin: 0 15px;
  font-size: 115%;
}

.megamenuSustaina .megamenuSustainaLinkItem span {
  margin-right: 5px;
  color: #fff;
  font-size: 60%;
  vertical-align: middle;
}

.megamenuSustaina .megamenuSustainaLinkItem img {
  margin-left: 5px;
  vertical-align: baseline;
}

.megamenuSustaina .megamenuSustainaCard {
  margin-top: 25px;
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem {
  display: inline-block;
  position: relative;
  width: 300px;
  margin-right: 5%;
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem:after {
  content: "";
  position: absolute;
  top: -10px;
  right: -25px;
  width: 1px;
  height: 110%;
  background: rgba(255, 255, 255, 0.5);
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem:last-child:after {
  background: none;
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem:last-child {
  margin-right: 0;
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem a:hover {
  opacity: 0.7;
  text-decoration: none;
  transition: all 0.3s;
}

.megamenuSustaina .megamenuSustainaCard .megamenuSustainaCardItem .megamenuSustainaCardTxt {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
  color: #fff;
  font-weight: bold;
  font-size: 120%;
}

/* ===========================================================
 content
=========================================================== */
.TopPane {
  padding-top: 96px;
}

.TopPane .flexslider {
  z-index: 1;
  border: none;
}

.adminMode .TopPane .flexslider ul.slides {
  padding-top: 0;
}

.TopPane .flexslider ul.slides>li {
  overflow: hidden;
  z-index: 0;
  padding: 0;
}

.TopPane .flexslider ul.slides li img {
  display: block;
  width: 100%;
}

.contentWrap {
  margin-bottom: 70px;
}

/* ===========================================================
 footBody
=========================================================== */
.fNavWrap {
  margin-top: 100px;
  background: rgba(0, 108, 184, 0.1);
}

.fNavPane div ul {
  display: flex;
  list-style: none;
  margin-top: 54px;
  margin-bottom: 55px;
  padding: 0;
  flex-wrap: wrap;
}

.fNavPane div>ul>li {
  display: none;
}

.fNavPane div ul li.Tab102,
.fNavPane div ul li.Tab111,
.fNavPane div ul li.Tab292,
.fNavPane div ul li.Tab121,
.fNavPane div ul li.Tab141 {
  display: block;
  width: 22.8%;
  margin-right: 15px;
  padding-bottom: 0;
}

.fNavPane div ul li.Tab141 {
  margin-right: 0;
}

.fNavPane div ul li a {
  position: relative;
  color: #555;
  text-decoration: none;
}

.fNavPane div ul li a:hover {
  opacity: 0.7;
  transition: all 0.3s;
}

.fNavPane div>ul>li>a {
  padding-bottom: 10px;
  font-weight: 700;
  font-size: 128.6%;
}

.fNavPane div>ul>li>a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 3px;
  background: #bf1f2d;
}

.fNavPane div ul li ul {
  display: block;
  margin-top: 35px;
  margin-bottom: 0;
}


/* LinkPane */
.LinkWrap {
  background-color: rgba(0, 108, 184, 1);
}

.LinkWrap .layoutItem.footerMiddle {
  margin: 18px 0;
}

.LinkWrap .layoutItem.footerMiddle li {
  margin-right: 0;
  margin-bottom: 0;
  padding-right: 30px;
  padding-left: 30px;
  border-right: 1px solid #fff;
}

.LinkWrap .layoutItem.footerMiddle li:last-child {
  border-right: none;
}

.LinkWrap .layoutItem.footerMiddle li a {
  color: #fff;
  text-decoration: none;
}

.LinkWrap .layoutItem.footerMiddle li a:hover {
  text-decoration: underline;
}

/* BannerPane */
.BannerPane .alignCenter {
  margin: 20px 0 5px;
}

.footBody {
  position: relative;
}

.footBody .pagetop {
  display: block;
  position: absolute;
  right: 120px;
  bottom: 100%;
  margin: 0;
}

.footBody .pagetop a {
  display: block;
  overflow: hidden;
  width: 22px;
  height: 100px;
  margin: 0;
  padding: 0 0 0 20px;
  background: url(../../../image/img_pageTop.png) 0 0 no-repeat;
  white-space: nowrap;
  text-indent: 100%;
}

.footBody .pagetop.in.fix a {
  margin-bottom: 20px;
}

.footBody .pagetop a:hover {
  opacity: 0.7;
  transition: all 0.3s;
}



.copyright {
  margin-top: 0;
  margin-bottom: 20px;
  text-align: center;
}

/* ===========================================================
 Login
===========================================================*/
.viewMode div[id$="pnlLogin"] {
  margin: 160px auto 0;
  text-align: center;
}

.viewMode div[id$="pnlLogin"] .LoginPanel table {
  display: inline-block;
  padding: 20px;
  background: rgba(3, 122, 79, 0.1);
}

.viewMode div[id$="pnlLogin"] .LoginPanel table .submitBtn_S.notice {
  margin: 12px 0 0 0;
  padding: 8px 15px;
  border: none;
  background: #3389c6;
  color: #fff;
}

.viewMode .skinIndex main.mainArea {
  background: transparent;
}

.viewMode div[id$="pnlLogin"] .LoginPanel table tr td input[type="password"][name$="DNN$txtPassword"] {
  cursor: text;
}

/* ===========================================================
 css for admin
=========================================================== */
/* css-for-adminModules */
.FileManager_LeftBox {
  width: 200px !important;
}

.FileManager_LeftBox img {
  height: 13px !important;
}

#dnn_ctr362_ModuleContent table {
  width: 100% !important;
}

#dnn_ctr362_ModuleContent table td {
  text-align: left !important;
}

#IconBar\.ascx_divControlPanel {
  font-size: 12px;
}

.ModuleTitle_MenuItem {
  font-size: 12px;
}

.ModuleTitle_MenuContainer>tbody>tr>td,
.ModuleTitle_MenuContainer>tbody>tr>td>table {
  width: auto;
}

/* コントロールパネル */
.controlPanelBody a.CommandButton:hover {
  text-decoration: none;
}

/* スマホプレビュー */
.selectBox+.fancybox-wrap,
.selectBox+.fancybox-wrap * {
  box-sizing: content-box !important;
}

/* ログイン画面 */
form[action*="?ctl=login"] .skinIndex #mainBody {
  margin-top: 20px;
}

/* お知らせ管理 */
#dnn_ctr438_ModuleContent table.tableGrid.Settings thead th:nth-of-type(2) {
  width: 400px !important;
}

/* タイトル */

/* 事例・物件管理 */
#dnn_ctr704_ModuleContent table.tableGrid.Settings thead th:nth-of-type(3) {
  width: 300px !important;
}

/* タイトル */
#dnn_ctr704_ModuleContent table.tableGrid.Settings thead th:nth-of-type(2),
#dnn_ctr704_ModuleContent table.tableGrid.Settings td .lblCategory {
  width: 75px !important;
}

/* カテゴリ */


/* ===========================================================
 css for print
=========================================================== */
.kvContent {
  position: relative;
  background-color: #0f2c4c;
}

.kvContent .slicksliderArea {
  z-index: 1;
  margin: 0;
}

.slickslider .slider ul.slick-dots {
  margin: 0;
  padding: 0;
}

.slickslider .slider ul.slick-dots li {
  display: none;
  margin: 0;
  padding: 0;
}

/* slider */
.slider {
  opacity: 0;
  transition: opacity 1s;
}

.slider.slick-slider {
  overflow: visible;
  opacity: 1;
  width: 100%;
  margin: 0 auto;
}

.slick-slider .slick-list {
  overflow: visible;
  z-index: 0;
  padding: 0 !important;
}

.slick-slider .slick-slide {
  display: block;
  text-align: center;
}

.slick-slider .slick-slide.slick-center {
  opacity: 1;
}

.slick-slider .slick-slide a {
  display: block;
}

.slick-slider .slick-slide img {
  display: block;
  width: 100%;
}

.slick-slider .slick-slide a:hover img {
  /* opacity:0.8; */
}

/*pager*/
.slick-slider ul.slick-dots {
  display: flex;
  list-style: none;
  position: absolute;
  right: 60px;
  bottom: 78px;
  margin: auto;
  padding: 0;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}

.slick-slider ul.slick-dots li {
  margin: 0 15px 0 0;
  padding: 0;
}

.slick-slider ul.slick-dots li button {
  display: block;
  overflow: hidden;
  width: 14px;
  height: 14px;
  border: 2px solid transparent;
  border-radius: 50%;
  background-clip: padding-box;
  background-color: rgba(255, 255, 255, 0.5);
  color: transparent;
  white-space: nowrap;
  text-indent: 200%;
  transition-duration: 0.3s;
  transition-property: all;
}

.slick-slider ul.slick-dots li.slick-active button,
.slick-slider ul.slick-dots li button:hover {
  background: #fff;
}