@charset "UTF-8";
.contents-margin {
  margin-bottom: 100px;
}

.contents-padding {
  padding-bottom: 100px;
}

.contents-padding-top {
  padding-top: 100px;
}

.text {
  color: #596380;
  font-size: 16px;
  letter-spacing: 0.08em;
  line-height: 1.8;
}
.text.is-white {
  color: #fff;
}
.text.is-centre {
  text-align: center;
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
}

body {
  position: relative;
}

img {
  width: 100%;
}

.bg-base {
  background: linear-gradient(0deg, #e1e2e8 0%, #f8f8fc 100%);
}

.tbl-and-sp {
  display: none;
}

.article-top-margin {
  padding-top: 80px;
}

.button-base,
.button-brand,
.button-more {
  display: block;
  position: relative;
  padding: 18px 35px 20px;
  background-color: #162144;
  box-shadow: 2px 2px 20px rgba(36, 65, 93, 0.3), -3px -3px 20px #fff;
  color: #f7f7fb;
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0.1em;
  text-align: center;
}
.button-base i,
.button-brand i,
.button-more i {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.button-base:hover,
.button-brand:hover,
.button-more:hover {
  background-color: #b2b6b6;
  color: #fff;
  opacity: 1;
}
.button-more {
  padding: 14px 35px 16px;
  background-color: #dedfe5;
  color: #596380;
  font-size: 10px;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.1em;
}
.button-more.is-white {
  background-color: #fff;
}
.button-more.is-white:hover {
  background-color: #b2b6b6;
  color: #fff;
}
#g-nav {
  display: none;
}
.article-top-margin {
  padding-top: 100px;
}
.button-base,
.button-brand,
.button-more {
  font-size: 18px;
}
.button-more {
  font-size: 14px;
}
.openbtn {
  display: none;
}
.box-area.is-footer .box {
  display: block;
  margin-left: 0;
}
.box-area.is-footer > .box-area__pc-menu {
  width: 100%;
}
.box-area__pc-menu-list {
  display: flex;
}
.box-area__pc-menu-list > li:last-of-type {
  margin-left: auto;
}
.box-area__pc-menu-list .box-area__isms {
  width: 100px;
}
.box-area__pc-menu-sublist > li {
  margin-bottom: 16px;
}
.box-area__pc-menu-sublist > li:last-of-type {
  margin-bottom: 0;
}
.box-area__pc-menu-sublist > li > a {
  display: block;
  color: #fff;
  font-size: 16px;
}
.box-area__pc-menu-list > li:first-child {
  padding-left: 0;
}
.header {
  z-index: 99;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(180deg, white 0%, rgba(255, 255, 255, 0.601299895) 54%, rgba(255, 255, 255, 0) 100%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
}
.header-lp {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 18px;
  padding-bottom: 18px;
}
.header__logo {
  width: 198px;
  padding: 33px 0 33px 80px;
}
.header__logo-lp {
  position: relative;
  display: block;
  margin: 0 auto;
  padding: 0;
  width: auto;
}
.header__logo-lp-img {
  height: 100px;
  margin: auto;
}
.header .pc-menu {
  display: block;
  padding-right: 68px;
}
.header .pc-menu .pc-menu__list {
  font-family: "Montserrat", sans-serif;
  display: flex;
  justify-content: flex-end;
  font-size: 22px;
  font-weight: 500;
}
.header .pc-menu .pc-menu__list > li > a {
  height: 100px;
  display: flex;
  align-items: center;
  color: #162144;
  padding-right: 22px;
  padding-left: 22px;
}
.footer {
  /* position: relative; */
  background-color: #162144;
  padding: 50px 0;
}
.footer-lp {
  background-color: #333333;
  padding: 30px 0;
}
.footer__logo {
  width: 20%;
}
.footer__body-lp {
  display: flex;
  justify-content: center;
}
.footer__meta {
  /* position: relative; */
  order: 1;
}
.footer__menu {
  width: 80%;
}
/* .footer__hd {
  width: 180px;
} */
.footer__privacy {
  display: flex;
  justify-content: center;
  margin-bottom: 15px;
}
.footer__privacy > a {
  color: #fff;
  font-weight: 300;
  font-size: 11px;
  letter-spacing: 0.08em;
}
.footer__copy {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  font-weight: 200;
}
.breadcrumb.contents-l {
  padding-top: 15px;
  padding-bottom: 15px;
}
.breadcrumb ul {
  display: flex;
  align-items: center;
}
.breadcrumb ul li {
  color: #707070;
  font-size: 12px;
}
.breadcrumb ul li .is-no-link {
  pointer-events: none;
}
.breadcrumb ul li i {
  padding: 0 5px;
  color: #707070;
  font-size: 10px;
}
.breadcrumb ul li:last-child i {
  display: none;
}
.breadcrumb ul li:last-child a {
  pointer-events: none;
}
.article-title.contents-l {
  padding-bottom: 0;
}
.article-title {
  display: flex;
  justify-content: center;
  align-items: center;
}

.article-title-set {
  margin-bottom: 50px;
  text-align: center;
}
.article-title-set.is-left {
  text-align: left;
}
.article-title-set__title {
  color: #596380;
  font-size: 35px;
  font-weight: 200;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
.article-title-set__title-bold {
  font-weight: 600;
}
.article-title-set__sub {
  color: #596380;
  font-size: 18px;
  font-weight: 200;
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase;
}
.article-title__sub {
  font-size: 16px;
}
.article-title__title {
  font-size: 55px;
}
.article-title__text {
  margin-top: 40px;
  margin-bottom: 0;
}
.article-title__text span {
  font-size: 16px;
}
.page-top {
  z-index: 9;
  position: fixed;
  right: 70px;
  bottom: 50px;
  width: 64px;
  height: 64px;
  border-radius: 1000px;
  background-color: rgba(178, 182, 182, 0.55);
  cursor: pointer;
}
.group {
  padding: 40px 0;
}
.group__title {
  margin-bottom: 30px;
  color: #596380;
  font-size: 18px;
  font-weight: 200;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
}
.group__logo {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: auto;
}
.group__logo > li {
  width: calc(25% - 20px);
  margin: 0 10px;
}
.group__logo > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  background-color: #fff;
  box-shadow: 2px 2px 20px rgba(36, 65, 93, 0.3), -3px -3px 20px #fff;
}
.group__logo > li a:hover {
  box-shadow: none;
  opacity: 1;
}
.group__logo > li img {
  width: 55%;
}
.button-base.button-brand {
  width: 200px;
  margin: auto;
}
.news-list {
  padding: 30px;
  margin-bottom: 30px;
}
.news-list > li {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  margin: 30px auto;
}
.news-list > li > a {
  /* width: 100%; */
  display: flex;
  align-items: center;
}
.news-list .news-list__date-and-tag {
  width: 100%;
}
.news-list .news-list__date {
  color: #162144;
  font-size: 14px;
  font-family: "Montserrat", sans-serif;
  flex-shrink: 0;
  width: 48%;
  max-width: 110px;
}
.news-list .news-list__tag {
  flex-shrink: 0;
  max-width: calc(48% - 10px);
  width: 110px;
  padding: 8px 10px;
  color: #fff;
  background-color: #162144;
  font-weight: 400;
  font-size: 12px;
  text-align: center;
  margin-right: 30px;
  margin-left: 30px;
}
.news-list .news-list__text {
  /* flex-shrink: 0; */
  font-size: 14px;
  line-height: 1.5;
}
.box-area__isms-sp {
  display: none;
}
/*-------------------------------*/

/*@media screen and (max-width : 1000px)

/*-------------------------------*/
@media screen and (max-width: 999.98px) {
  .large-only {
    display: none;
  }
  .box-area {
    margin: 0 100px;
    border-top: 1px solid #fff;
  }
  .box-area.is-footer {
    margin: 0 0 20px;
    border-top: none;
  }
  .box-area__section {
    padding: 18px 0;
    border-bottom: 1px solid #fff;
  }
  .box-area__section.is-single .title::before,
  .box-area__section.is-single .title::after {
    display: none;
  }
  .box-area .title {
    position: relative;
    display: flex;
    align-items: center;
    max-width: 500px;
    color: #fff;
    font-size: 14px;
    font-weight: 200;
    letter-spacing: 0.08em;
    cursor: pointer;
    transition: all 0.5s ease;
    margin-right: auto;
    margin-left: auto;
  }
  .box-area .title > span {
    font-size: 20px;
    font-weight: 300;
  }
  .box-area .title::before,
  .box-area .title::after {
    position: absolute;
    width: 18px;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .box-area .title::before {
    top: 48%;
    right: 0;
    transform: rotate(0deg);
  }
  .box-area .title::after {
    top: 48%;
    right: 0;
    transform: rotate(90deg);
    transition: all 0.3s;
  }
  .box-area .title.close::after {
    transform: rotate(0deg);
    transition: all 0.3s;
  }
  .box-area .title > em {
    width: 45%;
    font-size: 28px;
    font-family: "Montserrat", sans-serif;
    font-weight: 200;
  }
  .box-area .box {
    display: none;
    margin-left: 38%;
    padding-top: 12px;
  }
  .box-area .box li {
    margin-bottom: 12px;
  }
  .box-area .box li a {
    color: #fff;
    font-weight: 300;
    font-size: 13px;
    font-size: 3.4666666667vw;
    letter-spacing: 0.08em;
  }
  .box-area .box li:last-child {
    margin-bottom: 0;
  }
  .is-footer .box-area__section {
    padding: 18px 30px;
  }
  .box-area.is-footer > .box-area__pc-menu {
    display: none;
  }
  .group__logo > li {
    width: calc(50% - 20px);
    margin: 0 10px 15px;
  }
  .group__logo > li a {
    padding: 5px 0;
  }
  .group__logo > li img {
    width: 50%;
  }
  .footer {
    padding-top: 0;
    padding-bottom: 10px;
  }
  .footer__body {
    display: flex;
    flex-wrap: wrap;
  }
  .footer__logo {
    width: 100%;
    order: 1;
    text-align: center;
  }
  .footer__meta {
    width: 100%;
    order: 3;
    text-align: center;
  }
  .footer__menu {
    width: 100%;
  }
  .footer__hd {
    width: 198px;
    margin: 0 auto 20px;
  }
  .box-area__isms-sp {
    display: flex;
    justify-content: center;
    margin-top: 20px;
  }
  .box-area__isms-sp .box-area__isms {
    width: 80px;
  }
  .footer__privacy:last-of-type {
    margin-bottom: 30px;
  }
}

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

/*@media screen and (max-width : 768px)

/*-------------------------------*/
@media screen and (max-width: 767.98px) {
  .header__logo-lp-img {
    height: 65px;
  }
  .button-base,
  .button-brand,
  .button-more {
    padding: 12px 20px;
  }
  .text {
    font-size: 14px;
    line-height: 1.6;
  }
  .small-side-margin {
    padding-right: 30px;
    padding-left: 30px;
  }
  .small-side-margin-s {
    padding-right: 30px;
    padding-left: 30px;
  }
  .article-top-margin {
    padding-top: 80px;
  }
  .article-title__sub {
    margin-bottom: 15px;
    color: #96969a;
    font-size: 16px;
    letter-spacing: 0.1em;
  }
  .article-title-set__title {
    font-size: 22px;
    letter-spacing: 0.08em;
    margin-bottom: 20px;
  }
  .article-title-set__sub {
    font-size: 14px;
  }
  .article-title__text {
    border-bottom: 0.5px solid #596380;
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
  .article-title__text span {
    display: block;
    margin-top: 30px;
    color: #596380;
    font-size: 14px;
  }
  .medium-only {
    display: none;
  }
  .tbl-and-sp {
    display: block;
  }
  #g-nav {
    display: block;
    z-index: 999;
    position: fixed;
    top: 0;
    right: -120%;
    width: 100%;
    /* width: 584px; */
    height: 100vh;
    background: #162144;
    /* box-shadow: 2px 2px 20px rgb(36 65 93 / 30%), -3px -3px 20px #fff; */
    transition: all 0.6s;
  }

  #g-nav.panelactive {
    right: 0;
  }

  #g-nav.panelactive #g-nav-list {
    -webkit-overflow-scrolling: touch;
    z-index: 999;
    position: fixed;
    /* width: 584px; */
    width: 100%;
    height: 100vh;
    overflow: auto;
  }
  .openbtn {
    display: block;
    z-index: 9999;
    position: fixed;
    top: 16px;
    right: 16px;
    width: 50px;
    height: 50px;
    cursor: pointer;
  }

  /*×に変化*/
  .openbtn span {
    display: inline-block;
    position: absolute;
    left: 50%;
    width: 28px;
    height: 2px;
    transform: translateX(-50%);
    border-radius: 2px;
    background-color: #666;
    transition: all 0.4s;
  }

  .openbtn span:nth-of-type(1) {
    top: calc(50% - 10px);
  }

  .openbtn span:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
  }

  .openbtn span:nth-of-type(3) {
    top: calc(50% + 8px);
  }

  .openbtn.active span:nth-of-type(1) {
    top: 50%;
    width: 40px;
    transform: translateX(-50%) rotate(-45deg);
    background-color: #fff;
  }

  .openbtn.active span:nth-of-type(2) {
    opacity: 0;
  }

  .openbtn.active span:nth-of-type(3) {
    top: 50%;
    width: 40px;
    transform: translateX(-50%) rotate(45deg);
    background-color: #fff;
  }

  .sp-menu {
    position: relative;
  }
  .sp-menu__logo {
    width: 128px;
    padding: 30px 0 63px 26px;
  }
  .sp-menu__bottom {
    width: 100%;
    margin-top: 50px;
    padding-bottom: 20px;
    text-align: center;
  }
  .sp-menu__belight {
    width: 152px;
    margin: 0 auto 24px;
  }
  .sp-menu__belight p {
    padding-top: 6px;
    color: #fff;
    font-weight: 200;
    font-size: 11px;
    letter-spacing: 0.25em;
  }
  .sp-menu__privacy {
    display: block;
    margin-bottom: 12px;
    color: #fff;
    font-weight: 300;
    font-size: 11px;
    letter-spacing: 0.1em;
  }
  .sp-menu__copy {
    color: #fff;
    font-weight: 200;
    font-size: 10px;
    font-family: "Montserrat", sans-serif;
    letter-spacing: 0.1em;
  }
  .box-area {
    margin: 0 35px;
  }
  .box-area .title {
    font-size: 3.4666666667vw;
  }
  .box-area .title > em {
    width: 38%;
    font-size: 4.5333333333vw;
    margin-left: 5%;
  }
  .box-area .title > span {
    font-size: 3.1711111111vw;
  }
  .header {
    height: 80px;
  }
  .header__logo {
    width: 128px;
    padding: 30px 0 30px 26px;
  }
  .header .pc-menu {
    display: none;
  }

  .group__logo > li a {
    padding: 0;
  }
  .button-base.button-brand {
    max-width: 50%;
    font-size: 1rem;
    line-height: 1.5;
    padding: 18px 30px 20px;
  }
  .page-top {
    right: 20px;
    bottom: 25px;
    width: 36px;
    height: 36px;
  }
  .news {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .news-list {
    padding: 15px;
  }
  .news .article-title-set {
    margin-bottom: 30px;
  }
  .news-list > li {
    width: 100%;
    flex-wrap: wrap;
    margin: 10px auto;
  }
  .news-list > li > a {
    width: 100%;
    flex-wrap: wrap;
  }
  .news-list .news-list__date {
    margin-right: 10px;
  }
  .news-list .news-list__tag {
    width: 100px;
    margin-right: 0;
    margin-left: 0;
  }
  .news-list .news-list__text {
    width: 100%;
    font-size: 14px;
    line-height: 1.5;
    margin-top: 8px;
  }
}
/*-------------------------------*/

/*@media screen and (max-width : 640px)

/*-------------------------------*/
@media screen and (max-width: 639.98px) {
  .small-only {
    display: block;
  }
  .group__logo {
    width: 100%;
    flex-direction: column;
  }
  .group__logo > li {
    width: 210px;
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
  .group__logo > li img {
    width: 65%;
  }
}
/*-------------------------------*/

/*@media screen and (max-width : 500px)

/*-------------------------------*/
@media screen and (max-width: 499.98px) {
  .group__title {
    margin-bottom: 20px;
  }
  .extra-small-only {
    display: block;
  }
}
/*-------------------------------*/

/*@media screen and (max-width : 400px)

/*-------------------------------*/
@media screen and (max-width: 399.98px) {
  .small-side-margin-s {
    padding-right: 15px;
    padding-left: 15px;
  }
}
/*-------------------------------*/

/* min-width

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

/*@media screen and (min-width : 500px)

/*-------------------------------*/
@media screen and (min-width: 500px) {
  .extra-small-only {
    display: none;
  }
}
/*-------------------------------*/

/*@media screen and (min-width : 640px)

/*-------------------------------*/
@media screen and (min-width: 640px) {
  .small-only {
    display: none;
  }
}
/*-------------------------------*/

/*@media screen and (min-width : 768px)

/*-------------------------------*/
@media screen and (min-width: 768px) {
  .contents {
    max-width: 1010px;
    margin: 0 auto;
    padding: 0 80px;
  }
  .contents-s {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 80px;
  }
  .contents-l {
    max-width: 1100px;
    margin: 0 auto;
    padding: 50px 80px;
  }
  .small-only {
    display: none;
  }
}
/*-------------------------------*/

/*@media screen and (min-width : 1000px)

/*-------------------------------*/
@media screen and (min-width: 1000px) {
  .medium-down {
    display: none;
  }
  .contents-footer {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 80px;
    display: flex;
    flex-wrap: wrap;
  }
  .footer__menu {
    margin-bottom: 30px;
  }
  .footer__meta {
    width: 100%;
  }
  .footer__copy {
    width: 100%;
    text-align: right;
  }
  .is-footer .box-area__section {
    padding: 0;
    border-bottom: none;
  }
  .is-footer .box-area__section .title::before,
  .is-footer .box-area__section .title::after {
    display: none;
  }
  .box-area.is-footer em {
    display: none;
  }
  .box-area.is-footer .title {
    pointer-events: none;
  }
  .news-list > li {
    width: 80%;
  }
  .box-area__pc-menu-list > li:not(:last-of-type) {
    padding-left: 20px;
  }
}
/*-------------------------------*/

/*@media screen and (min-width : 1200px)

/*-------------------------------*/
@media screen and (min-width: 1200px) {
  .footer__hd {
    width: 180px;
  }
  .footer__logo {
    width: 28%;
  }
  .footer__menu {
    width: 72%;
  }
  .box-area__pc-menu-list > li:not(:last-of-type) {
    padding-left: 64px;
  }
  .box-area__pc-menu-list > li:first-of-type {
    padding-left: 0;
  }
}
