/* 共通：メイン画像（サブページ） */
.sub-header {
  position: relative;
  height: 300px;
  margin-bottom: 12rem;
}

.sub-header .page-title-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.sub-header .page-title {
  padding-top: 3rem;
  display: flex;
  justify-content: center;
  text-align: center;
}

.sub-header .page-title>div {
  word-wrap: break-word;
  min-width: 0;
}

.sub-header .page-title .en-text {
  font-size: 5rem;
  margin: 0;
  font-weight: 600;
  color: white;
}

.sub-header .page-title .jp-text {
  font-size: 1.5rem;
  font-weight: 600;
  color: white;
}

.sub-header .page-images {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--black-color);
  border-radius: var(--img-border-radius);
  overflow: hidden; /* 角丸内に画像を収める */
}

.sub-header .page-images img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  opacity: 0.5;
}

/* 共有：サブページ */
#sub-maincnts {
  max-width: 1200px;
  margin: 0 auto;
}

/* .left-space {
  padding-left: 22%;
} */

#sub-maincnts section>div {
  margin-bottom: 17rem;
}

.cnts-title {
  padding-bottom: 7rem;
}

.cnts-title .en-text {
  font-size: 3.1rem;
  font-weight: 600;
  margin: 0;
  line-height: 1.2;
  padding-bottom: 0.5rem;
}

.cnts-title .jp-text {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.sub-title {
  display: block;
  width: 100%;
  color: #5E9CCB;
  font-family: "Zen Kaku Gothic New", serif;
  font-size: calc(var(--font-size-m) * 1.4);
}
.sub-title::before {
  content: "";
  display: inline-block;
  background-image: url(../../images/common/icon01.webp);
  /* background-size: cover; */
  background-repeat: no-repeat;
  width: 55px;
  height: 19px;
}

.line-table {
  width: 100%;
  border-collapse: separete;
  border-spacing: 0;
}

.line-table th,
.line-table td {
  border-bottom: 1px solid var(--black-color);
  padding: 2rem 0;
  line-height: 2;
}

.line-table tr:first-child th,
.line-table tr:first-child td {
  border-top: 1px solid var(--black-color);
}

.line-table th {
  font-weight: 400;
  text-align: left;
  vertical-align: top;
  width: 25%;
}

.trans-table {
  width: 100%;
  border-collapse: collapse
}

.trans-table th,
.trans-table td {
  border-bottom: none;
  padding: 0.5rem 0;
  line-height: 2;
}

.trans-table tr:first-child th,
.trans-table tr:first-child td {
  border-top: none;
}

.trans-table th {
  font-weight: 400;
  text-align: left;
  vertical-align: top;
  width: 20rem;
}

/* @media screen and (min-width: 1801px) {
  .left-space {
    padding-left: calc(1200px - 52.6vw);
  }
}
@media screen and (max-width: 1800px) {
  .left-space {
    padding-left: calc(1200px - 58.2vw);
  }
}
@media screen and (max-width: 1700px) {
  .left-space {
    padding-left: calc(1200px - 58.8vw);
  }
}
@media screen and (max-width: 1600px) {
  .left-space {
    padding-left: calc(1200px - 59.4vw);
  }
}
@media screen and (max-width: 1500px) {
  .left-space {
    padding-left: calc(1200px - 60.1vw);
  }
}
@media screen and (max-width: 1400px) {
  .left-space {
    padding-left: calc(1200px - 60.7vw);
  }
} */
@media screen and (max-width: 1330px) {
  .left-space {
    padding-left: 0;
  }
  #sub-maincnts{
    width: 100%;
    padding: 0 5%;
    box-sizing: border-box;
  }
  .sub-header .page-title .en-text {
    font-size: 4rem;
  }
}
@media screen and (max-width: 959px) {
  .sub-header{
    height: 500px;
  }
  .sub-header .page-title .en-text {
    font-size: 6.5vw;
  }
  .sub-header .page-title .jp-text {
    font-size: 3vw;
  }
  .sub-header .page-title {
    width: 90%;
  }
  .cnts-title .en-text{
    font-size: 5.5vw;
  }
}
@media screen and (max-width: 700px) {
  .sub-header{
    padding-bottom: 6rem;
  }
  .cnts-title {
    padding-bottom: 4rem;
  }
  .cnts-title .en-text{
    padding-bottom: 0.2rem;
  }
  #sub-maincnts section>div {
    margin-bottom: 10rem;
  }
}
@media screen and (max-width: 599px) {
  .sub-header {
    margin-bottom: 5rem;
  }
  #sub-maincnts{
    padding: 0 3%;
  }
  .sub-header{
    padding-bottom: 3.5rem;
    height: 300px;
  }
  #sub-maincnts section > div {
    margin-bottom: 10rem;
  }
  #sub-maincnts section>div {
    margin-bottom: 6rem;
  }
  .cnts-main{
    padding: 0 10px;
    box-sizing: border-box;
  }
  .cnts-title .jp-text{
    font-size: 1.1rem;
  }
  .cnts-title .sub-title {
    font-size: 0.9rem;
  }
  .cnts-title .sub-title::before {
    display: none;
  }
  .cnts-title {
    padding-bottom: 10vw;
  }
  .cnts-title .en-text {
    font-size: 1.5rem;
  }
}

/* サブページのハンバーガーメニューは常時黒 */
/* .menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
  background-color: var(--pure-black);
} */

/* .menu-btn.scrolled span,
.menu-btn.scrolled span:before,
.menu-btn.scrolled span:after {
  background-color: var(--pure-black);
} */


/* .loading__svg {
  display: none !important;
} */