@charset "utf-8";
/* CSS Document */
/*トップ*/
.headerWrapper .logo {
  width: 12%;
  max-width: 50px;
}
.headerWrapper {
  width: 90%;
  margin: 0 auto;
  padding: 40px 0;
}
.header__inner {
  display: flex;
  justify-content: space-between;
  font-weight: 700;
}
.header__nav {
  justify-content: flex-end;
}
.headerTitleWrapper {
  width: 30%;
  align-items: center;
  display: flex;
}
.headerTitleWrapper .ttl {
  margin-left: 10%;
}
.headerTitleWrapper p, .header__nav p {
  font-size: min(1.6vw, 24px);
  white-space: nowrap;
}
.header__nav {
  width: 35%;
  align-items: center;
}
.header__nav .nav {
  margin-right: 10%;
}
.nav__items.nav-items {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.topImage {
  width: 80%;
  margin: 0 0 0 auto;
}
.relative {
  position: relative;
}
.title {
  position: absolute;
  top: 50%;
  left: -15%;
  transform: translate(0, -50%);
}
.title h1 {
  font-size: min(3.8vw, 60px);
  letter-spacing: 0.05em;
  line-height: min(6.1vw, 96px);
}
.title h2 {
  font-size: min(1.8vw, 30px);
  margin-top: min(1.5vw, 30px);
}
/*創業の想い*/
#thoughts {
  margin-top: min(11vw, 180px);
  padding-bottom: min(460px, 25vw);
}
.thoughtsContents {
  margin-left: 12.6%;
  white-space: nowrap;
}
.thoughtsParagraph h5 {
  font-size: min(1.8vw, 30px);
  margin-bottom: min(97.8px, 5.26vw);
}
.thoughtsParagraph {
  font-size: min(23.2px, 1.25vw);
  line-height: min(45px, 2.5vw);
}
.thoughtsParagraph p {
  margin-bottom: min(65.2px, 3.51vw);
}
.thoughtsTitle {
  position: absolute;
  top: 0;
  left: 53%;
  transform: translate(-50%, 0%);
}
.thoughtsTitle h3 {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: min(60px, 3.28vw);
}
.thoughtsFlex {
  display: flex;
}
.thoughtsWrapper {
  position: relative;
}
.thoughtsDeco {
  position: absolute;
}
.thoughtsDeco1 {
  width: 31%;
  max-width: 580px;
  right: 0;
  top: 1%;
}
.thoughtsDeco2 {
  width: 14%;
  max-width: 260px;
  right: 35%;
  bottom: 8%;
}
.thoughtsDeco3 {
  width: 20%;
  max-width: 380px;
  left: 0%;
  bottom: -33%;
  z-index: -1;
}
.thoughtsDeco4 {
  width: 53%;
  max-width: 957px;
  right: 0%;
  bottom: 0%;
  z-index: 1;
  opacity: 0.2;
}
.thoughtsDeco5 {
  width: 100%;
  top: 18%;
  left: 0%;
  z-index: -1;
  opacity: 0.3;
}
.thoughtsParagraph .AffiliationName {
  margin-bottom: min(20px, 1vw);
}
/*代表プロフ*/
.profileWrapper {
  width: 90%;
  margin: 0 auto;
}
.profileWrapper h3 {
  font-size: min(52px, 2.82vw);
  margin-bottom: min(3.9vw, 72.5px);
}
.profTextWrapper {
  width: 97%;
  background-image: url("../img/profBG.jpg");
  background-size: cover;
  padding-top: min(65px, 3.5vw);
  padding-bottom: min(65px, 3.5vw);
  padding-left: min(75px, 4vw);
  padding-right: min(75px, 4vw);
  box-sizing: border-box;
}
.profText {
  width: 68%;
}
.profName h5 {
  font-size: min(23.2px, 1.25vw);
  margin-bottom: min(25px, 1.3vw);
}
.profName h4 {
  font-size: min(34.8px, 1.875vw);
  font-weight: 700;
  margin-bottom: min(3.9vw, 72.5px);
}
.profDetail p {
  font-size: min(23.2px, 1.25vw);
  margin-bottom: min(28px, 1.5vw);
  line-height: min(45px, 2.5vw);
}
.profDetail {
  width: 96%;
}
.profTextPhoto {
  position: relative;
}
.profPhoto {
  position: absolute;
  width: 32%;
  max-width: 620px;
  top: -6%;
  right: 0;
}
.profDeco {
  position: absolute;
  width: 26.5%;
  max-width: 450px;
  bottom: -10%;
  right: 0;
  opacity: 0.2;
}
#profile {
  padding-bottom: min(290px, 15.6vw);
}
/*強み*/
.strengthwidth {
  width: 90%;
  margin: 0 auto;
}
.strengthImg {
  /*max-width: 452px;*/
  width: 26.4%;
}
.strengthWrapper h3 {
  font-size: min(52px, 2.82vw);
  margin-bottom: min(8.6vw, 160px);
  text-align: center;
}
.strengthWrapper li {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.strengthText {
  width: 65.6%;
}
.strengthText h4 {
  display: flex;
}
.strengthTtl {
  display: flex;
  font-size: min(34.8px, 1.875vw);
  margin-top: min(0.78vw, 15px);
  margin-left: min(0.39vw, 7.5px);
}
.strengthText h4 .num {
  display: flex;
  font-size: min(23.2px, 1.25vw);
}
.strengthText span {
  font-size: min(18px, 1vw);
  margin-left: 5px;
  margin-top: 2px;
}
.details {
  margin-top: min(72px, 3vw);
}
.details p {
  font-size: min(23.2px, 1.25vw);
  line-height: min(45px, 2.5vw);
}
.strengthWrapper li {
  margin-bottom: min(108px, 5.85vw);
}
.strengthWrapper {
  position: relative;
}
.strengthDeco {
  position: absolute;
  width: 100%;
  top: 11%;
  left: 0%;
  z-index: -1;
  opacity: 0.3;
}
#strength {
  padding-bottom: min(260px, 14vw);
}
/*事業内容*/
.BusinessDetailWrapper h3 {
  font-size: min(52px, 2.82vw);
  margin-bottom: min(6.25vw, 116px);
  padding-top: min(7.8vw, 145px);
  text-align: center;
  color: #ffffff;
}
.BusinessDetailWrapper {
  background-image: url("../img/businessBG.png");
  background-size: cover;
}
.BusinessDetailWidth {
  width: 90%;
  margin: 0 auto;
  padding-bottom: min(7.8vw, 145px);
}
.list li {
  width: 31%;
  border: solid 1px #ffffff;
  padding-top: min(58px, 3.125vw);
  padding-bottom: min(72px, 3.9vw);
}
.BusinessDetailWidth .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.list .icon {
  width: 16.9%;
  margin: 0 auto;
}
.BusinessDetailWrapper h5 {
  text-align: center;
  color: #ffffff;
  font-size: min(1.5vw, 27px);
  font-family: 'Noto Sans JP', sans-serif !important;
  font-weight: 100;
  margin-top: min(36px, 1.5vw);
}
.list .sub {
  color: #ffffff;
  font-size: min(0.86vw, 16px);
  line-height: min(1.29vw, 24px);
  text-align: center;
  margin-bottom: min(14px, 0.8vw);
}
.list li.others {
  padding-bottom: 0 !important;
}
.BusinessDetailWrapper .others h5 {
  margin-top: min(24px, 1vw);
  font-size: min(1.6vw, 28px);
  margin-bottom: min(14px, 0.8vw);
}
.BusinessDetailWrapper li:nth-child(4) {
  margin-top: min(2.73vw, 50px);
}
.BusinessDetailWrapper li:nth-child(5) {
  margin-top: min(2.73vw, 50px);
}
.BusinessDetailWrapper li:nth-child(6) {
  margin-top: min(2.73vw, 50px);
}
#BusinessDetail .detailButton {
  border: solid 1px #ffffff;
  border-radius: 100px;
  width: 23%;
  margin: 0 auto;
  padding-top: min(2.2vw, 40px);
  padding-bottom: min(2.2vw, 40px);
  margin-top: min(6.5vw, 120px);
  position: relative;
  transition: 0.5s;
}
#BusinessDetail .detailButton p {
  color: #ffffff;
  font-size: min(26px, 1.4vw);
  font-family: 'Noto Serif JP', serif;
  text-align: center;
}
#BusinessDetail .detailButton a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*実績紹介*/
#Introduction {
  padding-top: min(260px, 14vw);
  padding-bottom: min(400px, 19.2vw);
}
.sliderWrapper li {
  width: 26vw;
  margin-left: min(87px, 4vw);
}
.sliderWrapper {
  margin-left: 17%;
  margin-top: min(7vw, 120px);
}
.sliderTexts h4.sliderH4OneRow {
  font-size: min(29px, 1.6vw);
  line-height: min(76px, 4vw);
  margin-top: min(56px, 3.2vw);
  margin-bottom: min(18px, 1vw);
  white-space: nowrap;
}
.sliderTexts h4.sliderH4TwoRow {
  font-size: min(29px, 1.6vw);
  line-height: min(38px, 2vw);
  margin-top: min(56px, 3.2vw);
  margin-bottom: min(18px, 1vw);
  white-space: nowrap;
}
.sliderH4TwoRow span {
  font-size: min(22px, 1.2vw);
}
.sliderTexts h5 {
  font-size: min(23.2px, 1.25vw);
  line-height: min(33px, 1.7vw)
}
.sliderTexts p {
  font-size: min(20px, 1.1vw);
  line-height: min(40px, 2vw);
  margin-top: min(18px, 1vw);
}
.IntroductionWrapper {
  position: relative;
}
.IntroductionWrapper h3 {
  position: absolute;
  left: 9%;
  top: 0%;
  white-space: nowrap;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: min(52px, 2.82vw);
}
.introductionDeco1 {
  position: absolute;
  width: 5%;
  left: 11%;
  top: 13%;
  z-index: -1;
  max-width: 88px;
  padding-top: 7vw;
  opacity: 0.2;
}
.introductionDeco2 {
  width: 100%;
  top: 18%;
  left: 0%;
  z-index: -1;
  position: absolute;
  opacity: 0.3;
}
#Introduction .detailButton {
  border: solid 1px #1E415E;
  border-radius: 100px;
  width: 20.7%;
  padding-top: min(2.2vw, 40px);
  padding-bottom: min(2.2vw, 40px);
  margin-top: min(5.7vw, 108px);
  color: #1E415E;
  position: absolute;
  right: 5%;
}
#Introduction .detailButton a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#Introduction .detailButton p {
  color: #1E415E;
  font-size: min(26px, 1.4vw);
  font-family: 'Noto Serif JP', serif;
  text-align: center;
}
/*お問い合わせ*/
.InquiryWrapper {
  background-image: url("../img/InquiryBG.png");
  background-size: cover;
  padding-bottom: min(7.8vw, 145px);
}
.InquiryWrapper h3 {
  font-size: min(52px, 2.82vw);
  margin-bottom: min(4.25vw, 90px);
  padding-top: min(7.8vw, 145px);
  text-align: center;
}
.InquiryWrapper p {
  width: 75%;
  margin: 0 auto;
  text-align: center;
  font-size: min(23.2px, 1.25vw);
  line-height: min(45px, 2.5vw);
  margin-bottom: min(4.8vw, 90px);
}
#Inquiry .inquiryButton p {
  color: #1E415E;
  font-size: min(32px, 1.8vw);
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  margin-bottom: 0;
}
#Inquiry .inquiryButton a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.footerWrapper {
  width: 90%;
  margin: 0 auto;
  padding-top: 40px;
}
.footerLogoWrapper .logo {
  width: 63.5%;
  max-width: 50px;
}
.footerNaviWrapper {
  width: 35%;
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
.footerFlex {
  display: flex;
  justify-content: space-between;
  padding-bottom: min(10.1vw, 188px);
}
.footerNaviWrapper .nav {
  margin-right: 10%;
}
.footerNaviWrapper p {
  font-size: min(1.6vw, 24px);
  white-space: nowrap;
}
.footerNaviWrapper .button p {
  font-size: min(1.2vw, 20px);
}
.copyright p {
  text-align: center;
  margin-bottom: min(40px, 3vw);
  font-size: min(19px, 1vw);
}
.header__hamburger.hamburger {
  display: none;
}
@media not screen and (min-width:767px) {
  .header__hamburger.hamburger {
    display: initial;
  }
  a {
    text-decoration: none;
  }
  ul, li {
    list-style: none;
  }
  main {
    background-color: #f1f1f1;
    height: 800px;
    display: flex;
  }
  .main {
    margin: auto;
  }
  .footer {
    background-color: #f6f6f6;
    height: 200px;
    display: flex;
  }
  .footer div {
    margin: auto;
  }
  /* ヘッダー */
  .header {
    background-color: white;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
  }
  .header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: inherit;
    position: relative;
  }
  /* ヘッダーのロゴ部分 */
  .header__title {
    width: 80px;
  }
  @media screen and (min-width: 767px) {
    .header__title {
      width: 120px;
    }
  }
  .header__title img {
    display: block;
    width: 100%;
    height: 100%;
  }
  /* ヘッダーのナビ部分 */
  .header__nav {
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    transform: translateX(100%);
    background-color: #fff;
    transition: ease .4s;
  }
  @media screen and (min-width: 767px) {
    .header__nav {
      position: static;
      transform: initial;
      background-color: inherit;
      height: inherit;
      display: flex;
      justify-content: end;
      width: 50%;
    }
  }
  @media screen and (min-width: 767px) {
    .nav__items {
      width: 100%;
      display: flex;
      align-items: center;
      height: initial;
      justify-content: space-between;
    }
  }
  @media screen and (min-width: 767px) {
    .nav-items {
      position: inherit;
      top: 0;
      left: 0;
      transform: translate(0, 0);
    }
  }
  /* ナビのリンク */
  .nav-items__item:last-child a {
    margin-bottom: 0;
  }
  @media screen and (min-width: 767px) {
    .nav-items__item a {
      margin-bottom: 0;
    }
  }
  /* ハンバーガーメニュー */
  .hamburger {
    background-color: transparent;
    border-color: transparent;
    z-index: 9999;
  }
  @media screen and (min-width: 767px) {
    .hamburger {
      display: none;
    }
  }
  /* ハンバーガーメニューの線 */
  .hamburger span {
    width: 100%;
    height: 1px;
    background-color: #1E415E;
    position: relative;
    transition: ease .4s;
    display: block;
  }
  .hamburger span:nth-child(1) {
    top: 0;
  }
  .hamburger span:nth-child(2) {
    margin: 8px 0;
  }
  .hamburger span:nth-child(3) {
    top: 0;
  }
  /* ハンバーガーメニュークリック後のスタイル */
  .header__nav.active {
    transform: translateX(-5%);
  }
  .hamburger.active span:nth-child(1) {
    top: 5px;
    transform: rotate(45deg);
    left: 6px;
  }
  .hamburger.active span:nth-child(2) {
    opacity: 0;
  }
  .hamburger.active span:nth-child(3) {
    top: -13px;
    width: 24px;
    transform: rotate(-45deg);
    left: -6px;
  }
  .headerWrapper {
    width: 90%;
    margin: 0 auto;
    padding: 20px 0;
    background-color: #ffffff;
  }
  .headerTitleWrapper {
    width: 65%;
  }
  .headerTitleWrapper p, .header__nav p {
    font-size: min(3.5vw, 17px);
  }
  .headerWrapper .logo {
    width: 10%;
    max-width: 28px;
    margin-right: max(3vw, 12px);
  }
  .headerTitleWrapper .ttl {
    margin-left: 0%;
  }
  .hamburger span:nth-child(1) {
    width: 24px;
    height: 1px;
  }
  .hamburger span:nth-child(2) {
    width: 18px;
    height: 1px;
    margin-left: 6px;
  }
  .hamburger span:nth-child(3) {
    width: 12px;
    height: 1px;
    margin-left: 12px;
  }
  /*TOP*/
  #top {
    margin-top: min(16.5vw, 70px);
  }
  .title h1 {
    font-size: min(6.6vw, 36.3px);
    line-height: min(10.2vw, 56.1px);
  }
  .topImage {
    width: 100%;
    margin: 0 0 0 0;
  }
  .title {
    position: absolute;
    top: 48%;
    left: 5%;
    transform: translate(0, -50%);
  }
  .title h2 {
    font-size: min(3.7vw, 20.35px);
    margin-top: min(3.7vw, 20.35px);
  }
  /*私たちの想い*/
  #thoughts {
    margin-top: min(35vw, 192px);
    margin-bottom: min(35vw, 240px);
  }
  .thoughtsContents {
    margin-left: 0%;
    white-space: nowrap;
    width: 90%;
    margin: 0 auto;
  }
  .thoughtsParagraph h5 {
    display: none;
  }
  .thoughtsParagraph h3.PCnone {
    font-size: min(6.7vw, 36px);
    line-height: min(6.7vw, 36px);
    margin-bottom: min(71px, 13vw);
  }
  .thoughtsParagraph p {
    font-size: min(3.8vw, 20px);
    line-height: min(7.6vw, 40px);
    margin-bottom: min(60px, 10.8vw);
  }
  .thoughtsDeco1 {
    width: 40%;
    max-width: 280px;
    right: 0;
    top: -9%;
  }
  .thoughtsDeco2 {
    width: 24.4%;
    max-width: 160px;
    right: 10%;
    bottom: 38%;
    z-index: -1;
  }
  .thoughtsDeco3 {
    width: 38.7%;
    max-width: 250px;
    left: 23%;
    bottom: -15%;
    z-index: -1;
  }
  .thoughtsDeco4 {
    width: 56%;
    max-width: initial;
    right: 0%;
    bottom: -18.5%;
    z-index: 1;
  }
  .thoughtsDeco5 {
    width: 100%;
    top: -7%;
    left: 0%;
    z-index: -1;
    opacity: 0.3;
  }
  .thoughtsDeco6 {
    width: 100%;
    bottom: 3%;
    left: 0%;
    z-index: -2;
    opacity: 0.3;
  }
  .profileWrapper h3 {
    margin-bottom: min(12vw, 66px);
    font-size: min(6.7vw, 36px);
    margin-left: 5%;
  }
  .profPhotoSP {
    position: initial;
    width: 90%;
    max-width: initial;
    margin: 0 auto;
  }
  .profileWrapper {
    width: 100%;
    margin: 0 auto;
  }
  .profTextWrapper {
    width: 100%;
    background-image: url(../img/profBG.jpg);
    background-size: cover;
    padding-top: min(140px, 23vw);
    padding-bottom: min(180px, 26vw);
    padding-left: 5%;
    padding-right: 5%;
    box-sizing: border-box;
    margin-top: -12vw;
  }
  .profText {
    width: 100%;
  }
  .profName h5 {
    font-size: min(3.8vw, 20px);
    margin-bottom: min(25px, 3.8vw);
  }
  .profName h4 {
    font-size: min(28px, 5.5vw);
    font-weight: 700;
    margin-bottom: min(10.8vw, 60px);
  }
  .profDetail p {
    font-size: min(3.8vw, 20px);
    line-height: min(35.6px, 6.76vw);
    margin-bottom: min(44px, 8vw);
  }
  .profDetail {
    width: 100%;
  }
  #profile {
    padding-bottom: min(175px, 32vw);
  }
  .profDeco {
    display: none;
  }
  /*強み*/
  .strengthWrapper h3 {
    font-size: min(6.7vw, 36px);
    margin-bottom: min(20vw, 110px);
  }
  .strengthWrapper li {
    display: block;
  }
  .strengthImg {
    width: 58%;
    margin: 0 auto;
    max-width: 290px;
  }
  .strengthText {
    width: 87%;
    margin: 0 auto;
  }
  .strengthText h4 .num {
    font-size: min(3.8vw, 20px);
    margin-bottom: min(3.8vw, 20px);
    margin-left: 3px;
  }
  .strengthText span {
    margin-left: 5px;
    margin-top: 0px;
    font-size: min(3.5vw, 16px);
  }
  .strengthText h4 {
    display: block;
    margin-bottom: min(9vw, 49px);
    margin-top: min(2.2vw, 12px);
  }
  .strengthTtl {
    margin-top: 0;
    margin-left: 0;
    font-size: min(5.3vw, 29px);
    line-height: min(8.48vw, 46.4px);
  }
  .details p {
    font-size: min(3.8vw, 20px);
    line-height: min(35.6px, 6.76vw);
    margin-bottom: min(36px, 6.5vw);
  }
  .strengthWrapper li {
    margin-bottom: min(150px, 26vw);
  }
  .strengthDeco {
    position: absolute;
    top: 10%;
  }
  /*強み*/
  .BusinessDetailWrapper h3 {
    font-size: min(6.7vw, 36px);
    padding-top: min(18.5vw, 100px);
    margin-bottom: min(13.2vw, 70px);
  }
  .list li {
    width: 46%;
    padding-top: min(30px, 5.5vw);
    padding-bottom: min(30px, 5.5vw);
  }
  .BusinessDetailWrapper li:nth-child(3) {
    margin-top: min(37.5px, 6.9vw);
  }
  .BusinessDetailWrapper li:nth-child(4) {
    margin-top: min(37.5px, 6.9vw);
  }
  .BusinessDetailWrapper li:nth-child(5) {
    margin-top: min(37.5px, 6.9vw);
  }
  .BusinessDetailWrapper li:nth-child(6) {
    margin-top: min(37.5px, 6.9vw);
  }
  .list .icon {
    width: 27%;
  }
  .BusinessDetailWrapper h5 {
    font-size: min(3.6vw, 18px);
  }
  .BusinessDetailWrapper .others h5 {
    font-size: min(3.6vw, 18px);
    margin-bottom: 0;
    margin-top: min(15px, 2.2vw);
  }
  .list .sub {
    display: none;
  }
  #BusinessDetail .detailButton {
    border: solid 1px #ffffff;
    border-radius: 100px;
    width: 52%;
    margin: 0 auto;
    padding-top: min(4vw, 28px);
    padding-bottom: min(4vw, 28px);
    margin-top: min(17.5vw, 96px);
    max-width: 280px;
  }
  #BusinessDetail .detailButton p {
    font-size: min(3.8vw, 20px);
  }
  .BusinessDetailWidth {
    padding-bottom: min(32vw, 175px);
  }
  .BusinessDetailWrapper {
    background-image: url("../img/businessBGSP.png");
  }
  /*実績紹介*/
  .IntroductionWrapper h3 {
    position: initial;
    white-space: nowrap;
    -ms-writing-mode: tb-rl;
    writing-mode: initial;
    font-size: min(6.7vw, 36px);
    margin-left: 5%;
  }
  .introductionDeco1 {
    position: absolute;
    width: 73%;
    left: 20vw;
    top: max(-14vw, -86px);
    max-width: 400px;
    padding-top: 7vw;
  }
  .sliderWrapper {
    margin-left: 5%;
    margin-top: min(10.7vw, 58px);
  }
  .sliderWrapper li {
    width: 69vw;
    margin-left: min(53px, 9.8vw);
    max-width: 385px;
  }
  #Introduction {
    padding-top: min(200px, 36vw);
    padding-bottom: min(48.5vw, 300px);
  }
  .slick-prev, .slick-next {
    display: none !important;
  }
  .sliderTexts h4.sliderH4TwoRow {
    font-size: min(24px, 4.3vw);
    line-height: min(30px, 5.375vw);
    white-space: nowrap;
    margin-top: min(38.5px, 7vw);
    margin-bottom: min(2vw, 12px);
  }
  .sliderTexts h4.sliderH4OneRow {
    font-size: min(24px, 4.3vw);
    line-height: min(60px, 10.75vw);
    white-space: nowrap;
    margin-top: min(38.5px, 7vw);
    margin-bottom: min(2vw, 12px);
  }
  .sliderH4TwoRow span {
    font-size: min(19.2px, 3.44vw);
  }
  .sliderTexts h5 {
    font-size: min(17.6px, 3vw);
    line-height: min(24px, 4.2vw);
  }
  .sliderTexts p {
    font-size: min(3.8vw, 20px);
    line-height: min(30px, 5.7vw);
    margin-top: min(27.5px, 5vw);
  }
  #Introduction .detailButton {
    border-radius: 100px;
    color: #1E415E;
    position: absolute;
    right: 5%;
    width: 47.4%;
    margin: 0 auto;
    padding-top: min(4vw, 28px);
    padding-bottom: min(4vw, 28px);
    margin-top: min(17.5vw, 96px);
    max-width: 280px;
  }
  #Introduction .detailButton p {
    font-size: min(3.8vw, 20px);
  }
  .introductionDeco2 {
    top: -92%;
    left: 0%;
    position: absolute;
  }
  .InquiryWrapper h3 {
    font-size: min(6.7vw, 36px);
    padding-top: min(17vw, 93.5px);
    margin-bottom: min(8.4vw, 48px);
  }
  .InquiryWrapper p {
    width: 90%;
    font-size: min(3.8vw, 20px);
    line-height: min(35.6px, 6.76vw);
    margin-bottom: min(66px, 12vw);
  }
  #Inquiry .inquiryButton {
    border: solid 1px #1E415E;
    border-radius: 100px;
    width: 60%;
    color: #1E415E;
    margin: 0 auto;
    padding-top: min(5.12vw, 28px);
    padding-bottom: min(5.12vw, 28px);
    max-width: 300px;
  }
  #Inquiry .inquiryButton p {
    font-size: min(4.8vw, 25px);
  }
  .InquiryWrapper {
    background-image: url(../img/InquiryBGSP.png);
    background-size: cover;
    padding-bottom: min(27vw, 150px);
  }
  /*フッター*/
  .footerWrapper {
    padding-top: min(13.5vw, 75px);
  }
  .footerFlex {
    display: block;
    padding-bottom: min(110px, 20vw);
    font-weight: 700;
  }
  .footerLogoWrapper .logo {
    width: 6.5%;
    max-width: 28px;
  }
  .footerName {
    margin-left: -3px;
    font-size: min(3.5vw, 17px);
    margin-top: min(4vw, 22px);
  }
  .footerNaviWrapper {
    width: 100%;
    display: block;
    margin-top: min(103px, 18.8vw);
  }
  .footerNaviWrapper .nav {
    margin-left: -3px;
  }
  .footerNaviWrapper p {
    white-space: nowrap;
    font-size: min(3.8vw, 20px);
  }
  .SPSecondNav {
    margin-top: min(38px, 7vw);
  }
  .footerNaviWrapper {
    position: relative;
  }
  .footerNaviWrapper .button {
    border: solid 1px #1E415E;
    border-radius: 100px;
    padding-top: min(4vw, 28px);
    padding-bottom: min(4vw, 28px);
    padding-right: min(1.5vw, 30px);
    padding-left: min(1.5vw, 30px);
    position: absolute;
    top: 0;
    right: 0;
    max-width: 280px;
    width: 47.4%;
    text-align: center;
  }
  .footerNaviWrapper .button p {
    font-size: min(3.8vw, 20px);
  }
  .copyright p {
    font-size: min(3.5vw, 16px);
    margin-bottom: min(38px, 7vw);
  }
  .nav__items.nav-items {
    display: block;
  }
  .header__nav .nav {
    margin-right: 0%;
  }
  .button {
    padding-top: min(23px, 4.2vw);
    padding-bottom: min(23px, 4.2vw);
    padding-left: min(46px, 8.4vw);
    padding-right: min(46px, 8.4vw);
  }
  /**/
  .read-more-003 {
    position: relative;
  }
  .read-more-003 .HidText {
    position: relative;
    max-height: 39vw; /* 開く前に見せたい高さを指定 */
    margin-bottom: 10px;
    overflow: hidden;
    transition: max-height 1s;
  }
  .read-more-003:has(:checked) .HidText {
    max-height: 100vh;
  }
  .read-more-003 .HidText::after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 31vw;
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .9) 50%, hsla(0, 0%, 100%, .9) 0, #fff);
    content: '';
  }
  .read-more-003 .HidTextProf::after {
    display: none;
  }
  .read-more-003:has(:checked) .HidText::after {
    content: none;
  }
  .read-more-003 label {
    display: flex;
    align-items: center;
    gap: 0 4vw;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    padding-top: min(19.3px, 3vw);
    padding-bottom: min(19.3px, 3vw);
    padding-left: min(8vw, 44px);
    padding-right: min(8vw, 44px);
    border-radius: 100px;
    background-color: transparent;
    font-size: 3.2vw;
    border: 1px solid #1E415E;
    font-family: 'Noto Serif JP', serif;
    color: #1E415E;
  }
  .read-more-003:has(:checked) label {
    display: none;
  }
  .read-more-003 input {
    display: none;
  }
  .dli-plus {
    display: inline-block;
    vertical-align: middle;
    color: #333;
    line-height: 1;
    width: 1px;
    height: min(16.5px, 3vw);
    background: currentColor;
    border-radius: 0.1em;
    position: relative;
  }
  .dli-plus::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    transform: rotate(90deg);
  }
  .strengthText span.dli-plus {
    margin-left: 0px;
  }
  /*続きを読むプロフ*/
  .read-more-004 {
    position: relative;
  }
  .read-more-004 .HidText {
    position: relative;
    max-height: 39vw; /* 開く前に見せたい高さを指定 */
    margin-bottom: 10px;
    overflow: hidden;
    transition: max-height 1s;
  }
  .read-more-004:has(:checked) .HidText {
    max-height: 100vh;
  }
  .read-more-004 .HidText::after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 31vw;
    background: linear-gradient(180deg, hsla(187, 41%, 91%, 0) 0, hsla(187, 41%, 91%, 0.7) 50%, hsla(187, 41%, 91%, 0.7) 0, #e0f0f2);
    content: '';
  }
  .read-more-004 .HidTextProf::after {
    display: none;
  }
  .read-more-004:has(:checked) .HidText::after {
    content: none;
  }
  .read-more-004 label {
    display: flex;
    align-items: center;
    gap: 0 4vw;
    position: absolute;
    bottom: -30%;
    left: 50%;
    transform: translateX(-50%);
    padding-top: min(19.3px, 3vw);
    padding-bottom: min(19.3px, 3vw);
    padding-left: min(8vw, 44px);
    padding-right: min(8vw, 44px);
    border-radius: 100px;
    background-color: transparent;
    font-size: 3.2vw;
    border: 1px solid #1E415E;
    font-family: 'Noto Serif JP', serif;
    color: #1E415E;
  }
  .read-more-004:has(:checked) label {
    display: none;
  }
  .read-more-004 input {
    display: none;
  }
  .dli-plus {
    display: inline-block;
    vertical-align: middle;
    color: #333;
    line-height: 1;
    width: 1px;
    height: min(16.5px, 3vw);
    background: currentColor;
    border-radius: 0.1em;
    position: relative;
  }
  .dli-plus::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    transform: rotate(90deg);
  }
  .strengthText span.dli-plus {
    margin-left: 0px;
  }
}
/*アニメーション関係*/
/*ボタンの塗*/
@media screen and (min-width:767px) {
  #BusinessDetail .detailButton {
    transition: 0.5s;
  }
  #BusinessDetail .detailButton:hover {
    background: #1E415E;
    border: solid 1px #1E415E;
  }
  #Introduction .detailButton {
    transition: 0.5s;
  }
  #Introduction .detailButton:hover {
    background: #1E415E;
    border: solid 1px #1E415E;
  }
  #Introduction .detailButtonText.turnColor {
    color: #ffffff;
  }
}
/*inview*/
.beforeInView {
  opacity: 0;
  transition: 3s;
}
.beforeInView.view {
  opacity: 1;
}
.thoughtsDeco5.beforeInView.view {
  opacity: 0.3;
}
.thoughtsDeco4.beforeInView.view {
  opacity: 0.2;
}
.thoughtsDeco6.beforeInView.view {
  opacity: 0.2;
}
.strengthDeco.beforeInView.view {
  opacity: 0.3;
}
.introductionDeco.introductionDeco1.beforeInView.view {
  opacity: 0.2;
}
.introductionDeco.introductionDeco2.beforeInView.view {
  opacity: 0.3;
}