section.FV_top {
  text-align: center;
  height: 77vh;
  background: url(../img/lp/fv-bg.webp) left top no-repeat, url(../img/lp/fv-bg2.webp) right top no-repeat;
  background-size: 49vw auto, 10vw auto;
}
section.FV_top {
  display: flex;
  justify-content: end;
  padding: 50px 50px 0;
}
section.FV_top .fv_lead_box {
  /*width: 50%;*/
  margin-top: 30px;
  margin-right: 8vw;
}

section.FV_top h1{
    font-size: 24px;
    text-align: left;
    line-height: 300%;
    padding-left: 200px;
    text-shadow: 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1);

}

.fv_txt1{
  font-size: 56px;
  color: #ff642a;
  font-weight: bold;
}

.fv_txt2{
  font-size: 39px;
  font-weight: bold;
}

.fv_txt3{
  font-size: 34px;
    font-weight: bold;
     color: var(--text-color__heading);
}

.fv_txt4{
    font-size: 30px;

}

.fv_border_txt{
    border-bottom: 1px dashed #cccccc;
    display: inline-block;
    line-height: 200%;
}

section.FV_top .fv_lead_box_flex {
  margin-top: 30px;
  display: flex;
  position: relative;
  float: right;
}

section.FV_top .fv_lead_box_flex::before {
  content: "";
  position: absolute;
  left: 10%;  
  right: 30%; 
  top: 0;
  bottom: 0;

  background: linear-gradient(
    transparent 49%,
    #000000 49%,
    #000000 54%,
    transparent 54%
  );
  pointer-events: none;
  z-index: 1;
}


.fv_lead_box_flex .circle_txt{
  box-sizing: border-box;
    width: 246px;
    height: 246px;
    border-radius: 50%;
    font-size: 25px;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff15b;
    background-color: #ff642a;
        line-height: 160%;
        margin-right: 20px;
        border:8px solid #ffac8c;
        position: relative;
        z-index: 10;
  }
  .fv_lead_box_flex .circle_txt:last-child{
    margin-right: 0;
  }
.fv_lead_box_flex .circle_txt p{
        line-height: 160%;
}


.fv_txt5{
  font-size: 30px;
  color: #ffffff;
}

.fv_txt6{
  font-size: 40px;
}

.fv_txt7{
  color: #ffffff;
}

.fv_txt8{
  font-size: 30px;
}

.heading-read2 {
   color: #000000;
    font-size: 40px;
    text-align: center;
    font-family: var(--font-family);
    font-weight: 600;
    line-height: 1.5em;
    margin-bottom: 1.2em;
}
.heading-read2 strong{
   color: var(--text-color__heading);
   font-size: 50px;
}

.corner_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
flex-direction:row-reverse;
max-width: 960px;
    margin: auto;
    align-items: center;
}

.corner_img_box{
  width: 40%;
} 

.corner_img_box img{
  width: 100%;
} 


.corner_box {
      position: relative;
    width: 50%;
    height: auto;
    border: none;
    box-sizing: border-box;
    padding: 50px 30px;
    line-height: 200%;
    text-align: left;
}

/* 左上角 */
.corner_box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 160px;   /* 横線の長さ */
  height: 160px;  /* 縦線の長さ */
  border-top: 1px solid #08b255;
  border-left: 1px solid #08b255;
}

/* 右下角 */
.corner_box::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 160px;   /* 横線の長さ */
  height: 160px;  /* 縦線の長さ */
  border-bottom: 1px solid #08b255;
  border-right: 1px solid #08b255;
}


.ac{
  text-align: center;
}
.heading2 {
   color: #000000;
    font-size: 36px;
    font-weight: 800;
    margin-top:70px;
    margin-bottom: 30px;
        line-height: 160%;
}

.heading2 span.green{
 color: var(--text-color__heading);
}
.heading2 span.orange{
color: #ff642a;
}

.ukeire_box{
  display: flex;
  flex-wrap: wrap;
  max-width: 960px;
  background: #ffffff;
  box-sizing: border-box;
  padding:66px 66px 26px 66px;
  margin:0 auto 60px;
}

.ukeire_box h3{
  font-size: 20px;
  font-weight: bold;
  padding-bottom:3px;
  border-bottom: 2px solid #08b255;
  margin-bottom: 25px;
}
.ukeire_box h3 span{
  color:#08b255;
}

.ukeire_box_1{
  width: 55%;
  margin-bottom: 40px;
}

.ukeire_box_2{
  width: 45%;
    margin-bottom: 40px;
}

.ukeire_box_2 img{
  width: 100%;
}

.check-orange {
  list-style: none;       /* ブラウザ標準の丸を消す */
  margin: 0;
  padding: 0;
}

.check-orange li {
position: relative;
    padding-left: 27px;
    margin-bottom: 10px;
    line-height: 1.6;
    font-size: 16px;
}


/* 画像を擬似要素にそのまま表示 */
.check-orange li::before {
  content: url("https://apico.or.jp/wp-content/uploads/2025/11/orange_check1.webp");
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;  /* 任意：画像を縮小したい場合 */
  height: auto;
}

.ukeire_box2{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 960px;
  background: #ffffff;
  box-sizing: border-box;
  padding:66px 66px 48px 66px;
  margin:0 auto 60px;
}

.ukeire_box2 h3{
  font-size: 20px;
  font-weight: bold;
  padding-bottom:3px;
  margin-bottom: 10px;
}

.ukeire_box2_1 p{
  line-height: 1.6;
}

.ukeire_box2_1{
  box-sizing: border-box;
    width: calc((100% - 32px) / 3);
    margin-bottom: 18px;
    padding: 18px 18px 18px 60px;
    border: 1px solid #cfcfcf;
    border-radius: 8px;
    position: relative;
     box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
}

.ukeire_box2_1::before {
    position: absolute;
    left: 14px;
    top: 30px;
    transform: translateY(-50%);
    height: auto;
}

.honyaku_icon::before {
      content: url(https://apico.or.jp/wp-content/uploads/2025/11/honyaku_icon.webp);
}

.info_icon::before {
      content: url(https://apico.or.jp/wp-content/uploads/2025/11/info_icon.webp);
}

.kenshuu_icon::before {
      content: url(https://apico.or.jp/wp-content/uploads/2025/11/kenshuu_icon.webp);
}

.kikan_icon::before {
      content: url(https://apico.or.jp/wp-content/uploads/2025/11/kikan_icon.webp);
}

.trouble_icon::before {
      content: url(https://apico.or.jp/wp-content/uploads/2025/11/trouble_icon.webp);
}

.soudan_icon::before {
      content: url(https://apico.or.jp/wp-content/uploads/2025/11/soudan_icon.webp);
}

.jinzai_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
max-width: 960px;
    margin: auto;
    padding-bottom:60px;
    border-bottom:5px solid #00b050;
    margin-bottom: 70px;
}

.jinzai_flex_1{
  width: 50%;
}

.jinzai_flex_1 img{
  width: 100%;
}

.jinzai_flex_2{
  width: 45%;
}

.mission_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
max-width: 960px;
    margin: auto;
    margin-bottom: 50px;
}

.mission_flex_1{
  box-sizing: border-box;
  width: 47%;
  padding: 20px;
  box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
  background-color: #ffffff;
}
.mission_flex_1 h4{
      margin: 20px 0 20px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}


.mission_flex_1 img{
  width: 100%;
}
.mission_flex_1 p{
  padding: 20px 10px 0;
}

.mission_txt1{
  max-width: 900px;
  margin:0 auto 70px;
  font-size: 18px;
  text-align: center;
}


#mission-frontpagesection{
  background-color: #e6e2e2;
}

@media screen and (min-width:1001px) {
  .mobile_only {
    display: none !important;
  }
  .pc_only {
    display: block !important;
  }
}
@media screen and (max-width:1000px) {
  .pc_only {
    display: none !important;
  }
  .mobile_only {
    display: block !important;
  }
}

@media screen and (max-width:2000px) {



section.FV_top {
    text-align: center;
    height: 70vh;
    background: url(../img/lp/fv-bg.webp) left top no-repeat, url(../img/lp/fv-bg2.webp) right top no-repeat;
    background-size: 56vw auto, 10vw auto;
}
}

@media screen and (max-width:1700px) {

  
section.FV_top .fv_lead_box {
  /*width: 50%;*/
  margin-top: 30px;
  margin-right: 150px;
}

section.FV_top {
    text-align: center;
    height: auto;
    background: url(../img/lp/fv-bg.webp) left top no-repeat, url(../img/lp/fv-bg2.webp) right top no-repeat;
    background-size: 49vw auto, 10vw auto;
}
}

@media screen and (max-width:1500px) {

  section.FV_top {
    text-align: center;
    height: auto;
    background: url(../img/lp/fv-bg.webp) no-repeat;
    background-position: left top;
    background-size: 52vw auto;
}
section.FV_top .fv_lead_box {
  /*width: 50%;*/
  margin-top: 10px;
  margin-right: 75px;
}
}

@media screen and (max-width:1300px) {

  section.FV_top {
    text-align: center;
    height: auto;

    background: url(../img/lp/fv-bg.webp) no-repeat;
    background-position: left top;
    background-size: 52vw auto;
}
section.FV_top .fv_lead_box {
  /*width: 50%;*/
  margin-top: 10px;
  margin-right: 75px;
}
}



@media screen and (max-width:1200px) {

  section.FV_top {
    text-align: center;
    height: auto;

    background: url(../img/lp/fv-bg.webp) no-repeat;
    background-position: left top;
    background-size: 49vw auto;
}
section.FV_top .fv_lead_box {
  /*width: 50%;*/
  margin-top: 0;
  margin-right: 0;
}
}
@media screen and (max-width:850px) {



section.FV_top {
    display: block;
    justify-content: end;
    padding: 20px;
}

section.FV_top h1 {
    font-size: 20px;
         text-align: right;
    line-height: 300%;
    padding-left: 280px;
            text-shadow: 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1);

}

section.FV_top {
    text-align: center;
    height: 49vh;
    background: url(../img/lp/fv-bg.webp) no-repeat;
    background-position: left top;
    background-size: 49vw auto;
}

section.FV_top .fv_lead_box {
  /*width: 50%;*/
  margin-top: 30px;
  margin-right: 0;
}

.frontpage-section_mg01 {
    padding: 3em 2% 5em;
}
.fv_lead_box_flex .circle_txt {
    box-sizing: border-box;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    font-size: 23px;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff15b;
    background-color: #ff642a;
    line-height: 160%;
    margin-right: 20px;
    border: 8px solid #ffac8c;
    position: relative;
    z-index: 10;
}

.fv_txt1 {
    font-size: 40px;
    color: #ff642a;
    font-weight: bold;
}

.fv_txt2 {
    font-size: 30px;
    font-weight: bold;
}

.fv_txt3 {
    font-size: 30px;
}

.fv_txt5 {
    font-size: 25px;
    color: #ffffff;
}

.fv_txt6 {
    font-size: 36px;
}
.ukeire_box {
    display: flex;
    flex-wrap: wrap;
    max-width: 960px;
    background: #ffffff;
    box-sizing: border-box;
    padding: 30px 30px 10px 30px;
    margin: 0 auto 60px;
}

.ukeire_box2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 960px;
    background: #ffffff;
    box-sizing: border-box;
    padding: 30px 30px 15px 30px;
    margin: 0 auto 60px;
}

.flag-flex {
    display: flex;
    justify-content: center;
    gap: 8px;
    text-align: center;
    flex-wrap: wrap;
}

}


/******************************
★ Media Queries スマフォ表示の設定(599px以下で読み込むcss)
******************************************************************************************************************************/
@media screen and (max-width:599px) {
      section.FV_top {
        text-align: center;

        height: 44vh;
        background: url(../img/lp/fv-bg.webp) no-repeat;
        background-position: left top;
        background-size: 49vw auto;
    }
      section.FV_top h1 {
        font-size: 16px;
        text-align: right;
        line-height: 284%;
        padding-left: 0;
    }

    section.FV_top .fv_lead_box {
    /* width: 50%; */
    margin-top: 0;
}

    .fv_lead_box_flex .circle_txt {
        box-sizing: border-box;
        width: 130px;
        height: 110px;
        border-radius: 50%;
        font-size: 11px;
        font-weight: bold;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        color: #fff15b;
        background-color: #ff642a;
        line-height: 160%;
        margin-right: 10px;
        border: 8px solid #ffac8c;
        position: relative;
        z-index: 10;
    }

      .fv_txt1 {
        font-size: 28px;
        color: #ff642a;
        font-weight: bold;
    }

        .fv_txt2 {
        font-size: 19px;
        font-weight: bold;
    }

        .fv_txt3 {
        font-size: 22px;
        font-weight: bold;
    }

    .fv_txt4 {
    font-size: 22px;
}

    .fv_txt5 {
        font-size: 13px;
        color: #ffffff;
    }

        .fv_txt6 {
        font-size: 20px;
    }
section.FV_top .fv_lead_box_flex {
    float: none;
}

.heading-read2 {
    color: #000000;
    font-size: 20px;
    text-align: center;
    font-family: var(--font-family);
    font-weight: 600;
    line-height: 1.5em;
    margin-bottom: 1.2em;
}

.heading-read2 strong {
    color: var(--text-color__heading);
    font-size: 26px;
}

.corner_flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: row;
    max-width: 100%;
    margin: auto;
    align-items: center;
}
.corner_img_box {
    width: 100%;
    margin-bottom: 20px;
	order: 2;
        margin-top: 20px;
}

.corner_box {
    position: relative;
    width: 104%;
    height: auto;
    border: none;
    box-sizing: border-box;
    padding: 30px 30px;
    line-height: 200%;
    text-align: left;
}

.heading2 {
    color: #000000;
    font-size: 22px;
    font-weight: 800;
    margin-top: 70px;
    margin-bottom: 30px;
    line-height: 160%;
}

.ukeire_box_1 {
    width: 100%;
    margin-bottom: 20px;
}

.ukeire_box_2 {
    width: 100%;
    margin-bottom: 40px;
}

.ukeire_box h3 {
    font-size: 18px;
    font-weight: bold;
    padding-bottom: 3px;
    border-bottom: 2px solid #08b255;
    margin-bottom: 25px;
}

.ukeire_box2_1 {
    box-sizing: border-box;
    width: 49%;
    margin-bottom: 18px;
    padding: 56px 18px 18px;
    border: 1px solid #cfcfcf;
    border-radius: 8px;
    position: relative;
    box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
}
.ukeire_box2_1::before {
    left: 50%;
    transform: translate(-50%, -50%);
}
.ukeire_box2 h3 {
    text-align: center;
	line-height: 1.3;
}
.jinzai_flex_1 {
    width: 100%;
    margin-bottom: 20px;
}

.jinzai_flex_2 {
    width: 100%;
}

.mission_flex_1 {
    box-sizing: border-box;
    width: 100%;
    padding: 20px;
    box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
    background-color: #ffffff;
    margin-bottom: 20px;
}
}

@media screen and (max-width:375px) {

  section.FV_top {
    text-align: center;
    height: 46vh;
    background: url(../img/lp/fv-bg.webp) no-repeat;
    background-position: left top;
    background-size: 49vw auto;
}

}

@media screen and (max-width:320px) {

  section.FV_top {
    text-align: center;
    height: 70vh;
    background: url(../img/lp/fv-bg.webp) no-repeat;
    background-position: left top;
    background-size: 49vw auto;
}

}