@-webkit-keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.p-inner {
  width: 119.4rem;
  max-width: 100%;
  margin-inline: auto;
}

.p-inner.is-wide {
  width: 100%;
}

.p-inner.p-lower_kv_inner {
  position: relative;
  width: calc(100% - 17.2rem);
}

.p-inner.p-lower_kv_inner::after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  height: 1px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: currentColor;
  content: "";
}

.p-lower_kv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 39.4rem;
}

.p-lower_kv:has(.is-single) {
  height: auto;
}

.p-lower_kv_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-bottom: 12rem;
  gap: .5rem;
}

.p-lower_kv_ttl.is-single {
  padding: 16rem 0 8rem;
  gap: 4rem;
  border-bottom: 1px solid currentColor;
}

.p-circular {
  --itemSize: 25rem;
  position: absolute;
  top: 2rem;
  left: 50%;
  margin-top: calc(var(--itemSize)/2 - 1rem);
  -webkit-transform-origin: center;
          transform-origin: center;
  translate: -50% 0;
  -webkit-animation: rotate 70s infinite linear;
          animation: rotate 70s infinite linear;
  pointer-events: none;
}

.p-circular_wrapper {
  position: relative;
  height: 51.8rem;
  margin-top: 6.1rem;
  overflow: hidden;
}

.p-circular_wrapper::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10rem;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(rgb(255, 255, 255)));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
  content: "";
  pointer-events: none;
}

.p-circular_items {
  --r: 1200;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(var(--r)*.2rem);
  height: calc(var(--r)*.2rem);
  border-radius: 50%;
}

.p-circular_item {
  --a2: calc(var(--i) * 1deg - 90deg);
  --x: calc(cos(var(--a2)) * var(--r) * 0.1rem);
  --y: calc(sin(var(--a2)) * var(--r) * 0.1rem);
  position: absolute;
  aspect-ratio: 1;
  width: var(--itemSize);
  translate: var(--x) var(--y);
  rotate: calc(var(--i)*1deg);
}

.p-circular_item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-workplace_nav {
  margin-top: 24rem;
  padding-bottom: 12rem;
}

.p-workplace_nav_lists {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5.6rem 4.8rem;
}

.p-workplace_nav_list_link {
  display: block;
  position: relative;
  padding-bottom: 2rem;
  border-bottom: 1px solid currentColor;
}

.p-workplace_nav_list_link:not(.p-workplace_nav_list_link.c-hover) {
  color: var(--colorGray60);
}

.p-workplace_nav_list_link_icon {
  position: absolute;
  top: .2rem;
  right: 0;
}

.p-workplace_nav_list_link_icon.is-blank {
  right: .3rem;
  width: 1.4rem;
  height: 1.4rem;
}

#message .p-workplace_nav {
  margin-top: 12rem;
}

.p-breadcrumbs {
  padding: 2rem 0;
}

.p-breadcrumbs_inner {
  width: calc(100vw - (50vw - 50%));
  overflow-x: auto;
  white-space: nowrap;
}

.p-breadcrumbs_lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding-right: var(--innerWidth);
}

.p-breadcrumbs_list_link {
  display: block;
  position: relative;
  margin-right: 4.4rem;
}

.p-breadcrumbs_list_link::after {
  display: block;
  position: absolute;
  top: 50%;
  right: -1.2rem;
  width: 2rem;
  height: 1px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  translate: 100% 0;
  background-color: var(--colorBlack);
  content: "";
  pointer-events: none;
}

.p-breadcrumbs_list_last {
  color: var(--colorGray60);
}

.p-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-right: 4rem;
  padding-bottom: 10.4rem;
  gap: 9.6rem;
  border-bottom: 1px solid currentColor;
}

.p-block.is-short {
  padding-bottom: 9.6rem;
}

.p-block_img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 33.3rem;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

.p-block_txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-block_txt_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 4rem;
  gap: 2rem;
}

.p-block_txt_ttl_sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}

.p-block_txt_ttl_sub::before {
  display: block;
  width: 1.6rem;
  height: .2rem;
  background-color: var(--colorBlack);
  content: "";
}

.p-block_txt_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.2rem;
}

.p-block_txt_content_dl_term {
  margin-bottom: 1.2rem;
}

.p-block_txt_content_dl_desc:not(:last-of-type) {
  margin-bottom: 3.2rem;
}

body:has(>main#top)>.p-header {
  -webkit-filter: blur(7px);
          filter: blur(7px);
  opacity: 0;
}

.p-header {
  z-index: 10000;
  position: fixed;
  top: 2rem;
  left: 50%;
  width: 100%;
  translate: -50% 0;
  color: var(--colorWhite);
  -webkit-transition: color .3s var(--defaultEase),height 1.4s var(--defaultEase),opacity var(--defaultAnime),-webkit-filter calc(var(--defaultDuration)*2) var(--defaultEase);
  transition: color .3s var(--defaultEase),height 1.4s var(--defaultEase),opacity var(--defaultAnime),-webkit-filter calc(var(--defaultDuration)*2) var(--defaultEase);
  transition: color .3s var(--defaultEase),height 1.4s var(--defaultEase),filter calc(var(--defaultDuration)*2) var(--defaultEase),opacity var(--defaultAnime);
  transition: color .3s var(--defaultEase),height 1.4s var(--defaultEase),filter calc(var(--defaultDuration)*2) var(--defaultEase),opacity var(--defaultAnime),-webkit-filter calc(var(--defaultDuration)*2) var(--defaultEase);
}

.p-header_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: calc(100% - var(--innerWidth)*2);
  margin-inline: auto;
}

.p-header_logo {
  width: 18.5rem;
  max-width: 100%;
}

.p-header_logo path {
  -webkit-transition: fill var(--defaultAnime);
  transition: fill var(--defaultAnime);
}

.p-header_nav {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-header_nav_lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3rem;
}

.p-header_nav_list:has(ul) {
  position: relative;
}

.p-header_nav_list_link {
  position: relative;
  color: var(--colorWhite);
  cursor: pointer;
  -webkit-transition: color .3s var(--defaultEase);
  transition: color .3s var(--defaultEase);
}

.p-header_nav_list_link:has(span) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: .6rem;
}

.p-header_nav_list_link_inner {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-header_nav_list_link_bar {
  display: block;
  position: relative;
  aspect-ratio: 1;
  width: 1rem;
}

.p-header_nav_list_link_bar::after,.p-header_nav_list_link_bar::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 1px;
  translate: -50% -50%;
  border-radius: 5px;
  background: currentColor;
  content: "";
  -webkit-transition: background var(--defaultAnime);
  transition: background var(--defaultAnime);
}

.p-header_nav_list_link_bar::before {
  rotate: 90deg;
}

.p-header_nav_list_children_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  gap: .8rem;
}

.p-header_nav_list_children_heading_icon {
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
}

.p-header_nav_list_children_wrapper {
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 50%;
  width: calc(100% - 6rem);
  margin-top: 6.3rem;
  padding: 4rem 0 8rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-radius: .3rem;
  background-color: var(--colorBlack);
  color: var(--colorWhite);
  opacity: 1;
  opacity: 0;
  -webkit-transition: opacity var(--defaultAnime),visibility var(--defaultAnime);
  transition: opacity var(--defaultAnime),visibility var(--defaultAnime);
}

.p-header_nav_list_children_wrapper.is-open {
  visibility: visible;
  opacity: 1;
}

.p-header_nav_list_children_wrapper::after {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2.4rem;
  inset: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  content: "";
}

.p-header_nav_list_children_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-header_nav_list_children {
  display: grid;
  width: 82.4rem;
  max-width: 100%;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  gap: 2rem 4rem;
}

.p-header_nav_list_children.is-column03 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.p-header_nav_list_children.is-column02 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.p-header_nav_list_children_item_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 1.9rem;
  border-bottom: 1px solid currentColor;
}

.p-header_nav_list_children_item_icon {
  display: inline-block;
  width: 2.2rem;
  height: 2.2rem;
  -webkit-transform: translateY(0.2rem);
          transform: translateY(0.2rem);
}

.p-header_nav_list_children_item_icon.is-blank {
  padding: .3rem;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.p-header_nav_list_children_item_icon svg {
  height: 100%;
}

.p-header_nav_list_children_faq_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin-top: 4rem;
  gap: 1rem;
}

.p-header_nav_list_children_faq_link_icon {
  --arrowBg: var(--colorWhite);
  --arrow: var(--colorBlack);
  display: block;
  width: 3.8rem;
  height: 3.8rem;
}

.p-header_nav_list_children_contact_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 27rem;
  max-width: 100%;
  margin-top: 3.1rem;
  padding: 2.7rem 2rem;
  overflow: hidden;
}

.p-header_nav_list_children_contact_link_icon {
  display: block;
  width: 2rem;
  height: 2rem;
}

.p-header_nav_list_children_contact_link_bg {
  z-index: -1;
  position: absolute;
  inset: 0;
}

.p-header_nav_list_children_contact_link_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-header_entry_wrapper {
  position: relative;
}

.p-header_entry {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: .8rem 1.6rem;
  border-color: rgba(0,0,0,0);
  background-color: var(--colorWhite);
  color: var(--colorBlack);
  cursor: pointer;
  -webkit-transition: background var(--defaultAnime),color var(--defaultAnime);
  transition: background var(--defaultAnime),color var(--defaultAnime);
}

.p-header_btn {
  display: none;
}

.p-header.is-active {
  --logoColor: var(--colorBlack0);
  --logoSpColor: var(--colorBlack0);
  color: var(--colorBlack);
}

.p-header.is-active .p-header_nav_list_link {
  color: var(--colorBlack);
}

.p-header.is-active .p-header_entry {
  background-color: var(--colorBlack);
  color: var(--colorWhite);
}

.p-header.is-active .p-header_btn_line {
  background-color: var(--colorBlack);
}

.p-header.is-zone {
  --logoColor: var(--colorWhite);
  --logoSpColor: var(--colorWhite);
  color: var(--colorWhite);
}

.p-header.is-zone .p-header_nav_list_link {
  color: var(--colorWhite);
}

.p-header.is-zone .p-header_entry {
  background-color: rgba(0,0,0,0);
  color: var(--colorWhite);
}

.p-header.is-zone .p-header_btn_line {
  background-color: var(--colorWhite);
}

.p-header_burger {
  display: none;
}

.p-header_burger_bottom_contact_icon {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
  line-height: 0;
}

.p-header_burger_bottom_contact_icon svg {
  height: 100%;
}

.p-footer {
  z-index: 10;
  position: relative;
  margin-top: -1px;
}

.p-footer_top {
  padding: 6rem 0;
  background-color: var(--colorBlack);
}

.p-footer_top * {
  color: var(--colorWhite);
}

.p-footer_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 18.3rem;
}

.p-footer_faq_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin-top: 5.8rem;
  gap: 1rem;
}

.p-footer_faq_link_icon {
  --arrowBg: var(--colorWhite);
  --arrow: var(--colorBlack);
  display: block;
  width: 3.8rem;
  height: 3.8rem;
}

.p-footer_contact_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 42rem;
  max-width: 100%;
  margin-top: 3.1rem;
  padding: 3.5rem 2rem 3.9rem;
  overflow: hidden;
}

.p-footer_contact_link.is-sp {
  display: none;
}

.p-footer_contact_link_icon {
  display: block;
  width: 2rem;
  height: 2rem;
}

.p-footer_contact_link_bg {
  z-index: -1;
  position: absolute;
  inset: 0;
}

.p-footer_contact_link_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-footer_right {
  margin-top: 1rem;
}

.p-footer_right_lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(28.6rem, 1fr));
  gap: 2rem;
  text-align: center;
}

.p-footer_right_list_link {
  --btnBorder: var(--colorWhite);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 6rem;
  padding: 0 2rem;
}

.p-footer_bottom {
  padding: 6rem 0;
  overflow: hidden;
}

.p-footer_bottom_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20.3rem;
}

.p-footer_bottom_logo {
  --logoColor: var(--colorBlack0);
  width: 22.7rem;
  max-width: 100%;
}

.p-footer_bottom_left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-footer_bottom_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 4rem;
  gap: .6rem;
}

.p-footer_bottom_instagram {
  display: block;
  width: 2rem;
  margin-top: 2rem;
}

.p-footer_bottom_right {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: 1rem;
}

.p-footer_bottom_right_top {
  width: 100%;
}

.p-footer_bottom_right_top_lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 5rem;
}

.p-footer_bottom_right_top_list {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.p-footer_bottom_right_top_list.is-03 {
  padding-left: .5rem;
}

.p-footer_bottom_right_top_list_icon {
  display: block;
  width: 2rem;
  -webkit-transform: translateY(0.5rem);
          transform: translateY(0.5rem);
  line-height: 1;
}

.p-footer_bottom_right_top_list_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: .8rem;
}

.p-footer_bottom_right_top_list_heading.is-sp {
  display: none;
}

.p-footer_bottom_right_top_list_sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 2rem;
  gap: 1.4rem;
}

.p-footer_bottom_right_top_list_sub_item_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: .6rem;
}

.p-footer_bottom_right_info_lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 4rem;
  gap: 3rem;
}

.p-footer_bottom_right_info_list:nth-child(3) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-footer_bottom_right_info_list_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: .6rem;
}

.p-footer_bottom_right_info_list_copy {
  margin-left: 1rem;
}

.p-footer_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 10;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: -22.5rem;
}

.p-footer_heading_block {
  display: block;
}

.p-footer_heading_block.is-01 {
  margin-left: -9rem;
}

.p-footer_heading_block.is-02 {
  margin-top: 1.5rem;
  margin-left: 26rem;
}

.p-footer_heading_block.is-03 {
  margin-top: 1.5rem;
  margin-left: -5rem;
}

.l-bg {
  z-index: -1;
  position: fixed;
  width: 100%;
  height: 100vh;
  inset: 0;
  background: rgba(0,0,0,0);
  pointer-events: none;
}

.l-bg_white {
  z-index: 2;
  position: absolute;
  height: 300vh;
  inset: 0;
  -webkit-transform: translateY(100vh);
          transform: translateY(100vh);
  background: var(--colorWhite);
  will-change: transform,opacity;
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(10%, rgba(0, 0, 0, 0.08)), color-stop(22%, rgba(0, 0, 0, 0.25)), color-stop(35%, rgba(0, 0, 0, 0.5)), color-stop(48%, rgba(0, 0, 0, 0.75)), color-stop(60%, var(--colorBlack)), to(var(--colorBlack)));
  -webkit-mask-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.08) 10%, rgba(0, 0, 0, 0.25) 22%, rgba(0, 0, 0, 0.5) 35%, rgba(0, 0, 0, 0.75) 48%, var(--colorBlack) 60%, var(--colorBlack) 100%);
  mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(10%, rgba(0, 0, 0, 0.08)), color-stop(22%, rgba(0, 0, 0, 0.25)), color-stop(35%, rgba(0, 0, 0, 0.5)), color-stop(48%, rgba(0, 0, 0, 0.75)), color-stop(60%, var(--colorBlack)), to(var(--colorBlack)));
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.08) 10%, rgba(0, 0, 0, 0.25) 22%, rgba(0, 0, 0, 0.5) 35%, rgba(0, 0, 0, 0.75) 48%, var(--colorBlack) 60%, var(--colorBlack) 100%);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}

@media screen and (max-width: 48em) {
  .p-inner {
    width: 100%;
    padding: 0 2rem;
  }
  .p-inner.p-lower_kv_inner::after {
    width: calc(100% - 4rem);
  }
  .p-inner.p-lower_kv_inner {
    width: 100%;
  }
  .p-lower_kv {
    height: auto;
    padding-top: 12rem;
  }
  .p-lower_kv_ttl {
    padding-bottom: 8rem;
  }
  .p-lower_kv_ttl.is-single {
    padding-top: 0;
    padding-bottom: 8rem;
  }
  .p-circular {
    --itemSize: 9.375rem;
  }
  .p-circular_wrapper {
    width: calc(100% + var(--innerWidth)*2);
    height: 33.4rem;
    margin-top: 4.4rem;
    margin-left: calc(-1*var(--innerWidth));
  }
  .p-circular_items {
    --r: 500;
  }
  .p-workplace_nav {
    margin-top: 12rem;
    padding-bottom: 5.6rem;
  }
  .p-workplace_nav_lists {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  #message .p-workplace_nav {
    margin-top: 5.6rem;
  }
  .p-breadcrumbs_inner {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
    -webkit-scroll-snap-type: x proximity;
        -ms-scroll-snap-type: x proximity;
            scroll-snap-type: x proximity;
    -ms-touch-action: pan-x;
        touch-action: pan-x;
  }
  .p-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-right: initial;
    padding-bottom: 5.6rem;
    gap: 3.2rem;
  }
  .p-block.is-short {
    padding-bottom: 5.6rem;
  }
  .p-block_txt_ttl {
    margin-bottom: 2.4rem;
    gap: 1.2rem;
  }
  .p-block_txt_content {
    gap: 2.4rem;
  }
  .p-block_txt_content_dl_desc:not(:last-of-type) {
    margin-bottom: 2.4rem;
  }
  .p-lower_kv_ttl_main_small {
    display: block;
  }
  .p-header {
    top: 1rem;
    height: 100%;
    pointer-events: none;
  }
  .p-header:has(.p-header_burger.is-open) {
    pointer-events: all;
  }
  .p-header_inner {
    pointer-events: all;
  }
  .p-header_logo {
    width: 10rem;
  }
  .p-header_nav {
    display: none;
  }
  .p-header_nav_list_children_wrapper {
    display: none;
  }
  .p-header_entry {
    margin-right: 4rem;
    padding: .6rem 1rem;
  }
  .p-header_btn {
    display: block;
    position: absolute;
    top: 2rem;
    right: 2rem;
    width: 2rem;
    height: 1.2rem;
  }
  .p-header_btn_line {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--colorWhite);
    -webkit-transition: background var(--defaultAnime);
    transition: background var(--defaultAnime);
  }
  .p-header_btn_line:nth-child(1) {
    top: 0;
  }
  .p-header_btn_line:nth-child(2) {
    top: 50%;
    translate: 0 -50%;
  }
  .p-header_btn_line:nth-child(3) {
    bottom: 0;
  }
  .p-header_burger {
    display: block;
    visibility: hidden;
    position: fixed;
    top: -1rem;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 9rem 0 2rem;
    overflow-y: auto;
    background-color: var(--colorWhite);
    color: var(--colorBlack);
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity var(--defaultEase) calc(var(--defaultDuration)*.8),visibility var(--defaultEase) calc(var(--defaultDuration)*.8);
    transition: opacity var(--defaultEase) calc(var(--defaultDuration)*.8),visibility var(--defaultEase) calc(var(--defaultDuration)*.8);
  }
  .p-header_burger.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: visible;
  }
  .p-header_burger_close {
    position: absolute;
    top: 3.5rem;
    right: 2rem;
    width: 2rem;
    height: 1.5rem;
  }
  .p-header_burger_close_line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--colorBlack);
  }
  .p-header_burger_close_line:nth-child(1) {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .p-header_burger_close_line:nth-child(2) {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .p-header_burger_content {
    padding-bottom: 3.7rem;
  }
  .p-header_burger_content_lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
  .p-header_burger_content_list {
    display: block;
    position: relative;
    width: 100%;
    padding-bottom: 2rem;
    border-bottom: 1px solid currentColor;
  }
  .p-header_burger_content_list_heading {
    display: block;
    width: 100%;
    text-align: left;
  }
  .p-header_burger_content_list_icon {
    display: block;
    position: absolute;
    top: .1rem;
    right: 0;
    width: 1.8rem;
    height: 1.8rem;
  }
  .p-header_burger_content_list_sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 4rem;
    padding-bottom: 1rem;
    gap: 3rem;
  }
  .p-header_burger_content_list_sub_item_link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: .6rem;
  }
  .p-header_burger_bottom {
    padding: 4rem 0;
    background-color: var(--colorBlack);
    color: var(--colorWhite);
  }
  .p-header_burger_bottom_link {
    position: relative;
  }
  .p-header_burger_bottom_faq {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    margin-top: 3.9rem;
    gap: 1rem;
  }
  .p-header_burger_bottom_faq_icon {
    --arrowBg: var(--colorWhite);
    --arrow: var(--colorBlack);
    display: block;
    width: 3.8rem;
  }
  .p-header_burger_bottom_lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 3rem;
    gap: 1rem;
  }
  .p-header_burger_bottom_list_link {
    --btnBorder: var(--colorWhite);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    padding: 1.6rem 2rem;
  }
  .p-header_burger_bottom_contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 10;
    position: relative;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 3rem;
    padding: 2.7rem 2rem;
    overflow: clip;
    color: var(--colorWhite);
  }
  .p-header_burger_bottom_contact_bg {
    z-index: -1;
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-header_burger_foot {
    padding-top: 4rem;
  }
  .p-header_burger_foot_txt {
    text-align: center;
  }
  .p-header_burger_foot_insta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: grid;
    position: relative;
    place-items: center;
    height: 6rem;
    margin-top: 1rem;
    background-color: var(--colorBlack);
    color: var(--colorWhite);
    text-align: center;
  }
  .p-header_burger_foot_insta_icon {
    position: absolute;
    top: 50%;
    right: 2rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .p-header_burger_foot_close {
    display: block;
    margin-top: 6rem;
    margin-inline: auto;
    text-align: center;
  }
  .p-footer_top {
    padding: 4rem 0;
  }
  .p-footer_flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  .p-footer_faq_link {
    margin-top: 4rem;
  }
  .p-footer_contact_link {
    padding: 2.7rem 2rem;
  }
  .p-footer_contact_link.is-pc {
    display: none;
  }
  .p-footer_contact_link.is-sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p-footer_right {
    margin-top: 3rem;
  }
  .p-footer_right_lists {
    grid-template-columns: auto;
    gap: 1rem;
  }
  .p-footer_right_list_link {
    height: 5rem;
  }
  .p-footer_bottom {
    padding: 3.5rem 0;
  }
  .p-footer_bottom_flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3rem;
  }
  .p-footer_bottom_link {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  .p-footer_bottom_right_top_lists {
    grid-template-columns: auto;
    row-gap: 1.9rem;
  }
  .p-footer_bottom_right_top_list {
    width: 100%;
    padding-bottom: 2rem;
    border-bottom: 1px solid currentColor;
  }
  .p-footer_bottom_right_top_list.is-03 {
    padding-left: 0;
  }
  .p-footer_bottom_right_top_list_heading {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    gap: 0;
    text-align: left;
  }
  .p-footer_bottom_right_top_list_heading.is-pc {
    display: none;
  }
  .p-footer_bottom_right_top_list_heading.is-sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p-footer_bottom_right_top_list_sub {
    margin-top: 4rem;
    padding-bottom: 1rem;
    gap: 3rem;
  }
  .p-footer_bottom_right_info_lists {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
  .p-footer_bottom_right_info_list:nth-child(1) {
    grid-column: 1/-1;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  .p-footer_bottom_right_info_list:nth-child(2) {
    grid-column: 1;
  }
  .p-footer_bottom_right_info_list:nth-child(3) {
    display: block;
    grid-column: 2;
    text-align: right;
  }
  .p-footer_bottom_right_info_list_copy {
    margin: 0;
  }
  .p-footer_heading_block.is-01 {
    margin-left: -3.2rem;
  }
  .p-footer_heading_block.is-02 {
    margin-top: .5rem;
    margin-left: 5.4rem;
  }
  .p-footer_heading_block.is-03 {
    margin-top: .5rem;
    margin-left: -4.8rem;
    text-align: right;
  }
}

@media (hover: hover)and (pointer: fine) {
  .p-header_nav_list:has(ul):has(:hover) .p-header_nav_list_children_wrapper {
    visibility: visible;
    opacity: 1;
  }
  .p-header_entry_wrapper:has(:hover) .p-header_nav_list_children_wrapper {
    visibility: visible;
    opacity: 1;
  }
}
