@import url("https://use.typekit.net/rny7rnl.css");
html {
  font-size: 10px;
}

body {
  overflow-x: hidden;
}

.l-container {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

.l-container #feature {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 12rem;
  background-color: #E4E4E4;
  color: #555;
  text-align: center;
}
.l-container #feature img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: -moz-crisp-edges;
}
.l-container #feature .default-img {
  width: 100%;
  height: auto;
  display: block;
}
.l-container #feature * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.l-container #feature *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.l-container #feature *::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.l-container #feature a {
  display: block;
  text-decoration: none;
  position: relative;
}
.l-container #feature a::after {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.6);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.l-container #feature a:hover {
  cursor: pointer;
}
.l-container #feature a:hover::after {
  opacity: 1;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.l-container #feature .main {
  width: 140rem;
  margin: 0 auto;
}

/* ------- credit ------- */
.l-container #feature .creditContainer {
  margin: 4.1rem 0 2.3rem 0;
  color: #555;
}
.l-container #feature .creditContainer * {
  color: #555;
}
.l-container #feature .creditContainer .credit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font: normal 400 1.5rem/2.8rem "jaf-bernino-sans", sans-serif;
  letter-spacing: 0.085em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}
.l-container #feature .creditContainer li {
  text-align: center;
}
.l-container #feature .creditContainer li a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
}
.l-container #feature .creditContainer li a:hover {
  opacity: 0.6;
  cursor: pointer;
  text-decoration: none;
}
.l-container #feature .creditContainer li a::after {
  content: none;
}
.l-container #feature .creditContainer .item-name {
  font: normal 500 1.8rem/3.6rem "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  margin-bottom: 1.7rem;
}

/* ------- hero ------- */
.l-container #feature .hero {
  margin: 0 auto 12.8rem;
  width: 100%;
  position: relative;
}
.l-container #feature .hero__inner {
  width: 90rem;
  margin: 0 auto;
  padding-top: 5.8rem;
}
.l-container #feature .hero__img {
  margin: 0 auto 6.6rem;
}
.l-container #feature .hero__txt-blk {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.l-container #feature .hero__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 2rem;
  font: normal 500 2rem/4.4rem "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  letter-spacing: 0.14em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}
.l-container #feature .hero__text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font: normal 500 1.4rem/2.8rem "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  letter-spacing: 0.08em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}

/* ------- container ------- */
.l-container #feature .container {
  width: 100%;
  margin: 0 auto;
}
.l-container #feature .container__inner {
  width: 96rem;
  margin: 0 auto;
  position: relative;
}
.l-container #feature .container__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 4.7rem;
  font: normal 400 2.3rem/1 "jaf-bernino-sans", sans-serif;
  letter-spacing: 0.3em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}
.l-container #feature .container__title .num {
  font-size: 2.5rem;
}
.l-container #feature .container__txt {
  width: 48rem;
  margin: 0 auto 9.2rem;
  text-align: left;
  font: normal 500 1.4rem/2.8rem "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  letter-spacing: 0.05em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}
.l-container #feature .container .container__fig-blk {
  width: 68rem;
  margin: 0 auto;
}
.l-container #feature .container__fig {
  width: 33rem;
  margin: 0 0.5rem 1rem 0.5rem;
}
.l-container #feature .container__fig01 {
  width: 48rem;
  margin: 0 auto;
}
.l-container #feature .container__fig06 {
  width: 68rem;
  margin: 0 auto 1rem;
}
.l-container #feature .container__fig11 {
  width: 24rem;
  margin: 32.6rem 0 13.6rem 5rem;
}
.l-container #feature .container__fig12 {
  width: 30rem;
  margin: 9rem 0 0 4rem;
}
.l-container #feature .container .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.l-container #feature .container .btn {
  width: 44rem;
  margin: 12rem auto 0;
}

/* ------- container02 ------- */
.l-container #feature .container02 {
  width: 100%;
}
.l-container #feature .container02 .creditContainer {
  margin: 4.1rem 0 2.2rem 0;
}
.l-container #feature .container02 .container__fig06 {
  width: 67rem;
  margin: 0 auto 1rem;
}
.l-container #feature .container02 .container__fig11 {
  width: 30rem;
  margin: 9rem 0 13.6rem 3.5rem;
}
.l-container #feature .container02 .container__fig12 {
  width: 27rem;
  margin: 30.7rem 0 0 4rem;
}

/* ------- animation ------- */
.l-container #feature .js_anime.fadeUp {
  -webkit-transform: translateY(4rem);
          transform: translateY(4rem);
  opacity: 0;
  -webkit-transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
  transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
  transition: opacity 1.5s ease, transform 1.5s ease;
  transition: opacity 1.5s ease, transform 1.5s ease, -webkit-transform 1.5s ease;
}
.l-container #feature .js_anime.fadeUp.is_show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.l-container #feature .js_anime.fadeUp02 {
  -webkit-transform: translateY(4rem);
          transform: translateY(4rem);
  opacity: 0;
  -webkit-transition: opacity 1.5s ease 0.6s, -webkit-transform 1.5s ease 0.6s;
  transition: opacity 1.5s ease 0.6s, -webkit-transform 1.5s ease 0.6s;
  transition: opacity 1.5s ease 0.6s, transform 1.5s ease 0.6s;
  transition: opacity 1.5s ease 0.6s, transform 1.5s ease 0.6s, -webkit-transform 1.5s ease 0.6s;
}
.l-container #feature .js_anime.fadeUp02.is_show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.l-container #feature .js_anime.fadeLeft {
  -webkit-transform: translateX(-4rem);
          transform: translateX(-4rem);
  opacity: 0;
  -webkit-transition: opacity 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
  transition: opacity 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
  transition: opacity 1.5s ease 0.5s, transform 1.5s ease 0.5s;
  transition: opacity 1.5s ease 0.5s, transform 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
}
.l-container #feature .js_anime.fadeLeft.is_show {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

.l-container #feature .js_anime.fadeRight {
  -webkit-transform: translateX(4rem);
          transform: translateX(4rem);
  opacity: 0;
  -webkit-transition: opacity 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
  transition: opacity 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
  transition: opacity 1.5s ease 0.5s, transform 1.5s ease 0.5s;
  transition: opacity 1.5s ease 0.5s, transform 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
}
.l-container #feature .js_anime.fadeRight.is_show {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}

.l-container #feature .delay1 {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.l-container #feature .delay2 {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

/* ------- ------- */
@media screen and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}
.area-header {
  max-width: 100%;
}

.breadcrumbs {
  max-width: 100%;
}

.feature-snslist {
  overflow: hidden;
}

.l-footer,
.pc-footer {
  padding: 0;
  margin: 0;
  overflow: hidden;
}

.pic__accordion {
  display: none !important;
}

.pc-header {
  overflow: hidden;
}