@charset "UTF-8";
a.btn-default {
  text-decoration:none !important;
}
/*$pc: 1024px; // PC*/
@media (max-width: 768px) {
  .btn-default {
    width: 85% !important;
    font-size:1rem; } }
@media (min-width: 769px) and (max-width: 1260px) {
  .btn-default {
    width: 100% !important; } }
@media (min-width: 1260px) {
  .btn-default {
    width: 95% !important; } }
.to-top {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  right: 20px;
  bottom: 15px;
  font-size: 75%;
  font-weight: bold;
  color: white;
  background: #0055A7;
  cursor: pointer;
  box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.5);
  padding-top: 20px;
  transition-duration: 0.3s;
  /*変化に掛かる時間*/
    z-index: 100;}
  .to-top:hover {
    transform: scale(1.05);
    /*画像の拡大率*/
    transition-duration: 0.3s;
    /*変化に掛かる時間*/ }
  .to-top a {
    color: white; }
  .to-top:after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 10px;
    width: 10px;
    height: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(-45deg) translateX(-66%);
    transform: rotate(-45deg) translateX(-66%); }

body {
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }
  @media (max-width: 480px) {
    body {
      font-size: 95%; } }
  @media (max-width: 768px) {
    body {
      font-size: 95%; } }
  @media (min-width: 769px) and (max-width: 1260px) {
    body {
      font-size: 95%; } }
  @media (min-width: 1260px) {
    body {
      font-size: 105%; } }

.subpage h1 {
  font-size: 130%;
  line-height: 2rem;
  font-weight: bold;
  margin-top: 1rem; }
    @media (max-width: 768px) {
      .subpage h1 {
        margin-top: 0;
        line-height:1.5rem; } }
  .subpage h1 small {
    display: inline-block;
    padding-top: 10px;
    font-size: 85%;
    line-height:1.1rem; }
    @media (min-width: 1260px) {
      .subpage h1 small {
        width: 90%; } }
    @media (min-width: 769px) and (max-width: 1260px) {
      .subpage h1 small {
        width: 90%; } }
    @media (max-width: 768px) {
      .subpage h1 small {
        width: 100%; } }
  .subpage h1 .h1-tag {
    border: 0.5px solid #1A1311;
    padding: 5px 5px 2px 5px;
    font-size: 75%;
    margin-right: 0.5rem; }
    .subpage h1 .h1-tag.notice {
      background-color: #CCC;
      color: black; }
    .subpage h1 .h1-tag.opencall {
      background-color: #333333;
      color: white; }
    .subpage h1 .h1-tag.decide {
      background-color: #1A1311;
      color: white; }

.subpage h2 {
  font-weight: bold;
  border-top: 2.5px solid #0055A7;
  box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.3);
  font-size: 102%;
  padding: 0.8rem 1.2rem 0.7rem;
  margin-top: 0.7rem;
  margin-bottom: 0.7rem;
  clear: both; }
  .subpage h2 a {
    text-decoration: underline !important; }
    .subpage h2 a:hover {
      cursor: pointer; }
.subpage h3 {
  font-weight: bold;
  border-left: 2.5px solid #0055A7;
  font-size: 100%;
  padding: 0.5rem 1.2rem;
  margin-top: 1rem;
  margin-bottom: 0.8rem;
  clear: both; }
.subpage h4 {
  font-weight: bold;
  font-size: 100%;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  clear: both; }
.subpage h5 {
  font-size: 100%;
  clear: both;
  font-weight: bold; }
.subpage h6 {
  clear: both; }
.subpage p {
  margin: 0 0 0.5rem 1rem;
  /* font-size: 95%;*/ }
@media screen and (max-width:768px) {
  .subpage p {
    margin: 0 0 0.5rem 0.5rem;}
}

@media screen and (max-width:768px) {
  .subpage img {
    width:100%;
    max-width: 100%; }
}
  .subpage img.rightPos {
    max-width: 50% !important; }
  .subpage img.leftPos {
    max-width: 50% !important; }
.subpage .overview {
  background: #e9ecef;
  padding: 1.5rem;
  margin: 1rem 0;
  font-weight: 300; }
  .subpage .overview p {
    margin: 0; }
.subpage table {
  width: 100% !important;
  margin: 0 auto 1.5rem; }
  /* 0817 */
  .subpage table tr th {
    white-space: nowrap;
  }
  @media (max-width: 768px) {
    .subpage table {
      font-size: 75%;
      margin-left:0 !important;
      margin-right:0 !important;} }
  .subpage table tr a {
    text-decoration: underline; }
  .subpage table tr th {
    border: 1px solid #CCC;
    padding: 0.2rem 0.6rem;
    background: #0055A7;
    color: white;
    font-size: 95%;
    font-weight: normal; }
/* 0806 */
  @media (max-width: 420px) {
    .subpage table tr th {
      font-size: 75%;
      padding: 0.2rem;}
    .subpage table tr td {
      padding: 0.2rem;}
}
/* 0722 */
.subpage table tr th a {
    color:white;}
    .subpage table tr th.th-row {
      /* background: #CCC !important; */
      /* color: black; */
      /* border: 1px solid #333333; */ }
  .subpage table tr td {
    border: 1px solid #CCC;  /*  20210624 inset->solid  */
    padding: 0.2rem 0.4rem;
    font-size: 90%;
    font-weight: normal; }
@media screen and (min-width:1261px) {
  .subpage table tr td {
    font-size: 80%;}
}
    .subpage table tr td p {
      margin: 0;
     /*  0808 */
      font-size;100%;
      text-align: inherit;}
    .subpage table tr td img {
      padding-bottom: 5px;
      margin-left: 5px;
      height:auto !important }
  .subpage table caption {
    padding-top: 0;
    padding-bottom: 0;
    text-align: left;
    caption-side: top;
    color: #1A1311;
    font-weight: bold; }
/* 0816 */
  caption.hidden {
      display: none;
  }
  .subpage table ul {
    padding-inline-start: 0px;
    list-style-type: none;
    margin-bottom:0;}
.subpage .imgBlock {
  display: inline;
  text-align: center;
  margin-bottom: 5px;
  padding: 0 10px; }
  .subpage .imgBlock img {
    clear: both;
    display: block;
    margin: 5px auto; }
.subpage .relevant {
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-right: 1rem;
  border: 3px solid #0055A7;
  clear:both;
  font-size: 0.9rem; }
@media screen and (max-width:768px) {
  .subpage .relevant {
    font-size: 0.8rem; }
}
  .subpage .relevant h2 {
    font-weight: bold;
    border-top: none;
    box-shadow: none;
    font-size: 100%;
    padding: 0;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem; }
  .subpage .relevant .relevant_page {
    background: #0055A7;
    color: white;
    margin-top: 0;
    padding: 0rem 2rem;
    display: inline-block;
    border-bottom: 3px solid #0055A7;
    border-right: 3px solid #0055A7; }
  .subpage .relevant .relevant_field h5 {
    margin: 1rem; }
  .subpage .relevant .relevant_field dl dt {
    margin-bottom: 0.5rem; }
  .subpage .relevant .relevant_field dl dd {
    margin-bottom: 0;
/*    background: url(/content/100063065.png);*/
/*    background-repeat: no-repeat !important;*/
/*    background-size: 18px !important;*/
/*    background-position: left 0.4rem !important;*/
    padding: 0.25rem 0 !important;
/*    padding-left: 24px !important;*/
}
  .subpage .relevant .relevant_indexs {
    list-style-type: none;
    text-align: center;
    margin: auto;
    margin-bottom: 2rem; }
    .subpage .relevant .relevant_indexs .relevant_index a {
      font-weight: bold;
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center;
      width: 85%;
      margin: 0.5rem 2rem;
      padding: 0.1rem 1rem;
      color: white;
      background: #0055A7; }
    .subpage .relevant .relevant_indexs .relevant_index a:focus {
      outline:2px solid #000;
    }

.subpage .sub-visual {
  position: relative; }
  .subpage .sub-visual img {
    height: 165px;
    width: 100%;
    object-fit: cover; }
  .subpage .sub-visual .secondary-title {
    display: inline-block;
    background: -moz-linear-gradient(left, black 50%, rgba(0, 0, 0, 0));
    background: -webkit-linear-gradient(left, black 50%, rgba(0, 0, 0, 0));
    background: linear-gradient(to right, black 50%, rgba(0, 0, 0, 0));
    width: 70%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 30px; }
    .subpage .sub-visual .secondary-title h1 {
      color: white;
      padding: 0.2% 1.5rem;
      font-size: 130%; }
.subpage .secondary-navs {
  margin-top: 0px;
  margin-left: auto;
  margin-right: auto;
  width: 95%; }
  .subpage .secondary-navs .secondary-nav {
    width: 100%;
    padding-right: 1%;
    padding-left: 1%; }
.subpage .secondary-cards {
  margin: 0 10px 2rem 10px; }
  .subpage .secondary-cards .secondary-card {
    border: none;
    padding: 5px;
    margin-right: 0 !important;
    margin-left: 0 !important; }
    .subpage .secondary-cards .secondary-card .card {
      border: 1px solid #CCC;
      box-shadow: 3px 5px 3px #ddd;
      text-decoration: none;
      margin-bottom: 2rem;
      transition-duration: 0.3s;
      /*変化に掛かる時間*/ }
      .subpage .secondary-cards .secondary-card .card:hover {
        transform: scale(1.05);
        /*画像の拡大率*/
        transition-duration: 0.3s;
        /*変化に掛かる時間*/ }
      .subpage .secondary-cards .secondary-card .card .card-body {
        color: black;
        text-align: left;
        padding: 0 !important; }
        .subpage .secondary-cards .secondary-card .card .card-body .card-photo img {
          width: 100%;
          /*max-height: 150px;*/
          margin: 0%;
          object-fit: cover; }
        .subpage .secondary-cards .secondary-card .card .card-body .card-title {
          margin: 3% 2% 3% 2%;
          display: inline-block;
          position: relative;
          text-align: left;
          font-size: 84%;
          font-weight: bold;}
        .subpage .secondary-cards .secondary-card .card .card-body .card-text {
          margin: auto 2% auto 2%;
          display: inline-block;
          font-size: 75%;
          text-align: left;}
        .subpage .secondary-cards.ugoki .secondary-card .card .card-body .card-title {
          margin: 3% 2% 2rem 2%;
          display: inline-block;
          position: relative;
          text-align: left;
          font-size: 84%;
          font-weight: bold;
          padding-bottom: 1rem;/* 下固定 */ }
        .subpage .secondary-cards.ugoki .secondary-card .card .card-body .card-text {
          margin: auto 2% auto 2%;
          display: inline-block;
          font-size: 90%;
          text-align: left;
          position:absolute;/* 下固定 */
          left:0;
          bottom:0}
.subpage .detail-title {
  border-bottom: 11px solid #0055A7;
  margin-bottom: 1rem; }
    @media (max-width: 768px) {
    .subpage .detail-title {
      border-bottom: 5px solid #0055A7;}
   }
  .subpage .detail-title .detail-sign {
    margin-bottom: 0; }
    .subpage .detail-title .detail-sign p {
      font-size: 84%; }
  .subpage .detail-title .detail-icons {
    margin-bottom: 5px;
    text-align: right;
    padding-right: 0; }
    @media (min-width: 1260px) {
      .subpage .detail-title .detail-icons {
        margin-top: -40px; } }
    @media (min-width: 769px) and (max-width: 1260px) {
      .subpage .detail-title .detail-icons {
        margin-top: -40px; } }
    @media (max-width: 768px) {
      .subpage .detail-title .detail-icons {
        margin-top: -13px; } }
    .subpage .detail-title .detail-icons .detail-icon {
      padding-top: 0px;
      padding-right: 0px;
      padding-left: 10px;
      display: inline-block;
      list-style-type: none;
      border-bottom: none; }
      .subpage .detail-title .detail-icons .detail-icon img {
        height: 1.5rem; }

/*パンくずリスト*/
.breadcrumb {
  margin: 1rem 1rem 0 1rem;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  list-style: none;
  background: none; }
  .breadcrumb li {
    display: inline;
    /*横に並ぶように*/
    list-style: none;
    font-size: 70%;
    font-weight: normal;
    /*太字*/ }
    .breadcrumb li:after {
      /* >を表示*/
      content: '>';
      padding: 0 0.2em;
      color: #555; }
    .breadcrumb li:last-child:after {
      content: ''; }
    .breadcrumb li a {
      color: #1A1311;
      /*色*/ }
      .breadcrumb li a:hover {
        text-decoration: underline; }
@media screen and (max-width:768px) {
  .breadcrumb {
    margin: 0;
  }
}
.detail-search small {
  display: block;
  text-align: right; }
.detail-search .detail-search-main {
  font-weight: bold;
  border-top: 2.5px solid #0055A7;
  box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.1);
  padding: 0.8rem 0.5rem 0.7rem;
  margin-top: 3rem; }
  .detail-search .detail-search-main .key-sub {
    background: #0055A7;
    color: white; }
  .detail-search .detail-search-main .key-sub:focus{
  border:solid 3px black;
}
  .detail-search .detail-search-main p {
    display: inline-block;
    margin: 0 !important;
    padding: 0 0rem 0 0; }
    .detail-search .detail-search-main p span {
      padding: 0 0rem 0 0;
      font-size: 75%; }
  .detail-search .detail-search-main .key-field {
    display: inline-block;
    padding: 0 1rem 0 0; }
    @media (min-width: 769px) and (max-width: 1260px) {
      .detail-search .detail-search-main .key-field {
        width: 40%; } }
    @media (max-width: 768px) {
      .detail-search .detail-search-main .key-field {
        width: 70%; } }
  .detail-search .detail-search-main .key-details {
    bottom: 2px;
    left: 500px;
    display: inline-block; }
    .detail-search .detail-search-main .key-details .detail {
      height: 20px;
      margin-left: 0.5rem;
      display: inline-block;
      justify-content: center;
      align-items: center;
      padding: 0 0.5rem 0 0;
      font-size: 75%; }
      .detail-search .detail-search-main .key-details .detail a {
        cursor: pointer;
        position: relative;
        margin-left: 15px; }
        .detail-search .detail-search-main .key-details .detail a:hover {
          color: #0055A7;
          text-decoration: underline; }
        .detail-search .detail-search-main .key-details .detail a:before {
          content: "";
          /*before疑似要素のcontent*/
          display: block;
          /*ブロック化*/
          width: 10px;
          /*幅と高さを100%に*/
          height: 3px;
          background: #0055A7;
          position: absolute;
          top: 50%;
          left: -15.5px;
          transform: translateY(-50%) rotate(0deg); }
        .detail-search .detail-search-main .key-details .detail a:after {
          position: absolute;
          content: "";
          /*before疑似要素のcontent*/
          display: block;
          /*ブロック化*/
          width: 3px;
          /*幅と高さを100%に*/
          height: 10px;
          left: -12px;
          top: 50%;
          transform: translateY(-50%) rotate(0deg);
          transition-duration: 0.3s;
          background: #0055A7;
          opacity: 1; }
      .detail-search .detail-search-main .key-details .detail.open a:before {
        transform: translateY(-50%) rotate(180deg);
        transition-duration: 0.3s; }
      .detail-search .detail-search-main .key-details .detail.open a:after {
        transform: translateY(-50%) rotate(180deg);
        transition-duration: 0.3s;
        opacity: 0;
        /*ブロック化*/ }
    .detail-search .detail-search-main .key-details .reset {
      height: 20px;
      margin-left: 0.5rem;
      padding: 0 0 0 0;
      font-size: 75%;
      display: inline-block; }
      .detail-search .detail-search-main .key-details .reset a {
        cursor: pointer;
        position: relative;
        margin-left: 15px; }
        .detail-search .detail-search-main .key-details .reset a:hover {
          color: #0055A7;
          text-decoration: underline; }
        .detail-search .detail-search-main .key-details .reset a:before {
          content: "";
          /*before疑似要素のcontent*/
          display: block;
          /*ブロック化*/
          width: 10px;
          /*幅と高さを100%に*/
          height: 3px;
          /*90度回転。回転の基準点はデフォルトで中心なので指定しない*/
          /*色を変えたのはサンプルとしての分かり易さのため*/
          background: #5050c8;
          position: absolute;
          top: 50%;
          left: -15.5px;
          transform: translateY(-50%) rotate(45deg); }
        .detail-search .detail-search-main .key-details .reset a:after {
          position: absolute;
          content: "";
          /*before疑似要素のcontent*/
          display: block;
          /*ブロック化*/
          width: 3px;
          /*幅と高さを100%に*/
          height: 10px;
          left: -12px;
          top: 50%;
          transform: translateY(-50%) rotate(45deg);
          /*色を変えたのはサンプルとしての分かり易さのため*/
          background: #5050c8; }
.detail-search .detail-search-detail {
  visibility: hidden;
  display: block;
  padding-bottom: 1rem;
  border-bottom: 0.5px solid #333333;
  height: 0;
  opacity: 0;
  margin-top: 0rem; }
  .detail-search .detail-search-detail.active {
    margin-top: 1rem;
    height: 100%;
    visibility: visible !important;
    transition-duration: 0.3s;
    /*変化に掛かる時間*/
    opacity: 1; }
  .detail-search .detail-search-detail label {
    width: 25% !important;
    margin-right: 0%; }
    .detail-search .detail-search-detail label.radio {
      width: auto !important;
      margin-right: 10px; }
  .detail-search .detail-search-detail input {
    vertical-align: top; }
  .detail-search .detail-search-detail dl dt {
    display: inline-block; }
  .detail-search .detail-search-detail dl dd {
    display: inline-block; }

.detail-link .link-banner {
  margin-left: 0px; }

.search-table {
  margin-top: 0rem;
}
.search-table thead {
  background: #0055A7;
  color: white;
  font-size: 84%;
}
.search-table thead th {
  text-align: center;
  vertical-align: middle;
}
.subpage .search-table table tbody tr th {
  background: white !important;
  color: black;
  font-size: 84%;
  text-align: center;
  vertical-align: middle;
}
.search-table tbody tr td {
  font-size: 84%;
  vertical-align: middle;
}
@media screen and (max-width:769px) {
	.search-table thead th {
		display: none;}
	.subpage .search-table table tbody tr ,
	.subpage .search-table table tbody tr td,
	.subpage .search-table table tbody tr th{
		display: block;
		width:100%;
		position: relative;
		border: none;
		font-size: 100%;
	}
	.subpage .search-table table tbody tr th{
		background: #0055A7 !important;
		color: white !important;
		margin:0.5rem 0 !important;
	}
	.subpage .search-table table tbody tr td {
		white-space: normal !important;
		padding-left: 4rem;
		min-height:1.5rem;
	}
	.subpage .search-table table tbody tr td dl.field_list {
		margin-top:0;
	}
	.subpage .search-table table tbody tr td dl.field_list dt,
	.subpage .search-table table tbody tr td dl.field_list dd {
		display: inline;
		background: none !important;
		color:#333;
		border:none;
		font-size:100%;
		white-space: normal;
	}
	.subpage .search-table table tbody tr td.text-center {
		text-align:left !important;
	}
	.subpage .search-table table tbody tr td:before {
		text-align:center!important;
		content: attr(data-label);
		float: left;
		font-weight: bold;
		text-indent: -4rem;
		text-align: center;
	}
	.subpage .search-table table tbody tr td img {
		width:auto !important;
	}
}
.search-table thead th a {
  color: #fff;
}
.search-table thead th.w-5 {
  width: 5rem;
  white-space: nowrap;
}
.search-table thead th.w-10 {
  width: 10rem;
  white-space: nowrap;
}
.search-table thead th.w-bunya {
  width: 12rem;
  white-space: nowrap;
}
.search-table thead th.w-20 {
  width: 20rem;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .search-table.table-responsive tbody tr th,
  .search-table.table-responsive tbody tr td,
  .search-table.table-responsive tbody tr td dl.field_list dd {
    white-space: nowrap; } }
.jigyo-technology dd {
  margin-top: 1rem;
  border: none !important; }
  .jigyo-technology dd ul {
    text-align: left; }

.second-topics .topics-table {
  display: block;
  margin: 0 auto;
  width: 90%; }
.second-topics .secondary-cards {
  display: block;
  margin: 0 auto;
  width: 90%; }
  .second-topics .secondary-cards .row .secondary-card .card .card-body dl .card-photo img {
    max-width: 80% !important; }

.images-box {
  letter-spacing: -4px;
  width: 100%;
  padding: 10px 7%;
  text-align: center; }
  .images-box .image {
    width: 48%;
    height: auto;
    display: inline-block;
    letter-spacing: normal; }
    .images-box .image:nth-child(n+2) {
      margin-left: 0.5%; }

/*事業一覧*/
.projectlist table {
  margin-bottom: 0; }
  .projectlist table tbody {
    margin-top: 1rem;
    display: none; }
    .projectlist table tbody.active {
      display: block; }
  .projectlist table .projectlist-caption {
    cursor: pointer;
    position: relative;
    padding-left: 15px;
    border-bottom: 1px solid; }
    .projectlist table .projectlist-caption:hover {
      color: #0055A7; }
    .projectlist table .projectlist-caption:before {
      content: "";
      /*before疑似要素のcontent*/
      display: block;
      /*ブロック化*/
      width: 10px;
      /*幅と高さを100%に*/
      height: 3px;
      background: #0055A7;
      position: absolute;
      top: 50%;
      left: -0.5px;
      transform: translateY(-50%) rotate(0deg); }
    .projectlist table .projectlist-caption:after {
      position: absolute;
      content: "";
      /*before疑似要素のcontent*/
      display: block;
      /*ブロック化*/
      width: 3px;
      /*幅と高さを100%に*/
      height: 10px;
      left: 3px;
      top: 50%;
      transform: translateY(-50%) rotate(0deg);
      transition-duration: 0.3s;
      background: #0055A7;
      opacity: 1; }
    .projectlist table .projectlist-caption.active:before {
      transform: translateY(-50%) rotate(180deg);
      transition-duration: 0.3s; }
    .projectlist table .projectlist-caption.active:after {
      transform: translateY(-50%) rotate(180deg);
      transition-duration: 0.3s;
      opacity: 0;
      /*ブロック化*/ }

.panflet-list .row .panflet table {
  border: 2px solid #CCC;}
  .panflet-list .row .panflet table tr td {
    border: none;
    font-size:100% !important;  }
  .panflet-list .row .panflet table tr td.thum {
    padding: 15px;
    width:60px; }
  .panflet-list .row .panflet table tr td.title {
    padding: 15px 5px 15px 0;
    position:relative;}
  .panflet-list .row .panflet table tr td.title ul {
    padding:0;
  }
    .panflet-list .row .panflet table tr td.cellGray {
      background: #CCC; }
    .panflet-list .row .panflet table tr td .lnkLst {
      margin: 0;
      list-style-type: none !important;
      padding: 0; }
.panflet-list .row .panflet table .zaiko {
  text-align:right;
  font-size:0.7rem;
   position:absolute;
   right:5px;
   top:2px; }
.panflet-list .row .panflet table .filesize {
  font-size:0.7rem;
  vertical-align: bottom;
}
@media screen and (max-width:768px) {
  .panflet-list .row .panflet table tr td.title {
    font-size:110%}
}
.overview.pam-lead {
  font-size:0.9rem;
}
.overview.pam-lead .viewer a {
  font-size:90%;  
}

/* 0722 */
.viewer {
  display: block;
  margin:1rem auto;
  background: black;
  border-radius: 8px;
  width:190px;}
  .viewer a {
    display:block;
    padding: 6px 0px 6px 20px;
    color: white;
    background: url("/content/100063069.png") no-repeat 10px 50%;
    font-weight:bold;
    text-align:center;
    font-size: 70%;}
 .viewer a:focus{
    outline: 1px solid #000;}

.panflet-page .panflet-title .title {
  list-style-type: none; }
.panflet-page .panflet-title .date {
  list-style-type: none;
  font-size: 84%; }
.panflet-page .panflet-title .float-left .title {
  width:34rem;}
@media screen and (max-width: 768px) {
  .panflet-page .panflet-title .float-left.mr-5 {
    width:80%;
    margin-right:1% !important;}
  .panflet-page .panflet-title .float-left .title {
    width:100%;}
  .panflet-page .panflet-title .float-left ul{
    padding-left:0;}
  .panflet-page .panflet-title .float-left img{
    width:auto;
    float:right;}
}
/* btn-link */
.btn-link {
  text-align: center;
  margin: 0 auto;
  clear: both;}
  .btn-link .btn-default {
    width: auto !important; }

.update-information {
  font-size: 85% !important; }
  .update-information table tbody tr th {
    background-color: #CCC !important;
    color: black;
    font-size:95%; }
  .update-information table tbody tr td {
    font-size:95%;}
  .update-information table tbody ul li {
    list-style-type: none; }

/* Common
---------------------------------------------------*/
/* 配置 */
.clear {
  clear: both; }

.leftPos {
  float: left; }

.rightPos {
  float: right; }

.leftPosT {
  text-align: left; }

.rightPosT, .text_right {
  text-align: right; }

.centerPosT, .text_center {
  text-align: center; }

.vtop {
  vertical-align: top; }

/* 余白 */
.mb10 {
  margin-bottom: 10px; }

.mb15 {
  margin-bottom: 15px;
  clear: both; }

.mb25 {
  margin-bottom: 25px; }

.ml10 {
  margin-left: 10px; }

.mr10 {
  margin-right: 10px; }

.pb10 {
  padding-bottom: 10px; }

.pb15 {
  padding-bottom: 15px; }

.pd5 {
  padding: 5px; }

.pd15 {
  padding: 15px; }

.pl15 {
  padding-left: 15px; }

p.mb10 { margin-bottom: 10px; }
p.mb15 { margin-bottom: 15px; }
p.mb25 { margin-bottom: 25px; }
p.mb25 { margin-bottom: 25px; }
p.ml10 {margin-left: 2rem;}
p.mr10 { margin-right: 10px; }
p.pb10 { padding-bottom: 10px; }
p.pb15 { padding-bottom: 15px; }
p.pd5 { padding: 5px; }
p.pd15 { padding: 15px; }
p.pl15 { padding-left: 15px; }

/* 文字関連 */
.nw {
  white-space: nowrap; }

.small {
  font-size: 80%;
  /* color: #666; */ }
td .small {
/* 0825  font-size: 50%; */
  white-space:nowrap}

.large {
  font-size: 120%;
  color: #666; }

.grey {
  color: #999; }

/* 旧CSS調整 */
ul.imgLayout {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  clear:both; }
  ul.imgLayout li {
    display: inline-block;
    text-align: center;
    margin-bottom: 15px;
    padding: 0 5px;
    vertical-align: top; }

/* メッセージ */
.boxDentatsu {
  background-color: #fff6f0;
  border: 2px solid #f53;
  padding: 10px 20px 7px;
  font-size: 80%;
  text-align: left; }
  .boxDentatsu dl dt {
    font-weight: bold;
    margin-bottom: 7px; }
  .boxDentatsu dl dd {
    /*background: url(icon_check.gif) no-repeat 10px 0.05em;*/
    margin-bottom: 3px;
    padding-left: 28px;
    color: #d00; }
    .boxDentatsu dl dd.alert {
      /*background: url(icon_alert.gif) no-repeat 10px 0.7em;*/
      background-color: #fff;
      border: 1px solid #fa9;
      margin-bottom: 3px;
      padding: 10px 10px 10px 30px;
      color: #e00; }

/*過去CSS取込み*/
ul.nomk, ul.line, ul.lnkLst {
  list-style: none;
  padding-left: 2rem;
  margin-left:0 !important; }
/* 0819 */
dd ul.nomk, dd ul.line, dd ul.lnkLst {
  padding-left: 0rem;}
li.none {
    list-style: none;
}
ul.line {
  padding: 0;
  width:auto !important}
  ul.line li {
    display: inline;
    margin: 0 5px; }

table.noLine {
  clear: both;
  border-collapse: collapse;
  margin: 0px auto;
  border: none; }
  table.noLine tr td {
    border: none; }
  table.noLine tr th {
    border: none; }

/* ボックス */
.main-container .boxNormal {
	border: 1px solid #666;
	padding: 1.5rem;
	margin: 1rem 0;
	font-weight: 300;
}
.main-container .boxGrey {
	background: #e9ecef;
	padding: 1.5rem;
	margin: 1rem 0;
	font-weight: 300;
}
.main-container .boxAtt {
	background-color: #fc9;
	border: 1px solid #f96;
	padding: 1.5rem;
	margin: 1rem 0;
	font-weight: 300;
}
/* 0722 */
.main-container ul.lnkLst {
    clear: both;
}
/*
.main-container ul.lnkLst li {
    background: url(/content/100063065.png) no-repeat left 0.4rem;
    padding: 0.25rem 0 0.25rem 20px;
}
*/
.con-text {
    clear: both;
    margin-bottom:1rem;
}
.con-text li.lower_roman {
    list-style: lower-roman;
}
.con-text .wHalf {
    width: 48%;
    margin-right:2%;
}
/*
.main-container ul {
    margin-bottom: 15px;
    padding-left:1rem;
}
*/
.main-container .relevant ul {
    padding-left:2rem;
}
.ptop {
    clear: both;
    float: right;
    background: url(/content/100063067.gif) no-repeat left 50%;
    margin-bottom: 5px;
    padding: 7px 0 7px 18px;
}
.main-container table.tableLayout th, .main-container table.tableLayout td {
    background: none;
    background-color: transparent;
    border: none;
    padding: 5px;
    text-align: left;
    vertical-align: top;
}

/* 20200803 表示崩れ補正（プレスリリース） */
.con-text p {
  margin-top:0 !important;
}
p.idt.mb25 + ul.linkLst li {
  margin:0 !important;
}
@media screen and (max-width:768px) {
  .con-text ul.nomk li span {
    margin-left:0 !important;
  }
}
/* 20200803 表示崩れ補正（一時対応） */
.con-text::after {
  content: "";
  display: block;
  clear: both;
}
/* 20200803 表示崩れ補正（事業詳細） */
.menu {
  margin-bottom:2rem !important;
}
.menu::after {
  content: "";
  display: block;
  clear: both;
}
.menu li {
 width:auto !important;
}
.menu li a {
  white-space:nowrap !important;
  min-width:150px !important;
  font-size:0.8rem !important;
}
@media screen and (max-width:768px) {
  .menu {
    margin-left:0 !important;
  }
  .menu li {
     display:block !important;
     float:none !important;
  }
  .menu li a {
     width: auto !important;
     margin: 10px auto !important;
}
}
/* 0806 */
dl.date + p {
  clear:both;
}
div.btn {
  display:block;
  clear: both;
  text-align: center;
  margin-bottom: 10px;
  padding-top: 10px;
}
span.baec5a81-e4d6-4674-97f3-e9220f0136c1 {
  white-space:normal !important;
}
.overview .con-text ul {
  padding:0;
}
/* 0817 */
.overview .con-text{
  margin-bottom:0;
}
.overview .con-text ul.lnkLst {
  margin-bottom:0;
}
/* 0815 */
.con-text dl dd {
    margin-bottom: 5px;
    padding-left: 1rem;
}
/* 0820 */
ul.imgLayout li div {
  font-size:0.8rem;
  width:280px;
  margin:0 auto;
}
ul.imgLayout li.wauto div {
  width:auto;
}
div.image div {
  font-size:0.8rem;
  width:auto;
  margin:0 auto;
}

/* 0817 */
table td.xycell_left_top, table td.xcell_left, table td.ycell_top, table td.cell_bg {
    background-color: #eee;
}

/* 一時追加 */
.subpage table tr th {
    background: #0055A7 !important;
}
p.idt {
    text-indent: 1rem;
}
@media screen and (max-width:768px) {
  .table-wrap {
    overflow-x: auto;
  }
  .table-wrap table {
    min-width:640px
  }
}
/*imgタグのmargin-leftを消したい
.subpage img{
margin: 0 auto;
display: block;
} 
*/

/*
テンプレート改修後にオンにする設定
ul.lnkLst li {
    background: url("/content/100063065.png") no-repeat left 0.4rem;
    padding: 2px 0 2px 20px;
}*/
/*テーブル内アイコンは別に空白を設定する⇒20231027無効
.subpage table tr td img { 
    margin: 0 auto;
}*/
/* 0820 */
.jigyo-technologys {
  margin-bottom:2rem;
}
/* 募集要項 */
h2#youkou + table th {
  width:10rem;
}
@media screen and (max-width: 420px) {
    h2#youkou + table {
        display: block;
    }
}
@media screen and (max-width: 420px) {
    h2#youkou + table th {
        width:100%;
    }
    h2#youkou + table th, h2#youkou + table td {
        display: block;
    }
}
@media screen and (max-width: 420px) {
    h2#youkou + table tbody {
        display: block;
    }
}
@media screen and (max-width: 420px) {
    h2#youkou + table tr {
        display: block;
    }
}
/* 基本情報 */
@media screen and (max-width: 500px) {
    table.kihon {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.kihon th, table.kihon td {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.kihon tbody {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.kihon tr {
        display: block;
    }
}
/* パンフレット一覧 */
.panflet-list {
	margin:0 auto;
	max-width:100%;}
.panflet.col {
	-ms-flex: 0 0 400px;
	flex: 0 0 400px;
	max-width: 400px;
	position: relative;
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
}
@media screen and (max-width:400px) {
.panflet.col {
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
	position: relative;
	width:100%;
	padding-right: 15px;
	padding-left: 15px;}
}
td.pamp-sum {
	width:60px;
}
/* 入札 */
table.nyusatsu th {
  width:9rem;
}
@media screen and (max-width: 500px) {
    table.nyusatsu {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.nyusatsu th, table.nyusatsu td {
        display: block;
        border: 1px inset #CCC !important;
        width:100%;
    }
}
@media screen and (max-width: 500px) {
    table.nyusatsu tbody {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.nyusatsu tr {
        display: block;
    }
}
/* 情報更新欄 */
.update-information table th {
  width:10%;
}
.update-information table td {
  width:90%;
}
@media screen and (max-width: 500px) {
    .update-information table {
        display: block;
    }
    .update-information table caption {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    .update-information table th, .update-information table td {
        display: block;
        border: 1px solid grey !important;
	white-space:normal !important;
        width:100%;
    }
}
@media screen and (max-width: 500px) {
    .update-information table tbody {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    .update-information table tr {
        display: block;
    }
}
/* 連絡先 */
table.t-contact th {
  width:10rem;
}
@media screen and (max-width: 500px) {
    table.t-contact {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.t-contact th, table.t-contact td {
        display: block;
        border: 1px solid grey !important;
        width:100%;
    }
}
@media screen and (max-width: 500px) {
    table.t-contact tbody {
        display: block;
    }
}
@media screen and (max-width: 500px) {
    table.t-contact tr {
        display: block;
    }
}
/* 0819 */
br + ol,
br + ul {
   margin-top:1rem !important;
}
/* ファイルサイズ */
.filesize {
  font-size:0.8rem;
}
/* 動き一覧 */
.topics-table.table-responsive {
  width:100%;
}
.subpage .topics-table.table-responsive table tr td {
    padding: 0.2rem;
}
/* SP時余白削除 */
@media screen and (max-width: 500px) {
    .sp-ml-0 {
        margin-left:0 !important;
    }
    .sp-mr-0 {
        margin-right:0 !important;
    }
    .sp-mt-0 {
        margin-top:0 !important;
    }
    .sp-md-0 {
        margin-bottom:0 !important;
    }
    .sp-ml-1 {
        margin-left:1rem !important;
    }
    .sp-mr-1 {
        margin-right:1rem !important;
    }
    .sp-mt-1 {
        margin-top:1rem !important;
    }
    .sp-md-1 {
        margin-bottom:1rem !important;
    }
}
/* td center icon */
td.aly_tx_center ul.lnkLst li {
  text-align:left !important;
}
table.noBorder,
table.noBorder td,
table.noBorder th {
  border:none !important;
}
table.bunya-table tr td {
  font-size:100% !important;
}
table.bunya-table tr th {
  text-align:center;
}
table.font tr td {
  font-size:100% !important;
}
/* 検索一覧 */
@media screen and (max-width:500px) {
  .detail-search .detail-search-detail {
      font-size:0.9rem;
  }
  .detail-search .detail-search-detail label {
      width: 100% !important;
      margin: 0;
      display:block;
  }
}

/* googleカスタム検索結果 */
.subpage .gsc-selected-option-container{
    max-width:100%;
}
.subpage table.gsc-above-wrapper-area-container tr td{
    border:0;
}

.subpage .gsc-tabHeader.gsc-tabhInactive{
	color:#666;
	background:none;
}
.subpage .gsc-cursor .gsc-cursor-page:not(.gsc-cursor-current-page){
	color:#666;
	background:none;
}

/* 20231020追加 WebTeam */

/* 文字装飾 */
.bold { font-weight:bold; }			/* 太字 */
.normal { font-weight:normal !important; }	/* 標準 */

/* 余白 */
.mb0  {  margin-bottom:  0px !important; }	/* 下余白 0px */
.mb10 {  margin-bottom: 10px !important; }	/* 下余白10px */
.mb15 {  margin-bottom: 15px !important; }	/* 下余白15px */
.mb25 {  margin-bottom: 25px !important; }	/* 下余白25px */

/* ファイルサイズ */
.filesize { font-size: 0.8em; }

/* 動画アイコン */
/* img.movie-icon { width:1.9em;margin-right: 0.5em; } */
.movie-icon { 
    width: 1.8rem; 
    margin: 0.2rem 0.5rem 0.25rem 0; 
    vertical-align: bottom; 
    display: inline; 
    padding:0 !important; 
} 
@media screen and (max-width:768px) { 
  .subpage img.movie-icon { 
      width: 1.65rem !important; 
      margin: 0 0.3rem 0 0 !important; 
      padding:0 !important;} 
 }

/* 20231204追加 WebTeam */
 
/* 括弧つき数字リスト */
ol.kakko {
padding:0;
margin:0;
}
ol.kakko li {
list-style-type:none;
list-style-position:inside;
counter-increment: cnt;
text-indent: -2.6em;
margin-left: 2.6em;
}
ol.kakko li:before {
/* display: marker; */
content: "（" counter(cnt) "）";
}

/* 左マージン */
.ml05e { margin-left: 0.5em !important; }
.ml1e { margin-left: 1em !important; }
.ml2e { margin-left: 2em !important; }

/* 幅 */
.w05 { width: 5%; }
.w10 { width: 10%; }
.w15 { width: 15%; }
.w20 { width: 20%; }
.w25 { width: 25%; }
.w30 { width: 30%; }
.w35 { width: 35%; }
.w40 { width: 40%; }
.w45 { width: 45%; }
.w50 { width: 50%; }
.w55 { width: 55%; }
.w60 { width: 60%; }
.w65 { width: 65%; }
.w70 { width: 70%; }
.w75 { width: 75%; }
.w80 { width: 80%; }
.w85 { width: 85%; }
.w90 { width: 90%; }
.w95 { width: 95%; }

/* リリース注釈（備考） */
dl.biko {
margin-left: 10px;
margin-bottom: 25px;
}
dl.biko dt {
font-weight: normal;
}
dl.biko dd {
margin-left: 1.7em;
}

/* 内部リンクアイコン非表示 */
ul.lnkLst li {
background: none !important;
padding-left: 0 !important;
}