/*
Theme Name: original
Template: lightning
Version: 1.0
*/


#body-inside{
overflow-x: hidden;
}
.orverwidth{
margin:40px -200%;
padding:20px 200%;
background: linear-gradient(#E0E4EC 100%, #E0E4EC 100%);
text-align: left;
}


    a.outline:focus{
    	outline:1px dotted;
    }
    a:focus{
    	outline:none;
    }



/*----------------------------------------------------
  footer
----------------------------------------------------*/body,
#wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
 
footer {
  margin-top: auto;
}

footer .copySection p:nth-child(2) {
    display:none !important;
    }
.copySection {
	color :#fff;
    font-size: 11px;
	background: linear-gradient(-90deg, #00c4b0, #3584c0, #0069b9) fixed !important;
	padding: 10px 0 ;
	width: 100%;
}
.f-icon{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
.f-icon img {
	margin:10px 5px;
}
.f-icon a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
h2 {
    font-size: 18px;
}
.Section-title {
    font-size: 48px;
}
/*.mainSection-title, h2 {
	color: #337ab7;
    background-color: #fff;
    padding: 14px 0px 10px;
    border-top: 0 solid #337ab7;
    border-bottom: 1px solid #e9e9e9;
}*/
.Section-title {
    position: relative;
    display: inline-block;
    background-color: #fff;
    border-bottom: solid 1px #777;
    padding: 16px;
    width: 100%;
    text-align: center;
	border-top: 0;
	letter-spacing: 0.1em;
}
.Section-title:before,
.Section-title:after{
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.Section-title:before {
    border: solid 21px transparent;
    border-top: solid 21px #777;
}
.Section-title:after {
    border: solid 24px transparent;
    border-top: solid 24px #fff;
    margin-top: -5px;
}
.Section-title {
	margin-bottom: 60px;
	padding: 0;
}
/*----------------------------------------------------
  page
----------------------------------------------------*/
.page-header {
	background: linear-gradient(-90deg, #00c4b0, #3584c0, #0069b9) fixed;
	color: #fff;
}
.page-header_pageTitle, h1.page-header_pageTitle:first-child {
    margin: 20px 0 15px;
    font-size: 28px;
	text-align: left;
}

/*----------------------------------------------------
  header
----------------------------------------------------*/
.navbar-brand img {
	max-height: 85px !important;
	margin-bottom:10px;
}
ul.gMenu li{
	font-size: 16px;
}
.siteHeader_logo img {
	margin: 0 50px 30px 0; 
}

ul.gMenu li {
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	width: 14%;
}
.navbar-header {
	height: 120px;
}
ul.gMenu {
	clear: both;
	float: none;
}
ul.gMenu > li.current-menu-ancestor > a::after, ul.gMenu > li.current-menu-item > a::after, ul.gMenu > li.current-menu-parent > a::after, ul.gMenu > li.current-post-ancestor > a::after, ul.gMenu > li.current_page_ancestor > a::after, ul.gMenu > li.current_page_parent > a::after, ul.gMenu > li > a:hover::after {
    border-bottom: 3px solid #0069b9;
}
/* ロゴ右側のブロック */
.logo-after {
    display: block;
    width: 250px;
    float: right;
}
 
.logo-after img {
    max-height: 150px;
}
 
/* ヘッダー幅を100%に */
.navbar-header {
    width: 100%;
}
/*----------------------------------------------------
  text
----------------------------------------------------*/
.subSection-title::after, h3::after {
    content: ".";
    line-height: 0;
    display: block;
    overflow: hidden;
    position: absolute;
    bottom: -2px;
    width: 30px;
    border-bottom: 2px solid #337ab7;
}
.subSection-title, h3 {
	color: #444 !important;
    border-bottom: 2px solid #ccc;
    -webkit-box-shadow: 0 1px 2px rgba(255,255,255,.9);
    box-shadow: 0 1px 2px rgba(255,255,255,.9);
}
.row-eq-height {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
.boxA {
	color: #fff;
	padding: 7% 16px 0;
	background-color: #0069b9;
	height: 93%;
    margin-bottom: 7%;
	width: 100% !important;
	border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}
.clum3{padding: 5px;}
.clum3 p{padding: 0px; margin:0;}
.column-A {padding: 10px 0;}
.f-13{font-size: 13px;}
.f-24{font-size: 24px;    line-height: 1.8em;
}
.f-36{font-size: 36px;    margin-bottom:20px;
}
.f-42{font-size: 52px;    margin-bottom:20px;
}
.f-bold{font-weight: bold;}
.color-blue {
	color: #0069b9;
}
.single h1.entry-title::first-letter {
    color: inherit;
}

.bg-glay {
	background-color: #E0E4EC;
}
.fluid-box{
 width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 20px;
	clear: both;
}
.fluid-box-inner{
 margin: 0 auto;
 padding: 0px;
 background-color: #E0E4EC !important;
}
.m-bottom-20{
	 margin-bottom:20px;
}
.m-bottom-40{
	 margin-bottom:40px;
}
/*----------------------------------------------------
  テーブル
----------------------------------------------------*/
.tb001 th  { color:#777; width: 20%; text-align: left;}
section table { width: 100%; }
section th, section td  { padding: 10px; border: 1px solid #ddd; }
section th  { background: #f4f4f4; } 
/*----------------------------------------------------
  TOPページ
----------------------------------------------------*/
.prBlock .prBlock_icon_outer {
    display: block;
    position: relative;
    margin: 0 auto;
    width: 120px;
    height: 120px;
    border-radius: 50%;
}
.prBlock .prBlock_icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    font-size: 46px;
}
.prBlock .prBlock_title {
    margin-top: .9em;
    margin-bottom: .3em;
    text-align: center;
    font-size: 24px;
    line-height: 1.4em;
}
/*----------------------------------------------------
  contact form 7
----------------------------------------------------*/
/*　ContactForm7のテーブル化レスポンシブ調整　*/
 
/*テーブルを親要素の幅いっぱいに伸ばす*/
.table-res-form {
    width: 100%;
}
/*一行ごとに上ボーダー*/
.table-res-form tr {
    border-top: 1px #DDD solid;
}
/*一番上の行だけボーダーなし*/
.table-res-form tr:first-child {
    border-top: none;
}
/*奇数行だけ背景色つける*/
.table-res-form tr:nth-child(2n+1) {
    background: #eee;
}
/*thとtd内の余白指定*/
.table-res-form th, .table-res-form td {
    padding: 1.5em;
}
/*th（項目欄）は30%幅、テキストを右寄せ*/
.table-res-form th {
	width: 30%;
	text-align: right;
}
/*「必須」部分のスタイリング*/
.table-res-form .requied {
    font-size: 0.8em;
    color: #FFF;
    display: inline-block;
    padding: 0.3em 0.3em 0.2em;
    background: red;
    border-radius: 2px;
}
.wpcf7 span.wpcf7-not-valid-tip {font-size: 80%;}
/* 必須赤色表示 */
.wpcf7 .required { color: #f00;    font-size: 0.8em;
}
 /*----------------------------------------------------
  google map
----------------------------------------------------*/
.maps {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
	
/*YouTubeレスポンシブサイズ*/
.youtube {
    position: relative;
    max-width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.postIMG img {
    width: 100%;
	padding-bottom: 20px;
}
@media screen and (max-width: 991px) {
.siteHeader_logo  {
	max-width: 450px; /* 最大幅 */
	min-width: 140px; /* 最小幅 */
	    float: left;
	}
.siteHeader_logo img {
	margin: 0 50px 0px 0px;

}
ul.gMenu li {
	border-left: 0px solid #ccc;
	border-right: 0px solid #ccc;
	width: 100%;
}
.greeting br {
    display: none;
  }
/* ロゴ右側のブロック */
.logo-after {
    display: block;
    width: 200px;
    float: right;
}
 
.logo-after img {
    max-height: 150px;
}
	
}
@media screen and (max-width: 768px) {
	/* ロゴ右側のブロック */	
.logo-after {
	display: none;
    }
	.logo-after img {
	display: none;

}
	
}
@media only screen and (max-width:480px){
.siteHeader_logo  {
	max-width: 300px; /* 最大幅 */
	min-width: 300px; /* 最小幅 */
	}
.siteHeader_logo img {
	margin: 0 50px 0px 0px;  width: 100%;
	}
/* ロゴ右側のブロック */	
.logo-after {
	display: none;
    }
.navbar-header {
	height: 80px;
	}
.tb001 {
	margin: 0;
	}
.tb001 th{
	background: #f4f4f4;
	}
.tb001 th,
.tb001 td{
	width: 100%;
    display: block;
    border-top: none;
	}
.tb001 tr:first-child th { 
	border-top: 1px solid #ddd; 
	}
	
.f-42{font-size: 28px !important;    margin-bottom:20px;
}
}
　　　　　/*thとtdをブロック化して幅100％にして、縦積み*/
.table-res-form th, .table-res-form td {
	width: 100%;
	display: block;
}
　　　　　/*th（項目名）欄の不要な余白削除・テキスト左寄せ*/
.table-res-form th {
	padding-bottom: 0;
	text-align: left;
}
　　　　　/*不要な最終行の左のthを非表示にする*/
.table-res-form .empty {
	display: none;
}

 
/*ここまで768px以下の指定---終わり*/
 
/*ここから入力欄のスタイル指定*/
 
/*各入力フォームスタイリング*/
.table-res-form input[type="text"], input[type="email"], textarea {
    border: 1px #89BDDE solid;
    padding: 0.5em;
    border-radius: 5px;
    margin-bottom: 0.5em;
    width: 100%;
}
/*入力欄にフォーカスしたら変化*/
.table-res-form input[type="text"]:focus, textarea:focus {
    background: #EEFFFF;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
}
/*送信ボタンスタイリング*/
.table-res-form input[type="submit"] {
    border: 1px #89BDDE solid;
    padding: 0.5em 4em;
    border-radius: 5px;
    background: #4C9ED9;
    color: #fff;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
    font-weight: bold;
}
/*送信ボタン・マウスオーバー時スタイリング*/
.table-res-form input[type="submit"]:hover {
    background: #006599;
    box-shadow: none;
}

