/* 共通 */
.pc_width {
  min-width: 1200px;
}

.sp_display {
  display: none;
}

.fc_w {
  color: #fff;
}

/* header */
#slidetoggle_menu {
  display: none;
}

.Breadcrumb {
  min-width: 1200px;
}

.contact_button {
  margin: 0 30px;
  position: relative;
  top: -12px;
  z-index: 19;
}

#float_l {
  float: left;
}

#float_r {
  float: right;
  margin-right: 20px;
}

/* footer */
.footer_left {
  overflow: hidden;
  margin-top: 40px;
}

.sns_icon {
  display: inline-block;
}

.footer_link {
  background-color: #fff;
  border: 1px solid #dcdcdc;
  display: block;
  padding: 21px 0;
  text-align: center;
  font-weight: bold;
}
.footer_link.two_line {
  padding: 10px 0;
}

@media (max-width: 428px) {
  /* ハンバーガー */
  #slidetoggle_button {
    position: absolute;
    z-index: 3;
    right: 13px;
    width: 11%;
    height: 38px;
    cursor: pointer;
    text-align: center;
  }
  #slidetoggle_button span {
    display: block;
    position: absolute;
    width: 34px;
    height: 3px;
    left: 6px;
    background: #384692;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  #slidetoggle_button span:nth-child(1) {
    top: 10px;
  }
  #slidetoggle_button span:nth-child(2) {
    top: 20px;
  }
  #slidetoggle_button span:nth-child(3) {
    top: 30px;
  }

  #slidetoggle_button.active span:nth-child(1) {
    top: 16px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  #slidetoggle_button.active span:nth-child(2),
  #slidetoggle_button.active span:nth-child(3) {
    top: 16px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #slidetoggle_menu {
    background: #fff;
  }

  #slidetoggle_menu .slide_ul {
    list-style: none;
  }

  #slidetoggle_menu .slide_list {
    border-bottom: 1px solid #dcdcdc;
    position: relative;
  }

  #slidetoggle_menu .slide_link {
    color: black;
    cursor: pointer;
    padding: 10px 15px;
  }

  .head_arrow_right::after {
    content: "\f054";
    color: #dcdcdc;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 17px;
    top: 13px;
    position: absolute;
  }

  .arrow_right::after {
    content: "\f054";
    color: #dcdcdc;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 3px;
    top: 13px;
    position: absolute;
  }

  .head_arrow_down::after {
    content: "\f078";
    color: #dcdcdc;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 15px;
    top: 13px;
    position: absolute;
  }

  .arrow_down::after {
    content: "\f078";
    color: #dcdcdc;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 0;
    top: 13px;
    position: absolute;
  }

  .collapse {
    display: none;
  }

  .lower_hierarchy {
    background: #384692;
    padding: 10px 0 15px;
    padding-left: 30px;
    padding-right: 15px;
  }

  .second_level {
    border-top: 1px solid #253174;
    border-bottom: 1px solid #253174;
    position: relative;
  }

  .second_level2 {
    border-bottom: 1px solid #253174;
    position: relative;
  }

  .second_level_link {
    display: block;
    padding: 10px 0;
  }

  .third_level {
    list-style: none;
    padding-left: 30px;
  }

  .third_level_list {
    border-bottom: 1px solid #253174;
    position: relative;
  }

  .third_level_link {
    display: block;
    padding: 10px 0;
  }

  /* 共通 */
  .pc_display {
    display: none;
  }

  .pc_width {
    min-width: inherit;
  }

  .sp_display {
    display: block;
  }

  /* header */
  #header {
    height: inherit;
    min-width: inherit;
    padding: 10px 3.6vw;
  }

  #float_l {
    float: inherit;
    width: 51%;
  }

  #float_r {
    float: inherit;
  }

  .sp_flex {
    align-items: flex-end;
    display: flex;
  }

  #wrapper #header .left .title {
    font-size: 3vw;
    margin: 0;
  }

  #wrapper #header .left .logo {
    margin: 10px 0 0;
  }

  #wrapper #header .left .logo a {
    display: inline-block;
    width: 60%;
  }

  #wrapper #header .left .logo span {
    font-size: 3vw;
  }

  #wrapper #header .right .btn {
    font-size: 3vw;
    height: inherit;
    line-height: inherit;
    margin: 0;
    padding: 10px 15px;
    position: inherit;
    width: inherit;
  }

  #wrapper .menus-block {
    display: none;
  }

  .Breadcrumb {
    min-width: inherit;
    width: 100%;
  }

  /* footer */
  .phone_box {
    align-items: center;
    background-color: #fff;
    display: flex;
    padding: 0 3.6vw;
    z-index: 1;
  }

  .entry-block {
    padding: 60px 0;
  }

  .entry-block .item .btn {
    width: 100%;
  }

  .w-con {
    width: inherit;
    /* padding: 0 3.6vw; */
  }

  .menu_box {
    padding-bottom: 50px;
  }

  .w-con .item {
    width: 100%;
  }

  .contact_box {
    padding: 0 20px;
  }

  .footer-menus-block {
    padding: inherit;
    padding-top: 25px;
  }

  .footer-menus-block .logo {
    margin: 0 auto;
    top: -35px;
    width: 35%;
  }

  .line-menus {
    padding-bottom: 20px;
  }

  .line-menus .line-menu {
    width: 100%;
  }

  .footer-menus-block .line-menus > .line-menu:not(:first-child) {
    margin: 0;
    margin-top: 10px;
  }

  .footer-menus-block .line-menus > .line-menu.mt_30 {
    margin-top: 30px;
  }

  .line-menus .line-menu .menu-head {
    height: inherit;
    line-height: inherit;
    width: 100%;
    padding: 15px 0;
    position: relative;
  }

  .line-menus .line-menu .menu-link-box {
    padding: 0;
  }

  .line-menus .line-menu .menu-head .menu-head-link {
    display: block;
    padding: 15px 0;
  }

  .line-menus .line-menu .menu {
    display: none;
  }

  .sp_menu-head_d::after {
    content: "\f078";
    color: #dcdcdc;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 10px;
    top: 20px;
    position: absolute;
  }

  .sp_menu-head_r::after {
    content: "\f054";
    color: #dcdcdc;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 12px;
    top: 20px;
    position: absolute;
  }

  .footer_left {
    margin-top: 0;
  }

  .mt_10 {
    margin-top: 10px;
  }

  .footer {
    line-height: inherit;
    height: inherit;
    padding: 25px 0;
  }

  .footer .w-con .inline {
    display: block;
    text-align: center;
  }

  .footer .w-con > span:not(:first-child) {
    margin: 0;
  }

  .footer .w-con .pc_display {
    display: none;
  }

  .sns_icon.sp_display {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    padding-bottom: 20px;
  }

  .sns_left {
    margin-right: 20px;
  }

  .copyright {
    font-size: 3vw;
    height: inherit;
    line-height: inherit;
    padding: 20px;
  }

  .footer_menu {
    display: none;
  }

  .footer_menu_list {
    background: #f4f4f4;
    border-left: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-right: 1px solid #dcdcdc;
    position: relative;
  }

  .footer_menu_link {
    color: black;
    display: block;
    padding: 15px 0;
    text-align: center;
  }

  .empty-block {
    height: 90px;
  }
}
