/* commonParts
---------------------------------------------------- */
#page-ttl {
  position: relative;
  background-size: cover;
  z-index: 2;
}
#page-ttl::before {
  position: absolute;
  z-index: 2;
  inset: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(19, 30, 54, 0.6);
  backdrop-filter: brightness(0.8) contrast(1.2) blur(4px);
}
#page-ttl .pgttl-inner {
  position: relative;
  z-index: 2;
  height: 51.25rem;
  padding: max(1.25rem, 10px);
}
@media screen and (max-width: 1199px) {
  #page-ttl .pgttl-inner {
    height: 560px;
  }
}
@media screen and (max-width: 767px) {
  #page-ttl .pgttl-inner {
    height: 420px;
  }
}
#page-ttl .pgttl-inner .pgttl-content {
  position: relative;
  width: 100%;
  height: 100%;
  color: #fff;
  text-shadow: 2px 2px 4px rgba(19, 30, 54, 0.2);
  border: solid 1px #fff;
}
@media screen and (max-width: 1199px) {
  #page-ttl .pgttl-inner .pgttl-content {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media screen and (max-width: 991px) {
  #page-ttl .pgttl-inner .pgttl-content {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 767px) {
  #page-ttl .pgttl-inner .pgttl-content {
    padding-left: 14px;
    padding-right: 14px;
  }
}
#page-ttl .pgttl-inner .pgttl-content .pg-ttl {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: 3.5rem;
}
@media screen and (max-width: 1199px) {
  #page-ttl .pgttl-inner .pgttl-content .pg-ttl {
    margin-top: 40px;
  }
}
@media screen and (max-width: 1199px) {
  #page-ttl .pgttl-inner .pgttl-content .pg-ttl h2 span.__jp {
    font-size: 2em;
  }
}
@media screen and (max-width: 767px) {
  #page-ttl .pgttl-inner .pgttl-content .pg-ttl h2 span.__jp {
    font-size: 1.645em;
  }
}
#page-ttl .pgttl-inner .pgttl-content .breadcrumbs {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: #fff;
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  #page-ttl .pgttl-inner .pgttl-content .breadcrumbs {
    margin-bottom: 1em;
  }
}
#page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul {
  display: flex;
  justify-content: center;
}
#page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul li {
  display: flex;
  align-items: center;
  font-size: 0.95em;
  padding: 0.36em 0;
  margin-left: 1em;
}
@media screen and (max-width: 767px) {
  #page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul li {
    font-size: 0.9em;
  }
}
#page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul li::after {
  content: "|";
  margin-left: 1em;
}
@media screen and (max-width: 767px) {
  #page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul li.__txtlimit {
    max-width: 13em;
  }
}
#page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul li a {
  color: #fff;
  font-size: 1em;
}
#page-ttl .pgttl-inner .pgttl-content .breadcrumbs ul li:last-of-type::after {
  content: none;
}
#page-ttl.__news {
  background-image: url(../images/news/pgttl-bgimg.jpg);
  background-position: 100% 60%;
}
#page-ttl.__works {
  background-image: url(../images/works/pgttl-bgimg.jpg);
  background-position: 50% 50%;
}
#page-ttl.__gallery {
  background-image: url(../images/gallery/pgttl-bgimg.jpg);
  background-position: 50% 30%;
}
#page-ttl.__company {
  background-image: url(../images/company/pgttl-bgimg.jpg);
  background-position: 50% 50%;
}
#page-ttl.__recruit {
  background-image: url(../images/recruit/pgttl-bgimg.jpg);
  background-position: 50% 100%;
}
#page-ttl.__contact {
  background-image: url(../images/contact/pgttl-bgimg.jpg);
  background-position: 50% 50%;
}

.link-list ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: -1em;
}
.link-list ul .link-btn {
  width: calc(25% - 0.75em);
  margin-right: 1em;
  margin-top: 1em;
}
.link-list ul .link-btn:nth-of-type(4n) {
  margin-right: 0;
}
@media screen and (max-width: 1599px) {
  .link-list ul .link-btn {
    width: calc(50% - 0.5em);
  }
  .link-list ul .link-btn:nth-of-type(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .link-list ul .link-btn {
    width: 100%;
    margin-right: 0;
  }
}
.link-list ul .link-btn a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #fff;
  border: solid 1px #21345c;
  border-radius: 6px;
  font-size: 0.95em;
  padding: 0.8em 1.4em;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .link-list ul .link-btn a {
    padding-top: 0.6em;
    padding-bottom: 0.6em;
  }
}
.link-list ul .link-btn a .__arrow {
  width: 0.5em;
}
.link-list ul .link-btn a .__arrow img {
  width: 100%;
  height: auto;
  transform: scaleY(-1);
}
.link-list ul .link-btn a:hover {
  background-color: rgba(33, 52, 92, 0.1);
}

.flow-list ul .flow-list-item {
  display: flex;
  align-items: baseline;
  padding-top: 56px;
  padding-bottom: 64px;
  border-bottom: solid 1px rgba(19, 30, 54, 0.4);
}
.flow-list ul .flow-list-item:nth-of-type(1) {
  border-top: solid 1px rgba(19, 30, 54, 0.4);
}
@media screen and (max-width: 767px) {
  .flow-list ul .flow-list-item {
    display: block;
    padding-top: 30px;
    padding-bottom: 40px;
  }
}
.flow-list ul .flow-list-item .item-num {
  flex-shrink: 0;
  margin-right: 0.8em;
}
@media screen and (max-width: 767px) {
  .flow-list ul .flow-list-item .item-num {
    margin-right: 0;
    margin-bottom: 0.2em;
  }
}
.flow-list ul .flow-list-item .item-num span.__step {
  font-size: 0.56em;
  margin-right: 0.6em;
}
@media screen and (max-width: 767px) {
  .flow-list ul .flow-list-item .item-num span.__step {
    font-size: 0.6em;
  }
}
.flow-list ul .flow-list-item .item-content {
  width: 100%;
}
.flow-list ul .flow-list-item .item-content .item-txt {
  margin-top: 0.6em;
}
@media screen and (max-width: 767px) {
  .flow-list ul .flow-list-item .item-content .item-txt {
    margin-top: 1em;
  }
}
.flow-list ul .flow-list-item .item-content .item-txt ul {
  margin-top: 1em;
  padding-top: 0.8em;
  border-top: solid 1px rgba(19, 30, 54, 0.2);
}
.flow-list ul .flow-list-item .item-content .item-txt ul li {
  color: #21345c;
}

.__table-style dl {
  display: flex;
}
@media screen and (max-width: 767px) {
  .__table-style dl {
    display: block;
  }
}
.__table-style dl dt {
  color: #21345c;
  font-weight: 400;
  width: 8em;
  padding: 1.4em 0;
  border-bottom: solid 1px #21345c;
}
@media screen and (max-width: 767px) {
  .__table-style dl dt {
    width: 100%;
    font-size: 0.9em;
    padding-top: 1.6em;
    padding-bottom: 0.6em;
    border-bottom: none;
  }
}
.__table-style dl dd {
  width: calc(100% - 8em);
  padding: 1.4em 0;
  padding-left: 1em;
  border-bottom: solid 1px rgba(19, 30, 54, 0.2);
}
@media screen and (max-width: 767px) {
  .__table-style dl dd {
    width: 100%;
    padding-top: 0;
    padding-bottom: 1.4em;
    padding-left: 0;
  }
}
.__table-style dl dd a {
  display: inline;
  font-size: 1em;
}
.__table-style dl dd ul li:nth-of-type(1) {
  margin-top: 0;
}

.flowing-slider-wrap .flowing-slider .swiper-wrapper {
  transition-timing-function: linear;
}
.flowing-slider-wrap .flowing-slider .swiper-wrapper .swiper-slide {
  width: 100%;
}
.flowing-slider-wrap .flowing-slider .swiper-wrapper .swiper-slide .swiper-img {
  width: 100%;
  aspect-ratio: 4/3;
}

.parallax-img-wrap {
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .parallax-img-wrap {
    width: calc(100% - 120px);
    padding-top: 60px;
    margin-bottom: -20px;
  }
}
@media screen and (max-width: 991px) {
  .parallax-img-wrap {
    width: calc(100% - 80px);
    padding-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .parallax-img-wrap {
    width: calc(100% - 40px);
    padding-top: 20px;
  }
}
.parallax-img-wrap .parallax-img {
  height: 30rem;
  background-image: url(../images/company/parallax-img.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-position: 50% 80%;
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .parallax-img-wrap .parallax-img {
    background-attachment: scroll;
    height: auto;
    border-radius: max(1rem, 8px);
    box-shadow: 2px 2px 6px rgba(33, 52, 92, 0.1);
    aspect-ratio: 2/1;
  }
}
@media screen and (max-width: 767px) {
  .parallax-img-wrap .parallax-img {
    aspect-ratio: 3/2;
  }
}

/* works.html
---------------------------------------------------- */
.sec-works_intro .sec-inner {
  align-items: center;
}
.sec-works_intro .sec-inner .txt-wrap {
  padding: 0;
}
.sec-works_intro .sec-inner .txt-wrap .sec-txt {
  margin-top: 0;
}
.sec-works_intro .sec-inner .txt-wrap .sec-catch {
  margin: 2em 0;
}
.sec-works_intro .sec-inner .img-wrap {
  height: 100%;
}
.sec-works_intro .sec-inner .img-wrap .img {
  width: calc(100% - 15 * 1rem);
  height: 14em;
}
@media screen and (max-width: 1199px) {
  .sec-works_intro .sec-inner .img-wrap .img {
    height: auto;
    width: 40%;
    aspect-ratio: 5/3;
  }
}
@media screen and (max-width: 767px) {
  .sec-works_intro .sec-inner .img-wrap .img {
    width: 100%;
  }
}
.sec-works_intro .sec-inner .img-wrap .img.__large {
  width: calc(100% - 7.5 * 1rem);
  height: 20em;
  margin-left: auto;
  margin-right: 2em;
  margin-top: 2em;
}
@media screen and (max-width: 1199px) {
  .sec-works_intro .sec-inner .img-wrap .img.__large {
    width: calc(60% - 4em);
    height: auto;
    aspect-ratio: 3/2;
    margin-right: 0;
    margin-top: -6em;
  }
}
@media screen and (max-width: 767px) {
  .sec-works_intro .sec-inner .img-wrap .img.__large {
    width: 100%;
    margin-top: 1em;
  }
}
.sec-works_intro .sec-inner .img-wrap .img.__large img {
  -o-object-position: 50% 0%;
     object-position: 50% 0%;
}

.sec-works-list .sec-inner {
  margin-top: 3em;
}
@media screen and (max-width: 1199px) {
  .sec-works-list .sec-inner {
    margin-top: 2em;
  }
}
.sec-works-list .sec-inner .txt-wrap {
  padding: 0;
}
.sec-works-list .sec-inner .txt-wrap .sec-txt {
  margin-top: 0;
}
.sec-works-list .detail-content {
  border: solid 1px #21345c;
  padding: 3.6em 3em;
  margin-top: 3em;
}
@media screen and (max-width: 1199px) {
  .sec-works-list .detail-content {
    padding: 60px;
  }
}
@media screen and (max-width: 991px) {
  .sec-works-list .detail-content {
    padding: 40px;
  }
}
@media screen and (max-width: 767px) {
  .sec-works-list .detail-content {
    padding: 32px 16px;
    margin-top: 2em;
  }
}
.sec-works-list .detail-content .content-txt {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .sec-works-list .detail-content .content-txt {
    margin-top: 2em;
  }
}
.sec-works-list .detail-content .case-list {
  margin-top: 1em;
}
.sec-works-list .detail-content .case-list ul .case-list-item {
  font-size: 0.85em;
  border-radius: 0;
  padding-left: 2em;
  padding-right: 2em;
  margin-right: 0.4em;
  margin-top: 0.4em;
}
@media screen and (max-width: 767px) {
  .sec-works-list .detail-content .case-list ul .case-list-item {
    width: 100%;
    text-align: center;
    padding-top: 0.8em;
    padding-bottom: 0.9em;
    margin-right: 0;
    margin-top: 0.6em;
  }
}
.sec-works-list .detail-content .content-link {
  margin-top: 2.4em;
}
.sec-works-list .detail-content .content-link .__linkbtn01 {
  margin-left: auto;
}

.sec-works_flow .sec-inner {
  position: relative;
}
.sec-works_flow .sec-inner .sec-ttl {
  position: sticky;
  left: 0;
  height: -moz-max-content;
  height: max-content;
}
@media screen and (max-width: 767px) {
  .sec-works_flow .sec-inner .sec-ttl {
    position: relative;
    top: 0 !important;
  }
}
.sec-works_flow .sec-inner .sec-content {
  border-left: solid 1px rgba(19, 30, 54, 0.2);
}
@media screen and (max-width: 767px) {
  .sec-works_flow .sec-inner .sec-content {
    border-left: none;
  }
}

/* companym.html
---------------------------------------------------- */
.sec-company_greeting .sec-inner {
  display: flex;
  justify-content: space-between;
  margin-top: 7.5rem;
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner {
    display: block;
    margin-top: 3em;
  }
}
.sec-company_greeting .sec-inner:nth-of-type(even) {
  flex-direction: row-reverse;
  margin-top: 4em;
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner:nth-of-type(even) {
    margin-top: 3em;
  }
}
.sec-company_greeting .sec-inner .txt-wrap {
  width: calc(100% - 32.5 * 1rem - 5 * 1rem);
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner .txt-wrap {
    width: 100%;
  }
}
.sec-company_greeting .sec-inner .txt-wrap .CEO-name {
  margin-bottom: 1.6em;
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner .txt-wrap .CEO-name {
    display: flex;
    align-items: baseline;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_greeting .sec-inner .txt-wrap .CEO-name {
    display: block;
  }
}
.sec-company_greeting .sec-inner .txt-wrap .CEO-name p.__main {
  font-size: 1.6875rem;
  margin-right: 1em;
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner .txt-wrap .CEO-name p.__main {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_greeting .sec-inner .txt-wrap .CEO-name p.__main {
    font-size: 1.125em;
  }
}
.sec-company_greeting .sec-inner .txt-wrap .CEO-name p.__sub {
  color: #676767;
  font-size: 0.9em;
  margin-top: 0.6em;
}
.sec-company_greeting .sec-inner .txt-wrap .sec-catch {
  margin-bottom: 1.6em;
}
.sec-company_greeting .sec-inner .txt-wrap .sec-catch h4 {
  font-size: 1.6875rem;
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner .txt-wrap .sec-catch h4 {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_greeting .sec-inner .txt-wrap .sec-catch h4 {
    font-size: 1.25em;
  }
}
.sec-company_greeting .sec-inner .img-wrap {
  width: 32.5rem;
  box-shadow: 2px 2px 6px rgba(33, 52, 92, 0.1);
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner .img-wrap {
    width: 100%;
    aspect-ratio: 4/3;
    margin-top: 3em;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_greeting .sec-inner .img-wrap {
    margin-top: 2em;
  }
}

.sec-company_outline .outline-table {
  margin-top: 2em;
}
@media screen and (max-width: 767px) {
  .sec-company_outline .outline-table {
    margin-top: 0;
  }
}
.sec-company_outline .outline-table dl dt {
  width: 18em;
}
@media screen and (max-width: 767px) {
  .sec-company_outline .outline-table dl dt {
    width: 100%;
  }
}
.sec-company_outline .outline-table dl dd {
  width: calc(100% - 18em);
}
@media screen and (max-width: 767px) {
  .sec-company_outline .outline-table dl dd {
    width: 100%;
  }
}

.sec-company_access .sec-inner {
  margin-top: 3em;
}
@media screen and (max-width: 1199px) {
  .sec-company_access .sec-inner {
    margin-top: 2em;
  }
}
.sec-company_access .sec-inner .txt-wrap {
  padding: 0;
}
.sec-company_access .sec-inner .txt-wrap .howto-wrap:nth-of-type(2) {
  margin-top: 3em;
}
@media screen and (max-width: 1199px) {
  .sec-company_access .sec-inner .txt-wrap .howto-wrap:nth-of-type(2) {
    margin-top: 2em;
  }
}
.sec-company_access .sec-inner .txt-wrap .howto-wrap p {
  margin-top: 0.4em;
}
.sec-company_access .sec-inner .txt-wrap .sec-link {
  margin-top: 3em;
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .sec-company_access .sec-inner .txt-wrap .sec-link {
    margin-bottom: 3em;
  }
}
.sec-company_access .sec-inner .txt-wrap .sec-link .__linkbtn03 {
  margin-left: auto;
}
.sec-company_access .sec-inner .map-wrap {
  background-color: #fff;
  box-shadow: 2px 2px 6px rgba(33, 52, 92, 0.1);
}
@media screen and (max-width: 1199px) {
  .sec-company_access .sec-inner .map-wrap {
    height: 480px;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_access .sec-inner .map-wrap {
    height: 320px;
  }
}
.sec-company_access .sec-inner .map-wrap iframe {
  width: 100%;
  height: 100%;
}

/* recruit.html
---------------------------------------------------- */
.sec-recruit_intro .sec-inner {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-top: 5rem;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-inner {
    display: block;
    margin-top: 3em;
  }
}
.sec-recruit_intro .sec-inner .txt-wrap {
  width: calc(100% - 32.5 * 1rem - 5 * 1rem);
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-inner .txt-wrap {
    width: 100%;
  }
}
.sec-recruit_intro .sec-inner .txt-wrap .sec-txt p.__name {
  text-align: end;
}
.sec-recruit_intro .sec-inner .txt-wrap .sec-txt p.__name span.__small {
  font-size: 0.8em;
  margin-right: 1.25em;
}
.sec-recruit_intro .sec-inner .img-wrap {
  width: 32.5rem;
  box-shadow: 2px 2px 6px rgba(33, 52, 92, 0.1);
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-inner .img-wrap {
    width: 100%;
    aspect-ratio: 4/3;
    margin-top: 3em;
  }
}

.sec-recruit_schedule .sec-ttl {
  position: sticky;
  left: 0;
  height: -moz-max-content;
  height: max-content;
}
@media screen and (max-width: 767px) {
  .sec-recruit_schedule .sec-ttl {
    position: relative;
    top: 0 !important;
  }
}
.sec-recruit_schedule .sec-content {
  padding-left: 0;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 50px;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item:nth-of-type(1) {
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item {
    padding-top: 36px;
  }
  .sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item:nth-of-type(1) {
    padding-top: 20px;
  }
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  margin-left: 4px;
  width: 1px;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.6);
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-point::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background-color: #fff;
  transform: rotate(45deg);
  margin-top: 0.4em;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content {
  display: flex;
  align-items: center;
  width: calc(100% - 8px - 5 * 1rem);
  padding-bottom: 56px;
  border-bottom: solid 1px rgba(255, 255, 255, 0.6);
}
@media screen and (max-width: 991px) {
  .sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content {
    display: block;
    width: calc(100% - 8px - 40px);
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content {
    width: calc(100% - 8px - 20px);
    padding-bottom: 40px;
  }
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .txt-wrap {
  width: 100%;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .img-wrap {
  flex-shrink: 0;
  width: 22.5rem;
  margin-left: 4em;
}
@media screen and (max-width: 991px) {
  .sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .img-wrap {
    width: 100%;
    margin-left: 0;
    margin-top: 2em;
  }
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .item-info {
  display: flex;
  align-items: center;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .item-info span {
  display: block;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .item-info span.__time {
  font-weight: 600;
  margin-right: 1em;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .item-txt {
  margin-top: 0.8em;
}
.sec-recruit_schedule .sec-content .schedule-list ul .schedule-list-item .item-content .item-txt p {
  margin-top: 0.6em;
}
.sec-recruit_schedule .note-txt {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-top: 3em;
}
@media screen and (max-width: 767px) {
  .sec-recruit_schedule .note-txt {
    margin-left: 0;
  }
}

.sec-recruit_benefit .benefit-list ul {
  display: flex;
  flex-wrap: wrap;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item {
  width: calc(33.3333333333% - 7.5 * 1rem * 2 / 3);
  margin-top: 5rem;
  margin-right: 7.5rem;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item {
    width: calc(50% - 2em);
    margin-top: 4em;
    margin-right: 4em;
  }
  .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(3n) {
    margin-right: 4em;
  }
  .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item {
    width: 100%;
    margin-right: 0;
    margin-top: 3em;
  }
  .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(3n) {
    margin-right: 0;
  }
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-name h4 {
  color: #21345c;
  font-size: 2rem;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-name h4 {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-name h4 {
    font-size: 1.25em;
  }
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-txt {
  margin-top: 0.4em;
}

.sec-recruit_faq .qa-list {
  margin-top: 2em;
}
.sec-recruit_faq .qa-list dl {
  padding: 3em 0;
  border-bottom: solid 1px rgba(19, 30, 54, 0.4);
}
.sec-recruit_faq .qa-list dl:nth-of-type(1) {
  border-top: solid 1px rgba(19, 30, 54, 0.4);
}
.sec-recruit_faq .qa-list dl dt, .sec-recruit_faq .qa-list dl dd {
  display: flex;
  align-items: flex-start;
}
.sec-recruit_faq .qa-list dl dt .qa-icon, .sec-recruit_faq .qa-list dl dd .qa-icon {
  position: relative;
  width: 2em;
  aspect-ratio: 1/1;
  border: solid 1px #21345c;
  flex-shrink: 0;
  margin-right: 1em;
}
.sec-recruit_faq .qa-list dl dt .qa-icon span.__txt, .sec-recruit_faq .qa-list dl dd .qa-icon span.__txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top: -0.1em;
}
.sec-recruit_faq .qa-list dl dt .qa-txt, .sec-recruit_faq .qa-list dl dd .qa-txt {
  width: 100%;
}
.sec-recruit_faq .qa-list dl dt {
  font-weight: 600;
}
.sec-recruit_faq .qa-list dl dt .qa-icon {
  color: #fff;
  background-color: #21345c;
}
.sec-recruit_faq .qa-list dl dd {
  margin-top: 1em;
}
.sec-recruit_faq .qa-list dl dd .qa-icon {
  color: #21345c;
  background-color: transparent;
}

.sec-recruit_details .sec-content {
  padding-left: 2em;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_details .sec-content {
    padding-left: 0;
  }
}
.sec-recruit_details .job-list ul {
  display: flex;
}
.sec-recruit_details .job-list ul .job-list-item {
  cursor: pointer;
  color: #fff;
  background-color: rgba(103, 103, 103, 0.6);
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  padding: 0.6em 1.4em;
  width: calc(50% - 0.3em);
  margin-right: 0.6em;
}
.sec-recruit_details .job-list ul .job-list-item:nth-of-type(2n) {
  margin-right: 0;
}
.sec-recruit_details .job-list ul .job-list-item.__current {
  background-color: #21345c;
}
@media screen and (max-width: 767px) {
  .sec-recruit_details .job-list ul .job-list-item {
    font-size: 0.9em;
  }
}
.sec-recruit_details .job-detail-wrap {
  position: relative;
  background-color: #fff;
}
.sec-recruit_details .job-detail-wrap .job-detail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  z-index: 0;
  padding: 5rem 5rem;
  pointer-events: none;
  transition: all 0.4s ease;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_details .job-detail-wrap .job-detail {
    padding: 60px 60px;
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_details .job-detail-wrap .job-detail {
    padding: 40px 40px;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_details .job-detail-wrap .job-detail {
    padding: 16px 16px;
  }
}
.sec-recruit_details .job-detail-wrap .job-detail.__visible {
  opacity: 1;
  z-index: 1;
  pointer-events: auto;
}

.sec-recruit_flow .sec-inner {
  position: relative;
}
.sec-recruit_flow .sec-inner .sec-ttl {
  position: sticky;
  left: 0;
  height: -moz-max-content;
  height: max-content;
}
@media screen and (max-width: 767px) {
  .sec-recruit_flow .sec-inner .sec-ttl {
    position: relative;
    top: 0 !important;
  }
}
.sec-recruit_flow .sec-inner .sec-content {
  border-left: solid 1px rgba(19, 30, 54, 0.2);
}
@media screen and (max-width: 767px) {
  .sec-recruit_flow .sec-inner .sec-content {
    border-left: none;
  }
}/*# sourceMappingURL=sub.css.map */