@charset "UTF-8";
/*///////////////////////////////////////////////////////
    カタログ スタイル
///////////////////////////////////////////////////////*/
/*///////////////////////////////////////////////////////
    変数設定
///////////////////////////////////////////////////////*/
/* custom style */
/*///////////////////////////////////////////////////////
    mixin設定
///////////////////////////////////////////////////////*/
.contents {
  margin-bottom: 9.6rem;
}

@media screen and (min-width: 961px) {
  .contents {
    margin-bottom: 12rem;
  }
}
.mc-contents {
  margin-bottom: 3.2rem;
}
.mc-contents .inner-s {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 2rem;
}
.mc-contents .inner-s .mc-contents--img {
  flex: 100%;
}
.mc-contents .inner-s .mc-contents--img .thum {
  display: block;
  width: 12.6rem;
  aspect-ratio: 12.6/17.8;
  margin: auto;
}
.mc-contents .inner-s .mc-contents--img .thum img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.mc-contents .inner-s .mc-contents--body {
  flex: 100%;
  text-align: center;
  line-height: 1.8;
}
.mc-contents .inner-s .mc-contents--body .read {
  margin-bottom: 1.2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
}
.mc-contents .inner-s .mc-contents--body .body {
  margin-bottom: 1.2rem;
  font-size: 1.1rem;
}
.mc-contents .inner-s .mc-contents--body .attent {
  margin-bottom: 2rem;
  font-weight: 700;
  font-size: 1.1rem;
}
.mc-contents .inner-s .mc-contents--body .btn_box .btn {
  height: 5rem;
  line-height: 5rem;
  text-align: center;
  color: #fff;
  font-size: 1.3rem;
  border-radius: 2px;
  background: #191919;
}

@media screen and (min-width: 961px) {
  .mc-contents {
    margin-bottom: 12rem;
  }
  .mc-contents .inner-s {
    width: 96rem;
    margin: auto;
    gap: 11rem;
  }
  .mc-contents .inner-s .mc-contents--img {
    flex: 0 0 26rem;
    width: 26rem;
  }
  .mc-contents .inner-s .mc-contents--img .thum {
    display: block;
    width: 100%;
  }
  .mc-contents .inner-s .mc-contents--body {
    flex: 0 0 auto;
    width: calc(100% - 38rem);
    text-align: left;
  }
  .mc-contents .inner-s .mc-contents--body .read {
    margin-bottom: 1.8rem;
    font-size: 2.4rem;
  }
  .mc-contents .inner-s .mc-contents--body .body {
    margin-bottom: 1.6rem;
    font-size: 1.4rem;
  }
  .mc-contents .inner-s .mc-contents--body .attent {
    margin-bottom: 3.2rem;
    font-size: 1.4rem;
  }
  .mc-contents .inner-s .mc-contents--body .btn_box .btn {
    width: 28rem;
    height: 5.6rem;
    margin: auto auto auto 0;
    line-height: 5.6rem;
    font-size: 1.4rem;
  }
}
.nr-contents {
  margin-bottom: 3.2rem;
  padding: 2.4rem 1.2rem;
  background: #F2F2F2;
}
.nr-contents .nr-contents--ttl {
  margin-bottom: 3.4rem;
  text-align: center;
}
.nr-contents .nr-contents--ttl .nr-contents--ttl-en {
  margin-bottom: 0.4em;
  font-family: "Montserrat", "Zen Kaku Gothic New", serif;
  font-weight: 700;
  font-size: 2rem;
}
.nr-contents .nr-contents--ttl .nr-contents--ttl-ja {
  font-family: "Zen Kaku Gothic New", serif;
  font-weight: bold;
  font-size: 1.3rem;
}
.nr-contents .nr-contents--body .nr-contents--item {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 0.8rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid #D1D1D1;
}
.nr-contents .nr-contents--body .nr-contents--item .date {
  flex: 100%;
  font-family: "Montserrat", "Zen Kaku Gothic New", serif;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1;
}
.nr-contents .nr-contents--body .nr-contents--item .title {
  flex: 100%;
  font-size: 1.3rem;
}

@media screen and (min-width: 961px) {
  .nr-contents {
    margin-bottom: 7rem;
    padding: 5rem 6rem;
  }
  .nr-contents .nr-contents--ttl .nr-contents--ttl-en {
    font-size: 3.4rem;
  }
  .nr-contents .nr-contents--ttl .nr-contents--ttl-ja {
    font-size: 1.5rem;
  }
  .nr-contents .nr-contents--body {
    width: 96rem;
    margin: auto;
  }
  .nr-contents .nr-contents--body .nr-contents--item {
    gap: 6rem;
    padding-bottom: 2.2rem;
  }
  .nr-contents .nr-contents--body .nr-contents--item .date {
    flex: 0 0 auto;
    font-size: 1.4rem;
  }
  .nr-contents .nr-contents--body .nr-contents--item .title {
    flex: 0 0 auto;
    line-height: 1;
    font-size: 1.4rem;
  }
}
.up-contents .up-contents--ttl {
  margin-bottom: 3rem;
}
.up-contents .up-contents--ttl .ttl {
  text-align: center;
  font-weight: 700;
  font-size: 1.5rem;
}
.up-contents .up-contents--read {
  margin-bottom: 3rem;
}
.up-contents .up-contents--read .read {
  margin-bottom: 1.2rem;
  padding-left: 1.1rem;
  font-weight: 700;
  font-size: 1.3rem;
  border-left: 4px solid #191919;
}
.up-contents .up-contents--read .body {
  line-height: 1.8;
  font-size: 1.2rem;
}
.up-contents .up-contents--body .attent {
  margin-bottom: 1rem;
  text-align: center;
  font-size: 1.1rem;
}
.up-contents .up-contents--body .up-contents--table {
  width: 200%;
  border: 1px solid #E0E0E0;
}
.up-contents .up-contents--body .up-contents--table th {
  padding: 1.1em;
  text-align: center;
  vertical-align: top;
  font-size: 1.2rem;
  background: #F0F0F0;
  white-space: nowrap;
}
.up-contents .up-contents--body .up-contents--table th:not(:last-child) {
  text-align: center;
  border-right: 1px solid #fff;
}
.up-contents .up-contents--body .up-contents--table td {
  padding: 1.1em;
  vertical-align: top;
  font-size: 1.1rem;
  border-top: 1px solid #E0E0E0;
  border-right: 1px solid #E0E0E0;
}
.up-contents .up-contents--body .up-contents--table td:first-child {
  white-space: nowrap;
}
.up-contents .up-contents--body .up-contents--table td:nth-child(1), .up-contents .up-contents--body .up-contents--table td:nth-child(2) {
  text-align: center;
}

@media screen and (min-width: 961px) {
  .up-contents {
    width: 96rem;
    margin: auto;
  }
  .up-contents .up-contents--ttl {
    margin-bottom: 4.6rem;
  }
  .up-contents .up-contents--ttl .ttl {
    font-size: 1.8rem;
  }
  .up-contents .up-contents--read {
    margin-bottom: 3.6rem;
  }
  .up-contents .up-contents--read .read {
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
  .up-contents .up-contents--read .body {
    font-size: 1.4rem;
  }
  .up-contents .up-contents--body .attent {
    display: none;
  }
  .up-contents .up-contents--body .up-contents--table {
    width: 100%;
    border: 1px solid #E0E0E0;
  }
  .up-contents .up-contents--body .up-contents--table th {
    font-size: 1.4rem;
  }
  .up-contents .up-contents--body .up-contents--table td {
    font-size: 1.4rem;
  }
}