@charset "utf-8";
.invisible-style{
  display: none!important;
}

html {
  word-break: auto-phrase;
  scroll-padding-top: 146px;
  scroll-behavior: smooth;
}
@media (max-width: 767px) {
  html {
    scroll-padding-top: 48px;
  }
}


body{
  font-family: "Noto Sans JP", sans-serif;
  color: #2F2020;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
  background-color: #F7F6F2;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a {
  text-decoration: none;
  cursor: pointer;
  color: #000;
  transition: all 0.5s;
}

a:hover {
  text-decoration: none;
  color: #000;
  transition: all 0.5s;
}
.link-opacity:hover {
  opacity: 0.5;
}


img {
  max-width: 100%;
  display: block;
  width: 100%;
}

p,
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}


/* 共通パーツ */
.inner {
  max-width: 1920px!important;
  margin: 0 auto;
}

/*pg-fv */

/* パンくずリスト　*/
.pg-breadcrumb {
      display: flex;
    align-items: center;
  justify-content: flex-end;
    margin-top: 8px;
    column-gap: 0.5em;
}
.breadcrumb__text {
      font-size: 14px;
    font-weight: 600;
}

/* pg-fv */
.pg-fv {
  padding-top: 146px;
}
.pg-fv__inner {
  padding: 0 clamp(1.25rem, -9.917rem + 23.26vw, 18rem);
}
@media (max-width: 1770px) {
  .pg-fv {
    padding-top: clamp(10rem, 8.084rem + 3.99vw, 12.5rem);
  }
}
@media (max-width: 767px) {
  .pg-fv {
    padding-top: 88px;
  }
}


/* btn1 */
.btn1 {
      display: flex;
    align-items: center;
    column-gap: clamp(0.5rem, 0.167rem + 0.69vw, 1rem);
    padding: clamp(0.5rem, 0.167rem + 0.69vw, 1rem) clamp(0.75rem, 0.25rem + 1.04vw, 1.5rem);
    background-color: #2F2020;
    border-radius: 4px;
    width: fit-content;
}
.btn1__text {
      color: #fff;
    font-weight: 600;
    font-size: clamp(0.875rem, 0.625rem + 0.52vw, 1.25rem);
}
.btn1__icon {
      width: clamp(0.875rem, 0.708rem + 0.35vw, 1.125rem);
    object-fit: contain;
}

/* title__box */
.title__box--center {
  text-align: center;
}
.title-box__sub {
      font-weight: 600;
    letter-spacing: 0.2em;
}
.title-box__main {
    font-size: clamp(2.5rem, 0.767rem + 3.53vw, 5rem);
    font-weight: 600;
    font-family: "Poppins", sans-serif;
    letter-spacing: 0.05em;
    color: #FF7745;
  color: #F74200;
}
.flowing-anim,
.flowing-anim--center {
  width: 100px;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
}

.flowing-anim.is-active {
  animation-name: flowing-anim;
  animation-duration: 3.5s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}
.flowing-anim--center.is-active {
  animation-name: flowing-anim--center;
  animation-duration: 2s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

@keyframes flowing-anim {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
@keyframes flowing-anim--center {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}

@media (max-width: 389px) {
  .title-box__sub {
    font-size: 12px;
  }
  .title-box__main {
    font-size: 36px;
  }
}

.title1 {
  white-space: nowrap;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    font-size: clamp(1.25rem, 1.083rem + 0.35vw, 1.5rem);
    font-weight: 600;
  position: relative;
      display: flex;
    align-items: center;
}
.title1:before,
.title1:after {
    position: absolute;
    width: clamp(1rem, 0.697rem + 0.62vw, 1.438rem);
    height: clamp(1rem, 0.697rem + 0.62vw, 1.438rem);
  border-radius: 50%;
    background-color: #FF7745;
    content: '';
}
.title1:before {
    left: -45px;
}
.title1:after {
    right: -45px;
}
@media (max-width: 767px) {
  .title1:before {
    left: -32px;
  }
  .title1:after {
    right: -32px;
  }
}
@media (max-width: 389px) {
  .title1 {
    font-size: 18px;
  }
}

/* pcとspの文字切り替え */
.sp-content {
  display: none;
}
@media (max-width: 767px) {
    .pc-content {
    display: none;
  }
  .sp-content {
    display: block;
  }
}

/* アニメーション */
.anime2 {
  animation-delay: 0.5s;
}
.anime3 {
  animation-delay: 1s;
}
.anime4 {
  animation-delay: 1.5s;
}
.anime5 {
  animation-delay:2s;
}
.anime6 {
  animation-delay: 2.5s;
}
.anime7 {
  animation-delay: 3s;
}
.anime8 {
  animation-delay: 3.5s;
}
.anime9 {
  animation-delay: 4s;
}
.anime10 {
  animation-delay: 4.5s;
}
.anime11 {
  animation-delay: 5s;
}
.anime12 {
  animation-delay: 5.5s;
}
.anime13 {
  animation-delay: 6s;
}
.anime14 {
  animation-delay: 6.5s;
}
