@charset "utf-8";
.page-title{
  background: url("../img/mv.webp") no-repeat center / cover;
  margin: 0;
  height: 500px;
  @media screen and ( max-width: 767px ) {
    height: 400px;
  }
}
.page-title-inner {
  max-width: 1024px;
  width: 90%;
  display: flex;
  align-items: center;
  gap: 20px 80px;
  margin-inline: auto;
  @media screen and ( max-width: 767px ) {
    flex-direction: column;
    gap: 10px;
  }
}
.page-title-txt {
  font-size: 4rem;
  font-weight: bold;
  line-height: 1.5;
  @media screen and ( max-width: 767px ) {
    font-size: 2.4rem;
    margin: 0;
  }
}
.page-title-inner figure {
  min-width: max-content;
  @media screen and ( max-width: 767px ) {
    min-width: 0;
    width: 100px;
    margin: 0 0 0 auto;
  }
}
.cdm_lead {
  padding: 2em 0;
}
.cdm_strong {
  font-size: 3rem;
  text-align: center;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: var(--space-75);
  @media screen and ( max-width: 767px ) {
    font-size: 2rem;
  }
}
.table_outer {
  overflow-x: auto;
}
.cdm_table {
  width: 100%;
  border: 1px solid #000;
  line-height: 1.5;
  font-weight: normal;
  text-align: center;
  box-sizing: border-box;
  @media screen and ( max-width: 767px ) {
    min-width: 1024px;
  }
}
.cdm_table th {
  background: #c8c8c8;
  padding: 0.5em;
  font-weight: normal;
  box-sizing: border-box;
}
.cdm_table th:not(:last-child) {
  border-right: 1px solid #000;
}
.cdm_table td {
  height: 100%;
  padding: 1.5em 0.5em;
  box-sizing: border-box;
}
.cdm_table td:has(.table_arrow--bt) {
  padding: 0;
}
.cdm_table td:not(:last-child) {
  border-right: 1px solid #000;
}
.cdm_table thead tr {
  border-bottom: 1px solid #000;
}
.cdm_table tr:not(:last-child) {
  border-bottom: 1px solid #000;
}
.cdm_table--bg {
  background: #ffedf1;
}
.table_arrow--bt {
  display: flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 96px;
  padding: 1.5em 0.5em;
  margin: 0;
  position: relative;
  &::before {
    content: "";
    width: 10px;
    height: 10px;
    display: block;
    background: #f00;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin-inline: auto;
  }
  &::after {
    content: "";
    width: 24px;
    height: 16px;
    display: block;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background: #f00;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin-inline: auto;
    transform: translateY(100%);
  }
}
.cdm_bg {
  padding: var(--space-75) 5%;
  background: #E5E5E5;
}
.cdm_bg--box {
  max-width: 1024px;
  width: 100%;
  padding: 30px;
  background: #fff;
  margin: 0 auto;
}
.sec_arrow--bt {
  position: relative;
  &::before {
    content: "";
    display: block;
    width: 50px;
    height: 60px;
    background: #f00;
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin-inline: auto;
  }
  &::after {
    content: "";
    display: block;
    width: 120px;
    height: 60px;
    background: #f00;
    position: absolute;
    bottom: -60px;
    left: 0;
    right: 0;
    margin-inline: auto;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    z-index: 2;
  }
  @media screen and ( max-width: 767px ) {
    &::before {
      width: 25px;
      height: 50px;
    }
    &::after {
    width: 74px;
    height: 40px;
    }
  }
}
.cdm_bg--box02 {
  max-width: 1024px;
  width: 100%;
  padding: 30px 30px 10px;
  background: #FFFBBD;
  margin: 100px auto 0;
  @media screen and ( max-width: 767px ) {
    padding: 20px 20px 5px;
    margin: 50px auto 0;
  }
}
.cdm_bg--boxItems {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  @media screen and ( max-width: 767px ) {
    gap: 10px;
  }
}
.cdm_bg--boxItems li {
  max-width: calc(25% - 15px);
  padding: 0.75em 1em;
  width: 100%;
  background: #fff;
  border: solid 1px #000;
  text-align: center;
  @media screen and ( max-width: 767px ) {
    max-width: calc(50% - 5px);
    padding: 0.5em;
  }
}
.center_txt {
  text-align: center;
}

@media screen and ( max-width: 767px ) {
  .indent_txt.new_container {
    width: 100%;
  }
}

/* -------------- BEGIN -------------- */

@media screen and ( max-width: 1024px ) {

}
@media screen and ( max-width: 767px ) {

}
/*iPad用*/
@media screen and (orientation: portrait) and (min-width: 768px){
}
@media print{
}