.achievements  {-webkit-font-feature-settings: "plat" on; font-feature-settings: "plat" on;}

.l-pageheader_lead { font-weight: bold;-webkit-font-feature-settings: "plat" on; font-feature-settings: "plat" on;}

@media only screen and (min-width: 768px) {

  .achievements h2 { display: flex; justify-content: center; align-items: center; width: 100%; height: 80px; background: #F8E5E5; font-size: 2.6rem; font-weight: bold; color: #DB0100; text-align: center; margin: 0 0 3.2vw; padding: 0; line-height: 1;}

  .achievements h3 { font-size: 2.8rem; font-weight: bold; color: #DB0100; text-align: left; margin: 0 0 2.5vw; padding: 0 0 0 25px; position: relative; line-height: 1.5; letter-spacing: 0.1em;}
  .achievements h3::after { display: block; position: absolute; content: ""; width: 15px; height: 15px; background: #DB0100; left: 0; top: 0;}
  .achievements h3.h3_ttl { font-size: 2.2rem; font-weight: bold; color: #DB0100; text-align: center; margin: 0 0 3.5vw; padding: 15px 0; position: relative; line-height: 1.5; letter-spacing: 0.1em; border: 1px solid #DB0100;}
  .achievements h3.h3_ttl::after { display: none;}

  .achievements h4 { font-size: 2.8rem; font-weight: bold; color: #DB0100; text-align: left; margin: 0 0 1.5vw; position: relative; line-height: 1.5; letter-spacing: 0.1em;}
  .achievements h4 + p.txt_lead { font-size: 1.6rem; font-weight: bold; color: #000; text-align: left; margin: 0 0 1.5vw; position: relative; line-height: 1.5; letter-spacing: 0.1em;}

  .achievements .cell { /*margin: 0 0 7.5vw;*/margin: 0 0 120px; }
  .achievements .cell .s_cell { margin: 0 0 3rem; }
  .achievements .cell .s_cell:last-of-type { margin: 0 0 0vw; }

  .achievements .dis_flex { display: flex; justify-content: space-between;}
  .achievements .dis_flex .d_cell { width: 48.5%;}
  .achievements .dis_flex .d_cell .txt_attention { position: relative; font-size: 1.6rem; font-weight: bold; padding: 0 0 0 1.5em; margin: 0 0 0.5vw; text-align: left;}
  .achievements .dis_flex .d_cell .txt_attention::after { display: block; position: absolute; content: "※"; color: #000; left: 0; top: 0;}
  .achievements .dis_flex .d_cell .d_img { width: 100%; margin: 0 auto 1.5vw;}
  .achievements .dis_flex .d_cell .d_img.img01 { width: 100%; margin: 0 auto;}

  .achievements .list_advantage { display: flex; flex-wrap: wrap;}
  .achievements .list_advantage li { width: calc(31.3% - 2px); height: 11vw; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 1.6rem; font-weight: bold; line-height: 1.45; border: 1px solid #DB0100; margin: 0 3% 2.5vw 0;}
  .achievements .list_advantage li:nth-child(3n) { margin-right: 0;}

  .achievements .list_detail { display: flex; flex-wrap: wrap;}
  .achievements .list_detail li { width: calc(22.75% - 2px); border: 1px solid #DB0100; margin: 0 3% 2.5vw 0;}
  .achievements .list_detail li:nth-child(4n) { margin-right: 0;}
  .achievements .list_detail li p.ttl { width: 100%; height: 4.2vw; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 1.8rem; font-weight: bold; color: #DB0100; line-height: 1.45; margin: 0 auto; background: rgba(188,2,0,0.1);}
  .achievements .list_detail li p.ttl.ttl02 { height: 6.2vw;}
  .achievements .list_detail li p.txt { width: 100%; height: 8vw; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 1.6rem; font-weight: bold; color: #000; line-height: 2.0; margin: 0 auto; border-top: 1px solid #DB0100;}

  .achievements .list_flow { display: flex; flex-wrap: wrap;}
  .achievements .list_flow li { width: 31.3%; margin: 0 3% 3.5vw 0;}
  .achievements .list_flow li:nth-child(3n) { margin-right: 0;}
  .achievements .list_flow li .img { margin: 0 0 1.4vw;}
  .achievements .list_flow li .flcell { display: flex; justify-content: space-between;}
  .achievements .list_flow li .flcell .num { width: 67px; height: 67px; display: flex; justify-content: center; align-items: center; background: rgba(219,1,0,0.1); color: #DB0100; font-size: 2.3rem; font-weight: bold; margin: 0 18px 0 0; line-height: 1;}
  .achievements .list_flow li .flcell .txt_cell { width: calc(100% - 85px);}
  .achievements .list_flow li .flcell .txt_cell .ttl { font-size: 2.0rem; font-weight: bold; line-height: 1.45; color: #DB0100; margin: 0 0 0.7vw; text-align: left;}
  .achievements .list_flow li .flcell .txt_cell .txt { font-size: 1.6rem; font-weight: bold; line-height: 2.0; margin: 0 0 0vw; text-align: left;}

  .achievements .list_beaf { display: flex; flex-wrap: wrap;}
  .achievements .list_beaf li { width: 48.5%; margin: 0 3% 3.5vw 0;}
  .achievements .list_beaf li:nth-child(2n) { margin: 0 0% 3.5vw 0;}
  .achievements .list_beaf li .img { position: relative; margin: 0 0 25px;}
  .achievements .list_beaf li .img span { position: absolute; width: 8.4vw; max-width: 120px; height: 4.2vw; max-height: 60px; display: flex; justify-content: center; align-items: center; color: #fff; text-align: center; line-height: 1; font-size: 1.6rem; font-weight: bold; letter-spacing:  0.1em; right: 1.78vw; bottom: -2.1vw;}
  .achievements .list_beaf li.type .img span { width: 273px; max-width: 273px; height: 60px; max-height: 60px; color: #fff; line-height: 1; left: 25px; right: 0; bottom: -30px; background: #DB0100;}
  .achievements .list_beaf li.before .img span { background: #9B8F8F;}
  .achievements .list_beaf li.after .img span { background: #DB0100;}
  .achievements .list_beaf li .detail { font-size: 1.8rem; font-weight: bold; line-height: 1.45; margin: 0 0 0; text-align: left;}
  .achievements .list_beaf li.type .img + .detail { margin-top: 60px;}
  .achievements .list_beaf.plant li .detail { font-size: 1.6rem; line-height: 2.0;}

  .achievements .list_about { display: flex; flex-wrap: wrap; padding: 35px 0 0;}
  .achievements .list_about li { position: relative; width: calc(31.3% - 2px); margin: 0 3% 3.5vw 0; padding: 50px 0 40px; border: 1px solid #DB0100; }
  .achievements .list_about li:nth-child(3n) { margin-right: 0;}
  .achievements .list_about li .num { position: absolute; left: 0; right: 0; top: -33px; margin: auto; display: flex; justify-content: center; align-items: center; width: 67px; height: 67px; background: #DB0100; color: #fff; font-size: 2.5rem; font-weight: bold; text-align: center; }
  .achievements .list_about li .ttl { text-align: center; font-size: 1.8rem; line-height: 1.45; font-weight: bold;}
  .achievements .list_about li .txt { width: 82%; text-align: left; font-size: 1.5rem; line-height: 2.0; font-weight: bold; margin: 10px auto 0;}

  .achievements .list_process {}
  .achievements .list_process .ttl { display: flex; justify-content: space-between; }
  .achievements .list_process .ttl p { width: 31.3%; height: 60px; background: #DB0100; color: #fff; font-size: 1.8rem; font-weight: bold; line-height: 1; display: flex; justify-content: center; align-items: center;}
  .achievements .list_process .arrow { width: 25px; margin: 20px auto;}
  .achievements .list_process .blc02 { width: 65.6%; height: 60px; background: #F8E5E5; display: flex; justify-content: center; align-items: center; color: #DB0100; font-size: 1.6rem; font-weight: bold; line-height: 1; text-align: center;}
  .achievements .list_process .blc03 { width: 100%; height: 60px; background: #F8E5E5; display: flex; justify-content: center; align-items: center; color: #DB0100; font-size: 1.6rem; font-weight: bold; line-height: 1; text-align: center;}

  .achievements .list_disc01 {}
  .achievements .list_disc01 li { position: relative; padding: 0 0 0 1.5em; margin: 0 0 0.5vw; font-size: 1.6rem; font-weight: bold; text-align: left;}
  .achievements .list_disc01 li::after { display: block; position: absolute; content: "●"; color: #DB0100; left: 0; top: 0;}

  /* table */
  .achievements .table01 { border-collapse: collapse; border-spacing: 0; width: 100%; border: 1px solid #DB0100; border-bottom: none; margin: 0 0 50px}
  .achievements .table01 tr th { width: 272px; border-bottom: 1px solid #DB0100; border-right: 1px solid #DB0100; padding: 25px 0; background: #F8E5E5; font-size: 1.5rem; font-weight: bold; vertical-align: top; line-height: 2.0;}
  .achievements .table01 tr td { width: calc(100% - 272px); border-bottom: 1px solid #DB0100; padding: 25px 30px; font-size: 1.5rem; font-weight: bold; text-align: left; line-height: 2.0;}

  .achievements .table02 { border-collapse: collapse; border-spacing: 0; width: 82.3%; border: 1px solid #DB0100; border-bottom: none; margin: 0 0 3.5vw;}
  .achievements .d_cell .table02:last-of-type { margin-bottom: 0vw;}
  .achievements .table02 tr th { width: 46%; border-bottom: 1px solid #DB0100; border-right: 1px solid #DB0100; padding: 25px 0; background: #F8E5E5; font-size: 1.5rem; font-weight: bold; vertical-align: top; line-height: 2.0;}
  .achievements .table02 tr td { width: 54%; border-bottom: 1px solid #DB0100; padding: 25px 30px; font-size: 1.5rem; font-weight: bold; text-align: left; line-height: 2.0;}

  .achievements .table03 { border-collapse: collapse; border-spacing: 0; width: 100%; border: 1px solid #DB0100; border-bottom: none; margin: 0 0 3.5vw;}
  .achievements .table03:last-of-type { margin: 0 0 2.5vw;}
  .achievements .table03 tr th { width: 100%; border-bottom: 1px solid #DB0100; color: #DB0100; padding: 15px 0; background: #F8E5E5; font-size: 1.5rem; font-weight: bold; text-align: center;}
  .achievements .table03 tr td { width: 100%; border-bottom: 1px solid #DB0100; padding: 15px 20px; font-size: 1.5rem; font-weight: bold; text-align: center; line-height: 2.0;}

  /* ボタン */
  .achievements .btn_gry { position: relative; display: flex; justify-content: center; align-items: center; line-height: 1; background: #EFEFEF; text-align: center; font-size: 1.6rem; font-weight: bold; color: #000; letter-spacing: 0.1em; border: 1px solid #000; width: 273px; height: 60px; margin: 0px auto 0;}
  .achievements .btn_gry::after { display: block; position: absolute; content: ""; width: 9px; height: 14px; right: 20px; top: 0; bottom: 0; margin: auto; background: url(../img/works/office/arrow01.png) no-repeat; background-size: 100% 100%;}
  .achievements .btn_gry:hover { border: 1px solid #DB0100; background: #DB0100; color: #fff;}
  .achievements .btn_gry:hover::after { width: 9px; height: 14px; right: 20px; top: 0; bottom: 0; background: url(../img/works/office/arrow02.png) no-repeat; background-size: 100% 100%;}
  .achievements .list_beaf li .btn_gry { margin-top: 80px;}

  .achievements p.txt_explanation { text-align: left; font-size: 1.6rem; font-weight: bold; color: #000; line-height: 2.0; margin: 0 0 0;}
  .achievements p.txt_explanation + .dis_flex { margin-top: 3.5vw;}

  .pcOnly { display: block !important; }
  .spOnly { display: none !important; }
}
@media only screen and (min-width: 1401px) {
  .achievements .list_beaf li .img span { right: 25px; bottom: -30px;}
}
@media only screen and (max-width: 767px) {
  .l-breadcrumb_list { flex-wrap: wrap;}

  .achievements h2 { display: flex; justify-content: center; align-items: center; width: 100%; height: 70px; background: #F8E5E5; font-size: 2.4rem; font-weight: bold; color: #DB0100; text-align: center; margin: 0 0 50px; padding: 0; line-height: 1;}

  .achievements h3 { font-size: 2.0rem; font-weight: bold; color: #DB0100; text-align: left; margin: 0 0 40px; padding: 0 0 0 25px; position: relative; line-height: 1.6; letter-spacing: 0.1em;}
  .achievements h3::after { display: block; position: absolute; content: ""; width: 15px; height: 15px; background: #DB0100; left: 0; top: 0;}
  .achievements h3.h3_ttl { font-size: 2.0rem; font-weight: bold; color: #DB0100; text-align: center; margin: 0 0 40px; padding: 15px 0; position: relative; line-height: 1.5; letter-spacing: 0.1em; border: 1px solid #DB0100;}
  .achievements h3.h3_ttl::after { display: none;}

  .achievements h4 { font-size: 1.8rem; font-weight: bold; color: #DB0100; text-align: left; margin: 0 0 30px; position: relative; line-height: 1.5; letter-spacing: 0.1em;}
  .achievements h4 + p.txt_lead { font-size: 1.4rem; font-weight: bold; color: #000; text-align: left; margin: 0 0 1.5vw; position: relative; line-height: 1.5; letter-spacing: 0.1em;}

  .achievements .cell { /*margin: 0 0 7.5vw;*/margin: 0 0 100px; }
  .achievements .cell .s_cell { margin: 0 0 60px; }
  .achievements .cell .s_cell:last-of-type { margin: 0 0 0vw; }

  .achievements .dis_flex { display: flex; flex-direction: column;}
  .achievements .dis_flex .d_cell { width: 100%;}
  .achievements .dis_flex .d_cell.d_sp { margin-bottom: 70px;}
  .achievements .dis_flex .d_cell .txt_attention { position: relative; font-size: 1.6rem; font-weight: bold; padding: 0 0 0 1.5em; margin: 0 0 0.5vw; text-align: left;}
  .achievements .dis_flex .d_cell .txt_attention::after { display: block; position: absolute; content: "※"; color: #000; left: 0; top: 0;}
  .achievements .dis_flex .d_cell .d_img { width: 100%; margin: 0 auto 30px;}
  .achievements .dis_flex .d_cell .d_img.img01 { width: 80%; margin: 0 auto 30px;}

  .achievements .list_advantage { display: flex; flex-wrap: wrap;}
  .achievements .list_advantage li { width: 100%; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 1.8rem; font-weight: bold; line-height: 1.45; border: 1px solid #DB0100; margin: 0 0 30px; padding: 20px 0;}
  .achievements .list_advantage li:last-child { margin: 0 0 0px;}

  .achievements .list_detail { display: flex; flex-wrap: wrap; margin: 0 0 60px;}
  .achievements .list_detail li { width: 100%; border: 1px solid #DB0100; margin: 0 0 30px;}
  .achievements .list_detail li:last-child { margin: 0 0 0px;}
  .achievements .list_detail li p.ttl { width: 100%; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 1.8rem; font-weight: bold; color: #DB0100; line-height: 1.45; margin: 0 auto; background: rgba(188,2,0,0.1); padding: 20px 0;}
  .achievements .list_detail li p.txt { width: 100%; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 1.6rem; font-weight: bold; color: #000; line-height: 2.0; margin: 0 auto; border-top: 1px solid #DB0100; padding: 20px 0;}

  .achievements .list_flow { display: flex; flex-wrap: wrap;}
  .achievements .list_flow li { width: 100%; margin: 0 0 30px;}
  .achievements .list_flow li:last-child { margin: 0 0 0px;}
  .achievements .list_flow li .img { margin: 0 0 20px;}
  .achievements .list_flow li .flcell { display: flex; justify-content: space-between;}
  .achievements .list_flow li .flcell .num { width: 60px; height: 60px; display: flex; justify-content: center; align-items: center; background: rgba(219,1,0,0.1); color: #DB0100; font-size: 2.3rem; font-weight: bold; margin: 0 18px 0 0; line-height: 1;}
  .achievements .list_flow li .flcell .txt_cell { width: calc(100% - 75px);}
  .achievements .list_flow li .flcell .txt_cell .ttl { font-size: 2.0rem; font-weight: bold; line-height: 1.45; color: #DB0100; margin: 0 0 0.7vw; text-align: left;}
  .achievements .list_flow li .flcell .txt_cell .txt { font-size: 1.6rem; font-weight: bold; line-height: 2.0; margin: 0 0 0vw; text-align: left;}

  .achievements .list_beaf { display: flex; flex-wrap: wrap;}
  .achievements .list_beaf li { width: 100%; margin: 0 0% 30px; display: flex; flex-direction: column;}
  .achievements .list_beaf li:last-child { margin: 0 0 0px;}
  .achievements .list_beaf li .img { position: relative; margin: 0 0 15px;}
  .achievements .list_beaf li.type .img,
  .achievements .list_beaf li.before .img,
  .achievements .list_beaf li.after .img { position: relative; margin: 0 0 35px;}
  .achievements .list_beaf li .img span { position: absolute; width: 100px; height: 50px; display: flex; justify-content: center; align-items: center; color: #fff; text-align: center; line-height: 1; font-size: 1.6rem; font-weight: bold; letter-spacing:  0.1em; right: 15px; bottom: -25px;}
  .achievements .list_beaf li.type .img span { width: 213px; height: 50px; color: #fff; line-height: 1; left: 10px; right: auto; bottom: -30px; background: #DB0100;}
  .achievements .list_beaf.plant li.type:first-child .img span { width: 280px;}
  .achievements .list_beaf li.before .img span { background: #9B8F8F;}
  .achievements .list_beaf li.after .img span { background: #DB0100;}
  .achievements .list_beaf li .detail { order: -1; padding-bottom: 2rem; font-size: 1.6rem; font-weight: bold; line-height: 1.45; margin: 0 0 0; text-align: left;}
  .achievements .list_beaf.--nobeforeafter li .detail { order: 1;}
  .achievements .list_beaf li.type .img + .detail { margin-top: 55px;}
  .achievements .list_beaf.plant li .detail { font-size: 1.6rem; line-height: 2.0;}

  .achievements .list_about { display: flex; flex-wrap: wrap; padding: 35px 0 0; margin: 0 0 50px;}
  .achievements .list_about li { position: relative; width: 100%; margin: 0 0% 65px; padding: 50px 0 40px; border: 1px solid #DB0100; }
  .achievements .list_about li:last-child { margin: 0 0 0px;}
  .achievements .list_about li .num { position: absolute; left: 0; right: 0; top: -33px; margin: auto; display: flex; justify-content: center; align-items: center; width: 67px; height: 67px; background: #DB0100; color: #fff; font-size: 2.5rem; font-weight: bold; text-align: center; }
  .achievements .list_about li .ttl { text-align: center; font-size: 1.8rem; line-height: 1.45; font-weight: bold;}
  .achievements .list_about li .txt { width: 82%; text-align: left; font-size: 1.5rem; line-height: 2.0; font-weight: bold; margin: 10px auto 0;}

  .achievements .list_process {}
  .achievements .list_process .ttl { display: flex; justify-content: space-between; }
  .achievements .list_process .ttl p { width: 31.3%; height: 10rem; background: #DB0100; color: #fff; font-size: 1.8rem; font-weight: bold; line-height: 1.4; display: flex; justify-content: center; align-items: center;}
  .achievements .list_process .arrow { width: 25px; margin: 15px auto;}
  .achievements .list_process .blc02 { width: 65.6%; height: 50px; background: #F8E5E5; display: flex; justify-content: center; align-items: center; color: #DB0100; font-size: 1.6rem; font-weight: bold; line-height: 1; text-align: center;}
  .achievements .list_process .blc03 { width: 100%; height: 50px; background: #F8E5E5; display: flex; justify-content: center; align-items: center; color: #DB0100; font-size: 1.6rem; font-weight: bold; line-height: 1; text-align: center;}

  .achievements .list_disc01 {}
  .achievements .list_disc01 li { position: relative; padding: 0 0 0 1.5em; margin: 0 0 0.5vw; font-size: 1.6rem; font-weight: bold; text-align: left;}
  .achievements .list_disc01 li::after { display: block; position: absolute; content: "●"; color: #DB0100; left: 0; top: 0;}

  .achievements .img_full { width: 720px;}

  /* table */
  .achievements .table01 { border-collapse: collapse; border-spacing: 0; width: 100%; border: 1px solid #DB0100; border-bottom: none; margin: 0 0 50px}
  .achievements .table01 tr th { width: 120px; border-bottom: 1px solid #DB0100; border-right: 1px solid #DB0100; padding: 20px 0; background: #F8E5E5; font-size: 1.5rem; font-weight: bold; vertical-align: middle; line-height: 2.0;}
  .achievements .table01 tr td { width: calc(100% - 122px); border-bottom: 1px solid #DB0100; padding: 20px 20px; font-size: 1.5rem; font-weight: bold; text-align: left; line-height: 2.0;}

  .achievements .table02 { border-collapse: collapse; border-spacing: 0; width: 100%; border: 1px solid #DB0100; border-bottom: none; margin: 0 0 70px;}
  .achievements .d_cell .table02:last-of-type { margin-bottom: 0vw;}
  .achievements .table02.t_sp { margin-bottom: 70px;}
  .achievements .table02 tr th { width: 50%; height: 65px; border-bottom: 1px solid #DB0100; border-right: 1px solid #DB0100; padding: 0px 0; background: #F8E5E5; font-size: 1.45rem; font-weight: bold; vertical-align: middle; line-height: 1.5;}
  .achievements .table02 tr td { width: 50%; height: 65px; border-bottom: 1px solid #DB0100; padding: 0px 0px 0px 15px; font-size: 1.45rem; font-weight: bold; text-align: left; line-height: 2.0; vertical-align: middle;}

  .achievements .table03 { border-collapse: collapse; border-spacing: 0; width: 100%; border: 1px solid #DB0100; border-bottom: none; margin: 0 0 70px;}
  .achievements .table03:last-of-type { margin: 0 0 50px;}
  .achievements .table03 tr th { width: 100%; border-bottom: 1px solid #DB0100; color: #DB0100; padding: 15px 0; background: #F8E5E5; font-size: 1.5rem; font-weight: bold; text-align: center;}
  .achievements .table03 tr td { width: 100%; border-bottom: 1px solid #DB0100; padding: 15px 20px; font-size: 1.5rem; font-weight: bold; text-align: center; line-height: 2.0;}

  /* ボタン */
  .achievements .btn_gry { position: relative; display: flex; justify-content: center; align-items: center; line-height: 1; background: #EFEFEF; text-align: center; font-size: 1.6rem; font-weight: bold; color: #000; letter-spacing: 0.1em; border: 1px solid #000; width: 273px; height: 60px; margin: 50px auto 0;}
  .achievements .btn_gry::after { display: block; position: absolute; content: ""; width: 9px; height: 14px; right: 20px; top: 0; bottom: 0; margin: auto; background: url(../img/works/office/arrow01.png) no-repeat; background-size: 100% 100%;}
  .achievements .list_beaf li .btn_gry { margin-top: 65px; margin-bottom: 50px;}
  .achievements .list_beaf li:last-child .btn_gry { margin-bottom: 0px;}

  .achievements p.txt_explanation { text-align: left; font-size: 1.6rem; font-weight: bold; color: #000; line-height: 2.0; margin: 0 0 0;}
  .achievements p.txt_explanation + .dis_flex { margin-top: 100px;}

  .pcOnly { display: none !important; }
  .spOnly { display: block !important; }
}
