.p-keieisengen {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  gap: 4px;
}

.p-keieisengen > dt {
  padding: 10px;
  background: #f39801;
  font-weight: 700;
  color: #fff;
  display: -ms-grid;
  display: grid;
  place-content: center;
  font-size: 18px;
  font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
  .p-keieisengen > dt {
    font-size: 1.6rem;
  }
}

.p-keieisengen > dd {
  padding: 20px;
  background: #ffeac6;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .p-keieisengen > dd {
    font-size: 1.6rem;
  }
}

.p-houshin__dt {
  background: #f39801;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 240px 1fr;
      grid-template-columns: 240px 1fr;
  gap: 10px;
  padding: 15px;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .p-houshin__dt {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }
}

.p-houshin__dt::first-child {
  margin-top: 0;
}

.p-houshin__dt__ttl {
  font-weight: 700;
  color: #fff;
  padding: 20px 0;
  display: -ms-grid;
  display: grid;
  place-content: center;
  font-size: 20px;
  font-size: 2.0rem;
}

@media screen and (max-width: 767px) {
  .p-houshin__dt__ttl {
    padding: 0 0;
    font-size: 1.6rem;
  }
}

.p-houshin__dt__cont {
  border-radius: 20px;
  background: #fff;
  padding: 20px;
  display: -ms-grid;
  display: grid;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}

.p-houshin__dd {
  position: relative;
  margin-top: 15px;
  min-height: 40px;
}

.p-houshin__dd:after {
  content: " ";
  display: block;
  width: 200px;
  height: 50px;
  background-color: #B9CDE5;
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  -webkit-clip-path: polygon(50% 50px, 0% 0%, 200px 0%);
          clip-path: polygon(50% 50px, 0% 0%, 200px 0%);
  z-index: -100;
  position: absolute;
  top: 0;
  left: 50px;
}

@media screen and (max-width: 767px) {
  .p-houshin__dd:after {
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.p-soshiki {
  text-align: center;
  background: #FDEADA;
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .p-soshiki {
    padding: 20px;
  }
}

.p-soshiki img {
  max-width: 600px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-soshiki img {
    max-width: 100%;
  }
}

.p-table-01 {
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #cdcdcd;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-table-01 {
    max-width: auto;
    width: auto;
  }
}

.p-table-01 > thead tr th {
  background: #f0f0f0;
  padding: 10px;
  text-align: center;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
}

.p-table-01 > tbody tr th {
  text-align: left;
  padding: 10px 15px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  width: 240px;
}

@media screen and (max-width: 767px) {
  .p-table-01 > tbody tr th {
    min-width: 150px;
  }
}

.p-table-01 > tbody tr th.short {
  width: 10px;
}

@media screen and (max-width: 767px) {
  .p-table-01 > tbody tr th.short {
    min-width: 20px;
  }
}

.p-table-01 > tbody tr th.short2 {
  min-width: 190px;
}

@media screen and (max-width: 767px) {
  .p-table-01 > tbody tr th.short2 {
    min-width: 100px;
  }
}

.p-table-01 > tbody tr td {
  text-align: center;
  padding: 10px 15px;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
}

@media screen and (max-width: 767px) {
  .p-table-01 > tbody tr td {
    min-width: 100px;
  }
}

@media screen and (max-width: 767px) {
  .p-table-01 > tbody tr td:last-child {
    min-width: 190px;
  }
}

.p-table-01 > tbody tr td.bgnone {
  background: #fff !important;
}

.p-table-01.orange > thead tr th {
  background: #f39801;
  color: #fff;
}

.p-table-01.orange > tbody tr th, .p-table-01.orange > tbody tr td {
  background: rgba(243, 152, 1, 0.1);
}

.p-table-01.red > thead tr th {
  background: #E80114;
  color: #fff;
}

.p-table-01.red > tbody tr th, .p-table-01.red > tbody tr td {
  background: rgba(232, 1, 20, 0.1);
}

.p-table-01.blue > thead tr th {
  background: #0070C0;
  color: #fff;
}

.p-table-01.blue > tbody tr th, .p-table-01.blue > tbody tr td {
  background: rgba(0, 112, 192, 0.1);
}

.p-table-01 .p-left {
  text-align: left !important;
}

.p-table-01 .p-right {
  text-align: right !important;
}

.p-table-02 {
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #cdcdcd;
  width: auto;
}

@media screen and (max-width: 767px) {
  .p-table-02 {
    max-width: auto;
    width: auto;
  }
}

.p-table-02 tr th {
  background: #c8c8c8;
  padding: 10px;
  text-align: center;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  width: 3em;
}

.p-table-02 tr td {
  text-align: left;
  padding: 10px 15px;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  background: rgba(200, 200, 200, 0.2);
}

@media screen and (max-width: 767px) {
  .p-table-02 tr td {
    min-width: 100px;
  }
}

.p-table-03 {
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #cdcdcd;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-table-03 {
    max-width: auto;
    width: auto;
  }
}

.p-table-03 tr th {
  background: #f39801;
  padding: 10px;
  text-align: left;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  color: #fff;
}

.p-table-03 tr td {
  text-align: center;
  padding: 10px 15px;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  background: rgba(243, 152, 1, 0.3);
}

.p-table-03 tr:nth-child(even) td {
  background: rgba(243, 152, 1, 0.1);
}

.p-txt-p {
  margin-top: 1em;
}

* > .p-txt-p:first-child {
  margin-top: 0;
}

.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}

.scroll-box div img {
  max-width: 100%;
  min-width: 600px;
  vertical-align: top;
}

.scroll-box::-webkit-scrollbar {
  height: 8px;
}

.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}

.scroll-box::-webkit-scrollbar-thumb {
  background: #cccccc;
  border: none;
}

.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}

.scroll-table {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}

.scroll-table div talbe {
  max-width: 100%;
  min-width: 600px;
}

.scroll-table::-webkit-scrollbar {
  height: 8px;
}

.scroll-table::-webkit-scrollbar-track {
  background: #eee;
}

.scroll-table::-webkit-scrollbar-thumb {
  background: #cccccc;
  border: none;
}

.scroll-table::-webkit-scrollbar-thumb:hover {
  background: #999;
}
