.a_ArrowIcon {
  margin-inline-start: .5rem;
  display: inline-block;
  position: relative;
  width: .9rem;
  height: 1rem;
  transition: transform .6s ease-out
}

.a_ArrowIcon:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: .9rem;
  height: 2px;
  background: #d70027;
  border-radius: .1rem;
  transform: translate(0, -50%)
}

.a_ArrowIcon:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: .9rem;
  height: .9rem;
  border-top: .2rem solid #d70027;
  border-right: .2rem solid #d70027;
  border-radius: .1rem;
  transform: translate(0, -50%) rotate(45deg)
}

.a_ArrowText {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .034em
}

.o_Header_modal .a_ArrowText {
  font-size: 1.2rem;
  font-weight: 400
}

.p_Top_list .a_ArrowText {
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .p_Top_list .a_ArrowText {
    font-size: 1.4rem
  }
}

.m_EventCard .a_ArrowText, .m_PositionCard .a_ArrowText {
  justify-content: flex-end;
  color: #d70027;
  font-weight: 700;
  letter-spacing: .034em
}

@media screen and (max-width: 767px) {
  .p_Event_main .a_ArrowText {
    justify-content: flex-start
  }
}

@media screen and (max-width: 767px) {
  .p_Event_regular .a_ArrowText, .p_Library_eventList .a_ArrowText {
    margin-block-start: 1rem;
    padding-block-start: 1rem;
    border-top: .1rem solid #dedede;
    font-size: 1rem
  }
}

.p_Career_event .a_ArrowText {
  display: none
}

@media screen and (max-width: 767px) {
  .o_Header .a_ArrowText, .o_Footer .a_ArrowText {
    font-size: 1.2rem;
    font-weight: 400
  }
}

.o_Footer_link>.a_ArrowText {
  width: 98%;
  display: flex;
  justify-content: space-between;
  font-size: 1.4rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_Header_modalBlock>.o_Header_modalSubLink>.a_ArrowText {
    display: flex;
    justify-content: space-between;
    width: 100%;
    font-weight: 600;
    font-size: 1.4rem
  }
}

.a_CareerTtl {
  padding-block-end: 2rem;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #707070;
  font-size: 3.6rem;
  line-height: 1;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, serif;
  font-weight: 600;
  transition: all .8s cubic-bezier(0.18, 0.06, 0.23, 1) 0s;
  transition-property: opacity, clip-path;
  will-change: opacity, clip-path
}

@media screen and (max-width: 767px) {
  .a_CareerTtl {
    padding-block-end: 2rem;
    font-size: 2.8rem
  }
}

.a_CareerTtl_TtlJp {
  margin-inline-start: 1rem;
  font-size: 1.4rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .a_CareerTtl_TtlJp {
    font-size: 1.2rem
  }
}

.a_FilterBtn_item {
  margin-block: .8rem;
  margin-inline-end: 1rem
}

@media screen and (max-width: 767px) {
  .a_FilterBtn_item {
    margin-block: .8rem 0
  }
}

.a_FilterBtn_link {
  padding: 1rem 1.5rem;
  display: inline-block;
  border: .1rem solid #dedede;
  border-radius: 2.3rem;
  font-size: 1.5rem;
  transition: background .3s ease-out, color .3s ease-out
}

@media screen and (min-width: 768px) {
  .a_FilterBtn_link:hover {
    background: #d70027;
    color: #fff;
    border: .1rem solid rgba(0, 0, 0, 0)
  }
}

@media screen and (max-width: 767px) {
  .a_FilterBtn_link {
    padding: .5rem 1rem;
    font-size: 1.2rem
  }
}

.a_InputTxt {
  margin-inline: auto
}

@media screen and (max-width: 767px) {
  .o_Header_nav .a_InputTxt {
    display: none
  }
}

.a_InputTxt_wrap {
  position: relative;
  max-width: 48.8rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .a_InputTxt_wrap {
    max-width: none
  }
}

.o_Header_nav .a_InputTxt_wrap {
  max-width: 34.5rem
}

@media screen and (max-width: 767px) {
  .o_FilterSec_input .a_InputTxt_wrap {
    max-width: none
  }
}

.a_InputTxt_wrap:before {
  content: "";
  position: absolute;
  top: 50%;
  background: url("../img/sidebar/search_icon.webp") no-repeat center center/cover;
  right: 2rem;
  width: 2.4rem;
  height: 2.4rem;
  transform: translate(0, -50%);
  z-index: 1
}

.no-webp .a_InputTxt_wrap:before {
  background: url("../img/sidebar/search_icon.png") no-repeat center center/cover
}

.o_Header_nav .a_InputTxt_wrap:before, .o_Header_modal .a_InputTxt_wrap:before {
  right: 1rem;
  width: 1.4rem;
  height: 1.4rem
}

@media screen and (max-width: 767px) {
  .a_InputTxt_wrap.o_FilterSec_input:before {
    right: 1.5rem;
    width: 1.7rem;
    height: 1.7rem
  }
}

.a_InputTxt-column {
  display: flex
}

.a_InputTxt_input {
  padding: 1.5rem 2rem;
  position: relative;
  background: #fff;
  border: .1rem solid #ccc;
  border-radius: .3rem;
  width: 100%;
  font-size: 1.8rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .a_InputTxt_input {
    padding: 1rem 2rem;
    font-size: 1.2rem
  }
}

.o_Header_nav .a_InputTxt_input {
  padding: 0 1rem;
  width: 34.5rem;
  font-size: 1.4rem
}

.p_Search_contentArea .a_InputTxt_input, .o_Sidebar_InputTxtWrap .a_InputTxt_input {
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .p_Search_contentArea .a_InputTxt_input, .o_Sidebar_InputTxtWrap .a_InputTxt_input {
    font-size: 1.2rem
  }
}

.o_Header_modal .a_InputTxt_input {
  padding: 1rem 2rem;
  font-size: 1.2rem;
  width: 100%
}

.a_InputTxt_input:-ms-input-placeholder {
  color: #9e9ea7
}

.a_InputTxt_input::placeholder {
  color: #9e9ea7
}

@media screen and (max-width: 767px) {
  .o_FilterSec_input .a_InputTxt_input {
    padding: 1rem 1.5rem;
    max-width: none;
    box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
    border: none;
    font-size: 1.2rem
  }
}

.a_ReadMore {
  padding: 2rem 12rem;
  border: 1px solid #3e3a39;
  transition: color .4s ease-out, background .4s ease-out, border .4s ease-out;
  font-size: 1.8rem;
  letter-spacing: .03em
}

@media screen and (max-width: 767px) {
  .a_ReadMore {
    padding: 1rem 5rem;
    font-size: 1.6rem;
    width: 100%
  }
}

@media screen and (min-width: 768px) {
  .a_ReadMore:hover {
    border: 1px solid #d70027;
    background: #d70027;
    color: #fff
  }
}

.a_Tag {
  padding: 3px 10px;
  position: relative;
  display: block;
  min-height: 2.5rem;
  height: 100%;
  border: 1px solid #dedede;
  border-radius: .2rem;
  font-size: 1.2rem;
  color: #d70027;
  font-weight: 400;
  z-index: 2;
  transition: background .2s ease-out, border .2s ease-out, color .2s ease-out
}

.a_Tag.selected {
  background: #d70027;
  border: 1px solid #d70027;
  color: #fff
}

@media screen and (min-width: 768px) {
  .a_Tag:hover {
    background: #d70027;
    border: 1px solid #d70027;
    color: #fff
  }
}

.p_Library_divTagWrap .a_Tag {
  font-size: 1rem
}

.recommend_event .a_Tag {
  background: #d70027;
  border: 1px solid #d70027;
  color: #fff
}

.m_BaseCard {
  background: #fff;
  width: 100%;
  position: relative
}

.m_BaseCard.half {
  width: calc(50% - 1.4rem)
}

@media screen and (max-width: 767px) {
  .m_BaseCard.half {
    width: 100%
  }
}

.m_BaseCard_ttl {
  margin-block-start: .5rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 1.8rem;
  font-weight: 600;
  transition: color .4s ease-out
}

@media screen and (max-width: 767px) {
  .m_BaseCard_ttl {
    -webkit-line-clamp: 3;
    font-size: 1.4rem
  }
}

.m_BaseCard_link {
  padding: 1.5rem;
  display: block;
  height: 100%;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out;
  z-index: 1
}

@media screen and (min-width: 768px) {
  .m_BaseCard_link:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .m_BaseCard_link:hover .m_BaseCard_ttl {
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .m_BaseCard_link {
    padding: 1.6rem
  }
}

.m_BaseCard_content {
  display: flex;
  align-items: flex-start;
  height: 100%
}

.m_BaseCard_img {
  max-width: 18rem;
  width: 100%;
  aspect-ratio: 132/107
}

.m_BaseCard_img img {
  object-fit: cover;
  height: 100%
}

@media screen and (max-width: 767px) {
  .m_BaseCard_img {
    max-width: 14.4rem;
    aspect-ratio: 72/43
  }
}

.m_BaseCard_cat {
  position: relative;
  z-index: 2;
  font-size: 1.2rem;
  color: #bbb;
  font-weight: 500;
  line-height: 1.2
}

.m_BaseCard_cat a {
  color: #bbb;
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .m_BaseCard_cat a:hover {
    opacity: .6
  }
}

.m_BaseCard_txtArea {
  margin-inline-start: 1.5rem;
  width: calc(100% - 18rem)
}

@media screen and (max-width: 767px) {
  .m_BaseCard_txtArea {
    margin-inline-start: 1rem;
    width: calc(100% - 14.4rem)
  }
}

.m_BaseCard_txt {
  margin-block-start: 1.5rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 1.6rem;
  font-weight: 400
}

.library .m_BaseCard_txt {
  display: none
}

@media screen and (max-width: 767px) {
  .m_BaseCard_txt {
    -webkit-line-clamp: 2;
    font-size: 1.2rem
  }
}

.m_BaseCard_TagListWrap {
  margin-block-start: 1rem
}

.m_BaseCard_link_ol {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.p_Career_pickup .m_BaseCard:first-child {
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child .m_BaseCard {
    aspect-ratio: auto
  }
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child .m_BaseCard_txtArea {
    margin: 0;
    width: 100%
  }
}

.p_Career_pickup .m_BaseCard:first-child .m_BaseCard_cat {
  font-size: 1.4rem
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child .m_BaseCard_cat {
    margin-block-start: 1.6rem
  }
}

.p_Career_pickup .m_BaseCard:first-child .m_BaseCard_ttl {
  margin-block-start: 1rem
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child .m_BaseCard_ttl {
    font-size: 1.6rem;
    -webkit-line-clamp: 2
  }
}

.p_Career_pickup .m_BaseCard:first-child .m_BaseCard_img {
  max-width: 27rem
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child .m_BaseCard_img {
    max-width: none
  }
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child .m_BaseCard_content {
    display: flex;
    flex-direction: column
  }
}

.p_Career_pickup .m_BaseCard:first-child.page .m_BaseCard_img, .p_Career_pickup .m_BaseCard:first-child.group .m_BaseCard_img {
  max-width: 27rem
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child.page .m_BaseCard_img, .p_Career_pickup .m_BaseCard:first-child.group .m_BaseCard_img {
    max-width: none
  }
}

.p_Career_pickup .m_BaseCard:first-child.library .m_BaseCard_txt {
  display: block
}

.p_Career_pickup .m_BaseCard:first-child.library .m_BaseCard_txt.u-pcWeb {
  display: -webkit-box
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child.library .m_BaseCard_txt.u-pcWeb {
    display: none
  }
}

.p_Career_pickup .m_BaseCard:first-child.library .m_BaseCard_txt.u-spDb {
  display: none
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_BaseCard:first-child.library .m_BaseCard_txt.u-spDb {
    display: block
  }
}

.m_EventCard {
  background: #fff;
  width: 100%;
  position: relative
}

.m_EventCard.half {
  width: calc(50% - 1.4rem)
}

@media screen and (max-width: 767px) {
  .m_EventCard.half {
    width: 100%
  }
}

.m_EventCard_link {
  padding: 1.5rem 1.5rem 4.5rem 1.5rem;
  position: relative;
  display: inline-block;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  width: 100%;
  height: 100%;
  transition: box-shadow .4s ease-out
}

.p_Career_event .m_EventCard_link {
  padding: 1.5rem 1.5rem 1.5rem 1.5rem
}

@media screen and (max-width: 767px) {
  .m_EventCard_link {
    padding: 1.5rem
  }
}

.all .m_EventCard_link {
  padding: 2rem 2rem 4.5rem 2rem
}

@media screen and (max-width: 767px) {
  .all .m_EventCard_link {
    padding: 1.5rem
  }
}

@media screen and (min-width: 768px) {
  .m_EventCard_link:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .m_EventCard_link:hover .m_EventCard_ttl {
    color: #d70027
  }
}

.m_EventCard_link_ol {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.m_EventCard_content {
  display: flex;
  align-items: flex-start
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_content {
    flex-direction: column
  }
}

.m_EventCard_img {
  max-width: 18rem;
  width: 100%;
  aspect-ratio: 115/107;
}

@media screen and (max-width: 767px) {
  .m_EventCard_img {
    max-width: 13.8rem;
    aspect-ratio: 72/43
  }
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_img {
    max-width: none
  }
}

.column_listWrap .m_EventCard_img {
  margin-block-start: 0
}

.m_EventCard_UpperTagListWrap {
  margin-block-end: 1rem
}

@media screen and (max-width: 767px) {
  .m_EventCard_UpperTagListWrap {
    display: none
  }
}

.p_Career_event .m_EventCard_UpperTagListWrap, .p_Event_regular .m_EventCard_UpperTagListWrap {
  display: none
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_UpperTagListWrap {
    margin-block: 1.5rem 1rem
  }
}

.m_EventCard_TagListWrap {
  margin-block-start: 1.5rem
}

.m_EventCard_TagListWrap.upper {
  display: none
}

.p_Event_main .m_EventCard_TagListWrap, .p_Event_regular .m_EventCard_TagListWrap, .relation .m_EventCard_TagListWrap, .column_listWrap .m_EventCard_TagListWrap {
  display: none
}

.p_Event_main .m_EventCard_TagListWrap.upper, .column_listWrap .m_EventCard_TagListWrap.upper {
  margin-block-start: 0;
  display: block
}

.m_EventCard_ttl {
  font-size: 1.8rem;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  transition: color .4s ease-out
}

.all .m_EventCard_ttl {
  font-size: 2rem
}

@media screen and (max-width: 767px) {
  .all .m_EventCard_ttl {
    font-size: 1.4rem
  }
}

@media screen and (max-width: 767px) {
  .m_EventCard_ttl {
    font-size: 1.4rem
  }
}

.column_listWrap .m_EventCard_ttl {
  margin-block-start: 1rem
}

.m_EventCard_subTtl {
  margin-block-end: 1rem;
  font-size: 1.4rem;
  color: #d70027;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .m_EventCard_subTtl {
    margin-block-end: .5rem;
    font-size: 1rem
  }
}

.p_Career_event .m_EventCard_subTtl, .p_Event_main .m_EventCard_subTtl, .p_Library_eventList .m_EventCard_subTtl, .column_listWrap .m_EventCard_subTtl {
  display: none
}

.m_EventCard_txtArea {
  margin-inline-start: 1.5rem;
  width: calc(100% - 22.5rem)
}

@media screen and (max-width: 767px) {
  .m_EventCard_txtArea {
    width: calc(100% - 13.8rem)
  }
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_txtArea {
    margin-block-start: 1.5rem;
    margin-inline-start: 0;
    width: 100%
  }
}

.m_EventCard_block {
  margin-block-start: .5rem;
  display: flex;
  align-items: flex-start
}

@media screen and (max-width: 767px) {
  .m_EventCard_block {
    margin-block-start: 0rem
  }
}

.m_EventCard_block:first-child {
  margin-block-start: 0
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_block {
    display: none
  }
}

.m_EventCard_blockWrap {
  margin-block-start: 1rem
}

@media screen and (max-width: 767px) {
  .m_EventCard_blockWrap {
    margin-block-start: .5rem
  }
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_blockWrap {
    display: none
  }
}

.m_EventCard_head {
  margin-inline-end: 1rem;
  padding: .5rem;
  display: inline-block;
  background: #3e3a39;
  font-size: 1rem;
  color: #fff;
  font-weight: 600;
  line-height: 1;
  flex-shrink: 0
}

@media screen and (max-width: 767px) {
  .m_EventCard_head {
    display: none;
    font-size: 1rem
  }
}

.m_EventCard_name {
  font-size: 1.2rem;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .m_EventCard_name {
    font-size: 1rem
  }
}

.m_EventCard_ArrowTextWrap {
  position: absolute;
  bottom: 1.5rem;
  right: 2rem;
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .m_EventCard_ArrowTextWrap {
    position: static
  }
}

@media screen and (max-width: 767px) {
  .p_Event_main .m_EventCard_ArrowTextWrap {
    margin-block-start: 2rem
  }
}

.p_Career_pickup .m_EventCard:first-child {
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_EventCard:first-child .m_EventCard_txtArea {
    margin: 1rem 0 0 0;
    width: 100%
  }
}

.p_Career_pickup .m_EventCard:first-child .m_EventCard_img {
  max-width: 27rem
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_EventCard:first-child .m_EventCard_img {
    max-width: none;
    aspect-ratio: auto
  }
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_EventCard:first-child .m_EventCard_content {
    flex-direction: column
  }
}

.m_EventRecruitCard {
  background: #fff;
  width: 100%
}

.m_EventRecruitCard.half {
  width: calc(50% - 1.4rem)
}

@media screen and (max-width: 767px) {
  .m_EventRecruitCard.half {
    width: 100%
  }
}

.m_EventRecruitCard_link {
  padding: 2rem 2rem 1.5rem 2rem;
  display: inline-block;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  width: 100%;
  height: 100%;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .m_EventRecruitCard_link:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .m_EventRecruitCard_link:hover .m_EventRecruitCard_ttl {
    color: #d70027
  }
}

.m_EventRecruitCard_content {
  display: flex
}

.m_EventRecruitCard_thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 17.9rem;
  width: 100%;
  max-width: 17.9rem;
  min-height: 5.5rem;
  background: #d70027;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff
}

@media screen and (max-width: 767px) {
  .m_EventRecruitCard_thumb {
    max-width: 13.8rem;
    font-size: 1.4rem
  }
}

.m_EventRecruitCard_ttl {
  font-size: 1.8rem;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  transition: color .4s ease-out
}

@media screen and (max-width: 767px) {
  .m_EventRecruitCard_ttl {
    font-size: 1.4rem
  }
}

.m_EventRecruitCard_txtArea {
  margin-inline-start: 1.5rem;
  width: calc(100% - 22.5rem)
}

@media screen and (max-width: 767px) {
  .m_EventRecruitCard_txtArea {
    width: calc(100% - 13.8rem)
  }
}

.m_EventRecruitCard_block {
  margin-block-start: 1rem;
  display: flex;
  align-items: center
}

.m_EventRecruitCard_block:first-child {
  margin-block-start: 0
}

.m_EventRecruitCard_head {
  margin-inline-end: 1rem;
  padding: .5rem 1rem;
  display: inline-block;
  background: #3e3a39;
  font-size: 1.2rem;
  color: #fff;
  font-weight: 600;
  line-height: 1
}

.m_EventRecruitCard_name {
  font-size: 1.4rem;
  font-weight: 500
}

.m_EventRecruitCard_TagListWrap {
  margin-block-start: 1rem
}

.m_PositionCard {
  background: #fff;
  width: 100%;
  position: relative
}

.m_PositionCard.half {
  width: calc(50% - 1.4rem)
}

@media screen and (max-width: 767px) {
  .m_PositionCard.half {
    width: 100%
  }
}

.m_PositionCard_link {
  padding: 2rem 2rem 1.5rem 2rem;
  display: inline-block;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  width: 100%;
  height: 100%;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .m_PositionCard_link:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .m_PositionCard_link:hover .m_PositionCard_ttl {
    color: #d70027
  }
}

.m_PositionCard_link_ol {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.m_PositionCard_content {
  display: flex
}

.m_PositionCard_thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 17.9rem;
  max-height: 6rem;
  width: 100%;
  background: #d70027;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  margin-block-start: 0 !important
}

@media screen and (max-width: 767px) {
  .m_PositionCard_thumb {
    max-width: 13.8rem;
    max-height: 5.8rem;
    font-size: 1.4rem;
    aspect-ratio: 72/43
  }
}

.m_PositionCard_ttl {
  font-size: 1.8rem !important;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  transition: color .4s ease-out;
  margin-block-start: 0 !important
}

@media screen and (max-width: 767px) {
  .m_PositionCard_ttl {
    font-size: 1.4rem !important
  }
}

.m_PositionCard_txtArea {
  margin-inline-start: 1.5rem;
  width: calc(100% - 22.5rem)
}

@media screen and (max-width: 767px) {
  .m_PositionCard_txtArea {
    width: calc(100% - 13.8rem)
  }
}

.m_PositionCard_block {
  margin-block-start: 1rem;
  display: flex;
  align-items: center
}

.m_PositionCard_block:first-child {
  margin-block-start: 0
}

.m_PositionCard_head {
  margin-inline-end: 1rem;
  padding: .5rem 1rem;
  display: inline-block;
  background: #3e3a39;
  font-size: 1.2rem;
  color: #fff;
  font-weight: 600;
  line-height: 1
}

.m_PositionCard_name {
  font-size: 1.4rem;
  font-weight: 500
}

.m_PositionCard_TagListWrap {
  margin-block-start: 1rem
}

.p_Career_pickup .m_PositionCard:first-child {
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_PositionCard:first-child .m_PositionCard_txtArea {
    margin: 1rem 0 0 0;
    width: 100%
  }
}

.p_Career_pickup .m_PositionCard:first-child .m_PositionCard_thumb {
  max-width: 27rem
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_PositionCard:first-child .m_PositionCard_thumb {
    max-width: none;
    max-height: none;
    aspect-ratio: 5/1
  }
}

@media screen and (max-width: 767px) {
  .p_Career_pickup .m_PositionCard:first-child .m_PositionCard_content {
    flex-direction: column
  }
}

.m_PostDetailCard {
  background: #fff;
  width: 100%;
  position: relative
}

.m_PostDetailCard.half {
  width: calc(50% - 1.4rem)
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard.half {
    width: 100%
  }
}

.m_PostDetailCard_ttl {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: 2rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard_ttl {
    -webkit-line-clamp: 3;
    font-size: 1.4rem
  }
}

.m_PostDetailCard_link {
  padding: 1.5rem;
  display: block;
  border: .1rem solid #dedede;
  transition: border .4s ease-out
}

@media screen and (min-width: 768px) {
  .m_PostDetailCard_link:hover {
    border: .1rem solid #d70027
  }
  .m_PostDetailCard_link:hover .a_ArrowIcon {
    transform: scale(1.2)
  }
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard_link {
    padding: 1rem 1rem 3.5rem
  }
}

.m_PostDetailCard_link_ol {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.m_PostDetailCard_content {
  padding-block-end: 2rem;
  display: flex
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard_content {
    padding-block-end: 0
  }
}

.m_PostDetailCard_img {
  position: relative;
  max-width: 18rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard_img {
    max-width: 14.4rem
  }
}

.m_PostDetailCard_cat {
  font-size: 1.2rem;
  color: #bbb;
  font-weight: 500;
  line-height: 1.2
}

.m_PostDetailCard_cat a {
  position: relative;
  z-index: 2;
  color: #bbb;
  transition: opacity .2s ease-out
}

.o_ContentArea .m_PostDetailCard_cat a {
  border: none;
  color: #bbb
}

@media screen and (min-width: 768px) {
  .m_PostDetailCard_cat a:hover {
    opacity: .6
  }
}

.m_PostDetailCard_txtArea {
  margin-inline-start: 1.5rem;
  width: calc(100% - 18rem)
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard_txtArea {
    width: calc(100% - 14.4rem)
  }
}

.m_PostDetailCard_txt {
  margin-block-start: 1.5rem;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 1.6rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard_txt {
    -webkit-line-clamp: 2;
    font-size: 1.2rem
  }
}

.m_PostDetailCard_TagListWrap {
  margin-block-start: 1rem
}

.m_PostDetailCard_ArrowTextWrap {
  position: absolute;
  bottom: 1.4rem;
  right: 1.4rem
}

.m_PostDetailCard .a_ArrowText {
  color: #d70027
}

.m_PostDetailCard .a_ArrowIcon {
  transition: transform .4s ease-out
}

@media screen and (max-width: 767px) {
  .m_PostDetailCard .a_ArrowIcon {
    font-size: 1.1rem
  }
}

.o_FixedBottom {
  padding: 1.2rem 0;
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  width: 100%;
  z-index: 1000
}

@media screen and (max-width: 767px) {
  .o_FixedBottom {
    padding: 1rem 1.5rem;
    justify-content: center
  }
}

.o_FixedBottom_linkArea {
  display: flex;
  justify-content: center
}

.o_FixedBottom_recruit {
  padding: 2.5rem 14rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #006fb9;
    border-radius: 0.2rem;
    font-size: 3.5rem;
    color: #fff;
    letter-spacing: .03em;
    font-weight: 500;
    line-height: 1;
    transition: background .2s ease-out;
}

.o_FixedBottom_beginner {
    padding: 2.5rem 14rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ff69b4;
    border-radius: 0.2rem;
    font-size: 3.5rem;
    color: #fff;
    letter-spacing: .03em;
    font-weight: 500;
    line-height: 1;
    transition: background .2s ease-out;
}

@media screen and (max-width: 767px) {
  .o_FixedBottom_recruit {
    padding: 1rem 4rem;
    font-size: 1.4rem
  }
  .o_FixedBottom_beginner {
    padding: 1rem 4rem;
    font-size: 1.4rem
  }
}

@media screen and (min-width: 768px) {
  .o_FixedBottom_recruit:hover {
    background: #055f9b
  }
  .o_FixedBottom_beginner:hover {
    background: #ffb6c1
  }
}

.o_FixedBottom_event {
  margin-inline-start: 1.5rem;
  padding: 1.2rem 6rem;
  text-align: center;
  border: .1rem solid #707070;
  border-radius: .2rem;
  font-size: 2rem;
  color: #3e3a39;
  font-weight: 500;
  transition: color .2s ease-out
}

@media screen and (max-width: 767px) {
  .o_FixedBottom_event {
    margin-inline-start: .5rem;
    padding: 1rem;
    font-size: 1.4rem
  }
}

@media screen and (min-width: 768px) {
  .o_FixedBottom_event:hover {
    color: #d70027
  }
}

.o_FixedBottom_pageTop {
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 4rem;
  cursor: pointer;
  transform: translate(0, -50%);
  width: 3.4rem;
  height: 3.9rem
}

.o_FixedBottom_pageTop:before {
  content: "";
  position: absolute;
  background: url("../img/common/pageTop.webp") no-repeat center center/cover;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: background .2s ease-out
}

.no-webp .o_FixedBottom_pageTop:before {
  background: url("../img/common/pageTop.png") no-repeat center center/cover
}

@media screen and (min-width: 768px) {
  .o_FixedBottom_pageTop:hover:before {
    background: url("../img/common/pageTop_red.webp") no-repeat center center/cover
  }
  .no-webp .o_FixedBottom_pageTop:hover:before {
    background: url("../img/common/pageTop_red.png") no-repeat center center/cover
  }
}

@media screen and (max-width: 767px) {
  .o_FixedBottom_pageTop {
    right: 1.5rem;
    width: 1.5rem;
    height: 1.7rem
  }
}

.m_FilterList_item {
  padding-block-start: 5rem
}

.m_FilterList_item:first-child {
  padding-block-start: 7rem
}

@media screen and (max-width: 767px) {
  .m_FilterList_item:first-child {
    padding-block-start: 3rem
  }
}

@media screen and (max-width: 767px) {
  .m_FilterList_item {
    margin-block-start: 1rem;
    padding-block-start: 2rem;
    padding: 2rem 1.5rem 0
  }
}

.m_FilterList_listTtl {
  font-size: 2.2rem;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .m_FilterList_listTtl {
    font-size: 1.2rem
  }
}

.m_FilterList_subList {
  padding-block-start: 1.5rem;
  display: flex;
  flex-wrap: wrap
}

@media screen and (max-width: 767px) {
  .m_FilterList_subList {
    padding-block-start: 0
  }
}

.m_SearchCard {
  background: #fff;
  width: 100%;
  position: relative
}

.m_SearchCard_ttl {
  font-size: 1.6rem;
  font-weight: 600;
  transition: color .4s ease-out;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2
}

.m_SearchCard_ttl .search-highlight {
  background: #ff0
}

@media screen and (max-width: 767px) {
  .m_SearchCard_ttl {
    -webkit-line-clamp: 3;
    font-size: 1.4rem
  }
}

.m_SearchCard_link {
  padding: 1rem;
  display: block;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .m_SearchCard_link:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .m_SearchCard_link:hover .m_SearchCard_ttl {
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .m_SearchCard_link {
    padding: 1rem
  }
}

.m_SearchCard_link_ol {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.m_SearchCard_content {
  display: flex;
  align-items: flex-start
}

.m_SearchCard_img {
  max-width: 17.9rem;
  width: 100%;
  aspect-ratio: 40/21
}

@media screen and (max-width: 767px) {
  .m_SearchCard_img {
    max-width: 11.3rem
  }
}

.m_SearchCard_img img {
  object-fit: contain;
  width: 100%
}

.m_SearchCard_txtArea {
  margin-inline-start: 1.5rem;
  max-width: calc(100% - 17.9rem);
  width: 100%
}

@media screen and (max-width: 767px) {
  .m_SearchCard_txtArea {
    max-width: calc(100% - 11.3rem);
    width: 100%
  }
}

.m_SearchCard_txt {
  margin-block-start: 1rem;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  overflow: hidden;
  font-size: 1.2rem;
  color: #707070;
  font-weight: 400
}

.m_SearchCard_txt .search-highlight {
  background: #ff0
}

@media screen and (max-width: 767px) {
  .m_SearchCard_txt {
    margin-block-start: 1rem;
    -webkit-line-clamp: 2;
    font-size: 1.2rem
  }
}

.m_SpecialCard {
  background: #fff;
  width: 30%;
  position: relative
}

@media screen and (max-width: 767px) {
  .m_SpecialCard {
    width: 100%
  }
}

.m_SpecialCard.half {
  width: 50%
}

@media screen and (max-width: 767px) {
  .m_SpecialCard.half {
    width: 100%
  }
}

.m_SpecialCard_ttl {
  font-size: 1.6rem;
  font-weight: 600;
  transition: color .4s ease-out;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3
}

.m_SpecialCard_link {
  padding: 1.6rem;
  display: inline-block;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

.m_SpecialCard_link:hover {
  box-shadow: 0px 0px 2rem -1rem #3e3a39
}

.m_SpecialCard_link:hover .m_SpecialCard_ttl {
  color: #d70027
}

@media screen and (max-width: 767px) {
  .m_SpecialCard_link {
    padding: 1rem
  }
}

.m_SpecialCard_link_ol {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.m_SpecialCard_img img {
  aspect-ratio: 1.67;
  object-fit: cover
}

.m_SpecialCard_cat {
  font-size: 1.2rem;
  color: #bbb;
  font-weight: 500
}

.m_SpecialCard_txtArea {
  margin-block-start: -2rem;
  padding-block-start: 1rem;
  padding-inline-end: 1rem;
  width: calc(100% - 1.5rem);
  background: #fff;
  position: relative
}

.m_SpecialCard_TagListWrap {
  margin-block-start: 1rem
}

.m_SpecialCard.swiper-slide {
  transition: width .3s, transform .3s
}

.swiper-backface-hidden .m_SpecialCard.swiper-slide {
  transform: scale(0.9)
}

@media screen and (max-width: 767px) {
  .swiper-backface-hidden .m_SpecialCard.swiper-slide-active {
    transform: scale(1.05)
  }
}

.swiper-backface-hidden .m_SpecialCard.swiper-slide-next {
  transform: scale(1.2)
}

@media screen and (max-width: 767px) {
  .swiper-backface-hidden .m_SpecialCard.swiper-slide-next {
    transform: scale(0.95)
  }
}

.m_TagList {
  display: flex;
  flex-wrap: wrap;
  column-gap: .5rem;
  row-gap: .5rem
}

.m_TagList_item {
  display: inline-block
}

.m_EventCard_TagListWrap.upper .m_TagList_item:last-child {
  margin-block-end: 1rem
}

.column_listWrap .m_TagList_item.recommend_event {
  display: none
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-bottom-right {
  padding: 3rem !important;
  bottom: -30rem;
  animation: slideUp 1.5s ease-in-out forwards !important;
  box-shadow: -0.3rem -0.2rem 1.4rem #eaeaea
}

@media screen and (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-bottom-right {
    padding: 2rem 1.5rem 2.5rem !important;
    left: 50%;
    width: 91.8%;
    transform: translate(-50%, 0);
    animation: slideUpSP 1.5s ease-in-out forwards !important
  }
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close {
  display: none
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header {
  display: flex !important;
  justify-content: space-between
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
  display: flex;
  align-items: center;
  font-size: 1.8rem !important;
  font-weight: 600 !important
}

@media screen and (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
    padding: 0;
    font-size: 1.6rem !important
  }
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title::before {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  margin-inline-end: 1.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMjIsMkEyMCwyMCwwLDEsMCw0MiwyMiwyMC4wMDcsMjAuMDA3LDAsMCwwLDIyLDJabTAsMzNhMywzLDAsMCwxLTMtM2g2QTMsMywwLDAsMSwyMiwzNVptMTAtNUgxMlYyOGwyLTJWMjAuNzhjMC00LjI0LDIuMDYtNy44NCw2LTguNzhWMTFhMiwyLDAsMCwxLDQsMHYxYzMuOTQuOTQsNiw0LjU2LDYsOC43OFYyNmwyLDJaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMiAtMikiIGZpbGw9IiNhZjAwMjAiLz48L3N2Zz4=");
  background-size: contain;
  background-position: center
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message {
  margin: 0;
  font-size: 1.4rem;
  line-height: 1.7
}

@media screen and (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message {
    padding: 0;
    font-size: 1.2rem
  }
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a {
  padding-block-end: .1rem;
  border-bottom: .1rem solid #3b4043;
  font-weight: 700;
  transition: .2s opacity ease-in-out
}

@media screen and (min-width: 768px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a:hover {
    opacity: .6
  }
}

@media screen and (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a {
    font-size: 1.2rem
  }
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-accept {
  transition: background .2s ease-out
}

@media screen and (min-width: 768px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-accept:hover {
    background: #af0020
  }
}

@media screen and (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-accept {
    padding: .5rem;
    height: 3.4rem;
    font-size: 1.4rem
  }
}

#cmplz-manage-consent {
  display: none
}

@keyframes slideUp {
  100% {
    bottom: 8rem
  }
}

@keyframes slideUpSP {
  100% {
    bottom: 6rem
  }
}

.o_Breadcrumbs_list {
  padding-block: 2rem;
  display: flex;
  align-items: center;
  border-bottom: .1rem solid #d9dce3
}

@media screen and (max-width: 767px) {
  .o_Breadcrumbs_list {
    flex-wrap: wrap
  }
}

.o_Breadcrumbs_item {
  padding-inline-start: 1.5rem;
  position: relative;
  display: flex
}

.o_Breadcrumbs_item:before {
  content: "＞";
  position: absolute;
  top: 50%;
  left: 0;
  font-size: 1.4rem;
  color: #9e9ea7;
  font-weight: 400;
  transform: translate(0, -50%)
}

.o_Breadcrumbs_item:first-child {
  padding-inline-start: 2rem
}

.o_Breadcrumbs_item:first-child:before {
  content: "";
  background: url("../img/breadcrumbs/icon_home.webp") no-repeat center center/cover;
  width: 1.7rem;
  height: 1.5rem
}

.no-webp .o_Breadcrumbs_item:first-child:before {
  background: url("../img/breadcrumbs/icon_home.png") no-repeat center center/cover
}

.o_Breadcrumbs_item:last-child {
  font-size: 1.2rem;
  color: #d70027;
  font-weight: 500
}

.o_Breadcrumbs_link {
  display: inline-block;
  font-size: 1.2rem;
  color: #9e9ea7;
  font-weight: 400
}

.o_CareerMv {
  padding-block-start: 30%;
  inset-block-end: .2rem;
  position: relative;
  overflow: hidden;
  width: 100%
}

@media screen and (max-width: 767px) {
  .o_CareerMv {
    padding-block-start: 99.5%
  }
}

.o_CareerMv_inner {
  position: absolute;
  top: 0;
  left: 50%;
  height: 100%;
  transform: translate(-50%, 0);
  z-index: 1
}

.o_CareerMv_ttl {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%)
}

.o_CareerMv_ttlItem {
  margin-block-start: 1.5rem;
  padding: .5rem 1rem;
  display: inline-block;
  background: #fff;
  font-size: 2.8rem;
  letter-spacing: .01em;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, serif;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_CareerMv_ttlItem {
    font-size: 2.3rem
  }
}

.o_CareerMv_ttlItem:first-child {
  margin-block-start: 0
}

.o_CareerMv_tagArea {
  padding: 2rem;
  display: flex;
  position: absolute;
  bottom: 0;
  right: 0;
  background: #fff
}

@media screen and (max-width: 767px) {
  .o_CareerMv_tagArea {
    padding: 1.5rem 1rem;
    align-items: center;
    left: 1.5rem
  }
}

.o_CareerMv_tagListWrap {
  overflow: hidden;
  width: 65rem
}

@media screen and (max-width: 767px) {
  .o_CareerMv_tagListWrap {
    width: auto
  }
}

.o_CareerMv_tagList {
  display: flex;
  align-items: center;
  animation: marquee 20s linear infinite
}

.o_CareerMv_tagList:hover {
  animation-play-state: paused
}

.o_CareerMv_tagItem {
  margin-inline-start: 3.5rem;
  font-size: 0
}

.o_CareerMv_tagItem:first-child {
  margin-inline-start: 0
}

@media screen and (max-width: 767px) {
  .o_CareerMv_tagItem {
    margin-inline-start: 2rem
  }
}

.o_CareerMv_tagTxt {
  margin-inline-end: 2rem;
  padding-inline-end: 2rem;
  border-right: .1rem solid #3e3a39;
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .o_CareerMv_tagTxt {
    margin-inline-end: 1rem;
    padding-inline-end: 1rem;
    white-space: pre;
    font-size: 1.2rem
  }
}

.o_CareerMv_tagLink {
  position: relative;
  font-size: 1.6rem;
  white-space: pre
}

@media screen and (max-width: 767px) {
  .o_CareerMv_tagLink {
    font-size: 1rem;
    white-space: pre;
    line-height: 1
  }
}

.o_CareerMv_tagLink:before {
  content: "#";
  position: absolute;
  top: 50%;
  left: -1.2rem;
  transform: translate(0, -50%);
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .o_CareerMv_tagLink:before {
    font-size: 1rem;
    left: -1rem
  }
}

.o_CareerMv_videoArea {
  position: absolute;
  top: 0;
  left: 0
}

.o_CareerMv_video {
  width: 100%;
  height: 100%
}

@keyframes marquee {
  0% {
    transform: translate(100%, 0)
  }
  100% {
    transform: translate(-200%, 0)
  }
}

.o_CardList {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  row-gap: 1.5rem;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .o_CardList {
    flex-direction: column;
    column-gap: 1.5;
    row-gap: 1.5rem
  }
}

.o_ContentArea {
  background: #fff
}

.noMv .o_ContentArea {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .noMv .o_ContentArea {
    margin-block-start: 2rem
  }
}

.o_ContentArea h2, .o_ContentArea h3, .o_ContentArea h4, .o_ContentArea h5 {
  margin-block-start: 4rem
}

.o_ContentArea h2 {
  padding-inline-start: 1.5rem;
  position: relative;
  font-size: 2.4rem;
  font-weight: 700
}

.o_ContentArea h2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #d70027;
  border-radius: 2rem;
  width: .4rem;
  height: 100%
}

@media screen and (max-width: 767px) {
  .o_ContentArea h2 {
    font-size: 2rem
  }
}

.o_ContentArea h3 {
  font-size: 2.2rem;
  font-weight: 700
}

.o_ContentArea h4 {
  font-size: 2rem;
  font-weight: 700
}

.o_ContentArea h5 {
  font-size: 1.28rem;
  font-weight: 700
}

.o_ContentArea p {
  margin-block-start: 2.5rem;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .o_ContentArea p {
    margin-block-start: 2rem;
    line-height: 1.68
  }
}

.o_ContentArea p a {
  color: #d70027;
  border-bottom: .1rem solid #d70027
}

.o_ContentArea strong {
  font-weight: 700
}

.o_ContentArea picture, .o_ContentArea figure {
  margin-block-start: 4rem;
  display: block
}

@media screen and (max-width: 767px) {
  .o_ContentArea picture, .o_ContentArea figure {
    margin-block-start: 2rem
  }
}

.o_ContentArea mark {
  background: rgba(215, 0, 39, .2)
}

.o_ContentArea_content {
  padding: 2rem 2rem 4.5rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_content {
    padding: 2rem 1.5rem
  }
}

.p_Library .o_ContentArea_mv {
  margin-block-start: 0
}

.o_ContentArea_catList {
  display: flex;
  flex-wrap: wrap;
  column-gap: .5rem;
  row-gap: 1.5rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_catList {
    column-gap: 1rem;
    row-gap: 1rem
  }
}

.o_ContentArea_catLink {
  padding: .6rem .8rem;
  background: #d70027;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  transition: background .2s ease-out, color .2s ease-out;
  border: .2rem solid #d70027
}

@media screen and (min-width: 768px) {
  .o_ContentArea_catLink:hover {
    background: #fff;
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .o_ContentArea_catLink {
    padding: .5rem .8rem;
    font-size: 1.4rem
  }
}

.o_ContentArea_ttl {
  margin-block-start: 1.5rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.43;
  letter-spacing: .002em
}

@media screen and (max-width: 767px) {
  .o_ContentArea_ttl {
    margin-block-start: 1rem;
    font-size: 2.2rem
  }
}

.o_ContentArea_date {
  margin-block-start: 1rem;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.7
}

@media screen and (max-width: 767px) {
  .o_ContentArea_date {
    font-size: 1.2rem
  }
}

.o_ContentArea_tableOfContent {
  margin-block-start: 3rem;
  padding: 3rem 4rem 1.5rem;
  background: #f7f9fa
}

@media screen and (max-width: 767px) {
  .o_ContentArea_tableOfContent {
    margin-block-start: 2rem;
    padding: 1rem 1.5rem
  }
}

.o_ContentArea_tableOfContentTtl {
  text-align: center;
  font-size: 2.2rem;
  font-weight: 700
}

.o_ContentArea_content .o_ContentArea_tableOfContentTtl {
  margin-block-start: 0;
  padding-inline-start: 0
}

@media screen and (max-width: 767px) {
  .o_ContentArea_content .o_ContentArea_tableOfContentTtl {
    font-size: 1.6rem
  }
}

.o_ContentArea_content .o_ContentArea_tableOfContentTtl:before {
  content: none
}

.o_ContentArea_tableOfContentList {
  margin-block-start: 1rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_tableOfContentList {
    margin-block-start: 0
  }
}

.o_ContentArea_tableOfContentItem {
  border-bottom: .1rem solid #dedede
}

.o_ContentArea_tableOfContentLink {
  padding-block: 1.5rem;
  display: inline-block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  transition: color .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_ContentArea_tableOfContentLink:hover {
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .o_ContentArea_tableOfContentLink {
    padding-block: 1rem;
    font-size: 1.4rem;
    font-weight: 500
  }
}

.o_ContentArea_video {
  margin-block-start: 3.5rem;
  background: #ccc;
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 56.25%
}

.o_ContentArea_video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.o_ContentArea_content .o_ContentArea_tagTtl {
  padding: 0;
  font-size: 2rem;
  font-weight: 600
}

.o_ContentArea_content .o_ContentArea_tagTtl:before {
  content: none
}

@media screen and (max-width: 767px) {
  .o_ContentArea_content .o_ContentArea_tagTtl {
    font-size: 1.6rem
  }
}

.o_ContentArea_tagList {
  margin-block-start: 1.5rem;
  display: flex;
  flex-wrap: wrap
}

@media screen and (max-width: 767px) {
  .o_ContentArea_tagList {
    margin-block-start: 1rem
  }
}

.o_ContentArea_tagLink {
  margin: .5rem;
  padding: .5rem 1rem;
  display: inline-block;
  background: #dedede;
  border-radius: .2rem;
  font-size: 1.4rem;
  transition: background .2s ease-out, color .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_ContentArea_tagLink:hover {
    background: #d70027;
    color: #fff
  }
}

.o_ContentArea_timelineList {
  margin-block-start: 4.5rem;
  padding-block-end: 4rem
}

.o_ContentArea_timelineList p {
  margin-block-start: 0
}

.o_ContentArea_timelineItem {
  margin-block-start: 5rem;
  display: flex;
  position: relative
}

.o_ContentArea_timelineItem:first-child {
  margin-block-start: 0
}

.o_ContentArea_timelineItem:last-child:before {
  top: 3.5rem;
  opacity: .5
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineItem:last-child:before {
    top: 3rem
  }
}

.o_ContentArea_timelineItem:last-child .o_ContentArea_timelineIcon {
  margin-inline-start: 0;
  left: 0;
  width: 2.9rem;
  height: 2.9rem;
  border-radius: 1.45rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineItem:last-child .o_ContentArea_timelineIcon {
    left: .2rem;
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 1.05rem
  }
}

.o_ContentArea_timelineItem:last-child .o_ContentArea_timelineIcon:before {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: .85rem;
  background: #d70027
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineItem:last-child .o_ContentArea_timelineIcon:before {
    width: 1.3rem;
    height: 1.3rem;
    border-radius: .65rem
  }
}

.o_ContentArea_timelineItem:before {
  content: "";
  position: absolute;
  background: url("../img/career/environment/evaluation/step_border.webp") repeat-y center center/contain;
  width: .4rem;
  height: calc(100% + 2.5rem);
  top: 2.85rem;
  left: 1.25rem
}

.no-webp .o_ContentArea_timelineItem:before {
  background: url("../img/career/environment/evaluation/step_border.png") no-repeat center center/cover
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineItem:before {
    width: .2rem;
    top: 3rem;
    left: 1.1rem
  }
}

.o_ContentArea_timelineIcon {
  position: absolute;
  top: .7rem;
  left: .35rem;
  display: inline-block;
  width: 2.3rem;
  height: 2.3rem;
  border: .1rem solid #d70027;
  border-radius: 1.15rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineIcon {
    left: .4rem;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: .85rem
  }
}

.o_ContentArea_timelineIcon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: .55rem;
  background: #f2637d;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineIcon:before {
    width: .9rem;
    height: .9rem;
    border-radius: .45rem
  }
}

.o_ContentArea_timelineAgeWrap {
  display: flex;
  align-items: flex-start
}

.o_ContentArea_timelineAge {
  margin-inline-start: 5.5rem
}

.o_ContentArea_content .o_ContentArea_timelineAge {
  font-size: 2.2rem;
  color: #d70027;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .o_ContentArea_content .o_ContentArea_timelineAge {
    margin-inline-start: 3rem;
    font-size: 1.8rem
  }
}

.o_ContentArea_timelineTxtArea {
  margin-inline-start: 2rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_timelineTxtArea {
    margin-inline-start: 1rem;
    width: calc(100% - 9rem)
  }
}

.o_ContentArea_content .o_ContentArea_timelineTtl {
  font-size: 2rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_ContentArea_content .o_ContentArea_timelineTtl {
    font-size: 1.6rem
  }
}

.o_ContentArea_content .o_ContentArea_timelineTxt {
  font-size: 2rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .o_ContentArea_content .o_ContentArea_timelineTxt {
    font-size: 1.4rem
  }
}

.o_ContentArea_BaseCardWrap {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .o_ContentArea_BaseCardWrap {
    margin-block-start: 2rem
  }
}

.o_ContentArea .m_BaseCard_cat, .o_ContentArea .m_PostDetailCard_cat {
  margin-block-start: 0;
  font-size: 1.2rem
}

.o_ContentArea .m_BaseCard_ttl, .o_ContentArea .m_PostDetailCard_ttl {
  margin-block-start: 0
}

.o_ContentArea .m_BaseCard_img, .o_ContentArea .m_PostDetailCard_img {
  margin-block-start: 0
}

.o_ContentArea .m_BaseCard_cat {
  color: #bbb;
  font-weight: 500
}

.o_ContentArea .m_BaseCard_ttl {
  font-size: 1.8rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_ContentArea .m_BaseCard_ttl {
    font-size: 1.4rem
  }
}

.o_ContentArea .m_PostDetailCard_cat {
  font-size: 1.2rem
}

.o_ContentArea .m_PostDetailCard_ttl {
  font-size: 1.6rem
}

.o_FilterSec {
  padding: 10rem 7rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .o_FilterSec {
    padding: 0;
    background: rgba(0, 0, 0, 0)
  }
}

.o_FilterSec_ttl {
  font-size: 2.6rem;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .o_FilterSec_ttl {
    font-size: 1.6rem
  }
}

.o_FilterSec_form {
  margin-block-start: 4rem;
  display: flex
}

@media screen and (max-width: 767px) {
  .o_FilterSec_form {
    margin-block-start: 1.5rem
  }
}

.o_FilterSec_InputTxtWrap {
  max-width: 62.3rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .o_FilterSec_InputTxtWrap {
    max-width: none
  }
}

@media screen and (max-width: 767px) {
  .o_FilterSec_list {
    padding-block-end: 2rem;
    background: #fff
  }
}

.o_FilterSec_btn {
  margin-inline-start: 1rem;
  padding: 0 4.5rem;
  background: #d70027;
  border-radius: .3rem;
  font-size: 2rem;
  color: #fff;
  letter-spacing: .05em;
  font-weight: 700;
  transition: background .3s ease-out
}

@media screen and (min-width: 768px) {
  .o_FilterSec_btn:hover {
    background: #a80321
  }
}

@media screen and (max-width: 767px) {
  .o_FilterSec_btn {
    padding: 0 3rem;
    font-size: 1.4rem
  }
}

.o_Footer_list {
  padding-block: 12rem 8rem;
  display: flex;
  justify-content: space-between;
  border-bottom: .1rem solid #3e3a39
}

@media screen and (max-width: 767px) {
  .o_Footer_list {
    padding-block: 0;
    flex-direction: column;
    border-bottom: none
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_list>li {
    border-bottom: .1rem solid #dedede
  }
}

.o_Footer_list>li>a {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: .034em;
  transition: color .4s ease-in-out
}

@media screen and (max-width: 767px) {
  .o_Footer_list>li>a {
    padding: 2rem 0;
    display: block;
    width: 100%;
    height: 100%;
    text-align: left;
    font-size: 1.4rem
  }
}

@media screen and (min-width: 768px) {
  .o_Footer_list>li>a:hover {
    color: #d70027
  }
}

.o_Footer_list a[target=_blank] {
  background: #09f;
  color: #fff
}

.o_Footer_list .sub-menu {
  margin-block-start: 4rem;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: .01em
}

.o_Footer_list .sub-menu li {
  margin-block-start: 3.5rem
}

.o_Footer_list .sub-menu li:first-child {
  margin-block-start: 0
}

.o_Footer_list .sub-menu li a {
  padding-block-end: .2rem;
  display: inline-block;
  position: relative;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: .01em;
  line-height: 1;
  transition: opacity .4s ease-in-out
}

.o_Footer_list .sub-menu li a:before {
  content: "";
  position: absolute;
  bottom: -0.2rem;
  left: 0;
  width: 100%;
  height: .1rem;
  background: rgba(0, 0, 0, .6);
  opacity: 0;
  transition: opacity .4s ease-in-out
}

@media screen and (min-width: 768px) {
  .o_Footer_list .sub-menu li a:hover {
    opacity: .6
  }
  .o_Footer_list .sub-menu li a:hover:before {
    opacity: 1
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_item {
    padding: 0;
    border-bottom: .1rem solid #dedede
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_link, .o_Footer_txt {
    display: block;
    width: 100%;
    height: 100%;
    text-align: left
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_link {
    position: relative;
    padding: 2rem 0;
    font-size: 1.4rem;
    font-weight: 600
  }
}

.o_Footer_txt {
  font-size: 1.4rem
}

@media screen and (max-width: 767px) {
  .o_Footer_plus {
    position: absolute;
    width: .9rem;
    height: .9rem;
    top: 2.5rem;
    right: .5rem;
    transform: translate(0, 0)
  }
  .o_Footer_plus:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: .1rem;
    background: #9e9ea7;
    transform: translate(-50%, -50%)
  }
  .o_Footer_plus:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: .1rem;
    height: 100%;
    background: #9e9ea7;
    transform: translate(-50%, -50%)
  }
  [aria-expanded=true] .o_Footer_plus:after {
    content: none
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_subList {
    margin-block-start: 0;
    padding-block-end: 1.5rem
  }
  .o_Footer_subList[aria-hidden=false] {
    display: none
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_subItem {
    margin-block-start: 0
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_subLink {
    display: block;
    padding-block: .5rem
  }
}

.o_Footer_bottom {
  padding: 4rem 0 12rem;
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .o_Footer_bottom {
    padding: 0 0 7rem;
    flex-direction: column
  }
}

@media screen and (max-width: 767px) {
  .o_Footer_bottomText {
    margin-block-start: 2rem;
    display: inline-block;
    border-bottom: .1rem solid #3e3a39;
    font-size: 1.2rem;
    font-weight: 600
  }
}

.o_Footer_bottomList {
  display: flex
}

@media screen and (max-width: 767px) {
  .o_Footer_bottomList {
    margin-block-start: 3.2rem;
    max-width: 33rem;
    flex-wrap: wrap
  }
}

.o_Footer_bottomItem {
  margin-inline-start: 3.5rem
}

.o_Footer_bottomItem:first-child {
  margin-inline-start: 0
}

@media screen and (max-width: 767px) {
  .o_Footer_bottomItem {
    margin-inline-start: 3rem;
    margin-block-start: 1rem
  }
  .o_Footer_bottomItem:nth-child(4) {
    margin-inline-start: 0
  }
  .o_Footer_bottomItem:first-child, .o_Footer_bottomItem:nth-child(2), .o_Footer_bottomItem:nth-child(3) {
    margin-block-start: 0
  }
}

.o_Footer_bottomLink {
  position: relative;
  font-size: 1.2rem;
  font-weight: 400;
  transition: opacity .4s ease-in-out
}

.o_Footer_bottomLink:before {
  content: "";
  position: absolute;
  bottom: -0.2rem;
  left: 0;
  width: 112%;
  height: .1rem;
  background: rgba(0, 0, 0, .6);
  opacity: 0;
  transition: opacity .4s ease-in-out
}

.o_Footer_bottomLink.target_blank:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.2rem;
  width: .8rem;
  height: .8rem;
  transition: opacity .4s ease-in-out;
  transform: translate(0, -50%)
}

@media screen and (min-width: 768px) {
  .o_Footer_bottomLink:hover {
    opacity: .6
  }
  .o_Footer_bottomLink:hover:before {
    opacity: 1
  }
  .o_Footer_bottomLink:hover.target_blank:after {
    opacity: .6
  }
}

.o_Footer_bottomCopy {
  margin-block-start: 2rem;
  font-size: 1.2rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .o_Footer_bottomCopy {
    margin-block-start: 1rem
  }
}

.o_Footer_bottomLogo {
  display: inline-block;
  width: 18.1rem;
  transition: opacity .2s ease-out
}

@media screen and (max-width: 767px) {
  .o_Footer_bottomLogo {
    margin-block-start: 4rem;
    width: 13.1rem
  }
}

@media screen and (min-width: 768px) {
  .o_Footer_bottomLogo:hover {
    opacity: .7
  }
}

.o_Header.u-scrollHeader {
  left: 50%;
  background: #fff
}

.o_Header_inner {
  position: fixed;
  top: 0;
  left: 46%;
  width: 100%;
  z-index: 4;
  transform: translate(-50%, 0);
  transition: top .3s ease-out
}

.u-scrollHeader .o_Header_inner {
  background: #fff
}

.o_Header_inner[aria-hidden=true] {
  display: block;
  top: -7.8rem
}

@media screen and (max-width: 767px) {
  .o_Header_inner[aria-hidden=true] {
    top: -5.2rem
  }
}

.o_Header_content {
  display: flex;
  align-items: center;
  justify-content: space-between
}

.o_Header_content.l-content {
  background: rgba(0, 0, 0, 0)
}

.o_Header_link {
  padding: 1.5rem 2.5rem 2rem;
  display: flex;
  align-items: center;
  background: #fff;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_Header_link:hover {
    opacity: .7
  }
}

@media screen and (max-width: 767px) {
  .o_Header_link {
    padding: 1.5rem 1rem
  }
}

.o_Header_topLink {
  display: flex;
  align-items: center;
  background: #006fb9;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  transition: opacity .2s ease-out
}

.o_Header_topLink_career {
    display: flex;
    align-items: center;
    background: blanchedalmond;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    transition: opacity .2s ease-out;
}

@media screen and (min-width: 768px) {
  .o_Header_topLink:hover {
    opacity: .7
  }
}

.o_Header_logo {
  padding-inline-end: 1.5rem;
  border-right: 1px solid #3e3a39;
  line-height: 1
}


.career_font_color{
  color:#000 !important;
}


@media screen and (max-width: 767px) {
  .o_Header_logo {
    padding-inline-end: 1rem;
    font-size: 0
  }
}

.o_Header_topLogo {
  padding: 2rem 3rem;
  line-height: 1;
  background: #fff;
  border-bottom-left-radius: 1rem;
}

@media screen and (max-width: 767px) {
  .o_Header_topLogo {
    padding: 1.1rem 1.5rem
  }
}

.o_Header_img {
    display: inline-block;
    width: 19.9rem;
    font-size: 0;
}

@media screen and (max-width: 767px) {
  .o_Header_img {
    width: 15.3rem;
  }
}

.o_Header_txt {
  padding-inline-start: 1.5rem;
  font-size: 1.6rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_Header_txt {
    padding-inline-start: 1rem;
    font-size: 1.2rem
  }
}

.o_Header_topTxt {
  padding: 1.4rem 2rem;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 600
}

.o_Header_topTxt_career {
    padding: 1.4rem 2rem;
    font-size: 1.6rem;
    color: #363636;
    font-weight: 600;
}

@media screen and (max-width: 767px) {
  .o_Header_topTxt {
    padding: 1.5rem;
    font-size: 1.6rem
  }
}

.o_Header_nav {
  padding: .5rem 1.5rem;
  display: flex;
  align-items: center;
  background-color: rgba(0, 0, 0, .2);
  z-index: 3;
  border-radius: .2rem
}

.u-scrollHeader .o_Header_nav {
  background: none
}

@media screen and (max-width: 767px) {
  .o_Header_nav {
    padding: .8rem 1.4rem
  }
}

.o_Header_searchArea {
  display: flex;
  align-items: center
}

.o_Header_searchIcon {
  position: relative;
  width: 1.9rem;
  transition: opacity .2s ease-out;
  line-height: 1
}

@media screen and (min-width: 768px) {
  .o_Header_searchIcon:hover {
    opacity: .7
  }
}

@media screen and (max-width: 767px) {
  .o_Header_searchIcon {
    display: none
  }
}

@media screen and (max-width: 767px) {
  .o_Header .o_Header_searchIcon {
    display: none
  }
}

.u-scrollHeader .o_Header_searchIcon {
  display: none
}

.o_Header_menu {
  margin-inline-start: 3.5rem;
  position: relative;
  width: 2rem;
  height: 1.5rem;
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_Header_menu:hover {
    opacity: .7
  }
}

@media screen and (max-width: 767px) {
  .o_Header_menu {
    margin-inline-start: 0;
    width: 2.2rem;
    height: 1.8rem
  }
}

.o_Header_menu:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -1.8rem;
  width: .1rem;
  height: 123%;
  background: #fff;
  transform: translate(0, -50%)
}

.u-scrollHeader .o_Header_menu:before {
  content: none
}

@media screen and (max-width: 767px) {
  .o_Header_menu:before {
    display: none
  }
}

.o_Header_menuLine {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: .2rem;
  background: #fff;
  transition: bottom .2s ease-out, top .2s ease-out, height .2s ease-out, transform .2s ease-out
}

.u-scrollHeader .o_Header_menuLine {
  background: #3e3a39
}

.o_Header_menuLine:nth-child(2) {
  top: 50%;
  transform: translate(0, -50%)
}

.o_Header_menuLine:last-child {
  top: auto;
  bottom: 0
}

[aria-expanded=true] .o_Header_menuLine {
  top: .8rem;
  height: .2rem;
  transform: rotate(45deg)
}

[aria-expanded=true] .o_Header_menuLine:nth-child(2) {
  display: none
}

[aria-expanded=true] .o_Header_menuLine:last-child {
  bottom: .6rem;
  transform: rotate(135deg)
}

.o_Header_modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3
}

.o_Header_modalInner {
  padding: 6rem;
  position: absolute;
  top: 8.8rem;
  left: 50%;
  width: 85%;
  background: #fff;
  z-index: 3;
  transform: translate(-50%, 0)
}

@media screen and (max-width: 767px) {
  .o_Header_modalInner {
    padding: 2rem 1.5rem;
    top: 6rem;
    left: 50%;
    overflow: scroll;
    width: 90%;
    height: calc(100% - 13rem)
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalHeader {
    padding-block-end: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalHeaderLink {
    padding: .6rem 1.5rem;
    background: #d70027;
    border-radius: .3rem
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalHeaderTxt {
    font-size: 1.4rem;
    font-weight: 600;
    color: #fff
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalHeaderImg {
    max-width: 9.5rem;
    width: 100%
  }
}

.o_Header_modalList {
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .o_Header_modalList {
    flex-direction: column
  }
}

.o_Header_modalList>li>a {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: .034em
}

@media screen and (min-width: 768px) {
  .o_Header_modalList>li>a:hover {
    color: #d70027
  }
}

.o_Header_modalList .sub-menu {
  margin-block-start: 4rem;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: .01em
}

.o_Header_modalList .sub-menu li {
  margin-block-start: 3.5rem
}

.o_Header_modalList .sub-menu li:first-child {
  margin-block-start: 0
}

.o_Header_modalList .sub-menu li a {
  position: relative;
  font-size: 1.2rem;
  letter-spacing: .034em;
  font-weight: 400
}

.o_Header_modalList .sub-menu li a:hover:before {
  transform: translate(0, -50%) scale(1.2)
}

.o_Header_modalList .sub-menu li a:hover:after {
  transform: translate(0, -50%) rotate(45deg) scale(1.2)
}

.o_Header_modalList .sub-menu li a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.5rem;
  width: .9rem;
  height: 2px;
  background: #d70027;
  border-radius: .1rem;
  transform: translate(0, -50%);
  transition: transform .6s ease-out
}

.o_Header_modalList .sub-menu li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.5rem;
  width: .9rem;
  height: .9rem;
  border-top: .2rem solid #d70027;
  border-right: .2rem solid #d70027;
  border-radius: .1rem;
  transform: translate(0, -50%) rotate(45deg);
  transition: transform .6s ease-out
}

.o_Header_modalItem {
  padding: 0 1rem
}

@media screen and (max-width: 767px) {
  .o_Header_modalItem {
    padding: 0;
    border-top: .1rem solid #dedede
  }
}

.o_Header_modalBlock {
  margin-block-start: 2.5rem
}

.o_Header_modalBlock:first-of-type {
  margin-block-start: 0
}

.o_Header_modalBlockTtl {
  position: relative;
  font-size: 1.6rem;
  font-weight: 600;
  transition: color .4s ease-in-out
}

@media screen and (min-width: 768px) {
  .o_Header_modalBlockTtl:hover {
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalBlockTtl {
    padding-block: 1.5rem;
    text-align: left;
    width: 100%;
    font-size: 1.4rem
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalPlus {
    position: absolute;
    width: .9rem;
    height: .9rem;
    top: 2rem;
    right: .5rem;
    transform: translate(0, 0)
  }
  .o_Header_modalPlus:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: .1rem;
    background: #9e9ea7;
    transform: translate(-50%, -50%)
  }
  .o_Header_modalPlus:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: .1rem;
    height: 100%;
    background: #9e9ea7;
    transform: translate(-50%, -50%)
  }
  [aria-expanded=true] .o_Header_modalPlus:after {
    content: none
  }
}

.o_Header_modalSubList {
  padding-block-start: 3.5rem
}

.o_Header_modalSubList[aria-hidden=false] {
  display: none
}

@media screen and (max-width: 767px) {
  .o_Header_modalSubList {
    padding-block: 0 2rem
  }
}

.o_Header_modalSubItem {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .o_Header_modalSubItem {
    margin-block-start: 1.5rem
  }
}

.o_Header_modalSubItem:first-child {
  margin-block-start: 0
}

@media screen and (min-width: 768px) {
  .o_Header_modalSubLink:hover .a_ArrowIcon {
    transform: scale(1.2)
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalBlock>.o_Header_modalSubLink {
    padding-block: 1.5rem;
    display: block
  }
}

.o_Header_modalBottom {
  margin-block-start: 6rem;
  padding-block-start: 4.5rem;
  border-top: .1rem solid #bbb
}

@media screen and (max-width: 767px) {
  .o_Header_modalBottom {
    margin-block-start: 3.5rem;
    padding-block-start: 3rem
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalBottomBtnWrap {
    margin-block-start: 2rem;
    text-align: center
  }
}

.o_Header_modalBottomBtn {
  position: relative;
  font-size: 1.2rem;
  font-weight: 600
}

.o_Header_modalBottomLine {
  position: absolute;
  display: inline-block;
  width: .9rem;
  height: .9rem;
  top: 50%;
  left: -1.2rem;
  transform: translate(0, -50%)
}

.o_Header_modalBottomLine:before, .o_Header_modalBottomLine:after {
  content: "";
  position: absolute;
  top: 0;
  left: 4px;
  height: 100%;
  width: .1rem;
  background: #3e3a39
}

.o_Header_modalBottomLine:before {
  transform: rotate(135deg)
}

.o_Header_modalBottomLine:after {
  transform: rotate(45deg)
}

.o_Header_modalBottomList {
  display: flex;
  column-gap: 3rem
}

@media screen and (max-width: 767px) {
  .o_Header_modalBottomList {
    flex-wrap: wrap;
    column-gap: 2rem
  }
}

.o_Header_modalBottomList a {
  position: relative;
  font-size: 1.2rem;
  font-weight: 400;
  transition: opacity .4s ease-in-out
}

.o_Header_modalBottomList a:before {
  content: "";
  position: absolute;
  bottom: -0.2rem;
  left: 0;
  width: 100%;
  height: .1rem;
  background: rgba(0, 0, 0, .6);
  opacity: 0;
  transition: opacity .4s ease-in-out
}

@media screen and (min-width: 768px) {
  .o_Header_modalBottomList a:hover {
    opacity: .6
  }
  .o_Header_modalBottomList a:hover:before {
    opacity: 1
  }
}

.o_Header_modalBottomLink {
  position: relative;
  font-size: 1.2rem;
  font-weight: 400;
  transition: opacity .4s ease-in-out
}

.o_Header_modalBottomLink:before {
  content: "";
  position: absolute;
  bottom: -0.2rem;
  left: 0;
  width: 100%;
  height: .1rem;
  background: rgba(0, 0, 0, .6);
  opacity: 0;
  transition: opacity .4s ease-in-out
}

.o_Header_modalBottomLink.target_blank:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1.2rem;
  width: .8rem;
  height: .8rem;
  background: url("../img/footer/external_icon.webp") no-repeat center center/cover;
  transition: opacity .4s ease-in-out;
  transform: translate(0, -50%)
}

@media screen and (min-width: 768px) {
  .o_Header_modalBottomLink:hover {
    opacity: .6
  }
  .o_Header_modalBottomLink:hover:before {
    opacity: 1
  }
  .o_Header_modalBottomLink:hover.target_blank:after {
    opacity: .6
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalSearch {
    padding-block-start: 2.5rem;
    border-top: .1rem solid #dedede
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalSearchTtl {
    font-size: 1.4rem;
    font-weight: 600
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalSearchForm {
    margin-block-start: 1.5rem;
    display: flex;
    justify-content: space-between;
    width: 100%
  }
}

@media screen and (max-width: 767px) {
  .o_Header_modalSearchBtn {
    background: #d70027;
    width: 8rem;
    font-size: 1.4rem;
    color: #fff;
    font-weight: 700
  }
}

@media screen and (max-width: 767px) {
  .o_Header_InputTxtWrap {
    width: 100%
  }
}

.o_Header_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .18)
}

.o_Keywords {
  margin-block-start: 3rem;
  display: flex
}

.o_Keywords_label {
  margin-block-start: .8rem;
  padding-block: 1rem;
  background: #fff;
  font-size: 1.8rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_Keywords_label {
    font-size: 1.3rem
  }
}

.o_Keywords_list {
  display: flex;
  flex-wrap: wrap
}

.o_Keywords_link {
  margin: .5rem;
  padding: .5rem 1rem;
  border-radius: .2rem;
  display: inline-block;
  background: #dedede;
  font-size: 1.5rem;
  line-height: 1.55;
  color: #3e3a39;
  font-weight: 400;
  transition: background .3s ease-out, color .3s ease-out
}

@media screen and (min-width: 768px) {
  .o_Keywords_link:hover {
    background: #d70027;
    color: #fff
  }
}

@media screen and (max-width: 767px) {
  .o_Keywords_link {
    font-size: 1.4rem
  }
}

.o_Keywords_link.u-keywordActive {
  background: #d70027;
  color: #fff
}

.o_Keywords_link.u-keywordHeightLight {
  padding: .5rem 3rem .5rem .8rem;
  position: relative
}

.o_Keywords_link.u-keywordHeightLight:before {
  content: "";
  position: absolute;
  background: url("../img/career/top/keyword/fireIcon.webp") no-repeat center center/cover;
  width: 1.3rem;
  height: 1.5rem;
  top: 50%;
  right: 1rem;
  transform: translate(0, -50%);
  transition: background .3s ease-out
}

.no-webp .o_Keywords_link.u-keywordHeightLight:before {
  background: url("../img/career/top/keyword/fireIcon.png") no-repeat center center/cover
}

@media screen and (min-width: 768px) {
  .o_Keywords_link.u-keywordHeightLight:hover:before {
    background: url("../img/career/top/keyword/fireIcon_white.webp") no-repeat center center/cover
  }
  .no-webp .o_Keywords_link.u-keywordHeightLight:hover:before {
    background: url("../img/career/top/keyword/fireIcon_white.webp") no-repeat center center/cover
  }
}

.o_LowerHeader {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background: #fff;
  z-index: 1;
  transition: top .3s ease-out
}

.o_LowerHeader[aria-hidden=true] {
  display: block;
  top: -7.4rem
}

@media screen and (max-width: 767px) {
  .o_LowerHeader[aria-hidden=true] {
    top: -5.2rem
  }
}

.sub_inner {
    display: flex;
    margin: 0 auto;
    box-sizing: border-box;
    overflow: hidden;
}

.pre_img {
    position: relative;
    width: 40%;
    height: 500px;
    padding-left: 20px;
    margin-right: 30px;
    margin-top: 30px;
}
.pre_img::before {
    content: '';
    z-index: -1;
    position: absolute;
    top: 20px;
    left: 0px;
    background-color: #FFF6DD;
    width: 90%;
    height: 480px;
}

.pre_gree {
    text-align: left;
    width: 55%;
}

.pre_gree p {
    margin-bottom: 30px;
}

.right {
    text-align: right;
}


.schedule h3 {
    font-size: 1.4rem;
    font-weight: normal;
    margin-bottom: 10px;
    text-align: center;
    margin-top: 70px;
}

.schedule {
    width: auto;
}

.schedule h4 {
    font-size: 30px;
    margin-bottom: 50px;
    text-align: center;
}


.sch_time {
    width: 650px;
    margin: 0 auto 30px;
}

.sch_time dl {
    overflow: hidden;
    display: flex;
}


.sch_time dl dt {
    position: relative;
    float: left;
    width: 80px;
    margin-right: 20px;
}

.sch_time dl dt::before {
    position: absolute;
    top: 0;
    left: 40px;
    content: '';
    border-left: 1px solid #ccc;
    height: 500%;
    z-index: 0;
}

.sch_time dl dt p {
    background-color: #FBDA3F;
    padding: 4px 20px 6px;
    border-radius: 20px;
    line-height: 1;
    z-index: 1;
    position: relative;
    margin-block-start: 0;
}

.sch_time dl dd {
    float: right;
    width: 83%;
    text-align: left;
    line-height: 1.5;
    padding-bottom: 30px;
}

.o_LowerHeader_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 3
}

.o_LowerHeader_link {
  padding: 1.5rem 2.5rem 2rem;
  display: flex;
  align-items: center;
  background: #fff;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_LowerHeader_link:hover {
    opacity: .7
  }
}

@media screen and (max-width: 767px) {
  .o_LowerHeader_link {
    padding: 1.5rem 1rem
  }
}

.o_LowerHeader_logo {
  padding-inline-end: 1.5rem;
  border-right: 1px solid #3e3a39;
  font-size: 0
}

.o_LowerHeader_img {
  display: inline-block;
  width: 13.1rem
}

@media screen and (max-width: 767px) {
  .o_LowerHeader_img {
    width: 7.3rem
  }
  .sch_time {
    width: 100%;
  }
}

.o_LowerHeader_txt {
  padding-inline-start: 1.5rem;
  font-size: 1.6rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_LowerHeader_txt {
    font-size: 1.2rem
  }
}

.o_LowerHeader_menu {
  position: relative;
  width: 2.4rem;
  height: 1.8rem
}

.o_LowerHeader_menuLine {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: .2rem;
  background: #3e3a39
}

.o_LowerHeader_menuLine:nth-child(2) {
  top: 50%;
  transform: translate(0, -50%)
}

.o_LowerHeader_menuLine:last-child {
  top: auto;
  bottom: 0
}

.o_Mv {
  padding-block-start: 27.3%;
  inset-block-end: .2rem;
  position: relative;
  overflow: hidden;
  width: 100%
}

@media screen and (max-width: 767px) {
  .o_Mv {
    padding-block-start: 99.5%
  }
}

.o_Mv_ttlArea {
    position: absolute;
    top: 57%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
}

.o_Mv_ttl {
  font-size: 3.2rem;
  color: #000;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1
}

ul.p-search__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 25px;
    width: 400px;
    margin-left: 194px;
}

li.p-search__item.-button {
    background: #006fb9;
    height: 50px;
    margin-right: 20px;
    width: 180px;
    display: table;
    border-radius: 7px;
}

li.p-search__item_02.-button {
    background: #fff;
    height: 50px;
    margin-right: 20px;
    width: 180px;
    display: table;
    border-radius: 7px;
    border: 1px solid #006fb9;
}

li.p-search__item.-button a {
    text-align: center;
    color: #fff;
    display: table-cell;
    vertical-align: middle;
}

li.p-search__item_02.-button a {
    text-align: center;
    color: #006fb9;
    display: table-cell;
    vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .o_Mv_ttl {
    font-size: 2.4rem;
    text-align: left;
    margin-left: 20px;
  }
}

.o_Mv_subTtl {
  margin-block-start: 1.5rem;
  font-size: 2rem;
  color: #000;
  font-weight: 700;
  letter-spacing: .034em;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .o_Mv_subTtl {
    margin-block-start: 1rem;
    font-size: 1.2rem;
    text-align: left;
    margin-left: 20px;
  }

}

.o_Mv_thumb {
    padding-block-start: 41%;
    inset-block-end: 0.2rem;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100vh;
}

.o_MvVideo {
  padding-block-start: 41%;
  inset-block-end: .2rem;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}

@media screen and (max-width: 767px) {
  .o_MvVideo {
    padding-block-start: 99.5%;
    height: 0;
  }

  .o_Header_inner {
    left: 46%;
  }


_::-webkit-full-page-media, _:future, :root .o_Mv_ttlArea {
    position: absolute;
    top: -65px;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
}


}

.o_MvVideo_inner.l-content {
    position: absolute;
    top: -195px;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 1;
    background: none;
    width: 1200px;
    display: flex;
    background: #fff;
    border-radius: 10px;
    -webkit-box-shadow: -20px 3px 99px rgba(184,198,238,.3);
    box-shadow: -20px 3px 99px rgba(184,198,238,.3);
}

.o_MvVideo_ttlArea {
  padding: 1rem 1.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 1
}

@media screen and (max-width: 767px) {
  .o_MvVideo_ttlArea {
    padding: 1rem
  }
}

/* .o_MvVideo_ttl, .o_MvVideo_topTtl {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
} */

@media screen and (max-width: 767px) {
  .o_MvVideo_ttl, .o_MvVideo_topTtl {
    display: block;
    text-align: center
  }
}

.o_MvVideo_ttl p, .o_MvVideo_topTtl p {
  padding: 1.5rem 2rem;
  display: inline-block;
  width: 100%;
}

.o_MvVideo_ttl p:first-child, .o_MvVideo_topTtl p:first-child {
  margin-block-start: 0
}

.o_MvVideo_ttl {
    font-size: 4.2rem;
    letter-spacing: .01em;
    font-family: "Noto Sans-Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游ゴシック, "Yu Gothic", YuGothic, sans-serif;
    font-weight: 600;
    font-weight: 700;
    margin-left: 10%;
}

.o_MvVideo_ttl p {
  background: rgba(255, 255, 255, .8)
}

@media screen and (max-width: 767px) {
  .o_MvVideo_ttl {
    font-size: 2rem
  }
}

.o_MvVideo_topTtl {
    font-size: 4.2rem;
    letter-spacing: .01em;
    font-family: "Noto Sans-Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游ゴシック, "Yu Gothic", YuGothic, sans-serif;
    font-weight: 600;
    font-weight: 700;
    margin-left: 10%;
}

.o_MvVideo_topTtl p {
  background: #fff;
  border-radius: 10px;
}

@media screen and (max-width: 767px) {
  .o_MvVideo_topTtl {
    width: 100%;
    font-size: 2rem
  }
}

.o_MvVideo_videoArea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.o_MvVideo_videoArea img {
  width: 100%;
  height: 100%
}

.o_MvVideo_video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.o_MvVideo_tagArea {
  padding: 1.6rem 2rem;
  display: flex;
  position: absolute;
  bottom: 0;
  right: 0;
  background: #f7f7f7
}

@media screen and (max-width: 767px) {
  .o_MvVideo_tagArea {
    padding: 1.5rem 1rem;
    align-items: center;
    right: 0;
    width: 100%
  }
}

.o_MvVideo_tagListWrap {
  overflow: hidden;
  width: 54rem
}

@media screen and (max-width: 767px) {
  .o_MvVideo_tagListWrap {
    width: 100%
  }
  main.l-main {
    margin-top: 62px;
}
}

.o_MvVideo_tagList {
  display: flex;
  align-items: center;
  animation: marquee 30s linear infinite
}

.o_MvVideo_tagList:hover {
  animation-play-state: paused
}

.o_MvVideo_tagItem {
  margin-inline-start: 3.5rem;
  font-size: 0
}

.o_MvVideo_tagItem:first-child {
  margin-inline-start: 0
}

@media screen and (max-width: 767px) {
  .o_MvVideo_tagItem {
    margin-inline-start: 2rem
  }
}

.o_MvVideo_tagTxt {
  margin-inline-end: 2rem;
  padding-inline-end: 2rem;
  border-right: .1rem solid #3e3a39;
  font-size: 1.5rem
}

@media screen and (max-width: 767px) {
  .o_MvVideo_tagTxt {
    margin-inline-end: 1rem;
    padding-inline-end: 1rem;
    white-space: pre;
    font-size: 1.2rem
  }
}

.o_MvVideo_tagLink {
  position: relative;
  font-size: 1.5rem;
  white-space: pre
}

@media screen and (max-width: 767px) {
  .o_MvVideo_tagLink {
    font-size: 1rem;
    white-space: pre;
    line-height: 1
  }
}

.o_MvVideo_tagLink:before {
  content: "#";
  position: absolute;
  top: 50%;
  left: -1.2rem;
  transform: translate(0, -50%);
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .o_MvVideo_tagLink:before {
    font-size: 1rem;
    left: -1rem
  }
}

@keyframes marquee {
  0% {
    transform: translate(100%, 0)
  }
  100% {
    transform: translate(-200%, 0)
  }
}

.o_Pagination {
  margin-block-start: 5rem
}

@media screen and (max-width: 767px) {
  .o_Pagination {
    margin-block-start: 2rem
  }
}

.o_Pagination ul {
  display: flex;
  justify-content: center
}

.o_Pagination li {
  margin-inline-start: 1.5rem
}

.o_Pagination li:first-child {
  margin-inline-start: 0
}

.o_Pagination a, .o_Pagination .current {
  padding-block-end: .3rem;
  font-size: 1.8rem;
  font-weight: 600;
  color: #3b4043
}

@media screen and (max-width: 767px) {
  .o_Pagination a, .o_Pagination .current {
    font-size: 1.4rem
  }
}

.o_Pagination a {
  transition: opacity .4s ease-out
}

@media screen and (min-width: 768px) {
  .o_Pagination a:hover {
    opacity: .7
  }
}

.o_Pagination .current {
  border-bottom: .3rem solid #d70027
}

.o_PaginationDetail {
  margin-block-start: 2rem
}

.o_PaginationDetail_link {
  padding-inline-start: 3rem;
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 500;
  color: #3b4043;
  border-bottom: .1rem solid rgba(0, 0, 0, 0);
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_PaginationDetail_link:hover {
    border-bottom: .1rem solid #3b4043;
    opacity: .6
  }
  .o_PaginationDetail_link:hover:before {
    background: url("../img/paging/reverse_icon_red.webp") no-repeat center center/cover
  }
  .no-webp .o_PaginationDetail_link:hover:before {
    background: url("../img/paging/reverse_icon_red.png") no-repeat center center/cover
  }
}

@media screen and (max-width: 767px) {
  .o_PaginationDetail_link {
    padding-inline-start: 2.3rem;
    font-size: 1.4rem
  }
}

.o_PaginationDetail_link:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  background: url("../img/paging/reverse_icon.webp") no-repeat center center/cover;
  width: 2.2rem;
  height: 1.9rem;
  transform: translate(0, -50%);
  transition: background .2s ease-out, width .2s ease-out, height .2s ease-out
}

.no-webp .o_PaginationDetail_link:before {
  background: url("../../../../../../error/index.html") no-repeat center center/cover
}

@media screen and (max-width: 767px) {
  .o_PaginationDetail_link:before {
    width: 1.85rem;
    height: 1.6rem
  }
}

.o_Sidebar {
  flex-grow: 1;
  max-width: 33rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .o_Sidebar {
    margin-block-start: 5rem;
    margin-inline-start: 0;
    padding-block-end: 4.5rem;
    border-bottom: .1rem solid #dedede;
    max-width: none
  }
}

.o_Sidebar_inner {
  position: sticky;
  top: 10rem
}

.o_Sidebar_ttl {
  font-size: 1.8rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .o_Sidebar_ttl {
    font-size: 1.6rem
  }
}

.o_Sidebar_linkBoxItem {
  margin-block-start: 1.5rem;
  background: #fff
}

.o_Sidebar_linkBoxItem:first-child {
  margin-block-start: 0
}

.o_Sidebar_linkBoxTxt {
  margin-inline-start: 2rem;
  font-size: 1.6rem;
  font-weight: 600;
  transition: color .4s ease-out
}

.o_Sidebar_linkBoxLink {
  padding: 1rem;
  display: flex;
  align-items: center;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .o_Sidebar_linkBoxLink:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .o_Sidebar_linkBoxLink:hover .o_Sidebar_linkBoxTxt {
    color: #d70027
  }
}

.o_Sidebar_linkBoxThumb {
  max-width: 12rem;
  width: 100%
}

.o_Sidebar_search {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .o_Sidebar_search {
    display: none
  }
}

.o_Sidebar_InputTxtWrap {
  margin-block-start: 1rem
}

.o_Sidebar_tag {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .o_Sidebar_tag {
    display: none
  }
}

.o_Sidebar_tagList {
  margin-block-start: 1rem;
  margin-inline-start: -0.5rem;
  display: flex;
  flex-wrap: wrap;
  column-gap: .5rem;
  row-gap: .5rem
}

@media screen and (max-width: 767px) {
  .o_Sidebar_tagList {
    margin-inline-start: 0;
    display: none
  }
}

.o_Sidebar_tagLink {
  padding: 1rem;
  display: inline-block;
  background: #dedede;
  border-radius: .2rem;
  font-size: 1.4rem;
  transition: background .2s ease-out, color .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_Sidebar_tagLink:hover {
    background: #d70027;
    color: #fff
  }
}

.o_Sidebar_share {
  margin-block-start: 3rem
}

.o_Sidebar_shareList {
  margin-block-start: 2rem;
  display: flex
}

@media screen and (max-width: 767px) {
  .o_Sidebar_shareList {
    margin-block-start: 1.5rem
  }
}

.o_Sidebar_shareItem {
  margin-inline-start: 1.5rem
}

.o_Sidebar_shareItem:first-child {
  margin-inline-start: 0
}

.o_Sidebar_shareLink {
  display: inline-block;
  width: 4.4rem;
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .o_Sidebar_shareLink:hover {
    opacity: .6
  }
}

@media screen and (max-width: 767px) {
  .o_Sidebar_shareLink {
    width: 3.3rem
  }
}

.o_SpecialCard {
  margin-block-start: 2rem;
  margin-inline: auto;
  display: flex;
  max-width: 128rem;
  position: relative
}

@media screen and (max-width: 767px) {
  .o_SpecialCard {
    margin-block-start: 2rem
  }
}

.o_SpecialCard_inner.swiper {
  padding-block: 4rem
}

.t_FilterTemplate {
  padding-block-end: 15rem
}

@media screen and (max-width: 767px) {
  .t_FilterTemplate {
    padding-block-end: 4.5rem
  }
}

.t_RelatedTemplate_inner.l-section {
  padding-block-start: 0
}

.t_RelatedTemplate_item {
  margin-block-start: 9.5rem
}

@media screen and (max-width: 767px) {
  .t_RelatedTemplate_item {
    margin-block-start: 4.5rem
  }
}

.t_RelatedTemplate_item:first-child {
  margin-block-start: 10rem
}

@media screen and (max-width: 767px) {
  .t_RelatedTemplate_item:first-child {
    margin-block-start: 4.5rem
  }
}

.t_RelatedTemplate_ttl {
  font-size: 2.8rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .t_RelatedTemplate_ttl {
    font-size: 2.2rem
  }
}

.t_RelatedTemplate_baseListWrap {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .t_RelatedTemplate_baseListWrap {
    margin-block-start: 2.5rem
  }
}

.p_Career_baseListWrap {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .p_Career_baseListWrap {
    margin-block-start: 2rem
  }
}

.p_Career_specialContent.l-section {
  padding-block-start: 16rem
}

@media screen and (max-width: 767px) {
  .p_Career_specialContent.l-section {
    padding-block-start: 5rem
  }
}

.p_Career_specialContent .swiper-button-prev {
  background: url("../img/career/top/specialContents/swiper-button.webp") no-repeat center center/cover;
  width: 5.2rem;
  height: 5.2rem;
  left: -7.5rem;
  z-index: 1;
  transition: background .4s ease-out
}

@media screen and (max-width: 767px) {
  .p_Career_specialContent .swiper-button-prev {
    margin: 0;
    top: -0.8rem;
    left: -4rem;
    width: 2.5rem;
    height: 2.5rem;
    background: url("../img/career/top/specialContents/swiper-buttonSp.webp") no-repeat center center/cover
  }
}

.no-webp .p_Career_specialContent .swiper-button-prev {
  background: url("../img/career/top/specialContents/swiper-button.png") no-repeat center center/cover
}

@media screen and (max-width: 767px) {
  .no-webp .p_Career_specialContent .swiper-button-prev {
    background: url("../img/career/top/specialContents/swiper-buttonSp.png") no-repeat center center/cover
  }
}

@media screen and (min-width: 768px) {
  .p_Career_specialContent .swiper-button-prev:hover {
    background: url("../img/career/top/specialContents/swiper-button_red.webp") no-repeat center center/cover
  }
  .no-webp .p_Career_specialContent .swiper-button-prev:hover {
    background: url("../img/career/top/specialContents/swiper-button_red.png") no-repeat center center/cover
  }
}

.p_Career_specialContent .swiper-button-prev:after {
  content: none
}

.p_Career_specialContent .swiper-button-next {
  background: url("../img/career/top/specialContents/swiper-button.webp") no-repeat center center/cover;
  width: 5.2rem;
  height: 5.2rem;
  right: -7.5rem;
  transform: rotate(180deg);
  transition: background .4s ease-out;
  z-index: 1
}

@media screen and (max-width: 767px) {
  .p_Career_specialContent .swiper-button-next {
    margin: 0;
    top: -0.8rem;
    right: -4rem;
    width: 2.5rem;
    height: 2.5rem;
    background: url("../img/career/top/specialContents/swiper-buttonSp.webp") no-repeat center center/cover
  }
}

.no-webp .p_Career_specialContent .swiper-button-next {
  background: url("../img/career/top/specialContents/swiper-button.png") no-repeat center center/cover
}

@media screen and (max-width: 767px) {
  .no-webp .p_Career_specialContent .swiper-button-next {
    background: url("../img/career/top/specialContents/swiper-buttonSp.png") no-repeat center center/cover
  }
}

@media screen and (min-width: 768px) {
  .p_Career_specialContent .swiper-button-next:hover {
    background: url("../img/career/top/specialContents/swiper-button_red.webp") no-repeat center center/cover
  }
  .no-webp .p_Career_specialContent .swiper-button-next:hover {
    background: url("../img/career/top/specialContents/swiper-button_red.png") no-repeat center center/cover
  }
}

.p_Career_specialContent .swiper-button-next:after {
  content: none
}

@media screen and (max-width: 767px) {
  .p_Career_specialContent .swiper-paginationBlock {
    text-align: center
  }
}

@media screen and (max-width: 767px) {
  .p_Career_specialContent .swiper-paginationBlockInner {
    position: relative;
    display: inline-block
  }
}

.p_Career_specialContent .swiper-horizontal>.swiper-pagination-bullets, .p_Career_specialContent .swiper-pagination-bullets.swiper-pagination-horizontal, .p_Career_specialContent .swiper-pagination-custom, .p_Career_specialContent .swiper-pagination-fraction .swiper-button-next {
  bottom: -1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1
}

@media screen and (max-width: 767px) {
  .p_Career_specialContent .swiper-horizontal>.swiper-pagination-bullets, .p_Career_specialContent .swiper-pagination-bullets.swiper-pagination-horizontal, .p_Career_specialContent .swiper-pagination-custom, .p_Career_specialContent .swiper-pagination-fraction .swiper-button-next {
    position: static
  }
}

.p_Career_specialContent .swiper-pagination-bullet-active {
  background: #d70027;
  width: 1.1rem;
  height: 1.1rem
}

.p_Career_specialContentInner {
  position: relative
}

.p_Career_event.l-section {
  padding-block-start: 13rem
}

@media screen and (max-width: 767px) {
  .p_Career_event.l-section {
    padding-block-start: 9.5rem
  }
}

.p_Career_eventList {
  margin-block-start: 4.5rem
}

@media screen and (max-width: 767px) {
  .p_Career_eventList {
    margin-block-start: 2rem
  }
}

.p_Career_readmore {
  margin-block-start: 8rem;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p_Career_readmore {
    margin-block-start: 4rem
  }
}

.p_Career_mostRead.l-section {
  padding-block-start: 11.5rem
}

@media screen and (max-width: 767px) {
  .p_Career_mostRead.l-section {
    padding-block-start: 5rem
  }
}

.p_Career_keywords.l-section {
  padding-block: 12rem 0
}

@media screen and (max-width: 767px) {
  .p_Career_keywords.l-section {
    padding-block: 5rem
  }
}

.p_Page_inner {
  background: #fff
}

.p_Top.l-section {
  margin-block-start: 8rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p_Top.l-section {
   margin-block-start: -13rem;
  }
}

.p_Top_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  row-gap: 4rem
}

@media screen and (max-width: 767px) {
  .p_Top_list {
    row-gap: 1.5rem
  }
}

.p_Top_item {
  width: calc(50% - 2rem);
  transition: box-shadow .4s ease-out;
  -webkit-box-shadow: -20px 3px 99px rgba(184,198,238,.3);
  box-shadow: -20px 3px 99px rgba(184,198,238,.3);
}

@media screen and (min-width: 768px) {
  .p_Top_item:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
}

@media screen and (max-width: 767px) {
  .p_Top_item {
    width: 100%
  }
}

.p_Top_thumb {
  overflow: hidden;
  display: block
}

.p_Top_thumb img {
  transition: transform .6s ease-out
}

.p_Top_txtArea {
  padding: 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-left: solid 43px blanchedalmond;
}

.p_Top_txtArea_gra {
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-left: solid 43px lightcyan;
}

.p_Top_txtArea_sec {
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-left: solid 43px lavender;
}

.p_Top_txtArea_ceo {
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-left: solid 43px #b7fbc2;
}

.p_Top_txtArea_int {
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-left: solid 43px #fdadbc;
}



.p_Top_txt {
  font-size: 2.4rem;
  font-weight: 600;
  transition: color .6s ease-out, opacity .6s ease-out
}

@media screen and (max-width: 767px) {
  .p_Top_txt {
    font-size: 1.8rem
  }
}

.p_Top_link {
  display: block;
  background: #fff;
  height: 100%;
  font-size: 1.8rem;
  font-weight: 600
}

@media screen and (min-width: 768px) {
  .p_Top_link:hover .p_Top_txt {
    color: #d70027;
    opacity: .6
  }
  .p_Top_link:hover .p_Top_thumb img {
    transform: scale(1.1)
  }
  .p_Top_link:hover .a_ArrowIcon {
    transform: scale(1.3)
  }
}

@media screen and (max-width: 767px) {
  .p_Top_link {
    font-size: 1.2rem
  }
}

.p_About_inner.l-content {
  background: none
}

.p_About_ttl {
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.4
}

@media screen and (max-width: 767px) {
  .p_About_ttl {
    font-size: 1.8rem
  }
}

.p_About_list {
  margin-block-start: 3rem;
  display: flex;
  flex-wrap: wrap;
  row-gap: 2.4rem;
  column-gap: 2.4rem
}

@media screen and (max-width: 767px) {
  .p_About_list {
    margin-block-start: 1.5rem;
    row-gap: 2rem
  }
}

.p_About_item {
  padding: 1.6rem;
  background: #fff;
  width: calc(50% - 1.2rem);
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_About_item:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
}

@media screen and (max-width: 767px) {
  .p_About_item {
    padding: 1.5rem;
    width: 100%
  }
}

.p_About_listTtlEn {
  margin-inline-end: 1rem;
  transition: color .4s ease-out;
  font-size: 2.6rem;
  line-height: 1;
  letter-spacing: .01em;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, serif;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_About_listTtlEn {
    margin-inline-end: 1rem
  }
}

.p_About_listTtlJp {
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .034em;
  flex-shrink: 0
}

@media screen and (min-width: 768px) {
  .p_About_link:hover .p_About_listTtlEn {
    color: #d70027
  }
}

.p_About_thumb {
  display: block
}

.p_About_listTtlArea {
  margin-block-start: 2rem;
  display: flex;
  align-items: center
}

@media screen and (max-width: 767px) {
  .p_About_listTtlArea {
    margin-block-start: 1rem
  }
}

.p_About_TagListWrap {
  margin-block-start: 1.5rem
}

.p_About_ArrowTextWrap {
  margin-block-start: 2rem
}

@media screen and (max-width: 767px) {
  .p_About_ArrowTextWrap {
    margin-block-start: 1.5rem
  }
}

.p_Library_main {
  display: flex;
  column-gap: 3rem
}

@media screen and (max-width: 767px) {
  .p_Library_main {
    flex-direction: column
  }
}

.column .p_Library_main {
  padding-block-start: 4.5rem
}

@media screen and (max-width: 767px) {
  .column .p_Library_main {
    padding-block-start: 0
  }
}

.noimage .p_Library_main {
  padding-block-start: 0
}

@media screen and (max-width: 767px) {
  .noimage .p_Library_main {
    padding-block-start: 6rem
  }
}

@media screen and (max-width: 767px) {
  .column .p_Library_inner.l-lowerSection {
    padding-block-start: 3rem
  }
}

.image .p_Library_inner.l-lowerSection {
  padding-block-start: 0
}

.p_Library_contentArea {
  flex-basis: 64.5%;
  flex-shrink: 0
}

@media screen and (max-width: 767px) {
  .p_Library_contentArea {
    max-width: none
  }
}

.p_Library_mv {
  padding-block-start: 39.85%;
  position: relative;
  display: block;
  overflow: hidden
}

.column .p_Library_mv {
  padding-block-start: 0
}

.noimage .p_Library_mv {
  margin-block-end: 4rem;
  transition: opacity .2s ease-out
}

@media screen and (max-width: 767px) {
  .noimage .p_Library_mv {
    margin-block-end: 3rem;
    padding-block-start: 0
  }
}

@media screen and (min-width: 768px) {
  .noimage .p_Library_mv:hover {
    opacity: .6
  }
  .noimage .p_Library_mv:hover img {
    transform: scale(1)
  }
  .noimage .p_Library_mv:hover .p_Library_mvTtl {
    border-bottom: .3rem solid #3e3a39
  }
}

.p_Library_mv img {
  transition: transform .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Library_mv.link:hover img {
    transform: scale(1.05)
  }
  .p_Library_mv.link:hover .p_Library_mvTtl {
    border-bottom: .3rem solid #fff
  }
}

@media screen and (max-width: 767px) {
  .p_Library_mv {
    padding-block-start: 107.85%
  }
}

.p_Library_mvImg {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.column .p_Library_mvImg {
  position: static
}

.p_Library_mvTxtArea {
  position: absolute;
  bottom: 2rem;
  left: 4rem;
  width: calc(100% - 8rem)
}

@media screen and (max-width: 767px) {
  .p_Library_mvTxtArea {
    padding-inline: 1.5rem;
    bottom: 2rem;
    left: 0;
    width: auto
  }
}

.noimage .p_Library_mvTxtArea {
  padding-inline: 0;
  position: static;
  width: auto
}

.p_Library_mvTtl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  border-bottom: .3rem solid rgba(0, 0, 0, 0);
  font-size: 2.6rem;
  color: #fff;
  font-weight: 700;
  transition: border-bottom .4s ease-out
}

@media screen and (max-width: 767px) {
  .p_Library_mvTtl {
    font-size: 2rem
  }
}

.noimage .p_Library_mvTtl {
  color: #3e3a39;
  transition: border-bottom .2s ease-out
}

@media screen and (max-width: 767px) {
  .noimage .p_Library_mvTtl {
    font-size: 2rem
  }
}

.p_Library_mvTxt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Library_mvTxt {
    font-size: 1.4rem
  }
}

.noimage .p_Library_mvTxt {
  margin-block-start: 2rem;
  display: block;
  color: #3e3a39
}

@media screen and (max-width: 767px) {
  .noimage .p_Library_mvTxt {
    margin-block-start: 1rem;
    font-size: 1.4rem
  }
}

.p_Library_recommend {
  padding: 2rem;
  position: relative;
  background: #fff;
  display: flex;
  column-gap: 2rem;
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .p_Library_recommend:hover {
    opacity: .7
  }
}

@media screen and (max-width: 767px) {
  .p_Library_recommend {
    padding: 1.5rem;
    column-gap: 1.5rem;
    flex-direction: column-reverse
  }
}

.p_Library_recommendTxtArea {
  padding-block-start: 1rem;
  max-width: 43.6%;
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Library_recommendTxtArea {
    max-width: none
  }
}

.p_Library_recommendCat {
  padding: .5rem 1rem;
  position: absolute;
  top: -2.5rem;
  left: 0;
  background: #d70027;
  font-size: 1.4rem;
  color: #fff;
  font-weight: 600;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .p_Library_recommendCat {
    padding: .5rem 1rem;
    top: 1.5rem;
    left: 1.5rem;
    border-bottom-right-radius: .5rem;
    font-size: 1.2rem
  }
}

.p_Library_recommendCat:before {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 8.5px 0 8.5px;
  border-color: #d70027 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
  transform: translate(-50%, 0)
}

@media screen and (max-width: 767px) {
  .p_Library_recommendCat:before {
    content: none
  }
}

.p_Library_recommendTtl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 2rem;
  color: #3b4043;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .p_Library_recommendTtl {
    font-size: 1.8rem
  }
}

.p_Library_recommendTxt {
  margin-block-start: 1rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: 1.4rem;
  color: #3b4043;
  font-weight: 400
}

.p_Library_recommendThumb {
  max-width: 56.4%;
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Library_recommendThumb {
    max-width: none
  }
}

.p_Library_TtlWrap {
  margin-block-start: 6rem
}

@media screen and (max-width: 767px) {
  .p_Library_TtlWrap {
    margin-block-start: 4.5rem
  }
}

.p_Library_SpecialArea .p_Library_TtlWrap {
  margin-block-start: 0;
  display: flex
}

@media screen and (max-width: 767px) {
  .p_Library_SpecialArea .p_Library_TtlWrap {
    margin-block-start: 0
  }
}

.p_Library_txt {
  margin-block-start: 3rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2
}

@media screen and (max-width: 767px) {
  .p_Library_txt {
    margin-block-start: 2rem;
    font-size: 1.4rem
  }
}

.p_Library_BaseListWrap {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .p_Library_BaseListWrap {
    margin-block-start: 2rem
  }
}

.p_Library_eventList {
  margin-block-start: 6rem;
  padding: 4rem 2rem;
  background: #e8e8e8
}

@media screen and (max-width: 767px) {
  .p_Library_eventList {
    margin-block-start: 4.5rem;
    padding: 3rem 1.5rem 1.5rem
  }
}

.p_Library_eventItem {
  margin-block-start: 6rem
}

.p_Library_eventItem:first-child {
  margin-block-start: 0
}

@media screen and (max-width: 767px) {
  .p_Library_eventItem {
    margin-block-start: 3rem
  }
}

.p_Library_eventTtl {
  font-size: 2.2rem;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .p_Library_eventTtl {
    font-size: 2rem
  }
}

.p_Library_EventListWrap {
  margin-block-start: 2rem
}

@media screen and (max-width: 767px) {
  .p_Library_EventListWrap {
    margin-block-start: 1.5rem
  }
}

.p_Library_SpecialListWrap {
  margin-block-start: 3rem;
  display: flex;
  column-gap: 2rem
}

@media screen and (max-width: 767px) {
  .p_Library_SpecialListWrap {
    margin-block-start: 2rem;
    flex-direction: column;
    column-gap: 0;
    row-gap: 1.5rem
  }
}

.p_Library_TagListWrap {
  margin-block-start: 1rem
}

.p_Library_btnArea {
  margin-block-start: 8rem;
  display: flex;
  align-items: center;
  justify-content: center
}

.p_Library_btnArea.js-hidden {
  display: none
}

@media screen and (max-width: 767px) {
  .p_Library_btnArea {
    margin-block-start: 3rem
  }
}

.p_Library_btn {
  margin-inline: auto;
  padding-block: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 47.8rem;
  width: 100%;
  border: .1rem solid #3e3a39;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 1;
  transition: background .4s ease-out, border .4s ease-out, color .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Library_btn:hover {
    background: #d70027;
    border: .1rem solid rgba(0, 0, 0, 0);
    color: #fff
  }
}

@media screen and (max-width: 767px) {
  .p_Library_btn {
    padding: 1rem 3.5rem;
    max-width: none;
    width: auto;
    display: inline-block;
    font-size: 1.6rem
  }
}

.p_Library_divTtl {
  font-size: 2.6rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Library_divTtl {
    text-align: center;
    font-size: 2.2rem
  }
}

.p_Library_divTxt {
  margin-block-start: 1rem;
  font-size: 1.6rem;
  color: #707070;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Library_divTxt {
    font-size: 1.4rem
  }
}

.p_Library_divList {
  margin-block-start: 1.5rem;
  display: flex;
  column-gap: 1rem;
  row-gap: 1rem;
  flex-wrap: wrap
}

.p_Library_divItem {
  padding: 1rem;
  position: relative;
  width: calc(33% - .6666666667rem);
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Library_divItem {
    display: flex;
    column-gap: 1rem;
    width: 100%
  }
}

.p_Library_divLink {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Library_divLink:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
}

@media screen and (max-width: 767px) {
  .p_Library_divImg {
    width: 10rem
  }
}

@media screen and (max-width: 767px) {
  .p_Library_divListTxtArea {
    width: calc(100% - 11rem)
  }
}

.p_Library_divListTtl {
  margin-block-start: 1rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .p_Library_divListTtl {
    margin-block-start: .5rem;
    font-size: 1.4rem
  }
}

.p_Library_divTagWrap {
  margin-block-start: .5rem
}

.p_Library_ttl {
  padding-inline-start: 1.5rem;
  position: relative;
  font-size: 0
}

.p_Library_ttl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #d70027;
  border-radius: 2.5rem;
  width: .5rem;
  height: 100%
}

.p_Library_ttlTxt {
  font-size: 2.4rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Library_ttlTxt {
    font-size: 2rem
  }
}

.p_Library_loading {
  margin: 3rem auto 0;
  width: 8rem;
  display: none
}

.p_Library_loading.js-display {
  display: block
}

@media screen and (max-width: 767px) {
  .p_Library_loading {
    width: 6rem
  }
}

.p_Business_inner {
  padding: 8rem 8rem 7.5rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Business_inner {
    padding: 3rem 2rem
  }
}

.p_Business_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Business_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_Business_block {
  margin-block-start: 10rem;
  display: flex;
  column-gap: 8rem;
  justify-content: space-between
}

.p_Business_block:first-of-type {
  margin-block-start: 0
}

.p_Business_block.reverse {
  flex-direction: row-reverse
}

@media screen and (max-width: 767px) {
  .p_Business_block.reverse {
    flex-direction: column
  }
}

.p_Business_block.vertical {
  flex-direction: column;
  column-gap: 0;
  row-gap: 7rem
}

@media screen and (max-width: 767px) {
  .p_Business_block.vertical {
    row-gap: 0
  }
}

@media screen and (max-width: 767px) {
  .p_Business_block {
    margin-block-start: 6rem;
    column-gap: 5rem;
    flex-direction: column
  }
  .p_Business_block:first-child {
    margin-block-start: 0
  }
}

.p_Business_txtArea {
  max-width: 54rem;
  width: 100%
}

.reverse .p_Business_txtArea, .vertical .p_Business_txtArea {
  max-width: none
}

@media screen and (max-width: 767px) {
  .p_Business_txtArea {
    max-width: none
  }
}

.p_Business_txt {
  margin-block-start: 3rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.85
}

@media screen and (max-width: 767px) {
  .p_Business_txt {
    margin-block-start: 2rem;
    font-size: 1.8rem;
    line-height: 1.67
  }
}

.p_Business_imgArea {
  max-width: 46.3rem;
  width: 100%;
  text-align: center
}

.reverse .p_Business_imgArea, .vertical .p_Business_imgArea {
  max-width: none
}

@media screen and (max-width: 767px) {
  .p_Business_imgArea {
    margin-block-start: 3rem;
    max-width: none
  }
}

.p_Business_caption {
  margin-block-start: 3rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.67
}

@media screen and (max-width: 767px) {
  .p_Business_caption {
    font-size: 1.6rem;
    line-height: 1.75
  }
}

.p_Company_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Company_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_Company_content {
  padding: 4rem 7rem 7rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Company_content {
    padding: 3rem 2rem
  }
}

.p_Company_contentTtl {
  font-size: 2.4rem;
  color: #d70027;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, serif;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Company_contentTtl {
    font-size: 2rem
  }
}

.p_Company_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0
}

.p_Company_tr {
  border-bottom: .1rem solid #dedede
}

@media screen and (max-width: 767px) {
  .p_Company_trRepeat {
    padding-block: 2rem 0;
    display: block
  }
}

@media screen and (max-width: 767px) {
  .p_Company_trFirst {
    padding-block: 2rem 0
  }
}

.p_Company_trFirst .p_Company_thRepeat, .p_Company_trFirst .p_Company_tdRepeat {
  padding-block-start: 2.5rem
}

@media screen and (max-width: 767px) {
  .p_Company_trFirst .p_Company_thRepeat, .p_Company_trFirst .p_Company_tdRepeat {
    padding-block: 0
  }
}

.p_Company_trLast {
  border-bottom: .1rem solid #dedede
}

@media screen and (max-width: 767px) {
  .p_Company_trLast {
    padding-block: 2rem
  }
}

.p_Company_trLast .p_Company_thRepeat, .p_Company_trLast .p_Company_tdRepeat {
  padding-block-end: 3rem
}

@media screen and (max-width: 767px) {
  .p_Company_trLast .p_Company_thRepeat, .p_Company_trLast .p_Company_tdRepeat {
    padding-block: 0
  }
}

.p_Company_th {
  padding-block: 3rem;
  width: 34rem;
  text-align: left;
  font-size: 1.8rem;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Company_th {
    padding-block: 2rem 0;
    display: block;
    width: auto;
    font-size: 1.6rem
  }
}

.p_Company_NoBorder .p_Company_th {
  padding-block: 3rem 0;
  border-bottom: none
}

@media screen and (max-width: 767px) {
  .p_Company_NoBorder .p_Company_th {
    padding-block: 2rem 0
  }
}

.p_Company_trHead .p_Company_th {
  font-size: 2.4rem;
  color: #d70027;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, serif;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Company_trHead .p_Company_th {
    font-size: 2rem
  }
}

.p_Company_thRepeat {
  padding-block: 1rem;
  width: 34rem;
  text-align: left;
  font-size: 1.8rem;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Company_thRepeat {
    padding-block: 0;
    display: block;
    width: auto;
    font-size: 1.6rem
  }
}

.p_Company_td {
  padding-block: 3rem;
  width: calc(100% - 34rem);
  font-size: 1.8rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Company_td {
    padding-block: .5rem 2rem;
    display: block;
    width: auto;
    font-size: 1.6rem
  }
}

.p_Company_NoBorder .p_Company_td {
  padding-block: 3rem 0;
  border-bottom: none
}

@media screen and (max-width: 767px) {
  .p_Company_NoBorder .p_Company_td {
    padding-block: 2rem 0
  }
}

.p_Company_td td, .p_Company_td th {
  display: block;
  text-align: left
}

.p_Company_tdRepeat {
  padding-block: 1rem;
  width: calc(100% - 34rem);
  font-size: 1.8rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Company_tdRepeat {
    padding-block: 0;
    display: block;
    width: auto;
    font-size: 1.6rem
  }
}

@media screen and (max-width: 767px) {
  .p_Message_inner {
    padding: 1.5rem;
    background: #fff;
    margin-top: 73px;
  }
  .sub_inner {
    display: block;
  }

.pre_img {
    width: 100%;
    height: auto;
    padding-left: 0;
}

.pre_gree {
    width: 100%;
}
}

.p_Message_contentArea {
  padding: .5rem 8rem 8rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Message_contentArea {
    padding: 0
  }
}

.p_Message_mv {
  display: block
}

.p_Message_linkCard {
  margin-block-start: 4.5rem;
  display: flex;
  max-width: 61.4rem;
  width: 100%;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Message_linkCard:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .p_Message_linkCard:hover .p_Message_linkCardTitle {
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .p_Message_linkCard {
    margin-block-start: 3rem;
    max-width: auto
  }
}

.p_Message_linkCardImg {
  max-width: 18rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardImg {
    max-width: 12.6rem
  }
}

.p_Message_linkCardImg img {
  object-fit: cover;
  height: 100%
}

.p_Message_linkCardTxtArea {
  padding: 2rem;
  display: block;
  background: #fff;
  max-width: calc(100% - 18rem);
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardTxtArea {
    padding: 1.5rem 1rem;
    max-width: calc(100% - 12.6rem);
    width: 100%
  }
}

.p_Message_linkCardPageName {
  display: block;
  font-size: 1.6rem;
  color: #d70027;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardPageName {
    font-size: 1rem
  }
}

.p_Message_linkCardTitle {
  margin-block-start: 1.2rem;
  display: block;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.44;
  transition: color .4s ease-out
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardTitle {
    margin-block-start: 1rem;
    font-size: 1.2rem;
    font-weight: 600
  }
}

.p_Message_linkCardDivision, .p_Message_linkCardName {
  display: block;
  font-size: 1.6rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardDivision, .p_Message_linkCardName {
    font-size: 1rem
  }
}

.p_Message_linkCardDivision {
  margin-block-start: 1.2rem
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardDivision {
    margin-block-start: 1rem
  }
}

.p_Message_linkCardName {
  margin-block-start: .5rem
}

@media screen and (max-width: 767px) {
  .p_Message_linkCardName {
    margin-block-start: .3rem
  }
}

.p_History_inner {
  padding: 8rem 8rem 7.5rem;
  background: #fff;
  overflow: hidden
}

@media screen and (max-width: 767px) {
  .p_History_inner {
    padding: 3rem 2rem
  }
}

.p_History_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_History_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_History_txtArea {
  margin-block-start: 6rem
}

@media screen and (max-width: 767px) {
  .p_History_txtArea {
    margin-block-start: 3rem
  }
}

.p_History_txt {
  padding: 3rem 2.5rem;
  background: #f7f9fa;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p_History_txt {
    padding: 1.5rem;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: .02rem
  }
}

.p_Error_inner.l-lowerSection {
  padding-block: 21rem 12rem
}

@media screen and (max-width: 767px) {
  .p_Error_inner.l-lowerSection {
    padding-block: 12rem 4rem
  }
}

.p_Error_main {
  text-align: center
}

.p_Error_ttl {
  font-size: 8rem;
  color: #d70027;
  font-weight: 700;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .p_Error_ttl {
    font-size: 4rem
  }
}

.p_Error_subTtl {
  margin-block-start: 1rem;
  font-size: 1.4rem;
  color: #454545;
  font-weight: 400;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .p_Error_subTtl {
    margin-block-start: .5rem;
    font-size: 1rem
  }
}

.p_Error_txt {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .p_Error_txt {
    margin-block-start: 2rem
  }
}

.p_Error_txt p {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p_Error_txt p {
    font-size: 1.8rem
  }
}

.p_Error_link {
  margin-block-start: 5rem;
  margin-inline: auto;
  padding-block: 1.6rem;
  border: .1rem solid #d70027;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 40.7rem;
  width: 100%;
  font-size: 1.8rem;
  color: #d70027;
  font-weight: 500;
  transition: background .4s ease-out, color .4s ease-out, border .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Error_link:hover {
    background: #d70027;
    border: .1rem solid rgba(0, 0, 0, 0);
    color: #fff
  }
}

@media screen and (max-width: 767px) {
  .p_Error_link {
    margin-block-start: 2.5rem;
    padding-block: 1rem;
    font-size: 1.6rem
  }
}

.p_Event_ttlArea {
  display: flex;
  align-items: center
}

@media screen and (max-width: 767px) {
  .p_Event_ttlArea {
    align-items: flex-start;
    flex-direction: column;
    font-size: 2rem;
    font-weight: 600
  }
}

.p_Event_subTtl {
  margin-inline-start: 1.5rem;
  font-size: 1.4rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Event_subTtl {
    margin-block-start: 1rem;
    margin-inline-start: 0
  }
}

.p_Event_regularSubTtl {
  font-size: 2rem;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p_Event_regularSubTtl {
    font-size: 1.6rem;
    font-weight: 500
  }
}

.p_Event_item {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Event_item {
    margin-block-start: 3rem
  }
}

.p_Event_item:first-child {
  margin-block-start: 4rem
}

@media screen and (max-width: 767px) {
  .p_Event_item:first-child {
    margin-block-start: 3rem
  }
}

.p_Event_listWrap {
  margin-block-start: 2.5rem
}

@media screen and (max-width: 767px) {
  .p_Event_listWrap {
    margin-block-start: 1.5rem
  }
}

.p_Event_otherList {
  margin-block-start: 4rem;
  padding: 0 2.5rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Event_otherList {
    margin-block-start: 3rem;
    padding: .5rem 1.5rem
  }
}

.p_Event_otherItem {
  border-top: .1rem solid #dedede
}

.p_Event_otherItem:first-child {
  border-top: none
}

.p_Event_otherLink {
  padding-block: 3rem;
  padding-inline-end: 3rem;
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 6rem;
  transition: color .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Event_otherLink:hover {
    color: #d70027
  }
  .p_Event_otherLink:hover .p_Event_otherArrow {
    transform: translate(0, -50%) scale(1.2)
  }
}

@media screen and (max-width: 767px) {
  .p_Event_otherLink {
    padding-block: 1.5rem;
    align-items: flex-start;
    flex-direction: column
  }
}

.p_Event_otherArrow {
  position: absolute;
  display: inline-block;
  top: 50%;
  right: 0;
  width: .9rem;
  height: 1rem;
  transition: transform .6s ease-out;
  transform: translate(0, -50%)
}

.p_Event_otherArrow:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: .9rem;
  height: 2px;
  background: #d70027;
  border-radius: .1rem;
  transform: translate(0, -50%)
}

.p_Event_otherArrow:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: .9rem;
  height: .9rem;
  border-top: .2rem solid #d70027;
  border-right: .2rem solid #d70027;
  border-radius: .1rem;
  transform: translate(0, -50%) rotate(45deg)
}

.p_Event_otherDateArea {
  display: flex;
  align-items: center;
  flex-grow: 1;
  flex-shrink: 0
}

.p_Event_otherNew {
  margin-inline-end: 1rem;
  padding: .5rem .8rem;
  display: inline-block;
  background: #d70027;
  font-size: 1rem;
  color: #fff;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .p_Event_otherNew {
    padding: .3rem .5rem
  }
}

.p_Event_otherDate {
  font-size: 1.8rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Event_otherDate {
    font-size: 1.4rem
  }
}

.p_Event_otherTxt {
  flex-basis: 60rem;
  font-size: 1.8rem;
  font-weight: 600;
  flex-grow: 1;
  flex-shrink: 0
}

@media screen and (max-width: 767px) {
  .p_Event_otherTxt {
    flex-basis: initial;
    margin-block-start: .5rem;
    margin-inline-start: 0;
    font-size: 1.4rem
  }
}

.p_Evaluation_inner {
  padding: 8rem 8rem 7.5rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Evaluation_inner {
    padding: 3rem 2rem
  }
}

.p_Evaluation_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Evaluation_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_Evaluation_txtArea {
  margin-block-start: 6rem
}

@media screen and (max-width: 767px) {
  .p_Evaluation_txtArea {
    margin-block-start: 3rem
  }
}

.p_Evaluation_txt {
  padding: 3rem 2.5rem;
  background: #f7f9fa;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p_Evaluation_txt {
    padding: 1.5rem;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: .02rem
  }
}

.p_Training_inner {
  padding: 8rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Training_inner {
    padding: 3rem 1.5rem
  }
}

.p_Training_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Training_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_Training_content {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Training_content {
    margin-block-start: 5.5rem
  }
}

.p_Training_content:first-child {
  margin-block-start: 0
}

.p_Training_txtArea {
  margin-block-start: 4rem
}

@media screen and (max-width: 767px) {
  .p_Training_txtArea {
    margin-block-start: 3rem
  }
}

.p_Training_txt {
  padding: 3rem;
  background: #f7f9fa;
  font-size: 2rem;
  color: #454545;
  font-weight: 500;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p_Training_txt {
    padding: 1.5rem;
    font-size: 1.6rem;
    font-weight: 400
  }
}

.p_Training_img {
  margin-block-start: 2rem;
  display: block
}

.p_Training_careerUpDesc {
  margin-block-start: 4rem
}

.p_Training_baseCardWrap {
  margin-block-start: 6rem
}

@media screen and (max-width: 767px) {
  .p_Training_baseCardWrap {
    margin-block-start: 2rem
  }
}

.p_Benefits_inner {
  padding: 8rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Benefits_inner {
    padding: 3rem 1.5rem
  }
}

.p_Benefits_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Benefits_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_Benefits_content {
  margin-block-start: 12rem
}

@media screen and (max-width: 767px) {
  .p_Benefits_content {
    margin-block-start: 5.5rem
  }
}

.p_Benefits_content:first-child {
  margin-block-start: 0
}

.p_Benefits_txtArea {
  margin-block-start: 4rem
}

@media screen and (max-width: 767px) {
  .p_Benefits_txtArea {
    margin-block-start: 3rem
  }
}

.p_Benefits_icon {
  max-width: 2rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Benefits_icon {
    max-width: 1.3rem
  }
}

.p_Benefits_txt {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p_Benefits_txt {
    font-size: 1.8rem;
    font-weight: 400
  }
}

.p_Position_recruitTtl {
  text-align: center;
  font-size: 3.2rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Position_recruitTtl {
    font-size: 2rem
  }
}

.p_Position_recruitTtlSmall {
  font-size: 2.2rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Position_recruitTtlSmall {
    font-size: 1.2rem
  }
}

.p_Position_recruitTab {
  margin-block-start: 4rem;
  align-items: flex-end
}

@media screen and (max-width: 767px) {
  .p_Position_recruitTab {
    margin-block-start: 2rem
  }
}

.p_Position_recruitTabItem {
  width: 50%
}

.p_Position_recruitTabBtn {
  padding: 2.2rem 2rem;
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  background: #e9e7e6;
  font-size: 2.6rem;
  color: #aaa;
  line-height: 1.3;
  transition: color .3s ease-out, background .3s ease-out
}

.p_Position_recruitTabBtn:hover {
  color: #055f9b;
}

.p_Position_recruitTabBtn[aria-selected=true] {
  padding: 3rem 2.5rem;
  background: #006fb9;
  color: #fff
}

.p_Position_recruitTabBtn[aria-selected=true]:hover {
  background: #055f9b
}

@media screen and (max-width: 767px) {
  .p_Position_recruitTabBtn[aria-selected=true] {
    padding: 1.5rem
  }
}

@media screen and (max-width: 767px) {
  .p_Position_recruitTabBtn {
    padding: 1rem;
    font-size: clamp(1rem, 3vw, 1.2rem)
  }
}

.p_Position_recruitBlock {
  padding: 2.5rem 6rem 0;
  background: #fff
}

.p_Position_recruitBlock[aria-hidden=true] {
  display: none
}

.p_Position_recruitBlock[aria-hidden=false] {
  display: block
}

@media screen and (max-width: 767px) {
  .p_Position_recruitBlock {
    padding: 0 1.6rem 2rem
  }
}

.p_Position_recruitList {
  outline: none
}

.p_Position_recruitItem {
  border-top: .1rem solid #dedede
}

.p_Position_recruitItem:first-child {
  border-top: none
}

.p_Position_recruitItem:last-child {
  border-bottom: .1rem solid #dedede
}

.p_Position_recruitName {
  padding-block: 2.5rem;
  position: relative;
  text-align: left;
  width: 100%;
  font-size: 2.2rem;
  color: #3e3a39;
  font-weight: 700;
  transition: color .3s ease-out
}

@media screen and (min-width: 768px) {
  .p_Position_recruitName:hover {
    color: #d70027
  }
}

.p_Position_recruitName:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 3rem;
  width: 18px;
  height: 18px;
  border-top: 4px solid #055f9b;
  border-right: 4px solid #055f9b;
  border-radius: .25rem;
  transition: transform .2s ease-out;
  transform: translate(0, -50%) rotate(135deg)
}

.p_Position_recruitName[aria-expanded=true]:before {
  transform: translate(0, -50%) rotate(315deg)
}

@media screen and (max-width: 767px) {
  .p_Position_recruitName {
    padding-block: 2rem;
    font-size: 1.4rem
  }
  .p_Position_recruitName:before {
    right: 1.5rem;
    width: 10px;
    height: 10px;
    border-top: 2px solid #d70027;
    border-right: 2px solid #d70027;
    border-radius: .1rem
  }
}

.p_Position_recruitSubList[aria-hidden=false] {
  display: none
}

.p_Position_recruitSubItem {
  border-top: .1rem solid #dedede;
  font-size: 2.2rem;
  font-weight: 500
}

.p_Position_recruitSubLink {
  padding-block: 2rem;
  padding-inline-start: 2rem;
  display: block;
  font-size: 1.6rem;
  color: #707070;
  font-weight: 500;
  transition: color .3s ease-out
}

@media screen and (min-width: 768px) {
  .p_Position_recruitSubLink:hover {
    color: #d70027
  }
  .p_Position_recruitSubLink:hover .p_Position_recruitSubTxt:before {
    background: url("../img/career/position/groupe_iconRed.webp") no-repeat center center/cover
  }
  .no-webp .p_Position_recruitSubLink:hover .p_Position_recruitSubTxt:before {
    background: url("../img/career/position/groupe_iconRed.png") no-repeat center center/cover
  }
}

@media screen and (max-width: 767px) {
  .p_Position_recruitSubLink {
    font-size: 1.2rem
  }
}

.p_Position_recruitSubTxt {
  position: relative
}

.p_Position_recruitSubTxt:before {
  content: "";
  position: absolute;
  background: url("../img/career/position/groupe_icon.webp") no-repeat center center/cover;
  width: 1.6rem;
  height: 1.6rem;
  transition: background .3s ease-out;
  bottom: 0;
  right: -2.5rem
}

.no-webp .p_Position_recruitSubTxt:before {
  background: url("../img/career/position/groupe_icon.png") no-repeat center center/cover
}

@media screen and (max-width: 767px) {
  .p_Position_recruitSubTxt:before {
    right: -2rem;
    width: 1.1rem;
    height: 1.1rem
  }
}

.p_Position_banner {
  padding-block: 4.5rem 7rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Position_banner {
    padding-block: 1rem 2rem
  }
}

.p_Position_recruitBanner {
  display: block
}

.p_Position_recruitBanner img {
  width: 100%;
  height: auto
}

.p_Position_recruitBannerLink {
  transition: opacity .2s ease-out
}

@media screen and (min-width: 768px) {
  .p_Position_recruitBannerLink:hover {
    opacity: .6
  }
}

.p_Position_groupe.l-section {
  padding-block-start: 10rem
}

@media screen and (max-width: 767px) {
  .p_Position_groupe.l-section {
    padding-block-start: 4.5rem
  }
}

.p_Position_groupeTtl {
  text-align: center;
  font-size: 3.2rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Position_groupeTtl {
    font-size: 2rem
  }
}

.p_Position_groupeList {
  margin-block-start: 4rem;
  display: flex;
  flex-wrap: wrap;
  row-gap: 4rem;
  column-gap: 2rem
}

@media screen and (max-width: 767px) {
  .p_Position_groupeList {
    margin-block-start: 2rem;
    row-gap: 1.6rem;
    column-gap: 1.6rem;
    font-size: 2rem
  }
}

.p_Position_groupeItem {
  max-width: calc(33.3% - 1.3333333333rem);
  width: 100%;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Position_groupeItem {
    max-width: calc(50% - .8rem)
  }
}

.p_Position_groupeTxtLink {
  margin-block-start: 2rem;
  position: relative;
  display: inline-block;
  transition: color .4s ease-out;
  font-size: 1.6rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Position_groupeTxtLink {
    bottom: 1rem;
    left: 0;
    font-size: 1.2rem
  }
}

.p_Position_groupeTxtLink:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  background: url("../img/career/position/groupe_icon.webp") no-repeat center center/cover;
  width: 1.6rem;
  height: 1.6rem;
  transform: translate(0, -50%)
}

.no-webp .p_Position_groupeTxtLink:before {
  background: url("../img/career/position/groupe_icon.png") no-repeat center center/cover
}

@media screen and (max-width: 767px) {
  .p_Position_groupeTxtLink:before {
    right: -2rem;
    width: 1.2rem;
    height: 1.2rem
  }
}

.p_Position_groupeLink {
  padding: 0 1.5rem 2rem;
  position: relative;
  display: inline-block;
  height: 100%;
  box-shadow: 0px 0px 1.5rem -1rem #3e3a39;
  transition: box-shadow .4s ease-out
}

@media screen and (min-width: 768px) {
  .p_Position_groupeLink:hover {
    box-shadow: 0px 0px 2rem -1rem #3e3a39
  }
  .p_Position_groupeLink:hover .p_Position_groupeTxtLink, .p_Position_groupeLink:hover .p_Position_groupeListTtl {
    color: #d70027
  }
}

@media screen and (max-width: 767px) {
  .p_Position_groupeLink {
    padding: 0 1rem .5rem 1rem
  }
}

.p_Position_groupeTxtArea {
  padding-block-start: 2rem;
  border-top: .1rem solid #f0f0f0
}

@media screen and (max-width: 767px) {
  .p_Position_groupeTxtArea {
    padding-block-start: 1rem
  }
}

.p_Position_groupeListTtl {
  font-size: 2rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Position_groupeListTtl {
    font-size: 1.4rem
  }
}

.p_Position_groupeTxt {
  margin-block-start: 1.5rem;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #888
}

@media screen and (max-width: 767px) {
  .p_Position_groupeTxt {
    margin-block-start: 1rem;
    font-size: 1.2rem
  }
}

@keyframes height {
  0% {
    height: 0
  }
  100% {
    height: 100%
  }
}

.p_Referral_inner {
  padding: 8rem 8rem 7.5rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Referral_inner {
    padding: 3rem 2rem
  }
}

.p_Referral_inner.l-section {
  margin-block-start: 8rem
}

@media screen and (max-width: 767px) {
  .p_Referral_inner.l-section {
    margin-block-start: 3rem
  }
}

.p_Referral_txt {
  text-align: center;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.69
}

@media screen and (max-width: 767px) {
  .p_Referral_txt {
    text-align: left;
    font-size: 2.2rem
  }
}

.p_Referral_ReferralRecruitWrap {
  margin-block-start: 5rem
}

@media screen and (max-width: 767px) {
  .p_Referral_ReferralRecruitWrap {
    margin-block-start: 3rem
  }
}

.p_Referral_ReferralBtnWrap {
  margin-block-start: 7rem
}

@media screen and (max-width: 767px) {
  .p_Referral_ReferralBtnWrap {
    margin-block-start: 5rem
  }
}

.p_Referral_figure {
  margin-block-start: 6rem
}

@media screen and (max-width: 767px) {
  .p_Referral_figure {
    margin-block-start: 3rem
  }
}

.p_Referral_about {
  margin-block-start: 10rem
}

@media screen and (max-width: 767px) {
  .p_Referral_about {
    margin-block-start: 3rem
  }
}

.p_Referral_aboutInner {
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .p_Referral_aboutInner {
    flex-direction: column
  }
}

.p_Referral_aboutTxtArea {
  max-width: 54.4rem;
  width: 100%
}

.p_Referral_aboutTxt {
  margin-block-start: 2.5rem;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .002em
}

@media screen and (max-width: 767px) {
  .p_Referral_aboutTxt {
    font-size: 1.8rem
  }
}

.p_Referral_aboutImg {
  max-width: 42.6rem;
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Referral_aboutImg {
    max-width: none
  }
}

.p_Referral_faq {
  margin-block-start: 7rem
}

@media screen and (max-width: 767px) {
  .p_Referral_faq {
    margin-block-start: 5rem
  }
}

.p_Referral_faqTtlArea {
  position: relative
}

.p_Referral_faqTtlArea:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #d70027;
  border-radius: 2.5rem;
  width: .5rem;
  height: 100%
}

.p_Referral_faqTtlArea .a_Ttl:before {
  content: none
}

.p_Referral_faqSubTtl {
  padding-inline-start: 1.5rem;
  font-size: 2rem;
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p_Referral_faqSubTtl {
    margin-block-start: 1rem;
    padding-inline-start: 0;
    display: inline-block;
    font-size: 1.4rem
  }
}

.p_Search_main {
  display: flex;
  column-gap: 3rem
}

@media screen and (max-width: 767px) {
  .p_Search_main {
    flex-direction: column
  }
}

.p_Search_contentArea {
  max-width: 69.8%;
  width: 100%
}

@media screen and (max-width: 767px) {
  .p_Search_contentArea {
    max-width: none
  }
}

.p_Search_TtlWrap {
  margin-block-start: 0;
  display: flex;
  align-items: center
}

@media screen and (max-width: 767px) {
  .p_Search_TtlWrap {
    margin-block-start: 0
  }
}

.p_Search_ttl {
  padding-inline-start: 1.5rem;
  position: relative;
  font-size: 0
}

.p_Search_ttl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #d70027;
  border-radius: 2.5rem;
  width: .5rem;
  height: 100%
}

.p_Search_ttlTxt {
  font-size: 2.4rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Search_ttlTxt {
    font-size: 2rem
  }
}

.p_Search_img {
  width: 4.2rem
}

.p_Search_txt {
  margin-inline-start: 1.5rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5
}

@media screen and (max-width: 767px) {
  .p_Search_txt {
    margin-inline-start: 1rem
  }
}

.p_Search_BaseListWrap {
  margin-block-start: 3rem
}

@media screen and (max-width: 767px) {
  .p_Search_BaseListWrap {
    margin-block-start: 2rem
  }
}

.p_Search_figure {
  margin-inline-start: 1rem;
  font-size: 1.8rem;
  color: #d70027;
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .p_Search_figure {
    font-size: 1.6rem
  }
}

.p_Search_block {
  margin-block-start: 2rem;
  padding-block: 8rem;
  background: #fff
}

@media screen and (max-width: 767px) {
  .p_Search_block {
    padding-block: 5rem;
    padding-inline: 1rem
  }
}

.p_Search_blockInner {
  display: flex;
  justify-content: center
}

.p_Search_InputTxtWrap {
  margin-inline: auto;
  margin-block-start: 3rem;
  text-align: center;
  width: 35.4rem
}

@media screen and (max-width: 767px) {
  .p_Search_InputTxtWrap {
    width: auto
  }
}

.p_Search_recommendTtl {
  margin-block-start: 11.5rem;
  font-size: 2.8rem;
  font-weight: 600
}

@media screen and (max-width: 767px) {
  .p_Search_recommendTtl {
    margin-block-start: 4.5rem;
    font-size: 2.2rem
  }
}


/*!
 * ress.css • v2.0.4
 * MIT License
 * github.com/filipelinhares/ress
 */

html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  tab-size: 4
}

*, ::before, ::after {
  background-repeat: no-repeat;
  box-sizing: inherit
}

::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit
}

* {
  padding: 0;
  margin: 0
}

hr {
  overflow: visible;
  height: 0
}

details, main {
  display: block
}

summary {
  display: list-item
}

small {
  font-size: 80%
}

[hidden] {
  display: none
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

a {
  background-color: rgba(0, 0, 0, 0)
}

a:active, a:hover {
  outline-width: 0
}

code, kbd, pre, samp {
  font-family: monospace
}

pre {
  font-size: 1em
}

b, strong {
  font-weight: bolder
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

input {
  border-radius: 0
}

[disabled] {
  cursor: default
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

textarea {
  overflow: auto;
  resize: vertical
}

button, input, optgroup, select, textarea {
  font: inherit
}

optgroup {
  font-weight: bold
}

button {
  overflow: visible
}

button, select {
  text-transform: none
}

button, [type=button], [type=reset], [type=submit], [role=button] {
  cursor: pointer;
  color: inherit
}

button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0
}

button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}

button, input, select, textarea {
  background-color: rgba(0, 0, 0, 0);
  border-style: none
}

button:-moz-focusring, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText
}

select {
  -moz-appearance: none;
  -webkit-appearance: none
}

select::-ms-expand {
  display: none
}

select::-ms-value {
  color: currentColor
}

legend {
  border: 0;
  color: inherit;
  display: table;
  white-space: normal;
  max-width: 100%
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit
}

img {
  border-style: none
}

progress {
  vertical-align: baseline
}

svg:not([fill]) {
  fill: currentColor
}

@media screen {
  [hidden~=screen] {
    display: inherit
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important
  }
}

[aria-busy=true] {
  cursor: progress
}


[aria-disabled] {
  cursor: default
}

li {
  list-style: none
}

* {
  box-sizing: border-box
}

html {
  font-size: 62.5%
}

body {
  font-family: "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴシック", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", Meiryo, "メイリオ", sans-serif;
  color: #3e3a39;
  font-size: 1.6rem;
  overflow-x: hidden;
  position: relative
}

body.js-active {
  overflow-y: hidden
}

a {
  color: #3e3a39;
  text-decoration: none
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom
}

figure {
  font-size: 0
}

.bold {
  font-weight: bold
}

p {
  line-height: 1.6
}

h2 {
  font-size: 3.4rem;
  font-weight: 700
}

.u-pcDb {
  display: block
}

.u-pcDib {
  display: inline-block
}

.u-pcDf {
  display: flex
}

.u-pcWeb {
  display: -webkit-box
}

.u-spDb, .u-spDib, .u-spDf, .u-spWeb {
  display: none
}

@media screen and (max-width: 767px) {
  .u-pcDb, .u-pcDib, .u-pcDf, .u-pcWeb {
    display: none
  }
  .u-spDb {
    display: block
  }
  .u-spDib {
    display: inline-block
  }
  .u-spDf {
    display: flex
  }
  .u-spWeb {
    display: -webkit-box
  }
}

[aria-hidden=true] {
  display: none
}

[aria-hidden=false] {
  display: block
}

.ext-link {
  position: relative
}

.ext-link::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 20px;
  height: 19px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIxOSIgdmlld0JveD0iMCAwIDIwIDE5Ij4KICA8ZyBpZD0i44Kw44Or44O844OXXzcyNTMiIGRhdGEtbmFtZT0i44Kw44Or44O844OXIDcyNTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC01NDMuNzg5IC0yNjE5LjgzNCkiPgogICAgPHJlY3QgaWQ9IumVt+aWueW9ol8zNDQ4IiBkYXRhLW5hbWU9IumVt+aWueW9oiAzNDQ4IiB3aWR0aD0iMjAiIGhlaWdodD0iMTkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDU0My43ODkgMjYxOS44MzQpIiBmaWxsPSIjZGVkZWRlIi8+CiAgICA8cGF0aCBpZD0iYXJyb3ctdXAtcmlnaHQtZnJvbS1zcXVhcmUtc29saWQiIGQ9Ik02LjUwOSwwYS42NTEuNjUxLDAsMSwwLDAsMS4zSDguMTkxTDQuMSw1LjRhLjY1Mi42NTIsMCwwLDAsLjkyMS45MjFsNC4wOTQtNC4xVjMuOTA1YS42NTEuNjUxLDAsMSwwLDEuMywwVi42NTFBLjY1LjY1LDAsMCwwLDkuNzYzLDBaTTEuNjI3LjY1MUExLjYyNywxLjYyNywwLDAsMCwwLDIuMjc4VjguNzg3YTEuNjI3LDEuNjI3LDAsMCwwLDEuNjI3LDEuNjI3SDguMTM2QTEuNjI3LDEuNjI3LDAsMCwwLDkuNzYzLDguNzg3VjYuNTA5YS42NTEuNjUxLDAsMCwwLTEuMywwVjguNzg3YS4zMjYuMzI2LDAsMCwxLS4zMjUuMzI1SDEuNjI3QS4zMjYuMzI2LDAsMCwxLDEuMyw4Ljc4N1YyLjI3OGEuMzI2LjMyNiwwLDAsMSwuMzI1LS4zMjVIMy45MDVhLjY1MS42NTEsMCwxLDAsMC0xLjNaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1NDguNzk3IDI2MjQuMjE5KSIgZmlsbD0iIzNlM2EzOSIvPgogIDwvZz4KPC9zdmc+Cg==");
  background-size: cover;
  background-position: center
}

/* .l-section {
  padding-block-start: 8rem
} */

@media screen and (max-width: 767px) {
  .l-section {
    padding-block-start: 0rem;
    margin-block-start: -10rem;
  }
}

.l-lowerSection {
  padding-block-start: 13.5rem
}

@media screen and (max-width: 767px) {
  .l-lowerSection {
    padding-block-start: 7.5rem
  }
}

.l-content {
  margin-inline: auto;
  max-width: 102.4rem;
  width: 91.8%
}

.l-sectionInner {
  padding: 7rem;
  overflow: hidden
}

@media screen and (max-width: 767px) {
  .l-sectionInner {
    padding: 3rem 1.5rem
  }
}

.l-main {
  background: #f7f7f7
}

.l-main.hidden_shown_search {
  padding-block-end: 15rem
}

@media screen and (max-width: 767px) {
  .l-main.hidden_shown_search {
    padding-block-end: 4.5rem
  }
}

@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal
}

:root {
  --swiper-theme-color: #007aff
}

.swiper, swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block
}

.swiper-vertical>.swiper-wrapper {
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box
}

.swiper-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0)
}

.swiper-horizontal {
  touch-action: pan-y
}

.swiper-vertical {
  touch-action: pan-x
}

.swiper-slide, swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d
}

.swiper-3d {
  perspective: 1200px
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
  -ms-scroll-snap-type: none;
  scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: none
}

.swiper-centered>.swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: rgba(0, 0, 0, 0)
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader, swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg)
  }
  100% {
    transform: rotate(360deg)
  }
}

:root {
  --swiper-navigation-size: 44px
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size)/44*27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size)/2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev"
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next"
}

.swiper-button-lock {
  display: none
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33)
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2)
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}

.swiper-pagination-bullet:only-child {
  display: none !important
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical>.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: .2s transform, .2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s transform, .2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, :host(.swiper-horizontal.swiper-rtl) .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s transform, .2s right
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical>.swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0
}

.swiper-pagination-lock {
  display: none
}

/*----------------------------------------------------
トップページ適用
----------------------------------------------------*/

    #top_page_add .oubo_bannner {
        position: fixed;
        top: 47px;
        z-index: 1000;
        right: 78px;
        width: 220px;
    }

    #top_page_add .oubo_bannner img {
        width: 100%;
    }

    #top_page_add .oubo_circle {
        position: fixed;
        top: 30px;
        z-index: 1;
        right: 55px;
        width: 267px;
        animation: rotate-anime 6s linear infinite;
    }

    #top_page_add .oubo_circle img {
        width: 100%;
    }

    @keyframes rotate-anime {
        0% {
            transform: rotate(0);
        }

        100% {
            transform: rotate(360deg);
        }
    }

    @media screen and (max-width: 767px) {
        #top_page_add .oubo_circle {
            width: 30%;
            top: 63px;
            z-index: 1;
            right: 4px;
        }

        #top_page_add .oubo_bannner {
            width: 25%;
            top: 70px;
            right: 13px;
        }
    }

/*----------------------------------------------------
中途採用ページ適用
----------------------------------------------------*/

      #career_page_add #career_ttl-Cyf9nf .career_ttl {
                padding-block-end: 3rem;
                display: flex;
                align-items: center;
                border-bottom: 1px solid #707070;
                font-size: 3.6rem;
                line-height: 1;
                font-weight: 600;
                transition: all 0.8s cubic-bezier(0.18, 0.06, 0.23, 1) 0s;
                transition-property: opacity, clip-path;
                will-change: opacity, clip-path;
            }

             #career_page_add .sub_inner {
                width: 70%;
            }

             #career_page_add .sub_inner {
                width: 980px;
                margin: 0 auto;
                box-sizing: border-box;
                overflow: hidden;
                display: contents;
            }


             #career_page_add section .inner {
                padding: 80px 0 10px;
            }


             #career_page_add .page section h2 {
                letter-spacing: 10px;
            }

             #career_page_add section h2 {
                font-size: 3.2rem;
                font-weight: 700;
                line-height: 1.5;
                margin-bottom: 40px;
            }


             #career_page_add .flow_area {
                display: inline-flex;
            }

             #career_page_add .career .flow_area dl {
                width: 150px;
            }

             #career_page_add .flow_area dt {
                position: relative;
            }

             #career_page_add .flow_area dl:first-of-type dt::before {
                left: 50%;
                width: 50%;
            }

             #career_page_add .flow_area dt::before {
                z-index: -1;
                content: '';
                position: absolute;
                top: 24px;
                left: 0;
                border-bottom: 1px solid #A5A5A5;
                width: 100%;
            }

             #career_page_add p[class^="flow-"] {
                font-size: 1.8rem;
                font-family: 'Noto Sans JP', sans-serif;
                font-weight: 700;
                color: #fff;
                border-radius: 27px;
                width: 47px;
                height: 47px;
                padding-top: 7px;
                margin: 0 auto;
            }

             #career_page_add .flow-no1 {
                background-color: #D6AC9E;
            }

             #career_page_add .flow_area dd {
                padding: 20px;
                line-height: 1.5;
            }

             #career_page_add .flow_area dd {
                padding: 20px;
                line-height: 1.5;
            }

             #career_page_add div#o_HeaderScroll {
                margin-top: -27px;
            }

             #career_page_add p.career_recruit {
                font-size: 2.5rem;
                font-weight: 700;
                line-height: 1.5;
                margin-bottom: 20px;
                padding-top: 20px;
                text-align: center;
            }

             #career_page_add .t_layout01 {
                margin-bottom: 30px;
                text-align: left;
                width: 100%;
                font-size: 16px;
            }

             #career_page_add .t_layout01 tr th {
                padding: 10px 15px;
                width: 26%;
            }

             #career_page_add .t_layout01 tr th,
             #career_page_add .t_layout01 tr td {
                border-top: 1px solid #A5A5A5;
                padding: 9px;
                line-height: 1.8;
                background: #fff;
            }

             #career_page_add .t_layout01 tr th {
                background-color: #E8E8E8;
            }

             #career_page_add .gra-icon {
                width: 150px;
                text-align: center;
                margin: 0 auto;
                margin-top: 8rem;
            }

             #career_page_add .companySec {
                margin-top: 30px;
            }

             #career_page_add .l-recruit-bnr {
                display: flex;
                margin-top: 50px;
                margin-block-end: 105px;
                width: 1050px;
                margin: 50px auto 80px;
            }

             #career_page_add .slick-slide.slick-cloned img {
                width: 100%;
            }

             #career_page_add .slick-slide {
                display: block !important;
            }

             #career_page_add .slick-list.draggable {
                margin-top: 100px;
            }

            @media screen and (min-width: 768px) {
                #career_page_add .l-concept-heading {
                    font-size: 3.6rem;
                }
            }

             #career_page_add .l-concept-heading {
                margin-block-end: 2.6rem;
                font-family: "Noto Sans-Serif JP", "Hiragino Mincho ProN", "Hiragino Mincho Pro", 游ゴシック, "Yu Gothic", YuGothic, sans-serif;
                font-weight: 600;
                text-align: center;
                margin-block-start: 7.6rem;
            }

             #career_page_add .sameSize {
                font-size: 15px;
                text-align: left;
                margin: 0 auto;
                width: 51%;
            }
             #career_page_add .l-recruit-bnr-left :hover {
                opacity: 0.9;
             }

             #career_page_add #career_ttl-Cyf9nf .career_ttl_jp {
                margin-inline-start: 1rem;
                margin-block-start: 1rem;
                font-size: 2rem;
                font-weight: 600;
            }
           .sp{
                display:none;
            }

             #career_page_add table.t_layout01 p {
                padding-left: 1em;
                text-indent: -1em;
             }
            @media screen and (max-width: 767px) {
                 #career_page_add #career_ttl-Cyf9nf .career_ttl {
                    padding-block-end: 2rem;
                    font-size: 2.8rem;
                    line-height:1.4;
                }

                 #career_page_add #career_ttl-Cyf9nf .career_ttl_jp {
                    font-size: 1.2rem;
                }

                 #career_page_add .gra-icon {
                    margin-top: 2rem;
                }

                 #career_page_add .p_Position_recruit {
                    margin-top: 50px;
                }

                 #career_page_add .sameSize {
                    width: 99%;
                }
                 #career_page_add .l-recruit-bnr {
                width: 100%;
            }
               .sp{
                display:block;
            }
                #career_page_add .t_layout01 tr th {
                padding: 20px 5px 20px 12px;
                font-size: 13px;
            }

            }

            #career_page_add #spacer-Pnjnwk .spacer {
                height: 110px;
            }

            @media screen and (max-width: 767px) {
                #career_page_add #spacer-Pnjnwk .spacer {
                    height: 60px;
                }
            }

            #career_page_add .wp-admin #spacer-Pnjnwk .spacer {
                position: relative;
                border: 0.1rem solid #999;
            }

            #career_page_add .wp-admin #spacer-Pnjnwk .spacer:before {
                content: "Spacer";
                position: absolute;
                bottom: 0.2rem;
                right: 0.2rem;
                font-size: 1rem;
                color: #999;
                line-height: 1;
            }

            #career_page_add #banner-oMLt8k {
                display: block;
                margin: auto;
                width: 100%;
                margin-block-start: 80px;
                margin-block-end: 105px;
            }

            #career_page_add #spacer-Oay7Y3 .spacer {
                height: 0px;
            }

            #career_page_add .wp-admin #spacer-Oay7Y3 .spacer {
                position: relative;
                border: 0.1rem solid #999;
            }

            #career_page_add .wp-admin #spacer-Oay7Y3 .spacer:before {
                content: "Spacer";
                position: absolute;
                bottom: 0.2rem;
                right: 0.2rem;
                font-size: 1rem;
                color: #999;
                line-height: 1;
            }

            @media screen and (max-width: 767px) {
                #career_page_add #banner-oMLt8k {
                    width: 100%;
                }

                #career_page_add #spacer-Oay7Y3 .spacer {
                    height: px;
                }
            }

            #career_page_add #banner-oMLt8k .banner {
                display: block;
                transition: filter .2s ease-out;
            }

            @media screen and (min-width: 768px) {
               #career_page_add #banner-oMLt8k .banner:hover {
                    filter: opacity(0.6);
                }
            }
/*----------------------------------------------------
社長メッセージページ適用
----------------------------------------------------*/
                   #message_page_add a_Ttl-GKNX28 .a_Ttl {
                        padding-inline-start: 1.5rem;
                        position: relative;
                        font-size: 0;
                    }

                   #message_page_add #a_Ttl-GKNX28 .a_Ttl.noLine {
                        padding-inline-start: 0;
                    }

                    #message_page_add #a_Ttl-GKNX28 .a_Ttl.flex {
                        display: flex;
                        align-items: center;
                    }

                    #message_page_add #a_Ttl-GKNX28 .a_Ttl:before {
                        content: "";
                        position: absolute;
                        top: 0;
                        left: 0;
                        background: #d70027;
                        border-radius: 2.5rem;
                        width: 0.5rem;
                        height: 100%;
                    }

                    #message_page_add #a_Ttl-GKNX28 .a_Ttl.noLine:before {
                        content: none;
                    }

                    #message_page_add #a_Ttl-GKNX28 .a_TtlTxt {
                        font-size: 2.4rem;
                        font-weight: 600;
                    }
                    #message_page_add h1.o_Mv_ttl p {
                        text-stroke: 1px #8b0000;
                        color: #363636;
                         text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #FFF, 1px -1px 0 #FFE, 1px 0 0 #fff, -1px 0 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff;
                    }

                    @media screen and (max-width: 767px) {
                        #message_page_add #a_Ttl-GKNX28 .a_Ttl .a_txtUnderTtl {
                            display: none;
                        }

                        #message_page_add #a_Ttl-GKNX28 .a_TtlTxt {
                            font-size: 2rem;
                        }

                       #message_page_add  #a_Ttl-GKNX28 .a_txtUnderTtl {
                            margin-block-start: 1rem;
                            display: inline-block;
                            font-size: 1.4rem;
                        }

                        #message_page_add #a_Ttl-GKNX28 .a_txtRightTtl {
                            margin-block-start: 1rem;
                            margin-inline-start: 0;
                        }
                    }

                    #message_page_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                        margin-block-start: 0.5rem;
                        font-size: 1.6rem;
                        font-weight: 400;
                    }

                    #message_page_add #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-inline-start: 1.5rem;
                        font-size: 1.4rem;
                        font-weight: 400;
                    }

                    #message_page_add .o_ContentArea #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-block-start: 0;
                    }

                    #message_page_add .o_ContentArea #a_Ttl-GKNX28 .a_Ttl {
                        font-size: 0;
                    }
/*----------------------------------------------------
インタビューページ適用
----------------------------------------------------*/
                    #interview_page_add #a_Ttl-GKNX28 .a_Ttl {
                        padding-inline-start: 1.5rem;
                        position: relative;
                        font-size: 0;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_page_add #a_Ttl-GKNX28 .a_Ttl .a_txtUnderTtl {
                            display: none;
                        }
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_Ttl.noLine {
                        padding-inline-start: 0;
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_Ttl.flex {
                        display: flex;
                        align-items: center;
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_Ttl:before {
                        content: "";
                        position: absolute;
                        top: 0;
                        left: 0;
                        background: #d70027;
                        border-radius: 2.5rem;
                        width: 0.5rem;
                        height: 100%;
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_Ttl.noLine:before {
                        content: none;
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_TtlTxt {
                        font-size: 2.4rem;
                        font-weight: 600;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_page_add #a_Ttl-GKNX28 .a_TtlTxt {
                            font-size: 2rem;
                        }
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                        margin-block-start: 0.5rem;
                        font-size: 1.6rem;
                        font-weight: 400;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_page_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                            margin-block-start: 1rem;
                            display: inline-block;
                            font-size: 1.4rem;
                        }
                    }

                    #interview_page_add #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-inline-start: 1.5rem;
                        font-size: 1.4rem;
                        font-weight: 400;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_page_add #a_Ttl-GKNX28 .a_txtRightTtl {
                            margin-block-start: 1rem;
                            margin-inline-start: 0;
                        }

                        #interview_page_add .inner {
                            width: 1050px;
                        }
                    }

                    #interview_page_add .o_ContentArea #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-block-start: 0;
                    }

                    #interview_page_add .o_ContentArea #a_Ttl-GKNX28 .a_Ttl {
                        font-size: 0;
                    }

                    #interview_page_add section .inner {
                        padding: 80px 0;
                    }

                    #interview_page_add .inner {
                        width: 1050px;
                        margin: 0 auto;
                        box-sizing: border-box;
                        overflow: hidden;
                    }

                    #interview_page_add h2.cate_h2 {
                        position: relative;
                        font-size: 1.6rem;
                        text-align: left;
                        margin-bottom: 10px;
                        padding-left: 80px;
                        letter-spacing: normal;
                    }

                    #interview_page_add section h2 {
                        font-size: 3.2rem;
                        font-weight: 700;
                        line-height: 1.5;
                        margin-bottom: 40px;
                    }

                    #interview_page_add h3.cate_h3 {
                        font-size: 3.2rem;
                        font-family: 'Noto Sans JP', sans-serif;
                        font-weight: 700;
                        letter-spacing: 10px;
                        text-align: left;
                        line-height: 1.8;
                        margin-bottom: 50px;
                    }

                    #interview_page_add .contents {
                        width: 1050px;
                        margin: 0 auto;
                        overflow: hidden;
                    }

                    #interview_page_add .main {
                        float: left;
                        width: 81%;
                    }

                    #interview_page_add .staff_list {
                        margin-top: 0;
                        overflow: hidden;
                    }

                    #interview_page_add .staff_list dl {
                        float: left;
                        position: relative;
                        margin: 0 0.3% 30px 0;
                        width: 24.7%;
                    }

                    #interview_page_add .staff_list dl dd.jobtype {
                        background-color: #000;
                        font-size: 1rem;
                        font-weight: bold;
                        color: #fff;
                        padding: 5px;
                        margin: 10px auto 6px;
                    }

                    #interview_page_add .staff_list dl dd.int_title {
                        font-size: 1.2rem;
                        text-align: left;
                        margin: 0 auto;
                        line-height: 1.5;
                    }

                    #interview_page_add .staff_list dl dd {
                        width: 90%;
                    }

                    #interview_page_add .staff_list dl a {
                        position: absolute;
                        top: 0;
                        left: 0;
                        display: block;
                        width: 100%;
                        height: 100%;
                    }

                    #interview_page_add h1.o_Mv_ttl p {
                        text-stroke: 1px #8b0000;
                        color: #363636;
                        text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #FFF, 1px -1px 0 #FFE, 1px 0 0 #fff, -1px 0 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff;
                    }
                    #interview_page_add .interview_h2{
                    font-size: 2.4rem !important;
                    padding-left: 20px !important;
                    margin-bottom: 38px !important;
                    }

                    @media screen and (max-width: 767px) {
                       #interview_page_add .inner {
                            width: 100%;
                        }

                        #interview_page_add .staff_list dl {
                            float: none;
                            width: 36.7%;
                        }
                    }
/*----------------------------------------------------
インタビュー個別ページ適用
----------------------------------------------------*/
    #interview_detail_add #a_Ttl-GKNX28 .a_Ttl {
                        padding-inline-start: 1.5rem;
                        position: relative;
                        font-size: 0;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_detail_add #a_Ttl-GKNX28 .a_Ttl .a_txtUnderTtl {
                            display: none;
                        }
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_Ttl.noLine {
                        padding-inline-start: 0;
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_Ttl.flex {
                        display: flex;
                        align-items: center;
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_Ttl:before {
                        content: "";
                        position: absolute;
                        top: 0;
                        left: 0;
                        background: #d70027;
                        border-radius: 2.5rem;
                        width: 0.5rem;
                        height: 100%;
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_Ttl.noLine:before {
                        content: none;
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_TtlTxt {
                        font-size: 2.4rem;
                        font-weight: 600;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_detail_add #a_Ttl-GKNX28 .a_TtlTxt {
                            font-size: 2rem;
                        }
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                        margin-block-start: 0.5rem;
                        font-size: 1.6rem;
                        font-weight: 400;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_detail_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                            margin-block-start: 1rem;
                            display: inline-block;
                            font-size: 1.4rem;
                        }
                    }

                    #interview_detail_add #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-inline-start: 1.5rem;
                        font-size: 1.4rem;
                        font-weight: 400;
                    }

                    @media screen and (max-width: 767px) {
                        #interview_detail_add #a_Ttl-GKNX28 .a_txtRightTtl {
                            margin-block-start: 1rem;
                            margin-inline-start: 0;
                        }
                    }

                    #interview_detail_add .o_ContentArea #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-block-start: 0;
                    }

                    #interview_detail_add .o_ContentArea #a_Ttl-GKNX28 .a_Ttl {
                        font-size: 0;
                    }
/*----------------------------------------------------
応募はこちらページ適用
----------------------------------------------------*/
  #nextstep_page_add section#p_Position {
        margin-top: 150px;
        padding-bottom: 150px;
    }

    #nextstep_page_add .p_Top_txt {
        font-size: 2.4rem;
        font-weight: 600;
        transition: color .6s ease-out, opacity .6s ease-out;
        color: #fff;
    }

    #nextstep_page_add .a_ArrowText {
        display: flex;
        align-items: center;
        font-size: 1.4rem;
        font-weight: 600;
        letter-spacing: .034em;
        color: #fff;
    }

    #nextstep_page_add .p_Top_txtArea {
        padding: 2rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-left: solid 43px tomato;
        background: #006fb9;
    }

    #nextstep_page_add .p_Top_txtArea_gra {
        padding: 2rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-left: solid 43px mediumseagreen;
        background: #006fb9;
    }

    #nextstep_page_add .nextstage_image {
        position: absolute;
        z-index: 1;
        width: 551px;
        left: 13%;
        /* top: 0; */
        bottom: 35%;
    }

    @media screen and (max-width: 767px) {
        #nextstep_page_add .nextstage_image {
            width: 91%;
            left: 4%;
            bottom: -42%;
        }
    }
/*----------------------------------------------------
エントリーフォームページ適用
----------------------------------------------------*/

    #entry_page_add .nextstage_image {
        position: absolute;
        z-index: 1;
        width: 551px;
        left: 13%;
        /* top: 0; */
        bottom: 0;
    }
     #entry_page_add h1.o_Mv_ttl p {
                        text-stroke: 1px #8b0000;
                        color: #363636;
                        text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #FFF, 1px -1px 0 #FFE, 1px 0 0 #fff, -1px 0 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff;
                    }

    @media screen and (max-width: 767px) {
        #entry_page_add .nextstage_image {
            position: absolute;
            z-index: 1;
            width: 85%;
            left: 8%;
            /* top: 0; */
            bottom: -66px;
        }
    }

                    #entry_page_add #a_Ttl-GKNX28 .a_Ttl {
                        padding-inline-start: 1.5rem;
                        position: relative;
                        font-size: 0;
                    }
                  #entry_page_add span.mwform-radio-field.horizontal-item {
                         margin-right: 88%;
                     }

                    @media screen and (max-width: 767px) {
                        #entry_page_add #a_Ttl-GKNX28 .a_Ttl .a_txtUnderTtl {
                            display: none;
                        }
                   #entry_page_add span.mwform-radio-field.horizontal-item {
                         margin-right: 83%;
                     }

                    }

                    #entry_page_add #a_Ttl-GKNX28 .a_Ttl.noLine {
                        padding-inline-start: 0;
                    }

                    #entry_page_add #a_Ttl-GKNX28 .a_Ttl.flex {
                        display: flex;
                        align-items: center;
                    }

                    #entry_page_add #a_Ttl-GKNX28 .a_Ttl:before {
                        content: "";
                        position: absolute;
                        top: 0;
                        left: 0;
                        background: #d70027;
                        border-radius: 2.5rem;
                        width: 0.5rem;
                        height: 100%;
                    }

                    #entry_page_add #a_Ttl-GKNX28 .a_Ttl.noLine:before {
                        content: none;
                    }

                    #entry_page_add #a_Ttl-GKNX28 .a_TtlTxt {
                        font-size: 2.4rem;
                        font-weight: 600;
                    }
                    #entry_page_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                        margin-block-start: 0.5rem;
                        font-size: 1.6rem;
                        font-weight: 400;
                    }
                    #entry_page_add span.error {
                        color: red;
                    }

                    @media screen and (max-width: 767px) {
                        #entry_page_add #a_Ttl-GKNX28 .a_TtlTxt {
                            font-size: 2rem;
                        }
                        #entry_page_add #a_Ttl-GKNX28 .a_txtUnderTtl {
                            margin-block-start: 1rem;
                            display: inline-block;
                            font-size: 1.4rem;
                        }

                        #entry_page_add .t_layout02 tr th,
                        #entry_page_add .t_layout02 tr td {
                            border-bottom: 0;
                        }

                        #entry_page_add .t_layout02 tr th,
                        #entry_page_add .t_layout02 tr td {
                            padding: 0 0 5px;
                            line-height: 1.8;
                            display: block;
                            width: auto !important;
                        }

                        #entry_page_add .t_layout02 tr th,
                        #entry_page_add .t_layout02 tr td {
                            padding: 10px 5px;
                            line-height: 1.6;
                            border: 1px solid #ccc;
                        }
                        #entry_page_add #a_Ttl-GKNX28 .a_txtRightTtl {
                            margin-block-start: 1rem;
                            margin-inline-start: 0;
                        }

                    }

                    #entry_page_add #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-inline-start: 1.5rem;
                        font-size: 1.4rem;
                        font-weight: 400;
                    }

                    #entry_page_add .o_ContentArea #a_Ttl-GKNX28 .a_txtRightTtl {
                        margin-block-start: 0;
                    }

                    #entry_page_add .o_ContentArea #a_Ttl-GKNX28 .a_Ttl {
                        font-size: 0;
                    }

                    #entry_page_add section .inner {
                        padding: 80px 0;
                    }

                    #entry_page_add .inner {
                        margin: 0 auto;
                        box-sizing: border-box;
                        /* overflow: hidden; */
                    }

                    #entry_page_add .page section h2 {
                        letter-spacing: 10px;
                    }

                    #entry_page_add section h2 {
                        font-size: 3.2rem;
                        font-weight: 700;
                        line-height: 1.5;
                        margin-bottom: 40px;
                    }

                    #entry_page_add .entry .li_type02,
                    #entry_page_add .contact .li_type02 {
                        margin: 30px auto;
                        width: 580px;
                    }

                    #entry_page_add ul.li_type02 {
                        text-align: left;
                        padding-left: 20px;
                    }

                    #entry_page_add ul.li_type02 li {
                        position: relative;
                        line-height: 1.5;
                        list-style-type: none;
                        margin: 0 0 6px 0px;
                    }

                    #entry_page_add ul.li_type02 li::before {
                        content: '※';
                        position: absolute;
                        top: 0;
                        left: -20px;
                    }

                    #entry_page_add .red {
                        color: #ff0000;
                    }

                    #entry_page_add .sec-eform .inner {
                        padding-top: 0;
                    }

                    #entry_page_add .sec-eform h2 {
                        font-size: 2rem;
                        margin-bottom: 20px;
                        border-bottom: 1px solid #ccc;
                    }

                    #entry_page_add section h2 {
                        font-size: 3.2rem;
                        font-weight: 700;
                        line-height: 1.5;
                        margin-bottom: 40px;
                    }

                    #entry_page_add .sec-eform .t_layout02 {
                        width: 780px;
                        margin: 0 auto 80px;
                    }

                    #entry_page_add .t_layout02 {
                        margin-bottom: 30px;
                        text-align: left;
                        width: 100%;
                        border-collapse: collapse;
                    }

                    #entry_page_add .sec-eform .t_layout02 th {
                        width: 33%;
                    }

                    #entry_page_add .t_layout02 tr th,
                    #entry_page_add .t_layout02 tr td {
                        padding: 10px 5px;
                        line-height: 1.6;
                        border: 1px solid #ccc;
                    }

                    #entry_page_add .t_layout02 tr th {
                        font-weight: normal;
                        background-color: #f5f5f5;
                    }

                    #entry_page_add .sec-eform .t_layout02 th.bg {
                        background-color: #ccc;
                        padding: 10px !important;
                        font-weight: 700;
                    }

                    #entry_page_add .sec-eform table.bb {
                        border-bottom: 1px solid #ccc;
                        margin-bottom: 20px;
                        padding-bottom: 20px;
                    }

                    #entry_page_add .o_ContentArea p {
                        margin-block-start: 2.5rem;
                        font-size: 1.8rem;
                        font-weight: 400;
                        line-height: 1.8;
                    }

                    #entry_page_add button,
                    #entry_page_add input,
                    #entry_page_add optgroup,
                    #entry_page_add select,
                    #entry_page_add textarea {
                        font: inherit;
                    }

                    #entry_page_add textarea {
                        overflow: auto;
                        resize: vertical;
                    }

                   input[type="text"],
                   input[type="email"],
                   input[type="tel"] {
                        padding: 10px;
                        border: 1px solid #ccc;
                        background-color: #fbfbfb;
                        border-radius: 2px;
                        outline: none;
                        width: 100%;
                        font-size: 1.4rem;
                    }

                    input.user-name1,
                    input.user-name2,
                    input.user-kana1,
                    input.user-kana2,
                    input.en-name1,
                    input.en-name2,
                    input.en-kana1,
                    input.en-kana2,
                    input.en-postno,
                    input.en-people,
                    input.period-ym1,
                    input.period-ym2,
                    input.en-status,
                    input.en-annual-income {
                        width: 100%;
                    }

                    #entry_page_add .select-wrap {
                        position: relative;
                        padding: 5px 10px;
                        border: 1px solid #ccc;
                        background-color: #fbfbfb;
                        border-radius: 2px;
                    }

                    #entry_page_add select {
                        -moz-appearance: none;
                        -webkit-appearance: none;
                    }

                    #entry_page_add .select-wrap:before {
                        z-index: 1;
                        position: absolute;
                        right: 15px;
                        top: 0;
                        content: "▼";
                        line-height: 43px;
                        color: #7F878C;
                        pointer-events: none;
                    }

                    #entry_page_add select option {
                        background-color: #fff;
                        color: #333;
                    }

                    #entry_page_add .t_layout02 tr th span {
                        font-size: 1rem;
                        padding-left: 3px;
                        font-weight: 400;
                    }

                    #entry_page_add textarea {
                        -webkit-appearance: none;
                        -moz-appearance: none;
                        appearance: none;
                        resize: auto;
                        padding: 10px;
                        border: 1px solid #ccc;
                        background-color: #fbfbfb;
                        border-radius: 2px;
                        outline: none;
                        width: 100%;
                        height: 150px;
                        font-size: 1.4rem;
                    }

                    input.toeic-score,
                    input.toefl-score {
                        width: 15%;
                    }

                    #entry_page_add .mwform-tel-field input[type="text"],
                    #entry_page_add .mwform-zip-field input[type="text"] {
                        display: inline-block;
                        width: 31%;
                    }

                    #entry_page_add .mw_wp_form input[type="file"] {
                        display: inline-block;
                    }

                    input[type="file"] {
                        -webkit-appearance: none;
                        -moz-appearance: none;
                        appearance: none;
                        outline: none;
                    }

                    #entry_page_add .mwform-file-delete {
                        cursor: pointer;
                        visibility: hidden;
                    }

                    #entry_page_add .sec-eform .policy {
                        overflow: scroll;
                        text-align: left;
                        width: 800px;
                        height: 200px;
                        border: 1px solid #ccc;
                        padding: 30px;
                        margin: 0 auto 40px;
                    }

                    #entry_page_add .sec-eform .consent {
                        width: 76%;
                        margin: 0 auto 50px;
                        padding: 20px;
                        background-color: #fdeeee;
                    }


                    #entry_page_add .mwform-checkbox-field label,
                    #entry_page_add .mwform-radio-field label {
                        font-weight: normal;
                        margin-bottom: 0;
                    }

                    .btn_submit,
                    .btn_confirm,
                    .btn_area .back {
                        color: #000 !important;
                        background-image: url(/wp-content/uploads/sites/4/2023/10/arrow_rt.png);
                        background-position: top right;
                        background-repeat: no-repeat;
                        padding: 20px 10px;
                        display: block;
                        font-size: 1.8rem;
                        width: 280px;
                        margin: 20px auto 0;
                        background-color: #a1de92;
                        cursor: pointer;
                    }

                    @media screen and (max-width: 767px) {
                        #entry_page_add .sec-eform .policy {
                            width: 100%;
                        }

                        #entry_page_add .sec-eform .t_layout02 {
                            width: 100%;
                        }
                    #entry_page_add .mwform-tel-field input[type="text"],
                    #entry_page_add .mwform-zip-field input[type="text"] {
                        display: inline-block;
                        width: 30%;
                    }

                    }
