@media screen and (max-width: 1199px) {
  html {
    font-size: 15px;
  }

  #logo {
    height: 65%;
  }

  nav > ul > li {
    margin-left: 3rem;
  }

  /* ----------     cadcam     ---------- */
  #cad_br {
    display: none;
  }

  /* ----------     ios     ---------- */
  .process_imgbox {
    height: 20rem;
  }

  /* ----------     work experience     ---------- */
  .comment3 {
    right: 40%;
  }

  .comment4 {
    left: 70%;
  }

  .comment5 {
    right: 30%;
  }

  .comment7 {
    left: 80%;
  }

  .imgbox1 {
    width: 30%;
  }

  .imgbox2 {
    width: 28%;
    top: 16rem;
    left: 4%;
  }

  .vid1 {
    width: 40%;
    top: 33rem;
  }

  .imgbox4 {
    width: 30%;
    top: 52rem;
    right: 20%;
  }

  .imgbox5 {
    width: 30%;
    top: 72rem;
  }

  .vid2 {
    width: 32%;
    right: 2%;
  }

  .imgbox7 {
    width: 25%;
  }
}

@media screen and (max-width: 1059px) {
  .scroll_off {
    overflow: hidden;
  }

  nav {
    display: none;
  }

  #hamburger_menu {
    display: block;
  }

  #menu_btn {
    cursor: pointer;

    position: fixed;
    top: 1.5rem;
    right: calc(2rem - calc(100vw - 100%));
    height: 3.5rem;
    width: 3.5rem;
    border-radius: 50%;
    border: solid 1px var(--border-color);
    background-color: #ffffff;

    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100;
  }

  #menu_btn span,
  #menu_btn span:before,
  #menu_btn span:after {
    content: "";
    display: block;
    height: 1px;
    width: 1.5rem;
    background-color: var(--border-color);
    position: absolute;
  }

  #menu_btn span:before {
    bottom: 0.5rem;
  }

  #menu_btn span:after {
    top: 0.5rem;
  }

  #menu_btn_check:checked ~ #menu_btn {
    right: 2rem;
  }

  #menu_btn_check:checked ~ #menu_btn span {
    background-color: rgba(255, 255, 255, 0);
  }

  #menu_btn_check:checked ~ #menu_btn span::before {
    bottom: 0;
    transform: rotate(45deg);
  }

  #menu_btn_check:checked ~ #menu_btn span::after {
    top: 0;
    transform: rotate(-45deg);
  }

  #menu_btn_check {
    display: none;
  }

  #menu_content_container {
    display: flex;
    flex-direction: column;
  }

  #menu_content {
    width: 100%;
    min-width: 280px;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 10;
    background-color: #fff;
    padding: 10rem 5rem 5rem;

    overflow: auto;

    transition: left 0.5s;
  }

  #menu_btn_check:checked ~ #menu_content {
    left: 0;
  }

  .hamburger_links {
    font-size: 1.6rem;
    margin-bottom: 2.5rem;
  }

  .hamburger_wulinks {
    font-size: 0.9em;
    padding-left: 3.5rem;
  }

  .hamburger_wulinks li {
    margin-top: 1.2rem;
  }

  .nv_lecture {
    position: relative;
    padding-left: 1rem;
  }

  .nv_lecture:before {
    content: "";
    width: 0.3rem;
    height: 0.3rem;
    border-radius: 50%;
    background: rgba(51, 51, 51, 0.5);
    position: absolute;
    top: 50%;
    left: -1.2rem;
    transform: translateY(-50%);
  }

  .hamburger_wulinks .btn_dot:before {
    left: -1.2rem;
  }

  .hamburger_sns {
    display: flex;
    flex-direction: column;
    align-items: flex-end;

    margin-top: 2.5rem;
  }

  .hamburger_sns li {
    margin: 0 1rem;
  }

  .hamburger_sns p {
    font-size: 0.75rem;
    color: rgba(51, 51, 51, 0.5);
    margin-top: 1rem;
  }

  .hamburger_sns i {
    color: #333333;
  }

  .hamburger_sns .yt_icon:hover {
    color: #da1725;
  }

  #fl_container li {
    margin-left: 4rem;
  }

  .contact_intro {
    padding: 1rem 4rem 1rem 0;
  }

  /* ----------     work experience     ---------- */
  #we_contents_imgbox {
    width: 50%;
    height: 20rem;
  }

  .comment2 {
    right: -30%;
  }

  .comment3 {
    right: 20%;
    margin-top: 20rem;
  }

  .comment4 {
    left: 60%;
  }

  .comment5 {
    right: 10%;
  }

  .comment7 {
    left: 60%;
  }

  .vid1 {
    top: 40rem;
  }

  .imgbox3 {
    top: 45rem;
  }

  .imgbox4 {
    top: 57rem;
    right: 12%;
  }

  .imgbox5 {
    top: 75rem;
  }

  .imgbox6 {
    width: 35%;
    top: 118rem;
  }

  .imgbox7 {
    top: 135rem;
  }

  .vid3 {
    top: 145rem;
    left: 10%;
  }

  /* ----------     ios     ---------- */
  .process_imgbox {
    height: 18rem;
  }
}

@media screen and (max-width: 909px) {
  html {
    font-size: 14px;
  }

  .subtitle h2 {
    margin-bottom: 0;
  }

  #up_next,
  #feature_linklists {
    width: 50%;
  }

  /* ----------     ios     ---------- */
  #maker_container {
    padding: 3rem;
  }

  .scanner_name {
    margin: 1rem 2rem 0 2rem;
  }

  .process_texts p {
    line-height: 0rem;
  }

  .process_imgbox {
    height: 15rem;
  }

  /* ↓インプラント模型写真ができたら以下使用 */
  /* .implant {
    align-items: flex-end;
  }

  .implant_subtitle {
    margin-bottom: 3.5rem;
  }

  #implant_imgbox {
    width: 50%;
    height: 17rem;
  } */

  /* ----------     work experience     ---------- */
  #we_contents_imgbox {
    height: 22rem;
  }
}

@media screen and (max-width: 739px) {
  html {
    font-size: 13px;
  }

  .container,
  .feature_video_container {
    width: 90%;
  }

  .jpns_title {
    margin-bottom: 1rem;
  }

  #feature_links {
    flex-direction: column;
    height: inherit;
  }

  #nextpage_link,
  #feature_linklists {
    width: 100%;
  }

  #nextpage_link {
    height: 25rem;
  }

  #un_texts {
    margin-top: 7.5rem;
  }

  #feature_linklists {
    padding: 3rem 0;
  }

  #fl_container ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  #fl_container li {
    width: 38%;
  }

  #contact {
    padding: 6rem 0 3rem;
  }

  .contact_container {
    width: 80%;
    flex-direction: column;
    text-align: center;
  }

  .contact_intro {
    padding: 0 0 3rem;
  }

  #contact_br {
    display: block;
  }

  .contact_info:before {
    width: 100%;
    height: 1px;
  }

  .ci_container {
    padding: 3rem 0;
  }

  .contact_btn,
  #phone_number {
    padding-top: 2rem;
  }

  .contact_icon p {
    padding-top: 1rem;
  }

  .footer_container {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .sns_icons {
    margin-top: 2.5rem;
  }

  /* ----------     cadcam     ---------- */
  .cad_subtitle {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 2rem;
  }

  .cad_subtitle::before {
    line-height: 7rem;

    position: absolute;
    left: -4rem;
    bottom: 0.5rem;
  }

  .st {
    position: static;
  }

  .st3 h2 {
    padding: 0;
  }

  /* ----------     work experience     ---------- */
  #we_contents_container {
    flex-direction: column;
    position: relative;
  }

  #we_contents_imgbox,
  #we_contents_texts {
    width: 100%;
  }

  #we_contents_imgbox {
    height: 25rem;
    position: absolute;
    top: 9.3rem;
    left: 0;
  }

  #we_contents_texts p {
    margin-top: 32rem;
  }
}

@media screen and (max-width: 649px) {
  html {
    font-size: 12px;
  }

  .jpns_title {
    margin-bottom: 0;
  }

  .eng_title {
    font-size: 5.5em;
    line-height: 7rem;
  }

  #fl_container li:nth-child(even) {
    margin-left: 0;
  }

  #contact_texts {
    text-align: left;
    text-align: justify;
  }

  #contact_br {
    display: none;
  }

  /* ----------     cadcam     ---------- */
  .cad_process {
    padding: 5rem 0 3rem;
  }

  /* ----------     work experience     ---------- */
  .comment1 {
    margin-top: 0;
  }

  .comment2 {
    right: -13%;
  }

  .comment3 {
    right: 5%;
  }

  .comment4 {
    left: 44%;
  }

  .comment5 {
    right: 0;
  }

  .comment6 {
    left: 25%;
    margin-top: 12rem;
  }

  .comment7 {
    left: 45%;
  }

  .imgbox1 {
    width: 34%;
    top: 8rem;
  }

  .imgbox2 {
    width: 30%;
    top: 12rem;
  }

  .vid1 {
    top: 38rem;
  }

  .imgbox3 {
    width: 26%;
    top: 42rem;
    right: 10%;
  }

  .imgbox4 {
    width: 30%;
    top: 61rem;
    right: 2%;
  }

  .imgbox5 {
    width: 32%;
    top: 70rem;
    left: 10%;
  }

  .vid2 {
    top: 83rem;
    right: 13%;
  }

  .imgbox6 {
    top: 110rem;
  }

  .imgbox7 {
    width: 34%;
    top: 132rem;
  }

  .vid3 {
    width: 40%;
    top: 145rem;
    left: 5%;
  }
}

@media screen and (max-width: 564px) {
  .p1 {
    font-size: 1.7rem;
  }

  .bottom {
    margin-top: 6rem;
  }

  .p2 {
    font-size: 1.2rem;
  }

  #un_intro {
    font-size: 2.5rem;
    margin-right: 1rem;
  }

  .fa-arrow-right-long {
    font-size: 1.7rem;
  }

  #up_next:hover #un_title {
    margin-right: 2rem;
  }

  #fl_container {
    font-size: 2rem;
  }

  #fl_container li {
    margin-left: 0;
  }

  #feature_contents {
    margin: 12rem 0 7rem;
  }

  /* ----------     ios     ---------- */
  #maker_container {
    padding: 3rem 2rem;
  }

  .scanner_name {
    margin: 1rem 1rem 0 1rem;
  }

  .ios_process {
    flex-direction: column;
    position: relative;
    top: -1.5rem;
    left: 0;
  }

  .process_contents {
    width: 100%;
    margin-top: 1.5rem;
  }

  .process_imgbox {
    width: 100%;
    height: 25rem;
  }

  #lab {
    margin-top: 2rem;
  }

  #lab li:nth-child(3) img {
    animation-delay: 0.3s;
  }

  #lab li:nth-child(4) img {
    animation-delay: 0.4s;
  }

  .implant {
    padding-bottom: 3rem;
  }
  /* ↓インプラント模型写真ができたら以下使用 */
  /* .implant_subtitle {
    text-align: center;
  }

  #implant_contents {
    flex-direction: column-reverse;
  }

  #implant_contents p {
    width: 100%;
    margin-top: 3rem;
  }

  #implant_imgbox {
    position: static;
    width: 100%;
    height: 25rem;
  } */
}

@media screen and (max-width: 479px) {
  #fl_container {
    font-size: 2.4rem;
  }

  #fl_container li {
    width: 70%;
  }

  /* ----------     ios     ---------- */
  #maker_container {
    padding: 3rem 1rem;
  }

  #maker_list {
    margin-top: 2.5rem;
  }

  /* ----------     work experience     ---------- */
  #we_contents_imgbox {
    height: 18rem;
  }

  #we_contents_texts p {
    margin-top: 25rem;
  }

  .comment1 {
    margin-top: 0;
    left: 10%;
  }

  .comment2 {
    right: -6%;
  }

  .comment3 {
    right: -5%;
  }

  .comment4 {
    left: 33%;
  }

  .comment5 {
    right: -2%;
  }

  .comment6 {
    left: 10%;
  }

  .comment7 {
    left: 40%;
  }

  .imgbox1 {
    width: 38%;
    top: 10rem;
  }

  .imgbox2 {
    width: 32%;
    top: 13rem;
  }

  .vid1 {
    width: 42%;
    top: 35rem;
  }

  .imgbox4 {
    width: 38%;
    top: 42rem;
    right: 10%;
  }

  .imgbox3 {
    width: 30%;
    top: 66rem;
    left: 3%;
  }

  .imgbox5 {
    width: 42%;
    top: 80rem;
    left: 8%;
  }

  .vid2 {
    width: 35%;
    top: 85rem;
    right: 10%;
  }

  .imgbox6 {
    width: 40%;
    top: 109rem;
    left: 23%;
  }

  .imgbox7 {
    width: 38%;
  }

  .vid3 {
    width: 55%;
    top: 142rem;
  }

  .pls_contact {
    text-align: justify;
  }

  #plsContact_br {
    display: none;
  }
}

@media screen and (max-width: 430px) {
  .hamburger_sns {
    align-items: flex-start;
  }

  .jpns_title {
    font-size: 1.15em;
  }

  .eng_title {
    font-size: 4em;
    line-height: 4.5rem;
  }

  .feature_photos ul {
    flex-direction: column;
  }

  .feature_photos li {
    width: 100%;
    height: 20rem;
    margin-bottom: 2rem;
  }

  .feature_video_container {
    width: 100%;
  }

  .feature_video_container {
    margin-top: 0;
  }

  #np_container {
    letter-spacing: 0.05rem;
    width: 80%;
  }

  /* ----------     ios     ---------- */
  #maker_list {
    display: block;
  }

  .scanner_name {
    margin: 1rem 0 0;
  }

  #maker_list p {
    text-align: center;
  }

  /* ----------     work experience     ---------- */
  #we_contents_container,
  #comments_container {
    margin-top: 8rem;
  }

  .comments_br {
    display: none;
  }

  .comment1 {
    width: 22rem;
  }

  .comment2 {
    width: 28rem;
    left: 1%;
  }

  .comment3 {
    width: 24rem;
    margin-top: 10rem;
  }

  .comment4 {
    left: 19%;
    margin-top: 8rem;
  }

  .comment5 {
    width: 28rem;
    right: 2%;
  }

  .comment6 {
    width: 20rem;
    left: 25%;
  }

  .comment7 {
    left: 20%;
    margin-top: 20rem;
  }

  .imgbox1 {
    width: 44%;
    top: 13rem;
  }

  .imgbox2 {
    width: 38%;
    top: 16rem;
  }

  .vid1 {
    width: 48%;
    top: 37rem;
    left: 2%;
  }

  .imgbox3 {
    width: 35%;
    top: 41rem;
    left: 60%;
  }

  .imgbox4 {
    width: 14rem;
    top: 63rem;
    left: 20%;
  }

  .imgbox5 {
    width: 40%;
    top: 80rem;
    left: 5%;
  }

  .vid2 {
    width: 48%;
    top: 85rem;
    right: 5%;
  }

  .imgbox6 {
    width: 15rem;
    top: 112rem;
    left: 5%;
  }

  .imgbox7 {
    width: 42%;
    top: 134rem;
    right: 3%;
  }

  .vid3 {
    left: 2%;
  }
}

@media screen and (max-width: 315px) {
  html {
    min-width: 280px;
  }

  #np_container {
    width: 88%;
  }

  #nextpage_link:hover #un_title {
    margin-right: 2rem;
  }

  #fl_container li {
    width: 80%;
  }

  .comment5 {
    left: 0.5%;
  }
}
