@charset "UTF-8";
.u-sp {
  display: none;
}

@media screen and (max-width: 1023px) {
  .u-pc {
    display: none;
  }
  .u-sp {
    display: block;
  }
}

/* トップページレスポンシブ用 */
@media screen and (min-width: 2000px) {
  #mainImg {
    background: url(images/bg_main.jpg) #fff no-repeat center center/cover;
  }
  #performance {
    background: url(images/bg_performance.jpg) no-repeat center center/cover;
  }
}

@media screen and (max-width: 1023px) {
  /* header */
  header .inner nav {
    width: 100%;
    float: unset;
  }
  header .inner nav ul li {
    float: unset;
    margin: 0 auto;
  }
  /* service */
  #service .inner a.active {
    background: none;
  }
  #service #slider div.type1 div {
    height: unset;
  }
  .bx-wrapper .bx-viewport {
    background: #efefef;
  }
  /* performance */
  #performance {
    background: url(images/bg_performance.jpg) no-repeat center center/cover;
  }
  #performance .inner section.case {
    float: unset;
    margin: 0 auto;
  }
  #performance .inner section.case:first-child {
    margin-bottom: 40px;
  }
  /* qa */
  #qa .inner ul {
    padding: 0;
    max-width: 100%;
  }
  #qa .inner ul li {
    float: unset;
    margin: 0 auto;
  }
  #qa .inner ul li:not(:last-child) {
    margin-bottom: 20px;
  }
  /* company */
  #company .inner table {
    max-width: calc(50% - 20px);
  }
  #company .inner table tr th {
    min-width: 70px;
  }
  /* contact */
  #contact .inner .tel {
    float: unset;
  }
  #contact .inner form {
    margin: 0 auto;
    margin-bottom: 60px;
  }
  /* footer */
  footer .inner small {
    width: unset;
  }
}

@media screen and (max-width: 767px) {
  img {
    max-width: 100%;
    height: unset;
  }
  /* mainImg */
  #mainImg {
    background: url(images/bg_main-sp.png) no-repeat center center/cover;
    height: 300px;
  }
  #mainImg div {
	padding: 25vw 15vw;
	width: 100%;
	/* max-width: inherit; */
	margin: 0;
	box-sizing: border-box;
  }
  #mainImg div h2 {
	margin: 0 0 2rem;
  }
  #mainImg div p {
	font-size: 3.5vw;
	line-height: 1.6em;
	word-break: break-all;
  }
	
	
	
  .mainImg__text {
    /*display: none;*/
  }
  .main-header {
    display: block;
    background: #fff;
    padding: 20px;
    margin-bottom: -1px;
  }
  .main-header__title {
    width: 500px;
    max-width: 100%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
  .main-header__title img {
    width: 100%;
  }
  .main-header__text {
    font-size: 13px;
    text-align: center;
    line-height: 1.6;
  }
  /* service */
  #service .inner {
    padding: 0 20px;
    max-width: calc(100% - 20px * 2);
  }
  #service .tit {
    font-size: 22px;
  }
  #service .inner a {
    width: 100%;
    margin: 0 0 0 0;
    padding-bottom: 20px;
  }
  #service #slider div.type1 div h3 {
    width: unset;
    font-size: 28px;
	-webkit-text-size-adjust: 100%;
  }
  #service #slider div.type1 div {
    padding: 40px 20px;
    max-width: calc(100% - 20px * 2);
  }
  #service #slider div.type1 div p {
    width: 100%;
    font-size: 15px;
	-webkit-text-size-adjust: 100%;
  }
  #service #slider div.type1 div p.slideImg {
    position: static;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
  #service #slider div.type1 div p.slideImg img {
	width: inherit;
    height: inherit;
  }
  #service #slider div.type2 div {
    padding: 40px 20px;
    max-width: calc(100% - 20px * 2);
  }
  #service #slider div.type2 div h3 {
    width: unset;
    font-size: 28px;
  }
  #service #slider div.type2 div p {
    width: 100%;
    font-size: 15px;
  }
  #service #slider div.type2 div p.slideImg {
    width: 100%;
    position: static;
    max-width: 500px;
    margin: 0 auto;
  }
  #service #slider div.type2 div p.slideImg img {
	width: inherit;
    height: inherit;
  }
  #service .bx-wrapper .bx-controls-direction a {
    top: unset;
    bottom: 150px;
  }
  #service .bx-wrapper .bx-prev {
    background-size: 25px;
  }
  #service .bx-wrapper .bx-next {
    background-size: 25px;
  }
  /* performance */
  #performance .inner section.case {
    padding: 30px;
  }
  /* qa */
  .answer {
    padding: 20px;
    width: calc(100% - 20px * 2);
    max-width: 100%;
  }
  .answer dt {
    font-size: 20px;
  }
  .answer dd {
    font-size: 16px;
  }
  /* company */
  #company {
    padding-bottom: 0;
  }
  #company .inner {
    padding: 0 20px 40px;
    max-width: calc(100% - 20px * 2);
  }
  #company .inner table {
    max-width: 100%;
  }
  #company .inner table tr {
    max-width: 100%;
  }
  #company .inner table tr th {
    padding-bottom: 0;
  }
  #company .inner table tr th, td {
    display: block;
  }
  #company .map {
    position: static;
    width: 100%;
  }
  #company .map iframe {
    height: 300px;
  }
  /* contact */
  #contact .inner, main section h2 {
    padding: 0 20px;
    max-width: calc(100% - 20px * 2);
  }
  /* footer */
  footer .inner small {
    float: unset;
    display: block;
    margin-bottom: 10px;
  }
  footer .inner p {
    float: unset;
    margin-left: auto;
  }
}
