@media screen and (max-width: 768px) {
/* 767pxまでの幅の場合に適応される */

body{
	/*overflow: hidden;*/
}
html{
  height: -webkit-fill-available;
}
body{
  min-height: 100vh;
  min-height: -webkit-fill-available;
}

a,
a:visited {
  text-decoration: none;
  transition: unset;
}
a {
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  cursor:pointer;
}
*:focus {
  outline: none;
}

/*共通設定*/
.pc-none{
  display: block !important;
}
.sp-none{
  display: none !important;
}

.row{
  width:100%;
  margin:0 auto;
  text-align:center;
}
.in_row{
  width:100%;
  margin:0 auto;
  text-align:center;
}
.in_row12{
  width:100%;
  margin:0 auto;
  text-align:center;
}


/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/
div.logo{
  width: 42%;
  padding: 10px;
  margin-right: auto;
}
div.head_in{
  padding-top: 0px ;
}
/*ヘッダー固定のスタイル*/
div.head_wrap.HeightMin{
  position: fixed;
  top:0;
  height: auto !important;
  background: #fff;
  padding: 0;
  z-index: 1000;
  height: auto;
}
div.head_wrap.HeightMin .head_in{
  padding-top: 0px;
}
/*--------------------------------
ナビゲーション
---------------------------------*/
/*ハンバーガーメニューが開いた時はスクロール禁止にする*/
.open {
/*  width: 100%;
  height: 100%;*/
  position: fixed;
}
/*body.fixed{
  position: fixed;
  width:100%;
}*/
.navi_area{
	position: absolute;
	width: 100%;
}
.mainnavi {
	width: 12%;
  display: block;
  top:10px;
  position:fixed;
  right: 10px;
  z-index:300001;
}
#hamburgerbtn {
	position: relative;
  color:#231815;
  cursor: pointer;
  width:100%;
  padding:10px 0px 10px;
  box-sizing: border-box;
  z-index: 300001;
  font-size:14px;
}
#hamburgerbtn span {
  display: block;
  width: 100%;
  color:#fff;
  height: 1px;
  background: #fff;
  border-radius: 5px;
  margin-bottom: 10px;
  z-index: 300000;
}
/*ナビの色*/
div.head_wrap.HeightMin #hamburgerbtn span{
  color: #231815 !important;
  background: #231815 !important;
  z-index: 300000;
}

#hamburgerbtn span:nth-of-type(3) {
  margin-bottom: 3px;
}
/*
  ハンバーガーメニューがクリックされたら
  上の線を真ん中に移動させて45℃回転
*/
.open #hamburgerbtn span:nth-of-type(1){
  transform: rotate(45deg);
  margin:10px 0 0 0;
}
/* 
  ハンバーガーメニューがクリックされたら
  真ん中の線は透明化して見えないようにする
*/
.open #hamburgerbtn span:nth-of-type(2) {
  opacity: 0; 
}
/*
  ハンバーガーメニューがクリックされたら
  下の線は真ん中に移動させて-45℃回転
*/
.open #hamburgerbtn span:nth-of-type(3){
  transform: rotate(-45deg);
  margin:-12px 0 13px 0;
}
#splayer {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  background: #0d0f50;
  height: 100vh;
  z-index: 20000;
}
#gmenu {
  display: none;
  position: fixed;
  -webkit-overflow-scrolling:auto;
  top: 0;
  width:100%;
  left: 0;
  height: auto;
  list-style: none;
  margin:0px;
  z-index: 300000;
  background: none;
}
#gmenu li{
  background: none;
  width:100%;
  display: block;
  text-align:left;
  border:none;
  margin:0;
  padding:20px 0 10px 20px;
  border-radius: 0px;
  box-sizing: border-box;
  border-bottom: 1px solid #fff;
}
#gmenu li:last-child{
  padding:20px 0 0px 20px;
  margin:0;
  text-align: left;
}
#gmenu li a{
  color: #fff;
  display: block;
  position: relative;
  text-decoration: none;
  padding: 0 0 10px 0;
}
#gmenu li a span.atx{
  display: block;
  font-size: 1.536rem;/*15.4px*/
  letter-spacing: 0.2em;
  padding: 0 0 4px;
  font-weight: 900;
}
#gmenu li a span.btx{
  display: block;
  font-size: 1.097rem;
  letter-spacing: 0.1em;
  font-weight: 900;
}
#gmenu li:last-child .atx{
  border: none;
  padding: 0 0px 0;

}
#gmenu li:last-child .btx{
  text-align: left;
}
#gmenu a::before,
#gmenu a::after {
  border-bottom: solid 2px #fff;
  bottom: 0;
  content: "";
  display: none;
  position: absolute;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
#gmenu a::before {
  left: 50%;
}
#gmenu a::after {
  right: 50%;
}
#gmenu a:hover::before,
#gmenu a:hover::after {
  width: 50%;
}

/*--------------------------------------------------------
main view
--------------------------------------------------------*/
.kv .kv_wrap {
  height:100vh;
  height: -webkit-fill-available;
  /*iphoneのアドレスバーの高さを省く処理*/
}

.kv .kv01 {
  background-size: auto 67vh;
  background-image: url(../images/kv_img01.jpg);
  background-position: 45% top;
}
.kv .kv02 {
  background-size: auto 67vh;
  background-image: url(../images/kv_img02.jpg);
  background-position: 35% top;
}
.kv .kv03 {
  background-size: auto 67vh;
  background-image: url(../images/kv_img03.jpg);
  background-position: center top;
}
.kv .kv04 {
  background-size: auto 67vh;
  background-image: url(../images/kv_img04.jpg);
  background-position: 65% top;
}
div.kv_text01{
	height: 67vh;
	width: 100%;
  position: relative;
  right: 0;
  bottom: 0;
  top: 0;
  left: 0;
  margin: 0 auto;
  text-align: center;
}
div.kv_text01 h1{
	font-size: 2.698rem;
	letter-spacing: 0.2em;
	position: absolute;
	bottom: 4%;
	left: 7%;
}
div.kv_text02{
	height: 23vh;
  position: relative;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  text-align: center;
  padding: 15px 10px 0;
}
div.kv_text02 h2{
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: -0.1em;
  line-height: 1.75;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
}
.kv02 div.kv_text02 h2{
  line-height: 1.75;
}
div.kv_text02 p{
  text-align: center;
  font-size: 1.2rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 500;
  line-height: 1.75;
}
/*iphone 7,8用*/
@media screen and (max-width: 375px) { 
	.kv .kv01 {
	  background-size: auto 64vh;
	}
	.kv .kv02 {
	  background-size: auto 64vh;
	}
	.kv .kv03 {
	  background-size: auto 64vh;
	}
	.kv .kv04 {
	  background-size: auto 64vh;
	}
	div.kv_text01{
		height: 64vh;
	}
	div.kv_text02{
		height: 20vh;
	}
}

div.kv_scroll{
	display: none;
}
ul.kv_news_list{
  position: absolute;
  bottom: 1%;
  right: 0;
  left: 2.5%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 95%;
  height: 40px;
  background: #fff;
  padding: 0;
  z-index: 2;
  border: 1px solid #231815;
}
ul.kv_news_list li{
  margin: 0 auto;
  text-align: center;
}
ul.kv_news_list li:first-child{
  border-right: 1px solid #000;
  padding: 7px  20px 7px 10px;
}

ul.kv_news_list li h3{
  font-size: 1.359rem;
  letter-spacing: 0.2em;
  text-align: center;
  font-weight: 700;
}
ul.kv_news_list li p{
  font-size: 1rem;
  letter-spacing: 0.2em;
  font-weight: 700;
  padding:0;
}
ul.kv_news_list li a{
	display: block;
	width: 100%;
	color: #231815;
  margin: 0 auto;
  text-align: center;
}
/*--------------------------------------------------------
about
--------------------------------------------------------*/
div.about{
  padding: 20px 15px 20px;
}
div.about_in{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 0;
  box-sizing: border-box;
}
div.about_l{
  width: 100%;
  text-align: left;
}
div.about_r{
  width: 100%;
  text-align: center;
}
div.about_r img{
  width: 100%;
}
.about h2{
	font-size: 2.0rem;
  padding: 0 0 10px 0px;
}
.about h2 span{
	font-weight: 700;
}
.about h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 70px;
  height: inherit;
  border-bottom: 1px solid #231815;
}
.about h3{
	font-size: 2.1rem;
  padding: 20px 0 10px 0px;
  box-sizing: border-box;
  letter-spacing: -0.1em;
}
.about p{
	font-size: 1.4rem;
  padding: 0 0 10px 0px;
  box-sizing: border-box;
}

/*about service*/
div.about_sv{
  background-image: url(../images/sora_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  height: auto;
  margin: 20px auto 10px;
  padding: 35px 20px 35px;
  box-sizing: border-box;
}
ul.about_list{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
}
ul.about_list li{
  padding: 15px;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto 10px;
}

ul.about_list li h3{
  font-size: 1.719rem;
  letter-spacing: 0.2em;
  font-weight: 900;
  border-bottom: none;
  padding: 0 0 10px 15px;
  box-sizing: border-box;
  position: relative;
}
ul.about_list li h3 span{
  margin-top: -6px;
  display: block;
  font-size: 1.114rem;
  letter-spacing: 0.2em;
  font-weight: 700;
}
ul.about_list li h3:before {
  content: "";
  position: absolute;
  left: 15px;
  bottom: -1px;
  width: 80px;
  height: inherit;
  border-bottom: 1px solid #231815;
}
ul.about_list li p{
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  line-height: 1.75;
  padding: 15px 0 15px 15px;
  box-sizing: border-box;
}

/*--------------------------------------------------------
business
--------------------------------------------------------*/
div.business{
  background: #0d0f50;
  padding: 20px 15px 20px;
  box-sizing: border-box;
  height: 100%;
  display: flex;
  flex-direction: column;
}
div.business_menu{
  flex-direction: column;
  position: relative;
  right: 0;
  width: 100%;
  order: 2;
  padding: 20px 0 0px 0;
}
ul.business_list01{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
}
ul.business_list01 li{
  width: 100%;
  padding: 0 20px 12px 20px;
  box-sizing: border-box;
  display: flex;
  align-items: flex-end;
  height: 230px;
  position: relative;
  overflow: hidden;
}
ul.business_list01 li:after{
  background-image: url(../images/sv_bg01.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all .3s ease-out;
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
ul.business_list02{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
}
ul.business_list02 li{
  width: 100%;
  padding: 0 20px 12px 20px;
  box-sizing: border-box;
  display: flex;
  align-items: flex-end;
  height: 230px;
  position: relative;
  overflow: hidden;
}
ul.business_list02 li:nth-child(1):after{
  background-image: url(../images/sv_bg02.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right 10% top 10%;
  transition: all .3s ease-out;
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
ul.business_list02 li:nth-child(2):after{
  background-image: url(../images/sv_bg03.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  transition: all .3s ease-out;
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}





div.business_box{
  z-index: 1;
  background:rgba(255,255,255,0.85);
  border: 2px solid #fff;
  padding: 15px 12px 12px 14px;
  box-sizing: border-box;
  width: 100%;
}
div.business_box h3{
  font-size: 1.719rem;
  font-weight: 900;
  letter-spacing: normal;
  border-bottom: none;
  padding: 0 0 17px 0px;
  box-sizing: border-box;
  position: relative;
}
div.business_box h3 b{
  font-size: 1.719rem;
  font-weight: 900;
  letter-spacing: -0.25em !important;
}
div.business_box h3 span{
  display: block;
  font-size: 1.114rem;
  letter-spacing: 0.2em;
  font-weight: 700;
}
div.business_box h3:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 70px;
  height: inherit;
  border-bottom: 1px solid #231815;
}
div.busi_more{
  margin: 10px auto 0;
  text-align: right;
}
div.busi_more img{
  height: 27.2px;
  object-fit: contain;
}
div.busi_more a{
  width: auto;
  display: inline-block;
  transition-duration: 0.5s;
  transition: .3s ease-in-out;
  text-align: right;
}
div.busi_more a:hover{
  box-shadow: 0 3px 7px rgba(0, 0, 0, .25);
  transform: translateY(-2px);
}

div.business_in{
  height: 100%;
}
div.business_tx{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 10px 0 0 0;
}
.business_tx h2{
	font-size: 2.0rem;
  font-weight: 900;
  border-bottom: 2px solid #0d0f50;
  padding: 0 0 14px 0px;
  box-sizing: border-box;
  position: relative;
  color: #fff;
}
.business_tx h2 span{
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin: 3px 0 0 3px;
}
.business_tx h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 70px;
  height: inherit;
  border-bottom: 1px solid #fff;
}
.business_tx p{
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 2.25;
  padding: 0 0 0px 0px;
  box-sizing: border-box;
  margin:20px 0 0 0;
}


/*--------------------------------------------------------
works
--------------------------------------------------------*/
div.works{
  background: #f7f8f8;
  padding: 20px 15px 20px;
  box-sizing: border-box;
}
div.works_in{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 0px;
  box-sizing: border-box;
}
div.works_l{
  text-align: left;
  width: 100%;
}
div.works_r{
 	width: 100%;
  text-align: center;
}
.works h2{
  font-size: 20px;

  padding: 10px 0 10px 0px;
}
.works h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width:70px;
  height: inherit;
  border-bottom: 1px solid #231815;
}
ul.works_list{
  margin: 20px auto 0;
}
ul.works_list li{
  margin: 0 5px 0;
  position: relative;
}
ul.works_list li h3{
	letter-spacing: 0.075em;
  font-size: 2.0rem;
}
ul.works_list li a:hover{
  opacity: 0.8;
}
.works_l p{
	font-size: 1.4rem;
	line-height: 1.75;

	letter-spacing: normal;
  padding: 20px 0 10px 0px;
  box-sizing: border-box;
}
div.works_more{
  margin: 10px 0 0 0px;
  text-align: left;
}
div.works_more a{
  width: 75px;
  display: block;
  transition-duration: 0.5s;
  transition: .3s ease-in-out;
  text-align: left;
}

ul.works_list{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 30px auto 0;
}
ul.works_list li{
  position: relative;
  width: 32%;
  height: auto;
  margin: 0 0 0 0px;
  overflow:hidden;
}
ul.works_list li img{
 transition:1s all;
}
ul.works_list li img:hover{
  transform:scale(1.2,1.2);
  transition:1s all;
}
ul.works_list li h3{
  z-index: 1;
  position: absolute;
  left: 0;
  right: 0;
  margin: 20px auto 0;
  letter-spacing: normal;
  font-size: 2rem;
  font-family: din-2014;
  font-weight: 300;
  font-style: normal;
  text-align: center;
  color: #fff;
}
/*--------------------------------------------------------
cta
--------------------------------------------------------*/
div.cta_wrap{

}
div.cta_in{
  background: #0d0f50;
  padding: 30px 15px 30px;
}
.cta_in a:hover{
  opacity: 0.8;
}
div.cta_in_wrap{
  text-align: center;
  margin:0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
div.cta_in_wrap h2{
  font-size: 2.0rem;
  letter-spacing: 0.075em;
  color: #fff;
  font-weight: 900;
}
div.cta_in_wrap h2 span{
  font-size: 1.3rem;
  letter-spacing: 0.2em;
  text-align: center;
  font-weight: 400;
  display: block;
  margin: 6px 0 0 0;
}
div.cta_in_wrap p{
  font-size: 1.3rem;
  letter-spacing: -0.1rem;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  padding: 20px 0 20px;
}
ul.cta_list{
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}
ul.cta_list li{
  width: 70%;

}
ul.cta_list li a{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 36px;
  border: 1px solid #fff;
  border-radius: 5px;
  background:rgba(255,255,255,0.4);
  text-align: center;
  box-sizing: border-box;
  margin-bottom: 10px;
  color: #fff;
  font-size: 1.44rem;
  letter-spacing: normal;
  font-family: 'Zen Kaku Gothic New' !important;
  font-weight: 500;
  position: relative;
  z-index: 1;
  transition: .3s;
}
ul.cta_list li a::before {
  border: 1px solid #fff;
  border-radius: 5px;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform ease .3s;
}
ul.cta_list li a:hover {
  color: #fff;
}
ul.cta_list li a:hover::before {
  background: #0d0f50;
  transform-origin: 50% 100%;
  transform: scaleY(1);
}
ul.cta_list li a span{
  letter-spacing: -0.05em;
}
div.cta_box{
  display: flex;
  justify-content: space-around;
  flex-direction: column;
  align-items: top;
  width: 100%;
  margin: 17px auto 0;
}
div.cta_l{
  width: 100%;
  border: none;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 40px 0 40px;
}
div.cta_l p{
  font-size: 1.455rem;
  letter-spacing: 0.1em;
  margin: 0;
  padding: 0 0 10px 0;
}
div.cta_r{
  width: 100%;
  border: none;
  margin: 0 auto;
}
div.cta_r p{
  font-size: 1.455rem;
  letter-spacing: 0.1em;
  margin: 0;
  padding: 0;
}
div.cta_r p span{
  text-align: center;
  display: block;
  font-size: 1.273rem;
  letter-spacing: 0.075em;
  margin: 0;
  padding: 0;
}
div.cta_l a{
  width: 75%;
  display: block;
  text-align: center;
  margin: auto;
  transition-duration: 0.5s;
  transition: .3s ease-in-out;
}
div.cta_l img{
  width: 100%;
  text-align: center;
  margin: auto;
}
div.cta_l a:hover{
  box-shadow: 0 3px 7px rgba(255, 255, 255, .25);
  transform: translateY(-2px);
  opacity: 0.7;
}

div.tel_box{
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
div.tel_box a{
  display: flex;
  justify-content: center;
  align-items: center;
  transition-duration: 0.5s;
  transition: .3s ease-in-out;
}
div.tel_box a:hover{
  transform: translateY(-2px);
  opacity: 0.7;
}

div.tel{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 47px;
  height: 47px;
  border-radius: 47px;
  font-size: 2.956rem;
  text-align: center;
  border: 2px solid #fff;
  font-family: din-2014;
  font-weight: 300;
  font-style: normal;
  color: #fff;
}
div.tel_number{
  padding: 0 0 0 10px;
  font-size: 4.691rem;
  text-align: center;
  font-family: din-2014;
  font-weight: 300;
  font-style: normal;
  color: #fff;
}



/*--------------------------------------------------------
top news
--------------------------------------------------------*/
div.topnews{
  background: #f7f8f8;
  padding: 10px 15px 10px;
  box-sizing: border-box;
}
div.topnews_in{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 10px 0 10px;
  box-sizing: border-box;
}
div.topnews_l{
  text-align: left;
  width: 100%;
   display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
div.topnews_r{
  width: 100%;
  text-align: center;
}
.topnews h2{
  font-size: 20px;
  padding: 0 0 10px 0px;
}
.topnews h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 70px;
  height: inherit;
  border-bottom: 1px solid #231815;
}
div.topnews_more{
  margin: 10px 0 0 auto;
  text-align: left;
}

ul.topnews_list{
  width: 100%;
  margin: 20px auto 0;
}
ul.topnews_list li{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 10px ;
  box-sizing: border-box;
  height: auto;
}
ul.topnews_list li:nth-child(2n+1){
  background: #fff;
}
div.cate_green{
  min-width: 100px;
  font-size: 1.1rem;
  padding: 5px;
  border-radius: 3px;
}
div.cate_orange{
  min-width: 100px;
  font-size: 1.1rem;
  padding: 5px;
  border-radius: 3px;
}
ul.topnews_list li p{
  padding: 10px 0 0 0px;
  font-size: 12px;
}
ul.topnews_list li p a{
  color: inherit;
}
ul.topnews_list li p a:hover{
  color: #81c31f;
}

/*--------------------------------------------------------
footer
--------------------------------------------------------*/
div.foot_wrap{
  background: #0d0f50;
  padding: 20px 15 20px;
}
div.foot_navi_wrap{
	display: block;
  padding: 0px;
}
div.foot_navi_in{
	width: 50%;
	height: auto;
	display: block;
	float: left;
	padding: 0 0 0 40px;

}
div.foot_navi_wrap div.foot_navi_in:first-child{
  margin: 0px;
}
div.foot_navi_wrap div.foot_navi_in:nth-child(2){
  margin: 0px;
}
div.foot_navi_wrap div.foot_navi_in:nth-child(3){
  margin-left: auto;
}
div.foot_navi_wrap div.foot_navi_in:last-child{
	width: 100%;
  margin: 0px;
}
div.foot_navi_wrap div.foot_navi_in:first-child ul.foot_navi:first-child{
  margin-bottom: 20px;
}
ul.foot_navi{
  padding: 0 0 20px 0;
}
ul.foot_navi li{
  color: #fff;
  display: block;
  font-size: 1.097rem;
  letter-spacing: 0.1em;
  font-weight: 900;
  padding: 0 0 7px;
}
ul.foot_navi li a{
  color: #fff;
  display: inline-block;
  font-size: 1.097rem;
  letter-spacing: 0.1em;
  font-weight: 900;
  padding-left: 3px;
  transition-duration: 0.5s;
  transition: .3s ease-in-out;
}
ul.foot_navi li a:hover{
  border-bottom: 1px solid #fff;
  transform: translateY(-2px);
}

ul.foot_navi li h4{
  display: block;
  font-size: 1.536rem;
  letter-spacing: 0.2em;
  padding: 0 0 10px;
  font-weight: 700;
}
ul.foot_navi li h3{
  padding: 20px auto 20px ;
}
ul.foot_navi li h3 img{
  width: 143px;
}
div.copy_wrap{
 
}
div.copy{
	clear: both;
	padding: 10px 0 0 0;
}
div.copy h5{
  font-size: 0.727rem;
  letter-spacing: normal;
  font-family: 'Zen Kaku Gothic New' !important;
  font-weight: 400;
  color: #fff;
  text-align: center;
}
#pagetop{
  width: 32px;
  height: 32px;
  position: fixed;
  right: 10px;
  bottom: 35px;
  border-radius: 50%;
  z-index: 100;
}
#pagetop a{
  position: relative;
  display: inline-block;
  width: 32px;
  height: 32px;
  text-decoration: none;
  text-align: center;
  transition-duration: 0.5s;
  transition: .3s ease-in-out;
  display: flex;
  justify-content: center;
  align-items: center;
}

#pagetop a:hover{
  transform: translateY(-2px);
  opacity: 0.7;
}





/*--------------------------------------------------------
下層ページ　コンテンツ
--------------------------------------------------------*/

/*--------------------------------------------------------
ヘッダー  TOPと下層の2種類のヘッダーがある
--------------------------------------------------------*/
div.logo{
  width: 42%;
  padding: 10px;
  margin-right: auto;
}
div.head_low_in{
  padding-top: 0px ;
  padding-bottom: 0;
}
div.head_wrap_low{
  position: fixed;
  top:0;
  height: auto !important;
  background: #fff;
  padding: 0;
  z-index: 1000;
  height: auto;
}
/*ヘッダー固定のスタイル*/
div.head_wrap_low.HeightMin{
  position: fixed;
  top:0;
  height: auto !important;
  background: #fff;
  padding: 0;
  z-index: 1000;
  height: auto;
}
div.head_wrap_low.HeightMin .head_low_in{
  padding-top: 0px;
}

/*--------------------------------
ナビゲーション
---------------------------------*/
/*ハンバーガーメニューが開いた時はスクロール禁止にする*/
.open {
  position: fixed;
  width: 100%;
  height: 100%;
}
.head_wrap_low .navi_area{
	position: absolute;
	width: 100%;
}
.head_wrap_low .mainnavi {
	width: 12%;
  display: block;
  top:10px;
  position:fixed;
  right: 10px;
  z-index:300001;
}
.head_wrap_low #hamburgerbtn {
	position: relative;
  color:#fff;
  cursor: pointer;
  width:100%;
  padding:10px 0px 10px;
  box-sizing: border-box;
  z-index: 300001;
  font-size:14px;
}
.head_wrap_low #hamburgerbtn span {
  display: block;
  width: 100%;
  color:#fff;
  height: 1px;
  background: #231815;
  border-radius: 5px;
  margin-bottom: 10px;
  z-index: 300000;
}
/*ナビの色*/
div.head_wrap_low.HeightMin #hamburgerbtn span{
  color: #231815 !important;
  background: #231815 !important;
  z-index: 300000;
}

.head_wrap_low #hamburgerbtn span:nth-of-type(3) {
  margin-bottom: 3px;
}
/*
  ハンバーガーメニューがクリックされたら
  上の線を真ん中に移動させて45℃回転
*/
.open .head_wrap_low #hamburgerbtn span:nth-of-type(1){
  transform: rotate(45deg);
  margin:10px 0 0 0;
  background: #fff !important;
}
/* 
  ハンバーガーメニューがクリックされたら
  真ん中の線は透明化して見えないようにする
*/
.open .head_wrap_low #hamburgerbtn span:nth-of-type(2) {
  opacity: 0; 
}
/*
  ハンバーガーメニューがクリックされたら
  下の線は真ん中に移動させて-45℃回転
*/
.open .head_wrap_low #hamburgerbtn span:nth-of-type(3){
  transform: rotate(-45deg);
  margin:-12px 0 13px 0;
  background: #fff !important;
}
.head_wrap_low #splayer {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  background: #0d0f50;
  height: 100vh;
  z-index: 20000;
}
.head_wrap_low #gmenu {
  display: none;
  position: fixed;
  top: 0;
  width:100%;
  left: 0;
  height: auto;
  list-style: none;
  margin:0px;
  z-index: 300000;
  background: none;
}
.head_wrap_low #gmenu li{
  background: none;
  width:100%;
  display: block;
  text-align:left;
  border:none;
  margin:0;
  padding:20px 0 10px 20px;
  border-radius: 0px;
  box-sizing: border-box;
  border-bottom: 1px solid #fff;
}
.head_wrap_low #gmenu li:last-child{
  padding:20px 0 0px 20px;
  margin:0;
  text-align: left;
}
.head_wrap_low #gmenu li a{
  color: #fff;
  display: block;
  position: relative;
  text-decoration: none;
  padding: 0 0 10px 0;
}
.head_wrap_low #gmenu li a span.atx{
  display: block;
  font-size: 1.536rem;/*15.4px*/
  letter-spacing: 0.2em;
  padding: 0 0 4px;
  font-weight: 900;
}
.head_wrap_low #gmenu li a span.btx{
  display: block;
  font-size: 1.097rem;
  letter-spacing: 0.1em;
  font-weight: 900;
}
.head_wrap_low #gmenu li:last-child .atx{
  border: none;
  padding: 0 0px 0;

}
.head_wrap_low #gmenu li:last-child .btx{
  text-align: left;
}
.head_wrap_low #gmenu a::before,
.head_wrap_low #gmenu a::after {
  border-bottom: solid 2px #fff;
  bottom: 0;
  content: "";
  display: none;
  position: absolute;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
.head_wrap_low #gmenu a::before {
  left: 50%;
}
.head_wrap_low #gmenu a::after {
  right: 50%;
}
.head_wrap_low #gmenu a:hover::before,
.head_wrap_low #gmenu a:hover::after {
  width: 50%;
}

/*--------------------------------
下層ページのKV
--------------------------------*/
.kvlow{
  background: #f7f8f8;
  margin: 70px 0 0 0;
}
.kvlow .kv_low_wrap{
  height: 143px;
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
}
.low_about{
  background-position: center center;
  background-image: url(../images/sora_bg.jpg);
}
.low_business{
  background-position: center center;
  background-image: url(../images/kv_low_img02.jpg);
}
.low_wolks{
  background-position: center center;
  background-image: url(../images/kv_low_img03.jpg);
}
.low_news{
  background-position: center center;
  background-image: url(../images/kv_low_img04.jpg);
}
.low_recruit{
  background-position: center center;
  background-image: url(../images/kv_low_img05.jpg);
}
.low_contact{
  background-position: center center;
  background-image: url(../images/kv_low_img06.jpg);
}



/*パンくずリスト*/
ul.breadcrumb{
	display: none;
}


/*--------------------------------------------------------
やまきグループについて
--------------------------------------------------------*/
div.low_about_in{
  padding:40px 15px 40px;
}
.lowtitle h2{
  font-size: 2.0rem;
}
ul.low_about_list{
  margin: 30px auto 0;
  width: 100%;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
  flex-wrap: wrap;
}
ul.low_about_list li{
  width: 50%;
}
ul.low_about_list li a{
  border-right-width: 0;/* 一旦右の線を0にする */
  font-size: 1.455rem;
  padding: 12px 0 12px;
}
ul.low_about_list li:first-child{

}
ul.low_about_list li:nth-child(2) a {
	border-right-width: 2px;
}
ul.low_about_list li:nth-child(3) a {
	border-top-width: 0px;
}
ul.low_about_list li:last-child a {
	border-top-width: 0px;
}
div.philosophy_wrap{
  width: 100%;
  margin: 0 auto;
  padding: 47px 0 0px;
}
div.philosophy_wrap h3{
  font-size: 2.1rem;
  padding-bottom: 25px;
}
div.philosophy_wrap p{
  font-size: 1.4rem;
  letter-spacing: -0.06em;
}
div.philosophy_wrap h4{
  font-size: 2.0rem;
  padding: 85px 0 17px;
}
.philosophy_logo{
  width: 55%;
  text-align: center;
  margin: 0 auto;
  padding: 0 0 17px 0;
}

/* 会社概要　profile */
div.profile_wrap{
  width: 100%;
  margin: 0 auto;
  padding:39px 0 39px;
  text-align: center;
}
table.profile_tb{
  width: 100%;
}
table.profile_tb tr:nth-child(odd){
  background: #fff;
}
table.profile_tb tr:nth-child(even){

}
table.profile_tb th{
	font-weight: 900;
	display: block;
	width: 100%;
  line-height: 1.75;
  padding: 7px 7px 0 7px;
  font-size: 1.4rem;
}
table.profile_tb td{
	display: block;
	width: 100%;
  line-height: 1.75;
  padding: 0px 7px 7px 7px;
  font-size: 1.4rem;
  word-break : break-all;
  white-space: normal;
}
table.profile_tb th::after{
	display: none;
}

table.profile_tb2{
  width: 100%;
}
table.profile_tb2 tr:nth-child(odd){
}
table.profile_tb2 tr:nth-child(even){
  background: #fff;

}
table.profile_tb2 th{
	font-weight: 900;
	display: block;
	width: 100%;
  line-height: 1.75;
  padding: 7px 7px 0 7px;
  font-size: 1.4rem;
}
table.profile_tb2 td{
	display: block;
	width: 100%;
  line-height: 1.75;
  padding: 0px 7px 7px 7px;
  font-size: 1.4rem;
  word-break : break-all;
  white-space: normal;
}
table.profile_tb2 th::after{
	display: none;
}

table.profile_tb dl{
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: column;
}
table.profile_tb dl dt{
  width: 100%;
}
table.profile_tb dl dd{
  width: 100%;
  text-align: right;
  border-bottom: 1px solid #ccc;
  padding: 0 0 3px 0;
}
div.access_wrap{
  margin: 10px 0 0 0;
  height: 432px;
  width: 100%;
}
div.access_wrap iframe{
  width: 100%;
  height: 100%;
}
div.access_tx{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  padding: 10px 0 0 0;
}
div.access_tx p{ 
	font-size: 1.2rem;
  letter-spacing: 0.05em;
}
div.access_tx a{
  margin-left: 0;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
/* トップメッセージ　message */
div.message_wrap{
  width: 100%;
  margin: 0 auto;
  padding:39px 0 20px;
  text-align: center;
}
div.message_wrap h2{
  font-size: 1.8rem;
}
div.message_box{
  width: 100%;
  background: #fff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  margin: 10px auto 0px;
}
div.message_l{
  margin-right: auto;
}
div.message_r {
  margin-right: auto;
  text-align: left;
}
div.message_r h3{
  font-size: 2.0rem;
  padding: 10px 0 0 10px;
}
div.message_r p{
  padding: 20px 0 0 10px;
  color: #0d0f50;
  font-size: 1.343rem;
  letter-spacing: normal;
  font-weight: 700;
  line-height: 2.33;
}
div.sign_box{
  padding: 0 0 10px 0;
}
div.history_box h3{
  padding: 20px 0 15px 5px;
}
table.history_tb{
  margin: 10px auto 0;
}

/* ヤマキグループ　yamakigroup */
div.ygroup_wrap{
  padding: 40px 0 0px;
}
div.ygroup_in{
	display: none;
}
.ygroup_box_pc{
  display: none;
}
.ygroup_box_sp{
  display: block;
  width: 100%;
}
ul.ygroup_list{
	padding: 10px 0 0px;
}
ul.ygroup_list li{
	padding: 25px 0 0px 0;
}
ul.ygroup_list li h3{
	font-size: 1.6rem;
	font-weight: 900;
}
ul.ygroup_list li p{
	padding: 10px 0 0 0;
	line-height: 1.75;
	font-weight: 700;
	font-size: 1.312rem;
}

/*--------------------------------------------------------
事業紹介
--------------------------------------------------------*/
div.low_business_in{
  background: #f7f8f8;
  padding:40px 15px 40px;
}
div.busi_tx{
  padding: 25px 0 35px;
}
div.busi_tx h3{
  font-size: 2.1rem;
  padding: 0 0 18px;
}
div.busi_tx p{
  font-size: 1.4rem;
}
div.consul_wrap{
  text-align: center;
  margin: 0 auto;
}
div.consul_wrap h2 {
  margin: 0 auto;
  text-align: center;
}
div.consul_wrap h2 img{
  width: 70%;
}
div.consul_wrap h3 {
  font-size: 1.2rem;
  padding: 10px 0 15px;
}
div.consul_wrap p {
  font-size: 1.4rem;
}
ul.consul_list{
  width: 100%;
  padding: 35px 17px 15px;
  margin: 0 auto;
}
ul.consul_list li{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 0 0 84px 0;
  position: relative;
}
ul.consul_list li:last-child{
	padding: 0 0 40px 0;
}
ul.consul_list li a{
  display: block;
  width: 100%;
  padding: 0 0 5px 0;
}
ul.consul_list li::after{
  content: url(../images/busi/down_arrow.svg);
  display: block;
  width: 44px;
  height: 66px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0px;
  margin: auto;
}
ul.consul_list li:nth-child(2) img{
  margin: 0 0px 0;
}
ul.consul_list li:nth-child(3) img{
  margin: 0 0px 0;
}
ul.consul_list li:first-child::after{
  top: 80px;
}
ul.consul_list li:nth-child(2)::after{
  top: 160px;
}
ul.consul_list li:nth-child(3)::after{
  top: 160px;
}
ul.consul_list li:last-child::after{
  display: none;
}
/*iphone 7,8用*/
@media screen and (max-width: 375px) { 
	ul.consul_list li:first-child::after{
	  top: 75px;
	}
	ul.consul_list li:nth-child(2)::after{
	  top: 150px;
	}
	ul.consul_list li:nth-child(3)::after{
	  top: 150px;
	}
}

div.sublease_tx_wrap{
  text-align: center;
  margin: 0 auto;
}
div.sublease_tx_wrap h2 {
  margin: 0 auto;
  text-align: center;
}
div.sublease_tx_wrap h2 img{
  width: 85%;
}
div.sublease_tx_wrap h3 {
  font-size: 1.2rem;
  padding: 15px 0 15px;
}
div.sublease_tx_wrap p {
  font-size: 1.4rem;
  padding: 0 0 24px 0;
}
div.sublease_wrap{
  width: 100%;
  margin: 0 auto 10px;
  flex-direction: column;
  padding: 20px 15px 10px;
  box-sizing: border-box;
}
h3.sublease_title01 img{
  width: 40%;
}
h3.sublease_title02 img{
  width: 50%;
}
.sublease_tx{
  width: 100%;
}
.pd_l20{
  padding-left: 0px;
}
.sublease_img{
  width: 100%;
  padding: 10px 0 0 0;
  display: flex;
  justify-content: center;
}

.sublease_tx h4{
  display: inline-block;
  font-size: 1.7rem;
  letter-spacing: normal;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  border-bottom: 3px solid #000;
  padding: 15px 0 6px 0;
}
.sublease_tx p {
  font-size: 1.4rem;
  letter-spacing: -0.08em;
  padding: 15px 0 0px;
}

.low_business_in .sublease_wrap:last-child .sublease_img{
	order: 1;
}

/*modal window*/
.modalArea {
  display: none;
  position: fixed;
  z-index: 10001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modalBg {
  z-index: 10000;
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}
.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 90%;
  height: 80vh;
  padding: 15px;
  background-color: #d8effc;
  overflow: auto;
}
div.modalContents{
  width: 100%;
  background: #fff;
  border-radius: 5px;
  padding: 15px;
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  flex-direction: column;
}
div.modal_l{
  width: 100%;
  box-sizing: border-box;
  padding: 0 0px 0 0;
}
div.modal_r{
  width: 100%;
  text-align: center;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 10px 0px 0 0px;
}
.modal_title01{
  width: 50%;
}
.modal_title02{
  width: 45%;
}
.modal_title03{
  width: 90%;
}
.modal_title04{
  width:70%;
}
.modal_title05{
  width: 60%;
}
.modal_title06{
  width: 70%;
}
.modal_l h3{
  font-size: 1.4rem;
  padding: 12px 0 4px 0;
}
.modal_l p {
  font-size: 1.4rem;
  letter-spacing: normal;
  line-height: 1.75;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 500;
  text-align: left;
  padding: 10px 0 10px;
}
div.modal_in_box{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
}
div.modal_in_box p{
  padding: 0px;
  font-size: 1.4rem;
  letter-spacing: -0.05em;
}
#modalArea06 .modal_l p{
  padding: 10px 0 0px !important;
}

.modal_l span {
  padding: 10px 0 0 ;
  display: block;
  font-size: 1.154rem;
  letter-spacing: normal;
  line-height: 1.28 !important;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 500;
  text-align: left;
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}


/*--------------------------------------------------------
実績紹介
--------------------------------------------------------*/
div.low_works_in{
  background: #f7f8f8;
  padding:40px 0px 40px;
}
div.works_title{
  padding: 0 0 20px 0;
}
div.works_title img{
  width: 50%;
  margin: 0 auto;
}
.sp_pd15{
	padding-left: 15px !important;
	padding-right: 15px !important;
}
div.works_wrap{

}
div.history_title{
  width: 100%;
  height: 143px;
}
.history01{
  background-image: url(../images/history_kv01.jpg);
  background-position: center center;
}
.history02{
  background-image: url(../images/history_kv02.jpg);
  background-position: center center;
}
.history03{
  background-image: url(../images/history_kv03.jpg);
  background-position: center center;
}
div.history_title h2{
  color: #fff;
  letter-spacing: normal;
  font-size: 4.76rem;
  font-family: din-2014;
  font-weight: 200;
  font-style: normal;
  padding: 10px 0 0 10px;
}
div.history_wrap{
  margin: 10px auto;
}
div.history_in{
  width: 100%;
  display: flex;
  justify-content: space-around;
  align-items: stretch;
  flex-direction: column;
  padding: 0 15px 0 15px;
}
div.history_l{
	order: 2;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  padding: 0 0px 10px 0;
  border-left: 2px solid #0d0f50;
}
div.history_l a{
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  vertical-align: top;
}
div.history_l img{
  margin: 0;
  width:85%;
  height: auto;
  margin: 0 auto;
  text-align: center;
  margin: 0 auto 15px;
}
div.history_r{
  width: 100%;
  border-left: 2px solid #0d0f50;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
}

div.history_r h3{
  color: #0d0f50;
  letter-spacing: normal;
  font-size: 2.1rem;
  font-family: din-2014;
  font-weight: 400;
  font-style: normal;
  padding: 0 0 16px 15px;
  position: relative;
  line-height: 0.8;
}
div.history_r h3::before{
  content: '';
  width: 20px;
  height: 20px;
  background: #0d0f50;
  position: absolute;
  border-radius: 100%;
  left: -10px;
  top: 0;
}
ul.history_list{
  margin: 0 0 30px 10px;
}
ul.history_list li{
  color: #0d0f50;
  font-size: 1.237rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 500;
  letter-spacing: normal;
  line-height: 1.6;
  padding: 0px 0 4px;
}
ul.history_list li a{
  cursor: pointer;
  display: inline-block;
  background: #ec8317;
  color: #fff;
  padding: 0 5px 0 0;
}
ul.history_list li a:hover{
  background: #9fa0a0;
}
/*実績のmodal window*/
.modalAreaWorks {
  display: none;
  position: fixed;
  z-index: 10001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalWrapperWorks {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 90%;
  height: 80vh;
  padding: 15px;
  background-color: #d8effc;
  overflow: auto;
}
div.modalContentsWorks{
  width: 100%;
  background: #fff;
  border-radius: 5px;
  padding: 12px;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: column;
}
div.modal_l_works{
  width: 100%;
  box-sizing: border-box;
}
div.modal_r_works{
  width: 100%;
  text-align: center;
  margin: 0 auto;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 0 0 0 0px;
  box-sizing: border-box;
}
div.modal_l_works h2{
  border-left: 12px solid #d8effc;
  font-size: 2.1rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.33;
  padding: 0 0 0 10px;
  margin-left: -12px;
}
div.modal_l_works h3{
  font-size: 1.8rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 2.74;
  padding: 5px 0 5px;
}
div.modal_l_works span{
  width: 83px;
  height: 30px;
  display: block;
  font-size: 1.628rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  letter-spacing: 0.15em;
  border: 1px solid #000;
  padding: 5px 10px 5px;
  line-height: 1;
  text-align: center;
  margin: 0 0 20px 0;
}
div.modal_l_works p{
  font-size: 1.135rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 500;
  letter-spacing: normal;
  line-height: 1.71;
  padding: 0 0 20px 0;
}
.modal_img{
  width: 100%;
  vertical-align: top;
}
div.modal_c_works{
  width: 100%;
  background: #d8effc;
  border-radius: 3px;
  padding: 10px;
}
div.modal_c_works h4{
  font-size: 1.628rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  letter-spacing: 0.2rem;
  color: #000;
  margin: 0 atuo;
  border-bottom: 2px solid #fff;
  padding: 0 0 10px 0;
  text-align: center;
}
div.modal_c_works_in{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 10px 0 0 0;
}
div.modal_c_works_in p{
  font-size: 1.021rem;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 500;
  letter-spacing: -0.08rem;
  line-height: 1.71;
  padding: 0 0px 0 0;
}
div.modal_c_works_in p:first-child{
  margin-right: 0px;
}




.modal_tximg01{
  width: 100%;
  margin: 10px auto;
}
.modal_tximg02{
  width: 60%;
  margin: 10px auto;
}
.modal_tximg03{
  width: 80%;
  margin: 10px auto;
}
.modal_tximg04{
  width: 80%;
  margin: 10px auto;
}
.modal_tximg09{
  width: 55%;
  margin: 10px auto;
}
.modal_tximg05{
  width: 55%;
  margin: 10px auto;
}
.modal_tximg06{
  width: 55%;
  margin: 10px auto;
}
.modal_tximg07{
  width: 65%;
  margin: 10px auto;
}
.modal_tximg08{
  width: 100%;
  margin: 10px auto;
}
.modal_tximg10{
  width: 60%;
  margin: 10px auto;
}

/*/////////////////////////////////////////////////////////////////*/
/*採用情報*/
div.recruit_wrap{
  padding:15px 0 25px;
  position: relative;
}
div.recruit_wrap h3{
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  padding: 10px 0 15px;
}
table.recruit_tb{
  border-collapse: collapse;
  border: 1px solid #d8effc;
  margin: 0 auto;
  width: 100%;
}
table.recruit_tb th{
  border-collapse: collapse;
  border: 1px solid #d8effc;
  background: #0d0f50;
  padding: 10px 7px;
  color: #fff;
  font-size: 1.3rem;
}
table.recruit_tb td{
	white-space: normal;
  border: 1px solid #d8effc;
  background: #fff;
  padding: 10px 7px;
  font-size: 1.3rem;
  width: auto;
}
table.recruit_tb tr td:first-child{
  font-weight: 700;
  width: 25%;
}

table.contact_tb{
  border-collapse: collapse;
  /*border: 1px solid #fff;*/
  margin: 0 auto;
  width: 100%;
}
table.contact_tb th{
  border-collapse: collapse;
  border: 1px solid #fff;
  background: #0d0f50;
  padding: 10px 7px;
  color: #fff;
  font-size: 1.3rem;
  display: block;
  width: 100%;
  text-align: center;
}
table.contact_tb td{
  border-collapse: collapse;
  border: 1px solid #fff;
  background: #fff;
  padding: 10px 7px;
  font-size: 1.3rem;
  display: block;
  width: 100%;
}
div.form_btn_area{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px 0 0px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
.contact_tb tr:last-child td{
  border: none;
  background: none;
}
div.contact_wrap{
  padding: 25px 0 0;
}
div.contact_wrap h3{
  font-size: 1.3rem;
  font-weight: 700;
  padding: 0px 0 10px;
  line-height: 1.75;
  text-align: left;
}
ul.contact_list{
  margin: 10px auto 0 ;
  width: 100%;
}
ul.contact_list li{
  font-size: 1.3rem;
  line-height: 1.5;
  padding: 0 0 0 0px;
}


/*form style*/
.form-text {
  font-size: 1.6rem;
  width: 100%;
  padding: 5px;
  border: 1px solid #ccc;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.form-textarea {
  font-size: 1.6rem;
  width: 100%;
  padding: 5px;
  height: 200px;
  border: 1px solid #ccc;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.form-select {
  width: 100%;
  height: 40px;
  padding: 5px;
  border: 1px solid #ccc;
  font-size: 1.6rem;
}
.contact-submit {
  position: absolute;
  left: 0;
  right: 0;
  width: 45%;
  background-color: #0d0f50;
  border: 1px solid #0d0f50;
  color: #fff;
  font-weight: bold;
  display: block;
  margin: 10px auto;
  font-size: 16px;
  padding: 15px;
  border: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  transition: 1.0s ;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
}
.contact-submit:hover{
  background-color: #fff;
  border: 1px solid #0d0f50;
  color: #0d0f50;
  transform: scale(1.1, 1.1);
}

.newslist_wrap{
  padding: 10px 0 20px;
}
ul.lownews_list{
  width: 100%;
  margin: 20px auto 0;
}
ul.lownews_list li{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding: 10px ;
  box-sizing: border-box;
  height: auto;
}
ul.lownews_list li:nth-child(2n+1){
  background: #fff;
}
div.cate_green2{
  min-width: 100px;
  font-size: 1.1rem;
  padding: 5px;
  border-radius: 3px;
}
div.cate_orange2{
  min-width: 100px;
  font-size: 1.1rem;
  padding: 5px;
  border-radius: 3px;
}
ul.lownews_list li p{
  padding: 10px 0 0 0px;
  font-size: 12px;
}
ul.lownews_list li p a{
  color: inherit;
}
ul.lownews_list li p a:hover{
  color: #81c31f;
}
/*pager*/
.pager .pagination li{
  display: none;
}

.pager .pagination li.pre,
.pager .pagination li.next{
  display: inline-block;
  width: 40%;
  text-align: center;
}

.pager .pagination li.pre a,
.pager .pagination li.next a{
  width: 100%;
  text-align: center;
}

.pager .pagination li.pre span::after{
  content: "　前の10件へ";
}

.pager .pagination li.next span::before{
  content: "次の10件へ　";
}

/*ニュース詳細*/
div.news_detail_wrap{
  padding: 10px 0 20px;
}
div.news_date_box{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 0 auto;
  background: #fff;
  padding: 20px 15px 0;
}
div.news_date{
  font-size: 1.42rem;
  font-weight: bold;
  padding: 0 0 0 40px;
}
div.news_contents_box{
  background: #fff;
  padding: 15px;
}
div.news_contents_box h2{
  font-size: 1.7rem;
  letter-spacing: 0.2em;
  font-weight: 700;
  padding: 20px 0 30px 0;
}
div.news_comment{
  font-size: 1.4rem;
  line-height: 1.75;
}
div.news_navi{
  padding: 20px 0 20px ;
  display: flex;
  justify-content:center;
  align-items: center;
}
.news_next_btn {
  width: 42%;
}
.news_prev_btn {
  width: 42%;
}



div.news_recommend_wrap{
  width: 100%;
  border-top: 1px solid #0d0f50;
  padding: 0px 0 0 0;
}
div.news_recommend_title{
  padding: 20px 0 0px;
}
div.news_recommend_title h3{
  font-size: 1.6rem;
  text-align: center;
}

/*--------------------------------------------------------
LSSP 2022.02.21 add
--------------------------------------------------------*/
.low_lssp{
  background-position: center center;
  background-image: url(../images/kv_low_img07.jpg);
}
div.low_lssp_in{
  background: #f7f8f8;
  padding:40px 15px 20px;
}

.lssp_about{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  padding:20px 0 0px;
}
.lssp_about_left{
  width: 100%;
  padding-right: 0;
  box-sizing: border-box;
}
.lssp_about_right{
  width: 100%;
  margin: auto;
  text-align: center;
}
.lssp_about_left h3{
  font-size: 2.1rem;
  letter-spacing: 0.019em;
  padding-bottom: 20px;
}
.lssp_about_left p{
  font-size: 1.4rem;
  letter-spacing: -0.01em;
  padding-bottom: 25px;
}

.lssp_about_right img{
  margin-left: auto;
}
div.low_lssp_in2{
  background: #ffffff;
  padding:20px 15px 20px;
}

div.lssp_cont{
  margin: 0 auto;
  text-align: center;
}
div.lssp_cont h2{
  font-size: 2.1rem;
}

div.lssp_tb_img{
  margin: 0 auto;
  text-align: center;
  width: 100%;
  padding-top: 20px;
  padding-left: 2px;
}
div.lssp_tb_img_down{
  margin: 0 auto;
  text-align: center;
  padding-top: 20px;
}
div.lssp_tb_img_text{
  margin: 0 auto;
  text-align: center;
  width: 100%;
  padding-top: 10px;
}

div.lssp_tb_img_up{
  margin: 0 auto;
  text-align: center;
  padding-top: 10px;
}

div.lssp_map{
  min-height: 424px;
  height: 100%;
  background-image: url(../images/lssp/lssp_chizu.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  margin: 0 auto;
  text-align: center;
  padding: 0 15px 0;
  box-sizing: border-box;
}
div.lssp_map_in{
  min-width: 100%;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding-top: 70px;
}
div.lssp_map_in h3{
  text-align: center;
  font-size: 2.1rem;
  letter-spacing: 0;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  padding-bottom: 25px;
}
div.lssp_map_in p{
  margin: 0 auto;
  width: 100%;
  font-size: 1.4rem;
  letter-spacing: 0;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  line-height: 2.12;
}

div.lssp_sv h2{
  margin: 0 auto;
  text-align: center;
  font-size: 2.1rem;
  letter-spacing: 0;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  line-height: 1.45;
}
ul.lssp_sv_list{
  margin: 30px auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
ul.lssp_sv_list li{
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
ul.lssp_sv_list p{
  width: 90%;
  margin: 0 auto;
  padding-top: 10px;
  padding-bottom: 20px;
  font-size: 1.4rem;
  letter-spacing: 0;
  font-family: 'Zen Kaku Gothic New';
  font-weight: 700;
  line-height: 2.12;
}
/*22/3/2 add*/
.lssp_sv_list_box{
  margin: 0 auto;
}
/*lssp modal*/

div.lssp_md_title{
  display: flex;
  justify-content: center;
  align-items: center;
}
div.lssp_md_title img{
  margin-right: 10px;
  width: 25%;
}
div.lssp_md_title h2{
  font-size: 1.8rem;
}
div.lssp_md_title h2 span{
  font-size: 1.6rem;
}
div.lssp_md_theme{
  margin: 20px auto 10px;
}
div.lssp_md_theme h4{
  font-size: 1.6rem;
}
div.lssp_md_box h3{
  font-size: 1.6rem;
}

div.lssp_md_box p{
  font-size: 1.4rem;
  padding: 10px 0 10px;
}
div.lssp_md_gaiyou{
  padding: 10px 10px;
}
div.lssp_md_gaiyou h5{
  font-size: 1.4rem;
}















}
/*end media query*/