@charset "UTF-8";
:root {
  --vh: 100vh;
  --vh: 100svh;
  /* 色関連 */
  --color-text: #000;
  --color-black: #000;
  --color-white: #fff;
  --color-green: #00a29a;
  --color-blue: #0c4396;
  --font-family-base: "M PLUS 1p", sans-serif;
  /* トランジションとアニメーション */
  --transition-duration-default: 0.3s;
  --transition-easing-default: ease-out;
}
@keyframes floatY {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-30px);
  }
}
.p-health {
  .ly_centered {
    width: calc(100% - 40px);
    max-width: 1200px;
    margin-inline: auto;
  }
  @media screen and (min-width: 768px) {
    .ly_centered {
      width: calc(100% - 80px);
    }
  }
  .ly_centered__w990 {
    max-width: 990px;
  }
  
  /* .ly_container {
    position: relative;
    z-index: 1;
    font-family: var(--font-family-base);
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--color-text);
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
  }
  .ly_container img {
    display: block;
    width: 100%;
    height: auto;
  } */
  
  .bl_policyList > li:not(:first-child) {
    margin-top: 30px;
  }
  @media screen and (min-width: 768px) {
    .bl_policyList > li:not(:first-child) {
      margin-top: 50px;
    }
  }
  
  .bl_policyItem_ttl {
    position: relative;
    padding: 12px 16px;
    background-color: #f1faf9;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.417;
  }
  @media screen and (min-width: 768px) {
    .bl_policyItem_ttl {
      font-size: 24px;
    }
  }
  .bl_policyItem_ttl::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 6px;
    height: 12px;
    clip-path: polygon(100% 50%, 0 0, 0 100%);
    background-color: var(--color-green);
  }
  .bl_policyItem_body {
    margin-top: 10px;
    padding-left: 16px;
  }
  @media screen and (min-width: 768px) {
    .bl_policyItem_body {
      margin-top: 20px;
    }
  }
  .bl_policyItem_txt {
    font-size: 14px;
    line-height: 2;
  }
  @media screen and (min-width: 768px) {
    .bl_policyItem_txt {
      font-size: 18px;
    }
  }
  
  .bl_box {
    margin-top: 26px;
    padding: 25px;
    border-radius: 0 0 20px 20px;
    background: linear-gradient(transparent, #fffef5);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  }
  @media screen and (min-width: 768px) {
    .bl_box {
      margin-top: 36px;
      padding: 45px;
    }
  }
  .bl_box_txt {
    font-weight: 500;
    font-size: 14px;
    line-height: 2;
  }
  @media screen and (min-width: 768px) {
    .bl_box_txt {
      font-size: 18px;
    }
  }
  
  .bl_cardUnits {
    display: flex;
    flex-wrap: wrap;
    gap: 0 40px;
  }
  .bl_cardUnits .bl_cardUnit {
    width: calc((100% - 40px) / 2);
  }
  
  .bl_cardUnit {
    display: flex;
    flex-direction: column;
    gap: 20px 0;
  }
  @media screen and (min-width: 768px) {
    .bl_cardUnit {
      gap: 50px 0;
    }
  }
  
  .bl_card {
    border: 1px solid #bfbfbf;
    border-radius: 30px;
  }
  .bl_card_imgWrap {
    border-radius: 30px 30px 0 0;
    aspect-ratio: 580/340;
  }
  .bl_card_imgWrap img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 30px 30px 0 0;
  }
  .bl_card_body {
    padding: 20px;
    border-top: 1px solid #bfbfbf;
    background-color: var(--color-white);
    border-radius: 0 0 30px 30px;
  }
  @media screen and (min-width: 768px) {
    .bl_card_body {
      padding: 30px;
    }
  }
  .bl_card_ttl {
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
  }
  @media screen and (min-width: 768px) {
    .bl_card_ttl {
      font-size: 24px;
    }
  }
  .bl_card_txt {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.75;
  }
  @media screen and (min-width: 768px) {
    .bl_card_txt {
      margin-top: 17px;
      font-size: 16px;
    }
  }
  @media screen and (min-width: 768px) {
    .bl_card__02 {
      margin-top: 60px;
    }
  }
  .bl_card__03 .bl_card_body {
    background-color: #e8faff;
  }
  .bl_card__04 .bl_card_body {
    background-color: #edfcfb;
  }
  
  .bl_cardBox {
    margin-top: 20px;
    padding: 20px;
    background-color: #fff8e7;
    border-radius: 20px;
  }
  .bl_cardBox_inner {
    display: flex;
    flex-direction: column;
    gap: 15px 0;
  }
  @media screen and (min-width: 992px) {
    .bl_cardBox_inner {
      flex-direction: row;
      gap: 0 15px;
    }
  }
  .bl_cardBox_imgWrap {
    width: 100%;
    max-width: 120px;
    margin-inline: auto;
  }
  @media screen and (min-width: 768px) {
    .bl_cardBox_body {
      flex: 1;
    }
  }
  .bl_cardBox_txt {
    font-size: 13px;
    line-height: 2;
  }
  @media screen and (min-width: 768px) {
    .bl_cardBox_txt {
      font-size: 14px;
    }
  }
  
  .bl_linkList {
    display: flex;
    flex-direction: column;
    gap: 20px 0;
  }
  @media screen and (min-width: 768px) {
    .bl_linkList {
      flex-direction: row;
      flex-wrap: wrap;
      gap: 26px;
    }
  }
  @media screen and (min-width: 768px) {
    .bl_linkList > li {
      width: calc((100% - 26px) / 2);
    }
  }
  @media screen and (min-width: 1200px) {
    .bl_linkList > li {
      width: calc((100% - 78px) / 4);
    }
  }

  .bl_linkList > li > a::after {
    content: none;
  }
  
  .bl_linkItem {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 6px;
    min-height: 80px;
    padding: 10px 15px;
    border-radius: 10px;
    border: 2px solid #92d5d1;
    background-color: var(--color-white);
    text-decoration: none;
    color: var(--color-text);
  }
  .bl_linkItem[href$=".pdf"] {
    padding-right: 45px;
  }
  .bl_linkItem[href$=".pdf"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 20px;
    height: 25px;
    background: url("/corporate/health/image/icon_pdf.svg") no-repeat center;
    background-size: 20px 25px;
  }
  .bl_linkItem_icon {
    width: 50px;
  }
  .bl_linkItem_ttl {
    flex: 1;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.375;
  }
  .bl_media {
    border: none;
    border-radius: 0;
    padding-block: 0;
  }
  .bl_media_inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px 0;
  }
  @media screen and (min-width: 768px) {
    .bl_media_inner {
      flex-direction: row-reverse;
      gap: 0 24px;
    }
  }
  .bl_media_imgWrap {
    max-width: 294px;
    margin-inline: auto;
  }
  @media screen and (min-width: 768px) {
    .bl_media_body {
      flex: 1;
    }
  }
  .bl_media_txt {
    font-size: 14px;
    line-height: 1.8;
  }
  @media screen and (min-width: 768px) {
    .bl_media_txt {
      font-size: 20px;
    }
  }
  .bl_media_logos {
    margin-top: 30px;
    max-width: 600px;
  }
  
  .bl_olList {
    counter-reset: num;
  }
  .bl_olList li {
    position: relative;
    padding-left: 1.3em;
    font-size: 14px;
    line-height: 1.8;
  }
  @media screen and (min-width: 768px) {
    .bl_olList li {
      font-size: 18px;
    }
  }
  .bl_olList li::before {
    counter-increment: num;
    content: counter(num) ".";
    position: absolute;
    top: 0;
    left: 0;
  }
  .bl_olList li:not(:first-child) {
    margin-top: 5px;
  }
  
  .bl_profile {
    margin-top: 40px;
  }
  .bl_profile_inner {
    display: flex;
    align-items: flex-end;
    gap: 0 20px;
  }
  @media screen and (min-width: 768px) {
    .bl_profile_inner {
      text-align: right;
    }
  }
  .bl_profile_cont {
    flex: 1;
  }
  .bl_profile_company, .bl_profile_position {
    font-size: 14px;
    line-height: 1.8;
  }
  @media screen and (min-width: 768px) {
    .bl_profile_company, .bl_profile_position {
      font-size: 18px;
    }
  }
  .bl_profile_name {
    margin-top: 10px;
    font-size: 28px;
    line-height: 1.41666667;
    letter-spacing: 0.1em;
  }
  @media screen and (min-width: 768px) {
    .bl_profile_name {
      font-size: 36px;
    }
  }
  .bl_profile_imgWrap {
    max-width: 130px;
    margin-inline: auto;
  }
  @media screen and (min-width: 768px) {
    .bl_profile_imgWrap {
      max-width: 180px;
    }
  }
  
  .el_lv2Heading {
    text-align: center;
    margin-bottom: 30px;
  }
  @media screen and (min-width: 768px) {
    .el_lv2Heading {
      margin-bottom: 40px;
    }
  }
  .el_lv2Heading .ja {
    font-weight: 700;
    font-size: 20px;
    line-height: 1.35;
  }
  @media screen and (min-width: 768px) {
    .el_lv2Heading .ja {
      font-size: 40px;
    }
  }
  .el_lv2Heading .en {
    margin-top: 5px;
    color: var(--color-green);
    font-weight: 500;
    font-size: 11px;
    line-height: 1.273;
  }
  @media screen and (min-width: 768px) {
    .el_lv2Heading .en {
      margin-top: 10px;
      font-size: 26px;
    }
  }
  
  .el_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 100%;
    min-height: 60px;
    padding: 10px;
    border: 4px solid var(--color-green);
    background-color: var(--color-white);
    border-radius: 30px;
    text-decoration: none;
    color: var(--color-text);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.45;
  }
  @media screen and (min-width: 768px) {
    .el_btn {
      min-width: 300px;
      font-size: 20px;
    }
  }
  .el_btn_wrap {
    margin-top: 30px;
    text-align: center;
  }
  .el_btn[href$=".pdf"] {
    padding-right: 45px;
    padding-left: 45px;
  }
  .el_btn[href$=".pdf"]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 20px;
    height: 25px;
    background: url("/corporate/health/image/icon_pdf.svg") no-repeat center;
    background-size: 20px 25px;
    border-radius: 0;
  }
  
  .el_txt {
    margin-bottom: 30px;
    font-size: 14px;
    line-height: 1.8;
  }
  @media screen and (min-width: 768px) {
    .el_txt {
      margin-bottom: 60px;
      font-size: 20px;
    }
  }
  
  .el_floating,
  .el_floating_delay {
    animation: floatY 3.5s ease-in-out infinite;
  }
  
  .el_floating_delay {
    animation-delay: 2s;
  }
  
  .un_homePolicy {
    width: calc(100% - 40px);
    max-width: 1200px;
    margin-inline: auto;
    background-color: var(--color-white);
  }
  @media screen and (min-width: 768px) {
    .un_homePolicy {
      width: calc(100% - 80px);
    }
  }
  .un_homePolicy_wrap {
    position: relative;
    max-width: 1920px;
    margin-inline: auto;
  }
  .un_homePolicy_decos {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .un_homePolicy_decos .deco {
    position: absolute;
  }
  .un_homePolicy_decos .deco__01 {
    top: 0;
    right: -22.5%;
    width: 39.4270833%;
    max-width: 757px;
  }
  .un_homePolicy_inner {
    padding: 40px 20px;
    border-radius: 30px;
    border: 1px solid #bfbfbf;
  }
  @media screen and (min-width: 768px) {
    .un_homePolicy_inner {
      padding: 50px;
    }
  }
  @media screen and (min-width: 992px) {
    .un_homePolicy_inner {
      padding: 70px 80px 110px;
    }
  }
  @media screen and (min-width: 768px) {
    .un_homePolicy .el_lv2Heading {
      text-align: left;
    }
  }
  
  .un_homeCycle_wrap {
    position: relative;
    max-width: 1920px;
    margin-inline: auto;
    padding: 80px 0 130px;
  }
  @media screen and (min-width: 768px) {
    .un_homeCycle_wrap {
      padding: 160px 0 265px;
    }
  }
  .un_homeCycle_decos {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .un_homeCycle_decos .deco {
    position: absolute;
  }
  .un_homeCycle_decos .deco__01 {
    top: 76px;
    left: -3.02083333%;
    width: 20.5208333%;
    max-width: 394px;
  }
  @media screen and (min-width: 768px) {
    .un_homeCycle_decos .deco__01 {
      width: 15%;
    }
  }
  @media screen and (min-width: 1200px) {
    .un_homeCycle_decos .deco__01 {
      width: 20.5208333%;
    }
  }
  .un_homeCycle_decos .deco__02 {
    bottom: 67px;
    right: -1.19791667%;
    width: 29.7395833%;
    max-width: 571px;
  }
  .un_homeCycle_decos .deco__03 {
    z-index: -1;
    bottom: 14px;
    left: 6.51041667%;
    width: 40.9375%;
    max-width: 786px;
  }
  
  .un_homeMap_wrap {
    position: relative;
    max-width: 1920px;
    margin-inline: auto;
    padding-bottom: 120px;
  }
  @media screen and (min-width: 768px) {
    .un_homeMap_wrap {
      padding-bottom: 240px;
    }
  }
  .un_homeMap_decos {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .un_homeMap_decos .deco {
    position: absolute;
  }
  .un_homeMap_decos .deco__01 {
    top: 70px;
    left: -1.97916667%;
    width: 41.8229167%;
    max-width: 803px;
  }
  .un_homeMap_decos .deco__02 {
    bottom: min(-17.96875vw, 345px);
    right: -20.1041667%;
    width: 51.4583333%;
    max-width: 988px;
  }
  .un_homeMap_imgWrap {
    padding: 20px;
    border-radius: 20px;
    background-color: var(--color-white);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  }
  @media screen and (min-width: 768px) {
    .un_homeMap_imgWrap {
      padding: 30px;
    }
  }
  
  .un_homeActivity {
    position: relative;
    z-index: 1;
  }
  .un_homeActivity_outer {
    background-color: #f3fafa;
  }
  .un_homeActivity_wrap {
    position: relative;
    max-width: 1920px;
    margin-inline: auto;
    padding: 30px 0 70px;
  }
  @media screen and (min-width: 768px) {
    .un_homeActivity_wrap {
      padding: 30px 0 145px;
    }
  }
  .un_homeActivity_decos {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .un_homeActivity_decos .deco {
    position: absolute;
  }
  .un_homeActivity_decos .deco__01 {
    display: none;
  }
  @media screen and (min-width: 1200px) {
    .un_homeActivity_decos .deco__01 {
      display: block;
      top: 80px;
      right: -2.08333333%;
      width: 20%;
      max-width: 384px;
    }
  }
  .un_homeActivity_decos .deco__02 {
    bottom: 83px;
    right: -7.8125%;
    width: 31.9270833%;
    max-width: 613px;
  }
  .un_homeActivity_decos .deco__03 {
    top: 383px;
    left: -1.35416667%;
    width: 45.46875%;
    max-width: 873px;
  }
  .un_homeActivity_ttl {
    max-width: 500px;
    margin: 0 auto 20px;
  }
  .un_homeActivity_lead {
    text-align: center;
    margin-bottom: 45px;
    color: var(--color-green);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.45454545;
  }
  @media screen and (min-width: 768px) {
    .un_homeActivity_lead {
      font-size: 22px;
    }
  }
  
  .un_homeGroup {
    position: relative;
    max-width: 1920px;
    margin-inline: auto;
    padding: 100px 0 110px;
  }
  @media screen and (min-width: 768px) {
    .un_homeGroup {
      padding: 195px 0 215px;
    }
  }
  .un_homeGroup_decos {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .un_homeGroup_decos .deco {
    position: absolute;
  }
  .un_homeGroup_decos .deco__01 {
    top: 47px;
    left: -7.8125%;
    width: 31.7708333%;
    max-width: 610px;
  }
  .un_homeGroup_decos .deco__02 {
    bottom: -30px;
    right: -31.25%;
    width: 46.4583333%;
    max-width: 892px;
  }
  
  .un_homeInfo {
    padding-bottom: 70px;
  }
  @media screen and (min-width: 768px) {
    .un_homeInfo {
      padding-bottom: 130px;
    }
  }
  
  .un_homeDecoTtl {
    padding-bottom: 80px;
  }
  @media screen and (min-width: 768px) {
    .un_homeDecoTtl {
      padding-bottom: 165px;
    }
  }
  .un_homeDecoTtl_imgWrap {
    max-width: 879px;
    margin-inline: auto;
  }
  
  .un_homeIntro_wrap {
    position: relative;
    max-width: 1920px;
    margin-inline: auto;
    padding-bottom: 50px;
  }
  @media screen and (min-width: 768px) {
    .un_homeIntro_wrap {
      padding-bottom: 100px;
    }
  }
  .un_homeIntro_decos {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .un_homeIntro_decos .deco {
    position: absolute;
  }
  .un_homeIntro_decos .deco__01 {
    top: 0;
    right: -0.3125%;
    width: 17.2916667%;
    max-width: 332px;
  }
  @media screen and (min-width: 768px) {
    .un_homeIntro_decos .deco__01 {
      width: 100px;
    }
  }
  @media screen and (min-width: 1400px) {
    .un_homeIntro_decos .deco__01 {
      width: 150px;
    }
  }
  @media screen and (min-width: 1600px) {
    .un_homeIntro_decos .deco__01 {
      width: 17.2916667%;
      max-width: 332px;
    }
  }
  .un_homeIntro_decos .deco__02 {
    bottom: 100px;
    left: -11.4583333%;
    width: 46.875%;
    max-width: 900px;
  }
  .un_homeIntro_cont {
    max-width: 820px;
  }
  @media screen and (min-width: 768px) {
    .un_homeIntro_cont {
      margin-left: auto;
    }
  }
  .un_homeIntro .bl_olList {
    max-width: 775px;
    margin-left: auto;
  }
  @media screen and (min-width: 768px) {
    .un_homeIntro .el_lv2Heading {
      text-align: left;
    }
  }
  
  .un_homePageTtl {
    position: relative;
    padding-bottom: 60px;
  }
  @media screen and (min-width: 992px) {
    .un_homePageTtl {
      margin-top: 70px;
      padding-bottom: 40px;
    }
  }
  .un_homePageTtl_inner {
    max-width: 1820px;
  }
  .un_homePageTtl_heading {
    width: 100%;
    max-width: 1048px;
    margin: 20px auto;
  }
  @media screen and (min-width: 1200px) {
    .un_homePageTtl_heading {
      width: 57.58241765%;
      margin: 0;
    }
  }
  .un_homePageTtl_imgWrap01 {
    width: 68.6567164%;
    margin-right: -20px;
    margin-left: auto;
  }
  @media screen and (min-width: 768px) {
    .un_homePageTtl_imgWrap01 {
      margin-right: -40px;
    }
  }
  @media screen and (min-width: 1200px) {
    .un_homePageTtl_imgWrap01 {
      position: absolute;
      top: 0;
      right: 0;
      width: min(27.7083333vw, 532px);
    }
  }
  .un_homePageTtl_imgWrap02 {
    margin-left: -20px;
  }
  @media screen and (min-width: 768px) {
    .un_homePageTtl_imgWrap02 {
      margin-left: -40px;
    }
  }
  @media screen and (min-width: 1200px) {
    .un_homePageTtl_imgWrap02 {
      position: absolute;
      top: 100%;
      left: 0;
      width: 370px;
    }
  }
  @media screen and (min-width: 1400px) {
    .un_homePageTtl_imgWrap02 {
      width: min(35.4166667vw, 680px);
    }
  }
  
  @media screen and (min-width: 768px) {
    .hp_spOnly {
      display: none !important;
    }
  }
  
  .hp_pcOnly {
    display: none !important;
  }
  @media screen and (min-width: 768px) {
    .hp_pcOnly {
      display: block !important;
    }
  }
  
  .hp_fontMplus {
    font-family: "M PLUS 1p", sans-serif !important;
  }
  
  .hp_fw700 {
    font-weight: 700 !important;
  }
  
  .hp_fw500 {
    font-weight: 500 !important;
  }
  
  .hp_fw400 {
    font-weight: 400 !important;
  }/*# sourceMappingURL=health.css.map */
  
  /*テスト*/
  /* 親 */
  .bl_mediaLogos {
    display: flex;
    align-items: flex-start;
    gap: 50px;
    flex-wrap: wrap;
    margin-top: 30px;
    max-width: 100%;
  }
  
  /* 子：ここが本丸（グローバル width:100% を打ち消す） */
  .bl_mediaLogos .bl_mediaLogos__logo{
    width:auto;     /* ← .ly_container img { width:100% } を上書き */
    height:44px;    /* 共通高さ（好みで調整） */
    max-width:100%;
    flex:0 0 auto;
  }
  
  img.bl_mediaLogos__logo.bl_mediaLogos__logo--sm {
    height: auto;
    width: 180px;
  }
  
  /* サイズ差を付けたいなら（任意） */
  /* .bl_mediaLogos__logo--lg{ height:56px; }
  .bl_mediaLogos__logo--sm{ height:36px; } */
  
  .bl_mediaLogos .bl_mediaLogos__logo {
    height: 110px;
  }
  
  @media(max-width:680px){
    img.bl_mediaLogos__logo.bl_mediaLogos__logo--sm {
      height: auto;
      width: 140px;
      margin: 0 auto;
    }
    .bl_mediaLogos .bl_mediaLogos__logo {
      height: auto;
    }
  
    .bl_mediaLogos {
      gap: 30px;
    }
  }

  .ly_hContainer {
    position: relative;
    z-index: 1;
    font-family: var(--font-family-base);
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--color-text);
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
  }
  .ly_hContainer img {
    display: block;
    width: 100%;
    height: auto;
  }
}