@charset "UTF-8";
/* CSS Document */
/*デフォルトマージンを除去*/
*{
  margin:0;
  padding: 0;
}
	
html {
  margin: 0 auto;
  background: #fff; /* Fills the page */
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
}
body {
	width: 100%;
	margin: 0 auto;
  font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
	font-size: 10px;
	text-align: justify;
  text-justify: auto;
}

video{
width:100%;
margin: 0px;
padding: 0px; 
vertical-align: bottom;
}
	
  .br-pc { display:block; }
  .br-sp { display:none; }
img{width: 100%;}

#top{max-width: 1200px;
padding-top: 70px;
margin:0 auto;
}
.container{  display: flex;
  			flex-wrap: wrap;
			width: 78.3vw;
			max-width: 940px;
			margin: auto;}
.column{
    width: 50%;
  }
.column_a_1{ width: 43%;
		padding-right: 2vw;}
.column_a_2{ width: 57%;}

.column1 {
    width: 57%;
  }
.column2 {
    width: 43%;
  }
h1{	font-family : "Montserrat",sans-serif;
	font-size:2.91vw;
	letter-spacing: 0.55vw;
	margin: 0vw 0 5vw 0;}
h2{	
	font-size: 1.3vw;
	letter-spacing: 0.2vw;
	margin:0.66vw 0 1.75vw 0;}
h3{	
	font-size:1.08vw;
	letter-spacing: 0.16vw}
p{
	font-size: 1.08vw;
	letter-spacing: 0.08vw;
	line-height: 2vw}
a {
  text-decoration: none;
  color:#000;
}


@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

ul li a{
font-weight:700;
}

/*******各ページの設定↓*****/



.all{
  max-width:950px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */
  justify-content: center;
    padding-top: 70px;
    padding-bottom: 50px;
    margin:0 auto;
}

.mainimage{
  max-width: 540px;



}

.text{
  max-width: 540px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */
  margin-left:5px;
  margin-bottom:2vw;
  max-height:600px;

}


.mainimage img,video{

  margin-bottom:35px;

}


h1.worksstyle{
  font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
  font-size: 1rem;
  letter-spacing: 0.32vw;
  margin-bottom: 16px;
  width: 540px;
  display:inline-block;
}

h2.worksstyle{
  font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
  font-size: 1.2rem;
  letter-spacing: 0.32vw;
  margin-top: 0px;
  margin-bottom: 25px;
  width: 540px;
  display:inline-block;
}

.mainimage img,video{

  margin-bottom:3.5vw;

}


dl,dt,dd {
  margin: 0;
  padding: 0;
}

.dl_table {

  width: 520px;
  display: flex;
  flex-wrap: wrap;
  margin-top:35px;
  margin-bottom:5vw;
}

.dl_table dt {

  width: 30%;
  box-sizing: border-box;
    font-size:0.7rem;
    line-height: 2;

}

.dl_table dd {
  font-size:0.7rem;
  width: 70%;
  box-sizing: border-box;
  line-height: 2;

}

p.worksstyle{
font-size:0.8rem;
margin-bottom:20px;
line-height: 2.3;
}

/*一覧ボタン↓*/
#all_btn {
  font-size: 0.8rem;
  color: #000;
  width:200px;
  text-align: center;
  background: #fff;
  border-radius: 50px;
  padding: 15px 15px;
  position: relative; /* 追記 */
  margin:0 auto 50px;
    font-family : "Montserrat",sans-serif;
    font-weight: 700;
  border: 1px solid #000;
}
#all_btn:hover {
  font-size: 0.8rem;
  color: #fff;
  width:200px;
  text-align: center;
  background: #000;
  border-radius: 50px;
  border: 1px solid #000;
  padding: 15px 15px;
  position: relative; /* 追記 */
  margin:0 auto 50px;
  font-family : "Montserrat",sans-serif;
}
#all_btn::after {
  content: "＞";
  position: absolute;
  top: 50%;
  right: 22px;
  transform: translateY(-50%);
}



/*説明↓*/
.description{padding: 50px 0px;}
.description h1{font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
font-size: 20px;
	font-weight: 100;}
.description h3{font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
font-size: 10px;
font-weight: 100;}

th,td {
	text-align: left;
    border: none;  /* 枠線指定 */
    padding: 5px;      /* 余白指定 */
}
th {
	width: 70px;
}

table {
	margin: 20px 0px;
}
/*説明↑*/
/*******ここまで各詳細ページ↑*****/
/**********************************ここからtablet用のcssを記述*********************************/
@media screen and (max-width:600px) {
 .br-pc { display:none; }
  .br-sp { display:block; }	
body {
	font-size: 0.83vw;
}

img{max-width: 950px;}
	/***ここから文字***/
h1{	font-family : "Montserrat",sans-serif;
	font-size: 8.8vw;
	letter-spacing: 1.2vw;
	margin: 0vw 0 5vw 0;}
h2{	
	font-size: 3.3vw;
	letter-spacing: 0.32vw;
	margin: 1.6vw 0 4vw 0;}
h3{	
	font-size: 2.6vw;
	letter-spacing: 0.32vw}
p{
	font-size: 2.6vw;
	letter-spacing: 0.18vw;
	line-height: 5vw;
	}

img{max-width: 479px;}
#about{padding-top: 17.36vw;
		padding-bottom: 17.36vw;}
.btn {
  width: 10.4vw;
  border-radius: 10.4vw;
  padding: 5.2vw 5.2vw;
	margin-top: 2.0vw;
}
.btn::after {
  right: 4.57vw;
}
.btn_box p{margin-top: 4.16vw;
			margin-left: 14.58vw;}
#about .container .column img{padding-top: 10.4vw;}
#works{padding-top: 17.36vw;
		padding-bottom: 17.36vw;}
#service{padding-top: 17.36vw;
		padding-bottom: 17.36vw;}
#field{padding-top: 17.36vw;
		padding-bottom: 17.36vw;}
#recruit{padding-top: 17.36vw;
		padding-bottom: 17.36vw;}
#contact{padding-top: 17.36vw;
		padding-bottom: 17.36vw;}
#contact .container h1{margin: auto;
		font-size: 6.4vw;}
#contact .container p{line-height: 16vw}
#contact_btn {
	font-size:2.5vw;
  width:41.6vw;
  border-radius: 10.4vw;
  padding: 3.125vw 3.125vw;

}
#contact_btn::after {
  right: 4.58vw;
}
	.col_3 > div{
		padding: 2.08vw;
	}
.col_3 p{
	font-size: 2.4vw;
	letter-spacing: 0.3vw;
	line-height: 4.4vw}
h4{	font-size: 2.5vw;
	letter-spacing: 0.3vw;}

.all{padding-top: 10.36vw;
    padding-bottom: 10.36vw;
     justify-content: center;}
.text{
  max-width: 262px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */
margin-left:0.5vw;
margin-bottom:2vw;
padding-top: 0.5vw;
  max-height:100vh;
}
.dl_table {

  width: 262px;
  display: flex;
  flex-wrap: wrap;
  margin-top:25px;
  margin-bottom:10px;
}
p.worksstyle{
font-size:0.7rem;
margin-bottom:10px;
line-height: 2.3;
}


#all_btn {
  font-size:2.5vw;
  width:41.6vw;
  border-radius: 10.4vw;
  padding: 3.125vw 3.125vw;
    font-family : "Montserrat",sans-serif;
    font-weight: 700;
  border: 1px solid #000;
}
#all_btn:hover {
  font-size:2.5vw;
  width:41.6vw;
  border-radius: 10.4vw;
  padding: 3.125vw 3.125vw;
    font-family : "Montserrat",sans-serif;
    font-weight: 700;
  border: 1px solid #000;
    color: #fff;

  background: #000;
}
#all_btn::after {
  right: 4.58vw;
}
	
	
/*******ここからworks↓*****/
#works{background-color: #fff;
		padding-top: 5vw;
		padding-bottom:5vw;}
.works_box{width: 88vw;
			max-width: 940px;
			margin: auto;}
.column {
  width: 100%;
margin-bottom: 2vw;
}
/*スライド↓*/
	.CSSgal .prevNext a {
  width:       5vw;
  height:      5vw;
  line-height: 5vw;
}


.all{padding-top: 10.36vw;
    padding-bottom: 10.36vw;
     justify-content: center;
  }


.text{
  max-width: 300px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */

padding-top: 0.5vw;
  max-height:100vh;
}
.dl_table {

  width: 300px;
  display: flex;
  flex-wrap: wrap;
  margin-top:25px;
  margin-bottom:10px;
}


.all_area {
  position: relative;
  margin-bottom:2vw;

}
.tab_area {
  max-width:100%;
 /* メニューの背景色 */
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; /* 慣性スクロール */
}
.category ul li{
list-style: none;
  padding: 7px 10px;
  border: 1px solid #727171;
  margin-bottom:10px;
  border-radius: 10px;
}

.category ul li a{
text-decoration: none;
color: #333;
margin: 3px 3px;
border-bottom: #fff solid 1px;
}
.date{text-align:left;
      margin-top:1.5vw;}
.date2{text-align:left;
      margin-top:0.5vw;}      
.category ul li a:hover{
color: #00489D;
}



  .col_3 > div{
    padding: 2.08vw 0vw;
    width: calc((100% / 2) - 1.5vw);
  }
  .col_3{
  justify-content:space-between;
  }
  .col_2 p,.col_3 p{
  font-size: 2.4vw;
  letter-spacing: 0.3vw;
  line-height: 4.4vw}

.mainimage{

  align-items: center;
  text-align: center;

}


/*ここまでtablet用のcssを記述*/
}




/*************************************************ここから1200以上のcssを記述*/
@media screen and (min-width: 1201px) {
h1{	font-family : "Montserrat",sans-serif;
	font-size:35px;
	letter-spacing: 5.5px;
	margin: 0px 0 50px 0;}
h2{	
	font-size: 16px;
	letter-spacing: 2px;
	margin:8px 0 21px 0;}
h3{	
	font-size:13px;
	letter-spacing: 2px}
p{
	font-size: 13px;
	letter-spacing: 0.5px;
	line-height: 24px}	
/*******ここからworks********/	
#works{background-color: #fff;
		padding-top: 30px;
		padding-bottom: 60px;}
.works_box{width: 950px}

.main{
  padding-top:20px;



}
.text{
  max-width: 260px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */

  margin-left:35px;
  padding-top:5vw;
  max-height:500px;

}
.all{
  max-width:950px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */
  justify-content: start;
    padding-top: 70px;
    padding-bottom: 50px;
    margin:0 auto;
}

.mainimage{
  max-width: 540px;



}

.text{
  max-width: 260px;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */
  margin-left:35px;
  padding-top:5vw;
  max-height:500px;

}


.mainimage img,video{

  margin-bottom:35px;

}


h1.worksstyle{
  font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
  font-size: 1rem;
  letter-spacing: 0.32vw;
  margin-bottom: 16px;

}

h2.worksstyle{
  font-family : "游ゴシック","Yu Gothic" ,"游ゴシック体","ヒラギノ角ゴ ProN W3",'Hiragino Kaku Gothic Pro',"Meiryo UI","メイリオ","Meiryo","MS Pゴシック","MS PGothic",sans-serif;
  font-size: 1.2rem;
  letter-spacing: 0.32vw;
  margin-top: 0px;
  margin-bottom: 25px;

}


dl,dt,dd {
  margin: 0;
  padding: 0;
}

.dl_table {

  width: 262px;
  display: flex;
  flex-wrap: wrap;
  margin-top:35px;
  margin-bottom:70px;
}

.dl_table dt {

  width: 40%;
  box-sizing: border-box;
    font-size:0.7rem;
    line-height: 2;

}

.dl_table dd {
  font-size:0.7rem;
  width: 60%;
  box-sizing: border-box;
  line-height: 2;

}

p.worksstyle{
font-size:0.8rem;
margin-bottom:20px;
line-height: 2.3;
}

/*一覧ボタン↓*/
#all_btn {
  font-size: 0.8rem;
  font-weight: 700;
  color: #000;
  width:200px;
  text-align: center;
  background: #fff;
  border-radius: 50px;
  border: 1px solid #000;
  padding: 15px 15px;
  position: relative; /* 追記 */
  margin:0 auto 50px;
  font-family : "Montserrat",sans-serif;
  letter-spacing: 1.5px;

}
#all_btn::after {
  content: "＞";
  position: absolute;
  top: 50%;
  right: 22px;
  transform: translateY(-50%);
}
#all_btn:hover {
  font-size: 0.8rem;
  color: #fff;
  width:200px;
  text-align: center;
  background: #000;
  border-radius: 50px;
  border: 1px solid #000;
  padding: 15px 15px;
  position: relative; /* 追記 */
  margin:0 auto 50px;
  font-family : "Montserrat",sans-serif;
}
	
}


