@media only screen and (max-width: 768px) {
  .home_page .key {
    --height: calc(100vh - 0px);
    --max-height: 156vw;
    --min-height: 320px;
    font-size: min(6px, 1.2vmin);
  }
  .home_page .key .key_text .item {
    padding: 10px 10px 5vh;
  }
  .home_page .key .key_text h2 {
    margin-bottom: 0.3em;
    line-height: 1.4;
    font-size: 6em;
  }
}
@media only screen and (max-width: 768px) and (max-aspect-ratio: 768/600) {
  .home_page .mv_slider .s1 {
    background-image: url(../images/idx_mv_sp.jpg);
  }
  .home_page .mv_slider.slick-initialized .s2 {
    background-image: url(../images/idx_mv02_sp.jpg);
  }
  .home_page .mv_slider.slick-initialized .s3 {
    background-image: url(../images/idx_mv03_sp.jpg);
  }
  .home_page .mv_slider.slick-initialized .s4 {
    background-image: url(../images/idx_mv04_sp.jpg);
  }
  .home_page .key .catch {
    max-width: 100em;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}
@media only screen and (max-width: 768px) {
  .home_page h3 {
    font-size: 26px;
    text-align: center;
  }
  .home_page .h_en {
    display: table;
    margin-left: auto;
    margin-right: auto;
    font-size: 20px;
  }
  .gr_bnr .bnr {
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 768px) {
  .idx_en {
    font-size: min(120px, 14vw);
  }
  .idx_notice {
    padding: 60px 0px 60px;
  }
  .idx_notice .wrap {
    padding: 30px 20px;
  }
  .idx_notice .wrap p {
    font-size: 16px;
  }
  .idx_trouble {
    padding: 60px 0px 100px;
  }
  .idx_trouble .wrap_h3 {
    margin-bottom: 20px;
  }
  .idx_trouble .idx_en {
    top: -0.5em;
    left: 50%;
    transform: translateX(-50%);
  }
  .idx_trouble .max1920 {
    padding-top: min(20px, 2vw);
  }
  .idx_trouble .top.flex {
    margin-bottom: 25px;
    width: 100%;
    justify-content: center;
  }
  .idx_trouble .top.flex .sub {
    width: 100%;
    text-align: center;
  }
  .idx_trouble .trouble_content {
    width: 36em;
    height: 36em;
    background-size: 100% auto;
    background-position: center;
    font-size: min(1em, (100vw - 40px) / 36);
  }
  .idx_trouble .trouble_content .main {
    margin-bottom: 8em;
  }
  .idx_trouble .trouble_content .item {
    width: 12.2em;
    font-size: 1.125em;
  }
  .idx_trouble .trouble_content .i1,
  .idx_trouble .trouble_content .i4 {
    left: 0;
  }
  .idx_trouble .trouble_content .i2,
  .idx_trouble .trouble_content .i5 {
    left: 33%;
  }
  .idx_trouble .trouble_content .i2 {
    top: 0;
  }
  .idx_trouble .trouble_content .i1,
  .idx_trouble .trouble_content .i3 {
    top: 4.5em;
  }
  .idx_trouble .trouble_content .i4,
  .idx_trouble .trouble_content .i6 {
    bottom: 4.5em;
  }
  .idx_trouble .trouble_content .i3,
  .idx_trouble .trouble_content .i6 {
    right: 0;
  }
  .idx_trouble .gr_bnr {
    align-items: center;
    flex-direction: column;
  }
  .idx_about .idx_about_r1 {
    padding-top: 60px;
  }
  .idx_about .idx_about_r1 .gr_bnr {
    flex-direction: column;
  }
  .idx_about .idx_about_r1 .gr_bnr .bnr {
    margin-top: 20px;
  }
  .idx_about .idx_about_r1:after {
    top: auto;
    min-height: 0;
  }
  .idx_about .idx_about_r2 {
    padding-bottom: 80px;
  }
  .idx_about .idx_about_r2::before {
    height: calc(100% + 10em);
  }
  .idx_about .wrap_h3 {
    padding-top: 0;
    margin: 0px auto 50px;
  }
  .idx_about .row {
    position: relative;
    display: block;
    z-index: 1;
  }
  .idx_about .row::before {
    content: "";
    display: block;
    position: absolute;
    transition: all 0.3s;
    height: 60%;
    width: 100vw;
    left: 50%;
    bottom: -120px;
    z-index: -1;
    transform: translateX(-50%);
    background-color: #bfb3a5;
  }
  .idx_about .row .box_img {
    margin: 0px auto 25px;
  }
  .idx_about .row .txt {
    margin-right: auto;
    margin-left: auto;
    position: relative;
    z-index: 1;
  }
  .idx_about .row .gr_bnr {
    margin: 25px auto 0;
  }
  .idx_about .t2 .flex,
  .idx_about .t3 .flex,
  .idx_about .t4 .flex {
    flex-direction: column;
    padding: 0px 10px;
  }
  .idx_about .t2 .flex .box_img,
  .idx_about .t3 .flex .box_img,
  .idx_about .t4 .flex .box_img {
    margin-top: 20px;
  }
  .idx_about .box_tab {
    padding: 20px 0px;
  }
  .idx_about .box_tab .flex {
    margin: 0px auto;
  }
  .idx_about .box_tab .flex h4 {
    font-size: 18px;
  }
  .idx_about .box_tab .flex .box_img {
    display: table;
    margin: 0px auto;
    max-width: 100%;
  }
  .idx_about .box_tab .flex .box_text {
    order: 2;
    width: 100%;
    margin-top: 20px;
  }
  .idx_about .t1 .box_tab .flex {
    align-items: center;
    justify-content: center;
  }
  .idx_about .t1 .box_tab .flex .col {
    width: calc(50% - 1.5em);
    margin: 1em 0.75em;
  }
  .idx_about .tab .gr_bnr .bnr {
    margin-top: 30px;
  }
  .idx_about .TabContainer {
    margin-top: min(113px, 32vw);
    padding: 15px;
  }
  .idx_about .TabContainer .TabPager {
    font-size: min(1em, (100vw - 40px) / 28);
    flex-wrap: wrap;
  }
  .idx_about .TabContainer .TabPager > div {
    width: 50%;
  }
  .idx_endometrial {
    padding: min(60px, 8vw) 0px 60px;
  }
  .idx_endometrial .marquee {
    top: 1.2em;
  }
  .idx_endometrial .wrap_h3 {
    margin-bottom: 50px;
  }
  .idx_endometrial .row_grid {
    width: calc(100% - 40px);
  }
  .idx_endometrial .row_grid .box_img {
    padding-right: 10px;
  }
  .idx_endometrial .row_grid .box_img::before {
    width: calc(100% - 10px);
  }
  .idx_endometrial .row_grid .txt p {
    margin-top: 30px;
  }
  .idx_endometrial .row_grid .txt p span {
    display: inline-block;
  }
  .idx_endometrial .txt .sub {
    font-size: 20px;
    text-align: center;
  }
  .idx_endometrial .txt .sub::before {
    left: 50%;
    transform: translateX(-50%);
  }
  .idx_endometrial .row2 {
    margin: 40px auto 0;
    max-width: 33.6em;
    font-size: min(1em, (100vw - 40px) / 32);
  }
  .idx_endometrial .row2::after {
    content: "";
    display: block;
    position: absolute;
    transition: all 0.3s;
    background-color: #faf8f5;
    height: 220%;
    bottom: -60px;
    left: calc(50% - 50vw);
    width: 100vw;
    z-index: -2;
  }
  .idx_endometrial .row2::before {
    height: calc(100% + 115px);
    min-height: 0px;
    top: -75px;
    right: -50%;
  }
  .idx_endometrial .row2 p {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    max-width: calc(50% - 0.5em);
  }
  .idx_flow {
    padding: 40px 0px 50px;
  }
  .idx_flow .wrap_h3 {
    padding-top: min(20px, 2vw);
  }
  .idx_flow .idx_en {
    top: -0.4em;
    left: 50%;
    transform: translateX(-50%);
  }
  .idx_flow .top {
    justify-content: center;
  }
  .idx_flow .bot {
    margin-top: 25px;
    max-width: 42em;
    margin-left: auto;
    margin-right: auto;
    font-size: min(1em, (100vw - 40px) / 32);
  }
  .idx_flow .bot .col {
    margin-top: 2em;
  }
  .idx_flow .inner_big {
    padding: 0px 20px 120px;
  }
  .idx_flow .inner_big::before {
    height: 50%;
    bottom: -20px;
  }
  .idx_flow .gr_bnr {
    position: absolute;
    bottom: 0px;
    left: 0;
    padding: 0px 20px;
    width: 100%;
  }
  .idx_bg:after {
    mask-size: 70em auto;
    -webkit-mask-size: 70em auto;
    height: calc(100% + 2.8125em);
    background-size: cover;
    background-position: top center;
  }
  .idx_bg:before {
    background-size: 70em auto;
    top: -6.8em;
  }
  .idx_safe {
    padding: min(120px, 24vw) 0px 60px;
  }
  .idx_safe .wrap_h3 {
    margin-bottom: 20px;
  }
  .idx_safe .marquee.st1 {
    top: min(-1em, -1vw);
  }
  .idx_safe .content > picture {
    font-size: 1em;
  }
  .idx_safe .inner_big {
    width: 100%;
  }
  .idx_safe .content {
    padding: 0 0px 25px;
  }
  .idx_safe .content .box_txt {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    min-width: 200px;
  }
  .idx_safe .content .bg01 {
    width: 40%;
  }
  .idx_safe .content .bg03 {
    display: none;
    padding-top: 20px;
    max-width: 100%;
    position: relative;
    bottom: auto;
  }
  .idx_safe .gr_bnr {
    margin-top: 25px;
  }
  .idx_feature .top {
    padding: 50px 0px 40px;
  }
  .idx_feature .top::before {
    height: calc(100% + 100px);
    background-image: url(../images/idx_feature_bg_sp.jpg);
  }
  .idx_feature .top .wrap_h3.t_center {
    padding-top: 30px;
  }
  .idx_feature .top .wrap_h3.t_center .idx_en {
    top: -10px;
  }
  .idx_feature .row .box {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
  }
  .idx_feature .row .box .point {
    font-size: min(1.125em, 3vw);
  }
  .idx_info {
    margin-top: 3vw;
    padding: 60px 20px;
  }
  .idx_info .wrap_h3 {
    padding-top: 20px;
    margin-bottom: 25px;
  }
  .idx_info .wrap_h3 .idx_en.no_scroll {
    left: 0;
    top: -0.5em;
    text-align: center;
    width: 100%;
  }
  .idx_info .row .box_text {
    margin-bottom: 0;
    margin-top: 0;
  }
  .idx_info li {
    padding-bottom: 0.8em;
    padding-top: 0.8em;
  }
  .idx_info li::before {
    top: 0.65em;
  }
  .idx_greeting {
    margin-top: 50px;
    padding: max(70px, 14vw) 0 30px;
  }
  .idx_greeting .idx_en.no_scroll {
    left: 0;
    top: 0.5em;
    width: 100%;
    text-align: center;
  }
  .idx_greeting .wrap_h3 {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
  }
  .idx_greeting .top {
    margin-bottom: 30px;
  }
  .idx_greeting .top .txt {
    width: 100%;
  }
  .idx_greeting .row1 {
    font-size: 1em;
    align-items: center;
    justify-content: center;
    margin: 0px -0.5em;
  }
  .idx_greeting .row1 .box {
    width: calc(50% - 1em);
    margin: 1em 0.5em;
  }
  .idx_greeting .row2 {
    margin-top: 40px;
  }
  .idx_greeting .bg {
    height: 60%;
    background-color: #c6baae;
  }
  .idx_greeting .bg::before {
    height: min(150px, 30vw);
    inset: inherit;
    bottom: 0;
    width: 100%;
    left: 0;
  }
  .idx_greeting .gr_bnr {
    margin-top: 25px;
  }
  .idx_news {
    padding: 60px 0px;
  }
  .idx_news .idx_en.no_scroll {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  .idx_news .content {
    padding: min(63px, 8vw) 20px 40px;
  }
  .idx_news .content .wrap {
    flex-direction: column;
  }
  .idx_news .content .box_left {
    margin-top: 0;
  }
  .idx_news .content .box_right {
    width: 100%;
    max-width: 100%;
  }
  .idx_news .btn.style01 {
    margin: 0px auto;
  }
}
@media only screen and (max-width: 639px) {
  .idx_greeting .row1 .box {
    width: 100%;
    margin: 15px 0px;
  }
  .idx_greeting .row1 .box h4 {
    margin-top: 1.25em;
  }
  .idx_flow .bot {
    max-width: 28em;
    font-size: min(1em, (100vw - 40px) / 28);
  }
  .idx_about .t1 .box_tab .flex .col {
    width: 100%;
    margin: 15px auto;
  }
  .idx_greeting .gr_bnr {
    flex-direction: column;
  }
  .idx_greeting .gr_bnr .bnr {
    margin-top: 20px;
    max-width: 100%;
  }
  .idx_greeting .row2 {
    justify-content: center;
    font-size: min(1em, 3vw);
  }
  .idx_greeting .row2 .box {
    margin-top: 25px;
    width: 100%;
  }
  .idx_feature h4 {
    font-size: 18px;
  }
  .idx_greeting .bg {
    height: 65%;
  }
}
@media only screen and (max-width: 480px) {
  .idx_trouble .trouble_content .item {
    font-size: 1.3em;
    padding-left: 0.5em;
    height: 3.6em;
    width: 11em;
  }
  .idx_news .content li a {
    --w: 7.5em;
    padding: 1em 0;
  }
  .idx_info .wrap_h3 {
    padding-top: 0;
  }
  .idx_greeting {
    padding: min(49px, 12vw) 0 30px;
  }
  .idx_news .content {
    padding: min(63px, 6vw) 12px 40px;
  }
  .idx_feature .top .wrap_h3.t_center {
    padding-top: 4vw;
  }
  .idx_endometrial .row2 p a span {
    font-size: 1.2em;
  }
  .box_img.st1 .txt_ver {
    font-size: min(1.4em, 5vw);
  }
  .idx_flow .col .tt {
    font-size: 14px;
  }
  .idx_flow .col .tt span {
    display: inline-block;
  }
}
@media only screen and (max-width: 375px) {
  .idx_news .content li a {
    display: block;
  }
  .idx_news .content li a .title {
    max-width: 100%;
    width: 100%;
  }
  .idx_about .tab:not(.t1) .box_tab .bnr a {
    padding-left: 7%;
  }
}

/*# sourceMappingURL=index_sp.css.map */
