@media screen and (max-width: 1500px) and (min-width: 751px) {
  .under #main .inner {
    width: 1200px;
  }
  .under #main .bnn_list p {
    width: 555px;
  }
}
@media screen and (min-width: 751px) {
  /* HOVER */
  .under #main a:hover {
    text-decoration: none
  }
  .under #main #topic_path li a:hover {
    text-decoration: none;
  }
  .under #main .btn_u a:hover:after, .under #main .list_anchor li a:hover:after {
    width: 100%;
    opacity: 1;
    left: 0;
  }
  .under #main .btn_u a:hover::before {
    background: url('../images/ic_btn_w.png') center /cover no-repeat;
  }
  .under #main .bnn_list p a:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(170, 212, 225, 0.8);
  }
  .under #content .news_item li a:hover {
    border-color: #93D8E5;
    opacity: 0.8;
  }
  .under #main .news_item li:nth-child(3n+3), .under #main .news_item li:last-child {
    margin-right: 0;
  }
  .under #main .info_btn li:hover {
    opacity: 0.8;
  }
  .under #main .navigation a:hover, .under #main .navigation .current {
    opacity: 0.7;
  }
  .under #content .price_list li a:hover {
    color: #002e5d;
    opacity: 0.8;
  }
}
.under .pc {}
.under .sp560, .under .sp480, .under .sp420, .under .sp380, .under .sp, .under #main .txt_note {
  display: none
}
@media screen and (max-width: 750px) {
  #wrapper, header, #main, footer, .inner {
    width: 100% !important;
    min-width: inherit !important;
  }
  .inner {
    box-sizing: border-box;
    padding: 0 15px;
  }
  .under #main {
    padding-bottom: 50px;
  }
  .under #main .sm {
    color: #999
  }
  .under #main .section {
    padding: 0 0 60px;
    box-sizing: border-box;
  }
  .under #main .inner {
    padding: 0 15px
  }
  .under #main .image_r, .under #main .image_l, .under #main .image_l.mb0, .under #main .image_r.mb0, .under #main .image_l.mb80, .under #main .image_r.mb80 {
    float: none;
    display: inline-block;
    width: 100%;
    text-align: center;
    margin: 0 auto 30px
  }
  .under #main .image_l {
    padding-left: 15px;
  }
  .under #main .image_l::before {
    width: calc(100% - 15px);
    top: 15px
  }
  .under #main .image_r {
    padding-right: 15px
  }
  .under #main .image_r::before {
    width: calc(100% - 15px);
    top: 15px;
  }
  .under .float {
    width: 100%;
    display: block;
  }
  .under #main .sp {
    display: block;
  }
  .under #main .pc {
    display: none
  }
  /* TOP INFO */
  .under #main #top_info {}
  .under #main #top_info::before {
    width: 184px;
    height: 140px;
    left: 10px;
  }
  .under #main #top_info .inner {
    height: 200px;
  }
  /* TOPIC PATH */
  .under #main #topic_path {
    margin-bottom: 0
  }
  .under #main #topic_path ul {
    padding: 10px 0;
    display: block;
    text-align: center
  }
  .under #main #topic_path ul li {
    position: relative;
    right: -10px;
  }
  .under #main #topic_path ul li:last-child {
    right: 0;
  }
  .under #main h3, .under #main h4, .under #main h5, .under #main h6 {
    margin-bottom: 30px;
    letter-spacing: 0;
  }
  .under #main h2 span {
    font-size: 2.6rem;
    padding: 15px;
    line-height: 1.25em;
  }
  .under #main h3 {
    padding-bottom: 30px;
  }
  .under #main h3::before {
    width: 90px;
    height: 11px;
    left: calc(50% - 45px)
  }
  .under #main h3 span.en {
    font-size: 2rem;
    margin-bottom: 10px;
  }
  .under #main h3 span.jp {
    font-size: 3.2rem;
  }
  .under #main h4 {
    font-size: 2.6rem;
  }
  .under #main h4::before {
    width: 271px;
    height: 75px;
    bottom: 0;
    right: -15px;
  }
  .under #main h5 {
    font-size: 2.2rem;
    padding-bottom: 20px;
  }
  .under #main h6 {
    font-size: 1.8rem;
  }
  .under #main p {
    letter-spacing: 0;
  }
  .under #main .sm {
    margin-bottom: 15px;
    font-size: 1.2rem;
    color: #999;
  }
  .under #main .big {
    font-size: 2rem
  }
  .under #main .btn_u a {
    font-size: 1.4rem;
    width: 290px;
    max-width: 100%;
  }
  /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
  /* table scroll                                                        */
  /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
  .under #main .tb_scroll {
    overflow: scroll;
    margin-bottom: 10px
  }
  .under #main .tb_scroll table {
    width: 720px;
  }
  .under #main .txt_note {
    font-size: 1.2rem;
    color: #AFAFAF;
    display: block;
  }
  /* TABLE  */
  .under #main table.tb_block {
    border-bottom: 2px solid #1f518e;
  }
  .under #main table.tb_block tr th, .under #main table.tb_block tr th + th {
    display: block !important;
    width: 100% !important;
    border-bottom: none;
  }
  .under #main table.tb_block tr th.pc {
    display: none !important
  }
  .under #main table.tb_block tr td {
    display: block !important;
    width: 100% !important;
    border-bottom: none;
  }
  .under #main table.tb_block tr th:last-child {
    border-bottom: none
  }
  .under #main table.tb_block .center {
    margin-bottom: 15px;
  }
  .under #main table.td_top_sp td {
    vertical-align: top
  }
  .under #main table.tb_block th.bdo {
    border-bottom-color: #fff
  }
  .under #main .big {
    font-size: 1.8rem
  }
  .under #main table th {
    font-size: 1.6rem
  }
  .under #main table.td_price td {
    font-size: 1.6rem;
    align-items: center;
  }
  .under #main table.tb_txt tr td.tb_label {
    margin-top: 50px;
    position: relative
  }
  .under #main table.tb_txt tr td.tb_label::before {
    content: attr(data-label);
    font-size: 1.6rem;
    color: #fff;
    background: #00c5b4;
    width: calc(100% + 2px);
    height: 50px;
    position: absolute;
    top: -50px;
    left: -1px;
    line-height: 50px;
    text-align: center
  }
  /* BOX UNDER (H3) */
  .box_under_bg {
    padding: 50px 0 90px;
    margin-bottom: 60px;
  }
  .box_under_bg::before {
    height: calc(100% - 50px);
  }
  .box_under_bg::after {
    height: 50px;
    background: url('../images/bg_h3_botsp.png') top center repeat;
  }
  /* FRAME */
  .under #main .frame01 {
    width: 100%;
    margin-bottom: 50px;
  }
  .under #main .frame01::before {
    width: 120px;
    height: 120px;
    bottom: -15px;
    left: -15px;
  }
  .under #main .frame01::after, .under #main .float .frame01::after {
    width: 164px;
    height: 84px;
    bottom: -30px;
    left: -15px;
  }
  .under #main .frame01_ct, .under #main .float .frame01_ct {
    border-width: 5px;
    padding: 30px 15px 50px;
  }
  /* BANNER LIST */
  .under #main .bnn_list {
    flex-wrap: wrap;
    margin-top: 20px;
  }
  .under #main .bnn_list p {
    width: 100%;
    height: 120px;
  }
  .under #main .bnn_list p a {
    padding: 0 15px;
    font-size: 1.8rem;
  }
  .under #main .bnn_list p a:after {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
  }
  .under #main .gg_map {
    height: 199px;
  }
  /* LIST01 */
  .under #main .list01 li {
    padding-left: 30px;
    margin-bottom: 10px;
  }
  .under #main .list_anchor li {
    width: 240px;
  }
  .under #main .list_anchor li a {
    height: 50px;
    font-size: 1.6rem;
  }
  .under .list_2tbl li, .under .list_3tbl li {
    width: 100%;
    margin-right: 0;
  }
  .under .list_3tbl li {
    border-bottom: none;
  }
  .under .list_2tbl li:nth-child(n+2), .under .list_3tbl li:nth-child(n+2) {
    margin-top: 40px;
  }
  .under #main .list_2col .list01 {
    width: 100%;
    margin-bottom: 10px;
  }
  .under #main .list_2col .list01:last-child {
    margin-bottom: 0;
  }
  .under #main .frame_pick {
    padding: 40px 0 0;
    margin-top: 40px;
    margin-bottom: 80px;
  }
  .under #main .frame_pick::before, .under #main .frame_pick::after {
    height: 40px;
    background-size: 100% 100%;
    background-position: center top;
    background-repeat: no-repeat;
  }
  .under #main .frame_pick::after {
    top: auto;
    bottom: -40px;
  }
  .under #main .frame_pick .inner {
    flex-direction: column;
    padding-bottom: 110px;
  }
  .under #main .frame_pick .inner::after {
    background-size: 100% auto;
    width: 200px;
    height: 104px;
  }
  .under #main .frame_pick .inner::before {
    background-size: 100% auto;
    width: 220px;
    height: 200px;
  }
  .under #main .frame_pick .pick_title, .under #main .frame_pick .pick_content, #prevent #main .frame_pick .pick_title {
    width: 100%;
  }
  .under #main .frame_pick .pick_content {
    padding-top: 20px;
  }
  .under #main .frame_pick .pick_title .ic {
    margin-bottom: 5px;
  }
  .under #main .frame_pick .pick_title .ic img {
    width: 120px;
  }
  .under #main .frame_pick .pick_title p {
    font-size: 2.2rem;
  }
  .under .implant_frame {
    padding: 20px;
  }
  .under #main .implant_frame dt {
    line-height: 1.6em;
    font-size: 2rem;
  }
  .under #main .implant_frame dd {
    padding: 20px;
  }
  .under #main .implant_frame dd p {
    font-size: 1.6rem;
  }
  .under #main .implant_frame .num {
    font-size: 2rem;
  }
  .under #main .frame_pick .pick_content img {
    width: auto;
  }
  /* news */
  .under.news #main {
    padding-bottom: 70px;
  }
  .under #main .news_item li {
    width: calc((100% - 10px) / 2);
    margin-right: 10px;
  }
  .under #main .news_item li:nth-child(2n+2), .under #main .news_item li:last-child {
    margin-right: 0;
  }
  .under #main .news_item li:nth-child(n+3) {
    margin-top: 10px;
  }
  .under #main .news_item li a {
    border-width: 2px;
  }
  .under #main .news_img {
    height: 32vw;
  }
  .under #main .cat_name {
    height: 26px;
    font-size: 1.2rem;
  }
  .under #main .post_img {
    height: 30vw;
  }
  .under .post_list li:last-child .post_img:before {
    border-width: 3vw 0 3vw 3vw;
  }
  .under #main .post_list h4 {
    padding-bottom: 20px;
    font-size: 2.2rem;
  }
  .under #main .post_list h4::before {
    background-size: 100% auto;
    width: 32vw;
    bottom: -4vw;
  }
  .under #main .news_frame .image_l {
    margin-bottom: 40px;
  }
  .under #main .news_frame .image_l img {
    width: auto;
  }
  .under #main .news_title01 {
    font-size: 1.8rem;
  }
  .under #main .info_btn {
    align-content: center;
    flex-direction: column;
    flex-wrap: wrap;
  }
  .under #main .info_btn .prevPage, .under #main .info_btn .nextPage {
    position: relative;
    left: auto;
    right: auto;
    top: 0;
  }
  .under .clinic_step dl {
    margin-right: 0;
    width: 100%;
    margin-bottom: 80px;
    position: relative;
    z-index: 1;
  }
  .under .clinic_step dl:last-child {
    margin-bottom: 0;
  }
  .under .clinic_step dl:before {
    position: absolute;
    content: '';
    display: block;
    background: url("../images/clinic_step.png") center center no-repeat;
    background-size: 100% auto;
    width: 38px;
    height: 34px;
    bottom: -58px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
  .under .clinic_step dl:last-child:before {
    display: none;
  }
  .under .clinic_step .list_3img {
    width: 100%;
    margin-bottom: 80px;
  }
  .under .clinic_step dl img {
    width: auto;
  }
  .under .clinic_step .list_3img dt {
    display: flex;
  }
  .under .clinic_step .list_3img dt img {
    width: calc((100% - 20px) / 3);
  }
  .under .clinic_step .list_3img dd {
    justify-content: flex-start;
  }
  .under .clinic_step dl dt:before {
    display: none;
  }
  .under .clinic_step .list_3img dt img {
    margin-right: 10px;
  }
  /* --- 220822 --- */
  .under #content .price_list li, .under #content .price_list li:not(:last-child) {
    margin: 10px;
    width: calc(50% - 20px);
    text-align: center;
  }
  .under #content .price_list li a {
    font-size: 1.8rem;
    padding-bottom: 18px;
    background-size: 26px auto;
    text-align: center;
    display: inline-block;
  }
  .under #content .txt_right {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 560px) {
  .under .pc560 {
    display: none
  }
  .under .sp560 {
    display: block
  }
}
@media screen and (max-width: 540px) {
  .under #main .news_item li {
    width: 100%;
    margin-right: 0;
  }
  .under #main .news_item li:nth-child(n+2) {
    margin-top: 20px;
  }
  .under #main .news_img {
    height: 65vw;
  }
}
@media screen and (max-width: 480px) {
  .under .pc480 {
    display: none
  }
  .under .sp480 {
    display: block
  }
  .staff_anchor_item {
  width: 47%;
  }
  .staff_anchor_item p a{
  padding: 8px;
  }
}
@media screen and (max-width: 420px) {
  .under .pc420 {
    display: none
  }
  .under .sp420 {
    display: block
  }
  .under #content .price_list li, .under #content .price_list li:not(:last-child) {
    margin: 2vw 1vw;
    width: calc(50% - 2vw);
  }
  .under #content .price_list li a {
    font-size: 4.3vw;
  }
}
@media screen and (max-width: 380px) {
  .under .pc380 {
    display: none
  }
  .under .sp380 {
    display: block
  }
  .under #main .bnn_list p {
    height: 26vw;
  }
  .under #main .bnn_list p a {
    font-size: 3.5vw;
  }
  .under #main .frame_pick::before, .under #main .frame_pick::after {
    background-size: auto 100%;
  }
}
@media screen and (max-width: 370px) {
  .under #main h3 span.jp {
    font-size: 2.6rem;
  }
  .under #main h4 {
    font-size: 2.4rem;
  }
  .under #main .frame01_ct .news_title01 {
    font-size: 1.6rem;
  }
  .under #main .frame01_ct p {
    font-size: 1.4rem;
  }
  .under #main .implant_frame dd p {
    font-size: 1.2rem;
  }
  .under #main .implant_frame .num {
    font-size: 1.8rem;
  }
  .under #main .implant_frame .tit {
    margin-right: 15px;
  }
}