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

html,body{
  min-width: 320px;
  }

/* header */
header {
  justify-content: flex-start;
}
.header-logo {
  width: 26%;
}
.header-logo-address {
  display: none;
}
.header-list {
  display: none;
}
.header-tel {
  display: none;
}
.header-res-tel,
.header-res-address {
  display: block;
}
.demobox-header {
  display: block;
}
.demobox-header{
display: block;
}
/* main */
.mainimg {
  height: 500px;
  background-size: cover;
}
.mainimg_text {
  padding: 14% 0% 0% 8%;
}
.mainimg_text p {
  font-size: 42px;
}
.line-contact {
  display: none;
}
.line-contact-res {
  display: block; /* LINEできたらblockにする*/
}

/* problem */
.problem {
  background-position: 105% 100%;

}
.problem h2 {
  font-size: 36px;
}
.problem-contents {
  width: 100%;
}



/* research */
.research h2 {
  font-size: 36px;
}
.research-content {
  width: 100%;
}
.research-contents {
  width: 50%;
  height: 400px;
}
.research-contents2 {
  width: 50%;
}
.research-contents3 {
  width: 50%;
  height: 400px;
}
.research-contents4 {
  width: 50%;
  height: 400px;
}
.research-contents5 {
  width: 50%;
  height: 400px;
}
.research-contents6 {
  width: 50%;
  height: 400px;
}
.research-contents7 {
  width: 50%;
  height: 400px;
}
.research-contents8 {
  width: 50%;
  height: 400px;
}
.banner img {
  width: 90%;
}

/* contact */
.contact {
  height: 700px;
  position: relative;
}
.contact h2 {
  top: -4%;
  left: 25%;
}
.contact_tel_mail {
  width: 90%;
  display: block;
}
.contact_tel {
  width: 100%;
  border-bottom: 2px solid #fff;
  border-right: none;
}
.contact_tel a {
  font-size: 80px;
}
.contact_tel a img {
  width: 60px;
}
.contact_tel p {
  font-size: 26px;
}
.contact_mail {
  width: 90%;

}
.contact_mail a {
  font-size: 60px;
  padding: 20px 80px;
}
.contact_mail a img {
  width: 60px;
}
.contact_mail p {
  margin-bottom: 20px;
}

/* aozora */
/* aozora work */
.aozora {
  padding: 100px 0px 80px 0px;
  background: none;
}
.work {
  text-align: center;
  background-image: none;
  margin: 0 auto;
}
.work h2 {
  font-size: 36px;
}
.work img {
  display: block;
  width: 100%;
}
.work_text {
  width: 100%;
}
.work_text p {
  font-size: 26px;
}
.work_check {
  width: 90%;
  padding: 50px 0px;
}
.service {
  width: 100%;
  padding-top: 30px 0px;
  background-color: #dff2ff;
}
.service_contents {
  width: 80%;
  margin: 30px auto;
}
.service_contents p,
.service_contents h3 {
  font-size: 26px;
}

/* price */
.price {
  width: 90%;
  padding: 0px 0px 120px 0px;
}
.price_top h2 {
  font-size: 36px;
}
.price_top p {
  font-size: 26px;
}
.price_bottom {
  display: block;
}
.price_bottom_top {
  display: block;
  text-align: center;
  padding: 30px 0px;
}
.price_bottom_top img {
  width: 90%;
}
.price_bottom_right {
  display: none;
}
.price_bottom_left h3 {
  font-size: 32px;
}
.price_bottom_left p {
  font-size: 26px;
}
.card {
  font-size: 22px;
}
.price_bottom_left_img {
  text-align: center;
}
.price_bottom_left_img img {
  width: 80%;
}

/* access */
.access {
  width: 90%;
}
.access h2 {
  font-size: 36px;
}
.access_content {
  display: block;
  margin: 50px 0px;
}
.access_info {
  display: table-cell;
  height: 550px;
}
.access_info h3 {
  font-size: 30px;
}
.access_info strong {
  font-size: 22px;
}
.access_info_hp a {
  font-size: 26px;
  text-decoration: none;
}
.access_info p {
  font-size: 26px;
}

table {
  width: 90%;

}
table th,
table td {
  display: block;
  width: 100%;
  border: none;
}
table th {
  font-size: 26px;
}
table td {
  font-size: 26px;
  text-align: center;
  padding: 15px 0px;
}
.accsse_map {
  width: 100%;
  height: 500px;
}

/* column */
.column {
 width: 90%;
}

/* footer */
.footer_list {
  width: 90%;
}
.footer_list ul li {
  width: 30%;
  margin: 10px 0px;
}
.footer_list ul li a {
  font-size: 26px;
}
.footer_list ul li a img {
  width: 30px;
}
.footer_content {
  width: 90%;
  display: block;
}
.footer_logo{
  width: 90%;
  text-align: center;
  margin: 15px auto;
}
.footer_logo .p1 {
  font-size: 16px;
}
.footer_logo h1 {
  font-size: 40px;
}
.footer_logo .p2 {
  font-size: 14px;
}
.footer_access,
.footer_tel {
  margin: 15px 0px;
}
.footer_access p,
.footer_tel p {
  font-size: 26px;
}
.footer_line {
/* LINEできたら消す*/
  width: 100%;
  justify-content: space-around;
}
.footer_line img {
  width: 100px;
}
.footer_line p span {
  font-size: 30px;
}
.footer_line p {
  font-size: 20px;
}
.copy p {
  margin-bottom: 90px;
}


/* footer_fixed */
.fixed_tel,
.fixed_contact,
.fixed_line {
  display: none;
}
.fixed_tel_res,
.fixed_contact_res,
.fixed_line_res {
  display: block;
}
.fixed_tel_res {
  width: 33.3%;/* LINEできたら33.3にする*/
  background-color: #0773b9;
  text-align: center;
  padding: 20px;
}
.fixed_contact_res {
  width: 33.3%;/* LINEできたら33.3にする*/
  background-color: #00558c;
  text-align: center;
  padding: 24px 20px;
}
.fixed_line_res {
  /* LINEできたら消す*/
  width: 33.3333333%;
  background-color: #00ba00;
  text-align: center;
  padding: 10px;
}
.fixed_tel_res img,
.fixed_contact_res img {
  width: 50px;
}
.fixed_line_res img {
  width: 60px;
}
.footer_fixed {
  min-width: 320px;
}


.uwakiimg_2 {
  background-size: cover;
  line-height: 150px;
}
.img_text h2 {
  font-size: 30px;
}


.top-seo-contents {
  width: 90%;
}

.top-seo-contents h2 {
  font-size: 36px;
}



}
.rikonimg_2 {
  background-size: cover;
  line-height: 150px;
}
.bikouimg_2 {
  background-size: cover;
  line-height: 150px;
}
.toutyoukiimg_2 {
  background-size: cover;
  line-height: 150px;
}
.syoukoimg_2 {
  background-size: cover;
  line-height: 150px;
}
.suto-ka-img_2 {
  background-size: cover;
  line-height: 150px;
}
.akusituimg_2 {
  background-size: cover;
  line-height: 150px;
}
.ijimeimg_2 {
  background-size: cover;
  line-height: 150px;
}
.columnimg_2 {
  background-size: cover;
}


@media screen and (min-width:320px) and ( max-width:767px) {

  /* header */
header {
  height: 70px;
  justify-content: space-between;
}
.header-logo {
  margin: 10px;
  width: 45%;
}

.header-logo h1 {
  font-size: 16px;
}
.header-logo .p1 {
  font-size: 10px;
  color: #3e3f42;
}
.header-logo .p2 {
  font-size: 10px;
  color: #3e3f42;
}
.header-res-address {
  margin: 0;
}
.header-res-address {
  margin: 0 0 0 auto;
}
.fa-phone-alt,
.fa-map-pin {
  vertical-align: -10px;
  font-size: 2em;
}
.header-res-tel, .header-res-address {
  width: 70px;
  text-align: center;
  line-height: 70px;
}
.demobox-header {
  width: 70px;
}
.hamburger-demo-switch {
  right: 3px;
  top: 5px;
  z-index: 9999;
  width: 60px;
  height: 60px;
}
.hamburger-demo-menulist li a {
  font-size: 20px;
}


.mainimg {
  height: 300px;
  background-size: cover;
}
.mainimg_text {
  padding: 80px 0px 0px 40px;
  font-size: 56px;
  text-shadow: 3px 3px 1px #0773b9;
  letter-spacing: 0.05em;
  line-height: 0.8em;
}
.mainimg_text p {
  font-size: 26px;
}
.line-res-top p {
  font-size: 16px;
}
.line-res-top {
  width: 80%;
  margin: 0 auto;
}
.line-contact-res span {
  font-size: 10px;
}
.problem {
  padding: 50px 0px;
  background-position: 50% 100%;
  background-size: contain;
}
.problem h2,
.research h2,
.contact h2,
.work h2,
.contact h3,
.access h2,
.price_top h2 {
  font-size: 26px;
}
.problem-content {
  width: 90%;
}
.problem-contents {
  margin: 10px;
  height: 60px;
}
.problem-contents p {
  font-size: 16px;
}
.triangle::before {
  border-width: 30px 50px 0 50px;
}

.research {
  text-align: center;
}
.research h2 {
  margin-top: 60px;
}
.research p,
.research-contents a,
.research-contents2 a,
.research-contents3 a,
.research-contents4 a,
.research-contents5 a,
.research-contents6 a,
.research-contents7 a,
.research-contents8 a {
  font-size: 20px;
}
.research-contents,
.research-contents2,
.research-contents3,
.research-contents4,
.research-contents5,
.research-contents6,
.research-contents7,
.research-contents8 {
  height: 350px;
}
.research-contents a img,
.research-contents2 a img,
.research-contents3 a img,
.research-contents4 a img,
.research-contents5 a img,
.research-contents6 a img,
.research-contents7 a img,
.research-contents8 a img {
  width: 90px;
}

.banner {
  padding: 50px 0px 80px 0px;
}

.contact {
  height: 480px;
}
.contact p {
  font-size: 14px;
  padding: 20px 0px;
}
.contact_tel p,
.contact_mail p {
  font-size: 16px;
}
.contact_tel a {
  font-size: 40px;
}
.contact_tel a img {
  width: 25px;
}
.contact_mail a {
  font-size: 24px;
  padding: 20px 20px;
}
.contact_mail a img {
  width: 30px;
  padding: 0 10px;
}


.aozora {
  padding: 50px 0px;
}
.work_text {
  padding: 30px 0px;
}
.work_text span {
  font-size: 18px;
}
.work_text p,
.price_bottom_left h3 {
  font-size: 16px;
}
.work_check p img {
  width: 15px;
  padding-right: 5px;
}
.work_check p {
  font-size: 16px;
}

.service_contents {
  padding: 30px 20px;
}
.service_contents p,
.service_contents h3 {
  font-size: 16px;
  line-height: 1.5em;
}
.price {
  padding: 0px 0px 60px 0px;
}
.price_bottom {
  border: 5px solid #dff2ff;
}
.price_top p {
  font-size: 16px;
  line-height: 1.25em;
  padding: 30px 0px;
}
.price_bottom_left p {
  font-size: 14px;
  line-height: 1.5em;
}
.card {
  font-size: 14px;
}
.price_bottom_left_img img {
  width: 100%;
}

.access {
  padding: 50px 0px;
  width: 90%;
  height: 650px;
  margin: 0 auto;
  text-align: center;
}
.access_info {
  height: 520px;
}
.access_info h3 {
  font-size: 18px;
}
.access_info p, .access_info_hp a {
  font-size: 14px;
}
table {
  height: 00px;
}
table th, table td {
  font-size: 16px;
}

.column img {
  width: 40px;
}
.column h2 {
  font-size: 20px;
}
.column_btn a {
  width: 80%;
  font-size: 20px;
  margin: 30px auto;
  padding: 20px;
}
.column_btn {
  padding-bottom: 60px;
}

.footer_list ul li a {
  font-size: 16px;
}
.footer_list ul li a img {
  width: 15px;
}
.footer_list ul li {
  width: 32%;
  margin: 10px 0px;
}
.footer_access, .footer_tel {
  margin: 10px 0px;
}
.footer_access p, .footer_tel p {
  font-size: 16px;
}
.footer_line {
  width: 100%;
  padding: 15px 0px;
  justify-content: space-around;
}
.fixed_tel_res {
  padding: 10px;
}
.fixed_contact_res {
  padding: 15px 10px;
}
.fixed_line_res {
  padding: 5px;
}
.fixed_tel_res img, .fixed_contact_res img {
  width: 40px;
}
.fixed_line_res img {
  width: 45px;
}
.copy p {
  margin-bottom: 63px;
}
.column_toptext {
  width: 90%;
  line-height: 1.25em;
  font-size: 16px;
  padding: 25px 0px;
}
.img_text h2 {
  font-size: 26px;
}
.bread {
  width: 90%;
  padding: 15px 0px;
}
.hurin_toptext {
  width: 90%;
  line-height: 1.5em;
  font-size: 16px;
  padding: 25px 0px;
}
.about {
  width: 90%;
  margin-bottom: 50px;
  border: 2px solid #0773b9;
}
.about h3 {
  font-size: 18px;
  padding: 15px 5px;
}
.about_text ul {
  padding: 0px 10px;
}
.about_text li {
  line-height: 1.25em;
  font-size: 16px;
}
.blue {
  font-size: 18px;
}
.about_text li::before {
  left: -4px;
  width: 8px;
  height: 8px;
}
.about_text2 {
  padding: 10px;
  margin: 0px 10px 10px 10px;
}
.about_text2 h3 {
  font-size: 16px;
}
.about_text2 p {
  font-size: 16px;
  line-height: 1.25em;
}

.about_contents {
  padding: 15px;
  color: #333;
}
.about_contents h4 {
  font-size: 16px;
  padding: 10px;
  margin-bottom: 10px;
}
.about_contents p {
  line-height: 1.25em;
  font-size: 16px;
  padding: 5px 0px 15px 0px;
}
.about_contents ol {
  padding: 15px 0px 0px 0px;

}
.about_contents ol li {
  padding: 5px 0px 5px 30px;
  line-height: 1.25em;
  font-size: 16px;
}
.about_contents ol li:before {
  line-height: 18px;
  margin-left: -25px;
  height: 18px;
  width: 18px;
}
.sikaku {
  padding: 5px 10px;
}
.contents {
  width: 70%;
  margin: 25px auto;
  text-align: center;
  border: 2px solid #0773b9;
  padding: 15px;
}

.top-seo-contents {
  padding: 0 0px 50px;
}

.top-seo-contents h2 {
  font-size: 26px;
}
.top-seo-contents h3 {
  font-size: 18px;
}

}

@media screen and (min-width:320px) and ( max-width:600px) {


.research-contents,
.research-contents2,
.research-contents3,
.research-contents4,
.research-contents5,
.research-contents6,
.research-contents7,
.research-contents8 {
  height: 300px;
}

.footer_line img {
  width: 80px;
}
.footer_line p span {
  font-size: 20px;
}
.footer_line p {
  font-size: 16px;
}
.img_text h2 {
  font-size: 20px;
}
.about_contents_btn a {
  padding: 20px;
  font-size: 16px;
}
.line-res-top p {
  font-size: 12px;
}
.line-contact-res span {
  font-size: 8px;

}


@media screen and (min-width:320px) and ( max-width:430px) {


.mainimg_text {
  padding: 80px 0px 0px 20px;
  font-size: 56px;
  text-shadow: 3px 3px 1px #0773b9;
  letter-spacing: 0.05em;
  line-height: 0.8em;
}
.mainimg_text p {
  font-size: 18px;
}

.research p,
.research-contents a,
.research-contents2 a,
.research-contents3 a,
.research-contents4 a,
.research-contents5 a,
.research-contents6 a,
.research-contents7 a,
.research-contents8 a {
  font-size: 16px;
}
.research-contents,
.research-contents2,
.research-contents3,
.research-contents4,
.research-contents5,
.research-contents6,
.research-contents7,
.research-contents8 {
  height: 220px;
}
.research-contents a img,
.research-contents2 a img,
.research-contents3 a img,
.research-contents4 a img,
.research-contents5 a img,
.research-contents6 a img,
.research-contents7 a img,
.research-contents8 a img {
  width: 80px;
}

.contact {
  height: 480px;
}
.accsse_map {
  height: 300px;
}

.footer_line {
  padding: 5px 0px;
}
.footer_line img {
  width: 60px;
}
.footer_line p span {
  font-size: 16px;
}
.footer_line p {
  font-size: 12px;
}


}


@media screen and (min-width:320px) and ( max-width:374px) {

header {
  height: 60px;
}
.header-logo {
  margin: 3px;
  width: 50%;
}
.fa-phone-alt,
.fa-map-pin {
  vertical-align: -4px;
  font-size: 1.8em;
}
.hamburger-demo-switch {
  right: 5px;
  top: 5px;
  width: 50px;
  height: 50px;
}

.contact {
  height: 450px;
}
.contact h3 {
padding-top: 60px;
}
.contact_tel a {
  font-size: 32px;
}
.footer_list ul li a {
  font-size: 14px;
}
.footer_line img {
  width: 60px;
}
.footer_line p span {
  font-size: 16px;
}
.footer_line p {
  font-size: 10px;
}

.img_text h2 {
  font-size: 18px;
}
.line-res-top p {
  font-size: 14px;
}


}
