@media screen and (min-width: 751px) {
    .lightbox, .lightboxOverlay {
        min-width: var(--container);
    }
    .under main .image_l {
        float: left;
        margin: 0 40px 10px 0
    }
    .under main .image_r {
        float: right;
        margin: 0 0 10px 40px
    }
    .under main .mb40_pc {
        margin-bottom: 40px !important;
    }
    /* BUTTON OVN DETAIL */
    .under main .btn_list {
        display: flex;
        justify-content: center;
        position: relative;
    }
    .under main .btn_list .is_prev {
        position: absolute;
        top: 0;
        left: 150px;
    }
    .under main .btn_list .is_next {
        position: absolute;
        top: 0;
        right: 150px;
    }
    .under main .w50_pc {
        width: 50%;
    }
    /* HOVER */
    .under main #topic_path li a:hover {
        text-decoration: underline
    }
    .under main .bnn a:hover {
        opacity: 0.7;
    }
    .under main .link:not(a[target=_blank]):hover {
        color: var(--scolor);
    }
    .under #content > .inner {
        max-width: 1030px;
    }
    .under main .un_list_con.un_list_con2 > .item:not(:nth-child(2n)) {
        margin-right: 40px;
    }
    .under main .un_list_con.un_list_con2 > .item:nth-child(n+3) {
        margin-top: 50px;
    }
    .under main .un_list_con.un_list_con3 > .item:nth-child(n+4) {
        margin-top: 50px;
    }
    .under main .un_list_con.un_list_con3 > .item:not(:nth-child(3n)) {
        margin-right: 40px;
    }
    .list_faq dt:hover .tt, .un_acc dl dt:hover, .under main .list_link li a:hover {
        color: var(--mcolor);
    }
    .under main .un_list_con.un_list_con2 > .item {
        width: calc(50% - 20px);
    }
    .under main .un_list_con.un_list_con3 > .item {
        width: calc(33.333% - 27px);
    }
    .bnr_over a {
        position: relative;
    }
    .bnr_over a:after {
        position: absolute;
        content: "";
        width: 0%;
        height: 100%;
        left: 0;
        top: 0;
        background-color: rgba(255, 255, 255, 0.2);
        transition: all 0.3s;
    }
    .bnr_over a:hover:after {
        width: 100%;
    }
    .hidden {
        overflow: hidden;
    }
    .flex1 {
        display: flex;
    }
    .flex1 p {
        flex-shrink: 0;
    }
    .under main .note_group.mw1 {
        max-width: 740px;
    }
    .under main .frame01.second {
        padding: 39px 40px 48px;
    }
    .under main .info_left li a:hover {
        color: var(--mcolor);
        text-decoration: underline;
    }
    .textarea_text01 {
        min-height: 50px !important;
        height: 250px;
        min-width: 100%;
        width: 700px !important;
    }
    .under main .box_contact table th {
        width: 30%;
        text-align: left;
    }
    .btn_contact:hover, .back-btn:hover, #confirm .btn_contact_w input.btn_contact:hover {
        background-color: var(--mcolor);
    }
    .back-btn:hover, .under main .info_right .list_post > li:hover, .info_col3 .un_img a:hover {
        opacity: 0.8;
    }
    .under main .info_right .list_post > li:hover {
        cursor: pointer;
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    }
    .btn_show_all {
        display: none;
    }
    .under main .list_link li:not(:nth-child(2n)) {
        margin-right: 40px;
    }
	/*.under main .btn.center {
		display: table;
		margin: 0 auto;
		width: 387px;
	}*/
}
@media screen and (max-width: 750px) {
    .under main #content {
        padding: 0 0 0px;
    }
    .under main section {
        padding: 0 0 40px;
    }
    .under main .image_r, .under main .image_l {
        float: none;
        display: inline-block;
        width: 100%;
        text-align: center;
        margin: 0 auto 20px !important;
    }
    /*==========================================================
                  C U S T O M
  ==========================================================*/
    /*  TOP INFO  */
    .under main .top_info {
        height: 130px;
        background-position: left -60px center;
    }
    .under main .top_info.second {
        height: 150px;
    }
    .under main .topn_info_img {
        margin-top: -50px;
        padding: 0 10px;
    }
    .under main .top_info.second .inner {
        padding-bottom: 35px;
    }
    .under main .top_info_box {
        margin: 40px 0 50px;
    }
    .under main .top_info .inner {
        padding-top: 0;
    }
    .under main #topic_path {
        margin-bottom: 40px;
    }
    .under main #topic_path li, .under main #topic_path li a {
        font-size: 14px;
    }
    /*============ HEAD TITLE ============ */
    .under .un_page_title, .under main .un_ttl2, .under main .u_editor h2 {
        font-size: 26px;
        line-height: 1.4;
        letter-spacing: 0em;
    }
    .under main .top_info_box .un_page_title.line2 {
        margin-bottom: 8px;
    }
    .under main .un_ttl2.under main .u_editor h2 {
        margin-bottom: 25px;
    }
    .under main .un_ttl2:before, .under main .u_editor h2:before {
        background-size: auto 70px;
    }
    .under main .un_ttl3, .under main .u_editor h3 {
        font-size: 24px;
    }
    .under main .un_ttl4, .under main .u_editor h4 {
        font-size: 23px;
    }
    .under main .un_ttl4::before, .under main .u_editor h4:before {
        top: 6px;
    }
    .under main .un_ttl4::before, .under main .un_ttl4::after, .under main .u_editor h4:before, .under main .u_editor h4:after {
        width: 3px;
    }
    .under main p.un_ttl4::before {
        top: 10px;
    }
    /*============ TABLE ============ */
    .under main table {
        margin-bottom: 30px
    }
    .under main table td, .under main table th {
        padding: 14px 10px 12px;
        line-height: 1.5;
    }
    .under main table.tb_block:not(.tb1) tr:last-child th, .under main table.tb_block tr:not(:last-child) td:last-child, .under main table.tb_block tr > th + td:not(:last-child) {
        border-bottom: none;
    }
    .under main table.tb_block tr {
        display: flex;
        flex-direction: column
    }
    .under main table.tb_block tr:not(:last-child) th {
        border-bottom: none
    }
    .under main table.tb_block td + td {
        border-top: none;
    }
    .under main table.tb_block th, .under main table.tb_block td {
        width: 100%;
    }
    /* TABLE SCROLL */
    .under main .tb_scroll {
        overflow: scroll;
    }
    .under main .tb_scroll:not(:last-child) {
        margin-bottom: 30px;
    }
    .under main .tb_scroll table {
        width: 800px;
    }
    .under main .tb_note {
        margin-bottom: 10px;
        color: #999;
        letter-spacing: 0em;
    }
    /*============ LIST ============ */
    .under main .list01 {}
    .under main .list01 li {}
    .under main .list02 {}
    .under main .list02 li {
        line-height: 1.92;
    }
    .under main .list02 li::before {
        top: 2px;
    }
    .under main .list_check {}
    .under main .list_check li {}
    /* LIST FAQ */
    .under main .list_faq dl {
        margin-bottom: 30px;
    }
    .list_faq dt::before {
        right: 10px;
    }
    .under main .list_faq dt {
        font-size: 16px;
        padding: 14px 25px 10px 12px;
        align-items: center;
    }
    .list_faq dd {
        padding: 0px 15px 11px 50px;
    }
    .list_faq dd .icon {
        left: 12px;
    }
    .list_faq dt .tt {
        font-size: 18px;
        line-height: 1.7;
    }
    .list_faq dt .icon {
        top: -3px;
    }
    /* List STEP */
    .under main .list_step {
        padding-bottom: 25px;
    }
    .under main .list_step dl {
        margin-bottom: 20px;
        padding-bottom: 40px
    }
    .under main .list_step dd .un_ttl3 {
        line-height: 1.3;
        margin-top: -4px;
        margin-bottom: 20px;
    }
    /*============ FRAME ============ */
    .under main .frame01 {
        padding: 20px 15px;
    }
    .under main .frame02 {
        padding: 30px 15px
    }
    .under main .frame_pick {
        padding: 40px 15px;
    }
    .under main .frame_pick .un_ttl3 {
        text-align: center;
        flex-direction: column;
        letter-spacing: 0em;
    }
    .under main .pick_ttl_en {
        top: 0;
        margin-right: 0;
        display: block;
    }
    /*============ ORTHER ============ */
    .under main .box_map {
        height: 250px
    }
    .under main .list_link li a {
        display: block;
    }
    .under main .list_link li {
        width: 100%;
    }
    .list_link li.extra_item {
        display: none;
    }
    .list_link.show_all li {
        display: list-item;
    }
    .under main .btn_show_all {
        padding: 6px 20px;
        cursor: pointer;
        transition: all 0.3s ease;
        background: var(--mcolor);
        border-radius: 5px;
        margin: 20px auto 0;
        width: 120px;
        height: 40px;
        position: relative;
        color: #fff;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }
    .under main .btn_show_all.open:before {
        transform: rotate(90deg);
        opacity: 0;
    }
    .under main .btn_show_all:before, .under main .btn_show_all:after {
        position: absolute;
        content: "";
        width: 1px;
        height: 12px;
        background: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        right: 15px;
        top: calc(50% - 5px);
        transition: all 0.3s;
    }
    .under main .btn_show_all:after {
        transform: rotate(90deg);
    }
    .under main .list_link li a:before {
        top: 11px;
    }
    .under main .frame_link {
        padding: 0px 0px 30px;
    }
    .under main .frame_link.mb1 {
        margin-bottom: 35px;
    }
    .under main .un_tt1 {
        font-size: 24px;
        padding: 0 30px 0 30px;
        margin: -13px auto 20px;
    }
    .under main .list_link {
        flex-direction: column;
    }
    .under main .un_tt1 > span:before, .under main .un_tt1 > span:after {
        width: 7px;
        height: 2px;
        top: 15px;
    }
    .under main .un_tt1 > span {
        padding: 0 15px;
    }
    .under main .un_list_con > div:not(:last-child) {
        margin-bottom: 40px;
    }
    .under main .list_step dt .icon {
        font-size: 18px;
        left: -20px;
        padding-top: 6px;
        width: 60px;
        height: 60px;
    }
    .under main .list_step dt .icon .num {
        font-size: 30px;
        line-height: 1;
    }
    .under main .list_step dt .icon .txt {
        font-size: 16px;
    }
    .under main .list_step dl::before {
        left: 10px;
        top: 25px;
        height: calc(100% - 40px);
    }
    .under main .list_step dd {
        padding-left: 0px;
    }
    .under main .frame02 .wrap {
        padding: 20px;
    }
    .under main .box_list1 {
        flex-direction: column;
    }
    .under main .box_list1 > .item {
        width: 100%;
    }
    .under main .box_list1 > .item:not(:last-child) {
        margin-bottom: 20px;
    }
    .under main .box_list1 .un_ttl4 {
        margin-bottom: 10px;
    }
    .under main .frame02 .un_ttl3 {
        margin-bottom: 21px;
    }
    .under main .box_step > li:not(:last-child)::before {
        background-size: 12px auto;
        right: -25px;
    }
    .under main .box_step li:not(:last-child) {
        margin-right: 30px;
    }
    .under main .box_step {
        margin-bottom: 15px;
    }
    .un_acc dl dd {
        padding: 11px 0 14px;
    }
    .under main .frame_pick .wrap {
        box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.16);
        padding: 25px 15px;
    }
    .under main .list_anchor .btn {
        margin: 0 10px 25px;
    }
    .under main .list_anchor {
        margin-bottom: 20px;
    }
    .under main .un_list_con {
        justify-content: center;
    }
    .under main .un_list_con > .item {
        width: 100%;
    }
    .under main .un_list_con.info_col3 {
        max-width: 450px;
        margin: 0 auto;
    }
    .under main .un_list_con.info_col3 .un_img {
        height: 50vw;
    }
    .under main .un_list_con.info_col3 > div:not(:last-child) {
        margin-bottom: 20px;
    }
    .under main .list_step2:before {
        width: 40px;
    }
    .under main .list_step2:after {
        width: 160px;
        height: 80px;
        bottom: -45px;
    }
    .under main .list_step2 dl {
        padding: 15px;
    }
    .under main .list_step2 dl dt {
        font-size: 18px;
    }
    .bor1 {
        border-top: none !important;
        border-bottom: 1px #E5E5E5 solid !important
    }
    .under main .note_group span {
        margin: 0 10px;
        display: block;
        line-height: 1.4;
        letter-spacing: 0em;
    }
    .under main .staff_ttl {
        font-size: 22px;
    }
    .under main table.tb1 tr:not(:last-child) td {
        border-bottom: none;
    }
    .under main table.tb1 tr:last-child th {
        border-top: none;
    }
    .under main .un_title1 {
        font-size: 24px;
    }
    .under main .box_doctor_item {
        flex-direction: column;
    }
    .under main .box_doctor_item > .item1 {
        margin-right: 0;
        margin-bottom: 25px;
        text-align: center;
    }
    .under main .box_doctor_item:before {
        width: 130px;
        height: 130px;
        left: 0px;
        top: -70px;
        background-size: 130px auto;
    }
    .under main .un_bnr {
        flex-direction: column;
        padding-bottom: 65px;
    }
    .under main .un_bnr li {
        width: 100%;
        height: 120px;
    }
    .under main .un_bnr li a:before {
        right: 20px;
    }
    .under main .un_bnr li:not(:last-child) {
        margin-right: 0px;
        margin-bottom: 20px;
    }
    .under main .un_bnr li a {
        font-size: 22px;
        line-height: 1.3;
    }
    .under main .un_bnr li.un_bnr2 a .sm {
        font-size: 18px;
        line-height: 1;
    }
    .under main .un_bnr li.un_bnr2 a .lg {
        font-size: 24px;
    }
    .under main .un_bnr li.un_bnr1:before {
        top: 7px;
        left: 7px;
        right: 7px;
        bottom: 7px;
    }
    .under main .un_bnr:after {
        background-size: 100px auto;
    }
    .under main .un_bnr:before, .under main .un_bnr:after {
        height: 130px;
    }
    .under main .doctor_item_g1 p .txt {
        display: inline-block;
        line-height: 1.4;
        position: relative;
        top: -3px;
    }
    /*contact*/
    .under main .input02, .select01, .textarea_text01 {
        width: 100%;
    }
    /*info*/
    .under main .info_content, .under main .info_right .info_cnt {
        flex-direction: column-reverse;
    }
    .under main .info_right, .under main .info_right .info_cnt .info_cnt_r, .under main .info_right .info_cnt .info_cnt_l {
        width: 100%;
    }
    .under main .info_right {
        margin-bottom: 30px;
    }
    .under main .info_right .info_cnt .info_cnt_l {
        padding-right: 0;
        margin-top: 20px;
    }
    .under main .info_right .info_cnt .info_cnt_r .info_img {
        max-width: 300px;
        margin: 0 auto;
    }
    .under main .info_left {
        width: 100%;
        margin-right: 0;
    }
    .info_img_center img {
        max-height: 300px;
    }
    .alignleft, .alignright, .alignleft, .aligncenter {
        margin: 0 auto 20px;
    }
}
/* IPHONE 14 */
@media screen and (max-width: 440px) {
    /*============ ORTHER ============ */
    /*============ OVN ============ */
    .under .un_page_title, .under main .un_ttl2 {
        font-size: 25px;
    }
    .under main .box_step {
        flex-direction: column;
    }
    .under main .box_step li {
        width: 100%;
    }
    .under main .box_step li:not(:last-child) {
        margin-right: 0px;
        margin-bottom: 53px;
    }
    .under main .box_step > li:not(:last-child)::before, .under main .box_step.box_step_img > li:not(:last-child)::before, .under main .box_step.box_step_img3 > li:not(:last-child)::before {
        background-size: 20px auto;
        right: 0;
        top: auto;
        bottom: -49px;
        left: 0;
        margin: 0 auto;
        transform: rotate(90deg);
    }
    .under main .un_bnr li a {
        font-size: 20px;
    }
}
/* IPHONE 6 */
@media screen and (max-width: 360px) {
    .under .un_page_ttl, .under main .un_ttl2 {
        font-size: 24px;
        padding: 19px 5px 16px;
    }
    .under main .tb_note .f_sm {
        font-size: 75%;
    }
    .under main .un_bnr li.un_bnr2 a .lg {
        font-size: 22px;
    }
    .under main .un_bnr li.un_bnr2 a .sm {
        font-size: 16px;
        line-height: 1.5;
    }
    .under main .frame_pick .un_ttl3 {
        font-size: 21px;
    }
}
/* FIREFOX ONLY */
@-moz-document url-prefix() {}
/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution: 0.001dpcm) {}