@media only screen and (max-width: 768px) {
  .home_page::before {
    max-height: 2000px;
    height: 558vw;
  }
  .home_page .key {
    --height: calc(100vh - 130px);
    --max-height: 156vw;
    --min-height: 440px;
  }
  .home_page .key .key_text {
    width: calc(100% - 4em);
    font-size: 8px;
    background-image: url(../images/idx_mv01_sp.jpg);
    background-position: left center;
    margin-right: auto;
    border-radius: 600px 600px 0 0;
  }
  .home_page .key .key_text .item {
    padding: 10px 10px 12vw;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .home_page .key .catch {
    padding-right: 0;
  }
  .home_page .key h2 {
    margin-bottom: 0.2em;
    -webkit-filter: drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0.2708333333em 0px 0.3em rgba(255, 255, 255, 0.3)) drop-shadow(-0.4583333333em -0.4166666667em 0.53em rgba(255, 255, 255, 0.3));
            filter: drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0.2708333333em 0px 0.3em rgba(255, 255, 255, 0.3)) drop-shadow(-0.4583333333em -0.4166666667em 0.53em rgba(255, 255, 255, 0.3));
  }
  .home_page .key p {
    -webkit-filter: drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.4em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.5em rgba(255, 255, 255, 0.4)) drop-shadow(0em 0px 0.1em rgba(255, 255, 255, 0.1)) drop-shadow(0 0 0.05em rgba(255, 255, 255, 0.4));
            filter: drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.4em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.8)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.3em rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 0.5em rgba(255, 255, 255, 0.4)) drop-shadow(0em 0px 0.1em rgba(255, 255, 255, 0.1)) drop-shadow(0 0 0.05em rgba(255, 255, 255, 0.4));
  }
  .home_page #mainContent {
    margin-top: 56px;
  }
  .key_scroll {
    left: 0;
    right: 0;
    bottom: -50px;
  }
  .key_scroll a {
    font-size: 12px;
    letter-spacing: 0.1em;
    text-align: center;
    display: table;
    margin: auto;
    padding-left: 0;
  }
  .key_scroll .icon_sroll {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto 1em;
  }
}
@media only screen and (max-width: 639px) {
  .home_page .key {
    --max-height: 126vw;
  }
  .home_page .key .key_text {
    font-size: 1.4vmin;
  }
  .home_page .key .key_text .item {
    padding-bottom: 20vw;
  }
  .home_page .key p {
    font-size: 2.9em;
  }
}
@media only screen and (max-width: 768px) and (orientation: landscape) {
  .home_page .key .key_text {
    font-size: 1.4vmin;
    width: calc(100% - 7em);
  }
}
@media only screen and (max-width: 768px) {
  .h3_tl {
    font-size: 28px;
  }
  .h3_tl::after {
    margin-top: 10px;
    width: 70px;
  }
  .h3_tl .en {
    font-size: min(100px, 14.5vw);
  }
  .idx01 {
    padding: 50px 0px 50px;
  }
  .idx01 .b_news, .idx01 .b_schedule {
    max-width: 610px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
	.idx01 .b_news {
		margin-bottom: 20px;
	}
  .idx01 .b_news .bg {
    padding: 31px 5% 30px;
    
  }
  .idx01 .b_news h3 {
    font-size: 26px;
  }
  .idx01 .b_news h3 .tt_en {
    font-size: 14px;
  }
  .idx01 .b_schedule h3 {
    display: table;
    margin-left: auto;
    margin-right: auto;
    font-size: min(28px, 7.3vw);
    letter-spacing: 0.1em;
  }
  .idx01 .b_schedule h3 .tt_jp {
    padding-left: 2.8em;
  }
  .idx01 .b_schedule h3 .tt_en {
    padding-left: 2em;
  }
  .idx01 .b_schedule h3 .tt_en::before {
    left: 0.1761904762em;
  }
  .idx01 .tt_subject {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .idx01 .list_post {
    margin-left: 0;
  }
  .idx01 .list_post li a .cate {
    font-size: 11px;
  }
  .idx01 .b_inner {
    width: 100%;
  }
  .idx01 .btn_news {
    width: 100%;
    margin-top: 6px;
  }
  .idx01 .btn_news a {
    -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
            writing-mode: unset;
  }
  .idx01 .btn_news a::after {
    margin-top: 0;
    margin-left: 5px;
  }
  .idx01 .time_sheet {
    margin-top: 18px;
  }
  .idx02_slider-item {
    margin: 0 10px;
  }
  .idx02_slider .slick-list {
    padding: 0.25em 0 1.3125em;
  }
  .idx02_slider .slick-arrow {
    width: 50px;
    height: 50px;
  }
  .idx02_slider .slick-dots {
    gap: 10px;
  }
  .idx02_slider .slick-dots li {
    width: 15px;
    height: 15px;
  }
  .idx02_slider .slick-dots li button {
    width: 10px;
    height: 10px;
  }
  .idx02_slider .slick-dots li.slick-active button {
    width: 15px;
    height: 15px;
  }
  .idx03 {
    padding: 55px 0;
  }
  .idx03 .gr_btn {
    margin-top: 25px;
  }
  .idx03 .box_name {
    font-size: min(16px, 3.5vw);
    padding: 1.8125em 1.5625em 1.875em 1.5625em;
  }
  .idx03 .b_chairman {
    margin-bottom: 50px;
    padding: 0 4%;
  }
  .idx03 .b_chairman:last-child {
    margin-bottom: 0;
  }
  .idx03 .b_chairman .h3_tl {
    z-index: 0;
  }
  .idx03 .b_chairman .h3_tl .en {
    margin-bottom: -0.54em;
    font-size: min(100px, 14.5vw);
  }
  .idx03 .b_chairman-img, .idx03 .b_chairman-cont {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .idx03 .b_chairman-cont {
    max-width: 610px;
  }
  .idx03 .b_chairman-img {
    max-width: 560px;
  }
  .idx03 .b_chairman-img .img_sub {
    max-width: 608px;
    width: 90%;
  }
  .idx03 .b_chairman.b_right .b_chairman-img {
    margin-bottom: 11.5vw;
  }
  .idx03 .b_chairman.b_right .b_chairman-img .img_sub {
    right: -105px;
    bottom: -8vw;
    border-bottom-left-radius: 40px;
  }
  .idx03 .b_chairman.b_left .h3_tl {
    margin-bottom: 11.5vw;
  }
  .idx03 .b_chairman.b_left .box_name {
    padding: 1.8125em 1.5625em 1.875em 1.5625em;
  }
  .idx03 .b_chairman.b_left .b_chairman-img {
    margin-bottom: 30px;
  }
  .idx03 .b_chairman.b_left .b_chairman-img::before {
    top: calc(-11.5vw - 9.5em);
    left: -55px;
    width: 5.9285714286em;
    height: 11.4285714286em;
    font-size: min(14px, 2vw);
  }
  .idx03 .b_chairman.b_left .b_chairman-img .img_sub {
    left: -105px;
    top: -8vw;
    height: 79vw;
  }
  .idx04 {
    padding: 55px 0;
  }
  .idx04::before {
    mask-image: url(../images/idx04_mask_sp.png);
    -webkit-mask-image: url(../images/idx04_mask_sp.png);
  }
  .idx04 .h3_tl {
    margin-bottom: 27px;
  }
  .idx04 .h4_tl {
    font-size: 24px;
    margin-bottom: 26px;
  }
  .idx04 .h4_tl::before {
    max-width: 26.388889em;
    width: 100%;
  }
  .idx04 .h4_tl::after {
    bottom: -12px;
    width: 20px;
    height: 14px;
  }
  .idx04 .h4_tl.tl_sm {
    font-size: 22px;
    margin-bottom: 30px;
  }
  .idx04 .h4_tl.tl_sm::before {
    max-width: 16.875em;
    width: 100%;
  }
  .idx04 .tt_year {
    font-size: min(20px, 5.3vw);
  }
  .idx04 .tt_year-num {
    margin-left: 0.2em;
  }
  .idx04 .tt_year-unit {
    margin: -0.0333333333em 0.5333333333em 0 0.5666666667em;
  }
  .idx04 .b_total {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: min(12px, 3.6vw);
  }
  .idx04 .b_total-tt02 {
    margin: 0.0571428571em 0.5em 0 0.371429em;
  }
  .idx04 .b_total-list li {
    font-size: 1.3333333333em;
  }
  .idx04 .bn_diseases {
    padding: 29vw 5% 1.8em;
    background-size: 120% auto;
    background-position: top right;
    background-image: url(../images/idx04_bn_bg.jpg), url(../images/idx04_at_sp.jpg);
    background-repeat: no-repeat, repeat;
    max-width: 610px;
    width: 100%;
    margin: 40px auto;
  }
  .idx04 .bn_diseases::before {
    background-size: 120%;
    background-position: top right;
  }
  .idx04 .bn_diseases::after {
    height: 52%;
    width: 100%;
    top: unset;
    bottom: 0;
    background-size: 120% auto;
    background-image: url(../images/idx04_at_sp.jpg);
    background-position: right center;
  }
  .idx04 .bn_diseases-inner {
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
  }
  .idx04 .bn_diseases h5 {
    text-align: center;
    margin-bottom: 0.5em;
  }
  .idx04 .bn_diseases .btn {
    margin-left: auto;
    margin-right: auto;
    display: table;
  }
  .idx04 .bn_diseases .btn a {
    padding-right: 4.0625em;
  }
  .idx04 .b_pickup {
    margin-top: 30px;
  }
  .idx04 .b_pickup-title {
    padding: 2.125em 1.5em 4.8125em;
  }
  .idx04 .b_pickup-title.rotate .btn_plus::after {
    opacity: 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .idx04 .b_pickup-item {
    width: 100%;
    max-width: 440px;
    margin: 0 auto 30px;
  }
  .idx04 .b_pickup-content {
    position: relative;
    margin-top: 15px;
    padding: 0.75em 1.5em 2em;
  }
  .idx04 .b_pickup-list {
    width: 100%;
    max-width: 100%;
  }
  .idx04 .b_pickup-list li {
    font-size: 16px;
    padding-left: 6px;
  }
  .idx04 .b_pickup-list li a{font-size: min(15px, 4.4vw);}
  .idx04 .b_pickup-list .txt_orange {
    margin-left: 10px;
  }
  .idx04 .b_pickup h5 {
    font-size: 24px;
  }
  .idx04 .b_pickup h5 .en {
    font-size: 14px;
    margin-top: 0;
  }
  .idx04 .b_pickup .btn_plus {
    right: 1.5em;
  }
  .idx04 .b_pickup .btn_plus::after {
    -webkit-transition: 0.3s all;
    transition: 0.3s all;
  }
  .idx05 {
    padding: 120px 0px 100px;
    margin-top: -50px;
    background-size: 100% auto;
    background-color: #f2efea;
  }
  .idx05 .h3_tl {
    margin-bottom: 25px;
  }
  .idx05 .idx_wrap::before {
    bottom: -21.2em;
    font-size: min(5px, 1.2vw);
  }
  .idx05 .b_medical {
    font-size: min(14px, 2.9vw);
  }
  .idx05 .b_medical-item {
    width: calc(50% - 1em);
    margin: 0.5em;
    padding: 1.125em 1.875em 1.25em 0.875em;
  }
  .idx05 .b_medical-item::after {
    right: 0.5em;
  }
  .idx06 {
    padding: 55px 0;
  }
  .idx06 .idx_wrap::before, .idx06 .idx_wrap::after {
    font-size: min(10px, 1.2vw);
  }
  .idx06_title .btn {
    margin: 20px auto;
    display: table;
  }
  .idx06 .b_feature h4 {
    font-size: min(20px, 5.4vw);
    line-height: 1.6;
  }
  .idx06 .b_feature h4.tt_lg {
    font-size: min(20px, 5.4vw);
  }
  .idx06 .b_feature .txt_num {
        font-size: 65px;
        width: 1em;
        letter-spacing: 0;
	  text-align: center;
  }
  .idx06 .b_feature .feature_img {
    margin-bottom: 25px;
  }
  .idx06 .b_feature .feature_item {
    max-width: 440px;
    width: 100%;
    margin: 0 auto 30px;
    position: relative;
  }
  .idx06 .b_feature .feature_item10 .txt_num {
  
  }
  .idx06 .b_feature .b_cont {
    padding-bottom: 8px;
    padding-right: 0;
  }
	.idx06 .b_feature .b_cont p{
		padding-right: 14px
	}
  .idx06 .feature_btn a::after{background-size: 140% auto;}
  .idx06 .b_pickup .btn {
    bottom: 0.2em;
  }
  .idx06 .btn_bottom {
    display: table;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 640px) {
  .idx03 .b_chairman.b_left .b_chairman-img::before {
    top: calc(-11.8vw - 9.5em);
    left: -2.5714285714em;
  }
}
@media only screen and (max-width: 550px) {
  .idx01 .tt_subject-tl {
    width: 78px;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
	 .idx06 .b_feature .txt_num {
        font-size: 60px;
  }
  .idx04 .b_total-tt02 {
    margin: 0.0571428571em 0em 0 0.371429em;
    font-size: 4em;
  }
  .idx04 .b_total-list {
    display: table;
    margin: 20px auto 0;
  }
  .idx05 {
    padding: 100px 0px 21vw;
  }
  .idx06 .b_feature h4 {
    letter-spacing: 0.05em;
  }
  .idx06 .b_feature h4.tt_lg {
    letter-spacing: 0.05em;
  }
}
@media only screen and (max-width: 450px) {
  .h3_tl .en {
    margin-bottom: -0.2em;
  }
  .idx03 .b_chairman.b_left .b_chairman-img::before {
    left: -27px;
  }
  .idx04 .bn_diseases {
    padding-top: 34vw;
  }
  .idx05 .b_medical-item {
    width: calc(50% - 0.6em);
    margin: 0.3em;
    padding: 1em 1.5em 1em 0.5em;
    font-size: min(14px, 3.4vw);
  }
  .idx05 .b_medical-tt {
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    letter-spacing: 0.05em;
  }
}
@media only screen and (max-width: 480px) {
	.idx01 .tt_subject .tt_subject-txt br {
		display: block !important;
	}
}
@media only screen and (max-width: 350px) {
  .idx01 .tt_subject {
    letter-spacing: 0;
  }
  .idx01 .tt_subject-tl {
    width: 70px;
  }
  .idx05 .b_medical-tt {
    letter-spacing: 0.02em;
  }
  .idx06 .b_feature h4{letter-spacing: 0em;}
}