@charset "UTF-8";
@media print, screen and (min-width: 768px) {
  /* ============================================================
  // works（PC）
  ============================================================ */
  /* ------------------------------------------------------------
  // Fluid Design Function
  // 768px〜1920pxの間で数値を可変させる共通関数
  ------------------------------------------------------------ */
  /* ------------------------------------------------------------
  // page title
  ------------------------------------------------------------ */
  .page_works_ttl {
    display: flex;
    align-items: center;
    padding-inline: clamp(90px, 7.8125vw + 30px, 180px);
    height: clamp(330px, 28.6209887251vw + 110.4770164788px, 660px);
    background: url(../../works/img/pc/bg_works.png) no-repeat center center/cover;
    border-radius: 0 0 clamp(40px, 3.4722222222vw + 13.3333333333px, 80px) clamp(40px, 3.4722222222vw + 13.3333333333px, 80px);
  }
  .page_works_ttl h1, .page_works_ttl h2 {
    font-family: "Poppins", sans-serif;
    font-size: clamp(14px, 0.5208333333vw + 10px, 20px);
    font-weight: 700;
    color: #ffad31;
  }
  .page_works_ttl h1 span, .page_works_ttl h2 span {
    display: block;
    font-size: clamp(26px, 2.2569444444vw + 8.6666666667px, 52px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.05em;
  }
  .works_subttl_box {
    text-align: center;
  }
  .works_subttl_box .works_orange_ttl {
    font-size: clamp(18px, 0.5208333333vw + 14px, 24px);
    font-weight: 700;
    color: #333333;
    line-height: clamp(40px, 0.6944444444vw + 34.6666666667px, 48px);
    letter-spacing: 0.05em;
    width: fit-content;
    height: clamp(40px, 0.6944444444vw + 34.6666666667px, 48px);
    margin-inline: auto;
    margin-bottom: 24px;
    padding-inline: 16px;
    background: #ffad31;
    border-radius: clamp(20px, 0.3472222222vw + 17.3333333333px, 24px);
  }
  .works_subttl_box .works_txt {
    font-size: clamp(20px, 1.7361111111vw + 6.6666666667px, 40px);
    font-weight: 700;
    color: #333333;
    line-height: 1.9575;
    letter-spacing: 0.05em;
    margin-bottom: clamp(24px, 2.0833333333vw + 8px, 48px);
  }
  .works_subttl_box .works_blue_txt {
    font-size: clamp(18px, 1.0416666667vw + 10px, 30px);
    font-weight: 700;
    color: #0088ee;
    line-height: 1.8666666667;
    letter-spacing: 0.05em;
  }
  .works_subttl_box P {
    font-size: 16px;
    font-weight: 700;
    color: #333333;
    line-height: 2.4375;
    letter-spacing: 0.05em;
    margin-top: clamp(20px, 1.7361111111vw + 6.6666666667px, 40px);
  }
  /* ------------------------------------------------------------
  // link button
  ------------------------------------------------------------ */
  .works_link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: clamp(20px, 0.5208333333vw + 16px, 26px);
    font-weight: 700;
    color: #1d1d1d;
    line-height: 1.349;
    text-decoration: none;
    width: 100%;
    max-width: 506px;
    height: clamp(80px, 3.125vw + 56px, 116px);
    margin-top: clamp(40px, 2.4305555556vw + 21.3333333333px, 68px);
    margin-inline: auto;
    background: #ffad32;
    border-radius: clamp(40px, 1.5625vw + 28px, 58px);
    padding: 0 40px;
    box-sizing: border-box;
  }
  .works_link::after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-top: 3px solid #1d1d1d;
    border-right: 3px solid #1d1d1d;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
  }
  .works_link:hover::after {
    transform: translateX(5px) rotate(45deg);
  }
  /* ------------------------------------------------------------
  // content parts
  ------------------------------------------------------------ */
  .works_top_wrap {
    margin-block: 180px 152px;
  }
  .works_top_wrap .works_top_txt {
    font-size: 30px;
    font-weight: 700;
    color: #0088ee;
    line-height: 1.8666666667;
    letter-spacing: 0.05em;
    margin-bottom: 42px;
  }
  .works_top_wrap p {
    font-size: 16px;
    font-weight: 700;
    line-height: 2.4375;
    letter-spacing: 0.05em;
  }
  .works_grid_wrap {
    display: flow-root;
    text-align: center;
    padding: 0 15px clamp(160px, 7.8125vw + 100px, 250px);
    background: url(../../life/img/pc/bg_grid.png);
  }
  .works_grid_wrap .works_subttl_box {
    margin-top: -22px;
  }
  .works_grid_wrap .iac_works {
    margin-top: clamp(90px, 2.8645833333vw + 68px, 123px);
    margin-inline: auto;
    max-width: 1453px;
  }
  .works_blue_wrap_01 {
    position: relative;
    margin-top: -80px;
    padding-block: clamp(90px, 9.1145833333vw + 20px, 195px) clamp(90px, 7.8125vw + 30px, 180px);
    padding-inline: 15px;
    background: #e5f3fa;
    border-radius: clamp(40px, 3.4722222222vw + 13.3333333333px, 80px);
  }
  .works_system_img {
    position: absolute;
    top: -40px;
    right: 0;
    width: clamp(200px, 20.6597222222vw + 41.3333333333px, 438px);
    z-index: 10;
  }
  .works_system_img img {
    width: 100%;
    height: auto;
  }
  .works_system_box {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(20px, 2.6041666667vw + 0px, 50px);
  }
  .works_system_box .system_txt {
    font-size: clamp(20px, 1.7361111111vw + 6.6666666667px, 40px);
    font-weight: 700;
    color: #333333;
    line-height: 1.9575;
    letter-spacing: 0.05em;
    text-align: center;
    width: 100%;
  }
  .works_system_box .system_two_box {
    flex: 1;
    position: relative;
    padding: clamp(30px, 1.7361111111vw + 16.6666666667px, 50px) clamp(20px, 1.5625vw + 8px, 38px) clamp(30px, 3.125vw + 6px, 66px);
    background: #fff;
    border: 6px solid #0088ee;
    border-radius: 10px;
    display: flow-root;
  }
  .works_system_box .system_two_box .system_img {
    position: absolute;
    top: -24px;
    right: clamp(0px, 0.8680555556vw + -6.6666666667px, 10px);
    width: clamp(120px, 4.6006944444vw + 84.6666666667px, 173px);
    z-index: 1;
  }
  .works_system_box .system_two_box .system_item_ttl {
    display: block;
    font-size: clamp(20px, 0.8680555556vw + 13.3333333333px, 30px);
    font-weight: 700;
    color: #0088ee;
    line-height: 1.4333333333;
    letter-spacing: 0.05em;
    margin-bottom: 25px;
    padding-right: 100px;
  }
  .works_system_box .system_two_box p {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #333333;
    line-height: 1.875;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
  }
  .works_system_box .system_two_box ul {
    list-style: none;
    padding: 0;
  }
  .works_system_box .system_two_box ul li {
    position: relative;
    padding-left: 16px;
    font-size: 16px;
    font-weight: 500;
    color: #333333;
    line-height: 1.5625;
    margin-bottom: clamp(16px, 0.5208333333vw + 12px, 22px);
  }
  .works_system_box .system_two_box ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 10px;
    height: 10px;
    background: #ffad31;
    border-radius: 50%;
  }
  .works_system_box .system_two_box ul li span {
    display: block;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .works_system_box .system_two_box ul li:last-child {
    margin-bottom: 0;
  }
  .work_flow_wrap {
    margin-block: clamp(90px, 7.5520833333vw + 32px, 177px) clamp(120px, 21.2673611111vw + -43.3333333333px, 365px);
    padding-inline: 15px;
    background: url(../../works/img/pc/bg_flow.png) no-repeat top left;
    background-size: min(1496px, 100%) auto;
  }
  .work_flow_wrap .flow_img {
    max-width: 1560px;
    margin-block: clamp(60px, 5.2083333333vw + 20px, 120px) clamp(90px, 0.3472222222vw + 87.3333333333px, 94px);
    margin-inline: auto;
  }
  .work_flow_wrap .flow_txt {
    font-size: clamp(20px, 1.7361111111vw + 6.6666666667px, 40px);
    font-weight: 700;
    color: #333333;
    line-height: 1.9575;
    letter-spacing: 0.05em;
    text-align: center;
  }
  .work_flow_wrap .flow_txt span {
    color: #0088ee;
  }
  .works_blue_wrap_02 {
    position: relative;
    padding-block: clamp(90px, 5.9027777778vw + 44.6666666667px, 158px) clamp(90px, 4.6006944444vw + 54.6666666667px, 143px);
    padding-inline: 15px;
    background: #e5f3fa;
    border-radius: clamp(40px, 3.4722222222vw + 13.3333333333px, 80px);
    z-index: -2;
  }
  .works_blue_wrap_02 .strengths_img_01 {
    position: absolute;
    top: -108px;
    left: 0;
    width: clamp(210px, 36.4583333333vw + -70px, 630px);
    z-index: -1;
  }
  .works_blue_wrap_02 .strengths_img_01 img {
    width: 100%;
    height: auto;
  }
  .works_blue_wrap_02 .strengths_img_02 {
    position: absolute;
    top: -69px;
    right: 0;
    width: clamp(180px, 31.25vw + -60px, 540px);
    z-index: -1;
  }
  .works_blue_wrap_02 .strengths_img_02 img {
    width: 100%;
    height: auto;
  }
  .works_blue_wrap_02 .works_subttl_box {
    padding-inline: 124px;
  }
  .works_blue_wrap_02 .works_point_box {
    display: flex;
    flex-direction: column;
    gap: 38px;
    margin-block: 103px 83px;
  }
  .works_blue_wrap_02 .works_point_box .point_box {
    padding: clamp(30px, 2.2569444444vw + 12.6666666667px, 56px) clamp(20px, 1.3888888889vw + 9.3333333333px, 36px);
    background: #ffffff;
    border: 6px solid #0088ee;
    border-radius: 10px;
  }
  .works_blue_wrap_02 .works_point_box .point_box .point_number {
    font-family: "Poppins", sans-serif;
    font-size: clamp(20px, 0.3472222222vw + 17.3333333333px, 24px);
    font-weight: 700;
    color: #ffffff;
    line-height: clamp(40px, 0.4340277778vw + 36.6666666667px, 45px);
    letter-spacing: 0.05em;
    text-align: center;
    width: 138px;
    height: clamp(40px, 0.4340277778vw + 36.6666666667px, 45px);
    margin-bottom: 7px;
    background: #0088ee;
    border-radius: 23px;
  }
  .works_blue_wrap_02 .works_point_box .point_box .point_item_ttl {
    font-size: clamp(20px, 0.3472222222vw + 17.3333333333px, 24px);
    font-weight: 700;
    color: #0088ee;
    line-height: 1.5416666667;
    letter-spacing: 0.05em;
    margin-bottom: 13px;
    padding-left: 9px;
  }
  .works_blue_wrap_02 .works_point_box .point_box p {
    font-size: 16px;
    font-weight: 500;
    line-height: 2.3125;
    letter-spacing: 0.05em;
    padding-left: 9px;
  }
  .works_blue_wrap_02 .works_blue_grid_box {
    padding: 80px 146px 96px;
    background: url(../../life/img/pc/bg_grid.png) #0088ee;
    border: 6px solid #ffffff;
    border-radius: 10px;
  }
  .works_blue_wrap_02 .works_blue_grid_box .blue_grid_item_ttl {
    font-size: clamp(24px, 0.5208333333vw + 20px, 30px);
    font-weight: 700;
    color: #fbfffc;
    line-height: 1.45;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 17px;
  }
  .works_blue_wrap_02 .works_blue_grid_box p {
    font-size: 16px;
    font-weight: 700;
    color: #fbfffc;
    line-height: 2.125;
    letter-spacing: 0.05em;
    text-align: center;
  }
  .technical_wrap {
    margin-block: clamp(90px, 11.8055555556vw + -0.6666666667px, 226px) clamp(90px, 5.2083333333vw + 50px, 150px);
    padding-inline: 15px;
  }
  .technical_wrap .technical_grid_box {
    display: flex;
    align-items: center;
    gap: clamp(20px, 1.2152777778vw + 10.6666666667px, 34px);
    margin-top: clamp(60px, 6.9444444444vw + 6.6666666667px, 140px);
    padding: clamp(30px, 3.8194444444vw + 0.6666666667px, 74px) clamp(20px, 0.3472222222vw + 17.3333333333px, 24px) clamp(30px, 3.8194444444vw + 0.6666666667px, 74px) clamp(20px, 3.90625vw + -10px, 65px);
    background: url(../../life/img/pc/bg_grid.png);
    border: 6px solid #0083ee;
    border-radius: 6px;
    box-shadow: 0 6px 8px -2px rgba(0, 0, 0, 0.3);
  }
  .technical_wrap .technical_grid_box .technical_body {
    flex: 1;
  }
  .technical_wrap .technical_grid_box .technical_body .technical_item_ttl {
    font-size: clamp(18px, 0.6076388889vw + 13.3333333333px, 25px);
    font-weight: 700;
    color: #0088ee;
    line-height: 2.24;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
  }
  .technical_wrap .technical_grid_box .technical_body p {
    font-size: 16px;
    font-weight: 700;
    color: #333333;
    line-height: 2.4375;
    letter-spacing: 0.05em;
  }
  .technical_wrap .technical_grid_box .technical_img {
    width: clamp(180px, 22.4826388889vw + 7.3333333333px, 439px);
  }
  /* ------------------------------------------------------------
  // IAC Content
  ------------------------------------------------------------ */
  .pickup_content_bg {
    background: url(../../../lib/img/bg_pickup_content.png) no-repeat bottom right #e5f3fa;
    background-size: 50% auto;
    border-radius: 40px 40px 0 0;
  }
  .pickup_content_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0 clamp(20px, 0.8680555556vw + 13.3333333333px, 30px);
    width: 100%;
    max-width: 820px;
    margin-inline: auto;
    padding: clamp(60px, 3.125vw + 36px, 96px) 15px clamp(60px, 6.5972222222vw + 9.3333333333px, 136px);
  }
  .pickup_content_wrap .pickup_content_ttl {
    font-size: 32px;
    font-weight: 700;
    color: #0088ee;
    text-align: center;
    width: 100%;
    margin-bottom: 48px;
  }
  .pickup_content_wrap .pickup_content_box {
    flex: 1;
    position: relative;
  }
  .pickup_content_wrap .pickup_content_box a .content_img {
    overflow: hidden;
  }
  .pickup_content_wrap .pickup_content_box a .content_img picture img {
    width: 100%;
    display: block;
    transition: transform 0.5s ease;
  }
  .pickup_content_wrap .pickup_content_box a:hover .content_img picture img {
    transform: scale(1.1);
  }
  .pickup_content_wrap .pickup_content_box .content_ttl {
    position: absolute;
    top: clamp(20px, 1.7361111111vw + 6.6666666667px, 40px);
    left: clamp(20px, 0.4340277778vw + 16.6666666667px, 25px);
    font-size: clamp(22px, 0.6944444444vw + 16.6666666667px, 30px);
    font-weight: 700;
    color: #ffffff;
    line-height: 1.1666666667;
    letter-spacing: 0.2em;
  }
  .pickup_content_wrap .pickup_content_box .more_orange {
    position: absolute;
    right: 16px;
    bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  /* ============================================================
  // works（SP）
  ============================================================ */
  /* ------------------------------------------------------------
  // Fluid Design Function
  // 320px〜767pxの間で数値を可変させる共通関数
  ------------------------------------------------------------ */
  /* ------------------------------------------------------------
  // page title
  ------------------------------------------------------------ */
  .page_works_ttl {
    display: flex;
    align-items: center;
    padding-inline: 20px;
    height: 300px;
    background: url(../../works/img/sp/bg_works.png) no-repeat center center/cover;
    border-radius: 0 0 40px 40px;
  }
  .page_works_ttl h1, .page_works_ttl h2 {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #ffad31;
  }
  .page_works_ttl h1 span, .page_works_ttl h2 span {
    display: block;
    font-size: 26px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.05em;
  }
  .works_subttl_box {
    text-align: center;
  }
  .works_subttl_box .works_orange_ttl {
    font-size: 18px;
    font-weight: 700;
    color: #333333;
    line-height: 40px;
    letter-spacing: 0.05em;
    width: fit-content;
    height: 40px;
    margin-inline: auto;
    margin-bottom: 24px;
    padding-inline: 16px;
    background: #ffad31;
    border-radius: 20px;
  }
  .works_subttl_box .works_txt {
    font-size: 20px;
    font-weight: 700;
    color: #333333;
    line-height: 1.9575;
    letter-spacing: 0.05em;
    margin-bottom: 24px;
  }
  .works_subttl_box .works_blue_txt {
    font-size: 18px;
    font-weight: 700;
    color: #0088ee;
    line-height: 1.8666666667;
    letter-spacing: 0.05em;
  }
  .works_subttl_box P {
    font-size: 16px;
    font-weight: 600;
    color: #333333;
    line-height: 1.8;
    letter-spacing: 0.05em;
    margin-top: 20px;
  }
  /* ------------------------------------------------------------
  // link button
  ------------------------------------------------------------ */
  .works_link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 20px;
    font-weight: 700;
    color: #1d1d1d;
    line-height: 1.349;
    text-decoration: none;
    width: 100%;
    max-width: 506px;
    height: 80px;
    margin-top: 40px;
    margin-inline: auto;
    background: #ffad32;
    border-radius: 40px;
    padding: 0 40px;
    box-sizing: border-box;
  }
  .works_link::after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-top: 3px solid #1d1d1d;
    border-right: 3px solid #1d1d1d;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
  }
  .works_link:hover::after {
    transform: translateX(5px) rotate(45deg);
  }
  /* ------------------------------------------------------------
  // content parts
  ------------------------------------------------------------ */
  .works_top_wrap {
    margin-block: 180px 152px;
  }
  .works_top_wrap .works_top_txt {
    font-size: 30px;
    font-weight: 700;
    color: #0088ee;
    line-height: 1.8666666667;
    letter-spacing: 0.05em;
    margin-bottom: 42px;
  }
  .works_top_wrap p {
    font-size: 16px;
    font-weight: 700;
    line-height: 2.4375;
    letter-spacing: 0.05em;
  }
  .works_grid_wrap {
    display: flow-root;
    text-align: center;
    padding: 0 15px 160px;
    background: url(../../life/img/sp/bg_grid.png);
  }
  .works_grid_wrap .works_subttl_box {
    margin-top: -22px;
  }
  .works_grid_wrap .iac_works {
    max-width: 348px;
    margin-top: 90px;
    margin-inline: auto;
  }
  .works_blue_wrap_01 {
    position: relative;
    margin-top: -80px;
    padding-block: 90px;
    background: #e5f3fa;
    border-radius: clamp(40px, 10.2040816327vw + 1.7346938776px, 80px);
  }
  .works_system_img {
    position: absolute;
    top: -40px;
    right: 0;
    width: clamp(120px, 20.4081632653vw + 43.4693877551px, 200px);
    z-index: 10;
  }
  .works_system_img img {
    width: 100%;
    height: auto;
  }
  .works_system_box {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
  }
  .works_system_box .system_txt {
    font-size: 18px;
    font-weight: 700;
    color: #333333;
    line-height: 1.9575;
    letter-spacing: 0.05em;
    text-align: center;
    width: 100%;
  }
  .works_system_box .system_two_box {
    flex: 1;
    position: relative;
    padding: 30px 20px;
    background: #fff;
    border: 6px solid #0088ee;
    border-radius: 10px;
    display: flow-root;
  }
  .works_system_box .system_two_box .system_img {
    position: absolute;
    top: -24px;
    right: 0;
    width: 120px;
    z-index: 1;
  }
  .works_system_box .system_two_box .system_item_ttl {
    display: block;
    font-size: 20px;
    font-weight: 700;
    color: #0088ee;
    line-height: 1.4333333333;
    letter-spacing: 0.05em;
    margin-bottom: 25px;
    padding-right: 100px;
  }
  .works_system_box .system_two_box p {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #333333;
    line-height: 1.875;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
  }
  .works_system_box .system_two_box ul {
    list-style: none;
    padding: 0;
  }
  .works_system_box .system_two_box ul li {
    position: relative;
    padding-left: 16px;
    font-size: 16px;
    font-weight: 500;
    color: #333333;
    line-height: 1.5625;
    margin-bottom: 16px;
  }
  .works_system_box .system_two_box ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 10px;
    height: 10px;
    background: #ffad31;
    border-radius: 50%;
  }
  .works_system_box .system_two_box ul li span {
    display: block;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .works_system_box .system_two_box ul li:last-child {
    margin-bottom: 0;
  }
  .work_flow_wrap {
    margin-block: 90px 120px;
    padding-inline: 15px;
    background: url(../../works/img/sp/bg_flow.png) no-repeat top left;
    background-size: min(1496px, 100%) auto;
  }
  .work_flow_wrap .flow_container {
    width: 100%;
    max-width: 1560px;
    margin-block: 60px;
    margin-inline: auto;
    padding-bottom: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .work_flow_wrap .flow_container .flow_img {
    width: 1000px;
  }
  .work_flow_wrap .flow_container .flow_img .flow_img img {
    width: 100%;
    height: auto;
    display: block;
  }
  .work_flow_wrap .flow_txt {
    font-size: clamp(18px, 0.5102040816vw + 16.0867346939px, 20px);
    font-weight: 700;
    color: #333333;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .work_flow_wrap .flow_txt span {
    color: #0088ee;
  }
  .works_blue_wrap_02 {
    position: relative;
    padding-block: clamp(60px, 7.6530612245vw + 31.3010204082px, 90px);
    background: #e5f3fa;
    border-radius: 40px;
    z-index: -2;
  }
  .works_blue_wrap_02 .strengths_img_01 {
    position: absolute;
    top: -46px;
    left: 0;
    width: clamp(95px, 29.3367346939vw + -15.012755102px, 210px);
    z-index: -1;
  }
  .works_blue_wrap_02 .strengths_img_01 img {
    width: 100%;
    height: auto;
  }
  .works_blue_wrap_02 .strengths_img_02 {
    position: absolute;
    top: -46px;
    right: 0;
    width: clamp(80px, 25.5102040816vw + -15.6632653061px, 180px);
    z-index: -1;
  }
  .works_blue_wrap_02 .strengths_img_02 img {
    width: 100%;
    height: auto;
  }
  .works_blue_wrap_02 .works_subttl_box {
    padding-inline: clamp(48px, 18.3673469388vw + -20.8775510204px, 120px);
  }
  /* ------------------------------------------------------------
  // IAC Content
  ------------------------------------------------------------ */
}
@media screen and (max-width: 767px) and (max-width: 460px) {
  .works_blue_wrap_02 .works_subttl_box P {
    margin-inline: -48px;
  }
}
@media screen and (max-width: 767px) {
  .works_blue_wrap_02 .works_point_box {
    display: flex;
    flex-direction: column;
    gap: 38px;
    margin-block: clamp(60px, 10.9693877551vw + 18.8647959184px, 103px) clamp(60px, 5.8673469388vw + 37.9974489796px, 83px);
  }
  .works_blue_wrap_02 .works_point_box .point_box {
    padding: 30px clamp(16px, 1.0204081633vw + 12.1734693878px, 20px);
    background: #ffffff;
    border: 6px solid #0088ee;
    border-radius: 10px;
  }
  .works_blue_wrap_02 .works_point_box .point_box .point_number {
    font-family: "Poppins", sans-serif;
    font-size: clamp(18px, 0.5102040816vw + 16.0867346939px, 20px);
    font-weight: 700;
    color: #ffffff;
    line-height: clamp(34px, 1.5306122449vw + 28.2602040816px, 40px);
    letter-spacing: 0.05em;
    text-align: center;
    width: 138px;
    height: clamp(34px, 1.5306122449vw + 28.2602040816px, 40px);
    margin-bottom: 10px;
    background: #0088ee;
    border-radius: clamp(17px, 0.7653061224vw + 14.1301020408px, 20px);
  }
  .works_blue_wrap_02 .works_point_box .point_box .point_item_ttl {
    font-size: clamp(18px, 0.5102040816vw + 16.0867346939px, 20px);
    font-weight: 700;
    color: #0088ee;
    line-height: 1.5416666667;
    letter-spacing: 0.05em;
    margin-bottom: 13px;
    padding-left: 9px;
  }
  .works_blue_wrap_02 .works_point_box .point_box p {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-left: 9px;
  }
}
@media screen and (max-width: 767px) {
  .works_blue_wrap_02 .works_blue_grid_box {
    padding: clamp(30px, 12.7551020408vw + -17.8316326531px, 80px) clamp(20px, 32.1428571429vw + -100.5357142857px, 146px) clamp(30px, 16.8367346939vw + -33.137755102px, 96px);
    background: url(../../life/img/sp/bg_grid.png) #0088ee;
    border: 6px solid #ffffff;
    border-radius: 10px;
  }
  .works_blue_wrap_02 .works_blue_grid_box .blue_grid_item_ttl {
    font-size: clamp(20px, 1.0204081633vw + 16.1734693878px, 24px);
    font-weight: 700;
    color: #fbfffc;
    line-height: 1.45;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
  }
  .works_blue_wrap_02 .works_blue_grid_box p {
    font-size: 16px;
    font-weight: 500;
    color: #fbfffc;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 767px) {
  .technical_wrap {
    margin-block: 90px;
    padding-inline: 15px;
  }
  .technical_wrap .technical_grid_box {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 60px;
    padding: 30px 20px;
    background: url(../../life/img/sp/bg_grid.png);
    border: 6px solid #0083ee;
    border-radius: 6px;
    box-shadow: 0 6px 8px -2px rgba(0, 0, 0, 0.3);
  }
  .technical_wrap .technical_grid_box .technical_body {
    flex: 1;
  }
  .technical_wrap .technical_grid_box .technical_body .technical_item_ttl {
    font-size: 18px;
    font-weight: 700;
    color: #0088ee;
    line-height: 1.8;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
  }
  .technical_wrap .technical_grid_box .technical_body p {
    font-size: 16px;
    font-weight: 700;
    color: #333333;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .technical_wrap .technical_grid_box .technical_img {
    max-width: 300px;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .pickup_content_bg {
    background: url(../../../lib/img/bg_pickup_content.png) no-repeat bottom right #e5f3fa;
    background-size: 50% auto;
    border-radius: 40px 40px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .pickup_content_wrap {
    display: flex;
    flex-direction: column;
    gap: 40px 0;
    width: 100%;
    margin-inline: auto;
    padding: 60px 15px;
  }
  .pickup_content_wrap .pickup_content_ttl {
    font-size: 32px;
    font-weight: 700;
    color: #0088ee;
    text-align: center;
    width: 100%;
  }
  .pickup_content_wrap .pickup_content_box {
    flex: 1;
    position: relative;
  }
  .pickup_content_wrap .pickup_content_box a .content_img {
    overflow: hidden;
  }
  .pickup_content_wrap .pickup_content_box a .content_img picture img {
    width: 100%;
    display: block;
    transition: transform 0.5s ease;
  }
  .pickup_content_wrap .pickup_content_box a:hover .content_img picture img {
    transform: scale(1.1);
  }
  .pickup_content_wrap .pickup_content_box .content_ttl {
    position: absolute;
    top: 28px;
    left: 24px;
    font-size: 28px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.1666666667;
    letter-spacing: 0.2em;
  }
  .pickup_content_wrap .pickup_content_box .more_orange {
    position: absolute;
    right: 14px;
    bottom: 18px;
  }
}