@charset "utf-8";


@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=M+PLUS+Rounded+1c&family=Noto+Sans+JP:wght@100..900&&family=Source+Code+Pro:ital,wght@0,200..900;1,200..900&display=swap');
/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

/* =Reset default browser CSS.
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
html{ font-size: 62.5%； } /*初期値16pxの62.5%でルートが10px*/
body{
	line-height: 1.5;
	font-size:90%;
	font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#000;
 -webkit-text-size-adjust: 100%;
 background:#333333;
}



/*全てをクリア*/
.clear {clear: both;} 

/* new clearfix */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */


/*基準を1rem=10pxに設定*/
html {
    font-size: 62.5%; position: relative;
}
.lato-regular {
  font-family: "Lato", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.lato-bold {
  font-family: "Lato", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.source-code-pro-m{
  font-family: "Source Code Pro", monospace;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
/* 共通変更 フォントサイズ　*/
.font12 {
  font-size: 12px;
  font-size: 1.2rem;
}
.font14 {
  font-size: 14px;
  font-size: 1.4rem;
}
.font16 {
  font-size: 16px;
  font-size: 1.6rem;
}
.font18 {
  font-size: 18px;
  font-size: 1.8rem;
}
.font20 {
  font-size: 20px;
  font-size: 2.0rem;
}
.font22 {
  font-size: 22px;
  font-size: 2.2rem;
}
.font24 {
  font-size: 24px;
  font-size: 2.4rem;
}
.font26 {
    font-size: 26px;
    font-size: 2.6rem;
  }
.font28 {
  font-size: 28px;
  font-size: 2.8rem;
}
.font30 {
  font-size: 30px;
  font-size: 3.0rem;
}
.font32 {
  font-size: 32px;
  font-size: 3.2rem;
}
.font34 {
  font-size: 34px;
  font-size: 3.4rem;
}
.font36 {
  font-size: 36px;
  font-size: 3.6rem;
}
.font40 {
  font-size: 40px;
  font-size: 4.0rem;
}
.font56 {
  font-size: 5.6px;
  font-size: 5.6rem;
}
/* リンク設定
------------------------------------------------------------*/
a,a:visited{
margin:0;
padding:0;
text-decoration:underline;
outline:0;
vertical-align:baseline;
background:transparent;
 color: #0033cc;}

a:hover, a:active{
-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s;
outline: none;
color:#930;}

 a:hover img{opacity:.7; }
/**** Clearfix ****/



/* レイアウト
------------------------------------------------------------*/
.inner{margin:0 auto; max-width:1200px; width:98%;}
.inner2{margin:0 auto; max-width:1100px;width:95%;}

#wrapper{margin:0px auto 0px;font-size: 14px; font-size: 1.4rem;background:#fff;padding:0 0 0px; background-size:100% auto; background-position:0 155px; background-repeat:no-repeat; width:100%; background-attachment:fixed;  overflow: hidden;}
#wrapper.smaller{background-position:0 80px; }
.alignleft{ float:left;}
.alignright{ float:right;}
.center{ text-align:center;}
.flex{ display: flex;}
.wrap{flex-wrap: wrap;}


/*btn*/


/* ヘッダー
----------------------------------*/
#glovalheader {padding: 30px 0 0px ;z-index: 1000; text-align: center; width:100%; background: #fff; min-height: 50px;}
#glovalheader .inner { font-weight: 600; text-align: left;align-items: center; width:90%; max-width: 1300px;}
#glovalheader h1{ line-height: 1.3; margin: auto auto auto  0;}
#glovalheader h1 span { display: inline-block; vertical-align: middle;}
#glovalheader h1 a { text-decoration: none; font-weight: 600; color: #000;  }
#glovalheader .inner .headertel{  line-height: 1.3;}
#glovalheader .inner a.mail,#glovalheader .inner a.line{  display: block;}

#glovalheader .inner a.mail img{ width:115px; height: auto; margin: 0 1em}
#glovalheader .inner a.line img{width:45px; height: auto;}

#glovalheader.smaller { position: fixed; background: #fff;padding:0px 0 0px ; height:55px; min-height: 55px;}
#glovalheader.smaller h1 a { color: #000; text-shadow: none;  }
#glovalheader.smaller h1 span.font14 { display: none;}
#glovalheader.smaller  .inner a.mail {display: none;}
#glovalheader.smaller .inner .headertel{ margin-right: 1em;}
#glovalheader.smaller .inner .headertel br{ display: none;}
#glovalheader.smaller .inner a.line img{width:42px; height: auto; margin: 5px 0 0 0;}
/* ナビ
----------------------------------*/

a.footbanner{ margin:0 auto; width:98%; max-width:800px; display: block;  }
a.footbanner img{  width:100%; height: auto;   }

 
/**
 * menu
 */
/* ===== 基本メニュー構造 ===== */
.menu-container {
  background: rgba(0,0,0,1);  margin: 1em auto 0; z-index: 800;
}
#glovalheader.smaller  .menu-container { margin:0px auto 0;}

.menu-container ul {
  list-style: none;
  padding: 0.5em 0; 
  margin: 0;
}
.menu-container > .menu > ul.flex.wrap {
  display: flex;
  flex-wrap: wrap; justify-content: center;
}
.menu-container li {
  position: relative; margin: 0 ;  text-align: left ;
}


.menu-container li ul {
   opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
  position: absolute;
  background: #333333;
  top: 100%;
  left: 0;
  min-width: 250px;
  z-index: 999;
}

/* ホバー時（PC）・openクラス付き時（SP） */
.menu-container li:hover > ul,
.menu-container li.open > ul {
  opacity: 1;
  max-height: 1000px; /* 十分大きい値にしておく */
  overflow: visible;
}


.menu-container li ul li {
  position: relative; text-align: left ;
}

.menu-container li ul li ul {
  top: 0;
  left: 100%;
}
.menu-container ul a{color: #fff;position: relative; text-decoration: none;  display: block; padding: 0.5em 1.5em;}
.menu-container li:hover {  background: #999;}
.menu-container li a:after{  content: ""; /* 必須 */
  display: inline-block; /* または block */
  height: 1em; /* 文字の高さに合わせる */ position: absolute; right:0em; top:50%; transform:  translateY(-50%);
  border-right: 1px solid #fff; /* 線の種類と色 */}
.menu-container li:last-child a:after{ display: none;}
.menu-container li ul li a:after{ display: none;}
.menu-container li ul li a:before{ 
font-family: FontAwesome;
  content: "\f105  ";
 left: 10px; top:50%; transform:  translateY(-50%); position: absolute;
}

/* ===== ハンバーガー ===== */
.menu-btn {
  display: none;
  cursor: pointer; position: absolute; right: 0;top:5px;
}
#roof .menu-btn{ background: #fff;}
#glovalheader.smaller .menu-btn {top:5px;}
.menu-btn b {font-weight: 300;color: #000; display: block; margin: -2px;
}

.menu-trigger {
  display: inline-block;
  padding: 10px;
}
.menu-trigger span {
  display: block;
  width: 40px;
  height: 3px;
  background: #333;
  margin: 5px 0;
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; 
}
.menu-trigger span:nth-child(1) {
    top: 4px;
  }
.menu-trigger span:nth-child(2) {
    top: 16px;
  }
/* ===== レスポンシブ設定 ===== */
@media screen and (max-width: 1000px) {
#glovalheader {padding: 10px 0  ;}
#glovalheader.smaller { padding:10px 0 0 0 ; margin: -0px 0 0 0;  width:100%; }
 .menu-btn {
    display: block;  z-index: 1000;
  }
.menu-container li a:after{ display: none;}
.menu-container {
    display: none;
  }

.menu-container.open {
    display: block; padding: 8px 0 0 ;
    position: absolute; top:-8px; width:100%;
     -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; 
  }

.menu-trigger.active span:nth-child(1) {
    -webkit-transform: translateY(10px) rotate(-315deg);
    transform: translateY(3px) rotate(-45deg); background: #fff;
  }
.menu-trigger.active span:nth-child(2) { display: none;
  }
.menu-trigger.active span:nth-child(3) {
     -webkit-transform: translateY(-10px) rotate(315deg);
    transform: translateY(-5px) rotate(45deg); top:24px; background: #fff;
  }    
  .menu-btn .menu-trigger.active b {
  font-weight: 300;color: #fff;
}  
  .menu-container > .menu > ul.flex.wrap {
    flex-direction: column;
  }

   .menu-container ul {
   margin: 0 auto; width:95%; max-width: 600px;
  }
     .menu-container ul li {
    margin: 0 0.5em !important;  
  }
    .menu-container ul li li{
    margin: 0 0.5em !important; text-align: left !important; display: inline-block; width:45%; border: 1px solid #fff; vertical-align: top;
  }
    .menu-container ul li  li a{
    margin: 0 0.5em; text-align: left;
  }
     .menu-container ul li  li a:hover{
    color: #fff;
  } 
 .menu-container li ul {
    position: static;
    background: #f9f9f9;
    color: #000;margin: 0 0; width:100%;

  }

  .menu-container li ul a {
    color: #000;
  }
  .menu-container li.open > ul {
    display: block;
  }

  .menu-container li ul li ul {
    position: static;
  }
   .menu-container li ul li ul li {
     width:100%;
  }
       
    #glovalheader h1 img{ margin:0px auto 0 20px; display: block; width:calc( 90% - 80px ); max-width: 443px;height: auto;}

#glovalheader .inner .headertel{  display: none;}
#glovalheader .inner a.line{ margin-right: 80px;}
#glovalheader.smaller .menu-btn {top:0;}
}

@media screen and (max-width:745px) {
#glovalheader {padding: 10px 0  ;}
.menu-btn {
  right: 0;top:2px;
}
#glovalheader.smaller .menu-btn {top:2px;}
#glovalheader .inner .headertel{  display: none;}
#glovalheader .inner a.line{ margin-right: 80px;}
#glovalheader.smaller .menu-btn {top:0;}
}

@media screen and (max-width:680px) {

#glovalheader .inner a.mail,#glovalheader .inner a.line{  display: none;}
}

  @media screen and (max-width:500px) {  .menu-container ul li li{
  display:block; width:95%; 
  }
}


  @media screen and (max-width:420px) {  #glovalheader h1 img{ margin:0px auto 0 10px;  width:calc( 90% - 100px ); max-width: 443px;height: auto;}
}

/* フッター
*****************************************************/

.telbtn{background:#000; margin:50px auto 0px !important; padding:1em; width:90%; max-width: 700px; border-radius: 20px; text-align:center; color: #fff; position: relative;}
.telbtn  ol{ margin: 0 auto; width:95%; max-width: 600px; text-align: left;}
#contents .telbtn h2{ background: none; padding: 0; margin: 0  !important; color: #fff; font-size: 30px !important; }
.telbtn img{width:30px; height: auto; border: none !important;}
.telbtn img,.telbtn span{ display: inline-block; vertical-align: middle;}
.telbtn span{  margin: 0 0 0 0.5em;}
a.contactbtn,a.linebtn{ display: inline-block; vertical-align: middle;  }
a.contactbtn{ font-weight: 500; background: #fff;padding:5px 15px 5px 0; border-radius: 20px; height: auto; color: #000; text-decoration: none; margin-right: 1em; width:53%; }
.contactbtn img{  width:40px; height: auto; margin: 0 0.5em;}
.linebtn img{ width:50px; height: auto; }
.linebtn img,.line span{ display: inline-block; vertical-align: middle; }
a.linebtn{  color: #fff;  }
img.people{ position: absolute;right: -10%; bottom: 0; width:40%; max-width: 300px; height: auto;}


#footer  { color:#fff; padding:20px 0px 0;font-size: 14px; font-size: 1.4rem;}
#footer nav{ border-bottom:1px solid #fff; padding:0 10px 5px; text-align:center;}
#footer a  { color:#fff;font-size: 13px; font-size: 1.3rem; text-decoration:none;  }
#footer a:hover  { text-decoration:underline;  }
#footer  ul li { display:inline-block;  margin:0px; padding:5px 20px; text-align:center; border-left:1px solid rgba(255,255,255,0.6);  }
#footer  ul  li:first-child { border:none; padding:5px 20px 5px 0; }
#footer ul li:last-child { padding:5px 0px 5px 20px; }

#footer  dl,#footer ol { margin:15px 0px ; display:inline-block;  vertical-align:top; }
#footer  dl { width:52%;  }
#footer  dl dt{font-size: 18px; font-size: 1.8rem;  font-weight:bold; }
#footer  dl dd { margin:5px 0px ;}
#footer  dl dd img{ width:45px; height: auto; margin: 0.5em 0.5em 0;}


#footer ol {width:45%;}
#footer ol li { display:inline-block;  margin:0px; padding:0 5px 5px 0; vertical-align:middle;  }
#footer ol li.ss {  width:138px; height: auto; }
#footer ol li.ss img {  width:100%; height: auto; }
a.floatmitumori{ display: block;position: fixed;
top: 140px;z-index: 1000;
right: 0px; background: #e01000; border-radius: 10px 0  0 10px;
padding: 6px 10px;transition:0.5s; }
a.floatmitumori img{ width:200px; height: auto;}
a.floatmitumori:hover{ 
padding: 6px 20px 6px;transition:0.5s}
a.floatmitumori:hover img{  opacity:1;}
a.floatmitumori2{ display: block;position: fixed;
top: 140px;z-index: 1000;
left: -15px; transition:0.5s; }
a.floatmitumori2 img{ width:150px; height: auto;}
a.floatmitumori2:hover{ 
padding: 6px 20px 6px;transition:0.5s}
a.floatmitumori2:hover img{  opacity:1;}

#page-top1{
  display: block;
  background:#666666;
  position: fixed;
  z-index: 9999;
  bottom: -0px;
  right: 40px;
  width: 50px;
  height:50px;
  text-align: center;
  text-decoration: none;
  transition: .5s;
	vertical-align:middle;}
a#page-top1 {  color:#fff !important;}
#page-top1 span {display: block; margin:10px auto 0;  font-size: 20px; font-size: 2.0rem; }

address#copy{ text-align:right; padding:10px 0; font-size: 12px; font-size: 1.2rem;color:#fff;}


.breadcrumb { margin:5px 0 0 0; background: none !important;
}

.breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0; 
}
.breadcrumb li{ position: relative;
  display: inline-block;/*横に並ぶように*/
  list-style: none;
  margin-right: 0.8em !important;} 
.breadcrumb li:not(:last-child):after {/*三角の部分*/
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  border-style: solid;
  border-color: transparent;
  border-left-color: #000;/*背景色*/
  border-width: 14px 12px;
  width: 0;
  height: 0;
}

.breadcrumb li a {
  display: inline-block;
  padding: 0 3px 0 7px;
  height: 28px;
  line-height: 28px;
  text-decoration: none;
  background: #000;/*背景色*/
    color: #fff;
}

.breadcrumb li a:hover {
  color: #000;background:  #fff;
}
.breadcrumb li:hover:after {  border-left-color: #fff;/*背景色*/
}
.breadcrumb li:last-child { height: 28px; line-height: 28px; padding:0 0.5em;background: #000;/*背景色*/
    color: #fff;}



/*sub共通*/
.sub #contents { margin:10px auto ;  max-width:1100px; width:90%; padding-bottom: 30px;  }
.sub #contents #subtitle{ margin:40px auto ; background:url(../img/common/titleback.png) no-repeat; padding:20px 50px 0px ; }
.sub #contents #subtitle h1{ color:#fff; font-weight:bold; font-size: 27px; font-size: 2.7rem; }
.sub #contents h2 { font-weight:bold; font-size: 18px; font-size: 1.8rem; margin:0 0 20px; }
.sub #contents h2 span {font-family: 'Fjalla One', sans-serif;font-size: 36px; font-size:3.6rem; margin-right:1em; }
.sub #contents h3{ font-weight:bold; font-size: 20px; font-size: 2.0rem; margin:0 0 35px; }

.sub #contents #subtitle h1{ display: block; margin-left: 50px; }
.sub #contents .pagenai{ text-align:left; margin:20px 0 0 40px !important;    }
.sub #contents .pagenai li,.page #contents .pagenai li,.page #contents .pagenai li:first-child,.archive #contents .pagenai li,.archive #contents .pagenai li:first-child{background: rgba( 255,255,255,0.8);  border: none; margin:2px; padding: 0; border-radius: 5px;  display: inline-block; vertical-align: middle;}
.sub #contents .pagenai a{  display: block;padding: 8px 10px;  text-decoration: none;color:#000 !important;  }
.sub #contents .pagenai li:hover{  background:#666666;   }
.sub #contents .pagenai li:hover a{ color: #fff!important;  }
.sub #contents article{ margin:0 10px 80px; padding:30px 40px;  background:rgba(255,255,255,0.6); border-radius:20px; }



.button {
	display: inline-block;
	width: 200px;
	height: 45px;
	text-align: center;
	text-decoration: none;
	line-height: 45px;
	outline: none;
	position: relative;
	z-index: 2;
	background-color: #333;
	border: 2px solid #333;
	color: #fff;
	line-height:45px;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button:hover {
	background-color: #fff;
	border-color: #284683;
	color: #284683;
}
.button::before,
.button::after {
	top: 0;
	width: 50%;
	height: 100%;
	background-color: #333;
}
.button::before {
	right: 0;
}
.button::after {
	left: 0;
}
.button:hover::before,
.button:hover::after {
	width: 0;
	background-color: #284683;
}

/*チェックリスト*/
.checklist { margin:20px;}
.checklist li{
	position:relative;
	padding-left:20px;	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 15px 0px !important;

}
 
.checklist li:after, .checklist li:before{
	content:''; 
	display:block; 
	position:absolute; 
	top:4px; 
	left:8px; 
	height:11px; 
	width:4px; 
	background:#f35e4c; 
	border-radius:10px;
	transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
}
.checklist li:before{
	top:8px; 
	left:3px;
	height:8px; 
	transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
}

/*カウントリスト*/

.countlist
,.countlist li{
	padding:0px;
	margin:0px;
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 5px 0px !important;
}
 
.countlist{
	counter-reset:li;   
}
 
.countlist li{
	position:relative;
	display: block;
	padding:15px 0px 10px 40px; 
	margin-left:0px !important;
}
 
.countlist li:after{
	counter-increment: li;
	content: counter(li) ".";
	position: absolute;	
	display: block;
	text-align: center;
	font-style: italic;
	left: 0px;
	top: -1px;
	font-size: 30px;
	color:#bbb;
	font-family:'Goudy Bookletter 1911',Georgia,serif; 
}


/*サブサブタイトル*/

.sub2 #contents h3{
  margin:40px auto 20px;
  position: relative;
  padding: .5em .75em;
  background: #f4f4f4;
  border-top: 1px dashed #ccc;
  border-bottom: 1px dashed #ccc;
  box-shadow: 0 7px 10px -5px rgba(0, 0, 0, .1) inset;
}
.sub2 h3::after {
  position: absolute;
  bottom: -9px;
  right: 10%;
  content: '\002702';
  color: #aaa;
  font-size: 18px;
  line-height: 1;
}

.sub2 #contents article  p,.sub2 #contents article  ul{ margin:10px 20px;}
.sub2 h3 span{ margin:0 0 0 0.5em; font-size:14rem;  font-size: 18px;}







.page-template-page-voice-php #wrapper{ background-image:url(../img/voice/header.jpg) }

.page-template-page-voice-php ul.voice{  margin:20px auto; width:930px; }
.page-template-page-voice-php ul.voice li{ display:inline-block; vertical-align:top; border:1px dotted #333; background:rgba(255,255,255,0.8); padding:20px; text-align:left; width:400px; margin:10px;}
.page-template-page-voice-php  ul.voice li h2{ font-size:18px !important; font-size:1.8rem !important; margin:0 0 10px;}
.page-template-page-voice-php  ul.voice li h2 span{ font-size:14px !important; font-size:1.4rem !important; margin:0 0 0 10px;}
.page-template-page-ex-php #wrapper,.tax-constructionex #wrapper,.page-template-page-construction_ex #wrapper{ background-image:url(../img/ex/header.jpg) }
.page-template-page-ex-php #contents ul  { margin:20px auto 40px;}
.page-template-page-ex-php #contents ul li  { margin:0 auto; border:1px solid #333;  padding:40px 40px !important;  width:900px; background:rgba(255,255,255,0.7); }
.page-template-page-ex-php #contents ul li:nth-child(even)  { background:rgba(230,230,230,0.7);  border:none; border-left:1px solid #333; border-right:1px solid #333;}

.page-template-page-ex-php #contents  li h2{ font-size:28px !important; font-size:2.8rem !important; margin:0 0 10px; font-weight:normal;}
.page-template-page-ex-php #contents  li h2 span{ font-size:20px !important; font-size:2.0rem !important;}

.page-template-page-ex-php #contents ul li div.setumei { float:left; width:360px;}
.page-template-page-ex-php  #contents ul li div.photo { float:right; width:480px; }
.page-template-page-ex-php #contents ul li:nth-child(even) div.setumei { float:right;}
.page-template-page-ex-php  #contents ul li:nth-child(even)  div.photo { float:left;  }
.page-template-page-ex-php #contents ul li div.setumei img { width:360px; height:auto;  }
.page-template-page-ex-php #contents ul li figcaption{font-family: 'Fjalla One', sans-serif;}
.page-template-page-ex-php #contents ul li div.setumei  figure{ margin:20px 0 0; font-size: 20px; font-size:2.0rem;  } 
.page-template-page-ex-php  #contents ul li dl{}
.page-template-page-ex-php  #contents ul li dl dt{ float:left; clear:both;}
.page-template-page-ex-php  #contents ul li dl dd{ margin:0 0 0 4.5em;}

.page-template-page-ex-php  #contents ul li div.photo img { width:480px; height:auto;  }
.page-template-page-ex-php  #contents ul li div.photo figure{ margin:0;font-size: 36px; font-size:3.6rem;  } 
 

.tablenav {
	color: #666;
	margin: 1em auto;
	line-height:2em;
	text-align:center;
}

a.page-numbers, .tablenav .current {
	color: #00019b;
	padding: 2px .4em;
	border:solid 1px #666;
	text-decoration:none;
	font-size:smaller;
	background:white;
}

a.page-numbers:hover {
	color:white;
	background: #666;
}

.tablenav .current {
	color: white;
	background: #666;
	border-color: #666;
	font-weight:bold;
}

.tablenav .next, .tablenav .prev {
	border:0 none;
	background:transparent;
	text-decoration:underline;
	font-size:smaller;
	font-weight:bold;
}



/*home*/
.page-id-428 #wrapper{ background-image:url(../img/index/main.jpg); background:#fff;}
.page-id-428 #wrapper  .inner3{margin:0 auto; max-width:1000px; width:95%;}

.slide{
	z-index:10000;
	width:100%; background-size:100% auto; background-repeat:no-repeat;
	position:relative;
	margin:0 auto;
	background-position:50% 0;
	}


	.page-id-428 .headimg{ text-align:center; color:#fff; padding:80px 0 150px; text-shadow: 2px 4px 3px rgba(0,0,0,0.3);  position: relative; margin: 0 auto; width:100%; max-width: 1000px; }
	.page-id-428 .headimg h1{ font-weight:bold; font-size:40px; font-size:4.0rem; }
	.page-id-428 .headimg h1 span{ display:block; font-size:25px; font-size:2.5rem; margin:15px 0 ; }
    .page-id-428 .headimg  h2{ text-align:center; color:#fff; padding: 0.5em 0 ;
  overflow: hidden; background:rgba(188,28,31,0.7);  width:70%; max-width: 620px;  margin: 20px auto !important;
}
   
.page-id-428 .headimg img{  width:150px; height: auto; position: absolute; top:10px; right: 20px;}




#maincontets  #ex 	,#maincontets  #topnav  { text-align:center;  background:#fff; padding:80px 0;}
	

/*ここからトップ工事*/

	#maincontets a{ text-decoration:none;}
	#maincontets{ padding:0px 0; margin:0px auto 0; background: none;}
	#maincontets .navi1{ text-align:center;}
#maincontets .navi1 ul{justify-content: space-between;}
	#maincontets .navi1 li{ width:49%;  text-align: left; height: auto; margin: 5px 0}
	#maincontets .navi1 li{ border:1px solid #333; padding:8px;}
	#maincontets .navi1 li h3{  color:#fff; background:#5191fd; padding:5px 10px; margin: 0 !important; }
	#maincontets .navi1 li span{ line-height:1.2; margin-left: 1em;}
	#maincontets .navi1 li:nth-child(2) h3 { background:#a64847; }
	#maincontets .navi1 li:nth-child(3) { border:1px solid  #df1e14;  align-items: center; position: relative;}
#maincontets .navi1 li.sodankai.flex{align-items: flex-start; /* 上下中央揃え */}
#maincontets .navi1 li.sodankai img.tenpo {width:40%; height: auto; }
#maincontets .navi1 li.sodankai dt,#maincontets .navi1 li.sodankai dd{ display: inline-block; vertical-align: top; padding: 0.3em;}
#maincontets .navi1 li.sodankai dt{ width:4em;  text-align: right;}
#maincontets .navi1 li.sodankai dd{width:calc(100% - 4em);}
#maincontets .navi1 li.sodankai h3 { background: none; color: #000; width:calc( 100% - 60px);}
#maincontets .navi1 li.sodankai dd a img{ width:20px; height: auto;}
#maincontets .navi1 li.sodankai dd span{  margin: 0; width:0;}
#maincontets .navi1 li.sodankai img.simachurgo{width:60px; height: auto; position: absolute; right:0px; top:0px;}
#maincontets .navi1 li.infome { background:#fffddc;position: relative;}
#maincontets .navi1 li.infome h3 { background: none !important; color: #000; width:auto;}
#maincontets .navi1 li.infome img {  position: absolute;width:120px; height: auto; bottom: 1px; right:2px;}
#maincontets .navi1 li.infome p{ margin: 0.5em 1.5em 0.5em 0 ;}
#maincontets .navi1 li.infome p span{ display: inline-block; vertical-align: middle; margin-right: 0.5em;}
#maincontets .navi1 li.infome h5 {position: relative; margin: 0 120px 0 0; padding-left: 1.5em; }
#maincontets .navi1 li.infome h5:before {
font-family: FontAwesome;
  content: "\f105  ";
 left: 10px; top:10px; position: absolute;
}



/*挨拶*/
#contents #maincontets #aisatu { background:#333;  color:#fff; margin:0px 0; padding-bottom: 3em;  border-radius:none !important;  }
#maincontets  #aisatu div.flex {align-items: flex-start; }
#maincontets  #aisatu div.flex  img{ margin:0 0 0 20px;  width:40%;}
#maincontets  #aisatu div.flex div{ width:55%;}
#maincontets  #aisatu h3{  text-align:left; color:#fff; padding:40px 20px 0px; }
#maincontets  #aisatu p{ padding:0 20px 10px; }
#maincontets  #aisatu dl{ margin:10px 20px 5px; background:#fff; border-radius:5px; color:#000; padding:8px; width:400px;}
#maincontets  #aisatu dl dt,#maincontets  #aisatu dl dd{ display:inline-block; margin:0 5px;}
#maincontets  #aisatu h3 span{display: inline-block; margin-left: 0.5em;}

#maincontets  #aisatu ul.aisatunavi{ text-align: center; align-items: center;}
#maincontets  #aisatu nav a{  width:calc( 100% / 3 - 2em ); margin: 2em 1em;background: #fff; border-radius: 5px; color:#000; padding: 0.8em 0.4em 0.7em 1.5em; position: relative; text-align: center; height:5em; }
#maincontets  #aisatu nav a:hover{ background: #f0f0f0; }

#maincontets  #aisatu nav a:last-child h3{ line-height:2.5em;}

#maincontets  #aisatu nav a h3{ color:#000; margin: 0; padding: 0; text-align: center;  }
#maincontets  #aisatu nav a:before {
font-family: FontAwesome;
  content: "\f0da"; color: #0066cc; 
 left: 10px; top:50%; transform:  translateY(-50%); position: absolute;
}
#maincontets  #kyoka h4{ text-align: center; margin: 2em auto 1em; font-weight:bold;}
#maincontets  #kyoka ul{gap: 1em; text-align: center;justify-content: center;margin:1em auto 2em; }
#maincontets  #kyoka ul li{ width:calc(20% - 1em); }
#maincontets  #kyoka ul li img{ width:100%; height: auto; }
#maincontets  #kyoka ul.kyoka2 li{ width:calc(20%  - 1em); }
#maincontets  #kyoka ul li span{ display: block; }


/*ここからトップ施工事例*/
/*工事事例*/
.carousel a {color: #000; display: block; margin: 0 1em; padding:20px 20px 10px;  border: 1px solid #000;  position: relative;  border-radius: 10px; text-align: center;}
.carousel a h2{  position: absolute; left:20px; top:20px;text-align: left;}

.carousel a figure{ position: relative;}
.carousel a figure.before{  display: block; width:35%;}
.carousel a figure.after{ width:60%;  background: #ddd; }

.carousel a figcaption{ background: #fff; padding: 2px 1.5em; border-radius: 20px;display: block;  position: absolute; } 
.carousel a .before figcaption{ left:0.5em; bottom:0.5em;}
.carousel a .after figcaption{  right:0.5em; bottom:0.5em;}

.carousel .flex{justify-content: space-between;
  align-items        : baseline;}

	.page-id-428 #wrapper #carousel {
    margin: 20px auto;
    max-width: 1200px; width:100%;
    height: 220px;
    text-align: left;
    position: relative;
}
 
.page-id-428 #wrapper #carousel_prev,
.page-id-428 #wrapper #carousel_next {
    top: 0;
    width: 20px;
    height: 100px;
    background: #000;
    cursor: pointer;
    position: absolute;
}
.page-id-428 #wrapper #carousel_prev {
    left: -20px;
    background:transparent url(../img/prev.jpg) no-repeat top left;
}
.page-id-428 #wrapper #carousel_next {
    right: -20px;
    background:transparent url(../img/next.jpg) no-repeat top left;
}
 
.page-id-428 #wrapper #carousel ul li {
    width: 25%;
    float: left;
    display: inline;
}
 
/* =======================================
    ClearFixElements
======================================= */
.page-id-428 #wrapper #carousel ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}
 
.page-id-428 #wrapper #carousel ul {
    display: inline-block;
    overflow: hidden;
}


#maincontets  .btn{
	background-color: #000 ;
	border: 2px solid #333; margin: 1em auto; width:300px;
	color: #fff; padding: 0.1em 0em; border-radius: 30px;
	line-height:45px; position: relative;
}


#maincontets .btn:hover {
	background-color: #fff;
	border-color: #000;
    color: #000;
}
#maincontets .btn::before,
#maincontets .btn::after {
	background-color:  #ececec;
}
#maincontets  .btn:hover::before,
#maincontets .btn:hover::after {
	width: 0;
	background-color: #333;
}
#maincontets  .btn:before {
font-family: FontAwesome;
  content: "\f0da";  background: none;
 left: 10px; top:50%; transform:  translateY(-50%); position: absolute;
}


/*ここからトップニュース*/
#maincontets  #news	 { text-align:center; margin:0px 0; padding:40px 0 40px; border-top:1px dotted #333; border-bottom:1px dotted #333; background:#fff; }
#maincontets  #news  h3{ font-size:24px; font-size:2.4rem; margin:20px; font-weight:bold;  }
	#maincontets  #news  h4{font-weight:bold; margin:0 0 0  ; }
	#maincontets  #news  h4 span{font-weight:normal; border: 1px solid #000; border-radius: 20px; padding: 0.2em 1.5em; margin-right: 0.5em; }
	#maincontets  #news  p{margin:0 0 0 2em ;  }
	#maincontets  #news ul{ margin:20px auto; width:600px; }
		#maincontets  #news ul li{ margin:5px 0; border-bottom:1px dotted #999;  text-align:left;
  color: black;
  position:relative;
  line-height: 1.5;
  padding: 0.5em ;
  margin-bottom: 4px;
  list-style-type: none!important;
}
#maincontets  #news ul li a{  position:relative; display:inline-block; padding-right: 3em;}
#maincontets  #news ul li a:after{
font-family: FontAwesome;
  content: "\f061";
 right: 10px; top:50%; transform:  translateY(-50%); position: absolute;
}

#maincontets  #greeting	 { text-align:left; margin:0px auto; padding:30px;  background:#fff; }
#maincontets  #greeting  h3{ font-size:20px; font-size:2.0rem; margin:20px 0; font-weight:bold;  }
#maincontets  #greeting  div{background:#fafad2; 
	padding:20px 30px; margin:2em  auto; width:70%; max-width: 800px;
	border:1px solid #bbb;
	border-radius: 2px;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset,
                0 0 2px rgba(255, 255, 255, 0.3) inset,
                0 0 10px rgba(0, 0, 0, 0.1) inset,
                0 1px 20px rgba(0, 0, 0, 0.1);
} 


#maincontets #topansin{ text-align:center; margin:40px 0; padding:40px 0 20px; background:#ececec;  }
#maincontets #topansin li{ display: inline-block; vertical-align: top;  width: 320px; height: 320px; border-radius: 50%; text-align: center; background: #fff; margin: 0.5em; position: relative;}
#maincontets #topansin ul{ margin:3em auto;width:95%;  text-align: center;}
#maincontets #topansin li h5{ margin: 2em auto 1em ; line-height: 1.8;}
#maincontets #topansin li h5 b{display: block;}
#maincontets #topansin li span{ display: block; margin: 0.5em auto; width:90%; padding-left: 2em; text-align: left; position: relative;}
#maincontets #topansin li span:before{ 
font-family: FontAwesome;
  content: "\f111";
 left: 10px; top:0; position: absolute;
}

#maincontets #topansin li a{ display: block; position: absolute;
    bottom: 10px; left:50%; transform: translateX(-50%);
	background-color: #000 ;
	border: 2px solid #333; margin: 1em auto; width:250px;
	color: #fff; padding: 0.5em 0em; border-radius: 30px;
	
}

#maincontets #topansin li a:hover {
	background-color: #fff;
	border-color: #000;
    color: #000;
}
#maincontets #topansin li a .fa-solid { display: inline-block; margin-right: 1.5em;
}



/*ブログ*/
#maincontets  #blog{ background:#ececec; padding: 60px 0; text-align: center;}
#maincontets  #blog h2{ text-align: center !important;}
#maincontets  #blog h2 span{ display: block; margin: 0; padding: 0;}
#maincontets  #blog li a{ color: #333}
#maincontets  #blog ul{ margin:3em auto;width:95%; max-width: 1000px; gap:1em;
justify-content: center;}
#maincontets  #blog li{ width: calc( 100% / 3 - 1em);  }
#maincontets  #blog li:not(:last-child) { padding: 0 1em 0 0;
border-right: 1px solid #000;}

#maincontets  #blog li h3{  font-size: 18px;font-weight: normal; margin: 0.5em 0; padding-bottom: 0.3em; text-align: left; border-bottom: 1px solid #000;}
#maincontets  #blog li .hiduke{ text-align: left;}
#maincontets  #blog li .honbun{ margin: 0; text-align: left; padding: 0;}




@media screen and (max-width:1200px) {
.page-id-428 .headimg{ padding:70px 0 100px; }	
#company #contents  dl.his,dl.staff  { width:95%;display:block;margin:0 auto 20px;}
dl.staff .heightLine-group2{ height: auto !important}
#company #contents  dl.com,#company #contents iframe{ display:block; margin:0 auto 20px; width:100%}
#company #contents .com dd{  width:calc( 100% - 150px );}
	
.page-template-page-ex #contents,.page-template-page-voice #contents { margin:10px auto;  max-width:1100px; width:95%;  }	
.page-template-page-ex-php #contents ul li  { margin:0 auto;  padding:30px !important;  max-width:900px;width: calc( 95% - 60px );  }
	.page-template-page-ex-php #contents ul li div.setumei {width:40%;}
.page-template-page-ex-php  #contents ul li div.photo { width:50%; }
.page-template-page-ex-php  #contents ul li div.photo img{ width:100%; height: auto;}
	.page-template-page-ex-php #contents ul li div.setumei img { width:100%; height: auto;}
}

@media screen and (max-width:1000px) {
.page-id-428 .headimg{ padding:0px 0 100px; }	
.page-id-428 .headimg h1{ font-size:30px; font-size:3.0rem; }
.page-id-428 .headimg h1 span{font-size:20px; font-size:2.0rem; margin:15px 0 ; }
.page-id-428 .headimg h2{ width:80%; margin:0 auto;}
.page-id-428 .headimg h2 span { font-size:20px; font-size:2.0rem; }
	#company #contents .point dl{ display:block; margin:10px auto; width:90%; vertical-align:top; text-align: left; }
#company #contents .point dl dt,#company #contents .point dl dd{  display: inline-block; vertical-align: top; margin: 0 ;}
#company #contents .point dl dt{width:8em}
#company #contents .point dl dd{  width: calc( 100% - 14em ); margin:0 0 2em 2em; }
#company #contents .point dl dd img{  margin: 20px auto; display: block; }
#fq article  dl dl {  margin: 1em 0 1em 1em;   }
#fq article  dl dl  dt{ width:10em;}
#fq article  dl dl   dd {margin:0 0 0 10px; width:calc( 100% - 10em - 20px );  }	
.page-template-page-voice-php ul.voice{  margin:20px auto; max-width:930px; width:90%; }
.page-template-page-voice-php ul.voice li{ max-width:400px; margin:10px auto;width: calc( 100% - 40px ); }
a.floatmitumori img{ width:160px; height: auto;}
}

@media screen and (max-width:900px) {
    /* 共通変更 フォントサイズ　*/
  .font12 {
    font-size: 10px;
    font-size: 1.0rem;
  }
  .font14 {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .font16 {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .font18 {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .font20 {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .font22 {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .font24 {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .font26 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .font28 {
    font-size: 26px;
    font-size: 2.6rem;
  }
     .font30 {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .font32 {
    font-size: 30px;
    font-size: 3.0rem;
  }
  .font34 {
    font-size: 32px;
    font-size: 3.2rem;
  }
  .font36 {
    font-size: 34px;
    font-size: 3.4rem;
  }
  .font40 {
    font-size: 38px;
    font-size: 3.8rem;
  }

#maincontets .navi1 li h3{ font-size:18px; font-size:1.8rem;   }
#maincontets .navi1 li span{ left:90px; }
.sub #contents #subtitle{ margin:40px auto ; background:url(../img/common/titleback.png) no-repeat 0 0; padding:20px 0px 0px ;  }
.sub #contents h2 span {font-family: 'Fjalla One', sans-serif;font-size: 30px; font-size:3.0rem; margin-right:1em; }
.sub #contents article{ margin:0 5px 80px; padding:15px 20px;  background:rgba(255,255,255,0.6); border-radius:20px; }
.page #contents .pagenai{ text-align:left; margin:0 0 50px; width:100% !important   }

.pagenai.f ul{text-align: left;}
.koji ul li.btn1 { display:inline; width:300px; margin: 0 auto 8px; }
	


#reform #wrapper article .ki{ margin:20px 20px 0 ;  }
#reform #wrapper article .ki img,#reform #wrapper article .to img,#reform #wrapper article .ba img{  float:none; display: block; margin: 10px auto; width:auto; max-width: 95%; height: auto;  }
 #reform #wrapper article .set{ padding: 10px; margin-bottom: 5px;}
#reform #wrapper article .ba ul li{
  padding: 0.5em 0 0 2.5em;
}
#reform #wrapper article .ba ul li:before {
  left : 0px; /*左端からのアイコンまで*/
}

#reform ol.co li{margin:20px 0;} 
}
@media screen and (max-width:805px) {
    
#maincontets  #aisatu div.flex  img{ display: block;  margin:20px auto 0;  width:95%; max-width: 400px;}
#maincontets  #aisatu div.flex div{  margin:0 auto;  max-width:600px; width:100%; }
#maincontets  #aisatu nav a:first-child{  width:100%; max-width: 450px; margin: 2em auto 0.5em;}
#maincontets  #aisatu nav a{  width:calc( 50% - 1em ); margin:0.5em 0.5em;max-width: 280px; }    
#maincontets  #aisatu nav { justify-content: center;}

.slide{
	width:100%; background-size: auto 100%; background-repeat:no-repeat;
	position:relative;
	margin:0 auto;
	background-position:50% 0;
	}
  .page-id-428 .headimg img{  width:120px; height: auto; position: absolute; top:-80px; right: 20px;}
    
 .telbtn  ol .font36 {
    font-size: 28px;
    font-size: 2.8rem;
  }
    
 .telbtn  ol .font20 {
    font-size: 14px;
    font-size:1.4rem;
  }  
    
#contact  #contents  dt,#contact  #contents  dd{
	padding:8px 1em; width:100%;
	border:none;
	 display:block; 
}
#contact  #contents  dd{  border-bottom: 1px solid #999;

}
#maincontets .navi1 li.infome img {  position: absolute;width:80px; height: auto; bottom: 1px; right:2px;}
#maincontets .navi1 li.infome h5 {margin: 0 80px 0 0;}
#maincontets  #ex ,#maincontets  #topnav  {padding:40px 0;}
}



@media screen and (max-width:750px) {
     /* 共通変更 フォントサイズ　*/
 
  .font24 {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .font26 {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .font28 {
    font-size: 24px;
    font-size: 2.4rem;
  }
     .font30 {
    font-size: 26px;
    font-size: 2.6rem;
  }
  .font32 {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .font34 {
    font-size: 30px;
    font-size: 3.0rem;
  }
  .font36 {
    font-size: 32px;
    font-size: 3.2rem;
  }
  .font40 {
    font-size: 34px;
    font-size: 3.4rem;
  }
    

    
#footer  ul{ text-align: left;}
#footer  ul li,#footer  ul  li:first-child,#footer ul li:last-child  { display:inline-block;margin:10px 0; padding:0 0 0 10px; text-align:left;  width:calc( 100% / 3 - 20px ); border-left:2px solid #fff; line-height: 1; }

#footer  dl,#footer ol { display:block; }
#footer ol {max-width:600px; width:90%; text-align: center; margin: 10px auto;}
#footer ol li { display:inline-block;  margin:0px; padding:5px 5px; vertical-align:top;  }
#footer  dl {max-width:550px; width:90%; margin: 10px auto; }
#maincontets .navi1 li{ width:95%;  text-align: left; height: auto; margin: 5px auto; max-width: 400px;}
	
#maincontets  #blog li{ width: calc( 50% - 1em);  }

    
    
.sub #contents h2 { font-weight:normal; font-size: 16px; font-size: 1.6rem; }
.sub #contents h2 span {font-size: 28px; font-size:2.8rem; }
.sub #contents h3{  font-size: 18px; font-size:1.8rem; margin:0 0 35px; }
.sub2 h3 span{ margin:0 0 0 0.5em; font-size:14rem;  font-size: 14px;}
.nagare article ol {counter-reset: titleNum; margin:0 auto; width:95%;}
.nagare article ol li {border-radius:5px; margin:50px auto; padding:15px 10px;}
.teian .sub-nav{ text-align:left; margin:10px auto;}
.teian .sub-nav li{ margin:5px !important;}
.koji ul li.btn1 { display:block;  }
	
.koji article ol li{ display:block;  margin: 10px auto; width:95%; max-width: 450px; }
.koji article li p { margin:10px auto !important; text-align:left !important; width:100%!important; padding:0;}
.koji article ol li img{ display:block; margin: 0 auto; }	
.koji article li.arrows { width:30px; text-align:center; margin:10px auto; }	
.koji article li.arrows .fa-arrow-right,.koji article li.arrows2 .fa-arrow-right {transform: rotate(90deg); display: block;}
.koji article li.arrows2 .fa-arrow-left {display: none;}
.shohin article ol li{ margin:20px auto; width:calc( 95% - 40px); background:#fff;  padding: 0 20px 40px; border-radius:10px;}
.shohin article ol li img.alignright{ margin:0 auto 20px; display: block;  float: none;  width:187px; height: auto;}
#reform dl.arrow {width:90%;}
#reform dl.arrow dt span {
  margin: 0 .5em;
}
#reform.sub #contents #subtitle h1{font-size: 22px; font-size: 2.2rem; line-height: 1.2; }	
#reform.sub #contents #subtitle{ padding:30px 0px ; }
	
#reform ol.co{   text-align:left; 
}
#reform ol.co li{ display:block; padding: 0.5em 0.5em 0.5em 30px; margin:0px auto 0; width:90%;} 

#reform ol.co2{ width:100%; margin: 0; padding: 0;}
#reform ol.co2 li{ display:block; padding: 0.5em 0.5em 0.5em ; margin:20px auto;} 
#reform ol.co2 li dt,#reform ol.co2 li dd{ display:block; margin:0 0 5px 2em; width:auto;}
#reform ol.co2 li dt{  padding:0 0 0 1em ; position:relative; }
 #reform ol.co2 li dt:before {
  font-family: FontAwesome;
  content: "\f05d";/*アイコン種類*/
  position: absolute;
  left : 0em; /*左端からのアイコンまで*/
  color: #666; 
}	
#reform ol.co2 li dd{  margin:0 0 1.5em 2em;}
#company #contents  dl.his { max-width:750px; width:95%;margin:0 auto 20px;}
#company #contents  dl.his dt,#company #contents  dl.his dd{  display: block; width:100%;}
#towelve2{ margin:20px auto;   padding:1px 20px 20px;  border-radius:10px; width:auto; }	
#towelve2 .countlist { margin:0px 0 0 0px;} 

/*カウントリスト*/

.countlist li{
	position:relative;
	display: block;
	padding:5px 0px 0px 25px; 
	margin-left:0px !important;
}
 
.countlist li:after{
	counter-increment: li;
	content: counter(li) ".";
	position: absolute;	
	display: block;
	text-align: center;
	font-style: italic;
	left: 0px;
	top: 0px;
	font-size: 20px;
	color:#bbb;
	font-family:'Goudy Bookletter 1911',Georgia,serif; 
}
	.page-template-page-ex-php #contents ul li div.setumei,.page-template-page-ex-php  #contents ul li div.photo ,.page-template-page-ex-php #contents ul li:nth-child(even) div.setumei ,.page-template-page-ex-php  #contents ul li:nth-child(even)  div.photo { float: none; margin: 20px auto;  width:90%;}
.page-template-page-ex-php  #contents ul li div.photo img{ width:100%; height: auto;}
	.page-template-page-ex-php #contents ul li div.setumei img { width:60%; height: auto;}
}



@media screen and (max-width:680px) {

 #maincontets  #news	 { padding:20px 0 ; }
#maincontets  #aisatu nav a{  width:100%; max-width: 450px; margin: 0.5em auto 0.5em;}
#maincontets  #kyoka ul li{ width:calc(100% / 3  - 1em); }
#maincontets  #kyoka ul.kyoka2 li{ width:calc(100% / 3  - 1em); } 
    
.slide{
	width:100%; background-size: auto 450px; background-repeat:no-repeat;
	}
  .page-id-428 .headimg img{   top:-80px; right: auto; left:10px;}
.page-id-428 .headimg{ padding:30px 0 0px;  height: 300px;}	
.page-id-428 .headimg h1{ font-size:28px; font-size:2.8rem; margin: 0 auto;  width:80%; }
.page-id-428 .headimg h1 span{font-size:18px; font-size:1.8rem; margin:15px 0 ; text-align: left; }
.page-id-428 .headimg h2 span { font-size:18px; font-size:1.8rem;  }
	#maincontets  #news ul{ margin:20px auto; max-width:600px; width:95% }
	#maincontets  #greeting  div{background:#fafad2; 
	padding:15px; margin:2em auto; max-width:600px; width:95% ;
} 
#maincontets  #topansin .inner3 div.koji .setumei,#maincontets  #topansin .inner3 div .setumei{ float:none;  text-align:left; margin:0 auto;  max-width: 300px;}
#maincontets  #topansin  .inner3 div.koji img,#maincontets  #topansin  .inner3 div img  {float:none;  display: block; margin: 5px auto}
	#maincontets  #topansin  .inner3 div ul { float:none; }
.page-template-page-ex-php #contents ul li  {  padding:20px !important;  }
    
a.floatmitumori{
bottom: 0px; top:auto; width:100%; display: block;
 border-radius: 10px 10px 0 0 ;  
padding: 0px 0 0 ; text-align: center; height: 50px;  }
a.floatmitumori img{  width:100%; max-width: 350px;  height: auto;display: block; margin: -10px auto 0}
a.floatmitumori:hover{ padding: 0px 0 10px ;}
 a.floatmitumori2{display: none;}    
}

@media screen and (max-width:620px) {	
#maincontets .navi1 li.sodankai img.tenpo {width:95%; max-width: 250px; height: auto; display: block; margin: 5px auto; }
    #maincontets .navi1 li.sodankai.flex{ display: block; width:95%; height: auto; display: block; margin: 0 auto; }  
    #maincontets .navi1 li.sodankai div{ width:100%;  margin: 0 auto;}
  #maincontets .navi1 li.sodankai h3 {  width: 100% ; text-align: center;}
    #maincontets .navi1 li.sodankai  dl{ margin: 0 auto; width:300px;}
    #maincontets  #news  h4 span {display: block; margin-bottom: 0.5em;  width:100px; padding: 0.2em 0; text-align: center; }
    #maincontets  #greeting	 { padding:15px 15px 0; }
    
    
.nagare article ol li  img{ float:none; margin:8px auto; display: block; }	
.nagare article ol li p{ margin:0 10px !important;}
.nagare article ol li h4{font-size: 16px; font-size:1.6rem;}
.nagare article ol li h4 span{ font-size: 12px; font-size:1.2rem; display: block; margin:0 ; }
.flow ul.handicon{ margin:20px; background:#f0f0f0; padding:10px;}
.flow  article.made h4{font-size:16px; font-size:1.6rem; }
.flow article.made p.sport{  width:90%!important;}
ul.handicon li { margin:10px 0 0 2em;}
.nagare article ol li  li{
	margin: 5px auto !important;
  padding: 0.5em 0 0.5em; 
   }
	
.toiawasekara ul.menu{ text-align:left; margin:0px auto; }
.toiawasekara ul.menu li{ display:inline-block; margin:10px 0;}
#company #contents .point dl dt,#company #contents .point dl dd{  display:block;  width:100%;}
#company #contents .point dl dd{  margin:1em 0 3em; }
#company #contents .point dl dt {font-size: 18px; font-size: 1.8rem;}
	
#fq article  dl {margin:20px auto 0; }
#fq  article  dl dt { font-weight:bold;font-size: 16px; font-size: 1.6rem; margin:0 0 10px; border-bottom:1px dotted #999;  }
#fq  article  dl dt strong{font-size: 30px; font-size:3.0rem; margin: 0 0.5em 0 0;  }
#fq article  dl dd {margin:10px auto 20px ; width:100%; }
#info .info .news01 ,#info .info .news02{ margin: 2em auto ; padding: 0px;}
#info .info h5{ margin:2em  auto 1em;font-size:18px; font-size:1.8rem;  }
#info .info h4{margin:0 ;  }
    
img.people{ right: -5%; bottom:auto; top:-20px; width:30%;}

}

@media screen and (max-width:520px) {
/* 共通変更 フォントサイズ　*/
 
  .font24 {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .font26 {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .font28 {
    font-size: 22px;
    font-size: 2.2rem;
  }
     .font30 {
    font-size: 21px;
    font-size: 2.1rem;
  }
  .font32 {
    font-size: 26px;
    font-size: 2.6rem;
  }
  .font34 {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .font36 {
    font-size: 30px;
    font-size: 3.0rem;
  }
  .font40 {
    font-size: 30px;
    font-size: 3.0rem;
  }
    
    

.sub #contents article{ margin:0 5px 80px; padding:0px;  border-radius:0px; }
.sub #contents .pagenai{ margin:20px 0 0 0px !important;   padding: 0;   }
#roof article dl { margin:20px auto; width:95%;}
.sub #contents .pagenai li,.sub #contents .pagenai li:first-child,.page #contents .pagenai li,.page #contents .pagenai li:first-child{ border: 1px solid #999; }
.sub #contents h2 span { display: block !important;}

.teian .sub-nav{ text-align:left; margin:10px auto;}
.teian .sub-nav li{ margin:0 auto 5px !important; width:95%;}
.teian section#teian article h4{font-size:20px; font-size:2.0rem;padding: 0 0 .5em 1.5em; }
.teian section#teian article h4::before {	font-size: 30px;
	width:32px;
	height:32px;
	line-height: 32px;
}
.teian section#teian article h5{  margin:10px 20px ; font-size:18px; font-size:1.8rem;}
.teian section#teian article h6{ margin:20px ; padding:10px 10px 5px;font-size:16px; font-size:1.6rem; }
.about div.nurikae dl dt{border:2px solid #ae3624;font-size:1.4rem; font-size:14px; font-weight:bold; }	
.about div.nurikae  dl dd ol { margin: 0.5em 0 0 }
	
.about div.timing  dd img.alignright{ margin:0 auto 20px; display: block;  float: none;  width:auto; max-width: 90%; height: auto;}
#wall  div.end img.alignright{ margin:0 auto 20px; display: block;  float: none;  width:auto; max-width: 90%; height: auto;}
	
.menu .waku{ padding:15px 10px; margin:10px; } 
.menu .waku img.alignright{ margin:10px auto 20px; display: block;  float: none;  width:auto; max-width: 90%; height: auto;}
	.menu .waku .center img{margin:0 auto 0px; display: block;  width:100%; height: auto;  }
#page-top1{
  bottom: -0px;
  right: 0px;}
#reform.sub #contents #subtitle h1{font-size: 22px; font-size: 2.2rem; line-height: 1.2; }	
#reform.sub #contents #subtitle{ padding:15px 0px ; }
dl.staff dt{ width:calc( 100% - 20px ); padding:10px;}
dl.staff dd{width:calc( 100% - 20px ); padding:10px;}
dl.staff dd li span{ width:22em; display:inline-block;}
	
#declaration #wrapper img.alignright{ margin:0 auto 20px; display: block;  float: none;  width:auto; max-width: 90%; height: auto;}	
#declaration .ill{ background:url(../img/declaration/illu2.gif) 50% 100% no-repeat; padding: 0 0 200px; }

.page-template-page-ex-php #contents  li h2{ font-size:24px !important; font-size:2.4rem !important; }
.page-template-page-ex-php #contents  li h2 span{ font-size:16px !important; font-size:1.6rem !important;}
    
.linebtn img{ width:40px; height: auto; }
.linebtn span br{ display: none;  }
a.contactbtn,a.linebtn{ display:block; vertical-align: middle;   margin: 0.5em auto; width:calc(100% - 30px); }
.contactbtn img{  width:40px; height: auto; margin: 0 0.5em 0 1em;}
a.floatmitumori img{  width:calc(100% - 60px); max-width: 350px;  height: auto;display: block; margin: -5px auto 0 10px}
}
@media screen and (max-width:430px) {
#glovalheader h1 .font20{ font-size:14px;}
#glovalheader h1 .font28{ font-size:18px;}
    #glovalheader h1 span.font14{display: none;}
#maincontets  #blog li{ width: 95%; max-width: 300px; margin: 10px auto; display: block;  }
  .page-id-428 .headimg img{  width:100px; height: auto;}

dl.staff dd li span{ width:17em; }
#company #contents .com dd,#company #contents .com dt{ display: block;  width:95%;}
}
@media screen and (max-width:400px) {
#footer  ul li,#footer  ul  li:first-child,#footer ul li:last-child  { display:inline-block;margin:10px 0; padding:0 0 0 10px; text-align:left;  width:calc( 100% / 2 - 20px ); border-left:2px solid #fff; line-height: 1; }
.shohin article ol li{ margin:20px auto; width:calc( 98% - 20px); background:#fff;  padding: 0 10px 20px; }
.shohin article ol li h5{font-size:1.6rem; font-size:16px;color: #666;}
.about div.nurikae dl dt{border:none; font-weight:bold;  padding:0 ;}
.about div.nurikae dl dt span{ color:#fff; padding:5px ;display: block; margin-bottom: 5px;}
 #reform #wrapper article .set{ padding: 10px 5px; }
.page-id-428 .headimg h1{ font-size:26px; font-size:2.6rem; margin: 0 auto;  width:90%; }
.page-id-428 .headimg h1 span{font-size:16px; font-size:1.6rem; margin:15px 0 ; text-align: left; }
.page-id-428 .headimg h2 span { font-size:16px; font-size:1.6rem;  width:90%; }
#maincontets .navi2 li{ background:url(../img/index/back.gif) no-repeat;  background-size:100% auto; height:auto; max-width:388px; width:95%;  margin:0 auto 5px;  }
#maincontets .navi2 li a{  display: block;  height:auto; width:95%; margin: auto; padding: 15px;  text-align: center;}
.page-template-page-ex-php #contents ul li  {  padding:10px !important;  }
	.page-template-page-ex-php  #contents ul li dl{ margin: 10px auto; width:90%;}
.page-template-page-ex-php  #contents ul li dl dt{ float:none; clear:both;}
.page-template-page-ex-php  #contents ul li dl dd{ margin:0.5em 0;}
    
img.people{ display: none;}

 .telbtn  ol .font36 {
    font-size: 22px;
    font-size: 2.2rem;
  }
    .telbtn img{width:20px; height: auto; border: none !important;}
}



/*ラインを消している*/
#footer .insta{  display: none;}