@charset "utf-8";
@media screen and (max-width: 768px) {
  .sp_view {
    display: block;
  }
  .pc_view {
    display: none;
  }
  body {
    font-size: 4.2vw;
    min-width: 100%;
  }
  #wrapper {
    min-height: 180vw;
    background-position: top center, left 10vw;
    background-size: 100% 14vw, auto 100%;
    margin-bottom: 10vw;
    position: static;
  }
  #header {
    width: 100%;
  }
  .head_wrap {
    width: 96%;
    height: auto;
    flex-direction: column;
    align-items: flex-start;
    margin: 0 auto;
  }
  #header h1 {
    width: 30vw;
    margin: 0;
    position: static;
  }
  #header h1 img {
    display: block;
    width: 100%;
    height: auto;
  }
  #header ul {
    display: none;
  }
  #header ul li {
    margin: 4vw 3vw 0;
  }
  #header ul li.insta_head {
    margin: 3vw 0 0 2vw;
  }
  #header ul li a {
    font-size: 3vw;
  }
  .sec {
    width: 90vw;
  }
  #wrap_main_ceo {
    height: auto;
    position: static;
  }
  #mainvisual {
    position: static;
    margin-top: 2vw;
  }
  #mainvisual h2 {
    width: 90vw;
    margin: 0 0 5vw 0vw;
  }
  #mainvisual p {
    font-size: 3.5vw;
    line-height: 1.8em;
    margin: 0 0 0 5vw;
  }
  #wrap_mission {
    height: auto;
    position: static;
    padding: 30vw 0 10vw;
    background-size: auto 100%;
  }
  #mission {
    width: 90vw;
    flex-direction: column;
  }
  .mi_left {
    width: 100%;
    margin: 10vw 0 0;
  }
  .mi_left h2 {
    font-size: 9.4vw;
    margin-bottom: 5vw;
  }
  .mi_left h2 span {
    font-size: 4.0vw;
    margin-left: 2vw;
  }
  .mi_left p {
    font-size: 3.5vw;
    line-height: 1.8em;
  }
    .mi_left p.tx_kyou {
      font-size: 4.6vw;
      line-height: 1.8em;
      margin-left: 0px;
      margin-bottom: 1.0vh;
    }
    
  .mi_right {
    display: none;
  }
  .mi_right .mir_photo01, .mi_right .mir_photo02, .mi_right .mir_photo03 {
    position: static;
    margin: 2vw auto;
    display: block;
  }
  .mi_right .mir_photo01 img, .mi_right .mir_photo02 img, .mi_right .mir_photo03 img {
    display: block;
    width: 100%;
    height: auto;
  }
  #ogawa_inchou {
    display: none;
    /*width: 80vw;
    position: static;
    margin: 5vw auto;*/
  }
  .wrap_service {
    width: 100vw;
    height: auto;
    position: static;
    padding: 0vh 0px 4.0vh 0px;
  }
  .sbox_01 {
    width: 100%;
    height: auto;
    padding: 9vw 8vw;
    position: static;
    background-size: cover;
  }
  .sbox_01 h2 {
    font-size: 9.4vw;
    margin-bottom: 5vw;
  }
  .sbox_01 h2 span {
    font-size: 3.4vw;
    margin-left: 2vw;
  }
  .sbox_01 p {
    font-size: 3.2vw;
    line-height: 1.8em;
  }
  .sbox_02, .sbox_03, .sbox_04 {
    position: static;
    width: 90%;
    margin: 0 auto 5vw;
  }
  .sbox_02 a, .sbox_03 a, .sbox_04 a {
    font-size: 4.5vw;
    background: url("../images/ic_arr.png") no-repeat 96% 0.5vh;
    background-size: 6.2vw auto;
  }
  .sbox_02 p, .sbox_03 p, .sbox_04 p {
    font-size: 3.6vw;
    padding-right: 0;
  }
  .sbox_02 img, .sbox_03 img, .sbox_04 img {
    display: block;
    width: 80%;
    height: auto;
    margin: 0px auto 0.2vh;
  }
  .sbox_service {
    position: absolute;
    bottom: 0px;
    left: 0;
    z-index: 9;
  }
  .sbox_service img {
    display: block;
    width: 84%;
    height: auto;
  }
  .conductor {
    padding: 10vw 0;
    margin-bottom: 0;
  }
  .conductor h3 {
    width: 76vw;
    margin: 0px auto 3.0vh;
  }
  .conductor h3 img {
    display: block;
    width: 100%;
    height: auto;
  }
  .conductor p {
    font-size: 3.8vw;
  }
  .conductor a {
    width: 80vw;
    font-size: 3.8vw;
    padding: 5vw 0;
  }
  #profile {
    padding: 10vw 0;
    background: linear-gradient(90deg, #a8b1da 0%, #a8b1da 100%);
  }
  #profile h2 {
    font-size: 9.4vw;
    margin-bottom: 4vh;
  }
  #profile h2 span {
    display: block;
    font-size: 4.0vw;
  }
  #profile h3 {
    font-size: 5.0vw;
    line-height: 1.5em;
    margin-bottom: 2.6vh;
  }
  #profile p#ceoname {
      width: 100%;
      text-align: center;
    font-size: 8.0vw;
    margin: 0px 0px 4.0vh 0px;
  }
  #profile p#ceoname span {
    font-size: 4.0vw;
  }
  #profile ul {
    margin: 0px 0px 3.0vh 0px;
  }
  #profile ul li {
    font-size: 4.2vw;
    line-height: 1.4em;
    margin-bottom: 0.5vh;
  }
  #keireki {
    width: 90vw;
    position: static;
    margin: 5vw auto;
  }
  #keireki h4 {
    font-size: 6vw;
    width: 100%;
    position: static;
  }
  #keireki .keireki_white {
    width: 100%;
    position: static;
    padding: 8vw;
  }
  #keireki .keireki_white ol {
    text-align: left;
  }
  #keireki .keireki_white ol li {
    font-size: 3.8vw;
    line-height: 1.6em;
    margin-bottom: 0.4vh;
  }
  .pro_last {
    padding: 5vw;
  }
  .pro_last p {
    font-size: 4.0vw;
  }
  #topics {
    padding: 10vw 0;
  }
  .tblock {
    width: 90vw;
    padding: 3vw 0;
  }
  .tblock dl {
    padding: 0px 0px 1.2vh 0px;
    margin: 0px 0px 1.2vh 0px;
  }
  .tblock dl dt {
    width: 28%;
  }
  .tblock dl dt img {
    display: block;
    width: 100%;
    height: auto;
  }
  .tblock dl dd {
    width: 65%;
    padding: 0.4vh 0px 1.0vh 5%;
  }
  .tblock dl dd span.cat {
    font-size: 3.4vw;
    line-height: 1.0em;
    padding: 0.9vw 1.5vw 1.0vw;
    margin: 0 1.8vw 0.5vh 0;
  }
  .tblock dl dd span.date {
    font-size: 4.0vw;
    line-height: 1.2em;
    padding: 0.2vh 0px 0.6vh;
  }
  .tblock dl dd a {
    font-size: 3.6vw;
    line-height: 1.4em;
    padding: 0px 0px 0px 0px;
  }
  #topics .tblock:last-child {
    width: 90vw;
    margin-left: 0px;
    padding-left: 0px;
    border-left: none;
  }
  .h2_center, .h2_center_pur {
    width: 100%;
    font-size: 8vw;
    margin: 0px auto 3.5vh;
  }
  .h2_center span, .h2_center_pur span {
    font-size: 3.4vw;
  }
  .h2_center a {
    float: right;
    position: static;
    font-size: 3.4vw;
    margin-top: 0vh;
    display: block;
    text-align: center;
    padding: 0px 0 0px 0px;
    background: url("../images/bt_arrow_gray.png") no-repeat 30vw 0.2vh;
    background-size: auto 0.6vh;
  }
  .h2_center_pur a {
    width: 8.0vw;
    top: 2.0vh;
    right: 16vw;
  }
  .h2_center_pur a img {
    display: block;
    width: 100%;
    height: auto;
  }
  #instagram {
    padding: 6.0vh 0px 2.0vh;
  }
  #insta_area {
    width: 90vw;
    height: auto;
    margin-bottom: 10vw;
  }
	#insta_banner {
		clear: both;
		width: 90%;
		margin: 0px auto 2.0vh;
	}
	
  #contact {
    padding: 10vw 0;
  }
  #formbox {
    width: 90vw;
    padding: 7vw;
       border-radius: 6.0vw;
  }
  #formbox p.tx_center {
    font-size: 3.0vw;
  }
  #company {
    clear: both;
    width: 100%;
    padding: 6.0vh 0px 3.0vh;
  }
  #company h2 {
    font-size: 7.2vw;
    margin-bottom: 3.0vh;
  }
  #company h2 span {
    font-size: 3.8vw;
    font-weight: normal;
  }
  #company table {
    width: 92vw;
  }
  #company table th, #company table td {
    font-size: 3.4vw;
    padding: 5vw 3vw;
  }
  #company table th {
    width: 29%;
  }
  .flex {
    width: 90vw;
    flex-direction: column;
  }
  .f_left, .f_right {
    width: 100%;
    text-align: center;
  }
  .f_right img {
    display: block;
    width: 100%;
    height: auto;
  }
  footer {
    padding: 7.0vh 0 3.0vh;
  }
  #footer {
    width: 90vw;
  }
  #flogo {
    width: 46%;
    margin: 0px auto 2.0vh;
  }
  #flogo img {
    display: block;
    width: 100%;
    height: auto;
  }
  #footer .f_address {
    width: 100%;
    margin: 0px auto 2.0vh;
  }
  #footer .f_address p {
    font-size: 3.6vw;
  }
  #footer .f_address p strong {
    display: block;
    font-size: 4.0vw;
  }
  #footer ul#fmenu {
    display: block;
    margin: 0px 0px 2.5vh 0px;
  }
  #footer ul#fmenu li {
    display: inline-block;
    width: 48%;
    text-align: center;
    margin: 0px 0px 1.2vh 0px;
  }
  #footer ul#fmenu li a {
    font-size: 4.6vw;
    line-height: 1.6em;
  }
  #footer_last {
    padding: 3vw;
  }
  #footer_last #copyright {
    font-size: 2.8vw;
    text-align: center;
      margin-top: 0.7vh;
  }
  /**/
.button {
  margin-top: 3.4vh;
}
.button a {
  display: block;
  width: 80%;
  font-size: 4.0vw;
    padding: 2.0vh 0px 2.0vh;
  background-size: auto 8px;
    margin: 0px auto;
}
.button_mv {
  margin: 3.9vh 0px 0px 0px;
}
.button_mv a {
  display: block;
  width: 80%;
  font-size: 4.0vw;
    padding: 2.0vh 0px 2.0vh;
  background-size: auto 8px;
    margin: 0px auto;
}
    
    
    
}