@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold; }

* {
  box-sizing: border-box; }



#innerDocument table.Table {
	text-indent: 0;
}

@media screen and (max-width: 1024px) {
  body {
    overflow-y: scroll; } }

header {
  width: 100%;
  min-width: 1200px;
  height: 67px;
  background: #fff;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  box-shadow: 0 0 1px 2px rgba(0, 0, 0, 0.1);
  text-align: center;
  z-index: 600; }

@media screen and (max-width: 1024px) {
  header {
    min-width: auto;
    height: 52px; } }

nav#pNavi {
  padding-bottom: 25px;
  text-align: left; }
  nav#pNavi section#outlineGraph {
    margin: 0;
    background: #fff;
    border: 1px solid #D7D7D7;
    border-radius: 5px;
    display: none; 
    }
    nav#pNavi section#outlineGraph.active {
      display: block; }
  nav#pNavi section#outlineList {
    padding: 25px 12px 12px 12px;
    background: #fff;
    border: 1px solid #D7D7D7;
    border-radius: 5px;
    display: none; }
    nav#pNavi section#outlineList.active {
      display: block; }
    nav#pNavi section#outlineList p {
      padding-bottom: 12px; }
      nav#pNavi section#outlineList p.label {
        font-size: 0.75rem;
        text-align: right; }
    nav#pNavi section#outlineList ul li {
		padding-left: 12px;
		font-size: 0.875rem;
		position: relative;
		margin-top: 12px;
		padding-bottom: 12px;
		border-bottom: 1px solid #D7D7D7;
      }
/*       nav#pNavi section#outlineList ul li:nth-child(odd) {
        background: url(../img/icon/icon_outline_list.png) left 5px no-repeat; } */
/*       nav#pNavi section#outlineList ul li.active {
        background: url(../img/icon/icon_outline_point.png) left 5px no-repeat; } */
/*       nav#pNavi section#outlineList ul li ul {
        margin-bottom: 12px; } */
        nav#pNavi section#outlineList ul li ul li {
          margin-bottom: 0;
          padding-left: 0;
          font-size: 0.75rem; }
          nav#pNavi section#outlineList ul li ul li:first-child {
            background: none; }
    nav#pNavi section#outlineList span a img {
      height: 24px;
      width: auto; }
  nav#pNavi ul#tocCheckbox {
    margin-bottom: 25px;
    width: 260px;
    margin: 0 auto;
    text-align: right;
    font-size: 0; }
    nav#pNavi ul#tocCheckbox li {
      font-size: 0.875rem;
      margin: 0 0 0 0;
      display: inline-block; }
      nav#pNavi ul#tocCheckbox li button {
        width: 60px;
        margin: 0 0 0 0;
        display: inline-block; }
    nav#pNavi ul#tocCheckbox li button {
      padding: 0 0 0 0; }
  nav#pNavi ul#pOutline {
    margin-left: 5px; }
      nav#pNavi div.tableOfContents2 a {
        text-decoration: none;
        color: #636974; }
        nav#pNavi div.tableOfContents2 a[href] {
          color: #000; }
          nav#pNavi div.tableOfContents2 a[href]:hover {
            text-decoration: underline; }

      /* 2021-04-28 目次のレイアウト調整 ここから */
      nav#pNavi #toc > div.tableOfContents2 > div:not([class="tableOfContents2"]) {
        padding-left: 20px !important;
        text-indent: -20px !important;
      }

      nav#pNavi #toc > div.tableOfContents2 > div.tableOfContents2 > div:not([class="tableOfContents2"]) {
        padding-left: 20px !important;
        text-indent: -20px !important;
      }

      nav#pNavi #toc > div.tableOfContents2 > div.tableOfContents2 > div[style="margin-left: 16px;"] {
        padding-left: 0px !important;
        text-indent: 0px !important;
      } 

      nav#pNavi #toc > div.tableOfContents2 > div.tableOfContents2 div[style="margin-left: 16px;"] > div[style="padding-left: 41px; text-indent: -41px;"] {
        padding-left: 20px !important;
        text-indent: -20px !important;
      } 
      
      /* 2021-04-28 目次のレイアウト調整 ここまで */


  nav#pNavi .tabTypeC, nav#pNavi .typeCBox {
    margin: 0 5px; }

@media screen and (max-width: 1024px) {
  nav#pNavi {
    padding-bottom: 50px;
  }
}

/* footer {
  padding: 9px 30px 9px 30px;
  background: #F5F6F8;
  color: #323232;
  position: fixed;
  bottom: 0px;
  width: 100%;
  font-size: 0.75rem; }

#popuUpPage.document footer {
	text-align:center;
}
  #popuUpPage.document footer.allwidth {
    margin-left: 0; }

@media screen and (max-width: 1024px) {
  #popuUpPage.document footer {
    margin-left: 0; } }

@media screen and (max-width: 812px) {
  #popuUpPage.document footer {
    margin-left: 0; } } */


@charset "UTF-8";

/* フッタ設定 */
footer {
  padding: 28px 25px 26px 25px;
  background: #636974;
  text-align: center;
  color: #fff; }
  footer ul {
    margin-bottom: 12px;
    font-size: 0; }
    footer ul li {
      margin-bottom: 0;
      margin-right: 24px;
      display: inline-block;
      font-size: 0; }
      footer ul li:last-child {
        margin-right: 0; }
      footer ul li a {
        font-size: 0.875rem;
        line-height: 0.875rem;
        color: #fff;
        text-decoration: none; }
        footer ul li a:hover {
          text-decoration: underline; }
  footer address {
    font-size: 0.75rem;
    line-height: 0.75rem;
    display: block; }

/*
#popuUpPage.document footer {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0; }
*/
  #popuUpPage.document footer.allwidth {
    margin-left: 0; }
    #popuUpPage.document footer.allwidth address {
      margin-right: 0; }

#popuUpPage.nonDocument footer {
  text-align: center; }

@media screen and (max-width: 812px) {
  #popuUpPage.document footer {
    display: none;
    margin-left: 0;
    padding-bottom: 80px; }
    #popuUpPage.document footer address {
      margin-right: 0; } }
/* フッタ設定 ここまで */


nav#spDocument {
  display: none; }

@media screen and (max-width: 1024px) {
  nav#spDocument {
    width: 100%;
    padding: 12px 0;
    background: #F5F6F8;
    text-align: center;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 500;
    display: block; }
    nav#spDocument #fDownloadFileSet {
      margin: 0 12px 25px 12px;
      padding: 12px;
      text-align: left;
      background: #fff;
      display: none; }
      nav#spDocument #fDownloadFileSet.active {
        display: block; }
      nav#spDocument #fDownloadFileSet ul li {
        margin-bottom: 25px; }
      nav#spDocument #fDownloadFileSet #fDownloadClose {
        width: 30px;
        text-align: center;
        font-size: 1.125rem;
        font-weight: 600;
        display: inline-block;
        position: absolute;
        top: 25px;
        right: 25px; }
    nav#spDocument div#spaceOfdocumentBtn {
      width: 80px;
      position: relative;
      margin-left: 3%;
      display: inline-block; }
    nav#spDocument button.footNav {
      width: 46px;
      height: 46px;
      margin-left: 3%;
      text-indent: -9999px;
      vertical-align: bottom; }
    nav#spDocument #fDownloadBtn {
      background: url(../img/icon/spnav/sp_menu04_off.png) center center no-repeat;
      background-size: 46px auto; }
      nav#spDocument #fDownloadBtn.active {
        background: url(../img/icon/spnav/sp_menu04_on.png) center center no-repeat;
        background-size: 46px auto; }
    nav#spDocument #fTocOutlineBtn {
      background: url(../img/icon/spnav/sp_menu02_off.png) center center no-repeat;
      background-size: 46px auto; }
      nav#spDocument #fTocOutlineBtn.active {
        background: url(../img/icon/spnav/sp_menu02_on.png) center center no-repeat;
        background-size: 46px auto; }
    nav#spDocument #fDocumentBtn {
      width: 80px;
      height: 80px;
      background: #F5F6F8 url(../img/icon/spnav/sp_menu01_off.png) center center no-repeat;
      background-size: 60px auto;
      position: absolute;
      bottom: -17px;
      left: 0;
      right: 0;
      margin: auto;
      border-radius: 50%; }
      nav#spDocument #fDocumentBtn.active {
        background: #F5F6F8 url(../img/icon/spnav/sp_menu01_on.png) center center no-repeat;
        background-size: 60px auto; }
    nav#spDocument #fRelationLinkBtn {
      background: url(../img/icon/spnav/sp_menu03_off.png) center center no-repeat;
      background-size: 46px auto; }
      nav#spDocument #fRelationLinkBtn.active {
        background: url(../img/icon/spnav/sp_menu03_on.png) center center no-repeat;
        background-size: 46px auto; }
    nav#spDocument #fSearchBtn {
      background: url(../img/icon/spnav/sp_menu05_off.png) center center no-repeat;
      background-size: 46px auto; }
      nav#spDocument #fSearchBtn.active {
        background: url(../img/icon/spnav/sp_menu05_on.png) center center no-repeat;
        background-size: 46px auto; } }

h2:not(.popuUpPage) {
  line-height: 2rem;
  border-bottom: 1px solid #D7D7D7;
  border-top: none;
  background-color: #fff;
  font-weight: 600;
  color: #000; }
  h2:not(.popuUpPage) span, h2:not(.popuUpPage) a {
    padding: 25px 80px 20px 80px;
    text-decoration: none;
    color: #323232;
    display: block; }
    h2:not(.popuUpPage) span:hover, h2:not(.popuUpPage) a:hover {
      color: #323232; }

_:-ms-lang(x):focus, button:focus {
  outline: thin dotted invert; }

#contentsWrap {
  min-width: 1200px;
  margin: 25px 0 40px 30px;
  display: flex;
  position: relative; }

@media screen and (max-width: 1024px) {
  #contentsWrap {
    margin: 20px 0; } }

#popuUpPage #contentsWrap {
  min-width: auto;
  margin: 0;
  border-top: 1px solid #D7D7D7; }
  #popuUpPage #contentsWrap #contentsLaw {
    width: calc(100% - 310px);
    float: none;
    padding: 25px 70px 105px 55px;
    border-right: 1px solid #D7D7D7;
    position: relative; }
    #popuUpPage #contentsWrap #contentsLaw.allOpen {
      width: calc(100% - 620px); }
    #popuUpPage #contentsWrap #contentsLaw.allClosed {
      width: 100%; }
    #popuUpPage #contentsWrap #contentsLaw ul.lawDownload {
      position: fixed;
      top: 160px;
      right: 311px; }
      #popuUpPage #contentsWrap #contentsLaw ul.lawDownload.openBtn {
        right: 0; }
      #popuUpPage #contentsWrap #contentsLaw ul.lawDownload li {
        margin-bottom: 12px; }
    #popuUpPage #contentsWrap #contentsLaw button.openClose {
      width: 40px;
      height: 40px;
      border-top: 1px solid #D7D7D7;
      border-bottom: 1px solid #D7D7D7;
      position: fixed;
      top: 200px; }
      #popuUpPage #contentsWrap #contentsLaw button.openClose#tocOutlineBtn {
        text-indent: -9999px;
        background: #F5F6F8 url(../img/svg/arrow_left_gray.svg) 10px 10px no-repeat;
        background-size: auto 20px;
        border-right: 1px solid #D7D7D7;
        border-radius: 0 5px 5px 0;
        left: 310px; }
        #popuUpPage #contentsWrap #contentsLaw button.openClose#tocOutlineBtn.openBtn {
          background: #F5F6F8 url(../img/svg/arrow_right_gray.svg) 10px 10px no-repeat;
          background-size: auto 20px;
          left: 0px; 
          }
      #popuUpPage #contentsWrap #contentsLaw button.openClose#relationLinkBtn {
        text-indent: -9999px;
        background: #F5F6F8 url(../img/arrow_gray_right.png) 12px 13px no-repeat;
        border-left: 1px solid #D7D7D7;
        border-radius: 5px 0 0 5px;
        right: 311px; }
        #popuUpPage #contentsWrap #contentsLaw button.openClose#relationLinkBtn.openBtn {
          background: #F5F6F8 url(../img/icon/icon_relation.png) 3px 6px no-repeat;
          right: 0; }
          #popuUpPage #contentsWrap #contentsLaw button.openClose#relationLinkBtn.openBtn:hover {
            background: #C2CEE7 url(../img/icon/icon_relation.png) 3px 6px no-repeat; }
        #popuUpPage #contentsWrap #contentsLaw button.openClose#relationLinkBtn:hover {
          background: #C2CEE7 url(../img/arrow_gray_right.png) 12px 13px no-repeat; }

/** PDFアイコンからPOPUPで表示 **/
.lawDownload {
    width: 33px;
    text-align: center;
    float: right;
    padding: 1px;
    box-sizing: border-box;
    position: relative; }
.lawDownload.active p {
    display: none; }
.lawDownload.active ul {
    display: block; }
.lawDownload p {
    height: 100%;
    padding-bottom: 0;
    background: #fff url(../img/icon/icon_pdf.png) no-repeat;
    }
.lawDownload p:hover {
    background: #fff url(../img/icon/icon_pdf.png) no-repeat;
    }
.lawDownload p button {
    width: 100%;
    height: 39px;
    box-sizing: border-box;
    font-size: 0.75rem;
    font-weight: 600;
    text-align: center;
    display: block;
    color: #1042A4;
    text-indent: -9999px; }
.lawDownload p button:hover {
    color: #d82a08; }
.lawDownload ul {
    width: 250px;
    margin-top: 2px;
    padding: 3px;
    background: #fff;
    box-shadow: 0px 5px 2px 0 rgba(0, 0, 0, 0.3);
    border: 1px solid #1042A4;
    box-sizing: border-box;
    display: none;
    position: absolute;
    top: -3px;
    right: -1px;
    z-index: 50;
    text-align: center;
    font-size: 0; }
.lawDownload .lawDownloadCloseBtn {
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 51;
	display: none;
    content: url(../img/svg/icon-cancel.svg);
	width: 20px;
	height: 20px;
}
.lawDownload.active .lawDownloadCloseBtn {
	display: block;
}

.lawDownload .lawDownloadCloseBtn button {
    width: 40px;
    height: 40px;
    background: url(../img/svg/icon-cancel.svg) 10px 10px no-repeat;
    background-size: 20px 20px;
    text-align: center;
    font-size: 1.125rem;
    text-indent: -9999px;
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0; }

.lawDownload .lawDownloadCloseBtn button:active {
	background-color: #ccc;
}

.lawDownload .lawDownloadCloseBtn:active {
	background-color: #ccc;
}

.lawDownload ul li {
    margin: 2px 0 2px 15px;
    display: inline-block;
    text-align: center;
    vertical-align: top;
    font-size: 0.75rem;
    line-height: 1rem; }
.lawDownload ul li:first-child {
    margin: 2px 0; }


@media screen and (max-width: 1024px) {
  #popuUpPage #contentsWrap #contentsLaw {
    width: 100%;
    border-right: none;
    padding: 25px 5px 25px 25px;
    display: none; }
    #popuUpPage #contentsWrap #contentsLaw.active {
      width: 100%;
      display: block; } }

#leftNaviSide {
  width: 310px;
  padding-top: 25px;
  background: #fff;
  text-align: center;
  border-right: 1px solid #D7D7D7;
  z-index: 98; /*ALERT-1001*/
  display: none; }
  #leftNaviSide.active {
    display: block; }
  #leftNaviSide #tocOutlineWrap {
    width: 309px;
    height: calc(100% - 67px);
    background: #fff;
    overflow: auto;
    padding-top: 20px;
    position: fixed;
    top: 70px;
    left: 0;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch !important; }

  #leftNaviSide #tocOutlineWrap.hiddenHead {
    height: calc(100% - 67px + 70px);
    top: 0; }
  #leftNaviSide #tocOutlineWrap.showFoot {
    height: calc(100% - 100px);
/*    top: 0; */}
  #leftNaviSide ul {
    font-size: 0; }
    #leftNaviSide ul li {
      font-size: 1rem;
      text-align: left; }
    #leftNaviSide ul#dayOfPromulgation {
      margin: 0 0 10px 12px; }
      #leftNaviSide ul#dayOfPromulgation li {
        font-size: 0.75rem;
        text-align: left; }
    #leftNaviSide .labelLaw {
        text-align: left;
        margin-left:8px;
        margin-bottom: 15px; }
      #leftNaviSide .labelLaw h3 {
        padding: 1px 5px;
        width: 110px;
        display: inline-block; 
        font-size: 0.875rem; 
        margin:0 5px 5px 5px;
        text-align:center;
        }
        #leftNaviSide .labelLaw h3.authFlag {
          margin-top: 1px;
          border-color: #D7D7D7;
          background: #D7D7D7;
          color: #000; }
        #leftNaviSide .labelLaw h3.enforcementFlag {
          margin-top: 1px;
          border-color: #636974;
          background: #636974;
          color: #fff; }
        #leftNaviSide .labelLaw h3.abolitionType {
          margin-top: 1px;
          border-color: #636974;
          background: #636974;
          color: #fff; }
        #leftNaviSide .labelLaw h3.effectFlag {
          margin-top: 1px;
          border-color: #636974;
          background: #636974;
          color: #fff; }
    #leftNaviSide ul#tocTab {
      margin-left: 12px;
      margin-bottom: 12px; }

#relationLinkSide {
  margin-right: 1px;
  height: calc(100% - 200px);
  width: 310px;
  overflow: auto;
  padding: 20px 25px 12px 25px;
  position: fixed;
  top: 70px;
  right: 0;
  display: none; }
  #relationLinkSide.active {
    display: block; }
  #relationLinkSide h3 {
    margin-bottom: 25px;
    padding-bottom: 12px;
    font-size: 1.25rem;
    font-weight: 600;
    border-bottom: 1px solid #F5F6F8; }
  #relationLinkSide ul li {
    padding-bottom: 25px; }
    #relationLinkSide ul li a {
      font-size: 1.125rem; }
      #relationLinkSide ul li a span {
        font-size: 0.75rem; }

@media screen and (max-width: 1024px) {
  #leftNaviSide {
    width: 100%;
    text-align: center;
    border-right: none;
    display: none; }
    #leftNaviSide.active {
      display: block; }
  #leftNaviSide #tocOutlineWrap,
  #relationLinkSide {
    padding-top: 50px;
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #D7D7D7;
    position: static !important; }
  #leftNaviSide #tocOutlineWrap {
    height: auto !important;
    overflow: visible;
    border: none; }
  #relationLinkSide {
    margin-top: 20px;
    border: none;
    display: none; }
    #relationLinkSide.active {
      display: block; } }


@media screen and (max-width: 1024px) {
  #sNavi ul li {
    margin-right: 12px; }
    #sNavi ul li a {
      font-size: 0.75rem; } }

#innerDocument {
  padding-top: 60px; }

@media screen and (max-width: 1024px) {
  #innerDocument {
    display: none; }
    #innerDocument.active {
      padding-top: 50px;
      display: block; } }

#innerDocument section {
  padding-bottom: 10px;
  display: none; }
  #innerDocument section.active {
    display: block; }
    #innerDocument section.active div {
    }
  #innerDocument section.table {
    padding-bottom: 25px; }
    #innerDocument section.table table {
      width: auto;
      border-collapse: collapse; }
      #innerDocument section.table table tr td {
        padding: 5px; }

#toTop _:-ms-lang(x), #toTop button {
  color: #fff; }
  #toTop _:-ms-lang(x):focus, #toTop button:focus {
    outline: thin dotted #000; }

.circleBtn {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  opacity: 0.8;
  position: fixed;
  bottom: 20px;
  cursor: pointer;
  z-index: 100;
  display: inline-block; }
  .circleBtn#toTop {
    right: 20px;
    background: #636974; }
  .circleBtn:hover {
    opacity: 1; }
  .circleBtn button {
    width: 80px;
    height: 80px;
    display: block;
    text-align: center;
    color: #fff; }
    .circleBtn button:hover {
      color: #fff; }

@media screen and (max-width: 1024px) {
  .circleBtn {
    width: 60px;
    height: 60px;
    bottom: 75px; }
    .circleBtn#toTop {
      right: 5px; }
      .circleBtn#toTop.active {
        display: none; }
    .circleBtn button {
      width: 60px;
      height: 60px; }
      .circleBtn button img {
        width: 50%;
        height: auto; } }
.cf:before,
.cf:after {
  content: '';
  display: table; }

.cf:after {
  clear: both; }

.cf {
  zoom: 1; }

.attention {
  color: #CA241E !important; }

.annotation {
  font-size: 0.75rem !important;
  line-height: 1rem !important;
  text-indent: -1em;
  margin-left: 1em; }

.searchLabel.searchLabelView {
  background: #C2CEE7; }

.searchLabel.searchLabelView.active, 
.searchLabel.searchLabelView.sub-active,
.searchLabel.searchLabelView.active *, 
.searchLabel.searchLabelView.sub-active * {
  background: #1042A4;
  color: #fff; }

.searchLabel.searchLabelView.active ruby rt {
  color: #000; }

rt.law-ruby {
  margin-bottom:-3.5px;
  transform: translateY(.3em); }
[data-ruby] {
    position: relative; }
[data-ruby]::before {
    content: attr(data-ruby);
    position: absolute;
    top: -1.5em;
    left: 0;
    right: 0;
    margin: auto;
    font-size: 0.6em; }

.mBottom {
  margin-bottom: 25px; }


@media print {
	#contentsWrap {
	  display: block !important;}
	
  #contentsLaw {
    width: 100% !important;
    border: none !important; }
  #innerDocument {
    width: 100% !important; }
  #toTop {
    display: none; }
  .document #leftNaviSide,
  .document #relationLinkSide,
  .document .lawDownload,
  .document header,
  .document nav,
  .document footer,
  .document button {
    display: none !important; } 

  #TOC a {
    text-decoration: none;
    color: inherit; }
 
 #searchKeyword {
	display: none !important;
	}
 #innerDocument {
		padding-top: 0px !important;
	}
 }

td.col-pad {
  padding:8px; }

/* 編章節款目名の前の余白を少し開ける */
section.Part div.PartTitle {
  margin-top:10px; }

section.Chapter div.ChapterTitle {
  margin-top:10px; }

section.Section div.SectionTitle {
  margin-top:10px; }

section.Subsection div.SubsectionTitle {
  margin-top:10px; }

section.Division div.DivisionTitle {
  margin-top:10px; }

label {
  display: inline; }


.circleBtn {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	opacity: 0.8;
	text-indent: -9999px;
}

.circleBtn#printBtn {
	background-color: #F5F6F8;
	background-image: url(../img/icon/icon_printer.png);
	border: 1px solid #636974;
	top: 180px;
}
.circleBtn#downloadFileBtn {
	background-color: #fff;
	background-image: url(../img/icon/icon_download.png);
	border: 1px solid #1042A4;
	top: 110px;
}
.circleBtn#printBtn, .circleBtn#downloadFileBtn {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 30px 30px;
	display: block;
	position: fixed;
	right: 5px;
	z-index: 500;
	background-size: 34px 34px;
}


@media screen and (max-width: 1024px) {
  .xmlFile,
  .htmlFile,
  #printBtn {
    display: none !important; } 
}

@media screen and (max-width: 1024px) {
  .circleBtn#downloadFileBtn {
    top: auto;
    bottom: 50px; }
  .circleBtn#printBtn {
    display: none; } 
}

#downloadFileBtn.hide {
	display: none;
}


#downloadFile {
	padding: 12px 50px 12px 12px;
	background-color: #fff;
	text-align: right;
	position: fixed;
	border: 1px solid #1042A4;
	border-radius: 5px;
	right: 5px;
	top: 100px;
	z-index: 510;
	display: none;
	box-shadow: 0 0 1px 2px rgba(0, 0, 0, 0.1);
}
  #downloadFile.active {
    display: inline-block; }
  #downloadFile ul li {
    margin: 2px 0px 2px 15px;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    line-height: 1rem; }
    #downloadFile ul li button {
      width: 40px;
      margin: 0 auto;
      display: block;
      text-indent: -9999px; }
  #downloadFile #downloadFileCloseBtn {
    width: 40px;
    height: 40px;
    background-image: url(../img/svg/icon-cancel.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 20px auto;
    text-align: center;
    font-size: 1.125rem;
    text-indent: -9999px;
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0; }

@media screen and (max-width: 1024px) {
  #downloadFile {
    margin: 0 5px;
    padding: 12px 25px 12px 12px;
    top: auto;
    right: 0;
    bottom: 50px; 
	text-align:left;
	width: 97%;}
    #downloadFile.active {
      display: block; }
}
@media screen and (max-width: 812px) {
  nav#gNavi {
    display: none; }
  nav#spTab {
    width: 100%;
    background: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 500;
    display: block;
    box-shadow: 0 0 1px 2px rgba(0, 0, 0, 0.1); } 
}


#downloadFile li button, #downloadFile li a,
.lawDownload li button,
.lawDownload li a {
  width: 40px;
  height: 40px;
  text-indent: -9999px; }

#downloadFile li.xmlFile button, #downloadFile li.xmlFile a,
.lawDownload li.xmlFile button,
.lawDownload li.xmlFile a {
	background-image: url(../img/icon/icon_xml.png);
        background-position: center top;
        background-repeat: no-repeat;
	background-size: 35px 35px;
	display: inline-block;
	width: 40px;
	height: 40px;}

#downloadFile li.htmlFile button, #downloadFile li.htmlFile a,
.lawDownload li.htmlFile button,
.lawDownload li.htmlFile a {
	background-image: url(../img/icon/icon_html.png);
        background-position: center top;
        background-repeat: no-repeat;
	background-size: 35px 35px;
	display: inline-block;
	width: 40px;
	height: 40px;
  }

#downloadFile li.rtfFile button, #downloadFile li.rtfFile a,
.lawDownload li.rtfFile button,
.lawDownload li.rtfFile a {
	background-image: url(../img/icon/icon_rtf.png);
        background-position: center top;
        background-repeat: no-repeat;
	background-size: 35px 35px;
	display: inline-block;
	width: 40px;
	height: 40px;
}

#downloadFile li.pdfFile button, #downloadFile li.pdfFile a,
.lawDownload li.pdfFile button,
.lawDownload li.pdfFile a {
	background-image: url(../img/icon/icon_pdf.png);
        background-position: center top;
        background-repeat: no-repeat;
	background-size: 35px 35px;
	display: inline-block;
	width: 40px;
	height: 40px;

}



nav#spTab {
  display: none; }


@media screen and (max-width: 1024px) {
  #downloadFile {
    margin: 0 5px;
    padding: 12px 25px 12px 12px;
    top: auto;
    right: 0;
    bottom: 50px; }
    #downloadFile.active {
      display: block; }
  nav#gNavi {
    display: none; }
  nav#spTab {
    width: 100%;
    background: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 500;
    display: block;
    box-shadow: 0 0 1px 2px rgba(0, 0, 0, 0.1); } }

@media screen and (min-width: 1025px) {
	.tabBoxForTypeC {
		padding-right: 15px;
		padding-left: 15px;
	}
}



/* ローディングアイコン */
.nowloading {
  height: calc(36px + 30px);
  padding-top: 6px;
  text-align: center; }

.nowloading span.loading {
    text-align: center;
    font-size: 1.2em;
    position: relative;
    display: inline-block;

	/* 新しいローディングアイコン(cssアニメ版) */
    width: 8px;
    height: 8px;
    border-radius: 50%;
    text-indent: -9999em;
    -webkit-animation: load5 1.1s infinite ease;
    animation: load5 1.1s infinite ease;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    top: 20px;
}
    .nowloading span.loading span {
        position: absolute;
        display: inline-block;
        left: 0;
        top: 100%;
        width: 100%;
        
        /* gifのローディングアイコンの場合
		height:30px;
		background: url(../img/loading_white.gif) no-repeat center;
		*/
    }

.hide {
	display: none !important;
	}


.fig_pdf_icon {
	background-image: url(../img/icon/icon_pdf.png);
	background-size: 35px 35px;
	background-repeat: no-repeat;
	background-position: center center;
	display: inline-block;
	width: 40px;
	height: 40px;
}



/* 制定文 */
#innerDocument section.active.EnactStatement div._div_EnactStatement {
	text-indent: 1em; 
	font-size:100%;
}

/* 目次前文ラベル */
#innerDocument section.active div._div_TOCPreambleLabel {
	margin-left: 1em;
}

/* 附則別表 */
#innerDocument section.active.SupplProvisionAppdxTable {
	padding-bottom: 10px;
	margin-top: 0px;
}

/* 算式番号 */
#innerDocument section.active div._div_ArithFormulaNum span._span_ArithFormulaNum {
	font-weight:600;
}

/* 表項目名 */
#innerDocument section.active div._div_TableStructTitle {
	margin-left: 1em;
}

/* 表 */
#innerDocument section.active table.Table {
	margin-left: 1em;
}
#innerDocument section.active div._div_ArticleTitle table.Table {
	margin-left: 0em;
}

/* 図項目名 */
#innerDocument section.active div._div_FigStructTitle {
	margin-left: 0em;
	text-indent: 0em;
}
/* 図項目名(Paragraphの下) */
#innerDocument section.active.Paragraph div._div_FigStructTitle {
	margin-left: 1em;
	text-indent: 0em;
}

/* 図(画像ファイルなし) */
#innerDocument section.active span._span_Fig_noImg {
	display: inline-block;
	margin-left: 1em;
}

/* 附則ラベル */
#innerDocument section.active.SupplProvision div._div_SupplProvisionLabel {
	margin-bottom:10px;
	margin-left: 3em; 
	font-weight: bold;
}

/* 附則付録 */
#innerDocument section.active.SupplProvisionAppdx {
}


/* ハイライト表示操作パネル */

#searchKeyword {
  width: calc( 100% - 310px) !important;
  display: table;
  table-layout: fixed;
  margin-left: 310px;
  margin-bottom: 12px;
  padding: 5px;
  background: #E5EBF5;
  vertical-align: top;
  position: fixed;
  left: 0;
  top: 65px; }
  #searchKeyword.wide {
    width: 100% !important;
    margin-left: 0; }
  #searchKeyword.active {
    position: fixed;
    left: 0;
    top: 0; }
#searchKeyword p.searchKeywordHeader {
	width: 135px;
	margin-bottom: 0;
	text-indent: 5px;
	display: table-cell;
	vertical-align: bottom;
	vertical-align: top;
	font-weight: 600;
	padding-bottom: 0;
}
  #searchKeyword ul {
    width: calc( 100% - 330px);
    text-align: left;
    display: inline-block;
    vertical-align: top;
    font-size: 0; }
    #searchKeyword ul li {
      min-width: 50px;
      margin-right: 12px;
      display: inline-block;
      vertical-align: top;
      font-size: 1rem; }
      #searchKeyword ul li input {
        vertical-align: top; }
  #searchKeyword #searchKeywordBtn {
    width: 220px;
    padding: 0 5px;
    text-align: right;
    display: table-cell;
    vertical-align: top; }
    #searchKeyword #searchKeywordBtn a, #searchKeyword #searchKeywordBtn button {
      margin-right: 12px;
      vertical-align: top; }
      #searchKeyword #searchKeywordBtn a#prev, #searchKeyword #searchKeywordBtn button#prev {
        padding-left: 20px;
        background-image: url(../img/svg/fr.svg);
        background-position: left 5px;
        background-repeat: no-repeat;
        background-size: 14px auto; }
      #searchKeyword #searchKeywordBtn a#next, #searchKeyword #searchKeywordBtn button#next {
        padding-right: 20px;
        background-image: url(../img/svg/ff.svg);
        background-position: right 2px top 5px;
        background-repeat: no-repeat;
        background-size: 14px auto;
        text-align: right; }

/* ハイライト表示操作パネル(2020-06-25)ここまで */


.tabTypeA ul li.fullTab, .tabTypeB ul li.fullTab, .tabTypeC ul li.fullTab {
	width: 50%;
	min-width: auto;
}


.tabTypeA ul, .tabTypeB ul, .tabTypeC ul {
	display: flex;
}

#leftNaviSide ul#tocTab li {
	min-width: 33%;
}

nav#pNavi dl.details {
	padding: 12px;
}

dl.details dt.title {
	font-weight:600;
}

#leftNaviSide ul li {
	font-size: 1rem;
	text-align: left;
}

nav#pNavi dl.details dd {
	margin-bottom: 12px;
}



#toc a.opener img {
	width: 16px;
	height: 16px;
	transform: none !important;
}

#toc a.opener .toc_img {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0;
	padding: 0;
	background-repeat: no-repeat;
	margin-right: 5px;
	background-position-x: right;
}

#toc a.opener .toc_opened {
	background-image: url(../img/svg/arrow_top_gray.svg);
	transform: translateY(7px) translateX(2px);
}

#toc a.opener .toc_closed {
	background-image: url(../img/svg/arrow_bottom_gray.svg);
	transform: translateY(7px) translateX(2px);
}

#leftNaviSide ul#dayOfPromulgation li #effectiveDate {
	margin-left: 5px;
	font-size: 0.75rem;
}


nav#pNavi section#outlineList ul.historyList {
	position: relative;
}

nav#pNavi section#outlineList ul.historyList li {
	position: relative;
}

nav#pNavi section#outlineList ul.historyList li.title::before {
    height: 14px;
    width: 14px;
    content: ' ';
    font-size: 14px;
    position: absolute;
    top: 0;
    left: 0;
}

nav#pNavi section#outlineList ul.historyList li.active::before {
    height: 14px;
    width: 14px;
    content: '\025b6';
    content: '■';
    font-size: 14px;
    color: #4f71b3;
    position: absolute;
    top: 0;
    left: 0;
}

nav#pNavi section#outlineList ul.historyList li ul.historySubList li {
	margin-top: 0;
	margin-bottom: 0;
	padding-bottom: 0;
	padding-left: 0;
	border-bottom: none;
	font-size: 0.75rem;
}

@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  body {
    display: block !important;
  }
}

#hamburgerMenu #hamburgerMenuScroll .egovui-nav-sp-footer {
	display: none; }


/* ALERT-923 目次附則の下の○○Titleの位置 */
#TOC ._div_TOCSupplProvision ~ ._div_TOCPart
,#TOC ._div_TOCSupplProvision ~ ._div_TOCChapter
,#TOC ._div_TOCSupplProvision ~ ._div_TOCSection
,#TOC ._div_TOCSupplProvision ~ ._div_TOCSubsection
,#TOC ._div_TOCSupplProvision ~ ._div_TOCDivision
,#TOC ._div_TOCSupplProvision ~ ._div_TOCArticle 
{
  text-indent: 1em;
}

