@charset "UTF-8";
/* ------------------------------------

colors setting

------------------------------------ */
/* ------------------------------------

colors setting の変数ではなく
下記の左側の変数をcssで指定する

×：$black
◯：$dark-text

------------------------------------ */
/*  text-color
*----------------------------------- */
/*  background-color
*----------------------------------- */
/*  border-color
*----------------------------------- */
/*  system-color
*----------------------------------- */
/*  cv
*----------------------------------- */
/*  footer
*----------------------------------- */
/*  menu
*----------------------------------- */
/*  new icon
*----------------------------------- */
/*  horizontal
*----------------------------------- */
/*  slick-color
*----------------------------------- */
.en {
  font-family: source-sans-pro, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.en02 {
  font-family: source-serif-pro, serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.yakuhan {
  font-family: "YakuHanJP", source-sans-pro, sans-serif;
}

/* ------------------------------------

cmn

------------------------------------ */
.page-top .p-header {
  text-align: center;
  max-width: 90%;
  margin: 0 auto 20px;
}
.page-top .p-header__title {
  font-size: 50px;
  line-height: 1;
}
.page-top .p-header__subtitle {
  font-size: 13px;
  margin-top: 4px;
}
.page-top .p-header__text {
  font-size: 15px;
  margin-top: 10px;
}

/* ------------------------------------

l-〇〇

------------------------------------ */
.page-top .l-〇〇__container {
  width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-〇〇__container {
    width: auto;
  }
}

/* ------------------------------------

topvisual

------------------------------------ */
.page-top .l-visual {
  position: relative;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-visual {
    padding-top: 112px;
    margin-bottom: 95px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual {
    padding-top: 18vw;
    margin-bottom: 15vw;
  }
}
.page-top .l-visual__slide {
  width: 100%;
  position: relative;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__slide {
    padding-bottom: 11vw;
  }
}
.page-top .l-visual .slick-dots {
  text-align: left;
  position: absolute;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-visual .slick-dots {
    bottom: 11.8vw;
    left: 3.4vw;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual .slick-dots {
    left: 5vw;
  }
}
.page-top .l-visual .slick-dots li {
  border-radius: 0;
  background: #E7E7E7;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-visual .slick-dots li {
    width: 46px;
    height: 5px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual .slick-dots li {
    width: 36px;
    height: 4px;
  }
}
.page-top .l-visual .slick-dots li.slick-active {
  background: #111111;
}

/* ------------------------------------

l-contents

------------------------------------ */
.page-top .l-contents {
  margin-bottom: 100px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-contents {
    margin-bottom: 13vw;
  }
}
.page-top .l-contents__container {
  width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-contents__container {
    width: 90%;
  }
}
.page-top .l-contents__list {
  display: flex;
  gap: 20px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-contents__list {
    flex-wrap: wrap;
    gap: 7vw 3vw;
  }
}
.page-top .l-contents__list .p-item {
  width: 285px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-contents__list .p-item {
    width: 43.5vw;
  }
}
.page-top .l-contents__list .p-item__photo {
  margin-bottom: 10px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-contents__list .p-item__photo {
    margin-bottom: 2.5vw;
  }
}
.page-top .l-contents__list .p-item__text {
  text-align: left;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-contents__list .p-item__text {
    font-size: 14px;
    letter-spacing: 0.5px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-contents__list .p-item__text {
    font-size: 3.6vw;
    line-height: 1.28;
  }
}

/* ------------------------------------

l-management

------------------------------------ */
.page-top .l-management {
  margin-bottom: 65px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-management {
    margin-bottom: 8vw;
  }
}
.page-top .l-management__container {
  width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-management__container {
    width: 90%;
  }
}
.page-top .l-management a {
  display: block;
}

/* ------------------------------------

l-satisfaction

------------------------------------ */
.page-top .l-satisfaction {
  margin-bottom: 115px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-satisfaction {
    margin-bottom: 22vw;
  }
}
.page-top .l-satisfaction__container {
  width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-satisfaction__container {
    width: 90%;
  }
}
.page-top .l-satisfaction a {
  display: block;
}

/* ------------------------------------

l-business

------------------------------------ */
.page-top .l-business {
  background: #ECECEC;
  margin-bottom: 120px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business {
    margin-bottom: 20vw;
  }
}
.page-top .l-business__container {
  min-width: 1200px;
  width: 88%;
  margin: 0 auto;
  padding: 60px 0;
  display: flex;
  align-items: center;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business__container {
    width: 90%;
    min-width: auto;
    flex-wrap: wrap;
    padding-top: 15vw;
    padding-bottom: 17vw;
    gap: 7vw;
  }
}
.page-top .l-business .p-header {
  width: 42%;
  text-align: left;
  margin-bottom: 0;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business .p-header {
    width: 100%;
    max-width: 100%;
  }
}
.page-top .l-business .p-header__title {
  font-size: 70px;
  font-weight: 700;
  background: linear-gradient(90deg, #3370CA, #0AB8C0);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business .p-header__title {
    font-size: 14vw;
  }
}
.page-top .l-business .p-header__text {
  font-size: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business .p-header__text {
    font-size: 3.6vw;
    line-height: 1.28;
    margin-top: 2.5vw;
  }
}
.page-top .l-business .p-header .c-button.dark-border {
  margin-top: 35px;
  margin-left: 0;
  font-size: 16px;
  font-weight: 700;
}
.page-top .l-business .p-header .c-button.dark-border span {
  padding: 0;
}
.page-top .l-business .p-header .c-button.dark-border span::after {
  content: none;
}
.page-top .l-business__list {
  width: 58%;
  display: flex;
  gap: 3%;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business__list {
    width: 100%;
    flex-wrap: wrap;
    gap: 3vw;
  }
}
.page-top .l-business__list .p-item {
  width: 48.5%;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-business__list .p-item {
    width: 100%;
  }
}

/* ------------------------------------

l-office

------------------------------------ */
.page-top .l-office {
  margin-bottom: 112px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office {
    margin-bottom: 23vw;
  }
}
.page-top .l-office__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office__container {
    width: auto;
    flex-wrap: wrap;
    gap: 9vw;
  }
}
.page-top .l-office .p-header {
  width: 37%;
  text-align: left;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office .p-header {
    width: 90%;
    margin: 0 auto;
  }
}
.page-top .l-office .p-header__title {
  font-size: 70px;
  font-weight: 700;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office .p-header__title {
    font-size: 14vw;
  }
}
.page-top .l-office .p-header__text {
  font-size: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office .p-header__text {
    font-size: 3.6vw;
    line-height: 1.28;
    margin-top: 2.5vw;
  }
}
.page-top .l-office .p-header .c-button.dark-border {
  margin-top: 35px;
  margin-left: 0;
  font-size: 16px;
  font-weight: 700;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office .p-header .c-button.dark-border {
    margin-top: 7vw;
    font-size: 4.2vw;
  }
}
.page-top .l-office .p-header .c-button.dark-border span {
  padding: 0;
}
.page-top .l-office .p-header .c-button.dark-border span::after {
  content: none;
}
.page-top .l-office__gallery {
  width: 57%;
  overflow: hidden;
  border-radius: 0 70px 70px 0;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office__gallery {
    width: 94%;
    margin-left: 0;
    border-radius: 0 30px 30px 0;
  }
}
.page-top .l-office__gallery__inner {
  margin-top: -20px;
  margin-bottom: -25px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office__gallery__inner {
    margin-top: -2.5vw;
    margin-bottom: -3.5vw;
  }
}
.page-top .l-office__gallery ul {
  margin-bottom: 10px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office__gallery ul {
    margin-bottom: 1vw;
  }
}
.page-top .l-office__gallery ul:last-child {
  margin-bottom: 0;
}
.page-top .l-office__gallery ul li {
  margin-left: 10px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-office__gallery ul li {
    margin-left: 1vw;
  }
}

/* ------------------------------------

l-other

------------------------------------ */
.page-top .l-other__container {
  width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-other__container {
    width: 90%;
  }
}
.page-top .l-other ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-other ul {
    gap: 3.5vw;
  }
}
.page-top .l-other li {
  width: 386px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-other li {
    width: 100%;
  }
}
.page-top .l-other li a {
  display: block;
  font-size: 30px;
  font-weight: 700;
  transition: 0.3s;
  padding: 30px 25px 27px;
  text-align: center;
  border-radius: 10px;
  border: 1px solid #969696;
  position: relative;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-other li a {
    font-size: 6.4vw;
    padding: 5.5vw 0;
  }
}
.page-top .l-other li a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 8px;
  right: 11px;
  width: 18px;
  height: 18px;
  background: url(../images/cmn/icon_arrow_green.svg) no-repeat right bottom;
  background-size: contain;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-other li a:after {
    width: 14px;
    height: 14px;
  }
}

/*# sourceMappingURL=top.css.map */
