/* CSS Document */
/*-----------------------------------------------------------
 フォントサイズの指定はYUI Fontsに基づき
 下記テーブルで指定します
 |px|%|
 |10|77|
 |11|85|
 |12|93|
 |13|100|
 |14|108|
 |15|116|
 |16|123.1|
 |17|131|
 |18|138.5|
 |19|146.5|
 |20|153.9|
 |21|161.6|
 |22|167|
 |23|174|
 |24|182|
 |25|189|
 |26|197|
 ex) 12px
 element {
 	font-size: 93%;
 }
 ------------------------------------------------------------*/
body {
	/*background-image: url(../images/bk_img.png);*/
	margin:0;
	padding:0;
	color:#333333;
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	line-height: 1.6;
	
}

a:link,a:visited {
	color: #595757;
	text-decoration:none;
}

a:hover,a:active {
	color: #4378a2;
	/*text-decoration:underline;*/
}

a:hover img{
    cursor:pointer;
    filter: alpha(opacity=60);        /* ie lt 8 */
    -ms-filter: "alpha(opacity=60)";  /* ie 8 */
    -moz-opacity:0.6;                 /* FF lt 1.5, Netscape */
    -khtml-opacity: 0.6;              /* Safari 1.x */
    opacity:0.6;
    zoom:1;
}

p {
	color: #595757;
	letter-spacing: 1px;
}

/* for modern brouser */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
/* IE7,MacIE5 */
.clearfix {
  display: inline-block;
}
/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/**/

img {
  border-style: none;
}

a img {
  border-style: none;
}

#main {
  width: 980px;
  text-align: center;
  margin: 0 auto;
  display: block;
}

.sp-area {
  display: none;
}
.pc-area {
  display: block;
}

/*ここからヘッダー --------------------*/

* {
  margin:0; padding:0;
}

#head-menu1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.head-tel {
  font-size: 2.1em;
  font-weight: bold;
  font-family: "Shin Go Regular","typesquare" !important;
  color: #1e5ea2;
  display: block;
  text-align: center;
  height: 46px;
}

.tel-time {
  font-weight: bold;
}
.head-mail {
  margin: 3px 0;
}

#head-menu2 {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  background-color: #1e5ea2;
}

#header-inner{
  width: 1000px;
  margin: 0 auto;
}

.nav-list {
  text-align: center;
  padding: 10px 0;
  margin: 0 auto;
}
.nav-list-item {
  list-style: none;
  display: inline-block;
  margin: 0 32px;
}

/*ここからindex.html --------------------*/

.whatsnew {
	border-top: solid 2px #dcdddd;
	border-bottom: solid 2px #dcdddd;
    margin-top: 50px;	
}

.news-inner {
  padding: 10px 0;
  text-align: left !important;
}

.title-news, .text-news {
  display: inline-block;
  vertical-align: middle;
}

.title-news {
  border-right: solid 2px #dcdddd;
}

.title-news img {
  padding: 30px 100px;
}

.text-news {
  padding-left: 20px;
}

.text-news p {
  font-family: "Shin Go Regular","typesquare" !important;
}

.text-news span {
  font-weight: bold;
}

.menu-area {
	padding: 70px 0;
}

.btn1 {
  margin-bottom: 13px;
}

.btn1 img {
  display: inline-block;
  vertical-align: top;
  margin: 0 3px;
}

.btn-left, .btn-right {
  display: inline-block;
  vertical-align: top;
}

.btn-right {
  width: 296px;
  margin-left: 3px;
}

/*.btn-left img {
  width: 25%;
}

.btn-right img {
  width: 80%;
}*/

.btn-blog {
	margin-top: 3px;
}
.hover1 a{
  display: inline-block;
  cursor: pointer;
  transition: all 0.1s ease 0s;
}
.hover1 a:hover {
  border-bottom-color: transparent;
  transform: translateY(0.1875em);
}


/*ここからアクセス --------------------*/
.top-image {
  text-align: center;
  background-color: #e2f0f1;
  height: 150px;
}
.access p {
}
.sub-title {
  width: 200px;
  margin: 0 auto;  
  text-align: center;
  padding: 30px 0 30px 0;
}
.sub-title img {
  width: 18%;
}
.s-t1 {
  font-size: 25px;
  padding-bottom: 5px;
  border-bottom: solid 2px #1e5ea2;
  font-weight: bold;
}
.s-t2 {
  font-size: 14px;
  padding-top: 12px;
  letter-spacing: 3px;
}
.address,.gmap {
  text-align: left;
  padding-bottom: 40px;
}
.address p {
  font-size: 15px;
  padding: 0 25px;
}
.sub-title2 {
  margin: 20px 0;
  padding: 3px 0;
  background: linear-gradient(70deg,#e2f0f1 0%,#e2f0f1 50%,#B5DADC 30%,#B5DADC 100%);
  border-radius: 5px;
  text-align: left;
}
.s-t3,.s-t4 {
  display: inline-block;
  vertical-align: middle;
}
.s-t3 {
  font-size: 22px;
  font-weight: bold;
}
.s-t3 span {
  padding-right: 5px;
  font-weight: bold;
  color: #1e5ea2;
}
.s-t4 {
  font-size: 12px;
  letter-spacing: 3px;
  padding-left: 20px;
}
.address span {
  color: #1e5ea2;
  font-weight: bold;
}
.gmap p span{
  color: #1e5ea2;
  font-weight: bold;
}


/*ここから会社概要 --------------------*/
table {
  width: 900px;
  margin: auto;
  text-align: left;
  border-collapse:collapse;
}
th,td {
  vertical-align: top;
  padding: 15px;
}
.tr1,.tr2 {
  border-bottom: dotted 1px #cfcfcf;
}
.tr2 {
    background: #f3f3f3;
}
.overview {
  font-size: 15px;
}
.overview span {
  color: #1e5ea2;
}
.overview2 {
  padding-top: 30px;
  padding-bottom: 30px;
/*  width: 472px;
  display: inline-block;
  vertical-align: top;*/
}
.overview3 {
  padding-bottom: 40px;
}
.ov-box, .serv-box {
  padding: 0 25px;
}
.ov-box p, .serv-box p {
  text-align: left;
  font-size: 15px;
}
.ov2-right {
  padding-right: 15px;
}
.ov2-left {
  padding-left: 15px;
}

/*ここから事業内容 --------------------*/
.menu-box img {
  margin: 12px;
}
.sub-title3 {
  /*padding-top: 30px;*/
  text-align:left;
  width: 405px;
}
.s-t5 {
  font-size: 25px;
  /*padding-bottom: 5px;*/
  padding-left: 15px;
  font-weight: bold;
}
.s-t, .st-icon {
  display: inline-block;
  vertical-align: middle;
}
.sub-title3, .serv-box {
  display: inline-block;
  vertical-align: top;
  padding-right: 20px;
}
.s-t6 {
  font-size: 12px;
  letter-spacing: 3px;
  padding-left: 20px;
}
.serv-image {
  padding: 20px 0px;
  margin-top: 30px;
  background-color: #e8e8e8
}
.serv-image img{
  padding:10px;
  margin: 10px;
  background-color: #fff;
}
.service-box {
  text-align: left;
  padding: 20px 0;
}
.serv-box {
  border-left: 1px solid; 
  width: 504px;
}
.serv-box span {
  color: #1F5EA2;
  font-size: 19px;
  font-weight: bold;
}
.serv-box p {
  line-height: 28px;
}
.camera, .card, .sensor{
  padding-bottom: 60px;
}


.tab_wrap {
  /*width:500px;*/
  /*margin:80px auto;*/
}
input[type="radio"]{
  display:none;
}
.tab_area {
  font-size:0;
  margin:0 10px;
}
.tab_area label {
  /*width:150px;*/
  margin:12px;
  display:inline-block;
  /*padding:12px 0;*/
  color:#999;
  /*background:#ddd;*/
  text-align:center;
  font-size:13px;
  cursor:pointer;
  transition:ease 0.2s opacity;
}
.tab_area label:hover {
  opacity:0.5;
}
.panel_area {
  background:#fff;
}
.tab_panel {
  width:100%;
  padding:30px 0;
  display:none;
}

.tab1_label {
  background-image: url(../images/serv-security.png) !important;
  width: 216px;
  height: 100px;
}
#security:checked ~ .tab_area .tab1_label{
  background-image: url(../images/hover-security.png) !important;
  background:#fff;
  color:#000;}
#security:checked ~ .panel_area #panel1{display:block;}

.tab2_label {
  background-image: url(../images/serv-illumination.png) !important;
  width: 216px;
  height: 100px;
}
#lighting:checked ~ .tab_area .tab2_label{
  background-image: url(../images/hover-illumination.png) !important;
  background:#fff;
  color:#000;}
#lighting:checked ~ .panel_area #panel2{display:block;}

.tab3_label {
  background-image: url(../images/serv-network.png) !important;
  width: 216px;
  height: 100px;
}
#network:checked ~ .tab_area .tab3_label{
  background-image: url(../images/hover-network.png) !important;
  background:#fff;
  color:#000;}
#network:checked ~ .panel_area #panel3{display:block;}

.tab4_label {
  background-image: url(../images/serv-info.png) !important;
  width: 216px;
  height: 100px;
}
#information:checked ~ .tab_area .tab4_label{
  background-image: url(../images/hover-info.png) !important;
  background:#fff;
  color:#000;}
#information:checked ~ .panel_area #panel4{display:block;}

.tab5_label {
  background-image: url(../images/serv-airport.png) !important;
  width: 216px;
  height: 100px;
}
#airport:checked ~ .tab_area .tab5_label{
  background-image: url(../images/hover-airport.png) !important;
  background:#fff;
  color:#000;}
#airport:checked ~ .panel_area #panel5{display:block;}

.tab6_label {
  background-image: url(../images/serv-wireless.png) !important;
  width: 216px;
  height: 100px;
}
#radio:checked ~ .tab_area .tab6_label{
  background-image: url(../images/hover-wireless.png) !important;
  background:#fff;
  color:#000;}
#radio:checked ~ .panel_area #panel6{display:block;}

.tab7_label {
  background-image: url(../images/serv-design.png) !important;
  width: 216px;
  height: 100px;
}
#design:checked ~ .tab_area .tab7_label{
  background-image: url(../images/hover-design.png) !important;
  background:#fff;
  color:#000;}
#design:checked ~ .panel_area #panel7{display:block;}

.tab8_label {
  background-image: url(../images/serv-maintenance.png) !important;
  width: 216px;
  height: 100px;
}
#maintenance:checked ~ .tab_area .tab8_label{
  background-image: url(../images/hover-maintenance.png) !important;
  background:#fff;
  color:#000;}
#maintenance:checked ~ .panel_area #panel8{display:block;}


#design:checked ~ .tab_area .tab7_label{background:#fff; color:#000;}
#design:checked ~ .panel_area #panel7{display:block;}
#maintenance:checked ~ .tab_area .tab8_label{background:#fff; color:#000;}
#maintenance:checked ~ .panel_area #panel8{display:block;}

/*ここからcontact.php --------------------*/
.hissu {
  color: #d25539;
  font-weight: bold;
}

.tsuiki p {
  font-size: 14px;
  text-align: left;
  letter-spacing: 1px;
  line-height: 25px;
  color: #909090;
}
.tsuiki {
  padding-top: 20px;
}
.tsuiki span {
  font-weight: bold;
  color: #1e5ea2;
}
.contact {
  border-top: dotted 1px #B5DADC;
  border-bottom: dotted 1px #B5DADC;
  margin-bottom: 30px;
  padding: 40px;
}
.con-p {
}
.con-p p {
  font-size: 15px;
  text-align: left;
}
#myform table {
    width: 100%;
    border-collapse: collapse;
}
#myform th {
    width: 270px;
    border-bottom: solid 7px #ffffff;
    border-top: solid 7px #ffffff;
    border-right: solid 7px #ffffff;
    background-color: #f9ddbc;
    font-weight: normal;
    font-size: 16px;
    height: 39px;
    padding-left: 17px;
}
#myform td {
    border: solid:1px #aaaaaa;
    padding: 0px;
    width: 373px;
}
.kakunin{
    display: inline;
    color: #f13737;
}
#com{
  width: 373px;
  border-color:  #aaaaaa;
  height: 187px;
}

.com_th{
  height: 192px;
}

.telp_p{
  padding-bottom: 51px !important;
}


.submit{
  text-align: center;
  padding-top: 26px;
  padding-bottom: 150px;
}

.lab2 {
  background: none;
  color: #000;
  font-size: 18px;
  margin-left: 30px;
  text-align: left;
}


/*--------------------------------------------------------
 フォームテーブル
---------------------------------------------------------*/
#contactForm table {
    box-sizing: border-box;
    border-collapse: collapse;
    margin-top: -1px;
    margin-bottom: 0;
    table-layout: fixed;
    width: 100%;
    font-size: 14px;
}

#contactForm table th,
#contactForm table td {
    border: none;
    padding: 16px;
    vertical-align: top;
    text-align: left;
}

#contactForm table th {
    border-right: none;
    font-weight: normal;
    text-align: left;
    width: 208px;
    font-size: 15px;
    letter-spacing: 1px;
    border-right: dotted 1px #cfcfcf;
    background-color: #e2f0f1;
    /*background: linear-gradient(90deg,#B5DADC 5%,#B5DADC 5%,#e2f0f1 5%,#e2f0f1 100%);*/
}

#contactForm table th span {
    display: inline-block;
    letter-spacing: 0;
    vertical-align: middle;
}

#contactForm table td {
    border-left: none;
}

#contactForm tr {
  border: dotted 1px #cfcfcf;
}

#contactForm table td .address {
    margin: 8px 0;
    color: #000;
    font-size: 16px;
    text-align: left;
    margin-left: 30px;
}

#contactForm table td .address .ttl {
    display: inline-block;
    text-align: left;
    vertical-align: middle;
    width: 100px;
}
.ttl {
  font-weight: bold;
  background-color: 
}
.blue-line {
  color: #1e5ea2;
  font-size: 20px;
  padding-right: 5px;
  font-weight: bold;
}
#contactForm table td .address .input {
    display: inline-block;
    vertical-align: middle;
    width: 73%;
}

#pc_version .section {
overflow: scroll;   /* スクロール表示 */ 
  width: 70%;
  /*height: 100px;*/
  border: 1px solid #ccc;
}

.textarea {
overflow: scroll;   /* スクロール表示 */ 
  width: 70%;
  border: 1px solid #ccc;
}


/*--------------------------------------------------------
 フォームスタイル
---------------------------------------------------------*/
#contactForm input[type="text"],
#contactForm select,
#contactForm textarea {
    border: solid 1px #ddd;
    background-color: #f3f3f3 !important;
    box-sizing: border-box;
    padding: 10px;
    width: 100%;
    color: #515151;
    font-size: 16px;
}

.yuubin {
  width: 100px !important;
}

/*--------------------------------------------------------
 必須・任意アイコン【必ず設定してください】
---------------------------------------------------------*/
#contactForm .req,
#contactForm .fre {
    color: #fff;
    font-size: 10px;
    font-weight: normal;
    margin-right: 3%;
    padding: 1px 4px;
}

#contactForm .req {
    background-color: #d25539;
}

#contactForm .fre {
    background-color: #395bff;
}



/*--------------------------------------------------------
 確認・修正・送信ボタン【必ず設定してください】
---------------------------------------------------------*/
.mail_send {
    margin: 60px 0;
    text-align: center !important;
}


.kakunin {
    background-color: #1e5ea2;
    border-radius: 5px;    
    border: none;
    cursor: pointer;
    display: block;
    margin: 0 auto;
    padding: 16px 0;
    width: 300px;
    color: #ffffff;
    font-size: 1.5em;
    font-family: "YuGothic,'Yu Gothic', sans-serif";
    text-align: center;
    filter: drop-shadow(0px 10px 0px rgba(183,218,220,1));
}

.kakunin:hover {
  background-color: #5d7ead;
  transform: translateY(0.1875em);
}

.goback {
    display: inline-block !important;
    background-color: #595757;
    border-radius: 5px;    
    border: none;
    cursor: pointer;
    display: block;
    margin: 0 auto;
    padding: 16px 0;
    width: 300px;
    color: #ffffff;
    font-size: 1.5em;
    font-family: "YuGothic,'Yu Gothic', sans-serif";
    text-align: center;
    filter: drop-shadow(0px 10px 0px rgba(218,224,0,1));
    margin-bottom: 30px;
}

.goback:hover {
    background-color: #888888;
    transform: translateY(0.1875em); 
}

.send {
    display: inline-block !important;
    background-color: #d50f19;
    border-radius: 5px;    
    border: none;
    cursor: pointer;
    display: block;
    margin: 0 auto;
    padding: 16px 0;
    width: 300px;
    color: #ffffff;
    font-size: 1.5em;
    font-family: "YuGothic,'Yu Gothic', sans-serif";
    text-align: center;
    filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.4));
    margin-left: 10px;
}

.send:hover {
  background-color: #dc767b;
  transform: translateY(0.1875em);
}

.mail_check {
    max-width: 420px;
    overflow: hidden;
    margin: 40px auto;
}

.mail_check #contactform {
    float: right;
    text-align: center;
    width: 200px;
}

.mail_check .form_box1 {
    float: left;
    text-align: center;
    width: 200px;
}

.mail_check button {
    border: none;
    cursor: pointer;
    padding: 16px 0;
    width: 100%;
}

/*ここからthanks.php*/
.tel-t {
  background-color: #585757;
  width: 800px;
  text-align: center;
  margin: 0 auto;
}
.tel-t p{
  color: #fff;
}
.tel-box {
  text-align: center;
  padding: 20px 0 100px 0;
  text-align: center;
  
}
.tel-bg {
  background-color: #f5f5f5;
  padding: 30px 0;
  width: 800px;
  margin: 0 auto;
}
.tel-box p{
  font-size: 21px;
}
.tel-box img{
  padding: 15px 0;
  width: 65%;
}

/*ここからrecruit.html*/
.recruit-img-box {
  text-align: center;
  padding-bottom: 50px;
}
.rec-img,.rec-p {
  display: inline-block;
  vertical-align: middle;
}
.rec-p {
  width: 564px;
}
.rec-p p{
  text-align: left;
  font-size: 18px;
  line-height: 45px;
  font-weight: bold;
  color: #1e5ea2;
}
.rec-p span {
  background: linear-gradient(transparent 35%, #e2f0f1 0%);
}
.rec-img {
  text-align: right;
  width: 395px;
}
.rec-img img{
  width: 98%;
  box-shadow: 25px 25px 0px 0 #1f5ea2;
}

.sub-title5 {
  text-align: left;
  padding: 40px 0 20px 0;
}
.sub-title5 p {
  font-size: 19px;
  font-weight: bold;
}
.recruit-box1 {
  display: inline-block;
  vertical-align: top;
  width: 400px;
  height: 420px;
  /*background: #e2f0f1;*/
  border: solid 5px #1e5ea2;
  box-shadow: 20px 20px 0px 0 #b7dadb;
}
.rec-box1 {
  padding: 30px;
}
.rec-t {
  font-size: 25px;
  font-weight: bold;
  background-color: #1e5ea2;
  color: #fff;
  padding: 5px 0; 
  border-radius: 30px;
  margin-bottom: 20px;
}
.rec-p2 {
  padding-bottom: 15px;
}
.recruit-box0 {
  padding: 80px 0;
}
/*.rec-box1 img{
  margin-top: 20px;
}*/
.rec-tel {
  background-color: #e2f0f1;
  padding: 40px 10px;
  margin-top: 40px;
}
.rec-tel p{
  font-size: 25px;
  font-family: "Shin Go Regular","typesquare" !important;
  font-weight: bold;
  line-height: 30px;
}
.rec-tel span {
  font-size: 18px;
}
.rec-tel1 {
  text-align: right;
  font-size: 12px;
}
.rec-left {
  margin-right: 40px;
}
.rec-right {
  margin-left: 40px;
}
.bl-bg {
  background-color: #e2f0f1;
  display: table;
  height: 220px;
  width: 100%;
}
.bl-bg-inner {
  margin-top: 10px;
  display: table-cell;
  vertical-align: middle;
}


/*ここから準備中*/
.preparation {
    padding: 150px 0;
    text-align: center;
    background-image: url(../images/bg-preparation.png);
    background-repeat: no-repeat;
    background-position: center;
}
.preparation p {
    font-weight: bold;
    font-size: 16px;
    line-height: 40px;
}
.preparation a {
    color: #1e5ea2 !important;
}
.preparation a:visited {
    color: #1e5ea2;
}

/*ここからフッター --------------------*/
#footer {

}

.return-top {
	background-image: url(../images/bg-foot.png);
	background-repeat: repeat-x;
}

.rt-inner {
	width: 980px;
	text-align: center;
	margin: 0 auto;
	display: block; 
}

.foot {
	width: 980px;
	text-align: left;
	margin: 0 auto;
	display: block;	
}

.foot p {
	font-size: 0.938em;
}

.foot-inner {
	background-image: url(../images/bg-footer.png);
	background-repeat: no-repeat;
	padding: 60px 0;	
}

.foot-address {
	padding: 10px 0;
	line-height: 25px;
}

.foot-left, .foot-center, .foot-right {
  display: inline-block;
  vertical-align: top;
}

.foot-center {
	padding: 0 100px;
}

.foot-left {
  text-align: left;
}

.icon-tel, .p-tel {
  display: inline-block;
  vertical-align: bottom;
}

.p-tel p {
  font-size: 1.688em;
  font-weight: bold;
  font-family: "Shin Go Regular","typesquare" !important;
  color: #595757;
}

.foot-list {
  font-size: 0.875em;
  color: #595757;
}

.foot-list {
  text-align: left;
  list-style: none;
}

.foot-list-item2 {
  text-indent: 2em;
}

.copy-right {
	background-image: url(../images/bg-line.png);
	background-repeat: repeat-x;
}

.copy-right p {
	font-family: "Shin Go Regular","typesquare" !important;
	font-size: 0.750em;
	font-weight:bold;
	color: #4378a2;
	text-align: center;
	padding: 10px 0;
}

.sns {
  text-align: center;
  padding-top: 20px;
}
.sns img{
  width: 8%;
}
.sns p{
  color: #fff;
  font-weight: bold;
}
.sns img,.sns p{
  display: inline-block;
  vertical-align: middle;
}
.instagram {
  background-color: #1e5ea2;
  padding: 5px;
  border-radius: 5px;
}


@media screen and (max-width:980px) { 
    /*　画面サイズが480pxからはここを読み込む　*/
    .pc-area {
      display: none;
    }
    .sp-area {
      display: block;
    }

    #header-inner {
        width: 100%;
        display: block;
        margin: 0 auto;
    }
    #head-menu1 {
      display: none;
    }
    #head-menu2 {
        width: 100%;
        margin: 0 auto;
        text-align: left; 
        background-color: #1e5ea2;
    }
    #main {
        width: 100%;
        text-align: center;
        margin: 0 auto;
        display: block;
    }

    /*スマホメニュー*/
    *, *:before, *:after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    }
    ol, ul {
    list-style: none;
    }
    a {
    text-decoration: none;
    color: inherit;
    }
    .cp_cont {
    height: auto;
    }
    /* menu */
    .cp_offcm03 {
    position: relative;
    z-index: 5;
    top: 0;
    left: 0;
    overflow: auto;
    width: 100%;
    height: auto;
    padding-top: 0;
    -webkit-transition: transform 0.3s ease-in;
    transition: transform 0.3s ease-in;
    text-align: center;
    color: #ffffff;
    background-color: #039be5;
    }
    .cp_offcm03 nav,
    .cp_offcm03 ul {
    height: 100%;
    }
    .cp_offcm03 li {
    display: inline-block;
    margin-right: -6px;
    border: none;
    }
    .cp_offcm03 a {
    display: block;
    padding: 12px 45px;
    -webkit-transition: background-color .3s ease-in;
    transition: background-color .3s ease-in;
    }
    .cp_offcm03 a:hover {
    background-color: #ddeded;
    }
    /* menu toggle */
    #cp_toggle03 {
    display: none;
    }
    #cp_toggle03:checked ~ .cp_offcm03 {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    }
    #cp_toggle03:checked ~ .cp_container {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    }
    .cp_mobilebar {
    display: none;
    }
    /* content */
    .cp_container {
    position: relative;
    top: 0;
    padding: 35px auto;
    -webkit-transition: transform .3s ease-in;
    transition: transform .3s ease-in;
    }
    .cp_content {
    margin: 0 auto;
    padding: 20px;
    height: 65vh;
    text-align: center;
    }

    @media (max-width: 980px) {
    /* menu */
    .cp_offcm03 {
    position: fixed;
    left: -500px;
    overflow-y: hidden;
    width: 500px;
    height: 100%;
    padding-top: 60px;
    color: #ffffff;
    background-color: #595858;
    }
    .cp_offcm03 nav {
    background: #ddd;
    }
    .cp_offcm03 li {
    display: block;
    margin-right: 0;
    border-bottom: 1px solid #ffffff;
    }
    .cp_offcm03 a {
    padding: 30px;
    font-size: 2.3rem;
    font-weight: bold;
    }
    /* menu toggle */
    .cp_mobilebar {
    display: block;
    z-index: 10;
    position: fixed;
    top: 0;
    left: 0;
    padding: 0 25px;
    width: 100%;
    height: 100px;
    background-color: #1e5ea2;
    }
    .cp_menuicon {
    display: block;
    position: relative;
    width: 60px;
    height: 100%;
    cursor: pointer;
    -webkit-transition: transform .3s ease-in;
    transition: transform .3s ease-in;
    }
    .cp_menuicon > span {
    display: block;
    position: absolute;
    top: 55%;
    margin-top: -0.3em;
    width: 100%;
    height: 0.3em;
    border-radius: 1px;
    background-color: #dadf00;
    -webkit-transition: transform .3s ease;
    transition: transform .3s ease;
    }
    .cp_menuicon > span:before,
    .cp_menuicon > span:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 1px;
    background-color: #fff;
    -webkit-transition: transform .3s ease-in;
    transition: transform .3s ease-in;
    }
    .cp_menuicon > span:before {
    -webkit-transform: translateY(-0.6em);
    transform: translateY(-0.6em);
    }
    .cp_menuicon > span:after {
    -webkit-transform: translateY(0.6em);
    transform: translateY(0.6em);
    }
    #cp_toggle03:checked + .cp_mobilebar .cp_menuicon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    }
    #cp_toggle03:checked + .cp_mobilebar span:before,
    #cp_toggle03:checked + .cp_mobilebar span:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    }
    #cp_toggle03:checked ~ .cp_offcm03 {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    }
    #cp_toggle03:checked ~ .cp_container {
    -webkit-transform: translateX(250px);
    transform: translateX(250px);
    }
    /* content */
    .cp_container {
    top: 60px;
    height: 92vh;
    }
    }

    ul.bxslider {
        padding-top: 100px;
    }

    /*ここからindex.html*/
    .whatsnew {
      margin-top: 60px;
      margin-right: 20px;
      margin-left: 20px;
      border-bottom: none;
    }
    .news-inner {
    	padding: 0px;
    }
	.title-news, .text-news {
	    display: block;
	}
	.title-news {
	  border-right: none;
	  border-bottom: solid 2px #ddd;
	}
	.sp-news-title {
	  text-align: center;
	}
	.sp-news-title p {
	  font-size: 1.8rem;
	  font-weight: bold;
	  color: #1e5ea2;
	  line-height: 25px;
	  padding: 20px 0 15px 0;
	}
	.sp-news-title span {
	  font-size: 1.2rem;
	}
	.text-news {
	  padding-left: 0px;
	  padding-top: 20px;
	}
    .text-news p {
      font-size:1.3rem;
      line-height: 35px;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
    }
    .btn1 {
    	display: inline;
    }
    .btn1 img {
    	width: 30%;
    	margin: 5px;
    }
    .btn2 img {
    	margin: 5px;
    }
    .btn-right {
    	width: 100%;
    }
    .btn-recruit {
    	width: 60%;
    }
    .btn-blog {
    	width: 30%;
    }

    /*ここからcompany.html*/
    .top-image {
      padding-top: 100px;
      background-color: #fff;
      height: auto;
    }
    .top-image img {
      width: 100%;
    }
    .sub-title img { 
    	width: 30%;
    }
    .overview {
      font-size: 1.0rem;
      padding: 0 30px;
    }
    .overview2, .overview3 {
      padding: 30px 20px;
    }
    table {
      width: 100%;
      margin: auto;
      text-align: left;
      border-collapse: collapse;
    }
    .overview th, .overview td {
      font-size: 1.3rem;
      display: block;
    }
   .overview th {
   	padding: 15px 0 5px 20px;
   }
   .overview td {
   	padding: 0 0 15px 20px;
   }
   .ov-box p {
    text-align: left;
    font-size: 1.3rem;
  }
    .s-t1 {
        font-size: 2rem;
        padding-bottom: 5px;
        border-bottom: solid 2px #1e5ea2;
        font-weight: bold;
    }
    .s-t2 {
      font-size: 1rem;
    }   
    .s-t3 {
        font-size: 2rem;
        font-weight: bold;
    }
    .s-t4 {
        display: none;
    }

    /*ここからaccess*/
    .access {
      padding: 0 30px 50px 30px;
    }
    .address p {
      font-size: 1.3rem;
    }

    /*ここからservice*/
    .tab_panel {
      padding: 30px;
    }
    .serv-box {
      width: 100%;
      border-left: none;
      padding: 0px;
    }
    .serv-box p {
      line-height: 30px;
    }
    .serv-box span {
      font-size: 1.3rem;
    }
    .s-t5 {
      font-size: 2rem;
    }
    .s-t6 {
      font-size: 1rem;
    }
    .sub-title3 {
      display: block;
      padding-right: 0px;
      padding-bottom: 20px;
      width: 100%;
    }
    .serv-box p {
      text-align: left;
      font-size: 1rem;
    }

    /*ここからcontact*/
    .con-p p {
    	font-size: 1.3rem;
    	text-align: left;
    }
    .tsuiki p {
    	font-size: 1.2rem;
    	line-height: 30px;
    }
    #contactForm table th {
    	font-size: 1.4rem;
    	width: 100%;
    	display: block;
    }
	#contactForm table th {
		padding: 10px 16px;
	}
    #contactForm table td {
    	display: block;
    }
    #contactForm table {
    	width: 95%;
    }

    /*ここから準備中*/
    .preparation {
    	padding: 80px 20px;
    }
    .preparation p {
        font-weight: bold;
        font-size: 1.1rem;
        line-height: 35px;
    }

    /*ここからrecruit.html*/
    .sub-title5 {
      padding: 20px 0 20px 0;
    }
    .sub-title5 p {
      font-size: 1.5rem;
      font-weight: bold;
    }
    .tr1 span {
      color: #1e5ea2;
      font-weight: bold;
    }
    .rec-p {
      width: 90%;
      padding-bottom: 30px;
    }
    .rec-p p {
      font-size: 1.3rem;
    }
    .rec-img {
      width: 60%;
    }
    .rec-img, .rec-p {
      display: block;
      margin: 0 auto;
    }
    .rec-left {
      margin-right: 0px;
      margin-bottom: 50px;
    }
    .rec-right {
      margin-left: 0px;
    }
    .recruit-box1 {
      display: inline-block;
      vertical-align: top;
      width: 80%;
      height: auto;
    }
    .rec-box1 img {
      width: 50%;
    }
    .rec-p2 {
      font-size: 1.3rem;
    }
    .rec-tel {
      padding: 15px;
    }
    .rec-tel span {
      font-size: 1.5rem;
    }
    .rec-tel p {
      font-size: 2.0rem;
      font-family: "Shin Go Regular","typesquare" !important;
      font-weight: bold;
      line-height: 35px;
    }
    .rec-tel1 {
      font-size: 1rem;
    }

    /*ここからfooter*/
    #footer {
      border-top: solid 2px #1d5ea2;
    }
    #footer, .foot, .copy {
        background: #fff;
    }
    .logo-sp {
        width: 100%;
    }
    .foot {
        width: 100%;
        text-align: center;
        margin: 0 auto;
        display: block;
    }
    .foot p {
      font-size: 1.3rem;
      line-height: 30px;
    }
    .foot-inner {
      background-size: 100%;
    }
    .foot-center {
        padding: 0 20px;
        text-align: left;
    }
    .p-tel2 p {
        font-size: 2.0rem;
        font-weight: bold;
        font-family: "Shin Go Regular","typesquare" !important;
    }
    .copy {
      text-align: center;
      background-color: #1d5ea2;
    }
    .copy p {
      color: #fff;
    }

}

