@charset "UTF-8";
/*------------------------------------------------------------
    基本設定 コンテンツ幅
------------------------------------------------------------*/
.content_area_outer {
  padding: 0 px;
}
@media (min-width: 768px) {
  .content_area_outer {
    margin: 0 auto;
    max-width: 1320px;
  }
}

.content_area {
  position: relative;
  padding: 0 20px;
  margin: 0 auto;
  width: 100%;
}
.content_area.nopadding_sp {
  padding: 0px;
}
@media (min-width: 768px) {
  .content_area.nopadding_sp {
    padding: 0 30px;
  }
}
@media (min-width: 992px) {
  .content_area.nopadding_sp {
    padding: 0 60px;
  }
}
@media (min-width: 768px) {
  .content_area {
    padding: 0 30px;
    max-width: 1320px;
  }
}
@media (min-width: 992px) {
  .content_area {
    padding: 0 60px;
  }
}

/*------------------------------------------------------------
    基本設定　カラー
------------------------------------------------------------*/
.bg_mainyellow {
  background-color: var(--color-mainyellow);
}

.bg_white {
  background-color: #fff;
}

.bg_black {
  background-color: #000;
}

.text_white {
  color: #ffffff;
}

.text_red {
  color: var(--color-red);
}

.text_lightblack {
  color: var(--text-color-lightblack);
}

/*------------------------------------------------------------
    基本設定　テキスト
------------------------------------------------------------*/
.text_center {
  text-align: center;
}

.text_right {
  text-align: right;
}

.tategaki {
  writing-mode: vertical-rl;
}

.mincho {
  font-family: "Noto Serif JP", serif;
}

small {
  font-size: 0.8em;
}

/*------------------------------------------------------------
  コンテンツ
------------------------------------------------------------*/
/*共通*/
ul.basic {
  font-size: var(--text-base);
  list-style-type: disc;
  line-height: 1.5;
  margin-bottom: 1em;
}

ul.basic li {
  margin-left: 1.5em;
}

h1, .h1 {
  font-size: var(--text-xl);
}

h2, .h2 {
  font-size: var(--text-lg);
}

h3, .h3 {
  font-size: var(--text-md);
}

h4, .h4 {
  font-size: var(--text-base);
}

h5, .h5 {
  font-size: var(--text-xs);
}

h6, .h6 {
  font-size: var(--text-xxs);
}

/*共通*/
.bg_wave {
  display: block;
  /* --- SP用の設定 --- */
  --img-h: 200px; /* 画像1枚の高さ */
  --gap: 600px; /* 画像間の隙間 */
  --step: calc(var(--img-h) + var(--gap)); /* 1枚+隙間の合計 */
  --loop-total: calc(var(--step) * 3); /* 3枚1セットの高さ */
  /* 2枚目と3枚目の開始位置 */
  --pos-2: var(--step);
  --pos-3: calc(var(--step) * 2);
  background-image: url(/images/common/bg_shape_sp_1.svg), url(/images/common/bg_shape_sp_2.svg), url(/images/common/bg_shape_sp_3.svg);
  /* 共通の背景設定 */
  background-repeat: repeat-y;
  background-position: center 0, center var(--pos-2), center var(--pos-3);
  background-size: 100% var(--loop-total), 100% var(--loop-total), 100% var(--loop-total);
}
@media (min-width: 768px) {
  .bg_wave {
    --img-h: 200px; /* 画像1枚の高さ */
    --gap: 1000px; /* 画像間の隙間 */
    background-image: url(/images/common/bg_shape_pc_1.svg), url(/images/common/bg_shape_pc_2.svg), url(/images/common/bg_shape_pc_3.svg);
    background-size: 100% var(--loop-total), 100% var(--loop-total), 100% var(--loop-total);
  }
}

/*------------------------------------------------------------
  INDEX
------------------------------------------------------------*/
.section_title_container {
  border-bottom: 1px solid var(--text-color-base);
  display: flex;
  align-items: flex-end;
  padding: 1em 0 0;
}
.section_title_container .section_title {
  display: flex;
  align-items: flex-end;
  width: 100%;
  margin: 0;
}
.section_title_container .section_title .en {
  background-color: var(--text-color-base);
  color: #fff;
  font-family: "Caveat", Sans-serif;
  font-weight: 600;
  padding: 0.25em 60px 0.25em 0.25em;
  font-size: var(--text-lg);
  letter-spacing: 0.05em;
  line-height: 1;
  min-width: 6em;
  /* 右側を斜めに削る（左上, 右上, 右下, 左下） */
  clip-path: polygon(0 0, 80% 0, 100% 100%, 0% 100%);
}
.section_title_container .section_title .jp {
  color: var(--text-color-base);
  font-size: var(--text-base);
  margin-left: auto;
  padding-bottom: 2px;
}

/* KV */
#kv {
  /*
  	background:#272A31 url(../images/dummy_mv_pc.png) no-repeat 50% 50%;
  */
  position: relative;
  margin-bottom: 40px;
  line-height: 0;
}
#kv .kv_copy_image .kv_copy {
  padding-top: var(--header-height);
  z-index: 2;
}
@media (min-width: 768px) {
  #kv .kv_copy_image .kv_copy {
    padding-top: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    max-width: 600px;
  }
}
#kv .kv_copy_image .kv_copy .copy1 {
  padding: 0 12.5%;
}
#kv .kv_copy_image .kv_copy .copy2 {
  font-size: var(--terxt-lg);
  line-height: 1.5;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}
#kv .copy3 p {
  text-align: center;
  font-size: clamp(1.125rem, 0.709rem + 1.71vw, 2.25rem);
  margin-bottom: 0;
  padding: 0.3em 0;
  letter-spacing: 0.1em;
}
@media (min-width: 768px) {
  #kv .copy3 p {
    background-color: var(--color-mainyellow);
  }
}
#kv .kv_badge {
  width: 100px;
  position: absolute;
  bottom: 20px;
  right: 0;
}
@media (min-width: 768px) {
  #kv .kv_badge {
    width: 110px;
    bottom: 40px;
    right: 3%;
  }
}

/*------------------------------------------------------------
  CARD
------------------------------------------------------------*/
.with_shadow {
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.5);
}

.card_info {
  transition: all 0.3s ease;
}
.card_info:hover {
  opacity: 0.7;
  transition: all 0.3s ease;
}
.card_info .badge {
  background-color: var(--color-mainyellow);
  border-radius: 50em;
  font-size: var(--text-xs);
  padding: 0.1em 1em;
  margin-bottom: 1em;
  display: inline-block;
}
.card_info .date {
  font-size: var(--text-base);
}
.card_info .title h3 {
  font-size: var(--text-base);
}

.company_filter_btn {
  padding: 30px 10px 50px;
}
.company_filter_btn h3 {
  font-size: var(--text-lg);
  margin-bottom: 1.5em;
}

.filter_btn_one {
  display: flex;
  justify-content: center;
  flex-direction: column;
  position: relative;
  text-align: center;
  color: #fff;
  border-radius: 10px;
  padding: 0.2em 0.5em 1em;
  transition: all 0.3s ease;
}
.filter_btn_one:hover {
  opacity: 0.7;
  transition: all 0.3s ease;
}
.filter_btn_one .icon {
  width: 50%;
  aspect-ratio: 1/1;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .filter_btn_one .icon {
    width: 40%;
  }
}
.filter_btn_one p {
  font-size: var(--text-xs);
  color: #fff;
  margin: 0;
}
.filter_btn_one.is-active::after {
  font-family: "Font Awesome 7 Free";
  font-weight: 400;
  content: "\f14a";
  position: absolute;
  left: 8%;
  top: 5%;
  font-size: 1.5em;
  color: #fff;
}
.filter_btn_one.red {
  background: linear-gradient(215deg, #FFACF2 0%, #D3358A 70%);
}
.filter_btn_one.blue {
  background: linear-gradient(215deg, #2BBAFF 0%, #3266C2 70%);
}
.filter_btn_one.orange {
  background: linear-gradient(215deg, #FFA372 0%, #D64831 70%);
}
.filter_btn_one.green {
  background: linear-gradient(215deg, #48FF5F 0%, #239C3F 70%);
}

.card_company {
  border: 1px solid var(--text-color-base);
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 1em;
}
.card_company.ver_bgwhite {
  background-color: #fff;
}
.card_company .profile {
  padding-bottom: 20px;
}
.card_company .profile .profile_type_city {
  font-size: var(--text-base);
  margin-bottom: 0.5em;
}
.card_company .profile h3 {
  font-size: var(--text-md);
  margin: 0 0 1em 0;
}
.card_company .profile .profile_copy {
  font-size: var(--text-ml);
  margin: auto 0 0 0;
}
.card_company .special {
  position: relative;
  margin: 30px 0 20px;
}
.card_company .special h4 {
  position: absolute;
  top: -1em;
  left: -0.2em;
  box-shadow: -3px 3px 5px 0px rgba(0, 0, 0, 0.4);
  display: inline-block;
  background-color: var(--color-mainyellow);
  padding: 0.25em 1em;
  font-size: var(--text-base);
  margin-right: 1em;
  border-radius: 0 50em 50em 0;
  z-index: 2;
}
.card_company .special .special_image img {
  filter: brightness(70%);
}
.card_company .special .special_copy {
  width: 100%;
  text-align: center;
  position: absolute;
  bottom: 0;
  left: 0;
  font-size: var(--text-base);
  color: #fff;
  z-index: 2;
}

.company_tag.border_bottom {
  padding: 0 0 20px;
  border-bottom: 1px solid var(--text-color-base);
}
.company_tag li {
  display: inline-block;
  margin: 0.2em 0.1em 0.3em 0;
  font-size: var(--text-xs);
  border-radius: 50em;
  color: #fff;
  background: #C6C40B;
  padding: 0.3em 0.8em;
}

.card_recruit {
  background: var(--color-mainyellow);
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 1em;
}
.card_recruit h2, .card_recruit h3 {
  font-size: var(--text-md);
  margin: 0 0 1em 0;
  line-height: 1.4;
}
.card_recruit .pickup {
  font-size: var(--text-base);
  padding: 1em 0;
}
.card_recruit .pickup ul li {
  position: relative;
  background-color: #fff;
  padding: 0.5em 0.5em 0.5em 2em;
  margin-bottom: 0.75em;
  line-height: 1.4;
}
.card_recruit .pickup ul li:last-child {
  margin-bottom: 0;
}
.card_recruit .pickup ul li::before {
  font-family: "Font Awesome 7 Free";
  content: "\f00c";
  font-weight: 900;
  position: absolute;
  left: 0.5em;
  top: 0.5em;
}
.card_recruit .conditions {
  padding: 0 0 1em;
  font-size: var(--text-base);
}
.card_recruit .conditions dl div {
  display: flex;
  padding: 0 0 0.5em 0;
}
.card_recruit .conditions dl div dt {
  min-width: 6em;
  position: relative;
  margin-bottom: 0;
}
.card_recruit .conditions dl div dt::after {
  content: "｜";
  position: absolute;
  right: 10px;
}
.card_recruit .conditions dl div dd {
  margin-bottom: 0;
}
.card_recruit.ver_bgwhite {
  background: #fff;
}
.card_recruit.ver_bgwhite .pickup ul li {
  background-color: var(--color-mainyellow);
}
.card_recruit.ver_detailpage {
  height: auto;
  margin-top: 2em;
}

.block_column {
  background: var(--color-mainyellow);
  padding: 10px;
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .block_column {
    padding: 20px;
  }
}

.card_column {
  display: block;
}
.card_column h3 {
  font-size: var(--text-base);
  margin: 0;
  line-height: 1.4;
  padding: 0.5em;
  min-height: 5em;
  display: flex;
  align-items: center;
}
.card_column .image_thumb {
  line-height: 0;
  padding: 0;
  margin: 0;
}
.slide_last_more {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 100%;
  color: var(--text-color-base);
  text-decoration: none;
  transition: all 0.3s ease;
}
.slide_last_more:hover {
  opacity: 0.7;
  transition: all 0.3s ease;
}
.slide_last_more span {
  font-size: var(--text-lg);
  margin-bottom: 0.5em;
}
.slide_last_more span i.main_yellow {
  color: var(--color-mainyellow);
}
.slide_last_more span i.main_black {
  color: var(--text-color-base);
}
.slide_last_more p {
  font-size: var(--text-base);
  margin: 0;
}

/*------------------------------------------------------------
  BOX
------------------------------------------------------------*/
.profile_box {
  position: relative;
}
.profile_box.bottom_border {
  border-bottom: 1px solid var(--text-color-base);
  padding-bottom: 1em;
  margin-bottom: 1em;
}
.profile_box dl {
  padding-right: 35%;
}
.profile_box dl.fullwidth {
  padding-right: 0;
}
.profile_box dl div {
  display: flex;
}
.profile_box dl div dt {
  font-size: var(--text-base);
  position: relative;
  min-width: 7em;
  margin-bottom: 0.2em;
}
.profile_box dl div dd {
  font-size: var(--text-base);
  margin-bottom: 0.2em;
}
.profile_box.border_line dt::after {
  position: absolute;
  content: "｜";
  right: 0;
}
.profile_box.border_line dd {
  padding-left: 0.5em;
}
.profile_box .float_image {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  max-height: 300px;
  padding-top: 45px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .profile_box .float_image {
    max-height: none;
  }
}
.profile_box .float_image img {
  height: 100%;
}
@media (min-width: 768px) {
  .profile_box .float_image img {
    height: 200%;
  }
}

.lightwhite_box .title {
  padding: 0.5em 1em;
  background-color: #fff;
  border-radius: 15px 15px 0 0;
  line-height: 1.4;
  font-size: var(--text-base);
}
.lightwhite_box .body {
  padding: 1em 1em;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 0 0 15px 15px;
}

.image_title_text_box .image {
  line-height: 0;
}
.image_title_text_box .image img {
  border-radius: 15px 15px 0 0;
}
.image_title_text_box .title {
  padding: 0.5em 1em;
  background-color: #fff;
  border-radius: 0 0 15px 15px;
  line-height: 1.4;
  font-size: var(--text-md);
}
.image_title_text_box .text {
  padding: 0.75em 1em 1em;
  font-size: var(--text-base);
}

.message_box {
  position: relative;
}
.message_box .box_content {
  background-color: #fff;
  padding: 15px;
}
.message_box .box_content.bg_lightwhite {
  background-color: rgba(255, 255, 255, 0.7);
}
.message_box .box_content.border_radius {
  border-radius: 15px;
}
.message_box .box_content .title {
  line-height: 1.4;
  font-size: var(--text-md);
}
.message_box.with_image {
  padding-top: 80px;
}
.message_box.with_image .float_image {
  line-height: 0;
  position: absolute;
  right: -20px;
  top: 0;
  width: 40%;
  max-width: 300px;
  z-index: 2;
}
@media (min-width: 768px) {
  .message_box.with_image .float_image {
    width: 30%;
    right: 20px;
  }
}
.message_box.with_image .float_image img {
  border-radius: 10px;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

/*------------------------------------------------------------
  BUTTON
------------------------------------------------------------*/
button {
  cursor: pointer;
  transition: 0.4s;
}

.button_more {
  background: var(--text-color-base);
  color: #fff;
  border-radius: 50em;
  padding: 0.75em 2em;
  font-size: var(--text-base);
  cursor: pointer;
  transition: 0.3s;
}
.button_more.full_width {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.button_more.yellow {
  background: var(--color-mainyellow);
  color: var(--text-color-base);
}
.button_more:hover {
  opacity: 0.7;
  transition: 0.3s;
}

.recruit_btn_contact {
  background: var(--text-color-base);
  color: #fff;
  border-radius: 50em;
  padding: 0.75em 2em;
  font-size: var(--text-base);
  cursor: pointer;
  transition: 0.3s;
}
.recruit_btn_contact.yellow {
  background: var(--color-mainyellow);
  color: var(--text-color-base);
}
.recruit_btn_contact:hover {
  opacity: 0.7;
  transition: 0.3s;
}

.button_companydetail {
  border: 1px solid var(--text-color-base);
  background-color: #fff;
  color: var(--text-color-base);
  border-radius: 50em;
  line-height: 1;
  padding: 0.75em 1.2em;
  font-size: var(--text-base);
  cursor: pointer;
  transition: 0.3s;
}
.button_companydetail.full_width {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.button_companydetail:hover {
  opacity: 0.7;
  transition: 0.3s;
}

/*------------------------------------------------------------
  RECRUIT
------------------------------------------------------------*/
.recruit_detail_title {
  font-size: var(--text-ml);
  margin: 1em 0 1em;
}

.recruit_detail dl {
  font-size: var(--text-base);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.5);
}
.recruit_detail dl dt {
  background: #fff;
  padding: 0.5em 1em;
  margin-bottom: 0;
}
.recruit_detail dl dd {
  background: rgba(255, 255, 255, 0.8);
  padding: 0.5em 1em 1em;
  margin-bottom: 0;
}

.recruit_btn_contact_outer {
  padding: 10px 0 15px;
  position: sticky;
  left: 0;
  bottom: 0;
  z-index: 10;
}
.recruit_btn_contact_outer.is_pinned {
  background: rgba(0, 0, 0, 0.5);
}

#sticky_checker {
  height: 1px;
  width: 100%;
}

@media (min-width: 768px) {
  .float_pannel_pc {
    position: sticky;
    top: calc(var(--header-height) + 20px);
  }
}

/*------------------------------------------------------------
  COMPANY
------------------------------------------------------------*/
.companydetail_title {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  padding-bottom: 10px;
  color: var(--text-color-base);
}
.companydetail_title .en {
  display: block;
  font-size: var(--text-xl);
  font-family: "Belanosima", sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.companydetail_title .jp {
  display: block;
  font-size: var(--text-md);
  margin-top: 1.5em;
}
.companydetail_title::before {
  display: block;
  content: "";
  position: absolute;
  left: 0px;
  right: -5px;
  top: 55%;
  height: 1px;
  background-color: var(--text-color-base);
  transform: rotate(-5deg);
}

.companydetail_title_sub {
  font-family: "Caveat", Sans-serif;
  font-weight: 600;
  font-size: var(--text-lg);
  letter-spacing: 0.05em;
  margin: 0.5em 0 0.5em;
}

.companydetail_intro .companydetail_intro_image {
  position: relative;
  margin-bottom: 20px;
}
.companydetail_intro .companydetail_intro_image img {
  filter: brightness(70%);
}
.companydetail_intro .companydetail_intro_image .kind_area {
  width: 100%;
  text-align: right;
  position: absolute;
  bottom: 1em;
  right: 0.5em;
  line-height: 1.5;
  z-index: 2;
}
.companydetail_intro .companydetail_intro_image .kind_area h2 {
  font-size: 3.2vw;
}
@media (min-width: 768px) {
  .companydetail_intro .companydetail_intro_image .kind_area h2 {
    font-size: var(--text-md);
  }
}
.companydetail_intro .companydetail_intro_image .kind_area h2 {
  color: #fff;
}
.companydetail_intro .companydetail_intro_image .kind_area p {
  font-size: 3.2vw;
}
@media (min-width: 768px) {
  .companydetail_intro .companydetail_intro_image .kind_area p {
    font-size: var(--text-md);
  }
}
.companydetail_intro .companydetail_intro_image .kind_area p {
  color: #fff;
  margin: 0;
}
.companydetail_intro .copy_title {
  position: relative;
  font-size: var(--text-md);
  padding-bottom: 1em;
}
.companydetail_intro .copy_title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 10px;
  /* strokeで色を指定 */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4'%3E%3Cpath d='M0 3.5c5 0 5-3 10-3s5 3 10 3' fill='none' stroke='%23ffffff' stroke-width='4'/%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-size: 10px 6px;
}
.companydetail_intro .copy {
  font-size: var(--text-lg);
}

.companydetail_section {
  padding: 30px 0;
  font-size: var(--text-base);
}
.companydetail_section .copy_box {
  background-color: #fff;
  font-size: var(--text-md);
  padding: 0.75em 0.5em;
  line-height: 1.3;
}
.companydetail_section .copy_box.bg_lightwihte {
  background-color: rgba(255, 255, 255, 0.7);
}
.companydetail_section .copy_box .text {
  margin-top: 1em;
}
.companydetail_section .carriestep_block h4 {
  display: inline-block;
  color: #fff;
  background-color: var(--text-color-base);
  border-radius: 50em;
  padding: 0.5em 1.2em;
  margin: 0.5em 0;
  font-size: var(--text-base);
}
.companydetail_section .carriestep_block p {
  font-size: var(--text-base);
  margin-bottom: 1em;
}
.companydetail_section .timeschedule_block h4 {
  border: 1px solid var(--text-color-lightblack2);
  background-color: #fff;
  border-radius: 50%;
  width: 4em;
  height: 4em;
  font-size: var(--text-base);
  display: flex;
  justify-content: center;
  align-items: center;
}
.companydetail_section .timeschedule_block .time_point {
  display: flex;
  justify-content: center;
  height: calc(100% - 3em);
}
.companydetail_section .timeschedule_block .time_point::after {
  content: "";
  position: absolute;
  top: 4em;
  left: 50%;
  width: 2px;
  height: 100%;
  background-color: var(--text-color-base);
}
.companydetail_section .timeschedule_block .time_point.last::after {
  display: none;
}
.companydetail_section .timeschedule_block p {
  font-size: var(--text-base);
}
.companydetail_section .timeschedule_block .scene_image img {
  width: 65%;
  border-radius: 10px;
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .companydetail_section .timeschedule_block .scene_image img {
    width: 100%;
  }
}
.companydetail_section .image_copy_block {
  position: relative;
}
.companydetail_section .image_copy_block.type_lefttext {
  padding-bottom: 30px;
}
.companydetail_section .image_copy_block.type_lefttext .image {
  padding-left: 10%;
}
.companydetail_section .image_copy_block.type_lefttext .text {
  position: absolute;
  left: 0;
  bottom: 0;
}
.companydetail_section .image_copy_block.type_righttext {
  padding-bottom: 30px;
}
.companydetail_section .image_copy_block.type_righttext .image {
  padding-right: 10%;
}
@media (min-width: 768px) {
  .companydetail_section .image_copy_block.type_righttext .image {
    padding-right: 5%;
  }
}
.companydetail_section .image_copy_block.type_righttext .text {
  position: absolute;
  right: 0;
  bottom: 0;
}
.companydetail_section .qa_block dl dt::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1em;
  width: 100%;
  height: 10px;
  /* strokeで色を指定 */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4'%3E%3Cpath d='M0 3.5c5 0 5-3 10-3s5 3 10 3' fill='none' stroke='%23ffffff' stroke-width='4'/%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-size: 10px 6px;
}
.companydetail_section .qa_block dl dt span {
  position: relative;
  margin: 1em 0 1.5em;
  padding: 0.5em 0 0 2.2em;
  line-height: 1.4;
  display: flex;
  align-items: flex-start;
}
.companydetail_section .qa_block dl dt span::before {
  display: inline-block;
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  content: "\f075";
  transform: scaleX(-1);
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.75em;
  color: var(--text-color-base);
}
.companydetail_section .qa_block dl dt span::after {
  content: "Q";
  position: absolute;
  top: 0.8em;
  left: 0;
  width: 2.1em;
  text-align: center;
  color: #fff;
  font-size: 0.8em;
  z-index: 1;
  transform: translateY(-0.2em);
}
.companydetail_section .qa_block dl dd {
  margin-bottom: 2em;
}

/*------------------------------------------------------------
  INFO
------------------------------------------------------------*/
/*------------------------------------------------------------
  COLUMN
------------------------------------------------------------*//*# sourceMappingURL=pages.css.map */