@charset "UTF-8";

.pc { display: none; }
.sp { display: block; }

header { padding: 25px 25px 45px 25px; }
#top-logo { width: 270px; }
#top-logo img { width: 270px; }

.menu-div1 { position: relative; top: auto; right: auto; }
.menu-div2 { position: relative; top: auto; right: auto; }
.menu-div3 { position: relative; top: auto; right: auto; }

@media screen and (max-width: 900px) {
#footer { padding: 50px 20px 20px 20px; }
img.maintb { display: block; }
.development-lineup p { margin: 30px 20px 40px 0; }
#top-news { padding: 30px; }
#top-news div.title { width: 100%; float: none; margin-bottom: 20px; }
#top-news div.top-news-content { width: 100%; float: none; }
#top-news ul { padding: 20px 0 20px 0; }
#top-news ul li:last-child { float: none; clear: both; }
.box { line-height: 200%; }
.recruit-lineup p { margin: 30px 20px 40px 0; }


.leadsentence {
  font-size: 120%;
  font-weight: 700;
  margin-bottom: 20px;
}
.footer-content-link ul li {
  width: 18.7%;
}
#footer {
  padding: 30px 20px 20px 20px;
}

}

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

#main-image { padding: 40px 0 40px 0; }
#main-image div.text-top { font-size: 100%; }
#main-image-old { padding: 40px 0 40px 0; margin: -30px 0 20px; }
#main-image-old div.text-top { font-size: 100%; }
#top-news { padding: 10px; margin: 0; }
.title .text-jp { font-size: 150%; padding: 0 0 0 0; }
#top-news ul li {
  float: none;
  width: 100%;
  padding-bottom: 20px;
}
#top-news ul li:last-child {
  width: 100%;
  padding-bottom: 10px;
}
#footer-top {
  margin-top: 40px;
}
#footer-top-wrapper {
  width: 100%;
  padding: 13px;
}
#footer {
  padding: 20px 0 0 0;
}
#sub-image {
  padding: 30px;
  font-size: 120%;
  margin: 20px 0 30px;
}
.leadsentence {
  font-size: 120%;
}
.box div.title {
  margin: 30px 0 30px;
  font-size: 120%;
}
#sponsors ul {
  margin-top: 30px;
}
#sponsors ul li {
  width: 100%;
  margin: 0;
  float: none;
  text-align: left;
}
div.questionnaire {
  width: 100%;
  float: none;
}
.title-box {
  margin: 20px 0 20px 0;
}
#main-image div.sec {
  padding: 10px;
  margin: 40px auto 0;
  width: 100%;
}
#main-image-old div.sec {
  padding: 10px;
  margin: 0 auto 0;
  width: 100%;
}

.wrap-20,.wrap-25,.wrap-30,.wrap-35,.wrap-40,.wrap-45,.wrap-50 { width: 100%; }
.imgLeft { float: none; padding: 0 0 0 0; }
.imgRight { float: none; padding: 0 0 0 0; }
#image-bar { height: 100px; padding: 25px 0 0 30px; }
.title { margin-top: 50px; margin-bottom: 50px; }
.title:first-child { margin-top: 0; }
.openbtn { right: 5px; }
.menu { right: 0; }
#g-nav-list ul li { margin-right: 6px; }
#g-nav-list ul li.list div:last-child { padding-left: 2px; }
#g-nav-list ul li.navi-button:last-child { margin-right: 0; }
#footer { padding: 40px 0 0 0; }
#footer-wrapper b { float: none; text-align: center; }
#footer-wrapper div.iso { margin: 20px 0 20px 3%; width: 45%; text-align: center; }
.footer-content-link { float: none; padding: 20px 20px 20px 20px; width: 100%; clear: both; }
.footer-content-link ul li { width: 47%; }
.footer-sub-link { margin: 20px 0 20px 0; }
.footer-sub-link img { width: 100%; }
#g-nav-list ul li { width: 100%; }

#parent:before { padding-top: 122%; }
.conA { background-size: cover; }
img.mainsp { display: block; }
img.maintb { display: none; }
.sign { width: 60%; float: right; }

.product-lineup div { width: 46%; margin: 20px 2% 0 2%; padding-top: 31%; }
.development-lineup div.left img { width: 100%; float: none; padding: 0 0 0 0; }
.development-lineup div.left div { width: 100%; float: none; }
.development-lineup div.right img { width: 100%; float: none; padding: 0 0 0 0; }
.development-lineup div.right div { width: 100%; float: none; }
.gmap { padding-bottom: 100%; }

.box { line-height: 180%; }
.box b { padding: 20px 0 20px 0; }
.box li.item { float: none; width: 100%; display: block; color: #666666; }
.box li { float: none; width: 100%; line-height: 300%; }

.product-lineup div { font-size: 85%; }
#product .box-3 { width: 100%; margin: 20px 0 0; float: none; text-align: center; }
#product div.box-1 span { padding: 10px; }
#product .box-3 { width: 90%; margin: 20px auto 0; }

.btn, a.btn, button.btn { padding: 1rem 2rem; text-align: left; }

div.development-content { padding-top: 25%; cursor: pointer; }
.development-lineup2 div { float: none; width: 100%; margin: 20px 0 0 0; }
#development .box-3 { width: 100%; margin: 20px 0 0; float: none; text-align: left; }
#development .box-3 { width: 90%; margin: 20px auto 0; }
.youtube { width: 100%; margin: 10px 0; float: left; height: 0; position: relative; padding-top: 57.2%; overflow: hidden; }
#development .box li.item { float: none; width: 100%; display: block; color: #666666; padding-left: 0; }
#development .box li { float: none; width: 100%; line-height: 300%; }

.recruit-lineup div.left img { width: 100%; float: none; padding: 0 0 0 0; }
.recruit-lineup div.left div { width: 100%; float: none; }
.recruit-lineup div.right img { width: 100%; float: none; padding: 0 0 0 0; }
.recruit-lineup div.right div { width: 100%; float: none; }

#contact .btn { text-align: center; }
table.formTable th { width: 100%; display:block; }
table.formTable td { width: 100%; display:block; }
table.formTable tbody { display: grid; }

.box-2 img { width: 100%; margin: 0; float: none; }

.box div.img-100 img { width: 100%; }

.text-overlay { left: 50%; top: 65%; }

.sponsors-right { text-align: center; }

.results_btn { max-width: 100%; margin: 0 0 40px; float: none; position: relative; }
.results_btn:last-child { float: none; position: relative; }

.results_btn2 { max-width: 100%; margin: 0 0 40px; float: none; position: relative; }
.results_btn2:last-child { float: none; position: relative; }

.joining-text { font-size: 85%; }

p.toppage-text { font-size: 100%; }


}

#youtube {
  background-color: #FFFFFF;
  width: 100%;
  margin: 60px 0;
  padding: 0;
}
