/********************************** タブレットレイアウト **********************************/
@media all and (max-width: 959px) {
  
.sec_title{
  font-size:24px !important;
}

.sec_sub_title{
  font-size: 16px !important;
  margin: 0;
}

  .nobr{
    display: none;
  }
.aboutbr{
    display:block;
  }

  header nav{
    display: none;
  }

  footer{
    display: none !important;
  }
  .item_img{
    display: none;
  }
  
.start p {
	top: 40%;
	width: 50%;
}
.conA, .business, .about{
    background-image: none;
  }
  
.conA:before{
 background-position: center center;
 background-repeat: no-repeat;
 background-size: cover;
 position: fixed;
 top: 0;
 left: 0;
 margin-top:0;
 width: 100vw;
 height: 100vh;
 content: "";
 z-index: -1;
}

.conA.paraA:before{
 background-image:url(../img/top_visual.jpg);
}
.conA.paraB:before{
  background-image: linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)), url(../img/top_visual.jpg);
}
.conA.paraC:before{
 background-image:url(../img/company-bw.jpg);
}
  /********************************** ヘッダー **********************************/  
header {
  height: 50px;
  position: relative;
  top:0;
  left:0;
  background-color: rgba(255,255,255,1);
}

header h1 {
 margin:0;
 padding-right:0;
 position:absolute;
  left:20px;
}

/***** メニュー *****/
header img{
  width:150px;
  margin: 0;
}
/********************************** メインビジュアル **********************************/
.conA {
    margin-top: -50px;
}

  .message{
    padding-top:60px;
  }
.head_m1{
  width:40%;
}

.head_m2{
  width:95%;
  margin:20px 0;
}

.head_m3{
  width:50%;
}

.conB{
 padding:35px 10px;
}

.conB h4{
 font-size: 16px;
 line-height: 1.4;
 padding-bottom: 15px;
}
  
.conB p{
 font-size: 14px;
 letter-spacing: 1px;
}
  /********************************** 事業紹介 **********************************/
.business_title {
  padding-top: 25px;
  height:100px;
  margin-bottom: 30px
}
.business_title::before,
.business_title::after {
  content: '';
  width: 30px; /* 影をつけるために線幅で設定せずにboxを使用する */
  height: 30px;
  margin-left: -16px;
}
.business_title::before {
  bottom: -15px;
}
.business_title::after {
  bottom: -15px; /* 線の太さだけずらす */
}
  
.line {
  width: 101.5%;
}

.section{
  padding:40px 20px;
  flex-wrap: wrap;
}
.item{
  width:100%;
  padding:0;
}
.item_exp{
  margin:0;
}

.rev .item_exp{
  margin:0;  
}

  .item_img_s{
  display: block;
}
  
.item_img_s img{
  width:70%;
  margin:0 auto;
  display:block
}

.staff{
  width:80%;
  position: relative;
  top:0;
  left:0;
}
.cosmetics{
  width:80%;
  position: relative;
  top:0;
  left:0;
}
.overseas{
  width:90%;
  position: relative;
  top:0;
  left:0;
}

.wifi{
  width:90%;
  position: relative;
  top:0px;
  left:0;
}

.sec_exp_ja h2{
  font-size:22px;
  padding-top:30px;
  text-align: justify; 
}

.sec_exp_ja h4{
  font-size:20px;
  line-height: 1.3;
  padding-bottom: 10px;
    text-align: justify; 
}
  
  .sec_exp_ja p{
    text-align: justify; 
  }

.sec_exp_en_title{
  font-size: 18px;
  padding-bottom: 10px;
  display:inline-block;
}

.sec_exp_en_sub{
  padding-bottom: 10px;
  font-size: 18px;
  width: 100%;
  margin-top:3px;
}

.sec_exp_en p{
  font-size: 16px;

}
  
.sec_exp_en table{
    width:100%;
  }

.sec_exp_en th{
    padding-right:15px;
 }

.business .icon{
  width:50px;
  padding-bottom: 10px;
}
  
/********************************** 会社概要 **********************************/  
.about{
  padding:25px 0;
}

.about .arrow_down{
  width:50px;
  margin: 20px auto 20px auto;
}

.about table{
  width:100%;
  border-top:none;
}

.about th:nth-child(2){
  font-size: 16px;
  text-align: center;
  border-top:1px #000 solid;
  padding-top:10px;
  height: 66px;
  background-color:rgba(255,255,255,0.7);
}

.about td{
  padding:5px 0px 5px 0px;
  font-size: 16px;
  border: none;
  text-align: center;
}

.about table td, table th {
  display: block;
  width: 100%;
}

.about th:first-child{
    display: none;
  }
/********************************** アクセス **********************************/
  .access{
    padding-bottom: 30px;
  }
  .access .arrow_down{
  width:50px;
  margin: 20px auto 20px auto;
}
  
.gmap iframe {
height: 100%;
}

/********************************** お問い合わせ **********************************/
.contact {
  padding:30px 0;
  margin-bottom: 50px;
}

.contact .arrow_down{
  width:50px;
  margin: 20px auto 5px auto;
}

.form-horizontal{
  width:100%;
}

.form-group .text_la{
 padding:10px 0 !important;
}
  
.form-group .text-pd{
 padding:10px 0 !important;  
}
.form-group:not(:last-child){
  margin-bottom:45px !important;
}
  
  .error{
    font-size:12px;
  }
  .help-block{
    height: 15px;
    margin-top:5px;
  }
.form-group input{
  padding:30px 10px;
  }
  
.form-group textarea{
  padding-top:5px;
}

.form-group .btn{
  padding:10px;
  width:100%;
  font-size: 16px;
}

.asta_p{
  text-align:left;
  width:100%;
  margin-bottom: 10px;
  font-size: 14px;
}
  
.form-group input, .form-group textarea{
  font-size: 11px;
}
/********************************** フッター **********************************/
  
.bottom-sticky-nav {
height: 60px;
position: fixed;
display: block;
background: #ffffff;
bottom: 0;
left: 0;
right: 0;
z-index: 100;
  padding-bottom: 20px;
}
.bottom-sticky-nav ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
justify-content: space-evenly;
}
.bottom-sticky-nav ul li {
flex:1;
}
.bottom-sticky-nav ul li a {
display: flex;
flex-direction: column;
align-items: center;
padding: 11px;
height: 50px;
color: #19499e;
}
.bottom-sticky-nav ul li a:hover,
.bottom-sticky-nav ul li a:focus {
text-decoration: none;
}
.bottom-sticky-nav ul li a i {
font-size: 20px;
padding-bottom: 15px;
}
.bottom-sticky-nav ul li a span {
font-size: 12px;
line-height: 1.2;
}
 
  
/********************************** Thanks **********************************/
.background {
  top: 0;
}

.thanks_wrap{
  margin-top: 0;
  height: 90vh;
}

.thanks{
  padding:20px 0;
  width:60vw;
  margin:0 auto;
  top:80px;
}

.thanks h4{
  font-size:16px;
  font-weight: normal;
  padding:1px 0
}

.thanks p{
  margin:15px 0 0 0;
}
  
}

/********************************** スマホレイアウト **********************************/

@media all and (max-width: 559px) {
  
.sec_title{
  font-size:24px !important;
}

.sec_sub_title{
  font-size: 16px !important;
  margin: 0;
}

  .nobr{
    display: none;
  }
.aboutbr{
    display:block;
  }

  header nav{
    display: none;
  }

  footer{
    display: none !important;
  }
  .item_img{
    display: none;
  }
  
  .start p {
	width: 50%;
	top: 50%;
}

.conA, .business, .about{
    background-image: none;
  }
  
.conA:before{
 background-position: center center;
 background-repeat: no-repeat;
 background-size: cover;
 position: fixed;
 top: 0;
 left: 0;
 margin-top:0;
 width: 100vw;
 height: 100vh;
 content: "";
 z-index: -1;
}

.conA.paraA:before{
 background-image:url(../img/top_visual.jpg);
}
.conA.paraB:before{
  background-image: linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)), url(../img/top_visual.jpg);
}
.conA.paraC:before{
 background-image:url(../img/company-bw.jpg);
}
  /********************************** ヘッダー **********************************/  
header {
  height: 50px;
  position: relative;
  top:0;
  left:0;
  background-color: rgba(255,255,255,1);
}

header h1 {
 margin:0;
 padding-right:0;
 position:absolute;
  left:20px;
}

/***** メニュー *****/
header img{
  width:150px;
  margin: 0;
}
/********************************** メインビジュアル **********************************/
.conA {
    margin-top: -50px;
}

  .message{
    padding-top:60px;
  }
.head_m1{
  width:40%;
}

.head_m2{
  width:95%;
  margin:6px 0;
}

.head_m3{
  width:50%;
}

.conB{
 padding:35px 10px;
}

.conB h4{
 font-size: 16px;
 line-height: 1.4;
 padding-bottom: 15px;
}
  
.conB p{
 font-size: 14px;
 letter-spacing: 1px;
}
  /********************************** 事業紹介 **********************************/
.business_title {
  padding-top: 25px;
  height:100px;
  margin-bottom: 30px
}
.business_title::before,
.business_title::after {
  content: '';
  width: 30px; /* 影をつけるために線幅で設定せずにboxを使用する */
  height: 30px;
  margin-left: -16px;
}
.business_title::before {
  bottom: -15px;
}
.business_title::after {
  bottom: -15px; /* 線の太さだけずらす */
}
  
.line {
  width: 101.5%;
}

.section{
  padding:40px 20px;
  flex-wrap: wrap;
}
.item{
  width:100%;
  padding:0;
}
.item_exp{
  margin:0;
}

.rev .item_exp{
  margin:0;  
}

  .item_img_s{
  display: block;
}
  
.item_img_s img{
  width:100%;
  margin:0 auto;
  display:block
}

.staff{
  width:90%;
  position: relative;
  top:0;
  left:0;
}
.cosmetics{
  width:90%;
  position: relative;
  top:0;
  left:0;
}
.overseas{
  width:100%;
  position: relative;
  top:0;
  left:0;
}

.wifi{
  width:100%;
  position: relative;
  top:0px;
  left:0;
}

.sec_exp_ja h2{
  font-size:22px;
  padding-top:30px;
  text-align: justify; 
}

.sec_exp_ja h4{
  font-size:20px;
  line-height: 1.3;
  padding-bottom: 10px;
    text-align: justify; 
}
  
  .sec_exp_ja p{
    text-align: justify; 
  }

.sec_exp_en_title{
  font-size: 18px;
  padding-bottom: 20px;
  display:inline-block;
}

.sec_exp_en_sub{
  padding-bottom: 20px;
  font-size: 18px;
  width: 100%;
  margin-top:3px;
}

.sec_exp_en p{
  font-size: 16px;

}
  
.sec_exp_en table{
    width:100%;
  }

.sec_exp_en th{
    padding-right:15px;
 }

.business .icon{
  width:50px;
  padding-bottom: 10px;
}
  
/********************************** 会社概要 **********************************/  
.about{
  padding:25px 0;
}

.about .arrow_down{
  width:50px;
  margin: 20px auto 20px auto;
}

.about table{
  width:100%;
  border-top:none;
}

.about th:nth-child(2){
  font-size: 16px;
  text-align: center;
  border-top:1px #000 solid;
  padding-top:10px;
  height: 66px;
  background-color:rgba(255,255,255,0.7);
}

.about td{
  padding:5px 0px 5px 0px;
  font-size: 16px;
  border: none;
  text-align: center;
}

.about table td, table th {
  display: block;
  width: 100%;
}

.about th:first-child{
    display: none;
  }
/********************************** アクセス **********************************/
  .access{
    padding-bottom: 30px;
  }
  .access .arrow_down{
  width:50px;
  margin: 20px auto 20px auto;
}
  
.gmap iframe {
height: 100%;
}

/********************************** お問い合わせ **********************************/
.contact {
  padding:30px 0;
  margin-bottom: 50px;
}

.contact .arrow_down{
  width:50px;
  margin: 20px auto 5px auto;
}

.form-horizontal{
  width:100%;
}

.form-group .text_la{
 padding:10px 0 !important;
}
  
.form-group .text-pd{
 padding:10px 0 !important;  
}
.form-group:not(:last-child){
  margin-bottom:45px !important;
}
  
  .error{
    font-size:12px;
  }
  .help-block{
    height: 1px;
  }
.form-group input{
  padding:15px;
  }
  
.form-group textarea{
  padding-top:5px;
}

.form-group .btn{
  padding:10px;
  width:100%;
  font-size: 16px;
}

.asta_p{
  text-align:left;
  width:100%;
  margin-bottom: 10px;
  font-size: 14px;
}
  
.form-group input, .form-group textarea{
  font-size: 11px;
}
/********************************** フッター **********************************/
  
.bottom-sticky-nav {
height: 60px;
position: fixed;
display: block;
background: #ffffff;
bottom: 0;
left: 0;
right: 0;
z-index: 100;
  padding-bottom: 20px;
}
.bottom-sticky-nav ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
justify-content: space-evenly;
}
.bottom-sticky-nav ul li {
flex:1;
}
.bottom-sticky-nav ul li a {
display: flex;
flex-direction: column;
align-items: center;
padding: 12px;
height: 50px;
color: #19499e;
}
.bottom-sticky-nav ul li a:hover,
.bottom-sticky-nav ul li a:focus {
text-decoration: none;
}
.bottom-sticky-nav ul li a i {
font-size: 20px;
padding-bottom: 10px;
}
.bottom-sticky-nav ul li a span {
font-size: 12px;
line-height: 1.2;
}
 
  
/********************************** Thanks **********************************/
.background {
  top: 0;
}

  
.thanks_wrap{
  margin-top: 0;
  height: 90vh;
}

.thanks{
  padding:20px 0;
  width:90vw;
  margin:0 auto;
  top:150px;
}

.thanks h4{
  font-size:16px;
  font-weight: normal;
  padding:1px 0
}


.thanks p{
  margin:15px 0 0 0;
}
}