@charset "UTF-8";
/*! Writen  by SCSS */
/*下層ページ最初のセクション上部余白を統一する際は使用してみて下さい*/
.section_cont {
  padding: 100px 0; }
  .section_cont.first_sec {
    padding-top: 80px; }

.inner_main {
  position: relative;
  padding-bottom: calc(580%/16);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 480px) {
    .inner_main {
      padding-bottom: calc(300%/3.75); } }
  .inner_main .main_txts {
    max-width: 600px;
    width: 100%;
    text-align: center;
    position: absolute;
    inset: 0;
    margin: auto;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }
    .inner_main .main_txts .main_ttl {
      width: 100%;
      line-height: 0;
      position: relative;
      padding-bottom: calc(15%/6); }
      .inner_main .main_txts .main_ttl::before {
        content: "";
        width: calc(66%/6);
        height: 2px;
        background: #fff;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        display: block; }
    .inner_main .main_txts .main_copy {
      margin-top: 0.8em;
      color: #fff;
      font-size: clamp(18px, 2.334vw, 28px);
      letter-spacing: 0.1em;
      line-height: 1.4; }

.inner_main_txt {
  padding: 80px 10px;
  text-align: center; }
  @media screen and (max-width: 480px) {
    .inner_main_txt {
      padding: 40px 10px; } }
  .inner_main_txt .main_txts {
    font-size: clamp(28px, 5vw, 60px);
    letter-spacing: 0.1em;
    line-height: 1; }

.first_sec {
  padding-top: clamp(40px, 5%, 60px); }

.sec_ttl_wrap {
  display: flex;
  flex-direction: column;
  row-gap: 30px; }
  @media screen and (max-width: 480px) {
    .sec_ttl_wrap {
      row-gap: 20px; } }

.sec_ttl {
  font-size: clamp(18px, 2.667vw, 32px);
  text-align: center; }

.read {
  font-size: clamp(14px, 1.334vw, 16px); }

.copy {
  font-size: clamp(12px, 1.167vw, 14px); }

.sec_cap {
  padding-top: clamp(80px, 10%, 120px); }

.inner_bg_wrap {
  position: relative; }
  .inner_bg_wrap .fbg {
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    left: 0;
    top: 0;
    z-index: -1; }
    .inner_bg_wrap .fbg .fbg_in {
      display: block;
      position: relative;
      overflow: hidden;
      clip-path: inset(0 0 0 0);
      height: 100%; }
      .inner_bg_wrap .fbg .fbg_in img {
        position: fixed;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        pointer-events: none;
        object-fit: cover; }

@media screen and (max-width: 680px) {
  .vpc680 {
    display: none; } }

.vsp680 {
  display: none; }
  @media screen and (max-width: 680px) {
    .vsp680 {
      display: block; } }

/*# sourceMappingURL=inner.css.map */
