body {
  background-color: #000;
  font-family: "Roboto", sans-serif;
  max-width: 100%;
  overflow-x: hidden;
}

.noscroll {
  overflow: hidden;
}

.mail_wrap {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 2;
}
.mail_wrap .mail_fixed {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
.mail_wrap .mail_fixed .mail_img {
  width: 2vw;
  padding: 1.5vw;
  background-color: #0099ff;
  opacity: 0;
  transition: 0.3s;
}
.mail_wrap .mail_fixed .mail_img img {
  max-width: 100%;
}

.mail_visible {
  opacity: 1 !important;
}

.header_top_fixed {
  position: fixed;
  top: -16vh;
  left: 0;
  z-index: 10;
  background-color: #000;
  width: 100%;
  transition: 0.3s;
}
.header_top_fixed .header_wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 2vh 5vw;
}
.header_top_fixed .header_wrap .left_wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.header_top_fixed .header_wrap .left_wrap .logo_wrap {
  width: 7.5vw;
}
.header_top_fixed .header_wrap .left_wrap .logo_wrap img {
  max-width: 100%;
}
.header_top_fixed .header_wrap .left_wrap .slogan_wrap {
  margin-left: 1vw;
}
.header_top_fixed .header_wrap .left_wrap .slogan_wrap .slogan {
  color: #fff;
  font-size: 0.9vw;
  line-height: 1;
  font-weight: lighter;
}
.header_top_fixed .header_wrap .right_wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.header_top_fixed .header_wrap .right_wrap .menu {
  padding-left: 2.5vw;
}
.header_top_fixed .header_wrap .right_wrap .menu a {
  text-decoration: none;
  color: #fff;
  font-size: 0.9vw;
}
.header_top_fixed .header_wrap .right_wrap .contact_button {
  border: 1px solid rgba(255, 255, 255, 0.5);
  margin-left: 2.5vw;
  transition: 0.3s;
}
.header_top_fixed .header_wrap .right_wrap .contact_button a {
  display: inline-block;
  text-decoration: none;
  padding: 1.75vh 3.5vw;
  color: #fff;
  font-size: 1vw;
  font-weight: 400;
}
.header_top_fixed .header_wrap .right_wrap .contact_button:hover {
  background-color: #0099ff;
  border: 1px solid #0099ff;
}
.header_top_fixed .header_wrap .right_wrap_sp {
  display: none;
}
.header_top_fixed .sp_menu_2 {
  display: none;
}

.header_active {
  top: 0;
}

.top_section {
  position: relative;
  height: 50vh;
}
.top_section .top_visual {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.top_section .visual_desc {
  position: absolute;
  padding: 21vh 0 0 12vw;
}
.top_section .visual_desc .page_title {
  padding: 0vh 0 13vh;
}
.top_section .visual_desc .page_title p {
  color: #fff;
  font-family: "Rozha One", serif;
  font-size: 6vw;
}
.top_section .visual_desc .breadcrumb {
  font-size: 0.9vw;
  color: #fff;
}
.top_section .visual_desc .breadcrumb a {
  text-decoration: none;
  color: #fff;
}
.top_section .visual_desc .breadcrumb .separator {
  padding: 0 2vw;
  color: #707070;
}
.top_section #bg_1 {
  background-image: url("../img/bg_1.jpg");
  background-size: cover;
  background-position: bottom;
  background-repeat: no-repeat;
}
.top_section #bg_2 {
  background-image: url("../img/bg_2.jpg");
  background-size: cover;
  background-position: initial;
  background-repeat: no-repeat;
}
.top_section #bg_3 {
  background-image: url("../img/bg_3.jpg");
  background-size: cover;
  background-position: initial;
  background-repeat: no-repeat;
}
.top_section .top_header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 5vh 5vw 15vh;
  position: relative;
  z-index: 3;
}
.top_section .top_header .left_wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.top_section .top_header .left_wrap .logo_wrap {
  width: 7.5vw;
}
.top_section .top_header .left_wrap .logo_wrap img {
  max-width: 100%;
}
.top_section .top_header .left_wrap .slogan_wrap {
  margin-left: 1vw;
}
.top_section .top_header .left_wrap .slogan_wrap .slogan {
  color: #fff;
  font-size: 0.9vw;
  line-height: 1;
  font-weight: lighter;
  position: relative;
  bottom: 2px;
}
.top_section .top_header .right_wrap {
  display: block;
  display: flex;
  flex-direction: row;
  align-items: center;
}
.top_section .top_header .right_wrap .menu {
  padding-left: 2.5vw;
}
.top_section .top_header .right_wrap .menu a {
  text-decoration: none;
  color: #fff;
  font-size: 0.9vw;
}
.top_section .top_header .right_wrap .contact_button {
  border: 1px solid rgba(255, 255, 255, 0.5);
  margin-left: 2.5vw;
  transition: 0.3s;
}
.top_section .top_header .right_wrap .contact_button a {
  display: inline-block;
  text-decoration: none;
  padding: 1.75vh 3.5vw;
  color: #fff;
  font-size: 1vw;
}
.top_section .top_header .right_wrap .contact_button:hover {
  background-color: #0099ff;
  border: 1px solid #0099ff;
}
.top_section .top_header .right_wrap_sp {
  display: none;
}
.top_section .sp_menu_1 {
  display: none;
}

footer {
  position: relative;
  top: 0vh;
  height: 100vh;
  background-color: #1C1C1C;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
footer .footer_top_part {
  display: flex;
  flex-direction: column;
  padding: 22vh 15vw 0;
}
footer .footer_top_part .logo_wrap {
  display: flex;
  flex-direction: row;
  padding-bottom: 15vh;
}
footer .footer_top_part .logo_wrap .logo_part {
  width: 10vw;
  margin-right: 5vw;
}
footer .footer_top_part .logo_wrap .logo_part img {
  max-width: 100%;
}
footer .footer_top_part .logo_wrap .visa_logo {
  width: 80px;
}
footer .footer_top_part .logo_wrap .visa_logo img {
  max-width: 100%;
}
footer .footer_top_part .link_part {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 70%;
}
footer .footer_top_part .link_part .link {
  width: 30%;
  margin-right: 9vw;
  margin-bottom: 8vh;
  color: #fff;
  text-decoration: none;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #1C1C1C;
  transition: 0.3s;
}
footer .footer_top_part .link_part .link p {
  font-weight: 500;
  font-size: 28px;
}
footer .footer_top_part .link_part .link .arrow_img {
  margin-left: 1vw;
  width: 1.25vw;
}
footer .footer_top_part .link_part .link .arrow_img img {
  max-width: 100%;
}
footer .footer_top_part .link_part .link:hover {
  border-bottom: 1px solid #fff;
}
footer .footer_bottom_part {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0 15vw 10vh;
}
footer .footer_bottom_part .desc_part .product_desc {
  font-weight: lighter;
  color: #fff;
  font-size: 0.8vw;
  line-height: 0.9vw;
}
footer .footer_bottom_part .policy_copyright {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
footer .footer_bottom_part .policy_copyright a {
  text-decoration: underline;
  text-underline-offset: 1px;
  color: #fff;
}
footer .footer_bottom_part .policy_copyright p {
  color: rgba(255, 255, 255, 0.6);
  padding-top: 1rem;
  font-size: 0.75vw;
}

@media screen and (max-width: 1550px) {
  .top_section .top_header {
    padding: 5vh 5vw;
  }
  .top_section .top_header .left_wrap .slogan_wrap .slogan {
    font-size: 0.9vw;
  }
  .top_section .top_header .right_wrap .menu a {
    font-size: 1.1vw;
  }
  .top_section .top_header .right_wrap .contact_button a {
    font-size: 1.25vw;
  }
  .top_section .visual_desc {
    padding: 17vh 0 0 12vw;
  }
  .top_section .visual_desc .page_title {
    padding: 0vh 0 15vh;
  }
  .top_section .visual_desc .breadcrumb {
    font-size: 1.1vw;
  }
  .header_top_fixed .header_wrap {
    padding: 4vh 5vw;
  }
  .header_top_fixed .header_wrap .left_wrap .slogan_wrap .slogan {
    font-size: 0.9vw;
  }
  .header_top_fixed .header_wrap .right_wrap .menu a {
    font-size: 1.1vw;
  }
  footer .footer_top_part .link_part .link p {
    font-size: 1.65vw;
  }
}
@media screen and (max-width: 1113px) {
  .header_top_fixed .header_wrap {
    padding: 2.5vh 5vw;
  }
  .header_top_fixed .header_wrap .left_wrap .logo_wrap {
    width: 9vw;
  }
  .header_top_fixed .header_wrap .left_wrap .slogan_wrap {
    margin-left: 1.5vw;
  }
  .header_top_fixed .header_wrap .left_wrap .slogan_wrap .slogan {
    font-size: 0.9vw;
    line-height: 1vw;
  }
  .header_top_fixed .header_wrap .right_wrap .menu a {
    font-size: 1.25vw;
  }
  .header_top_fixed .header_wrap .right_wrap .contact_button a {
    font-size: 1.5vw;
  }
  .mail_wrap .mail_fixed .mail_img {
    width: 3vw;
    padding: 2vw;
  }
  .top_section .top_header {
    padding: 5vh 5vw 18vh;
  }
  .top_section .top_header .left_wrap .logo_wrap {
    width: 9vw;
  }
  .top_section .top_header .left_wrap .slogan_wrap {
    margin-left: 1.5vw;
  }
  .top_section .top_header .left_wrap .slogan_wrap .slogan {
    font-size: 0.9vw;
    line-height: 1vw;
  }
  .top_section .top_header .right_wrap .menu a {
    font-size: 1.25vw;
  }
  .top_section .top_header .right_wrap .contact_button a {
    font-size: 1.5vw;
  }
  .top_section .visual_desc .page_title {
    padding: 0vh 0 12vh;
  }
  .top_section .visual_desc .page_title p {
    font-size: 8vw;
  }
  .top_section .visual_desc .breadcrumb {
    font-size: 1.25vw;
  }
  footer .footer_top_part {
    padding: 22vh 10vw 0;
  }
  footer .footer_top_part .logo_wrap .logo_part {
    width: 12vw;
    padding-bottom: 10vh;
  }
  footer .footer_top_part .logo_wrap .visa_logo {
    width: 10vw;
    max-width: 65px;
  }
  footer .footer_top_part .link_part {
    font-size: 2vw;
  }
  footer .footer_top_part .link_part .link p {
    font-size: 2vw;
  }
  footer .footer_top_part .link_part .link .arrow_img {
    width: 1.5vw;
  }
  footer .footer_bottom_part {
    padding: 0 10vw 10vh;
  }
  footer .footer_bottom_part .desc_part .product_desc {
    font-size: 1vw;
    line-height: 1.25vw;
  }
  footer .footer_bottom_part .policy_copyright p {
    font-size: 1vw;
  }
}
@media screen and (max-width: 860px) {
  .header_top_fixed .header_wrap {
    padding: 3vh 5vw 3vh;
  }
  .header_top_fixed .header_wrap .left_wrap .logo_wrap {
    width: 17vw;
  }
  .header_top_fixed .header_wrap .left_wrap .slogan_wrap {
    display: none;
  }
  .header_top_fixed .header_wrap .right_wrap {
    display: none;
  }
  .header_top_fixed .header_wrap .right_wrap_sp {
    display: block;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_2 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    height: 3.5vh;
    transition: 0.3s;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_2 .line {
    position: relative;
    height: 2px;
    background-color: #fff;
    width: 6vw;
    transition: 0.3s;
    top: 0;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_2 .line_2 {
    width: 3vw;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line_1 {
    position: relative;
    top: 1.8vh;
    transform: rotate(45deg);
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line_2 {
    width: 0;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line_3 {
    position: relative;
    top: -1.5vh;
    transform: rotate(-45deg);
  }
  .header_top_fixed .sp_menu_2 {
    display: none;
    opacity: 0;
    position: fixed;
    bottom: -100vh;
    height: 89%;
    width: 100%;
    z-index: -2;
    background-color: #000;
    flex-direction: column;
    justify-content: center;
    transition: 0.3s;
  }
  .header_top_fixed .sp_menu_2 .menu_wrap {
    display: flex;
    flex-direction: column;
    padding: 0 5vw 0;
  }
  .header_top_fixed .sp_menu_2 .menu_wrap a {
    text-decoration: none;
    font-size: 4vw;
    color: #fff;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: baseline;
    padding-bottom: 6vh;
  }
  .header_top_fixed .sp_menu_2 .menu_wrap a span {
    width: 2.5vw;
  }
  .header_top_fixed .sp_menu_2 .menu_wrap a span img {
    max-width: 100%;
  }
  .header_top_fixed .sp_menu_2 .slogan_wrap {
    padding: 0vh 5vw 4vh;
    position: absolute;
    top: 0;
  }
  .header_top_fixed .sp_menu_2 .slogan_wrap p {
    opacity: 0.6;
    color: #fff;
    font-size: 2vw;
    line-height: 2.5vw;
  }
  .header_top_fixed .sp_menu_2_active {
    display: flex;
    opacity: 1;
    z-index: 33;
    bottom: 0;
  }
  .mail_wrap .mail_fixed .mail_img {
    width: 5vw;
    padding: 3vw;
  }
  .top_section {
    height: 40vh;
  }
  .top_section .top_header {
    padding: 2vh 5vw 2vh;
    height: 7vh;
    transition: 0.3s;
  }
  .top_section .top_header .left_wrap .logo_wrap {
    width: 17vw;
  }
  .top_section .top_header .left_wrap .slogan_wrap {
    display: none;
  }
  .top_section .top_header .right_wrap {
    display: none;
  }
  .top_section .top_header .right_wrap_sp {
    display: block;
  }
  .top_section .top_header .right_wrap_sp .menu_button_1 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    height: 3.5vh;
    transition: 0.1s;
  }
  .top_section .top_header .right_wrap_sp .menu_button_1 .line {
    position: relative;
    height: 2px;
    background-color: #fff;
    width: 6vw;
    transition: 0.3s;
    top: 0;
  }
  .top_section .top_header .right_wrap_sp .menu_button_1 .line_2 {
    width: 3vw;
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line_1 {
    position: relative;
    top: 1.85vh;
    transform: rotate(45deg);
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line_2 {
    width: 0;
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line_3 {
    position: relative;
    top: -1.5vh;
    transform: rotate(-45deg);
  }
  .top_section .top_header_active {
    background-color: #000;
  }
  .top_section .sp_menu_1 {
    opacity: 0;
    position: fixed;
    bottom: -100vh;
    height: 89%;
    width: 100%;
    z-index: -2;
    background-color: #000;
    flex-direction: column;
    justify-content: center;
    transition: 0.3s;
  }
  .top_section .sp_menu_1 .menu_wrap {
    display: flex;
    flex-direction: column;
    padding: 0 5vw 0;
  }
  .top_section .sp_menu_1 .menu_wrap a {
    text-decoration: none;
    font-size: 4vw;
    color: #fff;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: baseline;
    padding-bottom: 6vh;
  }
  .top_section .sp_menu_1 .menu_wrap a span {
    width: 2.5vw;
  }
  .top_section .sp_menu_1 .menu_wrap a span img {
    max-width: 100%;
  }
  .top_section .sp_menu_1 .slogan_wrap {
    padding: 0vh 5vw 4vh;
    position: absolute;
    top: 0;
  }
  .top_section .sp_menu_1 .slogan_wrap p {
    opacity: 0.6;
    color: #fff;
    font-size: 2vw;
    line-height: 2.5vw;
  }
  .top_section .sp_menu_1_active {
    display: flex;
    opacity: 1;
    z-index: 33;
    bottom: 0;
  }
  .top_section .top_visual {
    height: 40vh;
  }
  .top_section .visual_desc {
    padding: 18vh 5vw 0;
  }
  .top_section .visual_desc .page_title {
    font-size: 9vw;
    padding: 0vh 0 11vh;
  }
  .top_section .visual_desc .page_title p {
    font-size: 8vw;
  }
  .top_section .visual_desc .breadcrumb {
    font-size: 1.75vw;
  }
  footer {
    top: 0;
  }
  footer .footer_top_part .logo_wrap {
    padding-bottom: 10vh;
  }
  footer .footer_top_part .logo_wrap .logo_part {
    width: 17vw;
    padding-bottom: 0;
  }
  footer .footer_top_part .link_part {
    width: 95%;
  }
  footer .footer_top_part .link_part .link {
    width: 35%;
  }
  footer .footer_top_part .link_part .link p {
    font-size: 3vw;
  }
  footer .footer_top_part .link_part .link .arrow_img {
    width: 2.5vw;
  }
  footer .footer_bottom_part .desc_part .product_desc {
    font-size: 1.25vw;
    line-height: 1.5vw;
  }
  footer .footer_bottom_part .policy_copyright p {
    font-size: 1.5vw;
    padding-top: 1vw;
  }
}
@media screen and (max-width: 600px) {
  .header_top_fixed .header_wrap {
    padding: 2vh 5vw 2vh;
  }
  .header_top_fixed .header_wrap .left_wrap .logo_wrap {
    width: 25vw;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_2 .line {
    width: 9vw;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_2 .line_2 {
    width: 5vw;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line {
    width: 10vw;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line_1 {
    position: relative;
    top: 1.85vh;
    transform: rotate(45deg);
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line_2 {
    width: 0;
  }
  .header_top_fixed .header_wrap .right_wrap_sp .menu_button_active_2 .line_3 {
    position: relative;
    top: -1.5vh;
    transform: rotate(-45deg);
  }
  .header_top_fixed .sp_menu_2 {
    height: 91%;
  }
  .header_top_fixed .sp_menu_2 .slogan_wrap p {
    font-size: 2.5vw;
    line-height: 3vw;
  }
  .header_top_fixed .sp_menu_2 .menu_wrap a {
    font-size: 6vw;
  }
  .header_top_fixed .sp_menu_2 .menu_wrap a span {
    width: 4.5vw;
  }
  .top_section {
    height: 40vh;
  }
  .top_section #bg_1 {
    background-image: url("../img/bg_1_sp.jpg");
  }
  .top_section #bg_2 {
    background-image: url("../img/bg_2_sp.jpg");
  }
  .top_section #bg_3 {
    background-image: url("../img/bg_3_sp.jpg");
  }
  .top_section .top_header {
    padding: 2vh 5vw 2vh;
  }
  .top_section .top_header .left_wrap .logo_wrap {
    width: 25vw;
  }
  .top_section .top_header .right_wrap_sp .menu_button_1 .line {
    width: 9vw;
  }
  .top_section .top_header .right_wrap_sp .menu_button_1 .line_2 {
    width: 5vw;
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line {
    width: 10vw;
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line_1 {
    position: relative;
    top: 1.85vh;
    transform: rotate(45deg);
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line_2 {
    width: 0;
  }
  .top_section .top_header .right_wrap_sp .menu_button_active_1 .line_3 {
    position: relative;
    top: -1.5vh;
    transform: rotate(-45deg);
  }
  .top_section .sp_menu_1 {
    height: 89%;
  }
  .top_section .sp_menu_1 .slogan_wrap p {
    font-size: 2.5vw;
    line-height: 3vw;
  }
  .top_section .sp_menu_1 .menu_wrap a {
    font-size: 6vw;
  }
  .top_section .sp_menu_1 .menu_wrap a span {
    width: 4.5vw;
  }
  .top_section .visual_desc {
    padding: 18vh 5vw 0;
  }
  .top_section .visual_desc .page_title {
    padding: 0vh 0 13vh;
  }
  .top_section .visual_desc .page_title p {
    font-size: 10vw;
  }
  .top_section .visual_desc .breadcrumb {
    font-size: 3vw;
  }
  .top_section #bg_1 {
    background-position: 70%;
  }
  .mail_wrap .mail_fixed .mail_img {
    width: 8vw;
    padding: 4vw;
  }
  footer .footer_top_part .logo_wrap {
    justify-content: space-evenly;
  }
  footer .footer_top_part .logo_wrap .logo_part {
    width: 35vw;
  }
  footer .footer_top_part .logo_wrap .visa_logo {
    width: 15vw;
    max-width: 60px;
  }
  footer .footer_top_part .link_part {
    width: 100%;
  }
  footer .footer_top_part .link_part .link {
    width: 45%;
    margin-right: 0;
  }
  footer .footer_top_part .link_part .link p {
    font-size: 4.5vw;
  }
  footer .footer_top_part .link_part .link .arrow_img {
    width: 3.75vw;
  }
  footer .footer_bottom_part {
    padding: 0 5vw 5vh;
    flex-direction: column;
    align-items: center;
  }
  footer .footer_bottom_part .desc_part {
    padding-bottom: 2.5vh;
  }
  footer .footer_bottom_part .desc_part .product_desc {
    font-size: 2.75vw;
    line-height: 3vw;
  }
  footer .footer_bottom_part .policy_copyright {
    flex-direction: column;
    align-items: center;
  }
  footer .footer_bottom_part .policy_copyright a {
    font-size: 4vw;
    padding-bottom: 2.5vh;
  }
  footer .footer_bottom_part .policy_copyright p {
    font-size: 3.5vw;
  }
}/*# sourceMappingURL=common.css.map */