@media screen and (min-width: 751px) {
  .alignleft {
    float: left;
    margin-right: 30px;
  }
  .alignright {
    float: right;
    margin-left: 30px;
  }
  #topic_path ul li a:hover {
    text-decoration: none;
  }
  .under #main .pagenavi li:not([class]) a:hover {
    opacity: 0.8;
  }
  .under #main .pagenavi a:hover {
    opacity: 0.8;
  }
  .anchor-link a:hover {
    opacity: .7;
  }
  .custom-link:hover {
    background-color: #2d75ba;
    color: #fff !important;
  }
  .under .idx_btn_box_info:hover {
    color: rgb(27, 37, 67) !important;
  }
  .frame-bnr .bnr-link.bnr-mail:hover {
    opacity: .8;
  }
  .under .logo_link img:first-child {
    display: none;
  }
  .under.sticky .logo_link img:last-child {
    display: none;
  }
  .under.sticky .logo_link img:first-child {
    display: block;
  }
  .under.open-nav .logo_link img:last-child {
    display: none;
  }
  .under.open-nav .logo_link img:first-child {
    display: block;
  }
  .section-in-block.ex_und_02 .ud-frame-tb {
    width: 650px;
  }
  .under .section-in-block h5.ex_und_02 {
    width: 650px;
  }
  .und_btn_invisalign:hover {
    color: #fff;
    transform: translateY(-7px);
  }
}
/* end screen-min: 751px */
@media screen and (min-width: 751px) and (max-width: 1500px) {
  .content-pickup {
    padding: 0 0 0 140px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 750px) {
  .alignleft, .alignright {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
  .tb_note {
    margin-bottom: 10px;
    color: #555;
  }
  .tb_scroll {
    overflow: scroll;
  }
  .tb_scroll table {
    width: 800px;
  }
  .circle_middle {
    width: 24vw;
    height: 24vw;
    background-clip: padding-box;
    border: 1.3vw solid rgba(255, 255, 255, 0.7);
  }
  .circle_common {
    font-size: 1.8vw;
  }
  .flex_box {
    display: flex;
    justify-content: start;
    position: absolute;
    bottom: -40px;
    right: 16px;
  }
  .kyousei_mv_main {
    width: 100%;
    height: 60vw;
    background-image: url(../images/kyousei-mv.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center 0px;
    position: relative;
  }
  h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
    font-size: 140%;
  }
  .under #main .image-r, .under #main .image-l {
    float: none;
    text-align: center;
    margin: 0 0 20px !important;
  }
  .under #main .image-r, .under #main .image-l {
    margin: 0 auto 20px !important;
  }
  .under #main .blog-section .image-r, .under #main .blog-section .image-l {
    width: auto;
  }
  .no-hyper, .section-in-block:not(:last-child) {
    margin-bottom: 40px !important;
  }
  .tb-fixed-layout .ud-tb tbody th, .tb-fixed-layout .ud-tb tbody td {
    width: auto !important;
  }
  .section-in-block.out-inner {
    margin-top: 40px;
  }
  .tb-block-sp th, .tb-block-sp td {
    widows: 100% !important;
  }
  .tb-block-sp tr:not(:last-child) th + td {
    border-top: none;
  }
  .scroll-noti {
    font-size: 12px;
    opacity: 0.6;
  }
  #main {
    margin-top: 60px;
  }
  .tb-scroll-sp {
    overflow: auto;
    padding-bottom: 20px;
  }
  .tb-scroll-sp table {
    min-width: 800px;
  }
  #content {
    padding: 30px 0 50px;
  }
  .under h2 {
    font-size: 26px;
    line-height: 1.3;
    margin-top: 0;
    padding: 8px 25px;
  }
  .under h3 {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .under h4 {
    font-size: 22px;
    line-height: 1.5;
    padding-bottom: 10px;
    margin-bottom: 30px;
  }
  .under h5 {
    font-size: 20px;
    padding-left: 0;
    margin-bottom: 20px;
    line-height: 1.5;
  }
  .under h6 {
    font-size: 18px;
  }
  .h3-jp {
    font-size: 24px;
  }
  .h3-en {
    font-size: 50px;
  }
  h3 .h3-en {
    margin-bottom: 15px;
  }
  h3 .h3-jp {
    line-height: 1.6;
  }
  .list-txt {
    margin-left: -25px;
  }
  #topic_path {
    min-height: 50px;
    margin-bottom: 50px;
  }
  .under .section {
    margin-bottom: 35px;
  }
  .pickup-bg {
    height: auto;
    background-size: cover;
    padding: 120px 0 30px;
  }
  .content-pickup {
    padding: 0;
  }
  .tb-2cl .ud-tb td {
    width: 50% !important;
  }
  .block-col-2 {
    flex-direction: column;
  }
  .block-col-2 {
    border-top: none;
  }
  .block-col-2-item {
    width: 100%;
    border-top: 3px solid;
  }
  .col-2-item-tt {
    padding: 15px 1em 12px;
    font-size: 16px;
  }
  .tb-2cl .ud-tb tbody td {
    display: table-cell;
  }
  .pickup::before {
    top: 20px;
    font-size: 60px;
    left: 15px;
    transform: unset;
  }
  .pickup-tt {
    font-size: 34px;
    margin-bottom: 30px;
  }
  .ud-tb tbody th, .ud-tb tbody td {
    border-bottom: 1px solid #fff;
    padding: 1em;
  }
  .ud-tb th {
    padding: 15px;
    font-size: 14px;
  }
  .ud-frame-tb thead th {
    font-size: 16px;
  }
  .bg-color {
    padding: 50px 0;
  }
  .under .frame-list {
    margin-top: 50px;
    padding: 35px 20px;
    border: 4px solid #dbe4ef;
  }
  .under .frame-list li {
    font-weight: 500;
    padding-left: 25px;
  }
  .under .frame-list li:not(:last-child) {
    margin-bottom: 15px;
  }
  .under .section-m {
    margin-bottom: 50px;
  }
  .ud-tb td {
    vertical-align: top;
  }
  .tb-fixed-layout .ud-tb {
    width: 990px;
  }
  .tb-time.tb-fixed-layout .ud-tb {
    width: auto;
    min-width: 900px;
  }
  .tb-3cl .ud-tb td {
    width: calc(100% / 3) !important;
  }
  .step-content {
    padding: 15px;
  }
  h4 + .image-r, h4 + .image-l {
    margin-bottom: 20px;
  }
  h5 + .image-r, h5 + .image-l {
    margin-bottom: 20px;
  }
  .col-tt {
    font-size: 16px !important;
  }
  .list-col.col-3 .item-col {
    width: calc((100% / 1) - 7.5px);
  }
  .anchor-link.ac-2-item a {
    font-size: 14px;
  }
  .under h5 {
    padding-bottom: 12px;
  }
  .bnr-link {
    width: 400px;
  }
  .anchor-link {
    flex-wrap: wrap;
    gap: 15px;
  }
  .anchor-link.ac-3-item a {
    width: 48%;
    font-size: 14px;
    padding: 10px 6%;
  }
  .anchor-link a {
    text-align: center;
    padding: 10px 10px 9px 10px;
  }
  .anchor-link a::after {
    /* top: 22px; */
    top: 50%;
    transform: translateY(-50%);
  }
  .indx_b15_left .txt {
    line-height: 2;
  }
  #top_info {
    /* margin-top: 50px; */
    height: 400px;
    background: url(../images/ud-bg.png) center left no-repeat;
    background-size: cover;
    background-position-x: -55px;
  }
  .block-col-2-item:first-child {
    border-right: none;
  }
  .arrow-ss {
    margin-bottom: 100px !important;
  }
  .arrow-ss::before {
    top: calc(100% + 20px);
  }
  .tbl_block {
    border-bottom: 1px solid #505050;
  }
  .tbl_block tr, .tbl_block th, .tbl_block td {
    display: block;
    width: 100% !important;
    border-bottom: none;
  }
  .ttl_in_list_img {
    font-size: 16px;
    margin-bottom: 30px;
  }
  .under .under_box01_detail {
    width: calc(100%/2);
  }
  .under .under_box01_detail:nth-child(2n+1) {
    border-left: none !important;
  }
  .under .under_box01_detail {
    padding: 2.5vw 1.5vw;
    width: 50% !important;
    border-bottom: 1px dashed #1b2543 !important;
    border-left: 1px dashed #1b2543 !important;
  }
  .under .under_box01_detail:nth-last-child(-n+2) {
    border-bottom: none !important;
  }
  .under .under_box01_detail span.number {
    font-size: 280%;
    padding: 0 2px;
  }
  .under .under_box01_list li {
    width: 50%;
    margin: 0 auto;
  }
  .under .under_box01_detail dd {
    font-size: 4vw;
  }
  .under .under_box01_detail span.number {
    font-size: 10vw;
    display: inline-block;
  }
  .ttl_in_list_img {
    font-size: 22px;
  }
  .under .under_box01_detail {
    height: 280px;
    justify-content: center;
  }
  .under #content .under_box01_detail dd {
    margin-top: 0;
    justify-content: center;
  }
  .under .under_box01_detail dt {
    margin-top: 0px;
  }
  .under .under_box01_detail {
    height: 200px;
  }
  .under #content .under_box01_detail dd.min_h63 {
    min-height: 40px;
  }
  .under #main .right, .under #main .left {
    text-align: center;
    margin: 0 auto 20px !important;
  }
  .more_box_in_block {
    flex-direction: column;
  }
  .section-in-block.box_2item {
    margin-right: 0px;
  }
  #top_info {
    height: 200px;
    background-position-x: center;
  }
  .under .logo_link img:last-child {
    display: none;
  }
  .item-col-content .images {
    text-align: center;
    width: 100%;
  }
  .under .under_box01_detail.pd-t {
    padding-top: 10px;
  }
  .tb-fixed-layout .ud-tb .images {
    text-align: center;
  }
  .tb-fixed-layout {
    overflow: auto;
  }
  .tb-fixed-layout .ud-tb td.ex_fullsize {
    width: calc(100% / 3) !important;
  }
  .under .frame-list li::before {
    left: 2px;
    top: 10px;
  }
  .list-col.col-2 .item-col {
    width: calc((100% / 1) - 7.5px);
  }
  .ud-tb tr {
    border-top: 1px solid #fff;
  }
  .ud-tb tbody tr:nth-child(even) th {
    border-bottom: 2px solid #fff;
  }
  .ud-tb tbody tr:nth-child(even) td {
    border-bottom: 1px solid #fff;
  }
  .ud-tb.box_tab_center tbody td {
    width: 100%;
    text-align: center;
  }
  .ud-frame-tb.box_tab_center .ud-tb tbody tr td {
    text-align: center;
  }
  .under .frame-list ul.ind_margin_bottom {
    margin-bottom: 15px;
  }
  .under .frame-list ul li .list-ttl {
    font-size: 18px;
  }
  .ud-tb.ud_wrap tbody tr {
    display: flex;
    flex-wrap: wrap;
  }
  .ud-tb.ud_wrap tbody tr th {
    width: 100% !important;
  }
  .ud_font_s {
    font-size: 140%;
  }
  .section-in-block.tbig p {
    font-size: 140%;
  }
  .anchor-link.ac-3-item.cus01 {
    margin-bottom: 30px;
  }
  .mb50 {
    margin-bottom: 30px !important;
  }
  #field2 .box_beaf {}
  #field2 .box_beaf dl {
    width: calc(100% / 2 - 30px);
  }
  #field2 .box_beaf dt .boximg {
    width: 100%;
    height: 32vw;
  }
  #field2 .box_beaf .before dt:after {
    width: 32px;
    height: 32px;
    background: url("../images/arrow.png") no-repeat 0 0 / 100%;
    right: -48px;
  }
  #field2 .slider_img .slick-list {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
  #field2 .slider_img .slick-prev {
    left: -10px;
  }
  #field2 .slider_img .slick-next {
    right: -10px;
  }
  #field2 .slider_img .slick-slide {
    margin: 0 5px;
  }
  #wp-content-editor-container .slider-for {
    background: #ededed;
  }
  #wp-content-editor-container .slider-for .slick-slide {
    height: 70vw;
    min-height: 300px;
  }
  #wp-content-editor-container .slider-nav .slick-slide {
    height: 13vw;
  }
}
/* end screen-max: 750px */
@media screen and (max-width: 640px) {
  .anchor-link.ac-3-item a {
    width: 50%;
  }
  .under .frame-list ul.ind_margin_bottom {
    margin-bottom: 14px;
  }
  .under .frame-list li::before {
    top: 10px;
  }
  #field2 .box_beaf dt .boximg {
    height: 31vw;
  }
}
/* end screen-max:640px */
@media screen and (max-width: 560px) {
  /* #top_info {
        background-position-x: -45vw;
    } */
  .anchor-link.ac-3-item a {
    width: 70%;
    font-size: 14px;
    padding: 10px 9%;
  }
  .under #content .under_box01_detail dd {
    font-size: 16px;
  }
  .under .under_box01_detail {
    height: 150px;
  }
  .section-in-block.tbig p {
    font-size: 18px;
  }
  #field2 .box_beaf {
    justify-content: center;
  }
  #field2 .box_beaf dl {
    width: 100%;
    position: relative
  }
  #field2 .box_beaf dl dt .boximg {
    width: 100%;
    height: 68vw;
    max-width: 300px;
    max-height: 225px;
  }
  #field2 .box_beaf .before dt:after {
    display: none
  }
  #field2 .box_beaf .before:after {
    content: '';
    width: 64px;
    height: 64px;
    background: url("../images/arrow2.png") no-repeat 0 0;
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    bottom: -70px;
  }
  #field2 .box_beaf .before {
    margin-bottom: 90px;
  }
}
/* end screen-max:560px */
@media screen and (max-width: 520px) {
  .ttl_in_list_img {
    font-size: 18px;
  }
  .pickup-tt {
    font-size: 30px;
  }
  .under .under_box01_detail dt {
    font-size: 18px;
  }
  #field2 .ud-tb th, #field2 .ud-tb td {
    width: 100%;
    display: block
  }
}
/* end screen-max:520px */
@media screen and (max-width: 475px) {
  .tb-2cl tbody td, .tb-3cl tbody td {
    padding: 15px;
  }
  .pickup-tt {
    font-size: 26px;
  }
  .tb-fixed-layout .ud-tb td.ex_fullsize {
    padding: 20px;
  }
  #topic_path {
    margin-bottom: 0;
  }
  .list-img.list-4-img p {
    width: calc((100% / 2) - 7.5px);
  }
  .bnr-link {
    width: 100%;
  }
  .under #main .blog-section .image-r, .under #main .blog-section .image-l {
    height: 250px;
  }
  .under #content .under_box01_detail dd {
    font-size: 16px;
  }
  .under #content .under_box01_detail dd.min_h63 {
    min-height: 40px;
  }
  .txt_box_detail {
    font-size: 16px;
  }
  .under .under_box01_detail {
    height: 140px;
  }
  .under .under_box01_detail dt {
    font-size: 3.5vw;
  }
  .under .frame-list ul li .list-ttl {
    margin-bottom: 7px;
  }
  .section-in-block.tbig p {
    font-size: 14px;
  }
  .ud-frame-tb table td {
    padding-left: 15px;
  }
  .ud-frame-tb thead th {
    font-size: 12px;
  }
  .step-content p {
    font-size: 14px;
  }
}
/* end screen-max:475px */
@media screen and (max-width: 425px) {
  .pickup-tt {
    font-size: 24px;
  }
  .anchor-link.ac-3-item a {
    width: 80%;
    font-size: 14px;
    padding: 10px 9%;
  }
  .under .under_box01_detail {
    height: 140px;
  }
  .section-in-block .anchor-link a {
    padding: 18px 40px 17px 40px;
    font-size: 16px;
  }
  .anchor-link a::after {
    right: 8px;
  }
  .under h2 {
    font-size: 22px;
  }
  .section-in-block .sp.note {
    font-size: 3.6vw;
  }
  .section-in-block .und_minuscule {
    font-size: 17px;
  }
  .under #content .under_box01_detail dd {
    font-size: 14px;
  }
}
/* end screen-max:425px */
@media screen and (max-width: 375px) {
  .drop375 {
    display: block;
  }
  .under .frame-list ul li .list-ttl {
    margin-bottom: 5px;
  }
  .frame-step .step-item:not(:last-child) {
    margin-bottom: 50px;
  }
  .frame-step .step-item:not(:last-child)::before {
    border-width: 30px 60px 0 60px;
    top: calc(100% + 11px);
  }
  .under #content .under_box01_detail dd.min_h63 {
    font-size: 10px;
  }
  .list-col.col-2 .item-col, .list-col.col-3 .item-col {
    width: 100%;
  }
  .h3-en {
    font-size: 40px;
  }
  .h3-jp {
    font-size: 19px;
  }
  .under h4 {
    font-size: 20px;
  }
  .under h5 {
    font-size: 18px;
  }
  .anchor-link.ac-3-item a {
    width: 100%;
    font-size: 14px;
  }
  .bnr-link {
    font-size: 16px;
  }
  .bnr-call {
    font-size: 20px;
  }
  .bnr-mail span::before {
    top: 0;
  }
  .pickup-tt {
    font-size: 22px;
  }
  .under .under_box01_small {
    font-size: 10px;
  }
  .under #content .under_box01_detail dd {
    font-size: 14px;
  }
  .under .under_box01_detail span.number {
    font-size: 8vw;
  }
  .under .under_box01_detail.pd-t {
    /* padding-top: 30px; */
    padding-top: 10px;
  }
  .under #content .under_box01_detail dd.min_h63 {
    min-height: auto;
  }
  .under .under_box01_detail dd > span {
    font-size: 70%;
  }
  .under h2 {
    font-size: 22px;
    padding: 8px 0px;
  }
  #top_info {
    height: 150px;
  }
  .under .under_box01_detail {
    height: 100px;
  }
  .und_minuscule {
    font-size: 16px;
  }
  .ud-tb tbody th.no-wrap {
    border-bottom: 2px solid #fff;
  }
  .ud-frame-tb.box_tab_center .ud-tb tbody th {
    border-bottom: 2px solid #fff;
  }
  .under #main .und_btn_invisalign {
    width: 100%;
    font-size: 20px;
  }
}
/* end screen-max:375px */
@media screen and (max-width: 320px) {
  .under h5.und_minuscule {
    font-size: 14px;
  }
  .under h4.und_minuscule {
    font-size: 18px;
  }
  .pickup-tt {
    font-size: 20px;
  }
  .under #content .under_box01_detail dd {
    font-size: 12px;
  }
}
/* end screen-max:320px */
/*============================= HACK CSS =============================*/
/* IE */
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {}
/* EGDE */
@supports (-ms-ime-align:auto) {}
/* FIREFOX */
@-moz-document url-prefix() {}
/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution:.001dpcm) {}