@charset "UTF-8";
/* 文字コードの指定 */
/* ページ全般の設定 */
* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

/*@media screen and (max-width: 1023px) and (min-width: 768px) {
    html {
        font-size: 1vw;
    }
}*/
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333333;
  line-height: 170%;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

li {
  list-style: none;
}

a {
  color: #333333;
  text-decoration: none;
}
@media (min-width: 768px) {
  a {
    transition: 0.3s;
  }
}
@media (min-width: 768px) {
  a:hover {
    opacity: 0.7;
  }
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

em {
  font-style: normal;
}

section {
  padding: 8rem 2rem;
}
@media (max-width: 767px) {
  section {
    padding: 4rem 2rem;
  }
}

@media (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}

.flex {
  display: flex;
}
@media (max-width: 767px) {
  .flex {
    flex-direction: column;
  }
}

.grid {
  display: grid;
}
@media (max-width: 767px) {
  .grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  main {
    margin-top: 6.4rem;
  }
}

.content-width {
  max-width: 110rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .content-width {
    width: 100%;
  }
}

.orange {
  color: #F2AC17;
}

.marker {
  background: linear-gradient(transparent 75%, #FADA87 75%);
}

.marker--or {
  background: linear-gradient(transparent 80%, #F2AC17 80%);
}

.btn {
  width: 100%;
  height: 6.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  border-radius: 99.9rem;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
}

.btn--download {
  background: #1BA3AF;
}

.btn--contact {
  background: #D14C1A;
}

.more-btn {
  width: 100%;
  max-width: 32rem;
  height: 5.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  border-radius: 99.9rem;
  color: #fff;
  background: #D14C1A;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  position: relative;
}
@media (max-width: 767px) {
  .more-btn {
    max-width: 100%;
  }
}
.more-btn::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-wh.svg);
  background-size: contain;
  width: 0.8rem;
  height: 1.5rem;
  top: 50%;
  bottom: 50%;
  transform: translateY(-50%);
  right: 1.9rem;
}

.more-border-btn {
  width: 100%;
  max-width: 28rem;
  height: 5.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  border-radius: 99.9rem;
  color: #F2AC17;
  border: solid 2px #F2AC17;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  position: relative;
}
@media (max-width: 767px) {
  .more-border-btn {
    max-width: 100%;
  }
}
.more-border-btn::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-or.svg);
  background-size: contain;
  width: 0.8rem;
  height: 1.5rem;
  top: 50%;
  bottom: 50%;
  transform: translateY(-50%);
  right: 1.9rem;
}

.section-title {
  text-align: center;
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 100%;
  margin-bottom: 5.6rem;
}
@media (max-width: 767px) {
  .section-title {
    font-size: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
.section-title .line {
  display: inline-block;
  padding-bottom: 2.4rem;
  position: relative;
}
@media (max-width: 767px) {
  .section-title .line {
    padding-bottom: 1.6rem;
  }
}
.section-title .line::after {
  position: absolute;
  content: "";
  background: #F2AC17;
  width: 5.6rem;
  height: 4px;
  border-radius: 10px;
  bottom: 0;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
}
@media (max-width: 767px) {
  .section-title .line::after {
    width: 4rem;
  }
}
.section-title .en {
  color: #F2AC17;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 1.6rem;
  display: block;
  margin-bottom: 1.6rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .section-title .en {
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }
}
.section-title .ja {
  display: block;
  line-height: 1;
  font-size: 4rem;
}
@media (max-width: 767px) {
  .section-title .ja {
    font-size: 2.4rem;
  }
}

.white-block {
  background: #fff;
  border-radius: 1.6rem;
}

/*　上に上がる動き　*/
@media (min-width: 768px) {
  #header.UpMove {
    animation: UpAnime 0.5s forwards;
  }
}

@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
  to {
    opacity: 0;
    transform: translateY(-100px) translateX(-50%);
  }
}
/*　下に下がる動き　*/
@media (min-width: 768px) {
  #header.DownMove {
    animation: DownAnime 0.5s forwards;
  }
}

@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px) translateX(-50%);
  }
  to {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
}
/*=================================================
    ヘッダー
===================================================*/
.header {
  width: 100%;
  background: #fff;
  position: fixed;
  top: 2.4rem;
  z-index: 10;
  padding: 1.8rem 2.4rem 1.8rem 4.8rem;
  border-radius: 99.9rem;
  width: 94.4444444444vw;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  /*ナビゲーションのリンク設定*/
}
@media (min-width: 768px) {
  .header {
    left: 50%;
    right: 50%;
    transform: translateX(-50%);
  }
}
@media (max-width: 767px) {
  .header {
    position: fixed;
    padding: 0 2rem;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    border-radius: 0;
    height: 6.4rem;
  }
}
.header .header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .header .header__inner {
    height: 6.4rem;
    width: 100%;
  }
}
.header .header__logo {
  max-width: 12vw;
  width: 100%;
}
@media (min-width:1440px) {
  .header .header__logo {
    max-width: 16rem;
  }
}
@media (max-width: 767px) {
  .header .header__logo {
    max-width: 12rem;
  }
}
.header .header__logo a {
  display: flex;
}
.header .header__inner__right {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 1024px) {
  .header .header__inner__right {
    display: none;
  }
}
.header .header__menu {
  display: flex;
  align-items: center;
  margin-right: 4.4444444444vw;
  gap: 2.7777777778vw;
}
@media (min-width:1440px) {
  .header .header__menu {
    margin-right: 6.4rem;
    gap: 4rem;
  }
}
.header .btn-list {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.header .btn {
  width: 13.8888888889vw;
  font-size: 1.0416666667vw;
}
@media (min-width:1440px) {
  .header .btn {
    width: 20rem;
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .header .btn {
    font-size: 1.5rem;
  }
}
.header nav {
  text-align: center;
}
.header nav ul {
  list-style: none;
  display: flex;
  justify-content: center;
}
.header nav ul ul {
  display: block;
}
.header nav ul li {
  position: relative;
}
.header nav ul li a {
  display: block;
  text-decoration: none;
  transition: all 0.3s;
  font-size: 0.9722222222vw;
  font-weight: 700;
}
@media (min-width:1440px) {
  .header nav ul li a {
    font-size: 1.4rem;
  }
}

.has-child .text-wrap {
  display: flex;
  align-items: center;
  gap: 9.7px;
}
.has-child .text-wrap .arrow {
  width: 1.2rem;
}
.has-child .child-list {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 21.1rem;
  padding: 1.6rem;
  border-radius: 0.8rem;
  background: #fff;
}
@media (min-width: 768px) {
  .has-child .child-list {
    position: absolute;
    left: -7.2rem;
    top: 3.4rem;
    z-index: 4;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s;
  }
}
@media (max-width: 767px) {
  .has-child .child-list {
    margin: 8px auto 0;
  }
}
.has-child .child-list li {
  margin-bottom: 2.4rem;
}
.has-child .child-list li a {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.has-child .child-list li a .dot {
  background: #D9D9D9;
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
}
.has-child .child-list li:last-child {
  margin-bottom: 0;
}

/*hoverしたら表示*/
.has-child:hover > ul,
.has-child ul li:hover > ul,
.has-child:active > ul,
.has-child ul li:active > ul {
  visibility: visible;
  opacity: 1;
}

/*=================================================
    SP ハンバーガーメニュー
===================================================*/
/* ハンバーガーメニューボタン */
.hamburger-btn {
  position: fixed;
  top: 0.8rem;
  right: 2rem;
  width: 4.8rem;
  height: 4.8rem;
  z-index: 100;
  cursor: pointer;
  background: #1BA3AF;
  border-radius: 50%;
}
.hamburger-btn .hamburger-btn__line {
  width: 2.4rem;
  height: 1rem;
  position: relative;
  transform: translateY(-50%) translateX(-50%);
  top: 50%;
  bottom: 50%;
  left: 50%;
  right: 50%;
}
.hamburger-btn .hamburger-btn__line .line {
  position: absolute;
  content: "";
  background: #fff;
  height: 2px;
  left: 0;
  transition: 0.3s;
  width: 2.4rem;
}
.hamburger-btn .hamburger-btn__line .line:nth-child(1) {
  top: 0;
}
.hamburger-btn .hamburger-btn__line .line:nth-child(2) {
  bottom: 0;
}

/* ×　オープン */
.hamburger-btn.active .line:nth-child(1), .hamburger-btn.active .line:nth-child(2) {
  width: 2.4rem;
  top: 33%;
  left: 0;
}
.hamburger-btn.active .line:nth-child(1) {
  transform: rotate(-45deg);
}
.hamburger-btn.active .line:nth-child(2) {
  transform: rotate(45deg);
}

/* メニューの中身 */
#hamburger-menu {
  width: 100%;
  height: 100%;
  background-color: #fff;
  background-size: 100%;
  background-position: center top;
  background-image: url(../images/fv_bg_sp.png);
  position: fixed;
  top: 6.4rem;
  left: 0;
  z-index: 99;
  visibility: hidden;
  padding: 1.6rem 2rem 3.6rem;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item {
  padding: 2rem 0;
  border-bottom: solid 1px #D9D9D9;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item:last-child {
  margin-bottom: 0;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item p,
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item a {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item .child-list {
  margin-top: 1.6rem;
  padding-left: 1.6rem;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item .child-list li {
  margin-bottom: 1.6rem;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item .child-list li:last-child {
  margin-bottom: 0;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item .child-list li a {
  font-size: 1.4rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item .child-list li a .dot {
  background: #D9D9D9;
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
}
#hamburger-menu .hamburger-menu__list .hamburger-menu__list__item:first-child {
  border-top: solid 1px #D9D9D9;
}
#hamburger-menu .btn-list {
  margin-top: 2.4rem;
  margin-bottom: 5rem;
  flex-direction: column;
}
#hamburger-menu .btn-list li {
  width: 100%;
}
#hamburger-menu .btn-list li a {
  width: 100%;
  height: 5.6rem;
}

/* ハンバーガーメニュー開いた時 */
#hamburger-menu.active {
  overflow: scroll;
  visibility: visible;
  transition: all 0.5s;
  left: 0;
  -webkit-overflow-scrolling: touch;
}

body.active {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

@media (min-width: 768px) {
  .hamburger-btn,
  .hamburger-menu {
    display: none;
  }
}
@media (max-width: 1024px) {
  .hamburger-btn,
  .hamburger-menu {
    display: block;
  }
}

.mv {
  background-image: url(../images/bg-mv.png);
  background-size: cover;
  background-position: bottom center;
  padding: 21.2rem 2rem 4.2rem;
}
@media (max-width: 767px) {
  .mv {
    padding: 4rem 2rem 4rem;
    background-image: url(../images/sp_bg-mv.png);
    background-position: top center;
    background-size: contain;
  }
}
.mv .flex {
  justify-content: center;
  align-items: center;
  gap: 3.3333333333vw;
}
@media (min-width:1440px) {
  .mv .flex {
    gap: 4.8rem;
  }
}
@media (max-width: 767px) {
  .mv .flex {
    flex-direction: column-reverse;
  }
}
.mv .mv__title {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.08em;
}
@media (max-width: 767px) {
  .mv .mv__title {
    font-size: 2.8rem;
    margin-top: 0.8rem;
  }
}
.mv .mv__catch {
  font-size: 1.8rem;
  font-weight: 500;
  margin-top: 3.2rem;
  line-height: 170%;
  letter-spacing: 0.08em;
  font-feature-settings: "palt";
}
@media (max-width: 767px) {
  .mv .mv__catch {
    font-size: 1.6rem;
    font-weight: 400;
    margin-top: 0.8rem;
  }
}
.mv .btn--contact {
  max-width: 34rem;
  margin-top: 5.6rem;
  height: 7.2rem;
  font-size: 2rem;
  gap: 1rem;
}
@media (max-width: 767px) {
  .mv .btn--contact {
    max-width: 100%;
    margin-top: 2.4rem;
    font-size: 1.6rem;
    height: 5.6rem;
  }
}
.mv .btn--contact .icon {
  width: 2.3rem;
}
@media (max-width: 767px) {
  .mv .btn--contact .icon {
    width: 2rem;
  }
}
.mv .mv__img {
  max-width: 59rem;
  width: 100%;
}

.logo-slider {
  padding: 4rem 0;
}
@media (max-width: 767px) {
  .logo-slider {
    padding: 0 0 4rem;
  }
}
.logo-slider .loop {
  margin-bottom: 1.6rem;
}
@media (max-width: 767px) {
  .logo-slider .loop {
    margin-bottom: 0.8rem;
  }
}
.logo-slider .loop li {
  margin: 0 1.2rem;
}
@media (max-width: 767px) {
  .logo-slider .loop li {
    margin: 0 0.4rem;
  }
}
@media (max-width: 767px) {
  .logo-slider .loop li img {
    width: 10rem;
  }
}
.logo-slider .loop--bottom {
  margin-bottom: 0;
}

.item-page .mv {
  background-image: url(../images/bg-mv-item.png);
}
@media (max-width: 767px) {
  .item-page .mv {
    background-image: url(../images/sp_bg-mv-item.png);
  }
}
.item-page .mv .btn--download {
  margin-top: 5.6rem;
  max-width: 34rem;
  height: 7.2rem;
  font-size: 2rem;
}
@media (max-width: 767px) {
  .item-page .mv .btn--download {
    margin-top: 2.4rem;
    height: 5.6rem;
    font-size: 1.6rem;
    max-width: 100%;
  }
}

.subsidy {
  background-image: url(../images/bg-subsidy.png);
  background-size: cover;
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
}
@media (max-width: 767px) {
  .subsidy {
    background-image: url(../images/sp_bg-subsidy.png);
    padding-right: 0;
  }
}
.subsidy .subsidy__item {
  gap: 4rem;
}
@media (min-width: 768px) {
  .subsidy .subsidy__item {
    grid-template-columns: 1fr 1fr;
  }
}
.subsidy .more-btn {
  margin: 4rem auto 0;
  height: 6.4rem;
}
@media (max-width: 767px) {
  .subsidy .more-btn {
    height: 5.6rem;
    margin: 2.4rem auto 0;
  }
}
.subsidy .subsidy__slider {
  position: relative;
}
.subsidy .swiper-button-prev,
.subsidy .swiper-button-next {
  height: 56px;
  width: 56px;
  z-index: 3;
}
@media (min-width: 768px) {
  .subsidy .swiper-button-prev,
  .subsidy .swiper-button-next {
    display: none;
  }
}
@media (max-width: 767px) {
  .subsidy .swiper-button-prev,
  .subsidy .swiper-button-next {
    width: 4rem;
    height: 4rem;
    top: 49%;
  }
}
.subsidy .swiper-button-prev:after,
.subsidy .swiper-button-next:after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 56px;
  margin: auto;
  width: 56px;
}
@media (min-width: 768px) {
  .subsidy .swiper-button-prev:after,
  .subsidy .swiper-button-next:after {
    display: none;
  }
}
@media (max-width: 767px) {
  .subsidy .swiper-button-prev:after,
  .subsidy .swiper-button-next:after {
    width: 4rem;
    height: 4rem;
  }
}
@media (max-width: 767px) {
  .subsidy .swiper-button-prev:after {
    display: none;
  }
}
.subsidy .swiper-button-next:after {
  background-image: url(../images/arrow-next.svg);
}
.subsidy .swiper-button-next {
  right: 15.3%;
  left: auto;
}
@media (max-width: 767px) {
  .subsidy .swiper-button-next {
    right: 12%;
  }
}
@media (max-width: 767px) {
  .subsidy .swiper-button-prev {
    display: none;
  }
}
@media (max-width: 767px) {
  .subsidy .btn-wrap {
    padding-right: 2rem;
  }
}

.subsidy__price {
  border: solid 4px #F2AC17;
  border-radius: 1.6rem;
  padding: 4.8rem 4rem;
  background: #fff;
}
@media (max-width: 767px) {
  .subsidy__price {
    padding: 2rem 1.6rem 1.6rem;
    border: solid 2px #F2AC17;
  }
}
.subsidy__price .price-title {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 767px) {
  .subsidy__price .price-title {
    font-size: 2rem;
  }
}
.subsidy__price .price-text {
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .subsidy__price .price-text {
    margin-top: 1.6rem;
  }
}
.subsidy__price .price-max {
  text-align: center;
  color: #F2AC17;
  font-weight: 700;
  font-size: 3.2rem;
  margin-top: 1.6rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .subsidy__price .price-max {
    font-size: 2.4rem;
    margin-top: 0.8rem;
  }
}
.subsidy__price .price-max em {
  font-size: 6.4rem;
}
@media (max-width: 767px) {
  .subsidy__price .price-max em {
    font-size: 4.8rem;
  }
}

@media (max-width: 767px) {
  .subsidy__banner img {
    height: 20rem;
    -o-object-fit: cover;
       object-fit: cover;
    overflow: hidden;
    border-radius: 1.6rem;
  }
}

.worries .worries__list {
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  row-gap: 2.4rem;
}
@media (min-width: 768px) {
  .worries .worries__list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .worries .worries__list {
    gap: 0.8rem;
  }
}
.worries .worries__list li {
  background: #F2F5F6;
  border-radius: 1.6rem;
  padding: 1.2rem 3rem 2.4rem;
}
@media (max-width: 767px) {
  .worries .worries__list li {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    padding: 2rem;
  }
}
.worries .worries__list li .icon {
  display: block;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .worries .worries__list li .icon {
    width: 2.4rem;
  }
}
.worries .worries__list li p {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: 0.08em;
  margin-top: 0.5rem;
}
@media (max-width: 767px) {
  .worries .worries__list li p {
    margin-top: 0;
  }
}
.worries .arrow {
  display: block;
  margin: 4.2rem auto 3.2rem;
}
@media (max-width: 767px) {
  .worries .arrow {
    width: 3.2rem;
    margin: 1.6rem auto 1.4rem;
  }
}
.worries .worries__bottom {
  background: #F2AC17;
  border-radius: 1.6rem;
  padding: 4rem 2rem;
}
@media (max-width: 767px) {
  .worries .worries__bottom {
    padding: 2.4rem 1.6rem;
  }
}
.worries .worries__bottom .bottom-title {
  background: #fff;
  color: #F2AC17;
  padding: 0.8rem;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1;
  display: table;
  margin: 0 auto;
  border-radius: 0.4rem;
  margin-bottom: 2.4rem;
}
@media (max-width: 767px) {
  .worries .worries__bottom .bottom-title {
    font-size: 2.4rem;
    margin-bottom: 1.6rem;
  }
}
.worries .worries__bottom p {
  color: #fff;
  font-weight: 500;
  max-width: 94rem;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 767px) {
  .worries .worries__bottom p {
    text-align: left;
  }
}

.strengths,
.function {
  background: #FCFBF2;
}

.strengths__list {
  gap: 4rem;
}
@media (min-width: 768px) {
  .strengths__list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .strengths__list {
    gap: 1.6rem;
  }
}
.strengths__list li {
  padding: 2.4rem 2.4rem 3.2rem;
}
@media (max-width: 767px) {
  .strengths__list li {
    padding: 1.6rem;
  }
}
.strengths__list li .list-img img {
  width: 100%;
}
.strengths__list li .list-title {
  text-align: center;
  margin-top: 2.4rem;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .strengths__list li .list-title {
    font-size: 1.8rem;
    margin-top: 0.8rem;
  }
}
.strengths__list li .list-label {
  color: #fff;
  background: #F2AC17;
  padding: 0.8rem;
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  margin-top: 0.8rem;
  text-align: center;
  border-radius: 0.4rem;
}
@media (max-width: 767px) {
  .strengths__list li .list-label {
    font-size: 1.8rem;
    margin-top: 1.2rem;
  }
}
.strengths__list li p {
  margin-top: 0.8rem;
  font-weight: 400;
}
@media (max-width: 767px) {
  .strengths__list li p {
    font-size: 1.6rem;
  }
}

.icon__list {
  gap: 1.6rem;
  margin-top: 8rem;
  display: grid;
}
@media (min-width: 768px) {
  .icon__list {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .icon__list {
    grid-template-columns: 1fr 1fr;
    margin-top: 2.4rem;
  }
}
.icon__list li {
  padding: 1.6rem;
  text-align: center;
}
.icon__list li p {
  font-weight: 700;
  margin-top: 1.6rem;
}

.modal__img {
  border-radius: 1.6rem;
  overflow: hidden;
}
.modal__img img {
  width: 100%;
}
@media (max-width: 767px) {
  .modal__img img {
    height: 20rem;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.modal__img__list {
  gap: 0.9rem;
  margin-top: 0.9rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}
@media (max-width: 767px) {
  .modal__img__list {
    gap: 0.4rem;
    margin-top: 0.4rem;
  }
}
.modal__img__list li {
  border-radius: 0.8rem;
  overflow: hidden;
}
@media (max-width: 767px) {
  .modal__img__list li img {
    height: 8rem;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.modal-title {
  text-align: center;
  background: #F2AC17;
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  padding: 0.8rem 0;
  border-radius: 4px;
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .modal-title {
    margin-top: 1.6rem;
    font-size: 1.8rem;
  }
}

.modal-text {
  margin-top: 1.6rem;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .modal-text {
    margin-top: 0.8rem;
  }
}

.modaal-container {
  max-width: 70rem;
  border-radius: 1.6rem;
}

.modaal-content-container {
  padding: 4rem 5.6rem;
}
@media (max-width: 767px) {
  .modaal-content-container {
    padding: 2.4rem 1.6rem 5.6rem;
  }
}

.modaal-wrapper .modaal-close {
  background-image: url(../images/modal-close.svg);
  background-size: contain;
  width: 7.2rem;
  height: 7.2rem;
  right: -4%;
  top: -3%;
  position: absolute;
}
@media (max-width: 767px) {
  .modaal-wrapper .modaal-close {
    width: 4rem;
    height: 4rem;
    right: -5%;
    top: -3%;
  }
}

.modaal-close:after,
.modaal-close:before {
  display: none;
}

.hide-area {
  display: none;
}

/* 続きを見る */
@media (max-width: 767px) {
  .text_wrapper {
    position: relative;
    margin-bottom: 45px;
  }
}

@media (max-width: 767px) {
  .function-wrap {
    height: 101.3rem;
    overflow: hidden;
    padding: 0 2rem;
  }
}

@media (max-width: 767px) {
  .show-more {
    position: absolute;
    bottom: -9rem;
    left: 0px;
    width: 100%;
    height: 12rem;
    padding-top: 4rem;
    text-align: center;
    line-height: 12rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 70%);
    cursor: pointer;
    transition: bottom 0.2s;
  }
}
@media (max-width: 767px) {
  .show-more .btn {
    background: #D14C1A;
    max-width: 20rem;
    height: 4.8rem;
    margin: 0 auto;
  }
}
.show-more .btn .underline {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .function {
    padding-left: 0;
    padding-right: 0;
  }
}
.function .active {
  background: none;
  bottom: -30px;
}

.case .more-btn {
  margin: 4rem auto 0;
  height: 6.4rem;
}
@media (max-width: 767px) {
  .case .more-btn {
    height: 5.6rem;
    margin: 2.4rem auto 0;
  }
}
.case .case__list .list-text {
  font-weight: 700;
}

.case__list {
  gap: 4rem;
}
@media (min-width: 768px) {
  .case__list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .case__list {
    gap: 2.4rem;
  }
}
.case__list .name {
  font-size: 1.4rem;
  margin-top: 1.2rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .case__list .name {
    margin-top: 0.8rem;
  }
}
.case__list .list-text {
  margin-top: 1.2rem;
  line-height: 170%;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .case__list .list-text {
    margin-top: 0.8rem;
    font-size: 1.6rem;
  }
}

.support .case__list .name {
  display: flex;
  align-items: baseline;
  gap: 1.6rem;
  font-size: 2rem;
  margin-top: 2rem;
}
.support .case__list .name .orange {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 3.2rem;
}

.cta {
  background-image: url(../images/bg-cta.png);
  background-size: cover;
}
@media (max-width: 767px) {
  .cta {
    background-image: url(../images/sp_bg-cta.png);
  }
}
.cta .section-title {
  text-align: center;
  color: #fff;
  margin-bottom: 4rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .cta .section-title {
    font-size: 1.8rem;
    line-height: 170%;
    margin-bottom: 2.4rem;
  }
}
.cta .cta__list {
  gap: 4rem;
}
@media (min-width: 768px) {
  .cta .cta__list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .cta .cta__list {
    gap: 1.6rem;
  }
}
.cta .cta__list li {
  background: #fff;
  border-radius: 1.6rem;
  padding: 4rem 0;
}
@media (max-width: 767px) {
  .cta .cta__list li {
    padding: 3.2rem 1.6rem;
  }
}
.cta .cta__list li .btn {
  max-width: 36rem;
  margin: 1.6rem auto 0;
}

.cta-title {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .cta-title {
    font-size: 1.6rem;
  }
}

.fukidashi {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 1.2rem;
}

.cta--contact {
  background-image: url(../images/bg-contact.png);
}
@media (max-width: 767px) {
  .cta--contact {
    background-image: url(../images/sp_bg-cta.png);
  }
}
@media (min-width: 768px) {
  .cta--contact .section-title {
    margin-bottom: 5.6rem;
  }
}
.cta--contact .section-title .en {
  color: #fff;
}

.cta-navi {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 9;
}
@media (min-width: 768px) {
  .cta-navi {
    display: none;
  }
}
.cta-navi .btn-list {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.cta-navi .btn {
  border-radius: 0;
  height: 5.6rem;
  font-size: 1.4rem;
  gap: 0.5rem;
}
.cta-navi .btn--download .icon {
  width: 1.6rem;
}
.cta-navi .btn--contact .icon {
  width: 1.6rem;
}

.partner {
  background: #F2F5F6;
}
@media (max-width: 767px) {
  .partner .section-title {
    margin-bottom: 2.6rem;
  }
}
.partner .section-title .marker {
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  .partner .section-title .marker {
    font-size: 2rem;
  }
}
.partner .partner__block {
  padding: 5.6rem 6.8rem;
}
@media (max-width: 767px) {
  .partner .partner__block {
    padding: 4rem 1.6rem;
  }
}
.partner .partner-title {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding-bottom: 0.8rem;
  border-bottom: solid 2px #D9D9D9;
  margin-bottom: 1.6rem;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .partner .partner-title {
    font-size: 1.8rem;
  }
}
.partner .partner-title .dot {
  background: #F2AC17;
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.partner .partner__block__item {
  margin-bottom: 4rem;
}
.partner .partner__block__item:last-of-type {
  margin-bottom: 0;
}
.partner .partner__list {
  -moz-column-gap: 1.6rem;
       column-gap: 1.6rem;
  row-gap: 2.4rem;
}
@media (min-width: 768px) {
  .partner .partner__list {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .partner .partner__list {
    grid-template-columns: 1fr 1fr;
    gap: 0.8rem;
  }
}
.partner .partner__list li .list-img img {
  width: 100%;
}
.partner .partner__list li .system-name {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
}
.partner .partner__list li .company-name {
  margin-top: 0.8rem;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
}

.news {
  background: #F2F5F6;
}
.news .news__block {
  padding: 5.6rem 5.6rem;
}
@media (max-width: 767px) {
  .news .news__block {
    padding: 2.4rem 1.6rem 2.4rem;
  }
}
.news .news__list li {
  border-bottom: solid 1px #D9D9D9;
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  padding-left: 0.8rem;
}
@media (max-width: 767px) {
  .news .news__list li {
    padding: 1.2rem 0;
  }
}
.news .news__list li a {
  display: flex;
  align-items: center;
  gap: 4rem;
}
@media (max-width: 767px) {
  .news .news__list li a {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.8rem;
  }
}
.news .news__list li .news__list__left {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
@media (max-width: 767px) {
  .news .news__list li .news__list__left {
    gap: 0.8rem;
  }
}
.news .news__list li .news__list__left .date {
  color: #888888;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.04em;
}
.news .news__list li .news__list__left .category {
  display: inline-block;
  color: #F2AC17;
  border: solid 1px #F2AC17;
  border-radius: 99.9rem;
  padding: 0.6rem 1.6rem;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 700;
}
@media (max-width: 767px) {
  .news .news__list li .news__list__left .category {
    font-size: 1.2rem;
    padding: 4px 8px;
  }
}
.news .news__list li .news-title {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .news .news__list li .news-title {
    font-size: 1.4rem;
  }
}
.news .news__list li:first-child {
  padding-top: 0;
}
.news .more-link {
  text-align: right;
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .news .more-link {
    margin-top: 1.6rem;
  }
}
.news .more-link a {
  text-decoration: underline;
  font-weight: 700;
  line-height: 1;
  font-size: 1.6rem;
}

/* 投稿一覧 */
.archive {
  padding: 8rem 2rem;
}
@media (max-width: 767px) {
  .archive {
    padding: 4rem 2rem 4rem;
  }
}
.archive .archive-title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 100%;
  text-align: center;
}
@media (max-width: 767px) {
  .archive .archive-title {
    font-size: 2rem;
  }
}
.archive .archive__category {
  margin-top: 4rem;
  row-gap: 1.2rem;
  -moz-column-gap: 0.8rem;
       column-gap: 0.8rem;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  display: grid;
}
@media (max-width: 767px) {
  .archive .archive__category {
    margin-top: 2.4rem;
    row-gap: 1.2rem;
    -moz-column-gap: 0.4rem;
         column-gap: 0.4rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.archive .archive__category li a {
  font-size: 1.4rem;
  font-weight: 700;
  padding: 0.9rem 1.3rem 0.9rem 1.6rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: solid 1px #D9D9D9;
  border-radius: 99.9rem;
  line-height: 100%;
}
@media (max-width: 767px) {
  .archive .archive__category li a {
    font-size: 1.2rem;
    padding: 0.6rem 1.2rem 0.6rem 0.8rem;
  }
}

.archive__list {
  gap: 4rem;
  margin-top: 5.6rem;
}
@media (min-width: 768px) {
  .archive__list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .archive__list {
    gap: 1.6rem;
    margin-top: 4rem;
  }
}
.archive__list li {
  background: #fff;
  border-radius: 1.6rem;
  overflow: hidden;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.archive__list li .list-img img {
  width: 100%;
  height: 18rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .archive__list li .list-img img {
    height: 16rem;
  }
}
.archive__list li .archive__list__text {
  background: #fff;
  padding: 1.2rem 2.4rem 1.6rem;
}
@media (max-width: 767px) {
  .archive__list li .archive__list__text {
    padding: 1.2rem 2.4rem 1.2rem;
  }
}
.archive__list li .date {
  color: #888888;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .archive__list li .date {
    font-size: 1.4rem;
  }
}
.archive__list li .list-title {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 150%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (max-width: 767px) {
  .archive__list li .list-title {
    font-size: 1.6rem;
  }
}
.archive__list li .category {
  display: inline-block;
  color: #F2AC17;
  border: solid 1px #F2AC17;
  border-radius: 99.9rem;
  padding: 0.6rem 1.6rem;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 700;
  margin-top: 1.2rem;
}
@media (max-width: 767px) {
  .archive__list li .category {
    font-size: 1.2rem;
    margin-top: 0.8rem;
  }
}

.pager {
  margin: 5.6rem auto 0;
}
@media (max-width: 767px) {
  .pager {
    margin-top: 2.4rem;
  }
}
.pager .wp-pagenavi {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}
@media (max-width: 767px) {
  .pager .wp-pagenavi {
    justify-content: center;
  }
}
.pager .current,
.pager .page {
  border: solid 1px #F2AC17;
  background: #fff;
  color: #F2AC17;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  border-radius: 0.8rem;
  width: 4rem;
  height: 4rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 100%;
}
.pager .current {
  background: #F2AC17;
  color: #fff;
}
.pager .previouspostslink,
.pager .nextpostslink {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
}

/* 投稿記事 */
.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 100%;
}
.breadcrumbs a {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.news-single {
  padding: 13.8rem 2rem 4rem;
}
@media (max-width: 767px) {
  .news-single {
    padding: 2.2rem 2rem 4rem;
  }
}

.article {
  max-width: 80rem;
  margin: 3rem auto 2.4rem;
  background: #fff;
  border-radius: 1.6rem;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  padding: 5.6rem 2rem;
}
@media (max-width: 767px) {
  .article {
    margin: 2.2rem auto 2.2rem;
    padding: 0;
    box-shadow: none;
  }
}
.article .article__inner {
  max-width: 64rem;
  margin: 0 auto;
}
.article .article__head {
  margin-bottom: 2.4rem;
}
@media (max-width: 767px) {
  .article .article__head {
    margin-bottom: 1.6rem;
  }
}
.article .date {
  color: #888888;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .article .date {
    font-size: 1.4rem;
  }
}
.article .single-title {
  margin-top: 0.8rem;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 150%;
}
@media (max-width: 767px) {
  .article .single-title {
    font-size: 2rem;
    margin-top: 0.4rem;
  }
}
.article .category {
  display: inline-block;
  color: #F2AC17;
  border: solid 1px #F2AC17;
  border-radius: 99.9rem;
  padding: 0.6rem 1.6rem;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 700;
  margin-top: 1.6rem;
}
@media (max-width: 767px) {
  .article .category {
    font-size: 1.2rem;
    margin-top: 0.8rem;
  }
}
.article figure {
  border-radius: 0.8rem;
  overflow: hidden;
}
.article #ez-toc-container,
.article .article-index {
  background: #F3F5F6;
  padding: 4rem;
  border-radius: 0.8rem;
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .article #ez-toc-container,
  .article .article-index {
    margin-top: 1.6rem;
    padding: 2.4rem 1.6rem;
  }
}
.article #ez-toc-container .ez-toc-title,
.article #ez-toc-container .index-title,
.article .article-index .ez-toc-title,
.article .article-index .index-title {
  font-size: 2.4rem;
  line-height: 100%;
  font-weight: 700;
}
@media (max-width: 767px) {
  .article #ez-toc-container .ez-toc-title,
  .article #ez-toc-container .index-title,
  .article .article-index .ez-toc-title,
  .article .article-index .index-title {
    font-size: 2rem;
  }
}
.article #ez-toc-container ul,
.article .article-index ul {
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .article #ez-toc-container ul,
  .article .article-index ul {
    margin-top: 1.6rem;
  }
}
.article #ez-toc-container ul li a,
.article .article-index ul li a {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 100%;
  color: #F2AC17;
  padding: 1.6rem 0.8rem;
  border-bottom: solid 1px #D9D9D9;
  display: block;
}
@media (max-width: 767px) {
  .article #ez-toc-container ul li a,
  .article .article-index ul li a {
    line-height: 150%;
    padding: 0.8rem 0;
  }
}
.article #ez-toc-container ul li:first-child a,
.article .article-index ul li:first-child a {
  padding-top: 0;
}
.article .aricle-content h2 {
  margin-top: 4rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 100%;
  padding: 1.6rem;
  border-left: solid 4px #F2AC17;
  margin-bottom: 1.6rem;
  background: #FCFBF2;
}
@media (max-width: 767px) {
  .article .aricle-content h2 {
    margin-top: 2.4rem;
    font-size: 2rem;
    padding: 1.2rem 0.8rem 1.2rem;
    margin-bottom: 0.8rem;
    letter-spacing: 0.04em;
    line-height: 150%;
  }
}
.article .aricle-content p {
  font-size: 1.6rem;
  line-height: 170%;
}
@media (max-width: 767px) {
  .article .aricle-content p {
    font-size: 1.4rem;
  }
}
.article .aricle-content p b {
  color: #F2AC17;
}
.article .aricle-content h3 {
  margin-top: 4.8rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 100%;
  padding-bottom: 0.8rem;
  border-bottom: solid 1px #D9D9D9;
  margin-bottom: 1.2rem;
}
@media (max-width: 767px) {
  .article .aricle-content h3 {
    margin-top: 2.4rem;
    font-size: 1.8rem;
    margin-bottom: 0.8rem;
    line-height: 150%;
  }
}
.article .aricle-content .aricle-cta {
  background-image: url(../images/bg-aricle-cta.png);
  background-size: cover;
  background-position: center;
  border-radius: 0.8rem;
  padding: 3.2rem 2rem;
  margin-top: 4rem;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta {
    padding: 2.4rem 1.6rem;
    margin-top: 2.4rem;
  }
}
.article .aricle-content .aricle-cta .aricle-cta-title {
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta .aricle-cta-title {
    font-size: 1.8rem;
    line-height: 170%;
  }
}
.article .aricle-content .aricle-cta .aricle-cta__block {
  background: #fff;
  border-radius: 0.8rem;
  padding: 3.2rem 2rem;
  max-width: 40rem;
  margin: 1.6rem auto 0;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta .aricle-cta__block {
    padding: 2.4rem 2rem;
  }
}
.article .aricle-content .aricle-cta .aricle-cta__block .cta-title {
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta .aricle-cta__block .cta-title .fukidashi {
    gap: 0.8rem;
  }
}
.article .aricle-content .aricle-cta .aricle-cta__block .btn {
  max-width: 24rem;
  height: 4.8rem;
  margin: 1.5rem auto 0;
  position: relative;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta .aricle-cta__block .btn {
    max-width: 26rem;
    height: 5.6rem;
  }
}
.article .aricle-content .aricle-cta .aricle-cta__block .btn::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-wh.svg);
  background-size: contain;
  width: 0.6rem;
  height: 1.2rem;
  top: 50%;
  bottom: 50%;
  transform: translateY(-50%);
  right: 1.8rem;
}
.article .aricle-content .aricle-cta-bottom {
  background-image: url(../images/bg-aricle-cta-bottom.png);
  background-size: cover;
  background-position: center right;
  border-radius: 0.8rem;
  padding: 4.8rem 4rem;
  margin-top: 6.4rem;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta-bottom {
    padding: 4rem 1.6rem;
    margin-top: 4rem;
    background-image: url(../images/sp_bg-aricle-cta-bottom.png);
  }
}
.article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left {
  max-width: 30.9rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left {
    max-width: 100%;
    width: 100%;
  }
}
.article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left .aricle-cta-title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 170%;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left .aricle-cta-title {
    font-size: 2rem;
    max-width: 25.5rem;
    margin: 0 auto;
  }
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left .aricle-cta-bottom__img {
    margin: 1.6rem auto 0;
    max-width: 24rem;
  }
}
.article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left .btn {
  color: #F2AC17;
  border: solid 2px #F2AC17;
  background: #fff;
  max-width: 22rem;
  height: 4.8rem;
  margin: 2.4rem auto 0 0;
  position: relative;
}
@media (max-width: 767px) {
  .article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left .btn {
    max-width: 31.8rem;
    height: 5.6rem;
    margin: 2.4rem auto 0;
  }
}
.article .aricle-content .aricle-cta-bottom .aricle-cta-bottom__left .btn::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-or.svg);
  background-size: contain;
  width: 0.64rem;
  height: 1.2rem;
  top: 50%;
  bottom: 50%;
  transform: translateY(-50%);
  right: 1.8rem;
}

.recommend {
  padding: 8rem 2rem;
  background: #FCFBF2;
}
@media (max-width: 767px) {
  .recommend {
    padding: 4rem 2rem;
  }
}
.recommend .recommend-title {
  text-align: center;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 100%;
}
@media (max-width: 767px) {
  .recommend .recommend-title {
    font-size: 2rem;
  }
}
.recommend .archive__list {
  margin-top: 4rem;
}
@media (max-width: 767px) {
  .recommend .archive__list {
    margin-top: 2.4rem;
  }
}
.recommend .more-btn {
  max-width: 32rem;
  height: 6.4rem;
  margin: 4rem auto 0;
}
@media (max-width: 767px) {
  .recommend .more-btn {
    max-width: 100%;
    height: 5.6rem;
    margin: 2.4rem auto 0;
  }
}

.step {
  background: #FCFBF2;
}
.step .step__list li::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-bottom.svg);
  background-size: contain;
  width: 4rem;
  height: 2.1rem;
  bottom: -2.1rem;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
}
@media (max-width: 767px) {
  .step .step__list li::after {
    width: 2.4rem;
    height: 1.2rem;
    bottom: -1.2rem;
  }
}
.step .step__list li .list-title {
  color: #F2AC17;
}
.step .step__list li .num-circle {
  color: #fff;
  background: #F2AC17;
}

.step__list li {
  margin-bottom: 2.9rem;
  padding: 4.8rem 4rem;
  display: flex;
  align-items: center;
  gap: 2.4rem;
  position: relative;
}
@media (max-width: 767px) {
  .step__list li {
    padding: 1.6rem;
  }
}
.step__list li:last-child {
  margin-bottom: 0;
}
.step__list li:last-child::after {
  display: none;
}
.step__list li .list-title {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 700;
}
@media (max-width: 767px) {
  .step__list li .list-title {
    font-size: 2rem;
    display: flex;
    align-items: center;
    gap: 0.8rem;
  }
}
.step__list li p {
  margin-top: 2.4rem;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .step__list li p {
    margin-top: 0.8rem;
  }
}
.step__list li .num-circle {
  width: 8rem;
  height: 8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  border-radius: 50%;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .step__list li .num-circle {
    width: 5.6rem;
    height: 5.6rem;
  }
}
@media (max-width: 767px) {
  .step__list li .num-circle .en {
    font-size: 1.2rem;
  }
}
.step__list li .num-circle .num {
  font-size: 4rem;
}
@media (max-width: 767px) {
  .step__list li .num-circle .num {
    font-size: 2.4rem;
  }
}
.step__list li .step__list__text {
  max-width: 90rem;
}
.step__list li .step__list__text p {
  line-height: 170%;
}

.flow .step__list li {
  background: #FCFBF2;
}
@media (max-width: 767px) {
  .flow .step__list li {
    margin-bottom: 3.1rem;
  }
}
.flow .step__list li::after {
  position: absolute;
  content: "";
  background-image: url(../images/arrow-flow.svg);
  background-size: contain;
  width: 8.8rem;
  height: 8.8rem;
  bottom: -4.9rem;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
@media (max-width: 767px) {
  .flow .step__list li::after {
    width: 6.4rem;
    height: 6.4rem;
    bottom: -4.5rem;
  }
}
@media (max-width: 767px) {
  .flow .step__list li .list-title {
    color: #F2AC17;
  }
}
.flow .step__list li .num-circle {
  color: #F2AC17;
}
@media (max-width: 767px) {
  .flow .step__list li .num-circle {
    width: auto;
    height: auto;
  }
}
@media (max-width: 767px) {
  .flow .step__list li:last-child {
    margin-bottom: 0;
  }
}

.qa .question__item {
  border-top: solid 1px #D9D9D9;
  padding: 2.4rem 0;
}
@media (max-width: 767px) {
  .qa .question__item {
    padding: 0.8rem 0;
  }
}
.qa .question__item:last-of-type {
  border-bottom: solid 1px #D9D9D9;
}
.qa .question {
  cursor: pointer;
  position: relative;
  position: relative;
  transition: 0.3s;
}
.qa .question:before, .qa .question:after {
  position: absolute;
  content: "";
  background: #F2AC17;
  transform: translateY(-50%);
  top: 50%;
  right: 0.8rem;
  width: 24px;
  height: 3px;
  border-radius: 3px;
}
.qa .question:after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.qa .question .q-title {
  font-weight: 700;
  font-size: 2rem;
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
@media (max-width: 767px) {
  .qa .question .q-title {
    font-size: 1.6rem;
    gap: 0.8rem;
    width: 89%;
  }
}
.qa .q,
.qa .a {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.03em;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.qa .q {
  background: #FCFBF2;
  color: #F2AC17;
}
.qa .a {
  color: #D14C1A;
}
.qa .answer {
  display: none;
  padding-top: 2.4rem;
}
@media (max-width: 767px) {
  .qa .answer {
    padding-top: 0.8rem;
  }
}
.qa .answer__text {
  display: flex;
  align-items: flex-start;
  gap: 1.2rem;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .qa .answer__text {
    gap: 0.8rem;
  }
}

.question.open::before {
  opacity: 0;
}
.question.open:after {
  transform: rotate(180deg);
}

.product .list-img {
  max-width: 48.7rem;
  width: 100%;
}
.product .product__list__text {
  max-width: 55.7rem;
}
.product .product__list__text .list-title {
  font-size: 3.2rem;
}

.feature .list-img {
  max-width: 48.6rem;
  width: 100%;
}
.feature .product__list__text {
  max-width: 55.8rem;
}
.feature .product__list__text .list-title {
  font-size: 2.4rem;
}
.feature .list-text {
  margin-top: 2.5rem;
}

.product__list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5.6rem;
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  .product__list li {
    flex-direction: column;
    gap: 1.2rem;
    margin-bottom: 2.4rem;
  }
}
.product__list li .list-img {
  width: 100%;
}
@media (max-width: 767px) {
  .product__list li .list-img img {
    width: 100%;
    height: 20rem;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 1.6rem;
  }
}
.product__list li .product__list__text .list-title {
  display: flex;
  align-items: baseline;
  gap: 1.6rem;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .list-title {
    font-size: 2rem;
    gap: 0.8rem;
  }
}
.product__list li .product__list__text .list-title .orange {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 4rem;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .list-title .orange {
    font-size: 3.2rem;
    line-height: 1;
  }
}
.product__list li .product__list__text .label {
  margin-top: 2rem;
  display: inline-block;
  border: solid 1px #D9D9D9;
  padding: 0.8rem 2rem;
  border-radius: 99.9rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .label {
    margin-top: 1rem;
    padding: 0.8rem 1.6rem;
  }
}
.product__list li .product__list__text .label .icon {
  width: 2.4rem;
  margin-right: 0.4rem;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .label .icon {
    width: 2rem;
  }
}
.product__list li .product__list__text .list-ctach {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 1.2rem;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .list-ctach {
    font-size: 1.8rem;
    margin-top: 0.4rem;
    line-height: 170%;
  }
}
.product__list li .product__list__text .list-text {
  margin-top: 1.6rem;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .list-text {
    margin-top: 0.4rem;
    font-size: 1.6rem;
  }
}
.product__list li .product__list__text .more-border-btn {
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .product__list li .product__list__text .more-border-btn {
    margin-top: 1.2rem;
  }
}
.product__list li:nth-child(2n) {
  flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .product__list li:nth-child(2n) {
    flex-direction: column;
  }
}
.product__list li:last-child {
  margin-bottom: 0;
}

.use {
  padding-top: 4rem;
}
.use .use__movie {
  overflow: hidden;
  border-radius: 1.6rem;
}
.use .use__movie img {
  width: 100%;
}
@media (max-width: 767px) {
  .use .use__movie img {
    height: 24rem;
  }
}

.footer .footer__top {
  padding: 4rem 2rem 5.6rem;
}
@media (max-width: 767px) {
  .footer .footer__top {
    padding: 2.4rem 2rem 4rem;
  }
}
.footer .footer__top .flex {
  align-items: flex-start;
  justify-content: space-between;
}
.footer .footer__logo {
  max-width: 14rem;
  width: 100%;
}
@media (max-width: 767px) {
  .footer .footer__logo {
    max-width: 17.5rem;
  }
}
.footer .address {
  margin-top: 1.6rem;
  line-height: 150%;
  font-style: normal;
}
@media (max-width: 767px) {
  .footer .address {
    margin-top: 1.2rem;
  }
}
.footer .tel {
  margin-top: 1.6rem;
  font-size: 2rem;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media (max-width: 767px) {
  .footer .tel {
    margin-top: 0.8rem;
  }
}
.footer .open {
  margin-top: 0.4rem;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 100%;
}
.footer .footer__menu {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 5.6rem;
}
@media (max-width: 767px) {
  .footer .footer__menu {
    gap: 6.4rem;
    margin-top: 4rem;
  }
}
.footer .footer__menu .menu-title {
  font-weight: 700;
  margin-bottom: 2.4rem;
  line-height: 100%;
}
.footer .footer__menu .menu-list li {
  font-size: 1.4rem;
  line-height: 100%;
  margin-bottom: 2.4rem;
  font-weight: 500;
}
@media (max-width: 767px) {
  .footer .footer__menu .menu-list li {
    font-size: 1.2rem;
    margin-bottom: 2rem;
  }
}
.footer .footer__menu .menu-list li:last-child {
  margin-bottom: 0;
}
.footer .footer__bottom {
  background: #F2F5F6;
  padding: 2.3rem 2rem;
}
@media (max-width: 767px) {
  .footer .footer__bottom {
    padding: 1.6rem 2rem 7rem;
  }
}
.footer .footer__bottom .content-width {
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .footer .footer__bottom .content-width {
    align-items: flex-start;
  }
}
.footer .footer__bottom .link-list {
  align-items: center;
}
@media (max-width: 767px) {
  .footer .footer__bottom .link-list {
    align-items: flex-start;
  }
}
.footer .footer__bottom .link-list li {
  padding: 0 1.6rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 100%;
  border-right: solid 2px #D9D9D9;
}
@media (max-width: 767px) {
  .footer .footer__bottom .link-list li {
    border-right: none;
    font-size: 1.2rem;
    padding: 0;
    margin-bottom: 1.6rem;
  }
}
.footer .footer__bottom .link-list li:first-child {
  padding-left: 0;
}
.footer .footer__bottom .link-list li:last-child {
  border-right: none;
}
@media (max-width: 767px) {
  .footer .footer__bottom .link-list li:last-child {
    margin-bottom: 0;
  }
}
.footer .footer__bottom .copyright {
  font-size: 1.2rem;
}
@media (max-width: 767px) {
  .footer .footer__bottom .copyright {
    font-size: 1rem;
    margin-top: 2.4rem;
  }
}

.example {
  padding-left: 0;
  padding-right: 0;
}

.example__slider {
  position: relative;
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
}
.example__slider .slider-img {
  position: relative;
}
.example__slider .slider-img img {
  width: 100%;
  border-radius: 1.6rem;
  overflow: hidden;
}
.example__slider .slider-img .label {
  position: absolute;
  top: 2.4rem;
  right: 2.4rem;
  background: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  display: inline-block;
  padding: 0.8rem 1.2rem;
  border-radius: 99.9rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .example__slider .slider-img .label {
    font-size: 1.4rem;
    padding: 0.4rem 1.2rem;
    top: 1.6rem;
    right: 1.6rem;
  }
}
.example__slider .slider-title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 150%;
  margin-top: 1.6rem;
}
@media (max-width: 767px) {
  .example__slider .slider-title {
    font-size: 2rem;
    margin-top: 0.8rem;
    line-height: 170%;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
}
.example__slider .slider-bottom {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-top: 2.4rem;
}
@media (max-width: 767px) {
  .example__slider .slider-bottom {
    margin-top: 0.8rem;
    align-items: flex-start;
  }
}
.example__slider .slider-bottom__name {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
@media (max-width: 767px) {
  .example__slider .slider-bottom__name {
    flex-direction: column;
    align-items: flex-start;
  }
}
.example__slider .campany-name {
  font-size: 2rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .example__slider .campany-name {
    font-size: 1.6rem;
  }
}
.example__slider .campany-name .department,
.example__slider .campany-name .name {
  font-size: 1.6rem;
  font-weight: 400;
}
@media (max-width: 767px) {
  .example__slider .campany-name .department,
  .example__slider .campany-name .name {
    font-size: 1.4rem;
  }
}
.example__slider .swiper-button-prev,
.example__slider .swiper-button-next {
  height: 56px;
  width: 56px;
  z-index: 3;
}
@media (max-width: 767px) {
  .example__slider .swiper-button-prev,
  .example__slider .swiper-button-next {
    width: 4rem;
    height: 4rem;
    top: 32%;
  }
}
.example__slider .swiper-button-prev:after,
.example__slider .swiper-button-next:after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 56px;
  margin: auto;
  width: 56px;
}
@media (max-width: 767px) {
  .example__slider .swiper-button-prev:after,
  .example__slider .swiper-button-next:after {
    width: 4rem;
    height: 4rem;
  }
}
.example__slider .swiper-button-prev:after {
  background-image: url(../images/arrow-prev.svg);
}
.example__slider .swiper-button-next:after {
  background-image: url(../images/arrow-next.svg);
}
.example__slider .swiper-button-next {
  right: 15.3%;
  left: auto;
}
@media (max-width: 767px) {
  .example__slider .swiper-button-next {
    right: 0.8rem;
  }
}
.example__slider .swiper-button-prev {
  left: 15.3%;
  right: auto;
}
@media (max-width: 767px) {
  .example__slider .swiper-button-prev {
    left: 0.8rem;
  }
}

.it {
  background-image: url(../images/bg-it.png);
  background-size: cover;
}
@media (max-width: 767px) {
  .it {
    background-image: url(../images/sp_bg-it.png);
  }
}
.it .flex {
  align-items: center;
  justify-content: center;
  gap: 2.4rem;
}
@media (max-width: 767px) {
  .it .flex {
    gap: 1.6rem;
  }
}
.it .it__text {
  max-width: 53.9rem;
}
@media (max-width: 767px) {
  .it .it__img {
    max-width: 20rem;
    margin: 0 auto;
  }
}
.it .it-title {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 170%;
}
@media (max-width: 767px) {
  .it .it-title {
    font-size: 2rem;
    text-align: center;
  }
}
.it .it-title .orange {
  font-size: 4rem;
}
@media (max-width: 767px) {
  .it .it-title .orange {
    font-size: 2.4rem;
  }
}
.it .more-border-btn {
  max-width: 28rem;
  margin-top: 4rem;
  background: #fff;
}
@media (max-width: 767px) {
  .it .more-border-btn {
    max-width: 100%;
    margin: 2.4rem auto 0;
  }
}

.pricing .pricing__box {
  max-width: 60rem;
  margin: 0 auto;
  border: solid 4px #F2AC17;
  border-radius: 1.6rem;
  padding-bottom: 3.2rem;
}
.pricing .pricing__box .pricing__head {
  background: #F2AC17;
  color: #fff;
  text-align: center;
  padding: 1.9rem 0;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__head {
    padding: 0.8rem;
    line-height: 170%;
  }
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__head .inner {
    width: 59.4666666667vw;
    margin: 0 auto;
  }
}
.pricing .pricing__box .pricing-text {
  margin: 2.4rem auto 0;
  max-width: 50.4rem;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing-text {
    padding: 0 1.6rem;
  }
}
.pricing .pricing__box .pricing__initial {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  margin-top: 3.2rem;
}
.pricing .pricing__box .pricing__initial .label {
  background: #F2AC17;
  display: inline-block;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 0.8rem;
  border-radius: 4px;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__initial .label {
    font-size: 1.6rem;
    padding: 0.4rem;
  }
}
.pricing .pricing__box .pricing__initial .price-wrap {
  color: #F2AC17;
  font-weight: 700;
  font-size: 3.2rem;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__initial .price-wrap {
    font-size: 2.4rem;
  }
}
.pricing .pricing__box .pricing__initial .price-wrap em {
  font-size: 6.4rem;
  font-weight: 900;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__initial .price-wrap em {
    font-size: 4.4rem;
  }
}
.pricing .pricing__box .pricing__month {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 2.4rem;
}
.pricing .pricing__box .pricing__month small {
  font-size: 1.4rem;
  font-weight: 700;
}
.pricing .pricing__box .pricing__month .price-wrap {
  font-weight: 700;
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__month .price-wrap {
    font-size: 2rem;
  }
}
.pricing .pricing__box .pricing__month .price-wrap em {
  font-size: 4rem;
  font-weight: 900;
}
@media (max-width: 767px) {
  .pricing .pricing__box .pricing__month .price-wrap em {
    font-size: 3.2rem;
  }
}
.pricing .btn-wrap {
  margin: 3.2rem auto 0;
  max-width: 36rem;
}
@media (max-width: 767px) {
  .pricing .btn-wrap {
    max-width: 100%;
    margin: 2.4rem auto 0;
  }
}
.pricing .btn--contact {
  max-width: 36rem;
  font-size: 2rem;
  height: 7.2rem;
  margin: 1.6rem auto 0;
}
@media (max-width: 767px) {
  .pricing .btn--contact {
    height: 5.6rem;
    max-width: 100%;
    font-size: 1.6rem;
    margin-top: 0.8rem;
  }
}
@media (max-width: 767px) {
  .pricing .btn--contact .icon {
    width: 2rem;
  }
}

.cover {
  background-size: cover;
  padding: 19.6rem 2rem 13.6rem;
}
@media (max-width: 767px) {
  .cover {
    padding: 6.4rem 2rem;
  }
}
.cover .cover-title {
  text-align: center;
  color: #fff;
  font-weight: 700;
}
.cover .cover-title .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: 1.8rem;
  line-height: 1;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
@media (max-width: 767px) {
  .cover .cover-title .en {
    font-size: 1.6rem;
  }
}
.cover .cover-title .ja {
  font-size: 4rem;
  line-height: 1;
  margin-top: 1.6rem;
  display: block;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
@media (max-width: 767px) {
  .cover .cover-title .ja {
    font-size: 3.2rem;
    margin-top: 0.8rem;
  }
}

.page-company .cover {
  background-image: url(../images/cover-company.jpg);
}
@media (max-width: 767px) {
  .page-company .cover {
    background-image: url(../images/sp_cover-company.jpg);
  }
}

.page-thanks .cover {
  /* ToDo */
  background-image: url(../images/cover-contact.jpg);
}
@media (max-width: 767px) {
  .page-thanks .cover {
    /* ToDo */
    background-image: url(../images/sp_cover-contact.jpg);
  }
}

.page-contact .cover {
  background-image: url(../images/cover-contact.jpg);
}
@media (max-width: 767px) {
  .page-contact .cover {
    background-image: url(../images/sp_cover-contact.jpg);
  }
}

.page-news .cover {
  background-image: url(../images/cover-news.jpg);
}
@media (max-width: 767px) {
  .page-news .cover {
    background-image: url(../images/sp_cover-news.jpg);
  }
}

.message .flex {
  align-items: center;
  justify-content: flex-start;
  gap: 5.6rem;
}
@media (max-width: 767px) {
  .message .flex {
    gap: 0.8rem;
    align-items: flex-start;
  }
}
.message .message__img {
  max-width: 48rem;
  width: 100%;
  border-radius: 1.6rem;
  overflow: hidden;
}
@media (max-width: 767px) {
  .message .message__img img {
    width: 100%;
    height: 20rem;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.message .message-title {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 170%;
}
@media (max-width: 767px) {
  .message .message-title {
    font-size: 2rem;
  }
}
.message .message__name {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  font-weight: 500;
  margin-top: 4.2rem;
}
@media (max-width: 767px) {
  .message .message__name {
    margin-top: 1.2rem;
    gap: 0.8rem;
  }
}
.message .message__name .name {
  font-size: 2rem;
}
@media (max-width: 767px) {
  .message .message__name .name {
    font-size: 1.6rem;
  }
}
.message .message-text {
  margin-top: 4rem;
  font-size: 1.4rem;
  line-height: 200%;
}
@media (max-width: 767px) {
  .message .message-text {
    margin-top: 2.4rem;
    line-height: 170%;
  }
}

.company__table {
  width: 100%;
  border-spacing: 0;
}
@media (max-width: 767px) {
  .company__table {
    max-width: 100%;
  }
}
.company__table th,
.company__table td {
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  border-bottom: solid 1px #D9D9D9;
}
@media (max-width: 767px) {
  .company__table th,
  .company__table td {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
}
.company__table th {
  width: 24%;
  vertical-align: sub;
  padding-left: 1.6rem;
  position: relative;
}
.company__table th::after {
  position: absolute;
  content: "";
  background: #F2AC17;
  width: 12.8rem;
  height: 1px;
  bottom: -0.2px;
  left: 0;
}
@media (max-width: 767px) {
  .company__table th::after {
    display: none;
  }
}
@media (max-width: 767px) {
  .company__table th {
    width: 100%;
    padding-left: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.company__table td {
  width: 76%;
}
@media (max-width: 767px) {
  .company__table td {
    width: 100%;
    position: relative;
  }
}
@media (max-width: 767px) {
  .company__table td::after {
    position: absolute;
    content: "";
    background: #F2AC17;
    width: 8.8rem;
    height: 1px;
    bottom: -0.2px;
    left: 0;
  }
}
@media (max-width: 767px) {
  .company__table tr {
    display: flex;
    flex-direction: column;
  }
}
.company__table tr:first-of-type th,
.company__table tr:first-of-type td {
  padding-top: 0;
}
.company__table .table-title {
  font-weight: 700;
  text-align: left;
  line-height: 100%;
}
.company__table .table-text {
  text-align: left;
  line-height: 150%;
}
.company__table .table-text a {
  text-decoration: underline;
}

.contact .section-text {
  max-width: 80rem;
  margin: 0 auto;
  text-align: center;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .contact .section-text {
    text-align: left;
  }
}
.contact .contact__tel {
  text-align: center;
  margin-top: 2.4rem;
}
@media (min-width: 768px) {
  .contact .contact__tel {
    display: none;
  }
}
.contact .contact__tel .title {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
}
.contact .contact__tel a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.4rem;
  font-weight: 700;
  color: #1BA3AF;
  line-height: 1;
  margin-top: 0.8rem;
}
.contact .contact__tel .open {
  font-size: 1.2rem;
  font-weight: 500;
  margin-top: 0.6rem;
  line-height: 1;
}

.contact__width {
  background: #F6F6F6;
  padding: 4rem;
  border-radius: 1.6rem;
  margin-top: 5.6rem;
}
@media (max-width: 767px) {
  .contact__width {
    margin-top: 2.4rem;
    padding: 2.4rem 1.6rem;
  }
}

.thanks .section-text {
  max-width: 80rem;
  margin: 0 auto;
  padding-bottom: 1.6rem;
  text-align: center;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .thanks .section-text {
    text-align: left;
  }
}

#formWrap tr {
  display: flex;
  flex-direction: column;
  margin-bottom: 4.4rem;
}
@media (max-width: 767px) {
  #formWrap tr {
    margin-bottom: 1.6rem;
    align-items: flex-start;
  }
}
#formWrap tr:last-of-type {
  margin-bottom: 0;
}
#formWrap .input-text,
#formWrap textarea {
  width: 100%;
  padding: 20px 16px;
  display: block;
  border: solid 1px #D9D9D9;
  border-radius: 4px;
  background: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  #formWrap .input-text,
  #formWrap textarea {
    padding: 8px 16px;
  }
}
#formWrap .input-text {
  height: 5.6rem;
}
#formWrap textarea {
  height: 20.2rem;
}
#formWrap input[type=submit],
#formWrap input[type=reset],
#formWrap input[type=button] {
  display: block;
  width: 100%;
  height: 5.6rem;
  background: #F2AC17;
  color: #fff;
  border-radius: 99.9rem;
  font-weight: 700;
}

.formTable {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
}
.formTable th {
  width: 100%;
  font-weight: 700;
  line-height: 1;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.2rem;
}
@media (max-width: 767px) {
  .formTable th {
    margin-bottom: 0.8rem;
    font-size: 1.6rem;
  }
}
.formTable th .required {
  background: #D14C1A;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
  padding: 4px 8px;
  border-radius: 4px;
  display: inline-block;
}
.formTable td {
  width: 100%;
}

textarea::-moz-placeholder, input::-moz-placeholder {
  color: #D9D9D9;
}

textarea::placeholder,
input::placeholder {
  color: #D9D9D9;
}

.submit-btn-wrap {
  margin: 5.6rem auto 0;
  max-width: 24rem;
  position: relative;
  height: 5.6rem;
}
@media (max-width: 767px) {
  .submit-btn-wrap {
    margin: 2.4rem auto 0;
  }
}
.submit-btn-wrap::after {
  position: absolute;
  content: "";
  background-image: url(../images/button-arrow.svg);
  background-size: contain;
  width: 7px;
  height: 10px;
  top: 50%;
  bottom: 50%;
  transform: translateY(-50%);
  right: 2.1rem;
}/*# sourceMappingURL=style.css.map */