/* ----------------------------------------------------------------------
ヘッダー
---------------------------------------------------------------------- */

.page_title{
	margin-top:80px !important;
}

@media(max-width:767px)  {
	.page_title{
	margin-top: 30px !important;
}
}

/* ----------------------------------------------------------------------
ヘッダーイメージ
---------------------------------------------------------------------- */

.top-slider img{
width:100%;
max-width:100%;
}

/* ----------------------------------------------------------------------
トップインフォ
---------------------------------------------------------------------- */
@media screen and (min-width: 1200px) {
.top_infomation{
float:right;
text-align:right;
margin-top:20px;
}
}

@media screen and (max-width: 1199px) {
.top_infomation{
display:none;
clear:both;
float:none;
text-align:center !important;
}
}

.top_infomation a img,.top_infomation_sp a img{
display:block;
}

.top_infomation p,.top_infomation_sp p{
line-height: 1.5em;
}

@media screen and (min-width: 1200px) {
.top_infomation_sp{
display:none;
clear:both;
float:none;
}
}

@media screen and (max-width: 1199px) {
.top_infomation_sp{
float: none;
display: block;
text-align:center !important;
margin: 0 auto 0;
background:#fff;
padding-top:15px;
padding-bottom:5px;
	}
.top_infomation_sp a,.top_infomation_sp a img{
display: block;	
margin:0 auto;
max-width:85%;
}
}

p.top_infoTel{
	font-size:140%;
	font-weight:bold;
	color:#0071BC;
	display:inline-block;
}
p.top_infoTel a{
	color:#0071BC;
}
p.top_infoTel span{
	color:#fff;
	background:#0071BC;
	padding:4px 10px;
	font-size:70%;
	margin-right:5px;
}

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
.footer_info img{
	display:block;
	margin-left:auto;
	margin-right:auto;
	width:350px;
	max-width:90%;
	margin-bottom: 5px;
}
.footer_info a.footerTel{
	text-align:center;
	color:#333;
	font-size:130%;
	display:block;
	margin-top:5px;
}
.content02-button:hover, .button a:hover, .global-nav .sub-menu a:hover, .content02-button:hover, .footer-bar01, .copyright, .nav-links02-previous a, .nav-links02-next a, .pagetop a, #submit_comment:hover, .page-links a:hover, .page-links > span, .pw_form input[type="submit"]:hover{
	background: #333 !important;
}

/* ----------------------------------------------------------------------
 スマホ・PC画像振り分け
---------------------------------------------------------------------- */

@media screen and (min-width: 769px) {
.sp_only{
display:none !important;
}
}

@media screen and (max-width: 768px) {
.pc_only{
display:none !important;
}
}

/* ----------------------------------------------------------------------
 破線hr
---------------------------------------------------------------------- */

hr.hasen{
border:none;
border-top:dashed 1px #999;
height:1px;
color:#FFFFFF;
margin:15px 0 !important;
}

/* ----------------------------------------------------------------------
 画像リンク
---------------------------------------------------------------------- */
a:hover img{
filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;
}

/* ----------------------------------------------------------------------
 フォント
---------------------------------------------------------------------- */

h3.sectionTitle img{
	display:block;
	margin-left:auto;
	margin-right:auto;
}

.yu_font{
font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.yugo_font{
font-family: "游ゴシック体", YuGothic, "YuGothic M", sans-serif !important;
}
.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal !important;
}
.font50 {
	font-size: 50% !important;
}
.font60 {
	font-size: 60% !important;
}
.font70 {
	font-size: 70% !important;
}
.font80 {
	font-size: 80% !important;
}
.font90 {
	font-size: 90% !important;
}
.font100 {
	font-size: 100% !important;
	line-height:1.8em;
}
.font120 {
	font-size: 120% !important;
	line-height:1.8em;
}
.font130 {
	font-size: 130% !important;
	line-height:2em !important;
}
.font150 {
	font-size: 150% !important;
	line-height:1.8em;
}
.font180 {
	font-size: 180% !important;
line-height:2em;
}
.font200 {
	font-size: 200% !important;
	line-height:2em;
}
.font230 {
	font-size: 230% !important;
	line-height:2em;
}
.font250 {
	font-size: 250% !important;
	line-height:2em;
}
.red {
	color: #C83550;
}
.gray{
	color:#b3b3b3;
}
.white{
	color:#fff;
}
.blue{
	color:#0071BC !important;
}

/* ----------------------------------------------------------------------
 見出し
---------------------------------------------------------------------- */

.midashi_bber h3{
	background:rgba(0,113,188,0.5);
	font-size:150%;
	padding:15px 0;
}

.midashi_bber p{
	background:#E6E6E6;
}

/* ----------------------------------------------------------------------
 テキスト揃え
---------------------------------------------------------------------- */
.txtJustify{
	text-align:justify;
}
.txtCenter{
	text-align:center;
}

/* ----------------------------------------------------------------------
 行間
---------------------------------------------------------------------- */
.lh15{
	line-height:1.5em;
}
.lh18{
	line-height:1.8em;
}
.lh20{
	line-height:2.0em;
}

/* ----------------------------------------------------------------------
 ボタン
---------------------------------------------------------------------- */
.button01 {
  display:block;
  width: 300px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  position: relative;
  z-index: 2;
  background-color: #00BFFF;
  border: 2px solid #00BFFF;
  color: #fff;
  line-height: 50px;
  overflow: hidden;
margin-left:auto;
margin-right:auto;
}
.button01::before,
.button01::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button01,
.button01::before,
.button01::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.button01:hover {
  color: #00BFFF;
}
.button01::after {
  top: -100%;
  width: 100%;
  height: 100%;
}
.button01:hover::after {
  top: 0;
  background-color: #fff;
}

/* ----------------------------------------------------------------------
 スマホのみ改行
---------------------------------------------------------------------- */
@media screen and (min-width: 640px) {
 .kaigyouSp {
  display: none;
 }
}
/* ----------------------------------------------------------------------
 pcのみ改行
---------------------------------------------------------------------- */
@media screen and (max-width: 640px) {
 .kaigyouPc {
  display: none;
 }
}


/* ----------------------------------------------------------------------
 マージン・パディング
---------------------------------------------------------------------- */
.mt5{
margin-top:5px !important;
}
.mt10{
margin-top:10px !important;
}
.mt15{
margin-top:15px !important;
}
.mt30{
margin-top:30px !important;
}
.mt50{
margin-top:50px !important;
}
.mt80{
margin-top:80px !important;
}
.mt100{
margin-top:100px !important;
}
.mb5{
margin-bottom:5px !important;
}
.mb10{
margin-bottom:10px !important;
}
.mb15{
margin-bottom:15px !important;
}
.mb30{
margin-bottom:30px !important;
}
.mb50{
margin-bottom:50px !important;
}
.mb80{
margin-bottom:80px !important;
}
.mb100{
margin-bottom:100px !important;
}
.pt5{
padding-top:10px !important;
}
.pt10{
padding-top:10px !important;
}
.pt15{
padding-top:15px !important;
}
.pt30{
padding-top:30px !important;
}
.pt50{
padding-top:50px !important;
}
.pt80{
padding-top:80px !important;
}
.pt100{
padding-top:100px !important;
}
.pb5{
padding-bottom:5px !important;
}
.pb10{
padding-bottom:10px !important;
}
.pb15{
padding-bottom:15px !important;
}
.pb30{
padding-bottom:30px !important;
}
.pb50{
padding-bottom:50px !important;
}
.pb80{
padding-bottom:80px !important;
}
.pb100{
padding-bottom:100px !important;
}

/* ----------------------------------------------------------------------
 flexbox
---------------------------------------------------------------------- */
.flex{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between; /*均等に間隔をあける*/
	align-items: stretch;    /*全ての要素の高さを揃える*/
}

/* ----------------------------------------------------------------------
 ２カラム用
---------------------------------------------------------------------- */

.full_content{
width: 100%;
margin: 0 !important;
text-align: center;
overflow:hidden;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.full_content .full_content_inbox{
width:1000px;
max-width:100%;
margin:0 auto;
padding:0;
}

.single_content{
width:1000px;
max-width:100%;
margin:0 auto;
padding:0 0;
}

@media(min-width:768px)  {
.left_content{
float:left;
width:50%;
padding:0px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.left_content30{
float:left;
width:30%;
padding:0px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.left_content70{
float:left;
width:70%;
padding:0px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.right_content{
float:right;
width:50%;
padding-left:0px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.right_content30{
float:right;
width:30%;
padding-left:0px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.right_content70{
float:right;
width:70%;
padding-left:0px;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.left_content .sp_box,.left_content30 .sp_box,.left_content70 .sp_box{
padding:0 4% 0 0;		
}	
.right_content .sp_box,.right_content30 .sp_box,.right_content70 .sp_box{
padding:0 0 0 4%;		
}	
.sp_box2{
padding:0 4%;
margin-left:auto;
margin-right:auto;
}
}

@media(max-width:768px)  {
.right_content,.left_content,
.right_content30,.left_content30,
.right_content70,.left_content70{
float:none;
width:100%;
padding:0;
}
.sp_box,.sp_box2{
width:90%;
padding:0;
margin-left:auto;
margin-right:auto;
}
.sp_inner{
width:90%;
margin-left:auto;
margin-right:auto;		
}
}

.two_column{
	width:48%;
	float:left;
	margin-right:4%;
}
.two_column:nth-child(2){
	margin-right:0;
}
@media(max-width:768px)  {
.two_column{
	width:90%;
	float:none;
	margin-left:auto;
	margin-right:auto;
}
.two_column:nth-child(2){
	margin-right:auto;
}
}

/* ----------------------------------------------------------------------
 3カラム用
---------------------------------------------------------------------- */
.three_column{
	width:30%;
	float:left;
	margin-right:5%;
}
.three_column:nth-child(3){
	margin-right:0;
}
@media(max-width:768px)  {
	.three_column{
	width:90%;
	float:none;
	margin-left:auto;
	margin-right:auto;
	}
	.three_column:nth-child(3){
	margin-right:auto;
	}
}
/* ----------------------------------------------------------------------
 4カラム用
---------------------------------------------------------------------- */
.four_column{
	width:22%;
	float:left;
	margin-right:4%;
}
.four_column:nth-child(4){
	margin-right:0;
}
@media(max-width:768px)  {
	.four_column{
	width:48%;
	margin-right:4%;
	}
	.four_column:nth-child(2),
	.four_column:nth-child(4){
	margin-right:0;
	}
}

/* ----------------------------------------------------------------------
 パララックス
---------------------------------------------------------------------- */
.parallax {
	width: 100%;
	height: 400px;
}
.height01 {
	height:100%;
	background-position: center top;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size:100% 100% !important;
}

/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */
/* トップメニュー */
.topMenuColumn a,.topMenuColumn a img{
	display:block;
}
.topMenuColumn a img{
	width:100%;
	max-width:500px;
	margin-left:auto;
	margin-right:auto;
}

/* blog・sns一覧 */

.blog_title{
border-bottom:1px #666 solid;
padding-bottom:15px;
}
.blog_title h4{
float:left;
}
.news_title:before{
font-family: "Font Awesome 5 Free";
content:'\f15c';
margin-right:5px;
position: relative;
top:0px;
}
.staffblog_title:before{
font-family: "Font Awesome 5 Free";
content:'\f02d';
margin-right:5px;
position: relative;
top:0px;
}
.fb_title:before{
font-family: "Font Awesome 5 Free";
content:'\f082';
margin-right:5px;
position: relative;
top:0px;
}
.insta_title:before{
font-family: "Font Awesome 5 Free";
content:'\f16d';
margin-right:5px;
position: relative;
top:0px;
}
.blog_title a p{
float:right;
}
.blogpost_list{
}
.blogpost_list ul li{
line-height:2em;
border-bottom:1px #666 dashed;
padding-top:10px;
padding-bottom:10px;
height:25px;
overflow:hidden;
}



/* ----------------------------------------------------------------------
 お問い合わせフォーム
---------------------------------------------------------------------- */

table.contact_form{
}
table.contact_form th{
width:30%;
padding: 20px 10px 20px !important;
text-align:left;
vertical-align: middle;
background:none;
border-top:none;
border-left:none;
border-right:none;
border-bottom:1px #ddd dashed;
}
table.contact_form th:before{
content: url(images/ico_form.png);
margin: 10px 5px 10px 0;
position: relative;
top: 1px;	
}
table.contact_form td{
width:70%;
padding: 20px 10px 20px !important;
text-align: left;
border-bottom:1px #ddd dashed !important;
}
table.contact_form td{
	border:none;
	background:none;
}
@media(max-width:767px)  {
table.contact_form,table.contact_form tr,
table.contact_form td,table.contact_form th{
display: block;
}
	table.contact_form th,table.contact_form td{
	width:100%;	
	}
	table.contact_form td{
	margin-bottom:20px;
	}
	.wpcf7-radio .wpcf7-list-item {
    margin-top:10px;
    display: block;
	}
	table.contact_form th{
		border-bottom:none;
		padding: 20px 10px 5px !important;
	}
	table.contact_form td{
		padding: 5px 10px 20px !important;
	}
}
.app_btn{
margin:20px auto 50px;
width:980px;
max-width:90%;
}
.app_btn p a{
	display:block;
	padding:5px 10px;
	color:#FFF;
	text-align:center;
}
.app_btn p a:hover{
		color:#FFF;
}
.app_btn p{
	background:#6aa67c;
	    border-radius: 20px;        /* CSS3草案 */  
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 20px;   /* Firefox用 */ 
	width:44%;
	float:left;
	margin:0 3% !important;
	line-height:1.5em;
}
.app_btn p:hover{
	background:#4d783f;
}

/* ----------------------------------------------------------------------
 プリバシーポリシー
---------------------------------------------------------------------- */
.pivacy_h3{
	background:#ffdfc0;
}
.pivacy_h3 h3{
	padding:10px 0 !important;
}
.credit{
	background:#f2f2f2;
	padding:15px;
}