/*************************
CONTENTS
**************************/

/* ------ COMMON ------ */

.page-main-tit {
  display: block;
  width: 100%;
  margin: 160px auto 16px;
  font-size: 4.8rem;
}
.page-sub-tit {
  display: block;
  margin: 0 auto;
  font-size: 2.4rem;
}
.page-main-text {
  text-align: left;
  color: var(--SecondaryText);
  font-size: 1.8rem;
  line-height: 2em;
  margin: 80px auto 128px;
}
.mb-text-adjust {
  margin-bottom: 0.5em;
}
.radius {
  border-radius: 8px;
}

/* ------ MOBILE & SMALL TABLET ------ */
@media screen and ( max-width:767px) {
  .page-main-tit {
    padding: 0 40px;
  }
  .page-main-text {
    padding: 0 40px;
  }
  .contents-wrap {
    padding-bottom: 5.625vh;
  }
  .contents-text-wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
  }
  .text-column {
    display: flex;
    flex-direction: column;
    width: 100%;
    text-align: justify;
    margin-bottom: 10.416vh;
  }
  .shoulder-text {
    color: var(--PrimaryText);
    font-size: 2rem;
    margin-bottom: .2em;
    padding: 0 40px;
  }
  .shoulder-text-din {
    color: var(--PrimaryText);
    font-size: 2rem;
    margin-bottom: .2em;
    font-family: din-condensed, sans-serif;
    font-weight: 300;
    letter-spacing: .05em;
    padding: 0 40px;
  }
  .sub-title {
    color: var(--PrimaryText);
    font-size: 2rem;
    margin-bottom: 1.2rem;
    padding: 0 40px;
  }
  .body-text {
    color: var(--SecondaryText);
    font-size: 1.6rem;
    line-height: 1.8em;
    padding: 0 40px;
  }
  .caption-text {
    color: var(--SecondaryText);
    font-size: 1.2rem;
    line-height: 1.5em;
    margin: 0 40px;
  }
  .indent {
    padding-left: 1em;
    text-indent: -1em;
  }
  .mb-adjust {
    margin-bottom: 10.416vh;
  }
  .bottom-img {
    padding: 0;
  }
}
/* ------ TABLET ------ */
@media screen and ( min-width:768px) and (max-width: 1023px) {
  .contents-wrap {
    padding-bottom: 15.625vh;
  }
  .contents-text-wrap {
    display: flex;
    flex-direction: column;
    width: 57.291vw;
    margin: 0 auto;
  }
  .text-column {
    display: flex;
    flex-direction: column;
    width: 100%;
    text-align: justify;
    margin-bottom: 10.416vh;
  }

  .shoulder-text {
    color: var(--PrimaryText);
    font-size: 1.4rem;
    margin-bottom: .6em;
  }
  .shoulder-text-din {
    color: var(--PrimaryText);
    font-size: 1.8rem;
    margin-bottom: .6em;
    font-family: din-condensed, sans-serif;
    font-weight: 300;
    letter-spacing: .1em;
  }
  .sub-title {
    color: var(--PrimaryText);
    font-size: 2.2rem;
    margin-bottom: 1em;
  }
  .body-text {
    color: var(--SecondaryText);
    font-size: 1.6rem;
    line-height: 2em;
  }
  .caption-text {
    color: var(--SecondaryText);
    font-size: 1.2rem;
    line-height: 1.5em;
  }
  .indent {
    padding-left: 1em;
    text-indent: -1em;
  }
  .mb-adjust {
    margin-bottom: 10.416vh;
  }
  .bottom-img {
    margin-top: auto;
    padding-top: 2em;
  }
}
/* ------ SMALL DESKTOP ------ */
@media screen and ( min-width:1024px) and (max-width: 1280px) {
  .contents-wrap {
    padding-bottom: 20.833vh;
  }
  .contents-text-wrap {
    display: flex;
    flex-wrap: wrap;
    padding: 0 160px;
  }
  .text-column {
    display: flex;
    flex-direction: column;
    margin-right: 4.856vw;
    width: calc((100% / 3) - (4.856vw * 2 / 3));
    text-align: justify;
  }
  .text-column:nth-child(3n) {
    margin-right: 0;
  }
  .shoulder-text {
    color: var(--PrimaryText);
    font-size: 1.3rem;
    margin-bottom: .6em;
  }
  .shoulder-text-din {
    color: var(--PrimaryText);
    font-size: 1.4rem;
    margin-bottom: .6em;
    font-family: din-condensed, sans-serif;
    font-weight: 300;
    letter-spacing: .1em;
  }
  .sub-title {
    color: var(--PrimaryText);
    font-size: 1.6rem;
    margin-bottom: 1em;
  }
  .body-text {
    color: var(--SecondaryText);
    font-size: 1.4rem;
    line-height: 1.8em;
  }
  .caption-text {
    color: var(--SecondaryText);
    font-size: 1.2rem;
    line-height: 1.5em;
  }
  .indent {
    padding-left: 1em;
    text-indent: -1em;
  }
  .mb-adjust {
    margin-bottom: 7.856vw;
  }
  .bottom-img {
    margin-top: auto;
    padding-top: 0;
  }
}

/* ------ DESKTOP ------ */
@media screen and ( min-width:1281px) {
  .page-main-text {
    padding: 0 14%;
  }
  .contents-wrap {
    padding-bottom: 20.833vh;
  }
  .contents-text-wrap {
    display: flex;
    flex-wrap: wrap;
    padding: 0 160px;
  }
  .text-column {
    display: flex;
    flex-direction: column;
    margin-right: 5.856vw;
    width: calc((100% / 3) - (5.856vw * 2 / 3));
    text-align: justify;
  }
  .text-column:nth-child(3n) {
    margin-right: 0;
  }

  .shoulder-text {
    color: var(--PrimaryText);
    font-size: 1.4rem;
    margin-bottom: .6em;
  }
  .shoulder-text-din {
    color: var(--PrimaryText);
    font-size: 2rem;
    margin-bottom: .3em;
    font-family: din-condensed, sans-serif;
    font-weight: 300;
    letter-spacing: .1em;
  }
  .sub-title {
    color: var(--PrimaryText);
    font-size: 2rem;
    margin-bottom: 1em;
  }
  .body-text {
    color: var(--SecondaryText);
    font-size: 1.6rem;
    line-height: 1.8em;
  }
  .caption-text {
    color: var(--SecondaryText);
    font-size: 1.2rem;
    line-height: 1.5em;
  }
  .indent {
    padding-left: 1em;
    text-indent: -1em;
  }
  .mb-adjust {
    margin-bottom: 8.856vw;
  }
  .bottom-img {
    margin-top: auto;
    padding-top: 0;
  }
}
