.home_page .idx-ttl-en {
    font-family: var(--f-en);
}

.home_page .key {
    --height: 42.19vw;
    --min-height: auto;
    --max-height: 34.625em;
    height: var(--height);
    min-height: var(--min-height);
    max-height: var(--max-height);
    position: relative;
    max-width: 1920px;
    margin: 5em auto 0;
}

.home_page .key:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(../images/idx-main-img01.jpg) no-repeat center;
    background-size: 100% auto;
    width: calc(100% - 25em);
    height: 100%;
    border-top-right-radius: 30px;
}

.home_page .key .mv_slider {
    display: flex;
    justify-content: flex-end;
    padding-right: 5.5em;
    padding-top: 3.3em;
}

.home_page .key .mv_slider .inner {
    margin-right: 0;
    margin-left: auto;
}

.home_page .key .key_text {
    position: relative;
    width: 100%;
    height: 100%;
}

.home_page .key .key_text .item {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    height: var(--height);
    min-height: var(--min-height);
    max-height: var(--max-height);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.home_page .key .idx-main-list {
    position: absolute;
    bottom: 1.875em;
    left: calc(50% - 38.125em);
    display: flex;
    flex-wrap: wrap;
    max-width: 410px;
}

.home_page .key .idx-main-list li:nth-child(2n) {
    margin-right: 0;
}

.home_page .key .idx-main-list li {
    min-width: 12.5em;
    min-height: 5.375em;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0.0625em solid #fff;
    text-align: center;
    margin-bottom: 0.625em !important;
    border-radius: 5px;
    margin-right: 10px;
}

.home_page .key .idx-main-list li:last-child {
    margin-bottom: 0;
}

.home_page .key .idx-main-list li .ttl {
    line-height: 1.5em;
    font-weight: 500;
    font-size: 1.25em;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.8)
}

.home_page .key .box-news {
    position: absolute;
    right: 0;
    bottom: 0;
    background: #fff;
    border-top-left-radius: 30px;
    padding: 1.3em 3em 1.25em;
    width: 100%;
    max-width: 30em;
    min-width: 30em;
}

.home_page .key .box-news .fx-box-ttl {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
    align-items: center;
}

.home_page .key .box-news .fx-box-ttl .ttl {
    font-size: 1.5em;
    font-family: var(--f-en);
    color: var(--main-color);
    font-weight: 600;
    margin-bottom: 0;
    letter-spacing: 0.01em;
}

.home_page .key .box-news ul li {
    margin-bottom: 0.4375em;
}

.home_page .key .box-news ul li a {
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--clr1);
    position: relative;
    padding-right: 1.8em;
}

.home_page .key .box-news ul li a:before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 0.45em;
    height: 0.51em;
    background: url(../images/idx-ico-arr.svg) no-repeat center;
    background-size: contain;
}

.home_page .key .box-news ul li a .date {
    font-weight: 500;
    color: var(--main-color);
    font-family: var(--f-en);
    letter-spacing: 0;
    margin-right: 0.95em;
    font-size: 0.75em;
}

.home_page .key .box-news ul li a .title {
    color: var(--clr1);
    font-weight: 600;
    font-size: 1em;
}

.home_page .key .catch {
    padding: 10px;
    margin: 0em auto;
    max-width: 800px;
}

.home_page .key .catch .title,
.home_page .key .catch p {
    color: var(--clr1);
    font-weight: 600;
    letter-spacing: 0.05em;
}

.home_page .key .catch .title {
    margin-bottom: 0.15em;
    font-size: 2.815em;
    line-height: 1.5em;
    position: relative;
    right: -0.45em;
    text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;
}

.home_page .key .catch p {
    font-size: 1.25em;
    text-align: right;
    line-height: 1.8em;
    position: relative;
    margin-right: 0.6em;
    text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;
}

.home_page .topic_path {
    display: none;
}

.home_page h2 {
    position: relative;
    margin-bottom: 35px;
    color: var(--clr1);
    font-family: var(--f-jp);
    font-size: calc(var(--ttl_size) + 14px);
    font-weight: 500;
    letter-spacing: 0.15em;
}

.home_page h2 .en {
    color: var(--main-color);
    font-weight: 500;
    text-transform: uppercase;
}

.home_page h2.white {
    color: #fff;
}

.home_page h2.white .en {
    color: #fff;
}

.home_page h3 {
    color: var(--clr1);
    font-family: var(--f-jp);
    font-size: calc(var(--ttl_size) + 0px);
}

.home_page .idx-btn a {
    text-decoration: none;
    color: var(--clr1);
    font-size: 0.8125em;
    font-weight: 600;
    min-width: 8.847em;
    min-height: 2.462em;
    display: flex;
    align-items: center;
    border: 0.0625em solid var(--main-color);
    border-radius: 15px;
    position: relative;
    letter-spacing: 0;
    padding-left: 0.75em;
}

.home_page .idx-btn a:before {
    content: "";
    position: absolute;
    right: 0.625em;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 0.55em;
    height: 0.61em;
    background: url(../images/idx-ico-arr.svg) no-repeat center;
    background-size: 100% auto;
}

.home_page .idx-btn02 a {
    text-decoration: none;
    display: flex;
    align-items: center;
    min-width: 11.5625em;
    min-height: 4.25em;
    border: 0.0625em solid #a87746;
    border-radius: 34px;
    background: #fff;
    font-size: 1em;
    color: var(--clr1);
    padding-left: 1.75em;
    position: relative;
    letter-spacing: -0.0625em;
    font-weight: 600;
}

.home_page .idx-btn02 a:before {
    content: "";
    position: absolute;
    right: 1.25em;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: url(../images/idx-medical-ico01.svg) no-repeat center;
    background-size: 100% auto;
    width: 1.5em;
    height: 1.5em;
}

.iMessage {
    position: relative;
    padding-top: 10.375em;
    padding-bottom: 15.625em;
}

.iMessage:before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    top: 0;
    background: url(../images/idx-bg-message.png) no-repeat center;
    background-size: 100% auto;
    width: 120em;
    height: 100%;
    max-height: 58em;
}

.iMessage-fx {
    display: flex;
}

.iMessage-l {
    position: relative;
    margin-left: -5em;
    flex-shrink: 0;
    margin-right: 2em;
}

.iMessage-l .img01 {
    text-align: right;
    position: relative;
    z-index: 1;
}

.iMessage-l .img01:before {
    content: "";
    position: absolute;
    left: -8.9375em;
    top: -12.9375em;
    background: url(../images/idx-message-ico01.svg) no-repeat center;
    background-size: 100% auto;
    width: 23.8125em;
    height: 17.25em;
    z-index: -1;
}

.iMessage-l .img02 {
    position: relative;
    left: -4.375em;
    margin-top: 3.0625em;
    z-index: 1;
}

.iMessage-l .img02:before {
    content: "";
    position: absolute;
    left: 8.125em;
    top: 0.9375em;
    background: url(../images/idx-message-ico02.svg) no-repeat center;
    background-size: 100% auto;
    width: 21.1875em;
    height: 15.375em;
    z-index: -1;
}

.iMessage-l .img02:after {
    content: "";
    position: absolute;
    right: -6.75em;
    bottom: -4.125em;
    background: url(../images/idx-message-ico03.svg) no-repeat center;
    background-size: 100% auto;
    width: 14.625em;
    height: 9.25em;
}

.iMessage-l img {
    border-radius: 1.875em;
}

.iMessage-r {
    position: relative;
    right: -9.8125em;
    flex-shrink: 0;
    margin-left: -3.75em;
    margin-top: 5.1875em;
    height: fit-content;
    z-index: 1;
}

.iMessage-r:before {
    content: "";
    position: absolute;
    left: -14.4375em;
    top: -10.9375em;
    background: url(../images/idx-message-ico04.svg) no-repeat center;
    background-size: 100% auto;
    width: 28.1875em;
    height: 22.6875em;
    z-index: -1;
}

.iMessage-r:after {
    content: "";
    position: absolute;
    left: -6.3125em;
    bottom: -12em;
    background: url(../images/idx-message-ico05.svg) no-repeat center;
    background-size: 100% auto;
    width: 15.375em;
    height: 13.8125em;
}

.iMessage-r img {
    border-radius: 1.875em;
}

.iMessage-c {
    max-width: 33.75em;
    margin: 0 3.125em;
    position: relative;
    z-index: 2;
}

.iMessage-c .idx-ttl-en,
.iMessage-c h2 {
    text-align: center;
}

.iMessage-c .idx-ttl-en {
    font-size: 5.625em;
    font-family: var(--f-en);
    text-shadow: rgb(119, 193, 118) 1px 0px 0px, rgb(119, 193, 118) 0.540302px 0.841471px 0px, rgb(119, 193, 118) -0.416147px 0.909297px 0px, rgb(119, 193, 118) -0.989992px 0.14112px 0px, rgb(119, 193, 118) -0.653644px -0.756802px 0px, rgb(119, 193, 118) 0.283662px -0.958924px 0px, rgb(119, 193, 118) 0.96017px -0.279415px 0px;
    color: #fff;
    line-height: 1.5em;
    margin-bottom: 0;
    letter-spacing: 0.12em;
}

.iMessage-c h2 {
    font-size: 2.125em;
    color: var(--clr3);
    letter-spacing: 0;
    font-weight: 600;
    margin-bottom: 1.3em;
    line-height: 1.65em;
}

.iMessage-c .txt>p {
    font-size: 1.25em;
    letter-spacing: 0;
    line-height: 2.2em;
}

.iMedical {
    position: relative;
    margin-top: -14.625em;
    background: #fff;
    padding-top: 4.25em;
}

.iMedical:before {
    content: "";
    position: absolute;
    top: -10.75em;
    left: 50%;
    transform: translate(-50%);
    width: 120em;
    height: 10.75em;
    background: url(../images/idx-bg-medical.png) no-repeat center;
    background-size: 100% auto;
}

.iMedical h2,
.iMedical .idx-ttl-en {
    text-align: center;
}

.iMedical h2 {
    font-size: 3.125em;
    letter-spacing: 0.1em;
    margin-bottom: 0.11em;
}

.iMedical h2 span {
    position: relative;
    padding: 0 0.95em;
}

.iMedical h2 span:before,
.iMedical h2 span:after {
    content: "";
    position: absolute;
    top: 0.25em;
    bottom: 0;
    margin: auto 0;
    width: 0.44em;
    height: 0.34em;
    border-radius: 7px;
    background: var(--main-color);
}

.iMedical h2 span:before {
    left: 0;
}

.iMedical h2 span:after {
    right: 0;
}

.iMedical .idx-ttl-en {
    font-size: 1.4375em;
    font-family: var(--f-en);
    color: #bbe0ba;
    line-height: 1em;
    font-weight: 400;
}

.iMedical-list {
    display: flex;
    max-width: 67.5em;
    justify-content: center;
    margin: 4.3125em auto 0;
}

.iMedical-list li {
    width: 33.3333333333%;
    margin-right: 1.25em;
    transition: 0.3s all;
}

.iMedical-list li:last-child {
    margin-right: 0;
}

.iMedical-list li:nth-child(2) a .img {
    -webkit-mask-image: url(../images/idx-medical-mask02.svg);
    mask-image: url(../images/idx-medical-mask02.svg);
}

.iMedical-list li:nth-child(2) a .box-ttl .ttl:before {
    background: url(../images/idx-medical-ico02.svg) no-repeat center;
    background-size: 100% auto;
}

.iMedical-list li:nth-child(2) a .box-ttl .sub-ttl {
    color: #b8d6f2;
}

.iMedical-list li:nth-child(3) a .img {
    -webkit-mask-image: url(../images/idx-medical-mask03.svg);
    mask-image: url(../images/idx-medical-mask03.svg);
}

.iMedical-list li:nth-child(3) a .box-ttl .ttl:before {
    background: url(../images/idx-medical-ico03.svg) no-repeat center;
    background-size: 100% auto;
}

.iMedical-list li:nth-child(3) a .box-ttl .sub-ttl {
    color: var(--clr5);
}

.iMedical-list li a {
    text-decoration: none;
    position: relative;
    display: block;
}

.iMedical-list li a .img {
    margin-bottom: 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-image: url(../images/idx-medical-mask.svg);
    mask-image: url(../images/idx-medical-mask.svg);
}

.iMedical-list li a .box-ttl {
    position: absolute;
    left: 0;
    bottom: 0;
    padding-left: 2.3125em;
}

.iMedical-list li a .box-ttl span {
    display: block;
}

.iMedical-list li a .box-ttl .ttl {
    font-size: 1.6875em;
    line-height: 1.5em;
    color: var(--clr1);
    font-weight: 600;
    position: relative;
}

.iMedical-list li a .box-ttl .ttl:before {
    content: "";
    position: absolute;
    left: -1.4em;
    top: 0.125em;
    bottom: 0;
    margin: auto 0;
    background: url(../images/idx-medical-ico01.svg) no-repeat center;
    background-size: 100% auto;
    width: 0.89em;
    height: 0.89em;
}

.iMedical-list li a .box-ttl .sub-ttl {
    line-height: 1em;
    font-size: 0.6875em;
    font-weight: 500;
    letter-spacing: 0.18em;
    color: var(--clr4);
}

.iMedical-list02 {
    display: flex;
    max-width: 67.5em;
    margin: 4.375em auto 0;
    justify-content: center;
    position: relative;
    padding-bottom: 3.125em;
}

.iMedical-list02:before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    bottom: 0;
    width: 73.75em;
    border-radius: 1.875em;
    background: #f5fbf5;
    height: 80%;
}

.iMedical-list02 li {
    width: 25%;
    margin-right: 1.25em;
    position: relative;
    transition: 0.3s all;
}

.iMedical-list02 li:last-child {
    margin-right: 0;
}

.iMedical-list02 li>.link-in {
    background: #fff;
    border-radius: 10px;
    text-decoration: none;
    box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 1.3em;
    padding-bottom: 1.625em;
    height: 100%;
}

.iMedical-list02 li>.link-in span {
    display: block;
}

.iMedical-list02 li>.link-in .ico {
    margin-bottom: 0.625em;
    min-height: 3.0625em;
}

.iMedical-list02 li>.link-in .ttl {
    text-align: center;
    font-size: 1.375em;
    font-weight: 600;
    color: var(--clr1);
    margin-bottom: 0.5em;
}

.iMedical-list02 li>.link-in .txt {
    font-size: 0.875em;
    color: var(--clr1);
    font-weight: 500;
    padding: 0 1.5625em;
    letter-spacing: 0;
    line-height: 1.66em;
}

.iMedical-list02 li .idx-btn {
    position: absolute;
    bottom: -1.0375em;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-decoration: none;
    min-width: 8.85em;
    min-height: 2.31em;
    border: 0.0625em solid var(--main-color);
    display: flex;
    align-items: center;
    max-width: 7.1875em;
    border-radius: 15px;
    color: var(--clr1);
    font-size: 0.8125em;
    font-weight: 600;
    letter-spacing: -1px;
    padding-left: 1em;
    background: #fff;
    padding-bottom: 0.1em;
}

.iMedical-list02 li .idx-btn:before {
    content: "";
    position: absolute;
    right: 0.625em;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 0.4375em;
    height: 0.5em;
    background: url(../images/idx-ico-arr.svg) no-repeat center;
    background-size: 100% auto;
}

.iInternal {
    padding-top: 10.8125em;
    position: relative;
    z-index: 1;
    margin-top: 5em;
}

.iInternal:before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    top: -4.9em;
    height: 100%;
    width: 120em;
    background: url(../images/idx-bg-internal.png) no-repeat center;
    background-size: 100% auto;
    z-index: -1;
}

.iInternal-fx-ttl {
    display: flex;
    align-items: flex-end;
    margin-bottom: 2.35em;
}

.iInternal-fx-ttl .box-ttl {
    margin-right: 2.4em;
}

.iInternal-fx-ttl .box-ttl h2 {
    font-size: 2.8125em;
    margin-bottom: 0.22em;
    position: relative;
}

.iInternal-fx-ttl .box-ttl h2:before {
    content: "";
    position: absolute;
    left: -0.97em;
    top: 0.23em;
    bottom: 0;
    margin: auto 0;
    width: 0.49em;
    height: 0.38em;
    border-radius: 7px;
    background: #a87746;
}

.iInternal-fx-ttl .box-ttl .idx-ttl-en {
    font-size: 1.4375em;
    line-height: 1em;
    color: #d3bba2;
    margin-bottom: 0;
    letter-spacing: 0.087em;
}

.iInternal-fx-ttl .idx-btn02 {
    position: relative;
    bottom: 3px;
}

.iInternal .txt {
    max-width: 33.125em;
    margin-bottom: 2em;
    position: relative;
    z-index: 1;
}

.iInternal .txt>p {
    letter-spacing: -1px;
}

.iInternal-list {
    display: flex;
    flex-wrap: wrap;
    max-width: 40.3125em;
    flex-shrink: 0;
}

.iInternal-list li {
    width: calc(33.3333333333% - 0.625em);
    margin-right: 0.9375em;
    margin-bottom: 0.9375em;
}

.iInternal-list li:nth-child(3n) {
    margin-right: 0;
}

.iInternal-list li a {
    letter-spacing: 0;
}

.iInternal-fx {
    display: flex;
}

.iInternal-box {
    flex-shrink: 0;
    margin-right: -12.625em;
    height: fit-content;
    padding-bottom: 2.8125em;
    position: relative;
}

.iInternal-box:before {
    content: "";
    position: absolute;
    right: -4.1875em;
    width: 100vw;
    height: 69%;
    background: #fef5e7;
    bottom: 0;
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
}

.iInternal-img {
    flex-shrink: 0;
    margin-top: -1.5625em;
}

.iGastro {
    padding-top: 8.875em;
    position: relative;
}

.iGastro:before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    top: 0;
    background: url(../images/idx-bg-gastro.png) no-repeat top center;
    background-size: 100% auto;
    width: 120em;
    height: 100%;
}

.iGastro-fx {
    display: flex;
}

.iGastro-fx-ttl {
    display: flex;
    align-items: flex-end;
    margin-bottom: 2.5em;
}

.iGastro-fx-ttl .box-ttl {
    margin-right: 1.9em;
}

.iGastro-fx-ttl .box-ttl h2 {
    font-size: 2.8125em;
    margin-bottom: 0.15em;
    position: relative;
}

.iGastro-fx-ttl .box-ttl h2:before {
    content: "";
    position: absolute;
    left: -0.97em;
    top: 0.23em;
    bottom: 0;
    margin: auto 0;
    width: 0.49em;
    height: 0.38em;
    border-radius: 7px;
    background: #72aee6;
}

.iGastro-fx-ttl .box-ttl .idx-ttl-en {
    font-size: 1.4375em;
    line-height: 1em;
    color: #b8d6f2;
    margin-bottom: 0;
    letter-spacing: 0.087em;
}

.iGastro .idx-btn02 a {
    border: 0.0625em solid #72aee6;
}

.iGastro .idx-btn02 a:before {
    background: url(../images/idx-medical-ico02.svg) no-repeat center;
    background-size: 100% auto;
}

.iGastro-img {
    position: relative;
    width: 50%;
}

.iGastro-img .img {
    width: 64.125em;
    height: 47.8125em;
    position: absolute;
    left: -15.0625em;
    top: -1.625em;
}

.iGastro-box {
    max-width: 34.625em;
    height: fit-content;
    position: relative;
    padding-bottom: 3em;
}

.iGastro-box:before {
    content: "";
    position: absolute;
    left: -4.1875em;
    width: 100vw;
    height: 64.5%;
    background: #f1f7fc;
    bottom: 0;
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}

.iGastro-box .txt {
    position: relative;
    z-index: 1;
    margin-bottom: 1.9em;
}

.iGastro-box .txt>p {
    letter-spacing: -0.5px;
}

.iGastro-tab .TabPager {
    border-radius: 10px;
    margin-bottom: 1em;
}

.iGastro-tab .TabPager li {
    width: 50%;
    box-shadow: none;
    border: 0.0625em solid #72aee6;
    color: #72aee6;
    font-size: 1em;
    position: relative;
}

.iGastro-tab .TabPager li:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -0.625em;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-left: 1.1875em solid transparent;
    border-right: 1.1875em solid transparent;
    border-top: 0.9375em solid #72aee6;
    opacity: 0;
    transition: 0.3s all;
}

.iGastro-tab .TabPager li:first-child {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.iGastro-tab .TabPager li:last-child {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.iGastro-tab .TabPager li.active {
    background: #72aee6;
    color: #fff;
}

.iGastro-tab .TabPager li.active:before {
    opacity: 1;
    transition: 0.3s all;
}

.iGastro-fx-link {
    display: flex;
    flex-wrap: wrap;
}

.iGastro-fx-link>p {
    width: calc(33.3333333333% - 0.75em);
    margin-bottom: 0.5625em;
    margin-right: 1.125em;
}

.iGastro-fx-link>p:nth-child(3n) {
    margin-right: 0;
}

.iGastro-fx-link>p a {
    text-decoration: none;
    color: var(--clr1);
    padding-left: 1.375em;
    position: relative;
    background: url(../images/idx-ico-hr-link.svg) no-repeat bottom center;
    background-size: 10.8125em 5px;
    padding-bottom: 0.375em;
    padding-top: 0.1875em;
    display: block;
    letter-spacing: 0;
    line-height: 1.5em;
    padding-right: 1em;
    height: 100%;
}

.iGastro-fx-link>p a:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    background: url(../images/idx-ico-link01.svg) no-repeat center;
    background-size: 100% auto;
    width: 1.0625em;
    height: 0.9375em;
}

.iGastro-fx-link>p a:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0.65em;
    bottom: initial;
    margin: 0;
    background: url(../images/idx-ico-link02.svg) no-repeat center;
    background-size: contain;
    width: 0.5em;
    height: 0.5em;
    --mask: none;
}

.iEndo {
    position: relative;
    padding-top: 8.8125em;
    z-index: 1;
    padding-bottom: 14.0625em;
}

.iEndo:before {
    content: "";
    position: absolute;
    top: -4.9375em;
    left: 50%;
    transform: translate(-50%);
    width: 100%;
    height: calc(100% + 4.9375em);
    background: url(../images/idx-endo-bg02.png) no-repeat top center;
    background-size: 100% 100%;
    max-height: 67.5em;
}

.iEndo:after {
    content: "";
    position: absolute;
    top: -4.25em;
    left: 50%;
    transform: translate(-50%);
    width: 100%;
    height: calc(100% + 4.9375em);
    background: url(../images/idx-endo-bg01.png) no-repeat top center;
    background-size: 100% 100%;
    mix-blend-mode: screen;
}

.iEndo-box {
    background: #fff;
    border-radius: 30px;
    position: relative;
    z-index: 1;
    box-shadow: 0 0 0.3125em 0.4375em rgba(0, 0, 0, 0.05);
    min-height: 40em;
    border: 0.3125em solid #c7dff5;
}

.iEndo-box:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    width: 105%;
    height: 105%;
    background: url(../images/idx-endo-bg-box.svg) no-repeat center;
    background-size: cover;
}

.iEndo-box:after {
    content: "";
    position: absolute;
    left: -2.125em;
    bottom: -2.625em;
    background: url(../images/idx-endo-ico-box.svg) no-repeat center;
    background-size: 100% auto;
    width: 13.375em;
    height: 11.125em;
}

.iEndo-fx {
    padding: 3.45em 4.6em 2.55em;
    display: flex;
    position: relative;
    z-index: 1;
}

.iEndo-img {
    flex-shrink: 0;
    margin-right: -8.125em;
    margin-top: -9.9375em;
    margin-left: 3.75em;
}

.iEndo-img .img img {
    border-radius: 30px;
}

.iEndo-cnt .txt>p {
    letter-spacing: -0.75px;
    font-size: 15px;
}

.iEndo-ttl-fx {
    display: flex;
    align-items: center;
    margin-bottom: 0.25em;
}

.iEndo-ttl-fx h2 {
    font-size: 2.1875em;
    letter-spacing: 0.075em;
    margin-bottom: 0;
    margin-right: 0.3em;
    color: var(--clr3);
    position: relative;
}

.iEndo-ttl-fx h2:before {
    content: "";
    position: absolute;
    left: -0.8125em;
    top: 0.2em;
    bottom: 0;
    margin: auto 0;
    width: 0.486em;
    height: 0.4em;
    border-radius: 5px;
    background: #72aee6;
}

.iEndo-ttl-fx .ttl-pickup {
    font-size: 1.25em;
    font-family: var(--f-en);
    min-width: 5.6em;
    min-height: 1.8em;
    color: var(--clr3);
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1em;
    border: 0.0625em solid var(--clr3);
    margin-top: 0.2em;
    letter-spacing: 0;
    font-weight: 400;
}

.iEndo .idx-ttl-en {
    font-size: 1.25em;
    font-family: var(--f-en);
    color: #b8d6f2;
    font-weight: 500;
    line-height: 1em;
    margin-bottom: 1.5em;
}

.iEndo-box02 {
    background: #f1f7fc;
    border-radius: 30px;
    max-width: 61.25em;
    margin: 0 auto;
    padding: 3.1em;
    position: relative;
}

.iEndo-fx02 {
    display: flex;
    position: relative;
    z-index: 1;
}

.iEndo-cnt02 {
    width: 50%;
    position: relative;
}

.iEndo-cnt02:first-child {
    margin-right: 3em;
    padding-right: 3.2em;
}

.iEndo-cnt02:first-child:before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 0.16875em;
    height: 14.25em;
    background: url(../images/idx-endo-hr.svg) no-repeat center;
    background-size: 100% 100%;
}

.iEndo-list {
    display: flex;
    margin-bottom: 1.3em;
}

.iEndo-list li {
    width: 50%;
    margin-right: 1.625em;
    max-width: 11.375em;
}

.iEndo-list li:nth-child(2n) {
    margin-right: 0;
}

.iEndo-list li a {
    display: flex;
    text-decoration: none;
    min-height: 6.25em;
    min-width: 11.375em;
    background: #fff;
    border-radius: 10px;
    align-items: center;
    padding: 1em;
    position: relative;
}

.iEndo-list li a:before {
    content: "";
    position: absolute;
    right: -0.9375em;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: url(../images/idx-endo-ico-arr.svg) no-repeat center;
    background-size: 100% auto;
    width: 1.875em;
    height: 1.875em;
}

.iEndo-list li a .ico {
    margin-right: 0.85em;
    line-height: 0;
}

.iEndo-list li a .ttl {
    color: var(--clr1);
    font-weight: 600;
    letter-spacing: -0.7px;
}

.iEndo .idx-list-btn li a {
    border: 0.0625em solid var(--clr3);
}

.iEndo .idx-list-btn li a:before {
    background: url(../images/idx-medical-ico02.svg) no-repeat center;
    background-size: 100% auto;
}

.iEndo-box03 {
    background: #fff;
    border-radius: 30px;
    margin-top: 8.75em;
    position: relative;
    z-index: 1;
    padding-bottom: 3.3em;
}

.iEndo-box03:beforE {
    content: "";
    position: absolute;
    right: 2.25em;
    bottom: -3.3125em;
    background: url(../images/idx-endo-ico-box02.svg) no-repeat center;
    background-size: 100% auto;
    width: 4.9375em;
    height: 4.1875em;
}

.iEndo-box03 .iEndo-fx {
    padding: 3.75em 7.3em 1.85em 4.1em;
}

.iEndo-cnt03 h2 {
    font-size: 2.1875em;
    letter-spacing: 0.035em;
    width: fit-content;
    padding-right: 1.5em;
    position: relative;
    color: #fff;
}

.iEndo-cnt03 h2:before {
    content: "";
    position: absolute;
    left: -0.9em;
    top: 0.6em;
    background: #fff;
    width: 0.49em;
    height: 0.4em;
    border-radius: 5px;
}

.iEndo-cnt03 h2:after {
    content: "";
    position: absolute;
    right: 0;
    top: 55%;
    transform: translateY(-50%);
    background: #72aee6;
    border-top-right-radius: 40px;
    border-bottom-right-radius: 40px;
    min-height: 2.085em;
    width: 40.8125em;
    z-index: -1;
    max-width: 970px;
}

.iEndo-cnt03 .txt>p {
    letter-spacing: -0.8px;
}

.iEndo-img02 {
    flex-shrink: 0;
    margin-left: 2.2em;
}

.iEndo-img02 .img {
    margin-top: -10.05em;
}

.iEndo-list02 {
    display: flex;
    max-width: 44.0625em;
    margin: 0 auto;
    flex-wrap: wrap
}

.iEndo-list02 li {
    width: calc(100% / 3);
    max-width: 13.625em;
    min-height: 10.625em;
    margin-right: 1.5625em;
    margin-bottom: 1.5625em;
}

.iEndo-list02 li:nth-child(3n) {
    margin-right: 0;
}

.iEndo-list02 li:last-child {
    margin-right: 0;
}

.iEndo-list02 li a {
    text-decoration: none;
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    padding-top: 1.35em;
    border: 0.0625em solid #72aee6;
}

.iEndo-list02 li a .ico {
    margin-bottom: 1em;
}

.iEndo-list02 li a .ttl {
    font-size: 1.125em;
    font-weight: 600;
    color: vaR(--clr1);
    margin-bottom: 0.55em;
    text-align: center;
}

.iDerma {
    margin-top: -9.625em;
    padding-top: 8.125em;
}

.iDerma:before {
    background: url(../images/idx-bg-derma.png) no-repeat center;
    background-size: 100% auto;
    top: -4.2em;
}

.iDerma .iInternal-box:before {
    background: #fef6f7;
    height: 64.4%;
}

.iDerma .iInternal-box .idx-ttl-en {
    letter-spacing: 0.087em;
}

.iDerma .iInternal-fx-ttl .box-ttl {
    margin-right: 2em;
}

.iDerma .iInternal-fx-ttl .box-ttl h2:before {
    background: #f3a3ae;
}

.iDerma .iInternal-fx-ttl .box-ttl .idx-ttl-en {
    color: #f9d1d6;
}

.iDerma .iInternal-fx-ttl .idx-btn02 a {
    border-color: #f9d1d6;
}

.iDerma .iInternal-fx-ttl .idx-btn02 a:before {
    background: url(../images/idx-ico-arr03.svg) no-repeat center;
    background-size: 100% auto;
}

.iDerma .iInternal-img {
    margin-right: -1.25em;
    position: relative;
    width: 58.875em;
    height: 44.75em;
    flex-shrink: 0;
}

.iDerma .iInternal-img .img {
    position: relative;
    margin-left: -3.0625em;
    margin-top: 1.625em;
    width: 58.875em;
    height: 44.75em;
}

.iDerma .iInternal-list {
    position: relative;
    z-index: 1;
}

.iDerma .iInternal-list li a {
    background: #fff;
    border-color: var(--clr5);
}

.iDerma .iInternal-list li a:before {
    background: url(../images/idx-ico-arr03.svg) no-repeat center;
    background-size: 100% auto;
}

.iFeature {
    position: relative;
    margin-top: 6em;
    z-index: 1;
}

.iFeature:before {
    content: "";
    position: absolute;
    top: -6.4375em;
    left: 50%;
    transform: translate(-50%);
    width: 1920px;
    height: 10.25em;
    background: url(../images/idx-bg-feature.png) no-repeat center;
    background-size: 100% auto;
}

.iFeature h2,
.iFeature .idx-ttl-en {
    text-align: center;
}

.iFeature .idx-ttl-en {
    line-height: 0;
    font-size: 1.4375em;
    font-family: var(--f-en);
    font-weight: 500;
    color: #bbe0ba;
    margin-bottom: 2.75em;
}

.iFeature h2 {
    font-size: 3.125em;
    margin-bottom: 0.3em;
}

.iFeature h2 span {
    position: relative;
    display: inline-block;
    padding: 0 0.85em;
}

.iFeature h2 span:before,
.iFeature h2 span:after {
    content: "";
    position: absolute;
    top: 0.25em;
    bottom: 0;
    margin: auto 0;
    width: 22px;
    height: 17px;
    border-radius: 7px;
    background: var(--main-color);
}

.iFeature h2 span:before {
    left: 0;
}

.iFeature h2 span:after {
    right: 0;
}

.iFeature-fx {
    display: flex;
    padding-left: 5.71em;
    padding-right: 5em;
}

.iFeature-fx02 {
    margin-top: 2.35em;
    padding-right: 5.6em;
    margin-bottom: 2.4em;
}

.iFeature-fx02 .iFeature-cnt:before {
    display: none;
}

.iFeature-fx02 .iFeature-img {
    margin-right: 0;
    margin-left: 3em;
}

.iFeature-fx02 .iFeature-img:before {
    background: url(../images/idx-feature-ico03.svg) no-repeat center;
    background-size: 100% auto;
    width: 3.3125em;
    height: 5.75em;
    top: -1.375em;
    right: 3.125em;
}

.iFeature-fx02 .iFeature-img:after {
    background: url(../images/idx-feature-ico04.svg) no-repeat center;
    background-size: 100% auto;
    width: 9.8125em;
    height: 4.9375em;
    bottom: 0.0625em;
    left: 2.5em;
}

.iFeature-fx02 .iFeature-img .img {
    -webkit-mask-image: url(../images/idx-feature-mask03.svg);
    mask-image: url(../images/idx-feature-mask03.svg);
}

.iFeature-fx03 .iFeature-cnt:before {
    display: none;
}

.iFeature-fx03 .iFeature-img:before {
    display: none;
}

.iFeature-fx03 .iFeature-img:after {
    background: url(../images/idx-feature-ico05.svg) no-repeat center;
    background-size: 100% auto;
    width: 19.375em;
    height: 8.25em;
    bottom: -3em;
    left: -1.125em;
}

.iFeature-fx04 .iFeature-img:before {
    display: none;
}

.iFeature-fx04 .iFeature-img:after {
    background: url(../images/idx-feature-ico06.svg) no-repeat center;
    background-size: 100% auto;
    width: 10.9375em;
    height: 16.125em;
    bottom: -6.375em;
    left: initial;
    right: -2.375em;
}

.iFeature-fx05 .iFeature-img:before {
    background: url(../images/idx-feature-ico07.svg) no-repeat center;
    background-size: 100% auto;
    width: 330px;
    height: 148px;
    top: -76px;
    right: -40px;
}

.iFeature-fx05 .iFeature-img:after {
    background: url(../images/idx-feature-ico08.svg) no-repeat center;
    background-size: 100% auto;
    width: 116px;
    height: 127px;
    bottom: -62px;
    left: 22px;
}

.iFeature-fx05 .iFeature-cnt:before {
    right: 2.25em;
    top: 85%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-image: url(../images/idx-feature-mask04.svg);
    mask-image: url(../images/idx-feature-mask04.svg);
    width: 14.0625em;
    height: 12.5em;
    background: url(../images/idx-feature-img07.jpg) no-repeat center;
    background-size: 100% 100%;
    z-index: -1;
}

.iFeature-cnt {
    padding-top: 3em;
    position: relative;
}

.iFeature-cnt:before {
    content: "";
    position: absolute;
    right: 0;
    top: -1.75em;
    margin-bottom: 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-image: url(../images/idx-feature-mask02.svg);
    mask-image: url(../images/idx-feature-mask02.svg);
    width: 14.0625em;
    height: 12.5em;
    background: url(../images/idx-feature-img02.jpg) no-repeat center;
    background-size: 100% auto;
}

.iFeature-cnt h3 {
    font-size: 1.6875em;
    color: var(--clr3);
    font-weight: 500;
    line-height: 1.5em;
    letter-spacing: 0.02em;
    padding-bottom: 0.65em;
    background: url(../images/idx-feature-hr.svg) no-repeat left bottom;
    background-size: 3.45em 3px;
    margin-bottom: 0.8em;
}

.iFeature-cnt .txt>p {
    letter-spacing: -0.5px;
}

.iFeature-stt {
    font-size: 30px;
    font-family: var(--f-en);
    color: #72aee6;
    font-weight: 500;
    margin-bottom: 0.2em;
}

.iFeature-stt span {
    margin-right: 0.5em;
    font-size: 14px;
}

.iFeature-img {
    flex-shrink: 0;
    margin-right: 3.2em;
    position: relative;
}

.iFeature-img:before {
    content: "";
    position: absolute;
    right: -1.625em;
    top: -0.9375em;
    background: url(../images/idx-feature-ico01.svg) no-repeat center;
    background-size: 100% auto;
    width: 8.6875em;
    height: 7.3125em;
    z-index: 1;
}

.iFeature-img:after {
    content: "";
    position: absolute;
    left: 2.75em;
    bottom: -1.125em;
    background: url(../images/idx-feature-ico02.svg) no-repeat center;
    background-size: 100% auto;
    width: 10em;
    height: 9.25em;
}

.iFeature-img .img {
    margin-bottom: 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-image: url(../images/idx-feature-mask01.svg);
    mask-image: url(../images/idx-feature-mask01.svg);
}

.iFeature-line {
    position: relative;
}

.iFeature-line:before {
    content: "";
    left: 42%;
    position: absolute;
    top: -9.125em;
    transform: translate(-50%);
    background: url(../images/idx-feature-line.png) no-repeat center;
    background-size: 100% auto;
    width: 81em;
    height: 163.5em;
}

.iFeature-line .idx-btn02 {
    margin-top: 3.5625em;
    margin-right: 5.8em;
}

.iFeature-line .idx-btn02 a {
    max-width: 15.75em;
    margin: 0 auto;
    border-color: var(--main-color);
}

.iFeature-line .idx-btn02 a:before {
    background: url(../images/idx-btn-ico04.svg) no-repeat center;
    background-size: 100% auto;
}

.iGreeting {
    position: relative;
    z-index: 1;
    padding-top: 7.6em;
    padding-bottom: 5em;
}

.iGreeting-fx {
    display: flex;
    padding-left: 5.65em;
    margin-top: -1em;
}

.iGreeting-cnt {
    max-width: 38em;
    margin-right: 4.1em;
    flex-shrink: 0;
}

.iGreeting-img {
    position: relative;
}

.iGreeting-img .box-img01 {
    position: relative;
    padding-top: 5.35em;
}

.iGreeting-img .box-img01:before {
    content: "";
    position: absolute;
    left: -11.375em;
    top: 5.375em;
    background: url(../images/idx-greeting-ico02.svg) no-repeat center;
    background-size: 100% auto;
    width: 11.0625em;
    height: 7.875em;
}

.iGreeting-img .box-img01:after {
    content: "";
    position: absolute;
    left: -11.4375em;
    bottom: -3.25em;
    background: url(../images/idx-greeting-ico01.svg) no-repeat center;
    background-size: 100% auto;
    width: 30.75em;
    height: 24.75em;
    z-index: -1;
}

.iGreeting-img .box-img01 .img01 {
    margin-bottom: 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-image: url(../images/idx-greeting-mask01.svg);
    mask-image: url(../images/idx-greeting-mask01.svg);
    margin-bottom: 0;
    margin-right: -3em;
    width: 37.5em;
    height: 36.8125em;
}

.iGreeting-img .box-img01 .box-name {
    position: absolute;
    left: 2.8125em;
    bottom: 6.25em;
    writing-mode: tb-rl;
    display: flex;
    flex-direction: column;
    min-width: 5.75em;
    border: 0.0625em solid var(--main-color);
    border-radius: 2.875em;
    justify-content: center;
    padding-bottom: 1.75em;
    padding-top: 1.75em;
    padding-right: 0.2em;
    background: #fff;
}

.iGreeting-img .box-img01 .box-name .sub-ttl,
.iGreeting-img .box-img01 .box-name .ttl {
    display: block;
    font-weight: 500;
}

.iGreeting-img .box-img01 .box-name .sub-ttl {
    font-size: 0.875em;
    color: var(--main-color);
    letter-spacing: 0.06em;
}

.iGreeting-img .box-img01 .box-name .ttl {
    color: var(--main-color);
    font-size: 1.375em;
    letter-spacing: 0;
    margin-right: 0.1em;
}

.iGreeting-img .box-img01 .box-name .ttl .jp {
    font-size: 0.638em;
    margin-bottom: 1em;
}

.iGreeting-img .box-img01 .box-name .ttl .en {
    font-size: 0.545em;
    letter-spacing: 0;
    color: #bbe0ba;
    font-weight: 300;
    margin-top: 1em;
}

.iGreeting-img .img02 {
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-mask-image: url(../images/idx-greeting-mask02.svg);
    mask-image: url(../images/idx-greeting-mask02.svg);
    width: 21.4375em;
    height: 20.625em;
    margin-top: -4.7em;
    margin-left: 1.6em;
}

.iGreeting h2 {
    font-size: 3.125em;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-bottom: 0.08em;
    position: relative;
}

.iGreeting h2:before {
    width: 0.44em;
    height: 0.34em;
    position: absolute;
    left: -1em;
    top: 0.71em;
    content: "";
    border-radius: 7px;
    background: var(--main-color);
}

.iGreeting .idx-ttl-en {
    letter-spacing: 0.09em;
    line-height: 1em;
    font-size: 1.4375em;
    color: #bbe0ba;
    font-weight: 500;
    font-family: var(--f-en);
    margin-bottom: 2.4em;
}

.iGreeting h3 {
    font-size: 2.0625em;
    color: var(--clr3);
    font-weight: 500;
    line-height: 1.65em;
    letter-spacing: -1px;
    padding-bottom: 0.65em;
    background: url(../images/idx-feature-hr.svg) no-repeat left bottom;
    background-size: 2.85em 3px;
    margin-bottom: 0.9em;
}

.iGreeting .txt {
    margin-bottom: 3.2em;
}

.iGreeting .txt>p {
    letter-spacing: -1px;
    line-height: 2.25em;
    font-size: 1.125em;
    font-weight: 600;
}

.iGreeting .idx-list-btn li a {
    min-width: 15.75em;
    border-color: var(--main-color);
}

.iGreeting .idx-list-btn li a:before {
    background: url(../images/idx-btn-ico04.svg) no-repeat center;
    background-size: 100% auto;
}

.iBlog {
    position: relative;
    margin-top: -3.1em;
    padding-top: 5.55em;
    padding-bottom: 19.3em;
}

.iBlog:after {
    content: "";
    position: absolute;
    left: 0;
    top: -9.375em;
    background: url(../images/idx-blog-bg02.png) no-repeat center;
    background-size: 100% auto;
    width: 8.75em;
    height: 9.375em;
}

.iBlog:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%);
    background: url(../images/idx-blog-bg.png) no-repeat top center;
    background-size: 100% 100%;
    width: 100%;
    height: 100%;
}

.iBlog-fx {
    display: flex;
    position: relative;
    z-index: 1;
    justify-content: center;
}

.iBlog-fx:before {
    content: "";
    position: absolute;
    left: -2.25em;
    bottom: -5.8125em;
    background: url(../images/f-ico-box01.png) no-repeat center;
    background-size: 100% auto;
    width: 10.0625em;
    height: 7.9375em;
}

.iBlog-fx ul {
    display: flex;
    margin-top: 0.75em;
}

.iBlog-fx ul li {
    width: 33.3333333333%;
    max-width: 16.4375em;
    margin-right: 1.25em;
}

.iBlog-fx ul li:last-child {
    margin-right: 0;
}

.iBlog-fx ul li a {
    text-decoration: none;
    background: #fff;
    display: block;
    border-radius: 15px;
    overflow: hidden;
}

.iBlog-fx ul li a .cnt {
    padding: 1.23em 1.5em 1.5em;
    display: block;
}

.iBlog-fx ul li a .cnt span {
    display: block;
}

.iBlog-fx ul li a .cnt .date {
    font-size: 0.75em;
    color: var(--main-color);
    font-family: var(--f-en);
    letter-spacing: 0.05em;
    font-weight: 500;
}

.iBlog-fx ul li a .cnt .ttl {
    font-size: 1em;
    font-weight: 600;
    color: var(--clr1);
    letter-spacing: 0;
    margin-bottom: 0.3em;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.iBlog-fx ul li a .cnt .desc {
    letter-spacing: -0.5px;
    color: #8f8f8f;
    font-size: 0.75em;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.iBlog-ttl {
    margin-right: 4.1em;
}

.iBlog-ttl h2 {
    font-size: 2.0625em;
    color: #fff;
    letter-spacing: 0;
    margin-bottom: 0;
    position: relative;
}

.iBlog-ttl h2:before {
    content: "";
    position: absolute;
    left: -0.9em;
    top: 0.6em;
    width: 0.455em;
    height: 0.334em;
    border-radius: 5.5px;
    background: #fff;
}

.iBlog-ttl .idx-ttl-en {
    color: #fff;
    font-size: 1em;
    font-weight: 500;
    font-family: var(--f-en);
    line-height: 1em;
    margin-bottom: 2.9em;
}

.iBlog-ttl .idx-btn02 a {
    border-color: var(--main-color);
}

.iBlog-ttl .idx-btn02 a:before {
    background: url(../images/idx-btn-ico04.svg) no-repeat center;
    background-size: 100% auto;
}

.idx-list-btn {
    display: flex;
}

.idx-list-btn li {
    margin-right: 0.9375em;
    min-width: 11.6875em;
}

.idx-list-btn li:nth-child(2n) {
    margin-right: 0;
}

.idx-list-btn li a {
    min-width: 11.6875em;
}

@media only screen and (min-width: 769px) {
    .iGastro-tab .TabPager li:hover {
        background: #72aee6;
        transition: 0.3s all;
        color: #fff;
    }
    .iMedical-list02 li a:hover,
    .iMedical-list li a:hover {
        opacity: 1;
    }
    .iMedical-list02 li:hover,
    .iMedical-list li:hover {
        transform: translateY(-5px);
        transition: 0.3s all;
    }
    .home_page .idx-btn a:hover,
    .iMedical-list02 li .idx-btn:hover {
        background: var(--main-color);
        opacity: 1;
        transition: 0.3s all;
        color: #fff;
    }
    .home_page .idx-btn a:hover:before,
    .iMedical-list02 li .idx-btn:hover:before {
        filter: brightness(0) invert(1);
    }
    .home_page .key .box-news ul li a:hover {
        text-decoration: underline;
    }
    .home_page .idx-btn02 a:hover {
        background: var(--clr4);
        transition: 0.3s all;
        opacity: 1;
        color: #fff;
    }
    .iGastro .idx-btn02 a:hover,
    .iEndo .idx-list-btn li a:hover {
        background: var(--clr3);
        transition: 0.3s all;
        color: #fff;
    }
    .iEndo-list02 li a:hover {
        transition: 0.3s all;
        opacity: 1;
        transform: translateY(-5px);
        box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1);
    }
    .iDerma .iInternal-fx-ttl .idx-btn02 a:hover,
    .iDerma .iInternal-list li a:hover {
        background: var(--clr5);
        opacity: 1;
    }
    .iFeature-line .idx-btn02 a:hover,
    .iGreeting .idx-list-btn li a:hover {
        background: var(--main-color);
    }
    .iBlog-ttl .idx-btn02 a:hover {
        box-shadow: 0 0 0 1px var(--main-color);
        background: #bbe0ba;
    }
}

section {
    background-size: cover;
    background-repeat: no-repeat;
}

.index0 {
    padding: 6.25em 0em 100px;
}

.idx_map {
    height: 450px;
}

.idx_map iframe {
    height: 100%;
}

@media only screen and (min-width: 769px) and (max-width: 1280px) {
     :root {
        --ttl_size: 24px;
    }
    .iMessage,
    .iMedical,
    .iInternal,
    .iGastro,
    .iEndo,
    .iFeature,
    .iGreeting,
    .iBlog,
    .home_page .key {
        font-size: 1.25vw;
    }
    .home_page .key:before {
        width: 59.4em;
    }
    .iMessage-l .img01 img {
        width: 15em;
        height: auto;
    }
    .iMessage-l .img02 img {
        width: 22.5em;
        height: auto;
    }
    .iMessage-r .img03 img {
        width: 22.5em;
        height: auto;
    }
    .iMedical-list02 li>.link-in .ico img {
        width: 3.125em;
        height: auto;
    }
    .iInternal-img img {
        width: 54.875em;
        height: auto;
    }
    .iGastro-img .img img {
        width: 64.125em;
        height: auto;
    }
    .iEndo-img .img img {
        width: 30.3125em;
        height: auto;
    }
    .iEndo-list li a .ico img {
        width: 2.3125em;
        height: auto;
    }
    .iEndo-img02 .img img {
        width: 15.8125em;
        height: auto;
    }
    .iEndo-list02 li a .ico img {
        width: auto;
        height: 3.4375em;
    }
    .iEndo-list02 li a .ico-arr img {
        width: 1.5em;
        height: auto;
    }
    .iDerma .iInternal-img .img img {
        width: 58.875em;
        height: auto;
    }
    .iFeature-img .img img {
        width: 31.25em;
        height: auto;
    }
    .iGreeting .img-bg img {
        width: 80em;
        height: auto;
    }
    .iGreeting-img .box-img01 .img01 img {
        width: 37.5em;
        height: auto;
    }
    .iGreeting-img .img02 img {
        width: 21.4375em;
        height: auto;
    }
    .home_page .key .box-news {
        max-width: 29.25em;
        min-width: 29.25em;
    }
}

@media only screen and (min-width: 769px) and (max-width: 1240px) {
    .iEndo-box:before {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translateY(-50%) translateX(-50%);
        width: 102%;
        height: 104%;
        border-radius: 30px;
        border: 2px dashed #aecee9;
        background-image: none;
    }
    .home_page .key .box-news {
        border-top-left-radius: 20px;
        padding: 1.3em 5em 1.25em 3em;
        width: 100%;
        max-width: 33em;
        min-width: 30em;
    }
}

@media only screen and (max-width: 1100px) and (min-width: 769px) {
    .iInternal-fx-ttl {
        padding-left: 2.5em;
    }
    .iFeature h2 span:before,
    .iFeature h2 span:after {
        top: 0.15em;
        bottom: 0;
        margin: auto 0;
        width: 20px;
        height: 14px;
        border-radius: 5px;
        background: var(--main-color);
    }
    .iGreeting h2:before {
        width: 0.44em;
        height: 0.34em;
        left: -1em;
        top: 0.65em;
        border-radius: 4px;
    }
    .iBlog-fx:before {
        left: 0.75em;
    }
}

@media only screen and (max-width: 992px) and (min-width: 769px) {
     :root {
        --ttl_size: 22px;
    }
}


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