@media screen and (min-width: 751px) {
	.under#company #wrapper {overflow: visible;}
/* HOVER */
	.under main .list_anchor .btn a:hover {background-color: var(--mcolor);}
	.under main #toc a:hover {color: var(--mcolor);}
	.under main .ovn_content p a:hover, .under main .link:not([target="_blank"]):hover {text-decoration: none;}
	.under main #topic_path li a:hover {text-decoration: underline;}
	.under main .list_faq dt:hover {background-color: var(--gray);}
	.under .sec01_list { width: calc(100vw - 78px); min-width: 1220px; position: relative; left: 50%; transform: translateX(-50%); }
	
	.company_item:hover .company_item_img .img_show {opacity: 0;}
	.company_item:hover .company_item_img .img_hover {opacity: 1;visibility: visible;}
	.popup_close:hover {background: var(--gold);color: #fff;}
.company_slide .slick-dots li:hover button {background: #c49a6c;opacity: 1;}
}
@media screen and (min-width: 751px) and (max-width: 1750px){
	.under main #top_info {padding-top: 170px;}
	.under main #top_info .inner {padding-left: 40px;}
	.company_slide {min-width: 1260px;}
}
@media screen and (min-width: 751px) and (max-width: 1500px){
	.under main #top_info .inner {padding-left: 20px;}
	.company_box_img .img { width: calc(100% + 7vw); left: -7vw; }
	.company_slide_item_info {padding-right: 30px;}
	.under main .company_slide_item h4 {font-size: 32px;}
}
@media screen and (min-width: 751px) and (max-width: 1400px){
	.under main #top_info {padding-top: 140px;}
	.under main #top_info:before { width: 570px;height: 265px; }
	.top_info_img .img:before { left: 260px;width: 150px; height: 65px }
	.top_info_img:before { left: -31px; width: 80px; height: 105px; bottom: -53px; }
	.top_info_main { background-size: 180px auto;padding-left: 50px;}
	.top_info_main:before { width: 250px; height: 248px; top: -40px; right: -40px; }
	
.company_box_img .img { width: 100%; left: 0; }
}

@media screen and (max-width: 750px) {
.under main #content{padding:0 0 80px}
.under main section{padding:0 0 60px;}

.under main .image_r,
.under main .image_l{float:none;display:inline-block;width:100%;text-align:center;margin:0 auto 20px !important}
	.under_frame_bg {padding: 60px 0;}
/*==========================================================
                 C U S T O M
==========================================================*/
/*  TOP INFO  */
.under main #top_info{padding-top: 100px;margin: 0;height: auto;}
.under main #top_info .inner {padding-left: 15px;display: block;}
.top_info_img { width: 100%; }
.top_info_main { margin: -30px 0 0 15px; padding: 30px 15px; background-size: 100px auto; background-position: top 20px left calc(50% - 50px); height: auto; display: block; min-height: 110px; text-align: center; }
.under main #top_info:after { background-size: 100% auto; background-position: top left; }
.under main #top_info:before { width: 90%; height: 30vw; top: calc(100px + 12vw); }
.top_info_img:before { bottom: 6vw; left: -3vw; width: 13vw; height: 17vw; }
.top_info_img:after { right: -3vw; top: -3vw; width: 16vw; height: 17vw; }
.top_info_main:before { width: 27vw; height: 20vw; top: -6vw; right: -7vw; }
	.top_info_img .img {height: auto;aspect-ratio: 3 / 1.2;}
.under main #topic_path{margin-bottom:40px}
.under main #topic_path li,
.under main #topic_path li a{font-size: 14px;}

/*============ HEAD TITLE ============ */
.under main h2{font-size:26px;}
.under main h3, .under main .ovn_content h3{font-size:24px;margin-bottom: 50px;}
.under main h3:before, .under main .ovn_content h3:before { width: 120px; height: 120px; left: calc(50% - 60px); top: -50px; }
.under main h4,.under main .ovn_content h4{font-size:22px;margin-bottom: 35px;}
.under main h4::before, .under main .ovn_content h4:before { width: 110px; height: 110px; top: -47px; }
.under main h5,
.under main .ovn_content h5{font-size:20px;margin-bottom: 20px;}
.under main h6,
.under main .ovn_content h6{font-size:18px; margin-bottom: 20px;}

/*============ TABLE ============ */
.under main table{margin-bottom:30px}
.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 th,
.under main table.tb_block td{width: 100%;margin-top: -1px;}

/* 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;font-size: 14px;}

/*============ LIST ============ */
.under main .list01,
.under main .ovn_content ul{}
.under main .list01 li,
.under main .ovn_content ul li{}
.under main .list01 li::before,
.under main .ovn_content ul li::before{}

.under main .list02,
.under main .ovn_content ol{}
.under main .list02 li,
.under main .ovn_content ol li{}
.under main .list02 li::before,
.under main .ovn_content ol li::before{}

.under main .list_check{}
.under main .list_check li{}

/* LIST FAQ */

.under main .list_faq dt { font-size: 16px; line-height: 1.75em; padding: 10px 30px 10px 40px; }
.under main .list_faq dt .num { font-size: 22px; left: 12px; top: 10px; }
.under main .list_faq dt:before, .under main .list_faq dt:after { right: 10px; width: 14px; }
.under main .list_faq dd { padding: 10px 10px 10px 40px; }
.under main .list_faq dd .num { font-size: 22px; left: 12px; top: 12px; }
	.under main .list_faq dl {margin-bottom: 20px;}
/* List STEP */
	.under main .list_step {flex-direction: column;padding-top: 0;}
	.under main .list_step dl {width: 100%;max-width: 400px;margin: 0 auto;}
	.under main .list_step dt {font-size: 20px;line-height: 1.5em;}
	.under main .list_step dd {padding: 20px;}
	.under main .list_step dt:before {margin-bottom: 10px;}

/*============ FRAME ============ */
.under main .frame01{padding:30px 15px}

.under main .frame02{padding:30px 15px}

.under main .frame_pick{padding:60px 0}
.frame_pick_main { padding: 30px 15px; }
.frame_pick_main:before { width: 70px; height: 70px; left: -10px; top: -10px; }
.frame_pick_main:after { width: 100px; height: 100px; bottom: -10px; right: -10px; }
.under main .frame_pick .pick_ttl { font-size: 26px; margin: 0 0 30px; }
.under main .frame_pick .pick_ttl .en { font-size: 75%; }
.under main .frame_pick .pick_ttl:before { width: 110px; height: 110px; left: calc(50% - 55px); top: -23px; }

/* ============ ORTHER ============ */
.under main .box_map{height:250px}


/* ===========  OVERNOTE ===========  */
.under main .list_ovn {justify-content: space-between;}
.under main .list_ovn li {margin: 0 0 20px;display: block;padding: 20px;}
.under main .list_ovn li .cate {font-size: 14px;}
.under main .list_ovn li .img { height: 35vw; width: 100%; max-width: 400px; margin: 0 auto 10px; }
.under main .list_ovn .info_box  {margin: 0;}
.under main .list_ovn .big {margin: 0 0 10px; }

.under main .btn_list {flex-direction: column;}
	
	.under main .list_anchor .btn {font-size: 16px;}
	
	.company_box { display: block; }
	.company_box_sticky { width: 100%; margin: 0 0 40px; }
	.under main .company_box_item_ttl {font-size: 20px;}
	.company_box_item:not(:last-child) { margin-bottom: 30px; }
.under_frame_bg:not(:last-child) {margin-bottom: 60px;}
	.service_item { display: block; margin: 0 0 60px; }
	.service_item_img { width: 100%; }
	.service_item_main { margin: -40px 15px 0!important; padding: 30px 15px 0; }
	.under main .service_item_ttl { font-size: 24px; margin: 0 0 20px; }
	.under main .service_item_ttl .en { font-size: 75%; margin: 0 0 5px; }
	.service_item_main:before { font-size: 120px; top: -30px; left: 15px; }
	.under main #toc {padding: 30px 15px;}
	.under main .toc_ttl {font-size: 22px;margin-bottom: 10px;}
.under main .ovn_content .img_left, .under main .ovn_content .img_right {float: none;margin: 0 0 20px;}
.under main .ovn_content .img_left img, .under main .ovn_content .img_right img {max-width: 100%;}
	.under main .ovn_content img {max-width: 100%;height: auto!important;float: none!important;margin: 0 auto!important;}
	
	.service_bg1:after {min-width: 100vw;}
	.company_box_img .img { width: 100%; height: auto; left: 0; }
	
	.under main .contact_frame_ttl { font-size: 4.5vw; margin: 0 0 -2vw 3vw; padding: 0 5vw 0.5vw; }
	.under main .contact_frame_ttl::after { width: 4vw; height: 3vw; bottom: -2.5vw; left: calc(50% - 2vw); }
	.contact_frame_txt { font-size: 4.5vw; margin: 0 0 2vw; }
	.contact_frame_txt .num::after { height: 2.5vw; }
	.contact_frame { max-width: 100%; padding: 7vw 3vw; }
	.contact_frame_img { width: 21vw;bottom: 0; }
	.contact_frame_list { gap: 2vw;margin: 0 3vw; }
	.contact_frame_note { font-size: 3vw;}
	.contact_frame_main { margin-bottom: -5vw; padding: 5vw 5vw 7vw; }
	.contact_frame_list li { width: 16vw; }
	
	.service_list { padding: 60px 0; }
	.service_item_main_ttl { font-size: 18px; }
	.service_item_info_col { flex-direction: column; margin: 40px 0;}
	.service_item_info_col_item { padding: 25px 15px; }
	.under main .service_item_info_col_ttl {font-size: 20px;}
	.service_item_info_col_ttl .note { top: -15px; }
	.service_item_info_support { flex-direction: column; margin-bottom: 40px;}
	.service_item_info_support dt { flex: 1; border-right: 0; border-bottom: 1px solid #e7dcd0; width: 100%; text-align: center; justify-content: center; font-size: 18px; line-height: 1.75em; }
	.service_item_info_support dd {padding: 25px 15px;}
	.under main .service_item_info_bottom_ttl { font-size: 20px; margin: 40px 0 20px; }
	.service_item_info_bottom_list {flex-direction: column;gap: 20px;}
	.service_item_info_bottom_col {padding: 25px 15px;}
	.under main .service_item_info_bottom_col_ttl {font-size: 18px;}
	.service_item_info_col_txt li { font-size: 3vw; width: 13vw; height: 13vw; flex: none;}
	.service_item_info_col_txt { gap: 3vw; }
	.service_item_info_col_txt li.lager { width: 23vw; height: 23vw; font-size: 3.3vw;padding: 0 0 2vw; }
	.service_item_info_col_txt li:nth-child(1) { margin: auto 0 3vw 0; }
	.service_item_info_col_txt li:nth-child(3) { margin: 3vw 0 0 0; }
	.service_item_info_col_txt li:nth-child(4) { margin: 9vw 0 0 0; }
	.service_item_info_col_txt li:not(.lager):nth-child(4):before { width: 29%; }
	.service_item_info_strengths { flex-wrap: wrap; gap: 20px; }
	.service_item_info_strengths dl { width: calc((100% - 20px) / 2); flex: none;}
	.service_item_info_property { flex-direction: column; }
	.service_item_info_property dl {padding: 25px 15px;}
	.service_item_info_property dl.important { transform: none; }
	.service_item_info_property .percent .num {font-size: 150%;}
	.service_item_info_feature::before { top: 5px; left: 5px; right: 5px; bottom: 5px; }
	.service_item_info_feature { padding: 30px; }
	.service_item_info_colum {flex-direction: column;gap: 30px;}
	.service_item_info_flow { flex-direction: column; text-align: left; gap: 30px; }
	.service_item_info_flow dl { padding-left: 50px; position: relative; }
	.service_item_info_flow dl:before { position: absolute; left: 0; width: 40px; height: 40px; margin: 0; font-size: 16px;padding: 0 0 2px; }
	.service_item_info_flow dt {margin: 0;}
	.service_item_info_flow::before { right: auto; height: auto; width: 1px; bottom: 0; left: 20px; top: 0; }
	.service_item_info_card {flex-direction: column;gap: 20px;}
	.service_item_info_card dl { padding: 0 15px 25px; }
	.service_item_info_card dt.img { margin: 0 -15px 20px; }
	.service_item_info_card dt.img img {width: 100%;}
	.service_item_info_special { margin-top: 40px; padding: 50px 15px; }
	.under main .list_anchor.anchor_qa .btn, .under main .list_anchor.col4 .btn { width: calc((100% - 20px) / 2); }
	.under main .list_anchor.anchor_qa .btn a, .under main .list_anchor.col4 .btn a { padding-left: 15px; background-size: 25px auto; background-position: right 15px center;padding-right: 25px; font-size: 14px;}
	.under main .list_anchor.anchor_qa .btn:nth-child(n+3) { width: calc((100% - 20px) / 3); }
	.under main .list_anchor.anchor_qa { gap: 10px; }
	.under main .list_anchor.anchor_qa .btn  {line-height: 1.5em;}
	
	.company_list { gap: 20px; }
	.company_item { width: calc((100% - 40px) / 3); }
	.company_item_ttl { bottom: 10px; padding: 0 15px;line-height: 1.5em;font-size: 18px; }
	.company_main { width: calc(100% - 30px); gap: 20px; }
	.company_main_ttl {font-size: 24px;margin-bottom: 10px;}
	.company_main_img { width: 45%; display: flex; justify-content: center; align-items: center; overflow: hidden; }
	.company_main_img img {height: 100%;object-fit: cover;width: 100%;}
	.company_main_info { flex: 1; padding: 20px; padding-left: 0; }
	
	.company_slide {width: calc(100% + 30px);left: -15px;transform: none;padding: 60px 0 1px;}
	.company_slide .slick-track {width: 100%!important;display: block;transform: none!important;}
	.company_slide.slick-initialized .slick-slide.company_slide_item {height: auto;display: block;float: none;width: 100%!important;}
	.company_slide_item_info {display: block;margin: 0 0 60px;padding: 0 15px;}
	.company_slide_item:last-of-type {margin-bottom: 0;}
	.under main .company_slide_item h3, .under main .company_slide_item h4 {margin-bottom: 20px;}
	.company_slide_item_img {display: none;}
	.company_slide_item img {margin: 0 auto;}
	.under main .company_slide_item h4 {display: block;font-size: 22px;text-align: center;}
	.company_slide_item .doctor_name img {margin: 0;}
}


/* IPHONE 14 */
@media screen and (max-width: 440px) {
/*============ ORTHER ============ */

/*============ OVERNOTES ============ */
.under main .list_ovn li .img {height: 50vw;}
.under main .list_ovn li {width: 100%;}
.under main .list_ovn li:last-child {margin-bottom: 0;}
	.under main .list_anchor.anchor_qa, .under main .list_anchor.col4 { gap: 5px; }
	.under main .list_anchor.anchor_qa .btn, .under main .list_anchor.col4 .btn { width: calc((100% - 10px) / 2); }
	.under main .list_anchor.anchor_qa .btn a, .under main .list_anchor.col4 .btn a { padding-left: 10px; background-size: 15px auto; background-position: right 5px center; font-size: 14px; padding-right: 20px;line-height: 1.5em; }
	.service_item_info_strengths dl {width: 100%;}
	.company_item { width: calc((100% - 20px) / 2); }
	.popup_close {right: 5px;top: 5px;}
	.company_main_img { width: 100%; max-width: 250px; margin: 0 auto; }
	.company_main { max-height: calc(100% - 20px); overflow: auto; display: block; }
	.company_main_info {padding: 20px;}

}


/* IPHONE 6 */
@media screen and (max-width: 360px) {
	.under main .list_anchor.anchor_qa .btn a {font-size: 11px;}
}
