body {
  overflow-x: hidden;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #2c2c2c;
  font-size: 17px;
}

@media print, screen and (max-width: 767px) {
  .pcOnly {
    display: none !important;
  }
}

@media print, screen and (min-width: 768px) {
  .spOnly {
    display: none !important;
  }
}

.header {
  height: 88px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  padding: 24px 37px;
  box-shadow: 0px 4px 8.6px -4px rgba(0, 0, 0, 0.1);
  z-index: 10;
  position: fixed;
  top: 0;
}
@media print, screen and (max-width: 767px) {
  .header {
    width: 100%;
    height: 38px;
    padding: 10px;
  }
}
.header__logo {
  transition: ease 0.3s;
}
.header__logo a {
  display: flex;
  align-items: center;
}
.header__logo a img {
  width: 50px;
  height: 50px;
  display: block;
}
@media print, screen and (max-width: 767px) {
  .header__logo a img {
    width: 22px;
    height: 22px;
  }
}
.header__logo a span {
  display: block;
  font-size: 20px;
  font-weight: bold;
  display: block;
  padding-left: 10px;
}
@media print, screen and (max-width: 767px) {
  .header__logo a span {
    font-size: 11px;
  }
}
.header__logo.close {
  opacity: 0;
}
.header__nav .header__list {
  display: flex;
  align-items: center;
  font-weight: bold;
  gap: 22px;
}
.header__nav .header__list--item a {
  font-weight: bold;
  font-size: 20px;
}
.header__nav .header__list--item a:hover {
  text-decoration: underline;
  transition: 0.3s;
}
@media print, screen and (max-width: 767px) {
  .header #hamburger {
    background-color: transparent;
    position: relative;
    cursor: pointer;
    margin: 0 0 0 auto;
    height: 34px;
    width: 34px;
  }
  .header #hamburger .icon span {
    position: absolute;
    left: 17px;
    width: 17px;
    height: 1.2px;
    background-color: #999;
    transition: ease 0.75s;
  }
  .header #hamburger .icon span:nth-of-type(1) {
    top: 10px;
  }
  .header #hamburger .icon span:nth-of-type(2) {
    top: 16.5px;
  }
  .header #hamburger .icon span:nth-of-type(3) {
    bottom: 10px;
  }
  .header #hamburger .close span:nth-of-type(1) {
    transform: rotate(45deg);
    top: 16.5px;
  }
  .header #hamburger .close span:nth-of-type(2) {
    opacity: 0;
  }
  .header #hamburger .close span:nth-of-type(3) {
    transform: rotate(-45deg);
    top: 16.5px;
  }
  .header .header__nav.header__nav--sp {
    display: none;
    top: 38px;
    left: 0;
    position: absolute;
    z-index: 10;
    width: 100%;
    background-color: #fff;
    padding-bottom: 0.5em;
    box-shadow: 0px 4px 8.6px -4px rgba(0, 0, 0, 0.1);
  }
  .header .header__nav.header__nav--sp .header__list {
    flex-direction: column;
    gap: 0;
  }
  .header .header__nav.header__nav--sp .header__list--item {
    width: 81%;
    text-align: center;
  }
  .header .header__nav.header__nav--sp .header__list--item + .header__list--item {
    border-top: 1px solid #ccc;
  }
  .header .header__nav.header__nav--sp .header__list--item a {
    padding: 1em 0;
    font-size: 17px;
    display: block;
  }
}

.main .mainvisual {
  margin-top: 88px;
}
.main .mainvisual .slick-loading .slick-list {
  background: none;
}
@media print, screen and (max-width: 767px) {
  .main .mainvisual {
    margin-top: 38px;
  }
}
.main .mainvisual .slick-list, .main .mainvisual .slick-track, .main .mainvisual .slick-slide {
  height: 803px !important;
}
@media print, screen and (max-width: 767px) {
  .main .mainvisual .slick-list, .main .mainvisual .slick-track, .main .mainvisual .slick-slide {
    height: 300px !important;
  }
}
.main .mainvisual .slick-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.main .mainvisual .slick-slide {
  position: relative;
}
.main .mainvisual .slick-slide .overlay--img {
  position: absolute;
  left: 2.5%;
  top: 27px;
  z-index: 5;
  width: 286px;
  height: 34px;
  display: block;
}
@media print, screen and (max-width: 767px) {
  .main .mainvisual .slick-slide .overlay--img {
    width: 179px;
    height: 21px;
    top: 9px;
  }
}
.main .mainvisual .slick-slide .overlay--img02 {
  width: 198px;
  height: 63px;
}
@media print, screen and (max-width: 767px) {
  .main .mainvisual .slick-slide .overlay--img02 {
    width: 143px;
    height: 46px;
  }
}
.main .mainvisual .slick-slide .overlay--text {
  position: absolute;
  right: 2.6%;
  bottom: 19px;
  z-index: 5;
  color: #fff;
  background: linear-gradient(90deg, rgba(29, 29, 29, 0.8), rgba(121, 121, 121, 0.8) 100%);
  padding: 0 0 0 12px;
  font-size: 25px;
  font-weight: bold;
}
@media print, screen and (max-width: 767px) {
  .main .mainvisual .slick-slide .overlay--text {
    font-size: 14px;
    padding: 0 0 0 8px;
    bottom: 14px;
  }
}
.main__container {
  padding: 0 20px;
  max-width: 1309px;
  margin: 0 auto;
}
.main .text__h1 {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  padding: 47px 0 44px;
}
@media print, screen and (max-width: 767px) {
  .main .text__h1 {
    font-size: 17px;
    padding: 23px 0 22px;
  }
}
.main .text__main {
  font-size: 17px;
  letter-spacing: 6%;
  font-weight: 400;
}
@media print, screen and (max-width: 767px) {
  .main .text__main {
    font-size: 14px;
  }
}
.main .reorganization .text__main {
  margin: 0px auto 97px;
  text-align: center;
  max-width: 1212px;
  line-height: 1.19;
}
@media print, screen and (max-width: 767px) {
  .main .reorganization .text__main {
    margin: 0 0 29px;
  }
}
.main .business {
  margin-top: 128px;
}
@media print, screen and (max-width: 767px) {
  .main .business {
    margin-top: 64px;
  }
}
.main .business__list {
  display: flex;
  justify-content: center;
}
@media print, screen and (max-width: 767px) {
  .main .business__list {
    display: block;
  }
}
.main .business__list--item {
  margin: 0 61px;
}
@media print, screen and (min-width: 768px) {
  .main .business__list--item a img {
    max-width: 384px;
  }
}
@media print, screen and (max-width: 767px) {
  .main .business__list--item {
    margin: 0 15px;
  }
  .main .business__list--item:nth-child(1) {
    margin-bottom: 17px;
  }
}
.main .business__list--item .business__text {
  margin-top: 21px;
  color: #696868;
  text-align: center;
  font-size: 20px;
  line-height: 1.75;
  position: relative;
  font-weight: 400;
}
@media print, screen and (max-width: 767px) {
  .main .business__list--item .business__text {
    font-size: 14px;
  }
}
.main .business__list--item .business__text p:nth-child(1) {
  margin-bottom: 14px;
}
.main .business__list--item .business__text p:nth-child(1)::after {
  content: "";
  width: 265px;
  height: 1px;
  background-color: #6E6E6E;
  display: block;
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
}
@media print, screen and (max-width: 767px) {
  .main .business__list--item .business__text p:nth-child(1)::after {
    width: 194px;
  }
}
.main .about {
  margin-top: 100px;
}
@media print, screen and (max-width: 767px) {
  .main .about {
    margin-top: 50px;
  }
}
.main .about .text__h1 {
  padding-bottom: 21px;
}
@media print, screen and (max-width: 767px) {
  .main .about .text__h1 {
    padding-bottom: 31px;
  }
}
.main .about__list {
  font-size: 20px;
  color: #6e6e6e;
  display: flex;
  max-width: 765px;
  border-bottom: 1px solid #ccc;
  padding: 39px 0 42px;
  margin: 0 auto;
  align-items: center;
}
@media print, screen and (max-width: 767px) {
  .main .about__list {
    font-size: 14px;
    padding: 11px 0;
  }
}
.main .about__list--title {
  font-weight: 600;
  flex: 1;
}
.main .about__list--text {
  width: 71%;
}
.main .box__text {
  max-width: 1001px;
  margin: 0 auto;
  border: 2px solid #ccc;
  padding: 45px 65px;
}
.main .box__text .text__main {
  padding-left: 8px;
  padding-right: 8px;
}
@media print, screen and (max-width: 767px) {
  .main .box__text {
    padding: 0 4px 0 12px;
    width: 96.7%;
    font-size: 14px;
  }
}
@media print, screen and (max-width: 767px) {
  .main .box__text--close {
    cursor: pointer;
    width: 96.7%;
    height: 12px;
    border-radius: 1.5px;
    background-color: #ccc;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .main .box__text--close .icon__arrow {
    position: relative;
    display: inline-block;
    width: 11.5px;
    height: 5.6px;
  }
  .main .box__text--close .icon__arrow::before, .main .box__text--close .icon__arrow::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: calc(50% - 1px);
    width: 2px;
    height: 8px;
    background-color: #ffffff;
    transform-origin: 50% calc(100% - 1px);
    transition: ease 0.75s;
  }
  .main .box__text--close .icon__arrow::before {
    transform: rotate(52deg);
  }
  .main .box__text--close .icon__arrow::after {
    transform: rotate(-52deg);
  }
  .main .box__text--close.open .icon__arrow::before {
    left: calc(50% - 5px);
  }
  .main .box__text--close.open .icon__arrow::after {
    left: calc(50% + 5px);
  }
  .main .box__text--close + .box__text {
    display: none;
  }
}
.main .privacy {
  margin: 78px auto 0;
}
@media print, screen and (max-width: 767px) {
  .main .privacy {
    margin: 39px auto 0;
  }
}
.main .privacy__text .text__main {
  margin: 0 6px;
  padding: 8px 0;
}
.main .privacy__text .text__main a {
  font-weight: bold;
}
.main .privacy__text .text__main a:hover {
  text-decoration: underline;
}
.main .privacy__text .text__main span {
  font-weight: bold;
}
.main .privacy__text--01 {
  margin-bottom: 40px !important;
}
@media print, screen and (max-width: 767px) {
  .main .privacy__text--01 {
    margin-bottom: 2em !important;
  }
}
.main .privacy__text--right {
  margin-top: 60px;
  text-align: right;
  margin-bottom: 65px;
  line-height: 1.75;
}
@media print, screen and (max-width: 767px) {
  .main .privacy__text--right {
    margin: 43px 0 0;
  }
  .main .privacy__text--right .text__main {
    line-height: 1.5;
    margin: 0 13px 0 0px;
    padding: 0 0 26px 0px;
  }
}
.main .privacy__text .text__h2 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  padding: 50px 0 20px;
  border-top: 2px solid #ccc;
}
@media print, screen and (max-width: 767px) {
  .main .privacy__text .text__h2 {
    margin: 0 17px 0 2px;
    font-size: 14px;
    padding: 22px 0 9px;
  }
}
.main .privacy .privacy__link {
  margin: 17px auto 21px;
  display: block;
  color: #696868;
  background-color: #CCCCCC;
  font-size: 14px;
  font-weight: bold;
  border-radius: 8px;
  text-align: center;
  letter-spacing: 5%;
  padding: 14px 10px;
  width: 90%;
}
.main .cookie {
  margin-top: 73px;
}
.main .cookie__text {
  padding: 32px 73px 23px;
}
@media print, screen and (max-width: 767px) {
  .main .cookie {
    margin-top: 39px;
  }
  .main .cookie__text {
    padding: 9px 7px 8px 10px;
  }
}
.main .contact {
  margin-top: 73px;
}
@media print, screen and (max-width: 767px) {
  .main .contact {
    margin-top: 39px;
  }
}
.main .contact a {
  display: block;
  text-align: center;
}
.main .contact__button {
  background-color: #2c2c2c;
  font-weight: bold;
  color: #fff;
  font-size: 17px;
  max-width: 600px;
  border-radius: 18px;
  padding: 34px;
  margin: 0 auto 43px;
  letter-spacing: 6%;
}
@media print, screen and (max-width: 767px) {
  .main .contact__button {
    font-size: 14px;
    border-radius: 9px;
    padding: 17px;
    margin: 0 auto 39px;
  }
}
.main .contact__button:hover {
  opacity: 0.8;
  transition: 0.3s;
}
.main .contact__link {
  font-size: 17px;
  color: #696868;
  font-weight: bold;
}
@media print, screen and (max-width: 767px) {
  .main .contact__link {
    font-size: 14px;
  }
}
.main .contact__link:hover {
  text-decoration: underline;
}

.footer {
  padding-top: 116px;
  color: #696868;
}
@media print, screen and (max-width: 767px) {
  .footer {
    padding-top: 48px;
  }
}
.footer__list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 19px;
}
@media print, screen and (max-width: 767px) {
  .footer__list {
    gap: 10px;
  }
}
@media print, screen and (max-width: 767px) {
  .footer__list--item:nth-child(2) {
    position: relative;
  }
  .footer__list--item:nth-child(2):before, .footer__list--item:nth-child(2):after {
    position: absolute;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    background-color: #696868;
    top: 10px;
  }
  .footer__list--item:nth-child(2):before {
    left: -5px;
  }
  .footer__list--item:nth-child(2):after {
    right: -5px;
  }
}
.footer__list--item a {
  color: #696868;
  font-size: 17px;
}
@media print, screen and (max-width: 767px) {
  .footer__list--item a {
    font-size: 11px;
  }
}
.footer__list--item a:hover {
  text-decoration: underline;
}
.footer small {
  text-align: center;
  margin: 24px auto;
  display: block;
  font-size: 16px;
}
@media print, screen and (max-width: 767px) {
  .footer small {
    font-size: 11px;
  }
}
/*# sourceMappingURL=style.css.map */