@charset "UTF-8";
/*-----------------------------------
ベース
-----------------------------------*/
#contents>* {
    padding-top: 70px;
}
#contents>*:last-child {
    padding-bottom: 200px;
}
@media screen and (max-width: 640px) {
  #contents>* {
    padding-top: 70px;
}
    #contents>*:last-child {
      padding-bottom: 90px;
  }
}
/*-----------------------------------
見出し1
-----------------------------------*/
.el_lv1Heading {
    padding: 170px 0 70px;
    position: relative;
    text-align: center;
    line-height: 1;
    position: relative;
    background: url(../img/common/lower_ttlBg.jpg) no-repeat center center/cover;
}
.el_lv1Heading::before {
    content: "";
    width: 100%;
    height: 100%;
    opacity: 0.4;
    background-color: #000;
    position: absolute;
    inset: 0;
    z-index: 0;
}
.el_lv1Heading p {
    font-size: 15px;
    color: #fff;
    position: relative
}
.el_lv1Heading p::before {
    font-size: 28px;
    content: attr(data-en);
    display: block;
    margin-bottom: 15px;
    font-weight: bold;
    font-family: 'Josefin Sans', sans-serif;
}
@media screen and (max-width: 940px) {
    .el_lv1Heading {
        padding: 120px 0 50px;
    }
}
@media screen and (max-width: 640px) {
    .el_lv1Heading {
        padding: 110px 0 30px;
    }
    .el_lv1Heading p {
        font-size: 13px;
    }
    .el_lv1Heading p::before {
        font-size: 23px;
        margin-bottom: 10px;
    }
}
/*-----------------------------------
パンくずリスト
-----------------------------------*/
.breadcrumbs {
    border-bottom: 1px solid #ececec;
    padding-top: 5px;
    padding-bottom: 6px;
}
.breadcrumbs span {
    font-size: 12px;
}
.breadcrumbs span a {
    color: #b91e38;
}
.breadcrumbs span a:hover {
    text-decoration: underline;
}
.breadcrumbs .around {
    color: #cdcdcd;
    padding-left: 8px;
    padding-right: 6px;
    font-weight: bold;
}
@media screen and (max-width: 640px) {
    .breadcrumbs {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        overflow-scrolling: touch;
        overflow: auto;
        white-space: nowrap;
    }
}
/*-----------------------------------
リンクテキスト
-----------------------------------*/
.el_linkTxt {
    text-decoration: underline;
}
.el_linkTxt:hover,
.el_linkTxt:focus {
    text-decoration: none;
}

/*メディア
--------------------------*/
.bl_media {
  position: relative;
}
.bl_media_body {
  width: 45%;
}
.bl_media_img {
  /*インナー内の幅 + インナー外の幅*/
  width: calc(52% + (50vw - 50%));
  position: absolute;
  height: 100%;
  top: 0;
  bottom: 0;
  right: calc(50% - 50vw)
}
.bl_media_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 940px) {
  .bl_media_img {
      position: relative;
      right: 0;
      order: 1;
      width: 60vw;
      height: 30vw;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 15px;
  }
  .bl_media_body {
      order: 2;
      width: 100%;
  }
}
/*コピーテキスト
--------------------------*/
.el_copyTxt {
  -webkit-text-decoration: #e54d4d underline 0.15em;
  text-decoration: #e54d4d  underline 0.15em;
}
.el_copyTxt{
  position: relative;
}

/*notfound_block
--------------------------*/
#notfound_block {
}
#notfound_block .link_btn {
    display: block;
    width: 240px;
    background: #D42442;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    margin: 0 auto;
    color: #fff;
    border-radius: 3px;
    padding: 20px 0;
    position: relative;
    transition: ease 0.2s;
}
#notfound_block .link_btn:hover {
    background: #b60e2b;
}
#notfound_block .link_btn:before {
    content: "";
    width: 0;
    height: 0;
    border-left: 5px solid #fff;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto 0;
}
@media screen and (max-width: 640px) {
    #notfound_block .link_btn {
        width: 80%;
        font-size: 15px;
    }
}


.post-password-form {
    margin-top: 180px;
    margin-bottom: 180px;
    text-align: center;
}