@charset "UTF-8";
.js-animation {
  opacity: 0;
  transition: ease-out 0.9s all;
  transform: translateY(60px);
}
.js-animation.is-animated {
  opacity: 1;
  transform: translateY(0px);
}
@media print {
  .js-animation {
    opacity: 1;
    transform: translateY(0px);
  }
}

.group_header {
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px), print {
  .group_header {
    background-image: url(/img/aboutus/notia/kv_bg_pc.jpg);
  }
}
@media screen and (max-width: 768px) {
  .group_header {
    background-image: url(/img/aboutus/notia/kv_bg_sp.jpg);
  }
}
.group_header_inner .read {
  font-weight: 400;
}
@media (min-width: 769px), print {
  .group_header_inner .read {
    line-height: 2em;
    font-size: min(14.4px, 1.286vw);
    padding: 3rem 2rem 0;
  }
}
@media screen and (max-width: 768px) {
  .group_header_inner .read {
    line-height: 1.75em;
    font-size: 3.2rem;
    padding: 3rem 5rem 0;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
.group_header .breadcrumb01-list {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
.group_h2 {
  font-weight: 700;
  text-align: center;
}
@media (min-width: 769px), print {
  .group_h2 {
    line-height: 1.45em;
    font-size: min(32px, 2.858vw);
  }
  .group_h2 > h2 {
    line-height: inherit;
    font: inherit;
  }
  .group_h2 > h2:first-of-type {
    margin-top: -0.225em;
  }
  .group_h2 > h2:last-of-type {
    margin-bottom: -0.225em;
  }
}
@media screen and (max-width: 768px) {
  .group_h2 {
    line-height: 1.75em;
    font-size: 4.8rem;
  }
  .group_h2 > h2 {
    line-height: inherit;
    font: inherit;
  }
  .group_h2 > h2:first-of-type {
    margin-top: -0.375em;
  }
  .group_h2 > h2:last-of-type {
    margin-bottom: -0.375em;
  }
}
@media (min-width: 769px), print {
  .group_h2 + .group_image {
    padding-top: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_h2 + .group_image {
    padding-top: 8rem;
  }
}
.group_h2 + .group_row {
  margin-top: 5rem;
}
.group_h3 {
  font-weight: 700;
  text-align: center;
}
@media (min-width: 769px), print {
  .group_h3 {
    letter-spacing: 0.12em;
    line-height: 1.5em;
    font-size: min(24px, 2.143vw);
  }
  .group_h3 > h3 {
    line-height: inherit;
    font: inherit;
  }
  .group_h3 > h3:first-of-type {
    margin-top: -0.25em;
  }
  .group_h3 > h3:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .group_h3 {
    line-height: 1.429em;
    font-size: 4.2rem;
  }
  .group_h3 > h3 {
    line-height: inherit;
    font: inherit;
  }
  .group_h3 > h3:first-of-type {
    margin-top: -0.214em;
  }
  .group_h3 > h3:last-of-type {
    margin-bottom: -0.214em;
  }
}
@media (min-width: 769px), print {
  .group_h3 + .txt01-p {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_h3 + .txt01-p {
    padding-top: 5rem;
  }
}
@media (min-width: 769px), print {
  .group_h3 + .group_cards {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_h3 + .group_cards {
    padding-top: 6rem;
  }
}
@media (min-width: 769px), print {
  .group_h3 + .group_buttons {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_h3 + .group_buttons {
    padding-top: 6rem;
  }
}
.group_h3.left {
  text-align: left;
}
@media (min-width: 769px), print {
  .group_p {
    line-height: 1.723em;
    font-size: min(14.4px, 1.286vw);
  }
  .group_p > p {
    line-height: inherit;
    font: inherit;
  }
  .group_p > p:first-of-type {
    margin-top: -0.361em;
  }
  .group_p > p:last-of-type {
    margin-bottom: -0.361em;
  }
}
@media screen and (max-width: 768px) {
  .group_p {
    line-height: 1.648em;
    font-size: 3.4rem;
    text-align: justify;
  }
  .group_p > p {
    line-height: inherit;
    font: inherit;
  }
  .group_p > p:first-of-type {
    margin-top: -0.323em;
  }
  .group_p > p:last-of-type {
    margin-bottom: -0.323em;
  }
}
.group_p .bold {
  font-weight: 700;
}
.group_p.left {
  text-align: left;
}
.group_p.kome > p {
  padding-left: 1em;
  text-indent: -1em;
}
.group_p.kome > p::first-letter {
  margin-right: 0.2em;
  color: #3dae35;
}
.group_p + .group_detail {
  margin-top: 8rem;
}
.group_lead {
  margin: 0 auto;
  padding: 6.4rem 0 0;
  text-align: center;
}
@media (min-width: 769px), print {
  .group_lead {
    max-width: 1200px;
  }
}
@media (min-width: 769px), print {
  .group_lead .group_h2 + .group_p {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_lead .group_h2 + .group_p {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_lead .group_p {
    max-width: 64rem;
    margin: 0 auto;
  }
}
.group_lead + .group_area {
  margin-top: 6.4rem;
}
.group_lead + .group_area_gray {
  margin-top: 8rem;
}
@media (min-width: 769px), print {
  .group_image {
    margin: auto;
    width: 80%;
  }
}
.group_image_ttl {
  margin: auto;
}
@media (min-width: 769px), print {
  .group_image_ttl {
    padding-top: 5rem;
    width: 41.6rem;
  }
}
@media screen and (max-width: 768px) {
  .group_image_ttl {
    padding-top: 5rem;
    width: 41.6rem;
  }
}
@media (min-width: 769px), print {
  .group_image + .group_cards {
    padding-top: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_image + .group_cards {
    padding-top: 8rem;
  }
}
.group_area {
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px), print {
  .group_area {
    background-image: url(/img/aboutus/notia/bg01_pc.jpg);
    padding: 6.4rem 0;
  }
}
@media screen and (max-width: 768px) {
  .group_area {
    background-image: url(/img/aboutus/notia/bg01_sp.jpg);
    padding: 10rem 0 8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_area .txt01-p {
    max-width: 64rem;
    margin: 0 auto;
    text-align: justify;
  }
}
.group_area + .group_link {
  padding-top: 8rem;
}
.group_area_gray {
  background-color: #f1f1f1;
}
@media (min-width: 769px), print {
  .group_area_gray {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_area_gray {
    padding-top: 8rem;
  }
}
.group_area_inner {
  margin: auto;
}
@media (min-width: 769px), print {
  .group_area_inner {
    width: 120rem;
  }
}
@media screen and (max-width: 768px) {
  .group_area_inner {
    width: 64rem;
  }
}
.group_area .life {
  display: flex;
}
@media (min-width: 769px), print {
  .group_area .life {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .group_area .life {
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .group_area .life > li {
    padding-top: 4.5rem;
  }
}
@media (min-width: 769px), print {
  .group_area .life > li:nth-of-type(1) {
    margin-right: 3rem;
    width: 77.28rem;
    height: 50.241rem;
  }
  .group_area .life > li:nth-of-type(1) .group_h3 {
    line-height: 1.5em;
    font-size: min(24px, 2.143vw);
  }
  .group_area .life > li:nth-of-type(1) .group_p {
    line-height: 1.5em;
    font-size: min(14.4px, 1.286vw);
  }
}
@media (min-width: 769px), print {
  .group_area .life > li:nth-of-type(2) {
    width: 39.68rem;
  }
}
@media (min-width: 769px), print {
  .group_area .life > li:nth-of-type(n+3) {
    margin-top: 2rem;
    margin-right: 2rem;
    width: 38.6rem;
  }
}
@media (min-width: 769px), print {
  .group_area .life > li:last-child {
    margin-right: 0rem;
  }
}
.group_area .life > li > figure > figcaption {
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 769px), print {
  .group_area .life > li > figure > figcaption {
    line-height: 1.5em;
    font-size: min(14.4px, 1.286vw);
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_area .life > li > figure > figcaption {
    font-size: 3.2rem;
    padding-top: 2rem;
  }
}
.group_area_box {
  background: rgba(255, 255, 255, 0.8);
}
@media (min-width: 769px), print {
  .group_area_box {
    width: 67.2rem;
    padding: 18rem 5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_area_box {
    width: 64rem;
    padding: 8rem 4rem 5rem !important;
  }
}
@media (min-width: 769px), print {
  .group_area_box .group_p {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_area_box .group_p {
    padding-top: 4rem;
  }
}
@media (min-width: 769px), print {
  .group_chart {
    border: solid 1px #000;
    margin: auto;
    margin-top: 6.4rem;
    padding: 6.4rem;
    width: 96rem;
  }
}
@media screen and (max-width: 1200px) {
  .group_chart {
    padding: 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  .group_chart {
    overflow: scroll;
    width: 64rem;
    height: 94.6rem;
    margin: auto;
    margin-top: 8rem;
  }
}
@media (min-width: 769px), print {
  .group_chart figure {
    padding-top: 4.8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_chart figure {
    width: 120rem;
  }
}
@media (min-width: 769px), print {
  .group_chart .group_p {
    padding-top: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_chart .group_p {
    padding-top: 4rem;
  }
}
@media (min-width: 769px), print {
  .group_chart + .group_h3 {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_chart + .group_h3 {
    padding-top: 8rem;
  }
}
@media (min-width: 769px), print {
  .group_training {
    padding-top: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_training {
    padding-top: 8rem;
    margin: auto;
    width: 64rem;
  }
}
@media (min-width: 769px), print {
  .group_training > .group_h3 {
    line-height: 1;
    position: relative;
  }
  .group_training > .group_h3::after {
    content: "";
    width: 51.3rem;
    height: 0.085rem;
    background-color: #000;
    position: absolute;
    top: 1.5rem;
    right: 0;
  }
}
@media (min-width: 769px), print {
  .group_training > .group_p {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_training > .group_p {
    padding-top: 5rem;
  }
}
.group_training_disc {
  display: grid;
}
@media (min-width: 769px), print {
  .group_training_disc {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 8rem;
    grid-row-gap: 5rem;
    padding-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_training_disc {
    grid-template-columns: 1fr;
    grid-row-gap: 5rem;
    padding-top: 5rem;
  }
}
@media (min-width: 769px), print {
  .group_training figcaption {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .group_training figcaption {
    padding-top: 2rem;
  }
}
@media (min-width: 769px), print {
  .group_desc_row > dt {
    line-height: 1.334em;
    font-size: min(19.2px, 1.715vw);
  }
  .group_desc_row > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .group_desc_row > dt > p:first-of-type {
    margin-top: -0.166em;
  }
  .group_desc_row > dt > p:last-of-type {
    margin-bottom: -0.166em;
  }
}
@media screen and (max-width: 768px) {
  .group_desc_row > dt {
    line-height: 1.648em;
    font-size: 3.4rem;
  }
  .group_desc_row > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .group_desc_row > dt > p:first-of-type {
    margin-top: -0.323em;
  }
  .group_desc_row > dt > p:last-of-type {
    margin-bottom: -0.323em;
  }
}
.group_desc_row > dt > p {
  padding-left: 1em;
  text-indent: -1em;
}
.group_desc_row > dt > p::first-letter {
  color: #3dae35;
}
@media (min-width: 769px), print {
  .group_desc_row > dt + dd {
    padding-left: 24px;
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .group_desc_row > dt + dd {
    padding-top: 4rem;
  }
}
@media (min-width: 769px), print {
  .group_desc_row + .group_desc_row {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_desc_row + .group_desc_row {
    padding-top: 8rem;
  }
}
.group_desc_num {
  counter-reset: stt_desc_num;
}
@media (min-width: 769px), print {
  .group_desc_num {
    line-height: 2em;
    font-size: min(14.4px, 1.286vw);
  }
  .group_desc_num > li {
    line-height: inherit;
    font: inherit;
  }
  .group_desc_num > li:first-of-type {
    margin-top: -0.5em;
  }
  .group_desc_num > li:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .group_desc_num {
    line-height: 1.75em;
    font-size: 3.2rem;
  }
  .group_desc_num > li {
    line-height: inherit;
    font: inherit;
  }
  .group_desc_num > li:first-of-type {
    margin-top: -0.375em;
  }
  .group_desc_num > li:last-of-type {
    margin-bottom: -0.375em;
  }
}
.group_desc_num > li {
  counter-increment: stt_desc_num;
  display: flex;
  justify-content: space-between;
}
.group_desc_num > li::before {
  content: "（" counter(stt_desc_num) "）";
  flex-shrink: 0;
}
.group_desc_num > li > p {
  width: 100%;
}
@media (min-width: 769px), print {
  .txt01-p + .group_desc_num {
    padding-top: 1em;
  }
}
@media screen and (max-width: 768px) {
  .txt01-p + .group_desc_num {
    padding-top: 1em;
  }
}
@media (min-width: 769px), print {
  .group_desc_note {
    line-height: 1.467em;
    font-size: min(12px, 1.072vw);
  }
  .group_desc_note > p {
    line-height: inherit;
    font: inherit;
  }
  .group_desc_note > p:first-of-type {
    margin-top: -0.233em;
  }
  .group_desc_note > p:last-of-type {
    margin-bottom: -0.233em;
  }
}
@media screen and (max-width: 768px) {
  .group_desc_note {
    line-height: 1.75em;
    font-size: 3.2rem;
  }
  .group_desc_note > p {
    line-height: inherit;
    font: inherit;
  }
  .group_desc_note > p:first-of-type {
    margin-top: -0.375em;
  }
  .group_desc_note > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
.group_desc_note.right {
  text-align: right;
}
@media (min-width: 769px), print {
  .group_desc + .group_desc_note {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_desc + .group_desc_note {
    padding-top: 8rem;
  }
}
.group_link {
  margin: 0 auto;
}
@media (min-width: 769px), print {
  .group_link {
    display: flex;
    align-items: center;
    max-width: 1200px;
  }
}
@media screen and (max-width: 768px) {
  .group_link {
    width: 100%;
  }
}
.group_link_image {
  overflow: hidden;
}
@media (min-width: 769px), print {
  .group_link_image {
    flex-shrink: 0;
    width: 61rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_image {
    width: 55rem;
  }
  .group_link_image.left {
    margin: 0 auto 0 0;
  }
  .group_link_image.right {
    margin: 0 0 0 auto;
  }
}
.group_link_image img {
  transition: ease-out 0.6s all;
}
.group_link_image:has(+ .group_link_box:hover) img {
  transform: scale(1.15);
}
.group_link_box {
  display: block;
  position: relative;
}
@media (min-width: 769px), print {
  .group_link_box {
    width: 100%;
    padding: 5rem 0;
  }
}
@media screen and (max-width: 768px) {
  .group_link_box {
    width: 59rem;
    margin-top: -5rem;
    padding: 8rem 3.6rem 5rem;
  }
}
.group_link_box::before {
  content: "";
  position: absolute;
  background: rgba(255, 255, 255, 0.8);
  top: 0;
  bottom: 0;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .group_link_box::before {
    background: rgba(255, 255, 255, 0.8);
    left: 0;
    right: 0;
  }
}
@media (min-width: 769px), print {
  .group_link_image.left + .group_link_box {
    padding-right: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_image.left + .group_link_box {
    margin-left: 10.5rem;
    margin-right: auto;
  }
}
.group_link_image.left + .group_link_box::before {
  right: 0;
}
@media (min-width: 769px), print {
  .group_link_image.left + .group_link_box::before {
    left: -4rem;
  }
}
@media (min-width: 769px), print {
  .group_link_image.right + .group_link_box {
    order: -5;
    padding-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_image.right + .group_link_box {
    margin-left: auto;
    margin-right: 10.5rem;
  }
}
.group_link_image.right + .group_link_box::before {
  left: 0;
}
@media (min-width: 769px), print {
  .group_link_image.right + .group_link_box::before {
    right: -4rem;
  }
}
.group_link_desc {
  position: relative;
}
.group_link_desc > dt {
  font-weight: 700;
}
@media (min-width: 769px), print {
  .group_link_desc > dt {
    line-height: 1.334em;
    font-size: min(24px, 2.143vw);
  }
  .group_link_desc > dt > h4 {
    line-height: inherit;
    font: inherit;
  }
  .group_link_desc > dt > h4:first-of-type {
    margin-top: -0.166em;
  }
  .group_link_desc > dt > h4:last-of-type {
    margin-bottom: -0.166em;
  }
}
@media screen and (max-width: 768px) {
  .group_link_desc > dt {
    letter-spacing: -0.02em;
    line-height: 1.429em;
    font-size: 4.2rem;
  }
  .group_link_desc > dt > h4 {
    line-height: inherit;
    font: inherit;
  }
  .group_link_desc > dt > h4:first-of-type {
    margin-top: -0.214em;
  }
  .group_link_desc > dt > h4:last-of-type {
    margin-bottom: -0.214em;
  }
}
@media (min-width: 769px), print {
  .group_link_desc > dt + dd {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_desc > dt + dd {
    padding-top: 5rem;
  }
}
.group_link_detail > dt {
  font-weight: 700;
}
@media (min-width: 769px), print {
  .group_link_detail > dt {
    line-height: 1.917em;
    font-size: min(19.2px, 1.715vw);
    font-size: min(2.4vw, 24px);
  }
  .group_link_detail > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .group_link_detail > dt > p:first-of-type {
    margin-top: -0.458em;
  }
  .group_link_detail > dt > p:last-of-type {
    margin-bottom: -0.458em;
  }
}
@media screen and (max-width: 768px) {
  .group_link_detail > dt {
    line-height: 1.648em;
    font-size: 3.4rem;
  }
  .group_link_detail > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .group_link_detail > dt > p:first-of-type {
    margin-top: -0.323em;
  }
  .group_link_detail > dt > p:last-of-type {
    margin-bottom: -0.323em;
  }
}
@media (min-width: 769px), print {
  .group_link_detail > dt + dd {
    padding-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_detail > dt + dd {
    padding-top: 4rem;
  }
}
@media (min-width: 769px), print {
  .group_link_detail > dd {
    line-height: 2em;
    font-size: min(14.4px, 1.286vw);
    font-size: min(1.8vw, 18px);
  }
  .group_link_detail > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .group_link_detail > dd > p:first-of-type {
    margin-top: -0.5em;
  }
  .group_link_detail > dd > p:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .group_link_detail > dd {
    line-height: 1.75em;
    font-size: 3.2rem;
  }
  .group_link_detail > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .group_link_detail > dd > p:first-of-type {
    margin-top: -0.375em;
  }
  .group_link_detail > dd > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
@media (min-width: 769px), print {
  .group_link_detail + .group_link_button {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_detail + .group_link_button {
    margin-top: 6rem;
  }
}
.group_link_button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  transition: ease 0.4s all;
  padding: 0;
  line-height: 1;
  color: #231815;
  font-weight: 500;
}
@media (min-width: 769px), print {
  .group_link_button {
    font-size: min(1.6vw, 16px);
    padding-right: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link_button {
    font-size: 2.6rem;
    padding-right: 8rem;
    margin-top: 5rem;
  }
}
.group_link_button:after {
  content: "";
  position: absolute;
  background-color: #231815;
  background-image: url(../../common/img/base/ico-arrow03_w.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transition: ease 0.4s all;
}
@media (min-width: 769px), print {
  .group_link_button:after {
    width: 1.375em;
    height: 1.375em;
    right: 0em;
  }
}
@media screen and (max-width: 768px) {
  .group_link_button:after {
    width: 1.347em;
    height: 1.347em;
    right: 0em;
  }
}
.group_link_box:hover .group_link_button::after {
  background-color: #3dae35;
}
.group_link + .group_h3 {
  padding-top: 8rem;
}
@media (min-width: 769px), print {
  .group_link + .group_link {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_link + .group_link {
    padding-top: 8rem;
  }
}
.group_buttons {
  display: flex;
  align-items: center;
}
@media (min-width: 769px), print {
  .group_buttons {
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  .group_buttons {
    flex-direction: column;
  }
}
@media (min-width: 769px), print {
  .group_buttons + .sst_h2 {
    margin-top: 7rem;
  }
}
@media screen and (max-width: 768px) {
  .group_buttons + .sst_h2 {
    margin-top: 16rem;
  }
}
.group_button {
  position: relative;
  transition: ease 0.4s all;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: #231815;
  border: solid 1px;
  background: #fff;
  font-weight: 500;
}
@media (min-width: 769px), print {
  .group_button {
    line-height: 1;
    font-size: min(12.8px, 1.143vw);
    border-radius: 0.5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_button {
    line-height: 1;
    font-size: 2.6rem;
    border-radius: 0.7rem;
  }
}
.group_button.link::after {
  content: "";
  position: absolute;
  background-color: #231815;
  background-image: url(../../common/img/base/ico-arrow03_w.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transition: ease 0.4s all;
}
@media (min-width: 769px), print {
  .group_button.link::after {
    width: 1.375em;
    height: 1.375em;
    right: 0.938em;
  }
}
@media screen and (max-width: 768px) {
  .group_button.link::after {
    width: 1.347em;
    height: 1.347em;
    right: 0.962em;
  }
}
.group_button.link[href^="#"]::after {
  transform: rotateZ(90deg);
}
.group_button.blank::after {
  content: "";
  position: absolute;
  background-image: url(../../common/img/base/icon_window_black.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transition: ease 0.4s all;
}
@media (min-width: 769px), print {
  .group_button.blank::after {
    width: 0.938em;
    height: 0.875em;
    right: 0.938em;
  }
}
@media screen and (max-width: 768px) {
  .group_button.blank::after {
    width: 1.154em;
    height: 1.077em;
    right: 0.962em;
  }
}
.group_button:hover {
  color: #3dae35;
}
@media (min-width: 769px), print {
  .group_button.sz01 {
    width: 23.75em;
    max-width: 45vw;
    height: 3.125em;
  }
}
@media screen and (max-width: 768px) {
  .group_button.sz01 {
    width: 23.385em;
    height: 3.077em;
  }
}
@media (min-width: 769px), print {
  .group_button.sz01 + .group_button.sz01 {
    margin-left: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .group_button.sz01 + .group_button.sz01 {
    margin-top: 5rem;
  }
}
.group_cards {
  display: grid;
}
@media (min-width: 769px), print {
  .group_cards {
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 3rem;
    max-width: 1200px;
  }
}
@media screen and (max-width: 768px) {
  .group_cards {
    grid-template-columns: 1fr;
    width: 64rem;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .group_cards > li {
    width: 100%;
  }
  .group_cards > li + li {
    margin-top: 5rem;
  }
}
.group_card {
  background: #f1f1f1;
  text-align: center;
}
@media (min-width: 769px), print {
  .group_card {
    height: 37.8rem;
    padding: 4rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_card {
    padding: 5rem 4rem;
  }
}
.group_card_energy > dt {
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 769px), print {
  .group_card_energy > dt {
    height: 10rem;
    line-height: 1.334em;
    font-size: min(19.2px, 1.715vw);
  }
  .group_card_energy > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .group_card_energy > dt > p:first-of-type {
    margin-top: -0.166em;
  }
  .group_card_energy > dt > p:last-of-type {
    margin-bottom: -0.166em;
  }
}
@media screen and (max-width: 1200px) {
  .group_card_energy > dt {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_card_energy > dt {
    line-height: 1.648em;
    font-size: 3.4rem;
  }
  .group_card_energy > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .group_card_energy > dt > p:first-of-type {
    margin-top: -0.323em;
  }
  .group_card_energy > dt > p:last-of-type {
    margin-bottom: -0.323em;
  }
}
.group_card_energy > dd {
  text-align: left;
}
@media (min-width: 769px), print {
  .group_card_energy > dd {
    padding: 2.4rem 0 3rem;
    line-height: 2em;
    font-size: min(14.4px, 1.286vw);
  }
  .group_card_energy > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .group_card_energy > dd > p:first-of-type {
    margin-top: -0.5em;
  }
  .group_card_energy > dd > p:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 1100px) {
  .group_card_energy > dd {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_card_energy > dd {
    padding: 3rem 0;
    line-height: 1.648em;
    font-size: 3.4rem;
  }
  .group_card_energy > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .group_card_energy > dd > p:first-of-type {
    margin-top: -0.323em;
  }
  .group_card_energy > dd > p:last-of-type {
    margin-bottom: -0.323em;
  }
}
@media (min-width: 769px), print {
  .group_map {
    padding-top: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_map {
    padding-top: 8rem;
  }
}
.group_map_h4 {
  text-align: center;
  font-weight: 700;
}
@media (min-width: 769px), print {
  .group_map_h4 {
    line-height: 1.334em;
    font-size: min(24px, 2.143vw);
    font-size: min(1.8vw, 18px);
  }
  .group_map_h4 > h4 {
    line-height: inherit;
    font: inherit;
  }
  .group_map_h4 > h4:first-of-type {
    margin-top: -0.166em;
  }
  .group_map_h4 > h4:last-of-type {
    margin-bottom: -0.166em;
  }
}
@media screen and (max-width: 768px) {
  .group_map_h4 {
    line-height: 1.429em;
    font-size: 4.2rem;
  }
  .group_map_h4 > h4 {
    line-height: inherit;
    font: inherit;
  }
  .group_map_h4 > h4:first-of-type {
    margin-top: -0.214em;
  }
  .group_map_h4 > h4:last-of-type {
    margin-bottom: -0.214em;
  }
}
.group_map_txt {
  text-align: center;
}
@media (min-width: 769px), print {
  .group_map_txt > dt {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_map_txt > dt {
    padding-top: 4rem;
  }
}
@media (min-width: 769px), print {
  .group_map_txt > dd {
    padding: 4rem 0;
    line-height: 2em;
    font-size: min(14.4px, 1.286vw);
  }
  .group_map_txt > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .group_map_txt > dd > p:first-of-type {
    margin-top: -0.5em;
  }
  .group_map_txt > dd > p:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .group_map_txt > dd {
    padding: 4rem 0;
    line-height: 1.648em;
    font-size: 3.4rem;
  }
  .group_map_txt > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .group_map_txt > dd > p:first-of-type {
    margin-top: -0.323em;
  }
  .group_map_txt > dd > p:last-of-type {
    margin-bottom: -0.323em;
  }
}
.group_map > iframe {
  width: 100vw;
}
@media (min-width: 769px), print {
  .group_map > iframe {
    height: 54.8rem;
  }
}
@media screen and (max-width: 768px) {
  .group_map > iframe {
    height: 54.8rem;
  }
}
.group_banner {
  text-align: center;
}
@media (min-width: 769px), print {
  .group_banner {
    padding-top: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .group_banner {
    padding-top: 8rem;
  }
}
.group_banner a {
  display: block;
  margin: 0 auto;
  transition: ease 300ms all;
}
@media (min-width: 769px), print {
  .group_banner a {
    width: 91rem;
  }
}
@media screen and (max-width: 768px) {
  .group_banner a {
    width: 64rem;
  }
}
.group_banner a:hover {
  opacity: 0.5;
}

@media screen and (max-width: 768px) {
  .scroll-hint-icon {
    width: 41.4rem;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
@media screen and (max-width: 768px) {
  .scroll-hint-icon::before {
    margin-left: 70%;
    margin-top: 5px;
  }
}
@media screen and (max-width: 768px) {
  .scroll-hint-icon::after {
    left: 82%;
    top: 15px;
  }
}
@media screen and (max-width: 768px) {
  .scroll-hint-text {
    font-size: 2.6rem;
    margin-left: -12rem;
    margin-top: -5.5rem;
  }
}