/********************************************************

setting

********************************************************/
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap");
:root {
  --margin-block: 200px; }

@media (min-width: 1101px) and (max-width: 1280px) {
  :root {
    --margin-block: 120px; } }
@media (min-width: 641px) and (max-width: 1100px) {
  :root {
    --margin-block: 90px; } }
@media (max-width: 640px) {
  :root {
    --margin-block: 70px; } }
body {
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  text-align: left; }

.font-en {
  font-family: 'Gilda Display', serif; }

.font-en-bebas {
  font-family: "Bebas Neue", sans-serif;
  font-weight: 400;
  font-style: normal; }

.img-box {
  position: relative; }
  .img-box .img_caption {
    font-size: 12px;
    position: absolute;
    bottom: 1%;
    right: 1%; }
    .img-box .img_caption.wh {
      color: #fff;
      text-shadow: 2px 2px 3px #000; }
    .img-box .img_caption.bk {
      color: #000; }

.page {
  background: #272f36; }
  .page.bg_wh {
    background: #FFF; }

.page h3,
.page h4,
.page h5,
.page h6 {
  font-weight: normal !important; }

.page .h3_common {
  font-size: 20px;
  line-height: 1.6; }
  @media screen and (min-width: 750px) {
    .page .h3_common {
      font-size: calc(20px + 0.0170940171 * (100vw - 750px)); } }
  @media screen and (min-width: 1920px) {
    .page .h3_common {
      font-size: 40px; } }
  @media screen and (max-width: 600px) {
    .page .h3_common {
      text-align: center; } }

.page .wrap_h3 {
  text-align: center; }
  .page .wrap_h3 .text_h3 {
    font-size: 14px;
    line-height: 2.4; }
    @media screen and (min-width: 750px) {
      .page .wrap_h3 .text_h3 {
        font-size: calc(14px + 0.0051282051 * (100vw - 750px)); } }
    @media screen and (min-width: 1920px) {
      .page .wrap_h3 .text_h3 {
        font-size: 20px; } }

.btn_link a {
  display: block;
  text-decoration: none;
  text-align: center;
  font-size: 16px;
  background: #3B527A;
  background: linear-gradient(90deg, #3b527a 0%, #6086c7 100%);
  color: #FFF;
  padding: 20px 0;
  transition: filter 0.3s ease; }
  @media screen and (min-width: 750px) {
    .btn_link a {
      font-size: calc(16px + 0.0034188034 * (100vw - 750px)); } }
  @media screen and (min-width: 1920px) {
    .btn_link a {
      font-size: 20px; } }
  .btn_link a:hover {
    filter: brightness(1.3); }

.sec_page-title {
  padding: calc( var(--margin-block) / 2 ) 0;
  text-align: center;
  background: #010117;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #a69a68; }
  @media screen and (max-width: 600px) {
    .sec_page-title {
      padding: 40px 0;
      display: block; } }
  .sec_page-title .h2_page-title {
    font-weight: 400;
    font-size: 20px;
    font-family: 'Gilda Display', serif;
    letter-spacing: 0.05em;
    position: relative;
    line-height: 1.2; }
    @media screen and (min-width: 750px) {
      .sec_page-title .h2_page-title {
        font-size: calc(20px + 0.0136752137 * (100vw - 750px)); } }
    @media screen and (min-width: 1920px) {
      .sec_page-title .h2_page-title {
        font-size: 36px; } }
    @media screen and (max-width: 600px) {
      .sec_page-title .h2_page-title {
        font-size: 30px; } }
    .sec_page-title .h2_page-title span.line {
      margin: 0 10px;
      font-size: 16px; }
      @media screen and (max-width: 600px) {
        .sec_page-title .h2_page-title span.line {
          display: none; } }
  .sec_page-title .font-jp {
    font-size: 16px;
    font-family: "Shippori Mincho", serif;
    display: block;
    margin-top: 0.5rem; }
    @media screen and (max-width: 600px) {
      .sec_page-title .font-jp {
        font-size: 12px; } }
