/* ----------------------
  レスポンシブ
-------------------------*/
.ie #wrapper{
 z-index: 0;
  width:expression(this.width >= 960? "960px" : "auto");
}

@media screen and (min-width: 960px) {/* 960まで */

#wrapper{
 float: left;
 width: 100%;
 margin: 0 auto;
}

#layout{
 width: 100%;
 margin: 0 auto;
}
#contents {
  max-width: 960px;
}
#main{
}

#side{
 width: 250px; 
}

.btn_group_g{
 width: 835px;
 margin-left: auto;
 margin-right: auto;
}
}

@media screen and (max-width: 960px) {/* 960以下 */
.home_entry .post_text{
 font-size: 90%;
}
}
/* youtube */
.movie-wrap {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
 
.movie-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.g_map {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.g_map iframe,
.g_map object,
.g_map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/*----------------------------
 700まで基本
------------------------------*/
@media screen and (min-width: 700px) {

body{
 background: url(images/body_bg-02.gif) repeat-x left 0;
 margin: 0;
 padding: 0;
}

#layout{
 padding: 0;
 margin: 0 auto;
}
#contents{
 margin-left: auto;
 margin-right: auto;
 margin-bottom: 30px;
}

#header{
 max-width: 960px;
 margin-left: auto;
 margin-right: auto;
 height: 100px;
}

#main{
  text-align:left;
  margin-bottom: 20px;
  width: 70%;
  min-height: 500px;
  float: left;
  padding: 0px 0px 30px 0px;
  background-color: #fff;
}

.page .entry{
 padding-top: 20px;
}
.home_main{
 margin-top: 20px;
}

#main_wide{
  text-align:left;
  padding: 10px 10px 30px 10px;
  background-color: #fff;
}

.category_main,
.single_main{
 width: 70%;
 min-height: 450px;
}

#side{
 text-align: left;
 width: 25%;
 margin: 0;
 float: right;
}

.home_side{
}

.side_inner{
 margin-left: auto;
 margin-right: auto;
 margin-bottom: 15px;
}
.side_banner{
 margin-bottom: 12px;
}

.side_banner,
.side_banner img,
.side_banner a{
 display: block;
 float: left;
 height: auto;
}
.side_banner img{
 width: 100%;
 height: auto;
}


/*----------------------------
 見出し
------------------------------*/
#main h2{
 display: block;
}

#side h2{
 box-shadow:0px 2px 0px #fff;
}
.d_none{
 display: none;
}

.d_none_sp{
 display: none !important;
}

/* ----------------------
ヘッダー700まで
-------------------------*/
     
.logo_group{
  display: block;
  float: left;
}

.logo{
  text-align: left;
  max-width: 70%;
  float: left;
  margin: 0px 0px 0 0px; 
}
.logo h1 a img{/** SVGフィル用ロゴサイズ **/ 
	height:55px;
	width:auto;
  }

.tel_box{
  display: block;
  float: left;
  width: auto;
  margin-top: 30px;
  }
.tel_box img{
  float: left;
}
#header h1{ 
  float: left;
  margin-top: 29px;
  padding:0px;
  font-size: 1.5em;
  font-weight: normal;
  }
  
.site-description{
 text-align: center;
 color: #555;
}

.sub_image{
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 960px;
  height: 100px;
}

.pagetitle{
  font-size: 2em;
  font-weight: normal;
  color: #fff;
  text-align: left;
  margin-top: auto;
  margin-bottom: auto;
  padding: 50px 0 0 10px;
}
.subtitle{
  padding-left: 50px;
}

.slide_btn{
  display: none;
}

.head_bg_outer{
 width: 100%;
 float: left;
 height: 150px;
 background: url(images/page-bg.jpg) no-repeat center -300px;
 background-attachment: fixed;
}
.cate_outer{
 float: left;
 width: 100%;
 height: 150px;
 background: url(images/cate-bg.jpg) no-repeat center -500px;
 background-attachment: fixed;
}

.head_bg.contact{
 height: 150px;
 background: #0000ae url(images/contact-bg.jpg) no-repeat center top;
} 
.head_bg.single{
 height: 150px;
 background-color: #2f57a0;
}
.head_bg.shoko{
 height: 150px;
 background: #0000ae url(images/bg-shoko.jpg) no-repeat center top;
} 
.head_bg.member{
 height: 150px;
 background: #0000ae url(images/bg-member.jpg) no-repeat center top;
} 


/* ----------------------
  main menu 700まで
-------------------------*/
.main_menu_bg{
 width: 100%;
 height: 53px;
 float: left;
 clear: both;
}

#main_menu{
	display:inherit !important;
  text-align: center;
  max-width: 960px;  
  height: 50px;
  padding-top: 2px;
  clear: both;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0px;
  background: url(images/m_border-2.gif) no-repeat center left; 
}
#main_menu .first-child,  
#main_menu .first_child{
 /*width: 10% !important;*/
 margin-left: 1px;
}

#main_menu ul{
  width: 100%;
	display: flex;
	justify-content:space-between;
}
#main_menu ul li{
  line-height: 48px;
  list-style: none;
  display: block;
  text-align: center;
  /*float: left;*/
  margin: 0 auto;
  position: relative;
  width: 100%;
	/*min-width: 15%;
  width: 17.888%;*/
background-repeat: no-repeat;
  background-position: center left;
  }

#main_menu ul li a{
  /*font-size: 13px;*/
  font-size: 12px;
  text-decoration: none;
  color: #fff;
  padding: 0px 5px 0px 5px; 
  display: block;
  background: url(images/m_border-2.gif) no-repeat center right; 
}
#main_menu .current_page_item,
#main_menu ul li a:hover{
  display: block;
  color: #fff;
  background-color: #386ab1;
}

#main_menu .current-menu-item{
  color: #fff;
  display: block;
  color: #0099FF;
}
#main_menu .current-menu-item:hover{
  display: block;
  border-bottom: none;
}

#main_menu span{
  display: none;
}

/* サブタイトル 
#main_menu span{
 display: block;
 float: none;
 margin-top: -9px !important; 
 font-size: 11px;
 line-height: 1;
 margin: 0;
 padding: 0;
 color: #DDCC7B;
}
*/

/* ---------------------------
ドロップダウンメニュー @700
------------------------------*/                     

#main_menu ul li:hover > ul {
   display: block;
}

#main_manu ul li li { 
  clear: left;
  clear: both;
  float: none !important;
}
#main_menu ul ul li a{
 float: none;
 background-color: #f9f9f9;
 color: #555;
	background-image: none;
}
#main_menu ul ul li a:hover{
 background-color: #666;
 color: #fff;
 border-bottom: none;
}

#main_menu ul ul ul { /*3段目以降*/
  top: 0;
  left: 100%;
}

#main_menu ul.sub-menu {
  display: block;
  text-align: left;
  z-index: 300 !important;
  display: none; 
	position: absolute; 
	/*top: 48px; 
	left: 0;*/
   }  
.ie7 ul.sub-menu {
}

* html ul.sub-menu { line-height: 0; }  

ul.sub-menu li{
  display: block;
  clear: left;
  margin: 0 !important;
}

ul.sub-menu li a {
  /*width: 135px;
	width: 160px;*/
  font-size: 13px !important;
  padding-left: 10px;  
  display: block;  
  background-color:#666;
  margin: 0;  
  border-bottom: 1px dotted #ccc;  
  zoom: 1;  
  line-height: 35px;
}  
ul.sub-menu li a:hover {
  color: #fff;
  background-color: #ccc;
}  

/* ---------------------------
その他共通 @700
------------------------------*/
.list-flex {
	display:flex;
}
.box-blue{
	background-color:#E4F1FD;
}
.box-radius{
	border-radius:7px;
}
/*************************************** 
  home 700まで
****************************************/
.main_image{
 /*margin-top: 10px;*/
padding-top:300px;
 width: 100%;
 background: url(images/main-bg.jpg) no-repeat center 0px;
 background-size:cover;
}
.main_image .inner{
 margin-left: auto;
 margin-right: auto;
 max-width: 960px;
 text-align: center;
}
.main_image .inner img{
 float: left;
}

.btn_group{
 display: table; 
 margin: 0 auto 0 auto;
 width: 100%;
}

.btn_group a{
 float: left;
}
.btn_box{
 float: left;
 width: 100%;
 display: table;
}

.btn_1{
 float: left;
 width: 32.29%;
 height: 140px;
 margin-right: 1.5%;
 background-color: #ccc;
 color: #fff;
}

.fit{
 margin: 0 !important;
}
.bnspan_1{
 width: 49%;
 float: left;
 margin-bottom: 15px;
}

.bnspan_1 img{
 width: auto;
 width: 100%;
}
.bnspan_1r{
 width: 49%;
 float: right;
 margin-bottom: 15px;
}
.bnspan_1r img{
 width: auto;
 width: 100%;
}

.content_under{
 float: left;
 width: 100%;
 background-color: ;
}
/* バナー横3 */
.h_box_group{
 float: left;
 margin-bottom: 15px;
 width: 100%;
}

.bnspan_3{
 float: left;
 width: 32.48%;
 margin-right: 1.28%;
}
 
.home_com{
 padding: 10px 0 0 0px;
}

.home_main .post-left{
 width: 100%;
 float: left;
 height: ;
}
.home_main .post-right{
 width: 100%;
 float: left;
 clear: right;
 height: ;
}

.post .imgbox{
 display: block;
 text-align: center;
 max-width: 150px;
 float: right;
}
.post .imgbox img{
 max-height: 260px;
}

.home_entry{
 min-height: 100px;
}
.home_entry .post_text{
 min-height: 75px;
 max-width: 75%;
 float: left;
} 

/* -----------------foot navi @700*/
#f_navi{
  float: left;
}

/*------------------- address @700*/
#footer{
 width: 95%;
 
}
.address{
 margin-top: 35px; 
 float: left;
 text-align: left;
 }

.add_box01{
 float: left;
 padding-right: 10px;
 margin-right: 10px;
 border-right: 1px dotted #ccc;
}
.add_box02{
 float: left;
}
.copy{
 font-size: 70%; 
 float: right;
 margin-top: 80px;
 text-align: right;
 }

/* カテゴリー@700 */
.main_inner{
 display: table;
 width: 100%;
 float: left;
}

.category_entry img{
 max-width:100% !important;
 height: auto !important;
 clear: both;
 width: auto\9;
}  
  
/* ------- ページ設定 @700*/
/*************************************** 
  M&A 700まで
****************************************/
	article.linkarrow{
		background-color:#E4F1FD;
		border-radius: 15px;
		line-height:1.6;
		padding:20px;
	}
	.linkarrow a{
		background-image: url(images/arrow-5.gif);
		background-repeat: no-repeat;
		background-position: left center;
		padding: 10px 0 10px 15px;
	}
/* ------- ギャラリー */
.gallery{
 padding-left: 2%; 
}

.d_none_sp{
 display: none !important;
}

/*************************************** 
  コンサルティング事業 700まで
****************************************/
#consl .list-flex {
	display:flex;
	width:100%;
	justify-content:space-around;
	flex-wrap:wrap;
	padding-bottom:20px;
}
li.box-blue{
	padding:5px 8px;
	font-size:12pt;
}
#consl h2.service{
	background-image:none;
	background-color:#E4F1FD;
	font-size:14pt;
	color:#04287e;/*#426E86;*/
	border:none;
	box-shadow:none;
	border-radius:7px;
}
#consl .main-content ul {
	padding-left:40px;
}
#consl .main-content ul li{
	list-style-type:disc;
	color:#04287e;/*#426E86;*/
}
#consl .main-content li ul li{
	list-style:none;
	color:#555555;
}


}/*  */

@media screen and (max-width: 700px) {/* 700以下 */

body{
 margin: 0;
 padding: 0;
 background: none;
}

#wrapper{
 width: 95%;
 margin: 0 auto;
}

#layout{
 margin: 0 auto;
 width: 100%;
}
#contents {
 width: 100%;
 margin: 0 auto;

}
#header {
 background: none;
 display: table;
 text-align: center;
 width: 100%;
}
#side{
 float: none;
 display: table;
 margin: 0 auto;
 width: 100%;
}
#main{
 float: none;
 display: block;
 margin: 0 auto 15px auto;
 width: 100%;
}

#main_wide{
 width: 100%;
}

#footer {
 color: #e4e4e4;
 margin: 0 auto;
 padding-bottom: 10px;
 width: 90%;
}
.post {
 text-align: left;
}

/* 見出し 700以下 */

#side h2,
#main h2{
  max-width: 100%;
}



/* -----------------
 ヘッダー 700以下
--------------------*/
.logo{
 max-width: 290px;
 margin-bottom: 5px;
}

#header h1{
 max-width: 290px;
 float: none;
 clear: both;
 font-size: 1.3em;
 font-weight: normal;
 margin-bottom: 10px;
 margin-top: 20px;
 margin-left: auto;
 margin-right: auto;
}

.logo h1 a img{/** SVGフィル用ロゴサイズ2025.08.20追加 **/ 
	height:55px;
	width:auto;
  }

.tel_box{
 text-align: center !important;
}

.tel_group{
 float: none;
 display: table;
 width: auto;
 margin: 0 auto 10px auto; 
}

ul.head_navi li{
 float: left;
}
.logo{
 float: none;
 display: table;
 text-align: center;
 margin: 5px auto 0 auto;
}
/* pagehead sub_image */
.pagehead{
  background-color: #eee;
  height: 100px;
}

.sub_image{
  margin-top: 0;
  height: 100px;
}

.pagetitle{
 width: auto;
 text-align: left;
 font-size: 1.3em;
 padding-left: 10px;
 margin-left: 0;
}
.subtitle{
  display: none;
}


/* --------------------------------
 toggle menu main_menu 700以下
----------------------------------- */

.slide_btn{
  float: left;
  display: block;
  height: 50px;
  margin-bottom: 5px;
  background-color:#555;
  width: 100%;
  cursor:pointer;
}
.toggle_menu_title{
  text-shadow: 1px 1px 0px #000;
  font-weight: bold;
  color: #fff;
  line-height: 50px;
  font-size: 110%; 
  margin-left: 15px;
  float: left;
}

.toggle_menu_title:before {
  content: "メニューを開く";
}
.toggle_menu_title.act:before {
  content: "メニューを閉じる";
}

.slide_btn:hover{
  text-shadow: 1px 1px 0px #fff;
  color: #555;
  cursor:pointer;
  background-color: #777;
}
.nav_icon{
 margin: 12px 10px 0 0;
 height: 25px;
 width: 25px;
 background: url(images/nav_icon.png) no-repeat center center;
 float: right;
}

#main_menu{
 display: none;
}

#main_menu{
  background-repeat: repeat;
  text-align: center; 
  width: 100%;
  float: left;
  height: auto;
  margin: 0 auto 10px auto;
  }
#main_menu ul{
  margin-left: auto;
  margin-right: auto;
}  
  
#main_menu ul li{
  float: none;
  background-color: #fff;
  width: auto;
  padding-left: ;
  }
#main_menu li{
  list-style: none;
}
#main_menu ul li a{
  text-align: left;
  float: none;
  background: url(images/arrow-1.png) no-repeat 10px center; 
  padding-left: 25px;
  display: block;
  text-shadow: 0px 1px 1px #fff;
}
#main_menu ul li a {
  font-size: 100%;
  line-height: 38px;
  margin: 0 auto 0 auto;
  display: block;
  font-weight: bold;
  text-decoration: none;
  border-bottom: 1px dotted #666;
  color: #555; 
  }
#main_menu li a:hover{
  text-shadow: 1px 1px 1px #555;
  font-size: 90%;
  background-color: #ccc; 
  text-decoration: none;
  color: #fff;
  }

/* ドロップダウン */
.sub-menu {
  margin-left: 15px !important; 
}

/* サブタイトル */
#main_menu span{
 display: block;
 float: right;
 font-size: 11px;
 margin-right: 5px;
 color: #DDCC7B;
}

/* ----------------------
 home 700以下
------------------------- */
.btn_group{
 display: table; 
 margin: 0 auto 0px auto;
 width: 100%;
}

.bnspan_1{
 width: 100%;
 text-align: center;
 margin-bottom: 15px;
}
.bnspan_1 img{
 margin-bottom: 5px;
}

.bnspan_1r{
 width: 100%;
 text-align: center;
 margin-bottom: 15px; 
}
.bnspan_1r img{
 margin-bottom: 5px;
}
/* 区切り */
.sp_line_1{
 padding-bottom: 15px;
 margin-bottom: 10px;
 border-bottom: 1px dotted #ccc;
}
.btn_1{
 float: left;
 width: 32.29%;
 height: 140px;
 margin-right: 1.5%;
 margin-bottom: 10px;
 background-color: #ccc;
 color: #fff;
}
.fit{
 margin: 0 !important;
}

.h_box_group {
 margin-bottom: 20px;
}
.bnspan_3{
 width: 100%;
 margin-bottom: 15px;
}
.bnspan_3 img{
 display: table;
 margin-left: auto;
 margin-right: auto;
}
.home_entry{
 margin-bottom: 20px;
}
.home_entry .imgbox{
 margin-top: 15px;
 text-align: center;
}
.home_entry .post_text{
 font-size: 100%;
}

.main_image{
 margin-top: 20px;
}
  
/* ----------------------
 side 700以下
------------------------- */

.box_center img{
  float: none;
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 5px;
  text-align: center;
}
.side_inner{
 margin-bottom: 15px;
}

.link_banner{
 text-align: center;
 width: 100%;
}
.link_banner p{ 
 margin-left: auto;
 margin-right: auto;
 max-width: 290px;
}
.link_banner img{
  max-width:100%;
  height: auto;
  width: auto\9;
}
/* -----------------
 foot 700以下
-------------------- */
#f_navi{
  display: table;
  text-align: center;
  margin: 0 auto;
}
.center_box_foot{
 text-align: center;
 max-width: 300px;
 margin-left: auto;
 margin-right: auto;
}

/* address 700以下 */
.address{
 font-size: 13px;
 margin-top: 50px;
 text-align: center;
 }
.add_box01{
 float: left;
 padding-right: 10px;
 margin-right: 10px;
 border-right: 1px dotted #ccc;
}
.add_box02{
 float: none;
}
.logo-m{
 display: none;
}
.copy{
 font-size: 70%; 
 float: none;
 margin-top: 10px;
 text-align: center;
 }

/* menu */
.text_group{
 width: 100%;
 display: block; 
 float: left; 
 margin-bottom: 10px;
 border-bottom: 1px dotted #ccc;
}
.text_group:after{
 clear: both;
}
.title_menu{
 float: left;
 width: 100%;
 margin-bottom: 5px;
}
.right_group{
 text-align: right;
 float: right;
 width: 100%;
 margin-left: 2px;
}

/* page */
.box_2_1l,
.box_2_1r{
 max-width: 280px;
 padding: 5px;
 margin-left: auto;
 margin-right: auto;
}

/* ギャラリー */
.gallery-caption{
 font-size: 12px;
}


}/* W700 end */

@media screen and (min-width: 501px) {/* ページ設定W500まで */
.alignleft{
 margin-right: 10px;
}
/* サムネイル画像 */
.post_thumb{
 float: left; 
}

}

@media screen and (max-width: 500px) {/* W500以下 */
.home_entry .imgbox{
 width: 60%;
 margin-left: auto;
 margin-right: auto; 
}


.post_thumb{
 text-align: center;
}
.post_thumb,
.box_center{
 float: none !important;
 margin-left: auto;
 margin-right: auto;
 margin-bottom: 10px;
} 

/* 投稿画像センター寄せ */
.img-center,
.center-img{
 float: none !important;
 display: table !important;
 margin-left: auto !important;
 margin-right: auto !important;
 margin-bottom: 10px !important;
 clear: both;
}

/* 新着タイトル */
.new_ul span{
  float: none !important;
  margin-right: 10px;
  padding-left: 15px;
}

/* -----------------
 table設定 500以下
-------------------- */
.d_none_pc{
 display: none !important;
}
tr.d_none_pc{
 display: none !important;
}
.t_right{
 text-align: right; 
}

.base_t2 th {
  font-size: 80%;
}

.t_respons-s3,
.t_respons-s3 tbody,
.t_respons-s3 tr,
.table-respons,
.table-respons tbody,
.table-respons tr {
  display: block;
  }
.table-respons{
  border-left: 1px solid #eee;
  border-bottom: 1px solid #eee;
  border-right: 1px solid #eee;
}
.t_respons-s3 th,
.table-respons th{
  display: block;
  text-align: center;
  width: 100% !important;
  border: none;
  padding: 8px 0;
  background-color: #ececec;
  clear: both;
}
.table-respons td {
  display: block;
  width: auto;
  margin-left: 0;
  padding: 10px;
  border: none;
  clear: both; 
}
.t_left td{
 text-align: left;
}

.t_right td{
 text-align: right;
}
.t_respons-s3 td{
 display: block;
 float: left;
 width: auto;
}
.table-respons p{
 float: left;
}
.t_left{
 float: left;
 text-align: left !important;
}

.table-5 td{
 text-align: right;
 border-bottom: 1px dotted #ccc;
 display: block;
}

}

@media screen and (max-width: 400px) {/* W400以下 */
p {
  line-height: 1.3;
}
body{
  font-size: 90%;
  line-height: 150%;
}
.cycloneslider-template-default .cycloneslider-caption-title {
  font-size: 13px !important;
  line-height: 1;
  margin-bottom: 0;
  padding: 5px;
  }
/* ギャラリートップ */
.i_box_200{
 width: 200px;
 float: none;
 margin-right: auto;
 margin-left: auto;
 margin-bottom: 10px;
}
.i_box_200_fit{
 width: 200px;
 float: none;
 margin-right: auto;
 margin-left: auto;
 margin-bottom: 10px;
}

.i_box_200 img,
.i_box_200_fit img {
 width: 100%;
}
}
/*----------------------------
 400以下ここまで
------------------------------ */
