.header_top {
  display: flex;
  justify-content: center;
}

.top-page-nav {
  position: fixed;
  top: 0;
  height: 14vh;
  width: 100%;
  background: #fff;
  z-index: 1;
  grid-row: 1/1;
  display: grid;
  grid-template-rows: 100%;
  grid-template-columns: 20% 5% 10% 10% 10% 10% 10% 25%;
  /* height: 100%; */
  /* font-family: 'Zen Kaku Gothic Antique Bold'; */

}

.top-page-nav-logo {
  grid-column: 1/1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  margin-left: 1vw;
}

.season_logo {
  grid-column: 2/2;
  height: 5vh;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  margin-left: 0.5vw;
  height: 100%;
}

.top-page-nav-logo img {
  max-height: 35%;
  max-width: 100%;
}

#amadalogo {
  margin-bottom: 2.2vh;
}

.header_menu_content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.top-page-nav-menu>* {
  grid-row: 2/2;
  height: 100%;
  font-size: 0.85vw;
  font-weight: bold;
  text-align: center;
  display: flex;
  margin: auto;
  align-items: center;
  position: relative;
  justify-content: center;
}

.top-page-nav-menu {
  height: 100%;
}

.top-page-nav-menu:hover {
  color: #E8342F;
  cursor: pointer;
}

/* .top-page-nav-menu a {
    /* display: block; */
/* margin: auto; */
/* top: 0px; */
/* bottom: 0px; */
/* }  */

.top-page-nav-menu1 {
  grid-column: 3/3;
  margin: auto;
}

.top-page-nav-menu2 {
  grid-column: 4/4;
  margin: auto;
  width: 100%;
  text-decoration: none;
}

.top-page-nav-menu3 {
  grid-column: 5/5;
  margin: auto;
  width: 100%;
}

.top-page-nav-menu4 {
  grid-column: 6/6;
  margin: auto;
  width: 100%;
}

.top-page-nav-menu5 {
  grid-column: 7/7;
  margin: auto;
  width: 100%;
  /* display: none; */
}

.onlineforum_b {
  width: 100%;
  padding-right: 2vw;
  height: 8vh !important;
  width: 90%;
}


.top-page-nav-menu-right {
  grid-column: 8/8;
  position: relative;
  overflow: hidden;
}

.top-page-nav-menu-right-bg {
  transform: skewX(-20deg) translateX(2rem);
  background-color: #e8342f;
  z-index: -1;
  position: absolute;
  top: 0;
  width: 100%;
  /* display: grid;
    grid-template-rows: 50% 50%; */
}

.header_right {
  display: flex;
  flex-direction: column;
  /* align-items: center; */
  justify-content: center;
  width: 90%;
  position: relative;
  margin-right: 0;
  align-items: center;
}

.menu-right-top {
  margin-bottom: 1vh !important;
  grid-row: 1/1 !important;
  /* margin: 2vh 2vh 2vh 2vh; */
  background-color: #000;
  width: 100%;
  padding-left: 3.5vw;
  padding-right: 3.5vw;
  padding-top: 1vh;
  padding-bottom: 1vh;
  margin-bottom: 0.5vh;
  color: #fff;
  text-align: left;
  /* transform: skewX(20deg) translateX(2rem); */
  max-inline-size: fit-content;
}



.menu-right-bottom {
  grid-row: 2/2 !important;
  display: flex;
  flex-direction: row;
  /* margin: 2vh 2vh 2vh 2vh; */
  text-align: left;
  /* transform: skewX(20deg) translateX(2rem); */
  color: white;
  padding-left: 0%;
  margin-top: 1vh;
  margin-bottom: 1vh;
}

.menu-right-bottom_content {
  position: relative;
  padding-right: 1vw;
  padding-left: 1vw;
  text-decoration: none;
  color: #fff;
}

.event_line ::before {
  content: "";
  height: 2vh;
  width: 0.05vw;
  background-color: #FFF;
  position: absolute;
  left: 0;
  top: 15%;
}


.exhibition_menus {
  position: fixed;
  z-index: 1;
  top: 13vh;
  height: 50vh;
  width: 100%;
  visibility: hidden;
  background-color: #f4f4f4;
}

.exhibitions {
  grid-row: 1/1;
  display: grid !important;
  grid-template-columns: 100%;
  grid-template-rows: 20% 70% 10%;
  z-index: 99999;
}

.more-menus #nextbtn {
  display: flex;
  justify-content: end;
}

#nextbtn #cieclebtn {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid #DFDDDD;
  justify-content: center;
  display: flex;
  align-items: center;
}

#cieclebtn #arrow {
  width: 10px;
  height: 10px;
}

.sub {
  display: none;
  position: absolute;
  /* left: 0; */
  top: 14vh;
  width: 100%;
  z-index: 3;
  /* display: flex; */
  /* flex-direction: column; */
  /* align-items: center; */
  padding: 0;
  margin: 0;
}

.sub>li>a {
  /* font-size: 1vw; */
  /* font-size: 0.85vw; */
  font-size: 0.75vw;
  color: #fff;
  line-height: 1.75;
  /* background-color: #0071b9; */
  text-decoration: none;
  margin: auto;
  height: 5vh;
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: center;
}

.sub>li>a:hover {
  /* background-color: #004b83; */
  opacity: 1;
}

.header_menu {
  text-decoration: none;
  color: #000;
}

/* .header_active {
    color: #E8342F;
} */

.header_child {
  background-color: rgba(20, 20, 20, 0.7);
  /* height: 5vh; */
  display: grid;
  align-items: center;
  align-items: start;
  position: relative;

}

.header_child:hover {
  background-color: #E8342F;
}

.sub_active {
  display: grid !important;
}

.active_sub {
  display: grid !important;
}

.sub2 {
  position: relative;
  display: none;
  width: 100%;
  margin: 0;
  padding: 0;
  /* right: -10vw; */
  align-items: center;

  flex-direction: column;
  justify-content: center;
  z-index: 10;
  margin: 0 auto;
  height: 100% !important;
}

.sub2>li>a {
  /* font-size: 1vw; */
  font-size: 0.85vw;
  color: #fff;
  line-height: 1.75;
  /* background-color: #0071b9; */
  text-decoration: none;
  margin: auto;
  height: 5vh;
  display: flex;
  align-items: center;
}

.sub2>li>a:hover {
  /* background-color: #004b83; */
  opacity: 1;
}

.header_child2 {
  background-color: rgba(255, 255, 255, 0.7);
  height: 5vh;
  display: grid;
  align-items: center;
  width: 10vw;
}

.header_child2:hover {
  background-color: #E8342F;
  color: #fff;
}




.has-sub {
  text-decoration: none;
  list-style-type: none;
}

.jump_btn>a {
  text-decoration: none;
  color: white;
  width: 100%;
  display: flex;
  justify-content: space-around;
  align-items: center;
}

@media screen and (max-width: 550px) {

  .menu {
    display: none;
  }

  html {
    height: 100%;
    width: 100%;
    min-width: 100vw;
    min-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .top-page-nav-menu.top-page-nav-menu2 {
    margin-top: 2vh;
  }

  .top-page-body {
    height: 100%;
    width: 100%;

  }

  .top-page-grid {
    display: grid;
    grid-template-rows: 14% 20% 70%;
    overflow-x: hidden;
  }

  .top-page-nav {
    position: fixed;
    top: 0;
    bottom: 0;
    height: 14vh;
    background-color: #fff;
    grid-row: 1/1;
    display: grid;
    grid-template-rows: 100%;
    grid-template-columns: 50% 30% 20%;
    /* height: 100%; */
    border-bottom: 1px solid #DFDDDD;
    margin-bottom: 0;
    z-index: 10;
    width: 100%;
  }

  .top-page-nav-logo {
    margin-left: 2vw;
  }

  .top-page-nav-logo img {
    max-height: 30%;
    max-width: 100%;
  }

  .season_logo {
    grid-column: 2/2;
    height: 5vh;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    margin-left: 2vw;
    height: 100%;
  }

  .season_logo img {
    height: 3vh !important;
    padding-bottom: 3vh !important;
  }

  .responsive_menu .top-page-nav-menu,
  .responsive_menu .blank_process,
  .responsive_menu #menu2-submenu1 #blank_process_menu {
    display: block;
  }

  .top-page-nav-menu {
    display: none;
  }


  .top-page-nav-menu.top-page-nav-menu5 {
    margin-bottom: 3vh;
    /* pointer-events: none; */
    /* opacity: 0; */
  }

  .drawer {
    grid-column: 3/3;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .responsive_menu {
    position: fixed;
    z-index: 2;
    top: 13%;
    height: auto;
    width: 100%;
    background-color: white;
    visibility: hidden;
    border-top: 1px solid #DFDDDD;
  }

  .top-page-nav-menu-right {
    width: 100%;
    height: 30vh;
    background-color: #E8342F;
    /* margin-top: 5vh; */
  }

  .menu-right-top {
    margin-bottom: 1vh !important;
    grid-row: 1/1 !important;
    /* margin: 2vh 2vh 2vh 2vh; */
    background-color: #000;
    width: 35%;
    padding-left: 0vw;
    padding-right: 0vw;
    padding-top: 0vh;
    padding-bottom: 0vh;
    margin-bottom: 0vh;
    color: #fff;
    text-align: left;
    /* transform: skewX(20deg) translateX(2rem); */
    max-inline-size: none;
  }

  .jump_btn>a {
    /* padding-left: 1vw; */
    text-decoration: none;
    color: white;
    font-size: 4vw;
  }

  .arrow_img {
    width: 5vw;
  }

  .event_archive,
  .inquiry {
    height: 20%;
    width: 70%;
    display: flex;
    justify-content: flex-start;
    padding-left: 10%;
    align-items: center;
    color: white;
    font-size: 4vw;
    font-weight: bold;
  }

  .production_page {
    height: 20%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 4vw;
    font-weight: bold;
  }

  .jump_btn {
    width: 80%;
    background-color: black;
    padding: 1vh 0% 1vh 0%;
  }

  .menu-right-content {
    display: flex;
    flex-direction: column;

  }

  .responsive_menu .top-page-nav-menu2,
  .responsive_menu .top-page-nav-menu3,
  .responsive_menu .top-page-nav-menu4,
  .responsive_menu .top-page-nav-menu5 {
    display: flex !important;
    height: 6.5vh;
    background-color: white;
    padding-right: 6%;
    /* color: #E8342F; */
  }

  .top-page-nav-menu5 {
    display: none !important;
  }

  .responsive_menu .top-page-nav-menu :hover {
    color: #E8342F;
  }

  .responsive_menu .top-page-nav-menu-right {
    display: block !important;
  }

  .responsive_menu .top-page-nav-menu img {
    height: 1.5vh;
  }

  .jump_btn a {
    color: white !important;
  }

  .jump_btn .arrow_img {
    width: 4vh !important;
    height: 4vh !important;
    color: white !important;
  }

  .top-page-nav-menu2 a,
  .top-page-nav-menu3 a,
  .top-page-nav-menu4 a,
  .top-page-nav-menu5 a {
    width: 100%;
    padding-left: 5%;
    font-size: 4vw;
    font-weight: bold;
    padding-right: 5%;
    justify-content: start;
    align-items: center;
  }

  .top-page-nav-menu2 a {
    font-weight: bold;
    color: #da372f;
  }

  #menu2-submenu1 .blank_process {
    color: black;
    font-size: 3.5vw;
    height: 6.5vh;
    padding-left: 8%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  #menu2-submenu1 .active {
    color: #da372f;
  }

  .blank_process img {
    width: 1vh;
    padding-right: 7%;
    padding-left: 7%;

  }

  #blank_process_menu {
    /* border-top: 1px solid #c0b7b7; */
    border-bottom: 1px solid #c0b7b7;
  }

  #blank_process_menu .blank_process_menu_item {
    height: 6vh;
    padding-left: 14%;
    display: flex;
    justify-content: left;
    align-items: center;
  }

  #blank_process_menu .blank_process_menu_item.active {
    color: #E8342F;
    background-color: #ECECEC;
  }

  #blank_process_menu .blank_process_menu_item {
    font-size: 4vw;
    font-weight: 500;
  }

  /* .menu2-submenu1 ul li.active{
    color: #E8342F;
    background-color: #ECECEC;
    width: 100% !important;
  } */


  .menu-right-content {
    display: flex;
    flex-direction: column;
    margin-top: 4vh;
    justify-content: flex-start;
  }

  .top-page-nav-menu>* {
    font-weight: 500;
    font-size: 4vw;
  }

  .top-page-content {
    grid-row: 3/3;
    display: grid;
    row-gap: 1rem;
    grid-template-columns: 100%;
    column-gap: 0rem;
    padding: 0;
    margin-top: 5%;
  }

  .content_group {
    margin-top: 5%;
    /* height: 35vh; */
    display: grid;
    box-shadow: none;
    background-color: #ffffff;
    margin-top: 0vh;
    margin-bottom: 0vh;
    /* padding: 0; */
    grid-template-rows: 100%;
    grid-template-columns: 40% 60%;
    /* width: 50vh; */
    aspect-ratio: 30/9;
    width: 100vw;
    margin: 1vw;
  }


  .content_details {
    display: grid;
    grid-template-rows: 25% 0% 40% 30%;
    grid-template-columns: 100%;
    padding-left: 2%;
  }

  #content_title {
    font-size: calc(6.1vw / 2);
    font-weight: bold;
    padding-left: 0.8vw;
  }

  .content_group #title {
    font-size: calc(6.1vw / 2);
    font-weight: bold;
    display: inherit;
    padding-left: 0.8vw;
  }

  .content_group #description {
    font-size: 2vw;
    padding-left: 0.8vw;
    padding-right: 2vw;
    display: block;
    padding-top: 1vh;
  }

  #nextbtn span {
    /* padding-top: 2%; */
    margin-right: 3%;
    font-weight: bold;
    font-size: 2.5vw;
  }

  .top-page-text #txt {
    font-weight: bold;
    font-size: 4vw;
  }

  .top-page-text #text,
  #text1 {
    font-size: 3.5vw;
    margin-top: 0vh;
    font-weight: bold;
  }

  .banner_image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
  }

  .top-page-banner {
    grid-row: 2/2;
    background-repeat: no-repeat;
    background-position-x: right;
    background-size: contain;
    position: relative;
    /* overflow: hidden; */
    /* height: 19vh; */
    /* aspect-ratio: 16/4; */
  }

  .devicer {
    width: 100%;
    display: block;
    height: 0.5px;
    background-color: #ECECEC;
    /* margin: 60px auto 0; */
  }

  .exhibitions {
    display: none !important;
    visibility: hidden;
  }

  .more-menus {
    display: none;
  }

  .top-page-text {
    position: absolute;
    color: white;
    top: 20%;
    left: 10%;
    transform: translate(-10%, -10%);
    display: flex;
    flex-direction: column;
  }

  .banner_image {
    position: absolute;
    /* z-index: -1; */
    right: 0;
    width: 100%;
    height: 100%;
  }

  .banner_image::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    /* background: linear-gradient(to left, transparent 0%, transparent 60%, #141414 100%); */
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
  }

  .content-4 {
    padding-bottom: 5vh;
    /* pointer-events: none; */
  }

  .onlineforum_b {
    width: 100%;
    padding-right: 2vw;
    height: 4vh !important;
    width: 90%;
  }

  .res_main_container {

    position: relative;
    height: 74%;
    width: 100%;

  }
}

@media screen and (max-width: 550px) {

  #list_card img {
    width: 30vw;
    height: 15vh;
  }

  .menu {
    text-align: center;
    background-color: rgba(255, 255, 255, 0.8);
    transition: 0.5s ease;
    /* -webkit-transform: translateX(100%); */
    width: 100vw;
    display: none;
    height: 100svh;
    height: 100vh;
  }

  .rightmenu_red {
    background-color: rgba(232, 52, 48, 0.5);
  }

  .sample_img {
    width: 60vw;
  }

  .forum_img {
    width: 40vw;
    position: fixed;
    top: 15vh;
    right: 1vw;
    display: none;
  }

  .forum_img img {
    width: 40vw;
  }

  .demoplay_back {

    width: 25vw;
  }

  .kakodemo {
    font-size: 4.5vw;
  }

  .hex_btn_text {
    font-size: 6vw;
  }

  .charaimg {
    display: none;
  }

  .modaal-content-container {
    padding: 0;
  }

  #chara_title {
    font-size: 5vw;
  }

  #chara_text {
    font-size: 3.5vw;
  }

  #down_btn_front span {
    font-size: 4vw;

  }

  .jump_btn {
    width: 100%;

  }

  #down_btn_right span {
    font-size: 4vw;
  }

  #list_card {
    text-align: center;
    height: 35vh;
    width: 35vw;
    background-color: #fff;
    box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    margin-left: 1vw;
    padding: 0.5vh;
    text-decoration: none;
    display: grid;
    /* grid-template-rows: 50% 20% 10% 20%; */
    align-items: center;
    justify-content: center;
    justify-items: center;
  }

  #samplelist {

    width: 80vw;
    overflow-x: scroll;
    /* overflow: hidden; */
  }

  .list_title {
    font-size: 3.1vw;
  }

  .list_proname {
    font-size: 2vw;
  }

  .list_text {
    font-size: 2vw;
  }

  .load_container {
    width: 90%;
  }

  .load_text_2 {
    width: 100%;
  }

  .load_amada {
    height: 6vh;
  }

  #onlineeventlogo {
    height: 3.3vh;
  }

  .summerlogo {
    height: 3vh;
    padding-left: 1vw;
  }

  .blank:hover .popup {
    display: none;
  }

  .blank1:hover .popup {
    display: none;
  }

  .bend1:hover .popup {
    display: none;
  }

  .bend:hover .popup {
    display: none;
  }

  .weld:hover .popup {
    display: none;
  }

  .medium_thick:hover .popup {
    display: none;
  }

  .cad_cam:hover .popup {
    display: inline;
  }

  .chuatsuita:hover .popup {
    display: none;
  }

  .plank:hover .popup {
    display: none;
  }

  .susal:hover .popup {
    display: none;
  }

  .res_menu_bottom {
    padding: 1vh;
  }

  #turn_front_right:hover .popup_front {
    display: none;
  }

  #turn_front_left:hover .popup_front {
    display: none;
  }

  #turn_right:hover .popup_right {
    display: none;
  }

  #turn_left:hover .popup_left {
    display: none;
  }

  .res_mini_menu {
    padding: 1vh;
  }

  .res_mini_menu a {
    text-decoration: none;
    color: #909090;
  }

  .menu ul li a {
    display: block;
    font-weight: bold;
    padding: 3vh;
    border-bottom: 1px dotted #CCC;
    color: #333;
    text-decoration: none;
  }

  .menu ul {
    padding: 0;
    margin: 0%;
  }

  .drawer {
    grid-column: 3/3;
    display: flex !important;
    justify-content: center;
    align-items: center;
  }
}

.drawer {
  display: none;
}

.menu ul li a {
  display: block;
  font-weight: bold;
  padding: 3vh;
  border-bottom: 1px dotted #CCC;
  color: #333;
  text-decoration: none;
}

.menu ul {
  padding: 0;
  margin: 0%;
}


.menu ul li a:hover {
  background-color: rgba(232, 52, 47, 0.5);
  color: #fff;
}

.menu {
  display: none;
}




/*OPEN時の動き*/
.menu.open {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  /*メニューを元の位置へ戻す*/

}

/*トグルボタンのスタイルを指定*/
.Toggle {
  display: block;
  position: fixed;
  /* bodyに対しての絶対位置指定 */
  transition: 0.5s;
  ;
  cursor: pointer;
  z-index: 3;
}

.menu_icon {
  transition: 0.5s;

}

.menu_ani {
  /* animation: rotateicon; */
  animation: 1.5s rotateicon;
  /* animation-direction: alternate; */
  animation-fill-mode: forwards;
}

@keyframes rotateicon {

  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(90deg);
  }
}


.Toggle span {
  display: block;
  position: absolute;
  width: 5vh;
  border-bottom: solid 4px #333;
  -webkit-transition: .35s ease-in-out;
  /*変化の速度を指定*/
  -moz-transition: .35s ease-in-out;
  /*変化の速度を指定*/
  transition: .35s ease-in-out;
  /*変化の速度を指定*/

}

/*各ボーダー少しずつずらす*/
.Toggle span:nth-child(1) {
  top: 5px;
}

.Toggle span:nth-child(2) {
  top: 18px;
}

.Toggle span:nth-child(3) {
  top: 32px;
}

.Toggle.active span:nth-child(1) {
  top: 18px;
  /* 1番目のspanをマイナス45度に */
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
  top: 18px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}


@media screen and (min-width:551px) and (max-width:820px){
  .header_menu{
    /* font-size: 1.5vw; */
  }
}