@charset "utf-8";

/* ===============================
agent-recruitment
=============================== */
:root {
  --lp_font_base: 'Local Noto Sans JP', 'Noto Sans JP', sans-serif;
  --leading_trim: calc((1em - 1lh) / 2);
  --color_blue: #171d5d;
  --color_blue_light: #8b8eae;
}

/* ===============================
md_mv
=============================== */
@media (min-width:769px) {
  .md_mv {
    background-image:url(../img/mv_pc.jpg);
  }
}

/* SP調整 ------------------ */
@media (max-width:768px) {
  .md_mv {
    margin-bottom: 25px;
    background-image:url(../img/mv_sp.jpg);
  }
}


/* ===============================
box_intro
=============================== */
.box_intro {
  max-width: 950px;
  margin: 0 auto 88px;
  text-align:center;
  font-feature-settings: "palt";
}
.box_intro .text_1 {
  margin-bottom: 25px;
  padding-left: 0.1em;
  color: var(--color_blue);
  font-size: 3.3rem;
  letter-spacing: 0.1em;
}
.box_intro .text_2 {
  margin-bottom: 68px;
  padding: 5px 0 5px 0.1em;
  background: var(--color_blue);
  color: #fff;
  font-size: 2.3rem;
  letter-spacing: 0.1em;
}
.box_intro .text_3 {
  padding-left: 0.1em;
  font-size: 1.5rem;
  line-height: 2.05;
  letter-spacing: 0.1em;

}
.box_intro .text_3 + .text_3 {
  margin-top: 2.05em;
}

/* SP調整 ------------------ */
@media (max-width:768px) {
  .box_intro {
    margin-bottom: 40px;
    padding: 0 15px;
  }
  .box_intro .text_1 {
    margin-bottom: 20px;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .box_intro .text_2 {
    margin-bottom: 23px;
    padding: 16px 0 16px 0.1em;
    font-size: 1.6rem;
  }
  .box_intro .text_2 .sp_none {
    display: none;
  }
  .box_intro .text_3 {
    max-width: 480px;
    margin: 0 auto -0.05em;
    padding: 0 15px;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0.05em;

  }
  .box_intro .text_3 + .text_3 {
    margin-top: 1.5em;
  }
}


/* ===============================
agent_entry
=============================== */
.agent_entry {
  max-width: 950px;
  margin: 0 auto;
  font-feature-settings: "palt";
}
.agent_entry_header {
  position: relative;
  margin-bottom: 38px;
}
.agent_entry_header_img {
  display: block;
  position: absolute;
  bottom: -110px;
  left: 0;
  border-radius: 50%;
  overflow: hidden;
}
.agent_entry_title {
  margin-left: 80px;
  padding: 0 0 17px 200px;
  font-size: 3.3rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  font-weight: 400;
  border-bottom: 1px solid var(--color_blue_light);
  color: var(--color_blue);
}
.agent_entry_item {
  margin-bottom: 60px;
  padding-left: 280px;
}
.agent_entry_text {
  margin-bottom: 18px;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: var(--color_blue);
}
.agent_entry_text_2 {
  font-size: 1.5rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}
.agent_entry_item_2 {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--color_blue_light);
}
.agent_entry_text_3 {
  margin-bottom: 28px;
  padding-left: 0.1em;
  font-size: 3.2rem;
  letter-spacing: 0.1em;
  color: var(--color_blue);
  text-align: center;
}
.agent_entry_lists {
  display: flex;
  flex-wrap: wrap;
  gap: 13px 44px;
}
.agent_entry_lists li {
  display: grid;
  place-content: center;
  width: 453px;
  min-height: 117px;
  padding: 10px 10px 10px calc(10px + 0.01em);
  text-align: center;
  background-color: var(--color_blue);
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

/* SP調整 ------------------ */
@media (max-width:768px) {
  .agent_entry {
    padding: 0 15px;
  }
  .agent_entry_header {
    position: relative;
    margin-bottom: 18px;
  }
  .agent_entry_header_img {
    display: block;
    position: static;
    width: 132px;
    height: 132px;
    margin: 0 auto 22px;
  }
  .agent_entry_title {
    margin-left: 0;
    padding: 0 0 28px 0.1em;
    font-size: 2rem;
    text-align: center;
    font-weight: 700;
  }
  .agent_entry_item {
    margin-bottom: 37px;
    padding-left: 0;
  }
  .agent_entry_text {
    margin-bottom: 17px;
    padding-left: 0.1em;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .agent_entry_text_2 {
    padding: 0 12px 0 calc(12px + 0.05em);
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
  .agent_entry_item_2 {
    margin-bottom: 25px;
    padding-bottom: 25px;
  }
  .agent_entry_text_3 {
    margin-bottom: 29px;
    font-size: 1.8rem;
  }
  .agent_entry_lists {
    display: block;
  }
  .agent_entry_lists li {
    display: block;
    width: 100%;
    min-height: initial;
    padding: 13px 10px 15px calc(10px + 0.01em);
    font-size: 1.6rem;
  }
  .agent_entry_lists li + li {
    margin-top: 11px;
  }
}


/* ===============================
merit
=============================== */
.merit {
  max-width: 950px;
  margin: 0 auto 38px;
}
.merit_title {
  margin-bottom:40px;
  padding:7px 0 8px .01em;
  background:#171d5d;
  color:#fff;
  font-size:2rem;
  letter-spacing:.1em;
  text-align:center;
  -webkit-font-feature-settings:"palt";
  font-feature-settings:"palt";
  font-weight:500;
}
.merit_accordion {
  letter-spacing:.1em;
  -webkit-font-feature-settings:"palt";
  font-feature-settings:"palt";
}
.merit_accordion_header {
  position:relative;
  padding:6px 60px 8px 17px;
  border:1px solid #7c7fa4;
  border-left:7px solid #171d5d;
  font-size:1.9rem;
  font-weight:500;
  color:#171d5d;
  -moz-user-select:none;
  -webkit-user-select:none;
  user-select:none;
  cursor:pointer;
}
.merit_accordion_header * {
  cursor:pointer;
}
.merit_accordion_header::after {
  content:"";
  display:block;
  position:absolute;
  top:50%;
  right:25px;
  width:15px;
  height:8px;
  margin-top:-4px;
  background:url(../../common/img/arrow_up_down.svg) no-repeat;
  background-size:15px 8px;
}
.merit_accordion_header:not(:first-child) {
  margin-top:30px;
}
.merit_accordion_body {
  padding:25px 35px;
  background:#d2eaf6;
  font-size:1.5rem;
}
.merit_accordion_body_inner {
  position:relative;
  text-align:justify;
}

/* accordion */
.merit_accordion_header.active::after {
  -webkit-transform:scaleY(-1);
  transform:scaleY(-1);
}
.merit_accordion_body {
  display:none;
}
.merit_accordion_header.active + .merit_accordion_body {
  display:block;
}

/* SP調整 ------------------ */
@media (max-width:768px) {
  .merit {
    margin: 0 15px 20px;
  }
  .merit_title {
    margin-bottom:20px;
    font-size:1.6rem;
    line-height:1.5;
  }
  .merit_accordion {
    letter-spacing:.05em;
  }
  .merit_accordion_header {
    padding:12px 35px 13px 12px;
    font-size:1.4rem;
  }
  .merit_accordion_header::after {
    right:12px;
  }
  .merit_accordion_header:not(:first-child) {
    margin-top:30px;
  }
  .merit_accordion_body {
    padding:18px;
    font-size:1.4rem;
  }
  .merit_accordion_body_inner {
    position:relative;
    line-height:1.5;
  }
}


/* ===============================
contact
=============================== */
.contact {
  width: 760px;
  margin: 0 auto 50px;
  text-align: center;
  color: var(--color_blue);
  font-feature-settings: "palt";
}
.contact_title {
  margin-bottom: 30px;
  padding-left: 0.1em;
  font-size: 3.2rem;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.contact_text {
  margin-bottom: 33px;
  padding: 8px 0 8px 0.1em;
  background-color: var(--color_blue);
  color: #fff;
  letter-spacing: 0.1em;
  font-size: 1.9rem;
  line-height: 1.58;
}
.contact_text_2 {
  margin-bottom: 18px;
  letter-spacing: 0.1em;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  color: #323232;
}
.contact_tel {
  margin-bottom: 6px;
}
.contact_tel a {
  display: inline-block;
  letter-spacing: 0.06em;
  font-size: 3rem;
  letter-spacing: 0.06em;
  color: var(--color_blue);
  font-weight: 700;
}
.contact_text_3 {
  letter-spacing: 0.04em;
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  line-height: 1.64;
  font-weight: 700;
}

/* SP調整 ------------------ */
@media (max-width:768px) {
  .contact {
    width: auto;
    margin: 0 15px 50px;
  }
  .contact_title {
    margin-bottom: 25px;
    font-size: 1.6rem;
    font-weight: 400;
  }
  .contact_text {
    padding: 8px 20px;
    font-size: 1.9rem;
    text-align: left;
  }
}