@charset 'utf-8';
/*
 * name:tpage.css
 * author: Nulo Lab
*/
/* page
-------------------- */
.page-headline{ padding-left: 19em; padding-top: 16.6em; margin-bottom: 9.95em; position: relative; z-index: 1; }
.page-headline:after{ content:''; position: absolute; left: 0; top: calc(100% - .255em); width: 100%; height: 6.90972222222vw; background: url(../../img/share/headline_bg.png) no-repeat 0 0 / 100% auto; z-index: -1; }
.page-headline--01{ background: var(--blue-color) url(../../img/share/page-headline.png) no-repeat calc(100% - 22.1em) 9.4em / 30.4em auto; }
.page-headline--02{ min-height: 70em; padding-top: 8em; margin: 0; background: #EAF2FB; }
.page-headline--02:after{ top:unset; bottom: -5px; z-index: 1; background: url(../../img/share/page-headline-2.png) no-repeat 0 0 / 100% auto; }
.page-headline--03{ min-height: 26.5em; padding-top: 10.5em; margin-bottom: 0; background:  var(--blue-color); background: linear-gradient(180deg, var(--blue-color) 16.7em, #fff 16.7em); }
.page-headline--03:after{ top:16.3em; z-index: 1; }
.page-headline--03 .wrap-1050{ z-index: 2;}
.page-headline-desc{ min-height: 18.2em;  }
.page-headline__ttl{ font-size: 8em; font-weight: 900; line-height: calc(98/80); letter-spacing: 0.01em; color:#fff; }
.page-headline__ttl-suben{ margin-bottom: .1666em; display: block; font-size: 3em; font-weight: 700; font-family: var(--ff-red-hat); line-height: calc(40/30); color: #1EB9EE; letter-spacing: 0.05em; }
.page-headline__ttl-subja{ margin-top: .6666em; display: block; font-size: 2.1em; font-weight: 700; line-height: calc(25/21); letter-spacing: 0.04em; color:#fff; }
.page-headline__ttl-2{ font-size: 5.2em; font-weight: 900; letter-spacing: 0.01em; line-height: 1.13; color: #fff; }
.page-headline__ttl-2-suben{ font-size: 2.6em; font-weight: 700; font-family: var(--ff-red-hat); line-height: calc(34/26); letter-spacing: 0.05em; color: #1EB9EE; }
.page-headline__row{ display: flex; flex-wrap: wrap; align-items: center; }
.page-headline__svg{ width: 26.4em; height: 7.5em; margin-top: .5em; }
.page-headline__inner{ position: relative; z-index: 2; }

@media only screen and (max-width: 768px) {
  .page-headline{ padding:8em 2em 0; margin-bottom:8vw; }
  .page-headline--01{ background-size:8em auto; background-position:calc(100% - 1.5em) 10em; }
  .page-headline--02{ min-height:unset; overflow:hidden; padding-bottom:6.90972222222vw; margin-bottom:0; }
  .page-headline--03{ padding-top:8em; margin-bottom:6.90972222222vw; min-height:unset; background:linear-gradient(180deg, var(--blue-color) 14.4em, #fff 14.4em) }
  .page-headline--03:after{ top:14.3em; }
  .page-headline__ttl{ font-size:5.2em; }
  .page-headline__ttl-suben{ font-size:2.1em; }
  .page-headline__ttl-subja{ font-size:1.5em; }
  .page-headline__ttl-2{ font-size:3.64em; }
  .page-headline__ttl-2-suben{ font-size:1.82em; }
  .page-headline-desc{ min-height:12.8em; }
  .page-headline__svg{ width:18.4em; height:5.25em; }
}

/*
breadcrumbs
----------------------------*/
.page-breadcrumbs{ display: flex; flex-wrap: wrap; gap: 1.4em; }
.page-breadcrumbs--01{ margin-top: 6em; }
.page-breadcrumbs__link,
.page-breadcrumbs__txt{ font-size: 1.4em; font-weight: 600; font-family: var(--ff-red-hat); line-height: calc(24/14); color: #fff; }
.page-breadcrumbs__link{ position: relative; }
.page-breadcrumbs__link:after{ content: '>'; position: absolute; right: -.8571em; top: 1px; }
.page-breadcrumbs--02 .page-breadcrumbs__link,
.page-breadcrumbs--02 .page-breadcrumbs__txt{ color:#6A96C5; }
.page-breadcrumbs--03 .page-breadcrumbs__link,
.page-breadcrumbs--03 .page-breadcrumbs__txt{ color:var(--sky-blue-color); }

@media only screen and (max-width: 768px) {
  .page-breadcrumbs--01{ margin-top: 4.2em; }
}

.page-section{ padding-top: 3.6em; }
.page-section--1{ padding-bottom: 14em; }
.page-section--2{ padding-top: 6em; }
.page-section--3{padding-top: 2.2em; }
.page-section--404{ padding: 21em 0 15em; }
.page-column{ padding-top: 6.5em; }
.page-column--2{ display: flex; flex-wrap: wrap; }
.page-content{ flex: 1; overflow: hidden; }
.page-content-inner{ max-width: 88.6em; padding-left: 60px; }

.page__navcta{ padding: 6.5em 0; margin-top: 10em; background-color: #E7EEF5; }
.page__navcta--white{ margin-top: 3.5em; background-color: #fff; }
.page__navcta--white-2{ margin-top: 10em; background-color: #fff; }
.page__navcta-lists{ display: flex; flex-wrap: wrap; max-width: 80.4em; margin: 0 auto; gap: 2.2em; }
.page__navcta-item{ flex: 1; background-color: var(--blue-color); overflow: hidden; border-radius: 3.8em; }
.page__navcta-link{ padding: 3.15em 3em 3.15em 3.5em; display: block; background: url(../../img/icons/arrow_white.png) no-repeat calc(100% - 3em ) center / 5.6em 5.6em; }
.page__navcta-btn-text{ display: block; letter-spacing: 0.04em; }
.page__navcta-btn-text--ja{ font-size: 3.6em; font-weight: 900; line-height: calc(48/36);  color: #fff; }
.page__navcta-btn-text--ja.ja--small{ font-size: 3em; line-height: calc(48/30); letter-spacing: -0.01em; }
.page__navcta-btn-text--ja.ja--small svg{ position: relative; top:.1em; width: 3.266em; height: 0.933em; }
.page__navcta-btn-text--en{ font-size: 2em; font-weight: 700; font-family: var(--ff-red-hat); line-height: calc(28/20); color: var(--sky-blue-color); }
.page__navcta-btn-text__img{ position: relative; top:.4em; width: 2.694em; display: inline-flex; }

.page-previous{ padding: 6em 0; background-color: #fff; }
.page-previous--2{ padding: 4.6em 0 0;text-align: center; }
.pagination__item{ margin: 0 .4em; }
.pagination__item--prev,
.pagination__item--next{ margin: 0 2.8em; }
.pagination__prev,
.pagination__next{ display: inline-flex; align-items: center; justify-content: center; width: 6.2em; height: 5.2em; border:1px solid var(--blue-color); border-radius: 1em; }
.pagination__prev.disable,
.pagination__next.disable{ border-color: #D9D9D9; }
.pagination__prev svg,
.pagination__next svg{ width: 2.3em; height: 1.8em; }
.pagination__prev:not(.disable):hover,
.pagination__next:not(.disable):hover{ background-color: var(--blue-color); }
.pagination__prev:not(.disable):hover line,
.pagination__next:not(.disable):hover line{ stroke:#fff; }
.pagination__link{ display: inline-flex; align-items: center; justify-content: center; height: 3.25em; width: 2.625em; font-size: 1.6em; font-weight: 400; letter-spacing: 0.04em; color: var(--main-color); border-radius: .625em; overflow: hidden; border:1px solid #fff; }
.pagination__link.is-active,
.pagination__link:hover{ font-weight: 700; color: #fff; background-color: var(--blue-color); border-color: var(--blue-color); }
.pagination__dot{ font-size: 2.4em; font-weight: 400; line-height: calc(39/24); letter-spacing: 0.04em; color: rgba(51, 51, 51, 0.5); }

.txt-404{ margin-bottom: .27777em; font-size: 18em; font-weight: 900; line-height: 1; text-align: center; letter-spacing: 0.04em; color: rgba(0, 78, 162, 0.3); }

@media only screen and (max-width: 768px) {
  .page-section--404{ padding: 10em 0; }
  .page-section--1{ padding-bottom:10em; }
  .page-section--2{ padding-top:2.5em; }
  .page-column{ padding-top: 4.55em; }
  .page-content-inner{ max-width: unset; padding-left: 1.5em; padding-right:1.5em; }
  .page__navcta--white-2{ margin-top:7em; }
  .page__navcta-lists{ width:35em; flex-direction:column; }
  .page__navcta-item{ border-radius:2.66em; }
  .page__navcta-btn-text--ja{ font-size:2.52em; }
  .page__navcta-btn-text--ja.ja--small{ font-size:2.1em; }
  .page__navcta-btn-text--en{ font-size:1.4em; }
  .page__navcta-link{ padding: 2.1em; background-size:3.9em; }
  .txt-404{ font-size:12.6em; }
}


/*
pagination
----------------------------*/
.pagination{ margin-top: 8em; }
.pagination__lists{ display: flex; flex-wrap: wrap; justify-content: center; }
@media only screen and (max-width: 768px) {
  .pagination{ margin-top:5.6em; }
  .pagination__prev, .pagination__next{ width:4.3em; height:3.64em; }
  .pagination__item--prev{ margin:0 1.9em 0 0; }
  .pagination__item--next{ margin:0 0 0 1.9em; }
  .pagination__link{ height: 2.26875em; width:1.875em; }
  .pagination__prev svg, .pagination__next svg{ width:1.4375em; height:1.125em; }
  .pagination__dot{ line-height:1; }
}

/*
block
----------------------------*/
.block-content+.block-content{ margin-top: 10em; }
.block-content--border{ padding-bottom: 4.8em; border-bottom: 1px solid #C3D7EB; }
.block-content--border+.block-content--border{ margin-top: 6em; }
.block-content--2{ margin-top: 17em !important; }
.block-content--3{ margin-top: 6em !important; }
.block-content--profile{ margin-top: 6.5em !important; padding: 6em 0; position: relative; }
.block-content--profile::before{ content: ''; position: absolute; width: 100vw; height: 100%; left: -6em; top: 0; border-radius: 8em 0 0 8em; background-color: #E7EEF5; z-index: -1; }
.block-title-1{ margin-bottom: .7692em; font-size: 2.6em; font-weight: 700; line-height: calc(45/26); letter-spacing: 0.04em; }
.block-title-2{ margin-bottom: .416666em; font-size: 2.4em; font-weight: 900; line-height: calc(32/24); }

.block-text-1{ margin-bottom: 1.875em; font-size: 1.6em; font-weight: 400; color: #000; line-height: calc(32/16); }
.block-text-2{ margin-top: 2.8em; padding-left: 26px; display: block; }
.block-text-2 dt{position: relative; font-size: 1.8em; font-weight: 700; line-height: calc(32/18); }
.block-text-2 dt::before{  content: ''; position: absolute; left: -1.4444em; top: .3888em; width: 1em; height: 1em; border-radius: 50%; background-color: var(--sky-blue-color); }
.block-text-2 dt:not(:nth-of-type(-n+1)){ margin-top: .7222em; }
.block-text-2 dd{ display: block; font-size: 1.5em; font-weight: 400; line-height: calc(32/15); }
.block-text-3{ margin-top: 2em; padding: 1.6em; display: flex; flex-wrap: wrap; gap: 2.5em; align-items: center; border-radius: 2.4em; background-color: #E7EEF5; }
.block-text-3__img{ width: 16.9em; border-radius: 1.5em; overflow: hidden; }
.block-text-3__desc{ flex:1; }
.block-text-3__desc a { color: var(--blue-color); text-decoration: underline; }
.block-text-3__desc a:hover{ text-decoration: none; }
.block-map{ margin-top: .625em; }
.block-map iframe{ width: 100%; height: 13.68em; }

.block-gallery{ margin-top: 4em; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1.5em 0; }
.block-gallery__item{ width: calc(405/825 * 100%); height: 25.9em; border-radius: 2em; overflow: hidden; }
.block-vr-btn{ padding: 0; font-size: 1em; background: none; border: 0; border-radius: 3em; outline: none; cursor: pointer; overflow: hidden; }
.block-vr-view{ margin-top: 2.8em; }
.block-vr-iframe iframe{ width: calc(1084/1440 * 100vw); height: calc(100vh - 4em); }

.block-image{ margin:3.2em auto 3em; overflow: hidden; border-radius: 3.4em; }
.block-image--works{ margin-top: 2.2em; }
.block-to-right{ display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 2.5em; }
.block-to-right > * { margin: 0; }
.block-name-txt{ font-size: 3em; font-weight: 500; line-height: calc(42/30); letter-spacing: 0.04em; }
.block-quote{ margin: 3em 0 2.5em; padding: 3.8em 3.8em 2.7em 2.8em; background-color: #F5F5F5; border-radius: 3.6em; }
.block-quote p{ font-weight: 700; font-size: 2em; line-height: calc(40/20); }

.block-table{ margin-top: 2.8em; width: 100%; }
.block-table-collapse{ border-collapse: collapse; }
.block-table td{ font-size: 1.6em; line-height: calc(32/16); vertical-align: top; }
.block-table > tbody > tr > td:first-child{ padding: 1.22em 1em; text-align: center; }
.block-table > tbody > tr > td:last-child{ padding: 1.22em 0 1.22em 2.8125em; }
.block-table--profile { margin-bottom: 6.5em; }
.block-table--01 > tbody > tr > td:first-child{  width: 11.25em; border-right: 1px solid #C9DCEF; }
.block-table--entry{ margin-top: 0; width: 91em; }
.block-table > tbody > tr > td{ border-bottom: 1px solid #C9DCEF; }
.block-table address{ font-style: normal; }
.block-table a{ text-decoration: underline; color: var(--main-color); }
.block-table a:hover{ text-decoration: none; }
.block-table-sub td{ font-size: 1em; }
.block-table-sub td:not(:last-child){ white-space: nowrap; padding-right: 1.6em; }
.block-table ul{ list-style: disc; padding-left: 1.2em; }

.block-table--history{ border-spacing: 2em 0; }
.block-table--history td{ border-bottom-color: #ccc !important;}
.block-table--history td:first-child{ width: 10em; text-align: center; }

.block-media{ margin-top: 8.5em; margin-bottom: 5.5em; counter-reset: section; }
.block-media-item{ position: relative;  }
.block-media-item+.block-media-item{ margin-top: 7em; }
.block-media-row{ margin: 0 auto; width: 120em; display: flex; flex-wrap: wrap; align-items: center; min-height: 40em; }
.block-media-desc{ position: relative; width: 50%; padding: 0 6em; }
.block-media-desc:after{ counter-increment: section; content: counter(section, decimal-leading-zero); position: absolute; top:-.5833em; right: .41666em; font-size: 12em; font-weight: 600; font-family: var(--ff-red-hat); line-height: 1; letter-spacing: -0.01em; background: linear-gradient(180deg, rgba(26, 103, 185, 0.3) 0%, rgba(26, 103, 185, 0) 87.02%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-fill-color: transparent; }


.block-works{ margin-top: 5em; }
.block-works__group{ display: flex; flex-wrap: wrap; justify-content: space-between; gap:2.6em 0; }
.block-works__item{ width: calc(50% - .9em); padding-right: 2.8em; display: inline-flex; flex-wrap: wrap; align-items: center; gap: 2em; border-radius: 2.6em; overflow: hidden; background-color: #E7EEF5; }
.block-works__thumb{ width: 15.8em; height: 11.2em; }
.block-works__btn{ font-size: 1em; padding: 0; cursor: pointer; border-radius: 0; background-color: transparent; border: 0; outline: none; }
.block-works__desc{ flex: 1; padding-left: 1em; }
.block-works__ttl{ font-size: 1.8em; font-weight: 700; line-height: calc(24/18); color: var(--blue-color); }
.block-works__ttl small{ font-size: .8888em; line-height: calc(24/16); }
.block-works__ttl--sub{ display: block; font-size: 1.1em; font-weight: 700; line-height: calc(24/11); color: var(--blue-color); }

.block-schedule{ padding: 10.5em 12em; width: 130em; margin: 0 auto; border-radius: 7.5em; overflow: hidden; background: linear-gradient(180deg, #E7EEF5 0%, rgba(231, 238, 245, 0.3) 100%); }
.block-schedule--works{ margin-top: 11em; }
.block-schedule__lists{ margin-top: 3.3em; display: flex; flex-wrap: wrap; border: 1px solid var(--blue-color); border-radius: 2em; overflow: hidden; }
.block-schedule__item{ flex: 1; height: 5.1em; }
.block-schedule__item:not(:nth-child(-n+1)){ border-left:1px solid var(--blue-color); }
.block-schedule__btn{ height: 100%; width: 100%; font-size: 1.4em; font-weight: 500; color: var(--blue-color); line-height: calc(24/16); background-color: transparent; border-radius: 0; border: 0; outline: none; cursor: pointer; }
.block-schedule__btn.fz--16{ font-size: 1.6em; }
.block-schedule__btn.fz--15{ font-size: 1.5em; }
.block-schedule__btn.is-active{ color:#fff; background-color: var(--blue-color); }

.block-schedule__cards{ max-width: 90em; margin: 5em auto; }
.block-schedule__card{ padding: 5.5em 7em; background-color: #fff; border-radius: 3.8em; overflow: hidden; }
.block-schedule__card:not(.is-active){ display: none; }
.block-schedule__time{ font-size: 2.2em; font-weight: 700; font-family: var(--ff-red-hat); line-height: 120%; color: var(--sky-blue-color); }
.block-schedule__row{ display: flex; flex-wrap: wrap; }
.block-schedule__date{ width: 10.6em; position: relative; }
.block-schedule__date::before{ content: ''; position: absolute; top: 3px; right:10px; width: 18px; height: 18px; border-radius: 50%; background-color: var(--sky-blue-color); }
.block-schedule__row:not(:last-child) .block-schedule__date::after{ content: ''; position: absolute; top: 27px; right:17px; width: 4px; height: calc(100% - 30px); border-radius: 8px; background-color: #C9DCEF; }
.block-schedule__desc{ flex: 1; }
.block-schedule__row:not(:last-child) .block-schedule__desc{ min-height: 4.8em; }
.block-schedule__desc ul{ margin-bottom: .3em; min-height: 3.8em; }
.block-schedule__desc li{ padding-left: 1.2857em; position: relative; font-size: 1.4em; font-weight: 400; line-height: calc(26/14); }
.block-schedule__desc li::before{content: ''; position: absolute; left: 0; top: .5714em; width: 8px; height: 8px; line-height: 1; background-color: var(--blue-color); border-radius: 50%; }
.block-schedule__row::after{ content: ''; position: absolute; }
.block-schedule__title{ margin-bottom: .7222em; font-size: 1.8em; font-weight: 700; letter-spacing: 0.06em; color: var(--blue-color); line-height: 140%; }

@media only screen and (min-width: 769px) {
  .block-media-img{ height: 100%; width: calc(720/1440 * 100%); position: absolute; top: 0; }
  .block-media-item:nth-child(odd) .block-media-row{ flex-direction: row-reverse; }
  .block-media-item:nth-child(even) .block-media-img{ right: 0; border-radius: 4em 0 0 4em; overflow: hidden; }
  .block-media-item:nth-child(odd) .block-media-img{ left: 0; border-radius: 0 4em 4em 0; overflow: hidden; }

  .block-schedule__btn:hover{ color:#fff; background-color: var(--blue-color); }
}

@media only screen and (max-width: 768px) {
  .block-content--profile{ padding:4.2em 0 4.2em 1.5em; }
  .block-content--profile::before{ left:-1.5em; border-radius:5.6em 0 0 5.6em; }
  .block-title-1{ font-size:1.96em; }
  .block-title-2{ font-size:1.68em; }
  .block-text-1{ font-size:1.4em; }
  .block-text-3{ flex-direction:column; }
  .block-text-3__img{ width:100%; max-width:40em; }
  .block-name-txt{ font-size:2.1em; }

  .block-gallery{ gap:1.5em; }
  .block-gallery__item{ height:24vw; width: calc(50% - .75em); border-radius:1.4em; }

  .block-vr-iframe iframe{ width:100%; height:70vh; }

  .block-quote{ border-radius:2.52em; }
  .block-quote p{ font-size:1.5em; }
  .block-image{ border-radius:2.4em; }

  .block-table td{ font-size:1.4em; }
  .block-table > tbody > tr > td:last-child{ padding:1em 1em; }
  .block-table > tbody > tr > td:first-child{ padding:1em .3em; }
  .block-table--01 > tbody > tr > td:first-child{ width:5em; }
  .block-table--profile{ margin-bottom:4.5em; }
  .block-table--history{ border-spacing:1.5em 0; }
  .block-table--history td:first-child{ width:4em; }
  .block-table-sub td{ font-size:1em; }
  .block-table-sub td:not(:last-child){ white-space:unset; padding-right:.6em; }
  .block-table--entry{ width:100%; }

  .block-media{ margin-top:3em; }
  .block-media-row{ flex-direction:column; width:100% }
  .block-media-desc{ width:100%; padding:2em 1.5em 0; }

  .block-works__item{ width:100%; gap:1em; padding-right:1.5em; border-radius:1.8em; }
  .block-works__desc{ padding-left:0; }
  .block-works__thumb{ width:9em; height:100%; min-height:6.5em; }
  .block-works__btn svg{ width:3em; height:3em; }
  .block-works__ttl{ font-size:1.6em; }
  .block-works__ttl--sub{ font-size:1em; line-height:1.4; }

  .block-schedule--works{ margin-top:6em; }

  .block-schedule{ padding: 5em 1.5em 2em; width:calc(100% - 3em); border-radius:3em; }
  .block-schedule__lists{ max-width: 30em; margin: 2.3em; auto 0; border-radius:1em; flex-direction:column; }
  .block-schedule__item:not(:nth-child(-n+1)){ border-left:0; border-top:1px solid var(--blue-color); }
  .block-schedule__btn{ padding:.5em; font-size:1.6em; }
  .block-schedule__btn.fz--15{ font-size:1.5em; }
  .block-schedule__item{ height:unset; }
  .block-schedule__card{ padding:3.8em 1.5em; border-radius:3em; }
  .block-schedule__time{ font-size:1.8em; }
  .block-schedule__date{ width:8.5em; }
  .block-schedule__date::before{ right:1.1em; width:1.5em; height:1.5em; }
  .block-schedule__row:not(:last-child) .block-schedule__date::after{ top:25px; }
  .block-schedule__title{ font-size:1.6em; }
}

.block-popup[hidden] {display: none;}
.block-popup {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.7);
  justify-content: center;
  align-items: center;
  display: flex;
  z-index: 9;
}
.block-popup__card {width: 98em; background: #E7EEF5; border-radius: 4.2em; overflow: hidden; }
.block-popup__card--2{ width: auto; background-color: transparent; border-radius: 0; }
.block-popup__close-btn{ display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: center; position: absolute; top: 2.5em; right: 3em; font-size: 1em; background: none; border: 0; border-radius: 0; outline: none; cursor: pointer; gap: 1em; }
.block-popup__close-btn span{ font-size: 1.1em; font-weight: 400; font-family: var(--ff-red-hat); color: #fff; }
.block-popup__card-btn{ position: absolute; right: 3.4em; top: 3.4em; font-size: 1em; padding: 0; cursor: pointer; border-radius: 0; background-color: transparent; border: 0; outline: none; }
.block-popup__card-head{ position: relative; padding: 3.4em 3.4em 2.4em; min-height: 10.6em; }
.block-popup__card-ttl{ font-size: 2em; font-weight: 700; line-height: calc(24/20); color: var(--blue-color); }
.block-popup__card-ttl--sub{ display: block; font-size: 1.2em; font-weight: 400; line-height: calc(24/12); color: var(--blue-color);  }
.block-popup__card-body{ display: flex; flex-wrap: wrap;  }
.block-popup__card-thumb{ width: calc(484/980 * 100%); height: 46.5em; border-radius: 0 4.2em 0 0; overflow: hidden; }
.block-popup__card-desc{ max-height: 33.2142em; padding: 0 3.5714em; overflow-y: auto; flex: 1; font-size: 1.4em; line-height: calc(26/14); font-weight: 400; }
.block-popup__card-desc p{ margin-bottom: 2em; }

@media only screen and (max-width: 768px) {
  .block-popup__card{ position: relative; width:calc(100% - 3em); max-width:50em; border-radius:2em; }
  .block-popup__card-body{ flex-direction:column; padding-bottom:2em; }
  .block-popup__card--2 .block-popup__card-body{ padding-bottom:0; }
  .block-popup__card-thumb{ position: absolute; left: 0; top:0; width:10em; height:10em; border-radius:1em; }
  .block-popup__card-head{ padding:3em 5em 3em 11.5em; }
  .block-popup__card-btn{ right:1.5em; }
  .block-popup__card-btn svg{ width:3em; height:3em; }
  .block-popup__card-desc{ padding:0 1.5em; max-height:30em; }
  .block-popup__close-btn{ right:1.5em; top:1.5em; }

}

/*
people
------------------------------*/
.people-txt-1{ margin-bottom: 1.5833em; font-size: 2.4em; font-weight: 700; line-height: calc(48/24); text-align: center; }

/* interview
------------------------------*/
.interview-headline__ttl{ font-weight: 900; font-size: 4.6em; letter-spacing: 0.04em; line-height: calc(60/46); color:var(--main-color); }
.interview-headline__pht{ position: absolute; width: 32em; right: 29.5em; top: 3.5em; }
.interview-headline__inner{ position: relative; }
.interview-headline__desc{ padding-top: 12em; min-height: 50em; }
.interview-headline__position{ gap: 1em; margin-top: 3.5em; padding: 1em 1.5em; display: inline-flex; justify-content: center; align-items: center; color:#fff; background-color: #07325D; }
.interview-headline__position b{ font-size: 2.3em; font-weight: 700; line-height: calc(28/23); }
.interview-headline__position small{ font-size: 0.9em; font-weight: 700; line-height: calc(28/9); }
.interview-headline__date{ margin: .7777em 0 0 .8333em; display: block; font-size: 1.8em; font-weight: 900; line-height: calc(28/18); letter-spacing: 0.02em; color:#07325D; }
.interview-slider{ padding-bottom: 4.2em; }
.interview-slider .splide__slide { width: calc(380/1440 * 100%); position: relative; border-radius: 3em; overflow: hidden; }
.interview-slider .splide__pagination{ bottom: 3em; }
.interview-slider .splide__pagination__page{ margin: 0 5px; width: 13px; height: 13px; border:1px solid rgba(255,255,255,.53); background-color: rgba(255,255,255,.2); }
.interview-slider .splide__pagination__page.is-active{ transform: scale(1); background-color: var(--sky-blue-color); border-color: var(--sky-blue-color); }
.interview-posts{ margin-top: 9em; padding: 5.5em 0 0; background-color: var(--blue-color); }
.interview-block{ margin-bottom: 6.5em; }
.interview-columns{ display: flex; flex-wrap: wrap; align-items: center; gap: 4em; }
.interview-columns--reverse{ flex-direction: row-reverse; }
.interview-columns__img{ width: 51em; height: 40em; }
.interview-columns__img .block-image{ margin: 0; height: 100%; }
.interview-columns__desc{ flex: 1; }

@media only screen and (max-width: 768px) {
  .interview-block{ margin-bottom: 4.55em; }
  .interview-posts{ padding:5.5em 1.5em 0; }
  .interview-headline__ttl{ font-size:2.8em; }
  .interview-headline__desc{ min-height:unset; padding-top:0; padding-bottom:10em; }
  .interview-headline__pht{ width:9.8em; top:unset; right: 0; bottom:-4.7em; }
  .interview-headline__position b{ font-size:1.6em; }
  .interview-headline__date{ font-size:1.4em; }
}

/*
business
-------------*/
.business-text-1{ margin-top: 2em; font-size: 1.6em; font-weight: 400; color:#000; line-height: calc(24/16); text-align: center; }
.business-card{ margin-top: 7.5em; position: relative; }
.business-card::after{ content: ''; position: absolute; right: 0; top: 0; width: calc(100% - 4.3em); height: 100%; background-color: #E7EEF5; border-radius: 8em 0 0 8em; }
.business-card__body{ padding: 12em 0 11.5em; position: relative; width: calc(110em); margin: 0 auto; z-index: 1; }
.business-card__lists{ margin-top: 3.8em; width: 100%; display: flex; flex-wrap: wrap; }
.business-card__item{ padding: 6em 4em 0; flex: 1; text-align: center; }
.business-card__item:not(:nth-child(-n+1)){ border-left:1px solid #C3D7EB; }
.business-card__ttl{ margin-top: 1.25em; font-size: 2.4em; font-weight: 900; line-height: calc(28/14); }
.business-card__txt{ margin-top: 0.875em; font-family: var(--ff-robot); }
.business-card__icon{ display: block; min-height: 16.3em; margin: 0 auto; }
.business-card__icon.icon--experience svg{ width: 16.9em; height: 15.6em; }
.business-card__icon.icon--knowledge svg{ width: 15.1em; height: 15.1em; }
.business-card__icon.icon--future svg{ width: 14em; height: 16.3em; }
.business-support{ padding-top: 10em; }

@media only screen and (max-width: 768px) {
  .business-support{ padding-top:7em; }
  .business-text-1{ font-size:1.4em; }
  .business-card::after{ width:calc(100% - 1.5em); border-radius:5.6em 0 0 5.6em; }
  .business-card__body{ padding:8.4em 0 8.05em; width:calc(100% - 3em); }
  .business-card__lists{ flex-direction:column; }
  .business-card__icon{ min-height:unset; }
  .business-card__item{ padding:4.2em 2.8em 0; }
  .business-card__ttl{ font-size:2em; }
  .business-card__item:not(:nth-child(-n+1)){ border-left: none; }
}

/*
entry
----------------------*/
.entry-tabs__head{ display: flex; flex-wrap: wrap; justify-content: center; }
.entry-tabs__head:after{ content: ''; display: block; height: 2px; width: 100%; background: linear-gradient(90deg, rgba(0, 78, 162, 0) 0%, #004EA2 15.38%, #004EA2 85.1%, rgba(0, 78, 162, 0) 100%); }
.entry-tabs__item{ width: calc(526/1440 * 100%); border-radius: 1.6em 1.6em 0 0; overflow: hidden; }
.entry-tabs__btn{ display: block; width: 100%; height: 2.34375em; font-size: 3.2em; font-weight: 700; font-family: var(--ff-robot); line-height: calc(48/32); border: 0; border-radius: 0; outline: none; cursor: pointer; }
.entry-tabs__btn:not(.is-active){ color:var(--blue-color); background-color: #DBDBDB; }
.entry-tabs__btn.is-active{ color:#fff; background-color: var(--blue-color); }
.entry-cards{ padding-top: 5.8em; }
.entry-card:not(.is-active){ display: none; }
.entry-block{ display: flex; flex-wrap: wrap; flex-direction: column; align-items: flex-end; }
.entry-block .title-6{ width: 100%; }
.entry-block+.entry-block{ margin-top: 5em; }
.entry-box{ padding: 3.2em 1em; width: 80em; margin: 2.7em auto 0; border-radius: .4em; background: #F5F7FA; border: 1px solid #DBE0E8; }

.entry-process{ padding: 4em 0; background-color: #E7EEF5; }
.entry-process--1{ margin-top: 7em; }
.entry-process--2{ margin-top: 4.5em; }
.entry-process__inner{ max-width: 98em; margin: 0 auto; }
.entry-process__box{ width: 8em; height: 8em; position: relative; display: flex; flex-wrap: wrap; flex-direction: column; justify-content: center; align-items: center; margin: 0 auto; color:#fff; background-color: #0066B3; border-radius: 1.2em; overflow: hidden; z-index: 1; }
.entry-process__box-txt{ font-size: 1.4em; font-weight: 700; opacity: 0.8; line-height: calc(17/14); }
.entry-process__box-num{ font-size: 2.88em; font-family: var(--ff-inter); font-weight: 900; line-height: 1; }
.entry-process__steps{ position: relative; display: flex; flex-wrap: wrap; /*padding-left: 4em; justify-content: space-between;*/ }
/*.entry-process__steps::before{content: ''; width: 90em; height: 0.4em; position: absolute; right:1em; top: 4em; background-color: #0066B3; }*/
.entry-process__steps-wrap{ width:calc(100% + 3em); margin-top: 3.8em; margin-left:-1.5em; }
.entry-process__step-txt{  margin-top: 1.7333em; display: block; font-size: 1.5em; font-weight: 500; line-height: calc(20/15); text-align: center; color: #212121; }
.entry-process__step{ flex:1; position:relative; }
.entry-process__step:not(:nth-child(-n+1))::before{content: ''; width: 100%; height: 0.4em; position: absolute; left:-50%; top: 4em; background-color: #0066B3; }
.entry-wrap{ width: 99em; margin: 2em auto 0; }
.entry-news { position: relative; margin-top: 8em; }
.entry-news-lists__item { display: grid; grid-template-columns: 14em calc(100% - 14em); padding: 2em 0; border-bottom: 1px solid #C9DCEF; }
.entry-news-lists__time { font-size: 1.6rem; }
.entry-news-lists__info { position: relative; }
.entry-news-lists__title { font-size: 1.8rem; font-weight: 700; }
.entry-news-lists__body { margin-top: 1em; font-size: 1.6rem; line-height: 1.5; }
.entry-faq{ position: relative; width: 114em; margin: 10em auto 0; padding: 5em 7.5em 6.5em; }
.entry-faq:before{ content: ''; position: absolute; left:0; top:0; height: 100%; width: 100vw; background-color: #E7EEF5; border-radius: 9em 0 0 9em; }
.entry-faq__inner{ position: relative; z-index: 1; display: flex; flex-wrap: wrap; flex-direction: column; align-items: flex-end; }
.entry-faq__group{ margin-top: 3em; width: 100%; max-width: 91em; }
.entry-faq__desc{ padding: 2.5em 3em; background-color: #fff; border-radius: 2.2em; overflow: hidden; }
.entry-faq__desc:not(:nth-child(-n+1)){ margin-top: 2.3em; }
.entry-faq__desc dt{ position: relative; padding-left: 2.5em; font-size: 1.6em; font-weight: 700; line-height: calc(29/16); color: var(--blue-color); }
.entry-faq__desc dd{ position: relative; padding-left: 2.8571em; margin-top: 1.07142em; padding-top: 1.07142em; font-size: 1.4em; font-weight: 350; line-height: calc(27/14); opacity: 0.9; border-top:2px solid #C9DCEF; }
.entry-faq__desc dt:before,
.entry-faq__desc dd:before{ position: absolute; left: 0; display: inline-flex; align-items: center; justify-content: center; font-weight: 900; color: #fff; }
.entry-faq__desc dt:before{ content: 'Q'; top: 0; background-color: var(--blue-color); width: 2.0588em; height: 2.0588em; font-size: .85em; border-radius: .4411em; }
.entry-faq__desc dd:before{ content: 'A'; top: 1em; background-color: var(--sky-blue-color); width: 2.0588em; height: 2.0588em; font-size: .97142em; border-radius: .4411em; }
.entry-faq__desc dd a{color: #004EA2;text-decoration: underline;}
.entry-faq__desc dd a:hover{ text-decoration: none;  }

@media only screen and (max-width: 768px) {
  .entry-text{ padding:0 1.5em; }
  .entry-tabs__item{ width:16.8em; border-radius:1em 1em 0 0; }
  .entry-tabs__btn{ font-size:2.24em; }
  .entry-process__inner{ padding:0 1.5em; }
  .entry-process__steps-wrap{ padding-bottom: 3em; width:calc(100% + 3em); margin-left: -1.5em; overflow-y:auto; }
  .entry-process__steps{ width:80em; }
  .entry-wrap{ width:100%; padding:0 1.5em; }
  .entry-news { margin-top: 6em; }
  .entry-news-lists__item { display: block; padding: 1.4em 0; }
  .entry-news-lists__time { font-size: 1.4rem; }
  .entry-news-lists__info { margin-top: 1em; }
  .entry-news-lists__title { font-size: 1.6rem; }
  .entry-news-lists__body { margin-top: 0.4em; font-size: 1.4rem; }

  .entry-faq{ padding: 5em 1.5em; width:calc(100% - 3em); }
  .entry-faq:before{ border-radius:6.3em 0 0 6.3em; }
  .entry-box{ width:calc(100% - 3em); }
}


.blog-breadcrumbs{ padding-top: 2em; }
.blog-lists{ display: flex; flex-wrap: wrap; gap:5.5em 2.4em; margin-top: .9em; }
.blog-lists__item{width: calc((100% / 3) - 1.6em);}
.blog-lists__link{ display: block; color: #1F2933; }
.blog-lists__thumb{ width: 100%; height: 20.9em; overflow: hidden; border-radius: 2.6em; }
.blog-lists__desc{ flex: 1; }
.blog-lists__ttl{ margin-top: 1.5625em; font-size: 1.6em; font-weight: 700; line-height: calc(28/16); }
.blog-lists__ttl--2{ margin-top: 0; }
.blog-lists__date,
.blog-lists__txt{ margin-top: .416666em; display: block; font-size: 1.2em; font-weight: 400; line-height: calc(24/12); color: #5F6B7A; }
.blog-lists__txt{
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.blog-lists-2{ margin-top: .9em; }
.blog-lists__item-2{ width: 100%; }
.blog-lists__item-2+.blog-lists__item-2{ margin-top: 4em; }
.blog-lists__link-2{ display: flex; flex-wrap: wrap; gap:4em; color: #1F2933; }
.blog-lists__thumb-2{ width: 33.4em; height: 20.9em; overflow: hidden; border-radius: 2.6em; }

.blog-detail__content{ font-size: 1.5em; font-weight: 400; line-height: calc(35/15); }
.blog-detail__content p,
.blog-detail__content img{ margin-bottom: 2.25em; }
.blog-detail__content a{ color:var(--blue-color); text-decoration: underline; }
.blog-detail__content a:hover{ text-decoration: none; }
.blog-detail__content h3{ margin-bottom: .6923em; position: relative; font-size: 1.7333em; font-weight: 900; letter-spacing: 0.01em; line-height: calc(48/26); }
.blog-detail__content h3:before{ content: ''; position: absolute; left: -.923em; top: .15384em; height: 1.57692em; width: .34615em; background-color: var(--sky-blue-color); border-radius: .17307em; }
.blog-detail__content h4{ padding-left: 1em; position: relative; margin-bottom: .5555em; font-size: 1.125em; font-weight: 900; line-height: calc(48/18); letter-spacing: 0.01em; }
.blog-detail__content h4:before{ content: ''; position: absolute; left: 0; top: 18px; width: 9px; height: 9px; border-radius: 50%; background-color: var(--sky-blue-color); }
.blog-detail__content ul{ margin-bottom: 2.25em; padding-left: 1.5em; list-style: disc; }

.blog-detail__content ol{ margin-bottom: 2.25em; padding-left: 1.5em; list-style: decimal; }
.blog-detail__content table{ margin-bottom: 2.25em; border-collapse: collapse; }
.blog-detail__content td,
.blog-detail__content th{  padding: .5em 1em; border:1px solid var(--main-color); }
.blog-detail__data{ margin-bottom: 2.7em; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.blog-detail__data-txt{ font-size: 2em; font-weight: 700; font-family: var(--ff-red-hat); line-height: calc(36/20); letter-spacing: 0.02em; color: var(--blue-color); }
.blog-detail__cat{ font-size: 1.6em; font-weight: 500; line-height: calc(48/16); letter-spacing: 0.01em; color: rgba(31, 41, 51, 0.5); }

@media only screen and (max-width: 768px) {
  .blog-lists{ gap:3.5em 1.5em; }
  .blog-lists__item{ width:calc(50% - .75em); }
  .blog-lists__thumb{ height:29.333vw; border-radius:1em; }
  .blog-lists__ttl{ margin-top:.8em; }

  .blog-lists-2{ display:flex; flex-wrap:wrap; gap:3.5em 1.5em; }
  .blog-lists__item-2{ width: calc(50% - .75em); }
  .blog-lists__link-2{ flex-direction:column; gap:0; }
  .blog-lists__thumb-2{ width:100%; height:29.333vw; border-radius:1em; }
  .blog-lists__item-2+.blog-lists__item-2{ margin-top:0; }
}

/*
data
---------------------------------------*/
.data-block+.data-block{ padding-top: 5em; }
.data-bg{ background-color: #E7EEF5; }
.data-row{
  margin-top: 2.2em;
  display:flex;
  gap:1.7em;
  align-items:stretch;
}

.data-card{
  background:#fff;
  border-radius:3.4em;
  padding:4em 3.6em;
  position: relative;
}
.data-card--2{ padding: 0; width: 100%; margin-top: 2em; display: flex; flex-wrap: wrap; }
.data-card-title{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-weight:900;
  color: var(--blue-color);
  font-size:3.1em;
  line-height: 1;
  gap: .32258em;
}

.data-card-title small{ position: relative; top: .2em; font-size:.32258em; font-weight: 500; }
.data-card__age-group{ margin-top: 4em; display: flex; flex-wrap: wrap; gap:2em; }
.data-card__age-col{padding: 3.5em; }
.data-card__gender-col{padding: 3.5em 4.8em;flex: 1;border-left: 3px solid #E7EEF5;}
.data-age-col-1{ display: inline-flex; flex-wrap: wrap; flex-direction: column; justify-content: space-between; min-height: 24.3em; }
.data__mele-female-row{ margin-top: 4em; padding-left: 1.8em; display: flex; flex-wrap: wrap; gap:3em; }
.data__mele-female-txt{ margin-top: .3em; display: flex; flex-wrap: wrap; font-size: 6em; font-weight: 900; line-height: 1; color: var(--blue-color); }
.data__mele-female-txt span{ position: relative; flex: 1; text-align: center; }
.data__mele-female-txt span+span:before{ content: ':'; position: absolute; left: -.15em; top: -.1em; }
.data__mele-female-txt small{ font-size: .6em; }
.data__mele-female-box{ margin-top: 3.2em; display: flex; flex-wrap: wrap; border-radius: 1.6em; overflow: hidden; }
.data__mele-female-box span{ flex: 1; height: 9.5em; }
.data-kpi-col{
  width:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
}
.data-kpi-block{
  display:grid;
  grid-template-columns: 8em 1fr;
  align-items:flex-end;
}
.data-kpi-block.kpi-block-1{ margin-top: 1.2em; }
.data-kpi-sub{
  display: inline-flex;
  justify-content: center;
  font-size: 2em;
  font-weight: 900;
  line-height: calc(36/20);
  color: var(--sky-blue-color);
}
.data-kpi-sub small{ font-size: .5em; font-weight: 500; line-height: calc(36/10); }
.data-kpi-sub-2{ font-size: 1.6em; font-weight: 900; line-height: calc(36/16); color: var(--sky-blue-color); }
.data-kpi-icon{
  padding-bottom: 2.3em;
  display:grid;
}
.data-kpi-icon svg{ }

.data-kpi-value{
  font-size: 10.6em;
  font-weight: 900;
  color: var(--blue-color);
  line-height: 1;
}

.data-kpi-value small{
  font-size: .60377em;
  line-height: 1;
  position: relative;
  top: -.09375em;
}



.data-divider{
  height:2px;
  background: #C0D5EA;
  margin: 2em 0;
}

.data-card--left{ width: 37em; }
/* RIGHT CARD */
.data-card--right{
  flex:1;
  align-items:flex-start;
}
.data-right-inner{
  width:100%;
  display:flex;
  gap:4.8em;
  align-items:center;
}
.data-right-inner--2{ padding: 3.4em 2.9em 0 2.4em; }
.data-donut-wrap{
  width: 28em;
  height: 28em;
  display:flex;
  align-items:center;
  justify-content:center;
}
.data-legend{
  flex:1;
  padding-right: 6px;
}
.data-legend-item{ padding-left: 1.5em; }
.data-label-row{ display: flex; flex-wrap: wrap; align-items: center; gap:1em; }
.data-label-row.justify-content-center{ justify-content: center; }
.data-dot{
  width:2.2em;
  height:2.2em;
  border-radius:999px;
}
.data-label{
  font-size: 2.4em;
  line-height: 1;
  font-weight: 900;
}
.data-label.label--26{ font-size: 2.6em; }
.data-legend-value{ margin-top: .078125em; font-size: 6.4em; font-weight: 900; line-height: 1; color: var(--blue-color); }
.data-legend-value small{ font-size: .5625em; line-height: 1; }
.data-legend-value--2 { font-size: 4.8em; letter-spacing: -0.02em;}
.data-legend-value--2 small{  font-size: .625em; }
.data-age-donut{ width: 24.3em; height: 24.3em; }
.data-card--work-flex{ flex: 1; }
.data-card--work-1{ width: 55.1em; }
.data-card--work-2{ width: 31.9em; }
.data-work-icon{ position: absolute; right: 3em; top: 3em; }
.data-work-txt{ margin-top: 3em; font-weight: 900; line-height: 1; color: var(--blue-color);  }
.data-work-txt-1{ font-size: 9.6em; }
.data-work-txt-2{ font-size: 4.6em; }
.data-work-txt-3{ font-size: 12em; }
.data-work-txt-4{ font-size: 6.4em; }
.data-work-txt-5{ font-size: 12.8em; }
.data-work-row{ display: flex; flex-wrap: wrap; gap:1em; }
.data-work-col{ display: inline-flex; gap:2.6em; align-items: flex-start; }
.data-work-col .data-label-row{ margin-top: 4em; }

@media only screen and (max-width: 768px) {
  .data-row{ flex-direction:column; }
  .data-card{ padding:3em 2em; }
  .data-card--left{ width:100%; }
  .data-card-title{ font-size:2.17em; }
  .data-card-title small{ font-size:.55em; }
  .data-kpi-block{ grid-template-columns: 6em 1fr; }
  .data-kpi-value{ font-size: 7.42em;}
  .data-kpi-sub{ font-size:1.4em; }
  .data-right-inner{ gap:2em; }
  .data-right-inner--2{ padding:0; }
  .data-donut-wrap{ width:13em; height:13em; }
  .data-label{ font-size:1.68em; }
  .data-dot{ width:1.5em; height:1.5em; }
  .data-legend-value{ font-size:4.48em; }
  .data-divider{ margin:1.4em 0; }
  .data-age-donut{ width:15em; height:15em; }
  .data-legend-value--2{ font-size:2.5em; }
  .data-age-col-1{ min-height:15em; }
  .data-card__age-col{ padding:0; }
  .data-card__age-group{ gap:1.5em; }
  .data-card__gender-col{ margin-top: 3em; padding: 3em 0 0; border-left:0; border-top: 3px solid #E7EEF5; }
  .data-card--work-2{ width:100%; }
  .data-work-txt-1{ font-size:6.5em; }
  .data-work-txt-2{ font-size:3.2em; }
  .data-card--work-1{ width:100%; }
  .data-work-icon{ right: 2.1em; top:2.1em; }
  .data-work-icon svg{ width:5.5em; height:5.5em; }
  .data-work-txt-3,
  .data-work-txt-5{ font-size:8.4em; }
  .data-work-txt-4{ font-size:4.48em; }
  .data-work-col{ flex-direction:column; gap:0; }
  .data-work-row{ gap:3em; justify-content:center; }
  .data-work-txt{ margin-top:1.5em; }
}