@charset "utf-8";
/*==============================
ヘッダー
==============================*/
@media only screen and (min-width: 768px) {
	.headbx,.com_bnrbox{
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	body{
		min-width: 0px;
	}
	.tpbx,.cntbx, #Gnav{
		display: none;
	}
  #Header {
    width: 100%;
    padding: 7px 0 0 0;
  }
  #Header.fm {
    width: 100%;
    padding: 7px 0 0 0;
  }
  #Header .headbx {
    border-bottom: 1px solid #e4e6e8;
    padding: 0px 10px 11px 10px;
  }
  #Header.fm .headbx {
    margin: 0 0 0 0;
  }
  #Header .headbx .logo {
    float: left;
    width: 220px;
		text-align: left;
  }
  #Header .headbx .navbox {
    float: right;
  }
  #glayLayer {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #000000;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
    display: none;
    z-index: 99991;
  }
  #overLayer {
    position: absolute;
    top: 55px;
    left: 0px;
    display: none;
    width: 100%;
    z-index: 99999;
  }
  #overLayer .menu {
    margin: 0 10px 0 10px;
    border: 2px solid #247048;
  }
  #overLayer .menu nav ul {
    width: 100%;
  }
  #overLayer .menu nav ul li {
    border-bottom: 1px solid #c4ddd0;
    background: -moz-linear-gradient(left, #fff, 0.5, #e5f4ec);
    background: -webkit-gradient(linear, left top, right top, from(#fff), to(#e5f4ec));
  }
  #overLayer .menu nav ul li a {
    padding: 17px 10px 17px 12px;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.1em;
    display: block;
    color: #000000;
    text-decoration: none;
  }
  #overLayer .menu nav ul li a span {
    padding: 0 15px 0 0;
    background: url(../../images/dec_arw_dot_gr.png) no-repeat right 50%;
    background-size: auto 8px;
    webkit-background-size: auto 8px;
    -moz-background-size: auto 8px;
    font-weight: bold;
    display: block;
  }
  #overLayer .menu p.close {
    background: #f0f2f3;
    text-align: center;
  }
  #overLayer .menu p.close a {
    padding: 10px 0;
    display: block;
    font-weight: bold;
    text-decoration: none;
    color: #000000;
  }
  #overLayer .menu p.close a span {
    padding: 0 23px 0 0;
    font-weight: bold;
    background: url(../../images/icon_close.png) no-repeat right 50%;
    background-size: auto 15px;
    webkit-background-size: auto 15px;
    -moz-background-size: auto 15px;
  }
	/*com_bnrbox*/
.com_bnrbox{
	width:300px;
	margin:0 auto 0 auto ;
}

.com_bnrbox .tel{
	margin:0 0 5px 0;
}

.com_bnrbox ul .lbt{
	float:left;
	width:145px;
}

.com_bnrbox ul .rbt{
	float:right;
	width:145px;
}
}
@media only screen and (max-width: 767px) {
	#Contents {
		width: 100%;
		box-sizing: border-box;
	}
	#Contents *{
		box-sizing: border-box;
	}
	.com_tpcpath{
		width: 100%;
    padding-bottom: 5px;
	}
	.com_tpcpath .com_lybx ul.path{
		padding: 0;
	}
	.com_tpcpath .com_lybx{
		width: 100%;

	}
  .com_tpcpath .com_sclbx{
    position: static;
    margin-top: 1em;
  }
  .com_tpcpath .com_sclbx ul li#fb-share-button{
    height: 20px;
    width: 90px;
  }
	.com_lybx {
		width: 100%;
		padding-left: 3%;
		padding-right: 3%;
	}

	#Mainbx{
		width: 100%;
		float: none;
	}
	img{
		max-width: 100%;
		height: auto;
	}
  .com_ttl h2.ftb{
    font-size: 1.7em;
  }
  div.ctgr_tag{
    float: none;
  }
  .date{
    margin-top: 0.5em;
  }
  div.clm_text{
    margin: 20px 10px;
  }
  div.clm_text div.clm_text{
    margin: 20px 10px;
  }
  div.clm_text ul{
    margin: 10px 0 20px 20px;
  }
  div.detail{
    margin: 5px 0 0 20px;
  }
  div.supervision_area{
    height: auto;
  }
  .btm_bnr2{
    display: none;
  }
	#clm_side{
		float: none;
		width: 100%;
		container-type: inline-size;
	}
	.relation_list{
		flex-wrap: wrap;
	}
	div.clm_side_bnr{
    margin-bottom: 2em;
		width: 100%;
		display: grid;
		gap: 10px;
		grid-template-columns: repeat(3, 1fr);
	}
  div.clm_side_bnr a img{
    padding: 0;
  }
	@container (max-width: 450px) {
		div.clm_side_bnr{
			grid-template-columns: repeat(2, 1fr);
		}
	}
	div.clm_side_latest{
		width: 100%;
	}
	.clm_side_menu:last-of-type{
		display: none;
	}
	p.clm_side_latest_img{
		padding-left: 3%;
	}
	#clm_side .archive_list select{
		display: none;
	}
}
/*==============================
フッター
==============================*/
@media only screen and (min-width: 768px) {
	.com_pgtp,
	.footerin,
	#glayLayer,
	#overLayer{
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	.com_fxdbtn,
	.tpbx,
	.lnkbx,
	.botbx{
		display: none;
	}
	.com_pagetop.pagebt{
		display: none !important;
	}
  #Footer{
    padding: 0;
    background: none;
  }
  #Footer .footerin {
    background: url(../../images/bg_foot_grad.png) repeat-x 0 0;
    background-size: 1px auto;
    webkit-background-size: 1px auto;
    -moz-background-size: 1px auto;
    padding-top: 3vw;
  }
  #Footer .footerin .logo {
    text-align: center;
    padding: 10px 0 5px 0;
  }
  #Footer .footerin nav ul {
    background: #eff3f2;
    border-top: 1px solid #d5dfdc;
  }
  #Footer .footerin nav ul li {
    float: left;
    border-right: 1px solid #d5dfdc;
    border-bottom: 1px solid #d5dfdc;
  }
  #Footer .footerin nav ul li span {
    background: url(../../images/icon_home.png) no-repeat 0 50%;
    background-size: auto 13px;
    webkit-background-size: auto 13px;
    -moz-background-size: auto 13px;
    padding: 0 0 0 18px;
    font-weight: bold;
  }
  #Footer .footerin nav ul li.nol {
    border-right: 0;
  }
  #Footer .footerin nav ul li.wd1 {
    width: 100%;
    text-align: center;
  }
  #Footer .footerin nav ul li.wd2 {
    width: calc(50% - 0.5px);
  }
  #Footer .footerin nav ul li.wd3 {
    width: 33%;
  }
  #Footer .footerin nav ul li.wd4 {
    width: 34%;
  }
  #Footer .footerin nav ul li a {
    padding: 12px 0 12px 10px;
    display: block;
    font-size: 11px;
    font-weight: bold;
    color: #333333;
    text-decoration: none;
  }
  #Footer .footerin nav ul li.wd1 a {
    padding: 12px 0 12px 0;
  }
  #Footer .footbox {
    background: #6a6a68;
    padding: 20px 0;
    text-align: center;
  }
  #Footer .footbox ul {
    width: 100%;
    margin: 0 0 10px 0;
  }
  #Footer .footbox ul li {
    display: inline-block;
    margin: 0 15px 10px 15px;
  }
  #Footer .footbox ul li a {
    color: #ffffff;
    text-decoration: underline;
  }
  #Footer .footbox address {
    font-style: normal;
    font-size: 11px;
    color: #ffffff;
  }
  /*com_bnrbox*/

  .com_bnrbox {
    width: 300px;
    margin: 0 auto 0 auto;
    padding-bottom: 5vw;
  }
  .com_bnrbox .tel {
    margin: 0 0 5px 0;
  }
  .com_bnrbox ul .lbt {
    float: left;
    width: 145px;
  }
  .com_bnrbox ul .rbt {
    float: right;
    width: 145px;
  }
}