@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Passion+One');
/* -----------------------------------------------------------------------
base setting
------------------------------------------------------------------------- */

/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){
	body{font-size:12px;}
}

/*for SP*/
@media only screen and (max-width: 767px) {
	html{font-size:10px;}
	body{font-size:1.4rem;}
}

/* -----------------------------------------------------------------------
container wrap
------------------------------------------------------------------------- */
#container{
	background-color:#fff;
	margin:0 auto;
}

/* -----------------------------------------------------------------------
topicPath
------------------------------------------------------------------------- */

#topicPath{
	padding:10px 0 0;
	text-align:left;
	display: none;
}
.breadcrumbs{
	width: 980px;
	margin: 0 auto;
}
/*for SP*/
@media only screen and (max-width: 767px) {
	.breadcrumbs{
		width: 100%;
	}
}
/* -----------------------------------------------------------------------
contents
------------------------------------------------------------------------- */

section{
    max-width: 100%;	
}

#page_single .single_post {
	background: #333;
}
#page_single .background {
	height: 100vh;
}
#page_single .contents_wrap {
  background: #fff;
  padding: 20px 30px;
  border-radius: 20px;
  word-break: break-all;
}
section h2{
/* 	font-family: 'Passion One', cursive; */
/*     color: #7fa92c; */
    font-size: 400%;
	font-weight:bold;
	padding-bottom:50px;
	text-align: center;
	letter-spacing: 10px;
	
}

section h2 p{
	font-size: 30%;
	padding-bottom: 15px;
}

section h2 span {
	display: block;
}

h2.topic_title {
    font-size: 24px;
    margin-top: 40px;
    margin-bottom: 0px;
    letter-spacing: 0.05em;
}

.post {
    background: #f1f1f1;
    padding: 30px;
    margin-top: 30px;
    margin-bottom: 40px;
}

.postwarp h2{
   font-size: 26px;
    font-weight: 600;
    font-family: auto;
    margin-top: 30px;
    letter-spacing: 0.05em;
    color: #000;
    line-height: 1.6em;
	}
.postwarp h2 span{font-size: 16px;}
.postwarp h3{
	    text-align: left;
    padding: 10px!important;
    font-size: 24px;
    font-weight: 600;
    font-family: auto;
    margin-top: 30px;
    letter-spacing: 0.05em;
    color: #7fa92c;
    line-height: 1.6em;
    /* margin-top: 30px; */
    margin-bottom: 15px;
    border-left: solid 5px #7fa92c;
	}
.postwarp h4 {
    text-align: left;
    border-bottom: solid;
    padding: 10px 0px;
}

p.leadtxt{
  text-align: center;
    /* border: solid; */
    padding:15px;
    background: #fff;
    /* width: 80%; */
    margin: 0 auto;
}

.heading1--border:before {
	content: '';
    display: flex;
    width: 2px;
    height: 40px;
    margin: 0 auto 15px;
    /* text-align: center; */
    background-color: #7fa92c;
}

.content{
	padding-bottom: 70px;
	padding-top: 70px;
}
.pageContent{
	padding: 0px 0;
	margin: 0 0 30px;
}
.strength,
.voice,
.about{
	background-color: #fff;
}
.pageContent .service,
.pageContent .greeting,
.pageContent{
	background-color: #fff;
}

/*for SP*/
@media only screen and (max-width: 767px) {
	.post {
    margin-top: 10px;
	}
	section h2{
		padding-bottom: 30px;
	}
	.content,
	.pageContent{
		padding-bottom: 30px;
		padding-top: 30px;
	}
}

/* module parts */

/*--title--*/
section h3{
	padding:20px !important;
	font-weight:bold;
	text-align: center;
	font-size: 140%;
	color: #191919;
}

section h4{
	padding:10px;
	font-weight:bold;
	margin-bottom:15px;
	text-align: center;
	color:#2e2e2e;
	font-size: 120%;
}

.post h5{
	border-bottom:#E7E7E7 1px solid;
	padding:0 0 10px;
	font-weight:bold;
	margin-bottom:15px;
}

.post h6{
	padding:0 0 10px;
	font-weight:bold;
	margin-bottom:15px;
}


/*--list item--*/
.post ul{
	margin-bottom:0;
}
/*--list item--*/
.post dl.normalList01 dt,
.post ul.normalList01 > li{
	padding-bottom:8px;
    padding-left: 13px;
	position: relative;
}
.post dl.normalList01 dt::after,
.post ul.normalList01 > li::after{
	background-color: #153b66;
	content: "";
	display: block;
	height: 8px;
	width: 8px;
	border-radius:100%;
	left: 0;
	position: absolute;
	top: 0.4em;
}
.post dl.normalList01 dd,
.post ul.normalList01 li ul li{
	padding-bottom:10px;
	padding-left: 1em;
	margin-left: 10px;
	position: relative;
}
.post dl.normalList01 dd::after,
.post ul.normalList01 li ul li::after{
	background-color: #cfe5a2;
	content: "";
	display: block;
	height: 6px;
	width: 6px;
	border-radius:100%;
	left: 0;
	position: absolute;
	top: 0.4em;
}
.post ul.normalList01 li ul{
	margin-top: 5px;
}
.post ul.normalList01 li ul li{
	padding-bottom: 5px;
	margin-left: 0;
}

/*--table --*/

.post table{
	width:100%;
	border-top:#ccc 1px solid;
	border-left:#ccc 1px solid;
	word-break: break-all;
}

.post table th,
.post table td{
	border-bottom:#ccc 1px solid;
	border-right:#ccc 1px solid;
	padding:8px;
	text-align:left;
}
.post table th{
	background-color:#eaf9de;
	color: #56a334;
	text-align: center;
	padding: 12px 0;
	font-size: 110%;
}

.post p{
	padding-bottom:15px;
	line-height:1.5;
	}

.post p + h3,
.post p + h4,
.post p + h5{
	margin-top:15px;
}
.post p img{
	width: auto;
	max-width:90%;
	height:auto;
}

/*============================
partsBtmcontents.php
==============================*/
.partsBtmcontents {
	text-align: center;
	margin-top: 50px;
	padding: 40px;
	line-height: 0;
	background-color: #1e87c1;
}
.pageContent .partsBtmcontents{
	margin-top: 0;
}
.partsBtmcontents ul li {
	list-style-type:none !important;
	margin-left:0 !important;
	padding-bottom:0 !important;
	
}
.partsBtmcontents ul li img{
	border:#ccc 1px solid;
}

/*for SP*/
@media only screen and (max-width: 767px) {
	.partsBtmcontents {padding: 40px;}
}
/* -----------------------------------------------------------------------
side
------------------------------------------------------------------------- */

.sideBox01{
	margin-bottom:30px;
	background-color:#fff;
}
.pageContent .sideBox01{
	border: 1px solid #cfe5a2;
}
.sideBox01 h3{
	background-color:#a6c285;
    color:#fff;
    font-size: 120%;
	font-weight:bold;
	padding:15px 0;
	text-align: center;
}

.sideBox01 ul{
	margin:0 10px 15px;
}
.sideBox01 ul li a{
	padding:15px 0;
	border-bottom: 1px dotted #f1d3d2;
	width: 100%;
	display: inline-block;
}
.sideBox01 ul li:last-child a{
	border-bottom: none;
}
.sideBox01 ul li a{
	color: #000;
}
.sideBox01 p.moreLink{
	text-align: right;
	padding: 0 10px;
}
.sideBox01 p.moreLink a{
	position: relative;
}
.sideBox01 p.moreLink a:before {
    display: block;
    content: '≫';
    position: absolute;
    top: 0;
    left: -1em;
}
/*会社概要*/
.sideBox01 .sideInfo{
	padding:15px;
}

.sideBox01 iframe{
	width:100%;
	height:250px;
}
.sideBox01 .sideInfoTit{
	margin-bottom:0;
}
/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){
	
}
/*for SP*/
@media only screen and (max-width: 767px) {
	.sideBox01 h3{
		min-height:inherit;
	}
	
	.sideBox01 p{
		background-color:#d8efd2;
		padding:15px;
	}
	.sideBox01 ul{ padding:0;}
	.sideBox01 ul li {padding:0;}
	.sideBox01 ul li a{
		display:block;
		padding:15px;
		font-size:1.5rem;
		border-bottom:#fff 1px solid;
	}
}


/* -----------------------------------------------------------------------
second page common parts
------------------------------------------------------------------------- */
/* mainTitle
--------------------------------------------------------*/
#mainTitle{
	background:#333 url(../images/bg_maintitle.png) 0 0 no-repeat;
	padding:45px 20px;
	text-align:right;
	font-size:2em;
	letter-spacing:5px;
	color:#fff;	
}

.pager{
	margin:20px 0;
	overflow:hidden;
}

.pre_p{
	float:left;
}

.pre_n{
	float:right;
}



/* -----------------------------------------------------------------------
toppage local parts
------------------------------------------------------------------------- */
/* mainimage
--------------------------------------------------------*/
#mainImage{
	width: 100%;
	text-align:center;
}
#mainImage img{
	width: 100%;
}

/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){
	#mainImage{
		width:100%;
		height:auto;
	}
}
/*for SP*/
@media only screen and (max-width: 767px) {
	#mainImage{
		width:100%;
		height: 375px;
	}
}

/* about
--------------------------------------------------------*/
.wavy img{
	width: 800px;
    height: 400px;
    margin-left: 20%;
    margin-top: 100px;
}

.wavy{
	height: 800px;  
	position: relative;
	z-index: 1;
}

.wavyTx{
    position: absolute;
    max-width: 500px;
    height: auto;
    padding-top: 30px;
    padding-left: 60px;
    padding-right: 60px;
    padding-bottom: 60px;
	margin-right: 30px;
    color: #fff;
    background-color: #1e87c1;
    border-radius: 15px;
    top: 50%;
    left:50%;
}
.wavyTx h4{color:#fff;
			font-size:180%}

.wavyTx p{line-height: 1.8em;
          font-size: 120%;
		  color:#FFFFFF;} 

.wavyTx h4{color:#fff;}

.wavyTx .btnLink a span{
	width: 100%;
	max-width: 340px;
	height: 60px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: 'Passion One', cursive;
    color: #fff;
	font-size: 250%;
	border: solid 1px #fff;
	-webkit-transition: background-color 1s linear,color 0.2s linear;
}


.wavyTx .btnLink a span:hover{
	background-color: #fff;
	color:#1e87c1;}

@media only screen and (min-width:768px) and (max-width:959px){
.wavy img{margin-left: 0;}
.wavyTx {    left: 5%;
    		max-width: 90%;}
}	

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

.wavy {height: 600px;}


.wavyTx {
    width: 80%;
    height: auto;
    margin: 0 auto;
    padding: 20px;
    top: 30%;
    left: 10%;
}
	
.wavy img{
	margin-top: 50px;
	width: 100%;
    height: auto;
    margin-left: 0;}
}
/* strength
--------------------------------------------------------*/
.strength .strength_row02{
	width: 650px;
	margin: 20px auto 0;
}
.strength .strengthContent{
	width: 310px;
	height: 310px;
	margin-right: 26px;
	background-color: #f9f8f7;
	border-radius: 100%;
	position: relative;
}
.strength .strengthContent:last-child{
	margin-right: 0;
}
.strength .strengthContent img{
	position: absolute;
	left: 155px;
	margin-top: -25px;
	margin-left: -60px;
}
.strength .strengthContent .strengthTx{
	margin-top: 30%;
}
.strength .strengthContent p{
	padding: 0 40px;
	text-align: center;
}
.strength .strengthContent .highlight{
	font-size: 140%;
	margin-bottom: 10px;
	text-align: center;
	color: #153b66;
}
/*for SP*/
@media only screen and (max-width: 767px) {
	.strength .strengthContent{
		width: 100%;
		border-radius: 0%;
		height: 270px;
	}
	.strength .strengthContent img{
		left: 50%;
	}
	.strength .strengthContent p{
		padding: 0 20px;
	}
}
/* service
--------------------------------------------------------*/
.service ul li{
	/* 1カラム 
	width: 100%;*/
	/* 2カラム*/
	width: 49%;
	margin-right: 2%;
	margin-bottom: 30px;
	font-weight: bold;
    height: 220px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.service ul li:nth-child(n){
	background-image:url("../images/contents01.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 130%;
}

.service ul li:nth-child(1){background-image:url("../images/contents01.png");}
.service ul li:nth-child(2){background-image:url("../images/contents02.png");}
.service ul li:nth-child(3){background-image:url("../images/contents03.png");}
.service ul li:nth-child(4){background-image:url("../images/contents04.png");}
.service ul li:nth-child(5){background-image:url("../images/contents05.png");}
.service ul li:nth-child(6){background-image:url("../images/contents06.png");}


.service ul li:nth-child(2n){
	margin-right: 0;
}
.service ul li a{
	width: 95%;
	height: 190px;
	padding: 20px;
	text-align: center;
	background-color:rgba(255,255,255,0.90);
	color: #2a3b79;
	font-size: 18px;
	line-height: 1.2;
	display: flex;
	justify-content: center;
	align-items: center;
	-webkit-transition: all 0.6s ease;
	-moz-transition-property:width;
}

.service ul li a:hover{
	width: 100%;
	height: 100%;
}

.service ul li a p{
	width: 405px;
}

.service ul li a p strong{
     font-size: 120%;
}

.service .flow{
	border: 2px solid #153b66;
	background-color: #fff;
	padding: 10px;
	text-align: center;
	margin-bottom: 20px;
	font-size: 120%;
}
.service .flow h3.flowTitle{
	font-weight: bold;
	font-size: 120%;
	color: #153b66;
	background: none;
}
.service .service_con{
	display: flex;
    flex-wrap: wrap;}

.service height: 3px;{
    width: 100%;
    margin-top: 25px;
    margin-bottom: 25px;
    font-size: 15px;
    text-align: left;
    line-height: 1.4em;
    color: #fff;
    background-color: #1e87c1;
}

.service h3 strong, #column h3 strong{
    color: #fffd48;
    margin-left: 10px; 
}


.service .service_con .service_img{
	width: 50%;
    display: flex;
    flex-wrap: wrap; 
    height: auto;
}

.service_img{
	width: 100%;
	display: flex;
    align-items: center;
    vertical-align: middle;
	margin: 0 auto;
    background-image: url(../images/service_text.png);}


.service_img img{
	width: 100%;
}

.service .service_txt{
    width: 50%;
    height: auto;
    padding:25px;
    display: flex;
    flex-direction: column;
	background-image: url(../images/service_text.png);}

.service .service_txt p{
    font-size: 110%;
    line-height: 1.6em;
}

.service .service_txt img{width: 100%;}

.service .btn_more a{
    border: solid 1px #153b66;
    width: 210px;
    height: 50px;
    margin: 0 auto;
    font-family: 'Passion One', cursive;
    font-size: 245%;
	background-color:rgba(255,255,255,0.00);	
    color: #14375d;
    display: flex;
	align-items: center;
    justify-content: center;
    -webkit-transition: background-color 1s linear,color 0.2s linear;
}

.service .btn_more a:hover{
		background-color: #14375d;
		color:#fff;
		}
/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){
	
}
/*for SP*/
@media only screen and (max-width: 767px) {
	.service #service01 {width: 100%; flex-wrap: wrap;}
	.service .service_con .service_img {
    width: 100%;
	}
	.service_img img {
		width: 100%;
		height: 100%;
		padding: 20px 0px;}
	.service .service_txt {width: 100%;}
	.service #service01 .service_img {width: 100%;}
	
	.service .btn_more a {width: 100%;}
	
}
/* voice
--------------------------------------------------------*/
.voice .voiceList{
	margin-bottom: 50px!important;
}
.voice .voiceList li{
	margin-bottom: 30px;
	position: relative;
}
.voice_img{
	width: 210px;
    border: 5px solid #2c588d;
    border-radius: 50%;
    height: 210px;
	overflow: hidden;
	position: absolute;
	z-index: 3;
}
.voice_img img{
	width: 100%;
	height: 100%;
	max-width: inherit!important;
	transform: scale(2,2);
}
.voice_title{
    background: url(../images/common_bg02.png) repeat;
    color: #fff;
    position: relative;
    width: 90%;
    left: 10%;
    font-size: 20px;
    padding: 19px 0 36px 14%;
    height: 85px;
	border-radius:0 10px ;
		
}
.voice_content{
	position: relative;
    width: 90%;
    left: 10%;
    font-size: 16px;
    padding: 20px 25px 20px 14%;
	min-height: 120px;
	background-color: #f8f6f6;
	border-radius: 0 0 10px;
}
.voice .voiceList li:nth-child(2n) .voice_img{
		right: 0;
}
.voice .voiceList li:nth-child(2n) .voice_title{
    left: 0;
    padding: 19px 0 36px 6%;
	border-radius:10px 0;
}
.voice_name{
/*	margin-left: 20px;*/
	font-size: 0.7em;
	display: block;
}
.voice .voiceList li:nth-child(2n) .voice_content{
	padding: 20px 140px 20px 6%;
	left: 0;
	border-radius: 0 10px;
}

.voice .btnLink a{
	color: #fff;
	font-size: 140%;
	padding: 10px 0;
	background: url(../images/common_bg03.png) repeat;
	display: block;
	text-align: center;
	border-radius: 5px;
	width: 710px;
	margin: 0 auto;
}
.voice .btnLink a span{
	position: relative;
}
.voice .btnLink a span:before{
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: -16px;
	width: 0;
	height: 0;
	margin-top: -5px;
	border-top: 7px solid transparent;
	border-right: 11px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 11px solid #fff;
}


/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){
	
}
/*for SP*/
@media only screen and (max-width: 767px) {
	.voice_img{
		top: -25px;
	}
	.voice_title,
	.voice .voiceList li:nth-child(2n) .voice_title{
		border-radius:10px 10px 0 0;
	}
	.voice_content,
	.voice .voiceList li:nth-child(2n) .voice_content{
		border-radius: 0 0 10px 10px;
	}
}

/* greeting
--------------------------------------------------------*/
.greeting .greetingTx{
	margin-left: 30px;
}
.greeting .greetingTx .name{
	font-size: 140%;
	font-weight: bold;
}
.greeting .flexContainer img{
	border-radius: 5px;
}

/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){
	
}
/*for SP*/
@media only screen and (max-width: 767px) {
	
}

/* about
--------------------------------------------------------*/
.about .map{
	margin-right: 20px;
	width: 450px;
}
.about table.infoTable{
	width: 510px;
	border: none;
}
.about table.infoTable th,
.about table.infoTable td{
	border-bottom: 1px solid #a6c285;
	border-right: none;
	background: none;
	padding: 20px 0 20px 0px;
	text-align: left;
	vertical-align: middle;
	line-height: 1.2;
}
.about table.infoTable tr:last-child th,
.about table.infoTable tr:last-child td{
	width: 45px;
	border: none;
	padding: 20px 0 0 0px;
}

/*for Tablet*/
@media only screen and (min-width : 768px) and (max-width : 959px){	
}
/*for SP*/
@media only screen and (max-width: 767px) {
	.about .map{
		width: 100%;
	}
}

/*--------------------------
       トピックス
--------------------------*/
#page_blog .section_blog {
	background: #f5f5f5;
}

#page_blog .section_blog .flexContainer {
	justify-content: flex-start;
}
#page_blog .section_blog .pageContent {
	background: none;
}
#page_blog .section_blog .post_wrap {
	width: 100%;
}
#page_blog .section_blog .flexContainer img {
	height: 200px; object-fit: cover;
}

ul.post-categories {
    background: #9cd5d3;
    display: inline-block;
    padding: 5px;
    
    /* border: 1px solid #000; */
    border-radius: 3px;
}

ul.post-categories a {
	color: #fff;
}

/*--------------------------
         　アーカイブ
--------------------------*/



/* blog
--------------------------------------------------------*/
/*
#blog{
	padding-bottom: 70px;
	background-image: url(../common/images/bg-topic.png);
}
*/

#blog .postContainer{
	width: 100%;
}
#blog .colum_box{
	background-color: #fff;
    width: 31%;
   margin: 20px 0;  
}
#blog .colum_box:nth-child(3n+2) {
    margin: 20px 20px;
}

#blog .colum_box h2{
    margin: 0px;
    padding: 0px;
    background: none;
    color: #000;
    font-size: 15px;
    height: auto;
    text-align: left;
}

#blog .colum_box.postwarp h2 span{
    font-size: 12px;
}

#blog .colum_box　p.leadtxt {
    padding: 10px;
    background: #fff;
    font-weight: 100;
    margin: 0 auto;
	}

#blog .colum_box p.title {
    font-size: 20px;
    font-weight: bold;
/* 	color: #7fa92c; */
		line-height: 1.6;
}
.pageContent #blog .colum_box{
	
}
#blog .colum_box .colum_txt{
	padding: 30px 20px 0;
}
#blog .colum_box .colum_txt .title a{
	font-size: 120%;
	font-weight: bold;
	color: #7fa92c;
}
#blog .colum_box .colum_txt .sentence{
	color: #777;
	margin: 10px 0 0px;
}
#blog .colum_box .colum_info{
	text-align: right;
	font-size: 90%;
	padding: 30px;
	color: #777;
}
#blog .colum_box .colum_info p{
	text-align: right;
}

#blog .btn_more a {
	border: solid 1px #7fa92c;
    width: 340px;
    height: 60px;
    margin: 0 auto;
	font-family: 'Passion One', cursive;
    font-size: 330%;
    color: #7fa92c;
    display: flex;
    justify-content: center;
	-webkit-transition: background-color 1s linear,color 0.2s linear;}

#blog .btn_more a:hover{
	background-color: #7fa92c;
	color: #fff;	}

@media screen and (max-width:966px){
	#page_blog .section_blog .flexContainer {
		justify-content: space-between;
	}
	#blog .colum_box {
		width: 48%;
	}
	#blog .colum_box:nth-child(3n+2) {
		margin: 20px 0;
	}
}



/*----ページャー----*/
.pagenation {
    margin: 1em 0;
	text-align: center;
}
.pagenation:after, .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
.pagenation .current {
    background-color: #333;
    border-radius: 3px;
    color: #fff;
    padding: 10px 20px;
}
.pagenation a {
    background: none repeat scroll 0 0 #fff;
/* 	border: 1px solid #a6c285; */
    border-radius: 3px;
    color: #333;
    display: inline-block;
    padding: 10px 20px;
    text-decoration: none;
	margin: 5px;
}
.pagenation a.next,
.pagenation a.prev{
/*     background: none; */
	border: none;
    padding: 10px;
	margin: 0;
/* 	border: 1px solid #fff; */
}
.pagenation a:hover {
/* 	border: 1px solid #fff; */
    background-color: #9cd5d3;
    color: #fff;
    opacity: 0.8;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}
.pagenation a.next:hover,
.pagenation a.prev:hover{
    background-color: #9cd5d3;
	color: #fff;
/* 	border: 1px solid #fff; */
}

/*for SP*/
@media only screen and (max-width: 767px) {
	.blog{
		width: 100%;
	}
	.thumb{
		text-align: center;
	}
	.post_wrap.flexContainer.flexWrap {
    width: 100%;
}
}
/* -----------------------------------------------------------------------
WP Social Bookmarking Light
------------------------------------------------------------------------- */

.wp_social_bookmarking_light{
	padding:20px 0 0!important;
	overflow:hidden;
	display: none;
}
.wp_social_bookmarking_light div{
	display:inline-block;
    margin: 0 5px 0px 0;
    min-height: 30px;
    line-height: 18px;
}
.wp_social_bookmarking_light img{
    border: 0 !important;
    padding: 0;
    margin: 0;
    vertical-align: top !important;
}
.wp_social_bookmarking_light_clear{
    clear: both !important;
}
#fb-root{
    display: none;
}
.wsbl_twitter{
    width: 100px;
}
.wsbl_facebook_like iframe{
    max-width: none !important;
}

.wsbl_google{
	min-height:inherit;
    line-height:inherit;
	vertical-align:middle;
}

/* -----------------------------------------------------------------------
Contact Form 7 
------------------------------------------------------------------------- */
.wpcf7{}
.wpcf7-form{
}
.wpcf7-form-control-wrap input[type="text"],
.wpcf7-form-control-wrap input[type="email"],
.wpcf7-form-control-wrap input[type="tel"],
.wpcf7-form-control-wrap textarea{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:#a9a9a9 1px solid;
   width:300px;
   height:25px;
   padding:5px;
   margin:3px 0;
}
.wpcf7-form-control-wrap textarea{
   width:100%;
	height:100px;
}


.wpcf7-form-control-wrap input[type="text"],
.wpcf7-form-control-wrap input[type="email"],
.wpcf7-form-control-wrap textarea, 
.wpcf7-form-control-wrap select{ 
   outline: none;
}

.wpcf7 input[type="submit"]{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   border:none;
   padding:10px 40px;
   cursor:pointer;
   color:#fff;
   font-weight:bold;
   background:#153b66;
    margin-top: 10px;
	box-shadow: 0 3px 0 rgb(125, 158, 195);
}
.wpcf7 input[type="submit"]:hover{
    box-shadow: none;
    transform: translate3d(0, 3px, 0);
}
.wpcf7-form p{
    margin-bottom: 10px;
}
.wpcf7-form p span.required{
    display: inline-block;
    margin-left: 8px;
    padding: 2px 10px;
    background-color: #ff7f00;
    font-size: 12px;
    color: #fff;
    vertical-align: middle;
	border-radius: 3px;
}

/*for sp*/
@media only screen and (max-width: 767px) {
    
    .wpcf7-form-control-wrap textarea {
        width: 100%;
        height: auto;
    }
    .wpcf7-form-control-wrap input[type="text"],
    .wpcf7-form-control-wrap input[type="email"],
    .wpcf7-form-control-wrap textarea{
        width:100%;
}

}

/* common parts
--------------------------------------------------------*/
.attention{color:#FF0004;}
.attention2{background-color:#FFED00;}

.waku{border:#FF0004 1px solid; padding:10px;}

/*--カラム　flexbox--*/
.flexContainer {
	display: -webkit-flex; /* Safari */
	display: flex;
	justify-content: center;
}

.flexSpace-betweenbox {
	display: -webkit-flex; /* Safari */
	display: flex;
	justify-content:space-between;
}
.flexWrap{
	flex-wrap: wrap;
	}
/*※flexContainer必須*/
/*--天地中央--*/
.flexCenter {
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

/*--上部--*/
.flexTop {
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
}
/*--カラム　float--*/
.colLeft{
	float: left;
}
.colRight{
	float: right;
}
/*--テキスト--*/
.highlight{
	color: #153b66;
	font-weight: bold;
}
.notice{
	font-size: 90%;
}
/*--リンク--*/
.btnLink01 a{
   border-radius: 5px;
   -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
   -o-border-radius: 5px;
   -ms-border-radius: 5px;
   brder:none;
   padding:10px 40px;
   cursor:pointer;
   color:#fff;
   font-weight:bold;
   background:#153b66;
    margin-top: 10px;
	box-shadow: 0 3px 0 rgba(112,153,28,1);
	display: inline-block;
}
.btnLink01 a:hover{
    box-shadow: none;
    transform: translate3d(0, 3px, 0);
}

/*---------------------------------------------
　　　　　　　　　　　固定ページCSS（共通）
---------------------------------------------*/
#page h2,.voice h2,#blog #column h2 ,.pageContent h2{
    height: 200px;
    background-color: rgba(239, 239, 239);
    margin-bottom: 60px;
    padding-top: 70px;
	background-image:url(../common/images/h2_bg.png);
	color: #fff;
	background-attachment: fixed;
    background-position: top center;
    background-size:inherit;
    background-repeat: no-repeat;
}

/*---------------------------------------------
　　　　　　　　　　　RECRUIT　member
---------------------------------------------*/	

.recruit h3,.member h3{
	font-size: 36px;
	color: #1e87c1;}
.recruit h4{
	width: 100%;
    margin-top: 25px;
    margin-bottom: 25px;
    text-align: left;
    color: #fff;
    background-color: #1e87c1;
}

.recruit .recruitTx,.memberTx{
	font-size: 16px;
	color: #1e87c1;
	text-align: center;
    justify-content:space-around;}

.recruit strong,.member strong{font-size: 26px;
	letter-spacing: 0.04em;}

strong.blue{color: #1e87c1;}

.recruitTx_ito{
	display: flex;
	justify-content: space-around;
}

.recruitTx_ito img{
	max-width: 100%;
    height: 100%;
}

.recruitTx_ito p{
	margin-left: 30px;
    font-size: 110%;
    line-height: 1.6em;
}

.recruit_bg{
	padding: 20px;
	font-weight: bold;
	line-height: 2em;
	height: auto;
	width: 100%;
	background-image: url(../images/bg-recruit.png);
	background-repeat: no-repeat;
	background-position:center center;
}


.member .memberTx_bg{
	padding: 20px;
	font-weight: bold;
	line-height: 2em;
	height: auto;
	width: 100%;}

.recruit p.bg_type{
	height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background-color: #1e87c1;
}

.recruit .btn_more a{
    border: solid 1px #153b66;
    width: 210px;
    height: 50px;
    margin: 0 auto;
    font-family: 'Passion One', cursive;
    font-size: 230%;
	background-color:rgba(255,255,255,0.00);	
    color: #14375d;
    display: flex;
    justify-content: center;
    -webkit-transition: background-color 1s linear,color 0.2s linear;
}

.recruit .btn_more a:hover{background-color: #14375d; color:#fff;}

.recruit table {
	width: 100%;
	line-height: 1.8em;
    color: #000;
    text-align: left;}

.recruit tr{border-top: #e6e6e6 solid 0.5px;}
.recruit tr:first-child{border-top:none;}

.recruit table th{width: 15%;}
.recruit table td{padding: 30px;}

.member .flexSpace-betweenbox{
	margin-top: 30px;
}

@media only screen and (max-width: 767px) {
	.recruit, .member{width:  100%;}
	.recruitTx_ito {flex-wrap: wrap;}
	.recruitTx_ito p {margin:15px;}
	.flexSpace-betweenbox{
    flex-wrap: wrap;
	width: 100%;}
	.recruitTx div,.recruitTx img,
	
	.recruitTx div p ,bg_type{
	width: 100%;
	margin-bottom: 5px;}
	.recruit table td {
    padding: 10px 10px 10px 20px;}
	.recruit table th{
	width: 20%;
    padding: 10px 0px 10px 10px;}
	.member .flexSpace-betweenbox{
		margin-top: 0px;
	}
}

#member_page{color: #1e87c1;}

#member_page h4{
	color: #1e87c1;
    font-size: 38px;
	text-align: left;
    padding: 15px 0px;
    margin: 10px 0;
}


#member_page p{
	font-size: 16px;
    padding: 10px;
    line-height: 1.6em;
}

#member_page h5 {
    font-size: 16px;
    padding: 10px;
    border: solid 1px;
}

#member_page .member_img {
    display: flex;
    justify-content: space-between;
}

.member_box {
    width: 25%;
	padding: 15px;
}

.member_archi_img{
    display: flex;
	flex-wrap: wrap;
    width: 100%;
    height: auto;
    justify-content:flex-start;
}
#member_page .btnLink
{
    width: 100%;
    max-width: 340px;
    height: 60px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Passion One', cursive;
    color: #1e87c1;
    font-size: 250%;
    border: solid 1px #1e87c1;
    -webkit-transition: background-color 1s linear,color 0.2s linear;
	}
	
#member_page .btnLink:hover{
	background-color:#1e87c1;
	color:#fff;}

@media only screen and (max-width: 767px) {
	
	#member_page .member_img {
	flex-wrap: wrap;
		width: 100%;
	}
	
	#member_page .member_img div{
    width: 100%;
	height: 100%;
    display: flex;
	padding: 10px;
    flex-wrap: wrap;
    justify-content: center;}
	

	.member	.post_wrap {
		width: 100%;
		flex-wrap: wrap;
		}
	.member_archi_img {
		flex-wrap: wrap;
		width: 100%;
		}
	.member_box {
		padding: 10px;
		width: 50%;
	}

}
/*---------------------------------------------
　　　　　　　　　　　HISTORY
---------------------------------------------*/	
.year_div{
	position: relative;/*相対位置*/
	padding-left:70px;/*アイコン分のスペース*/

}
.year_div::after{
    content: "●";
    position: absolute;
    font-size: 80px;
    color: #1e87c1;
    left: -10px;
    top: -12px;
}


.year_div::before{
	height: 100%;
    content: "";
    position: absolute;
    top: 40px;
    left: 28px;
    right: 0;
    bottom: 0;
    border-left: 3px solid #1e87c1;
  }


.year_div h4 {
	color: #1e87c1;
	text-align: left;
	font-size: 24px;
	border-bottom:1px solid #1e87c1;
	padding: 15px 0px;}

.year_div h5 {
	margin-left: 60px;
	margin-right: 60px;
	color: #1e87c1;
	text-align: left;
	font-size: 24px;
	padding: 15px 0px;}


.month_con {
    width: 100%;
    height: 100%;
    background-image: url(../images/service_text.png);
	margin:0px;
	position: relative;
    z-index: 2;
}

.month_con .march{
	margin: 0px;
	width: 80px;
	display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    font-size: 24px;
    color: #fff;
    background-color: #1e87c1;
}

.month_con div{
	font-size: 16px;
	display: flex;
	margin-left: 60px;
	margin-right: 60px;
	margin-bottom: 40px;
}

.month_con p{margin-right: 5px;}

.month_con img {padding: 5px;    height: 100%;}

@media only screen and (max-width: 767px) {
	.year_div h5{
	margin-left: 30px;
    margin-right: 30px;
		
	}
	.month_con div {
	flex-wrap: wrap;
    margin-left: 30px;
    margin-right: 30px;
    margin-bottom: 30px;}
	
	
	.month_con div img{
	width: 100%;
    height: 100%;}	
}

/*---------------------------------------------
　　　　　　　　　　　HISTORY
---------------------------------------------*/	
.wpcf7-form {
    background-color: #ffffff;
    border: solid 1px #2182c6;
    padding: 50px;
    margin: 0px;
    border-radius: 10px;
}

span.wpcf7-form-control.wpcf7-radio {font-size: 130%;}
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
input.wpcf7-form-control.wpcf7-text.wpcf7-email.wpcf7-validates-as-email,
input.wpcf7-form-control.wpcf7-text.wpcf7-tel.wpcf7-validates-as-tel
{
    width: 100%;
}

.wpcf7-form p {
    margin-bottom: 10px;
    display: flex;
    justify-content: center;}


dl {
    display: flex;
    align-items: center;
    padding: 30px;
    border-bottom: 1px solid #d9dadc;
}
dt {
    color: #1e87c1;
    font-weight: bold;
    font-size: 18px;
    width: 30%;
    display: table-cell;
    table-layout: fixed;
    vertical-align: middle;
}

input.wpcf7-form-control.wpcf7-submit {
	width: 50%;}

dd, dd span{
    width: 100%;
}

input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
input.wpcf7-form-control.wpcf7-text.wpcf7-email.wpcf7-validates-as-email,
input.wpcf7-form-control.wpcf7-text.wpcf7-tel.wpcf7-validates-as-tel,
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea{
    padding: 30px;
    font-size: 16px;
    background-color: #eaf4ff;
    border: none;
}

@media only screen and (max-width: 767px) {
	.wpcf7-form { padding: 10px;}
	dl {padding: 15px;}
	
}

.flexContainer img{
	    width: 100%;
		display: block;
		margin: 0 auto;
	}

/*------2カラム------*/
/*--2:8--*/

/*--5:5--*/
.col2>div:nth-child(odd),
.col2>dl:nth-child(odd),
ul.col2>li:nth-child(odd){
	width: 49%;
	margin-right: 2%;
}
.col2>div:nth-child(even),
.col2>dl:nth-child(even),
ul.col2>li:nth-child(even){
	width: 49%;
	margin-right: 0;
}

/*for SP*/
@media only screen and (max-width: 767px) {
	.flexContainer img{
		display: block;
		margin: 0 auto;
	}
	
	.col2>div:nth-child(odd),
	.col2>dl:nth-child(odd),
	ul.col2>li:nth-child(odd),
	.col2>div:nth-child(even),
	.col2>dl:nth-child(even),
	ul.col2>li:nth-child(even),
	.col2>div:nth-child(odd):last-child,
	.col2>dl:nth-child(odd):last-child,
	ul.col2>li:nth-child(odd):last-child,
	.col2>div:nth-child(even):last-child,
	.col2>dl:nth-child(even):last-child,
	ul.col2>li:nth-child(even):last-child{
		width: 100%;
		margin-bottom: 0;
	}
}
