@charset "UTF-8";
/* CSS Document */

.sp,footer br,.copyright br,#secondary .search_area{
	display:none !important;
}

#topics,#about,.link_menu{
	display: block;
	width: 100%;
	height: 0;
	float: left;
	clear: both;
}

/*アニメーション要素のスタイル*/
.fade{
	opacity : 0;
	visibility: hidden;
	transition: 1.4s;
	transform: translateY(40px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

*{
	margin:0;
	padding:0;
}

img{
	display: block;
	max-width: 100%;
	height: auto;
	border:0;
	border-style:none;
}

a{
	color: #000;
	word-break: break-all !important;
}

a img {
	border:0;
    border-style:none;
}

html{
	height:100%;
}

body{
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-weight: 300;
	width:100%;
	height:100%;
	margin:0;
}

header ul {
	list-style:none;
}

#logo a,.totop a,#top_cnavi ul li{
	white-space: nowrap;
	font: 0/0 a;
	text-shadow: none;
	color: transparent;
}

#wrapper{
	display: block;
	width: 100%;
	margin: 0;
	float: left;
	clear: both;
}
header{
	display: block;
	position: absolute;
	width: 100%;
	min-width: 769px;
	margin: 0 !important;
	top:0;
	z-index: 10;
}


/*#topimg{
	display: block;
	position: absolute;
	min-width: 100%;
	width: 100% !important;
	height: 100vh !important; 
	overflow: hidden !important;
	top: 0;
	left: 0;
	right: 0;
	border: 0;
	overflow: hidden;
	overflow-x: hidden;
	z-index: 3;
}
#topimg .slides img{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto!important;
	min-width: 100% !important;
	height: 100vh !important; 
	object-fit: cover !important;
	object-position:center center !important;
	transform: translate(-50%,0);
	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
	z-index: 3;
}*/

#topimg{
	display: block;
	position: absolute;
	min-width: 100%;
	width: 100% !important;
	height: 100vh !important; 
	overflow: hidden !important;
	top: 0;
	left: 0;
	right: 0;
	border: 0;
	overflow: hidden;
	overflow-x: hidden;
	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
	z-index: 3;
}
#topimg .slides img{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto!important;
	min-width: 100% !important;
	height: 100vh !important; 
	object-fit: cover !important;
	object-position:center center !important;
	transform: translate(-50%,0);
	z-index: 3;
}

#toppage main{
	display: block;
	width: 100%;
	min-height: 300px;
	padding: 0 0 0 0;
	margin-top: 100vh !important; 
	float: left;
	clear: both;
}
#toppage main section{
	display: block;
	width: 100%;
	float: left;
	clear: both;
}
#top_posts{
	display: block;
	width: 100%;
	min-height: 700px;
	background-color: #C2E6F1;
	margin: 0;
	padding: 70px 0 80px 0;
	float: left;
	clear: both;
}
footer{
	display: block;
	width: 100%;
	padding:40px 0 0 0;
	margin: 0;
	background-color: #CEDCE7;
	float: left;
	clear: both;
}

#toppage #logo a{
	display: block;
	position: absolute;
	vertical-align: middle;
	z-index: 6;
	top:calc(50vh - 120px);
	left: calc(50% - 165px);
}
#toppage #logo img{
	display: block;
	width:330px;
	height: auto;
	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

#secondary #logo{
	display: none;
}

.copyright{
	display: block;
	font-family: Arial, Helvetica, "sans-serif" !important;
	width:98%;
	height:50px;
	text-align:center;
	color: #fff !important;
	font-size:10px;
	padding: 20px 1% !important;
	margin:80px 0 0 0 !important;
	background-color: #000;
	float: left;
	clear: both;
}

.search_area{
	display: block;
	position: absolute;
	vertical-align: middle;
	width: 330px;
	height: 34px;
	background-color: #fff;
	margin: 20px 0 0 0;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	z-index: 6;
	top:calc(50vh - 30px);
	left: calc(50% - 165px);
}
#search{
	display: block;
	position: relative;
	width: 330px;
	height: 34px;
	z-index: 9;
}
#searchform input{
	width: 281px !important;
	height: 34px;
	color: #000;
	font-size:12px;
	text-align: center !important;
	font-weight: 200 !important;
	border: none;
	outline:none !important;
	padding-left: 20px;
	margin: 0;
	background-color: transparent !important;
	clear: none !important;
	float: left;
}
input.btn_submit {
	display: inline!important;
	position: absolute;
	cursor: pointer !important;
	width: 30px !important;
	height: 34px !important;
	background: url(../images/search_bt.png) no-repeat 0 0;
	border: none !important;
	outline:none !important;
	border-left: solid 1px #ebebeb !important;
	padding: 0 !important;
	clear: none !important;
	float: right !important;
}

/* scroll */
.scroll a {
  display: inline-block;
  position: absolute;
  color: #000;
  font-size:11px;
  letter-spacing: 1px;
  font-weight: 200;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
  z-index: 4 !important;
}

.scroll2 {
  position: relative !important;
  margin-top: 150px !important;
  clear: both;
}

.scroll a {
  padding-top: 50px;
  margin-left: -15px;
}
.scroll a span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 20px;
  height: 40px;
  margin-left: -10px;
  border: 1px solid #000;
  border-radius: 50px;
  box-sizing: border-box;
}
.scroll a span::before {
  position: absolute;
  top: 6px;
  left: 50%;
  content: '';
  width: 6px;
  height: 6px;
  margin-left: -3px;
  background-color: #000;
  border-radius: 100%;
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

nav{
	display: block;
	position: fixed;
	width: 100%;
	height: 40px;
	/*background-color: #164E70;*/
	background-color: #444;
	top:20px;
	z-index: 10;
}
.admin-bar nav {
	margin-top: 32px !important;
}

@media screen and ( max-width: 782px ) {
    .admin-bar nav {
		margin-top: 46px !important;
	}
}

.seo{
	display: block;
	position: fixed;
	width:calc(100% - 6px);
	height: 14px;
	font-size:10px;
	line-height: 10px;
	background-color: #E8E8E8;
	padding: 6px 3px 0 3px;
	z-index: 12;
}
#gnavi {
    display: block;
	text-align: center;
	font-size:14px;
	font-weight: 200;
	margin: 0 60px 0 0;
	float: right;
}
#gnavi > li {
	display: inline-block;
    width: auto;
	height: 40px;
	cursor: pointer;
}

@media screen and ( min-width:769px ) and ( max-width: 869px ) {
	#gnavi > li a {
		display: inline-block;
		font-size: 11px;
		color: #fff;
		text-decoration: none;
		margin: 12px 5px 0 5px;
	}
}
@media screen and ( min-width:870px ) and ( max-width: 939px ) {
	#gnavi > li a {
		display: inline-block;
		font-size: 13px;
		color: #fff;
		text-decoration: none;
		margin: 11px 6px 0 6px;
	}
}
@media screen and ( min-width:940px ){
	#gnavi > li a {
		display: inline-block;
		font-size: 14px;
		color: #fff;
		text-decoration: none;
		margin: 10px 12px 0 12px;
	}
}
#gnavi li:hover{
	background-color: #3883C3;
	transition-duration: 0.2s;
}
ul.menu_second {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}
#gnavi > li.menu_single {
    position: relative;
}
li.menu_single ul.menu_second {
    position: absolute;
	list-style: none;
    top: 40px;
	white-space: nowrap;
    width: 165px;
	line-height: 150%;
	padding: 0 0;
	margin: 0 0 0 0;
    background-color: #555;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
li.menu_single:hover ul.menu_second {
    top: 40px;
    visibility: visible;
    opacity: 1;
}

/*#gnavi ul li a {
    display: inline-block;
	color: #fff;
	font-size: 14px !important;
	text-decoration: none;
	margin: 7px 12px 4px 12px;
}*/

#gnavi li ul li a {
    display: block;
	color: #fff;
	font-size: 14px !important;
	text-decoration: none;
	margin: 0 !important;
	padding: 7px 12px 4px 12px;
	transition-duration: 0.2s;
}
.arrow:after {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 0 3px 5px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.nolink:hover{
	background-color: #666 !important;
	transition-duration: 0.2s;
}
.gnavi01 a img{
	display: block;
	position: fixed;
	width: 185px;
	height: auto;
	z-index: 11 !important;
	top:29px;
	left: 8px;
}
#gnavi .gnavi01:hover{
	background-color: transparent !important;
}

@media screen and ( min-width:769px ) and ( max-width: 878px ) {
	#gnavi > li a {
		display: inline-block;
		font-size: 11px;
		color: #fff;
		text-decoration: none;
		margin: 12px 7px 0 7px;
	}
}


#top_posts h2{
	display: block;
	width: 220px;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
	border: solid 1px #000;
	padding: 8px 0 6px 0;
	margin: 0 auto;
	clear: both;
}
#top_posts article{
	display: block;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 20px 0 0 0;
	overflow: auto;
	overflow-x: hidden;
	overflow-y: hidden;
	float: none;
	clear: both;
}
#top_posts article dl{
	display: block;
	height: auto;
	min-height: 220px;
	background-color: #fff;
	margin: 40px;
	overflow: auto;
	overflow-x: hidden;
	overflow-y: hidden;
	float: none;
	clear: both;
}
#top_posts .thumbnail{
	display: block;
	position: absolute;
	width: 300px;
	height: 220px;
	background-image: url("../images/pic_thumb_no_img_logo.png");
	background-size: cover;
	background-position: center center;
	margin: 0;
}
#top_posts dt{
	display: block;
	width: calc(100% - 370px);
	text-align: justify;
	font-size: 26px;
	line-height: 130%;
	font-feature-settings: 'palt';
	letter-spacing: 1px;
	font-weight: 500;
	margin: 20px 30px 15px 0;
	float: right;
	clear: both;
}
#top_posts dt a{
	color: #0085B2;
}
#top_posts dt a:hover{
	text-decoration: none;
}

#top_posts dd .date{
	display: block;
	width: 100%;
	font-size: 12px;
	margin-top: 15px;
	clear: both !important;
}
#top_posts dd .date a{
	color: #000;
	text-decoration: none;
	pointer-events: none;
}

#top_posts dd{
	display: block;
	width: calc(100% - 360px);
	font-size:15px;
	line-height: 170%;
	margin-right: 20px;
	float: right;
	clear: both;
}
#top_posts article .more{
	display: block;
	width: 100%;
	text-align: center;
}
#top_posts article .more a{
	display: inline-block;
	width: auto;
	font-size:14px;
	background-image: url("../images/arrow_blue.png");
	background-position: right center;
	background-repeat: no-repeat;
	padding: 0 25px;
	margin: 20px auto;
}

#tags{
	display: block;
	width: 100%;
	background-color: #fff;
	padding: 30px 0;
}
#tags article{
	display: block;
	width: 90%;
	text-align: center;
	max-width: 1100px;
	margin: 0 auto;
}
#tags img{
	display: inline-block;
	vertical-align: middle;
	margin: 10px 12px;
}
#tags ul{
	display: inline-block;
	margin: 10px 0;
}
#tags li{
	display: inline-block;
	position: relative;
	width: auto;
	min-width: 60px;
	height: 25px;
	padding: 0 12px 0 18px;
	margin-right: 5px;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	clear: none;
	vertical-align: middle;
}
#tags li a{
	display: inline-block;
	text-decoration: none;
	font-size:13px;
	line-height: 13px;
	text-align: center;
	font-weight: 300;
	color: #000;
	padding: 0;
	margin: 0;
	clear: none;
	transition-duration: 0.2s;
}
#tags li a:hover{
	color: #FF9900;
	transition-duration: 0.1s;
}
#tags li:nth-child(1){
	background-color: #FFFFBA;
}
#tags li:nth-child(2){
	background-color: #CBFFBB;
}
#tags li:nth-child(3){
	background-color: #FFF0BB;
}
#tags li:nth-child(4){
	background-color: #DED5FF;
}
#tags li:nth-child(5){
	background-color: #FFD7C8;
}
#tags li:nth-child(6){
	background-color: #BDDEFF;
}

#top_cnavi{
	display: block;
	width: 100%;
	background-color: #7BBDCC;
	padding: 50px 0;
}

#top_topics{
	display: block;
	width: 100%;
	background-color: #fff;
	padding: 30px 0 80px 0;
}

#top_topics h2{
	display: block;
	width: 220px;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
	border: solid 1px #000;
	padding: 8px 0 6px 0;
	margin: 0 auto 40px auto;
	clear: both;
}
#top_topics article{
	display: block;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 20px 0 0 0;
	float: none;
	clear: both;
}

footer .fnavi{
	display: block;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
}

.fnavi ul{
	display: block;
	list-style: none;
	font-weight: 400;
	margin-right: 40px;
	float: left;
}
.fnavi ul a{
	font-size: 13px;
	line-height: 180%;
	color: #000;
	text-decoration: none!important;
}
.fnavi ul a:hover{
	text-decoration: underline !important;
}
.logo2 a{
	display: block;
	width: 280px;
	height: 45px;
	float: right;
}

#top_topics article{
	display: block;
	width: 650px;
	font-size:14px;
	margin: 0 auto;
}
#top_topics article dl{
	display: block;
	margin-bottom: 50px;
	float: left;
	clear: both;
}
#top_topics article dt{
	display: inline-block;
	width: 250px;
	font-weight: 500;
	margin-bottom: 10px;
	vertical-align: bottom;
	float: left;
}
#top_topics article dt span{
	display: inline-block;
	width: 85px;
	font-size: 10px;
	line-height: 10px;
	text-align: center;
	color: #fff;
	font-feature-settings: 'palt';
	padding: 5px 0 4px 0;
	margin: 0 35px 0 10px !important;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	vertical-align: top;
	float: right;
}
#top_topics article dd{
	display: block;
	width: 400px;
	margin-bottom: 10px;
	float: left;
}
#top_topics dd a:hover{
	text-decoration: none;
}
#top_topics article .more{
	display: block;
	width: 100%;
	text-align: center;
}
#top_topics article .more a{
	display: inline-block;
	width: auto;
	font-size:14px;
	background-image: url("../images/arrow_blue.png");
	background-position: right center;
	background-repeat: no-repeat;
	padding: 0 25px;
	margin: 20px auto;
}
.more a{
	text-decoration: none;
}
.more a:hover{
	color: #0E98FF;
}
.noentry{
	display: block;
	width: 100% !important;
	text-align: center !important;
	margin: 0 auto !important;
	float: left;
	clear: both;
}

#top_cnavi ul{
	display: block;
	width: 90%;
	text-align: center;
	max-width: 1100px;
	margin:0 auto;
}
#top_cnavi li{
	display: inline-block;
	width: 200px;
	height: 200px;
	text-align: center;
	border: solid 1px #fff;
	margin:20px 25px;
}
#top_cnavi li a{
	display: block;
	width: 200px;
	height: 200px;
	transition-duration: 0.4s;
}
#top_cnavi li a:hover{
	background-color: #90E5F9;
	transition-duration: 0.2s;
}
#top_cnavi li img{
	width: 200px;
	height: auto;
}
.banner a{
	display: block;
	width: 500px !important;
	margin: 0 auto 40px auto;
}
.banner img{
	display: block;
	width: 500px;
	height: auto;
	border: solid 3px #fff;
}
.banner2 a{
	display: block;
	width: 500px !important;
	margin: 0 auto 0 auto;
}
.banner2 img{
	display: block;
	width: 500px !important;
	height: auto;
	border: solid 3px #fff;
}

#secondary #title_area{
	display: block;
	width: 100%;
	background-color: #65A6DE;
	background-size: cover;
	background-position: top center;
	float: left;
	clear: both;
}
@media screen and ( min-width:769px ) and ( max-width: 1200px ) {
	#secondary #title_area{
		height: 380px;
	}
}
@media screen and ( min-width:1201px ) and ( max-width: 1440px ) {
	#secondary #title_area{
		height: 420px;
	}
}
@media screen and ( min-width:1441px ) and ( max-width: 1920px ) {
	#secondary #title_area{
		height: 480px;
	}
}
@media screen and ( min-width:1921px )  {
	#secondary #title_area{
		height: 550px;
	}
}

.title_bg_service{
	background-image: url("../images/title_bg_service.jpg");
}
.title_bg_contact{
	background-image: url("../images/title_bg_contact.jpg");
}
.title_bg_column{
	background-image: url("../images/title_bg_column.jpg");
}
.title_bg_case{
	background-image: url("../images/title_bg_case.jpg");
}
.title_bg_news{
	background-image: url("../images/title_bg_news.jpg");
}
.title_bg_about{
	background-image: url("../images/title_bg_about.jpg");
}

#secondary .title{
	display: block;
	width: 100%;
	font-size:30px;
	font-weight: 300;
	letter-spacing: 2px;
	text-align: center;
	color: #000;
	padding: 15% 0 0 0;
	float: left;
	clear: both;
}
.title_bg_about .title{
	color: #fff !important;
}
.title_bg_column .title .en{
	color: #ccc !important;
}
.title_bg_about .listmenu,.title_bg_about .listmenu a,
.title_bg_contact .listmenu,.title_bg_contact .listmenu a{
	color: #fff !important;
}
#secondary .title .en{
	display: block;
	width: 100%;
	font-family: Arial, Helvetica, "sans-serif" !important;
	font-size:18px;
	font-weight: 800;
	letter-spacing: 0 !important;
	text-align: center;
	color: #fff;
	padding: 5px 0 0 0;
	float: left;
	clear: both;
}

#secondary main{
	display: block;
	width: 100%;
	min-height: 200px;
	padding: 50px 0 0 0;
	margin: 0 0 0 0 !important;
	float: left;
	clear: both;
}
#secondary main section{
	display: block;
	width: 100%;
	float: left;
	clear: both;
}
#secondary main section article{
	display: block;
	width: 90%;
	max-width: 1000px;
	margin: 0 auto 100px auto;
	overflow: auto;
	overflow-x: hidden;
	overflow-y: hidden;
	clear: both;
}

#secondary main section article .contents_news{
	display: block;
	width: calc(100% - 250px);
	float: left;
}

#secondary main section article aside{
	display: block;
	width: 200px;
	float: right;
}

#secondary main .soudan_area article{
	margin: 0 auto 50px auto !important;
}
#secondary main .soudan_area2 article{
	margin: 15px auto 20px auto !important;
}

#secondary main .wide article{
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	float: left;
	clear: both;
}

#secondary main .wide .company_area{
	margin: 0 auto 100px auto !important;
}

#secondary main .wide article .block{
	display: block;
	width: 90%;
	max-width: 1000px;
	margin: 30px auto;
	overflow: auto;
	overflow-x: hidden;
	overflow-y: hidden;
	clear: both;
}

#secondary main section article p{
	font-size:15px;
	line-height: 180%;
	text-align: justify;
	margin-bottom: 25px;
}

#secondary main section .privacy_area p strong{
	display: inline-flex;
	font-size:18px;
	font-weight: 400;
	padding: 0 0 0 10px;
	margin-top: 20px;
	margin-bottom: 15px !important;
	border-left: solid 6px #518EA8;
}

/* メディアファイルレイアウト */
.alignnone{
	display: block;
	clear: both !important;
	margin-bottom: 20px !important;
}

.alignleft{
	float:left;
	margin:0 20px 20px 0;
}

.alignright{
	float:right;
	margin:0 0 20px 20px;
}

.aligncenter{
	display:block;
	margin:0 auto 20px auto;
	float:none;
	clear:both;
}

/* pager */
.pager{
	display:block;
	width:100%;
	height:100px;
	text-align:center;
	font-size:14px;
	line-height: 110%;
	margin:20px 0 0 0;
	float:left;
	clear:both;
}

a.page-numbers,
.pager .current{
	color: #65A6DE;
	text-decoration: none;
	border:solid 1px #65A6DE;
	background-color: #fff;
	padding:3px 5px 2px 5px;
	margin:0 1px;
}
.pager .current{
	border:solid 1px #65A6DE;
	background:#65A6DE;
	color:#fff;
}

.form_area{
	display: table;
	width: 1000px;
	font-size: 15px;
	margin: 70px auto;
	clear: both;
}
.form_area th{
	display: table-cell;
	width: 250px;
	font-weight: 500 !important;
	padding: 30px 0 20px 0;
	text-align: left;
}
.form_area td{
	display: table-cell;
	padding-bottom: 15px !important;
}
.form_area th .required{
	display: inline-block;
	text-align: center;
	color: #fff;
	font-size:10px;
	background-color: #D90000;
	padding: 2px 12px 0 12px;
	margin: 0 0 4px 12px !important;
	vertical-align: bottom;
	border-radius:4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}
.form_area input{
	padding: 20px;
	font-size:15px;
	line-height: 150%;
	margin: 10px 0 5px 0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: solid 1px #ccc;
	background-color: #FBFDFF;
}
.form_area textarea{
	display: table-cell;
	width: 700px;
	height: 200px;
	padding: 20px;
	font-size:15px;
	line-height: 150%;
	margin: 10px 0 25px 0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: solid 1px #ccc;
	background-color: #FBFDFF;
}
input::-webkit-input-placeholder{
    color: #999;
}
input::-moz-placeholder{
    color: #999;
}
input:-moz-placeholder{
    color: #999;
}
input::placeholder {
  color: #999 !important;
}
input:-ms-input-placeholder {
  color: #999 !important;
}
input::-ms-input-placeholder {
  color: #999 !important;
}
.wpcf7 input[type="submit"] {
	display: block;
	width: 400px;
	font-size: 20px;
	letter-spacing: 1px;
	padding: 20px 0;
	margin: 15px auto;
	background-color: #EBEBEB;
	color: #000;
	background-image: url("../images/arrow_black.png");
	background-position: center right;
	background-size: auto 35px;
	background-repeat: no-repeat;
	cursor: pointer;
	border-style: none;
	border-radius:50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
.wpcf7 input[type="submit"]:active{
	background-color: #65A6DE;
}

.column_title{
	display: block;
	width: 100%;
	font-size:18px;
	font-weight: 400;color: #fff;
	background-color: #65A6DE;
	padding: 3px 0 3px 10px !important;
	margin-top: 20px;
	margin-bottom: 15px !important;
}

/* 会社概要テーブル設定 */
.table_company{
	display: table;
	width: 100%;
	max-width:1100px;
	font-size: 15px;
	line-height: 180%;
	border-collapse: collapse;
	border-top: solid 1px #ccc;/*表全体を線で囲う*/
	border-bottom: solid 1px #ccc;/*表全体を線で囲う*/
	background-color: #fff;
	float: left;
	clear: both;
}
.table_company th{
	display: table-cell;
	width: 150px;
	font-weight: 400;
	padding: 15px 5px;
	margin: 0;
	border-bottom: solid 1px #ccc !important;
}
.table_company td{
	display: table-cell;
	padding: 15px 20px;
	margin: 0;
	border-bottom: solid 1px #ccc !important;
}
.table_company td p{
	margin-bottom: 0 !important;
}

.article01{
	background-color: #E6FCFF;
	background-image: url("../images/blue_bg.png");
	background-size: 100% 100%;
}
.article02{
	background-color: #E6F3FF;
}
.article03{
	background-color: #F1FFFA;
	background-image: url("../images/green_bg.png");
	background-size: 100% 100%;
}

.autograph{
	display:inline-block;
	text-align: right;
	margin-bottom: 50px !important;
	float: right;
}
.autograph p{
	display: block;
	clear: both !important;
}
.autograph strong{
	display: block;
	font-size: 22px;
	font-weight: 300;
	clear: both !important;
}
.era{
	font-size:50px !important;
	font-weight: 200;
	color: #999;
	margin-top: 20px;
	margin-bottom: 0px !important;
}
.era span{
	font-size:20px !important;
	font-weight: 700;
	color: #000;
	margin-left: 3px;
}
.society{
	display: block;
	background-color: #238F30;
	text-align: center;
	font-size:12px !important;
	color: #fff;
	font-weight: 500;
	padding: 15px 8px;
	margin-right: 15px;
	border-radius:50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	float: left;
}
.headline{
	font-size:18px !important;
	line-height: 140% !important;
	margin-bottom: 30px !important;
}
.headline strong{
	font-weight: 600;
}
.stress_text{
	clear: both;
	margin-left: 65px;
}

/* レベルバー設定 */
.level{
	display: table;
	width: auto;
	height: 30px;
	border-collapse: collapse;
	border: solid 2px #000;/*表全体を線で囲う*/
	background-color: #fff;
	margin: 0 0 5px 65px;
	clear: both;
}
.level th{
	display: table-cell;
	width: 28px;
	background-color: #999;
	border: solid 1px #ccc !important;
}
.level td{
	display: table-cell;
	width: 28px;
	border: solid 1px #ccc !important;
	background-color: #fff;
}
.max th{
	background-color: #FF0004 !important;
}
.level_text{
	display: block;
	width: 300px !important;
	font-size:12px !important;
	font-weight: 400;
	text-align: center !important;
	margin-left: 65px !important;
	margin-bottom: 70px !important;
}
.level_text span{
	font-size:14px !important;
	font-weight: 700 !important;
	font-style: italic !important;
}
.red{
	color: #FF0004 !important;
}
.publish strong{
	display: block;
	font-size:20px !important;	
	color: #318F7D !important;
	margin-left: 65px !important;
	font-feature-settings: 'palt';
}

.lead{
	display: flex;
	vertical-align: middle;
	align-items: center;
	width: calc(100% - 4px);
	border: solid 2px #ccc;
	margin: 0 auto 50px auto;
	float: left;
	clear: both;
}
.lead img{
	display: block;
	width: 40%;
	height: auto;
	object-fit: cover !important;
	object-position:center center !important;
	float: left;
}
.lead .copy{
	display: block;
	width: 60%;
	float: right;
}
.lead .copy p strong{
	font-size:24px;
	line-height: 180%;
	color: #4FA7F3;
	font-weight: 400 !important;
	margin-left: 8%;
	margin-right: 5%;
	float: left;
}
.stress_title{
	display: block;
	width: 100%;
	text-align: center;
	font-size:28px;
	font-weight: 600;
	margin-top: 30px !important;
}

.listmenu{
	display: block;
	position: absolute;
	width: 90%;
	text-decoration: none !important;
	color: #000;
	font-size:12px !important;
	font-weight: 300;
	margin: 0 5% 0 5% !important;
	letter-spacing: 0.5px;
	bottom:20px;
}
.listmenu a{
	color: #000;
	text-decoration: none !important;
}
.listmenu a:hover{
	color: #D0FAFF;
}

.profile_title{
	display: block;
	width: 100%;
	border-bottom: solid 2px #72A271;
	padding: 4px 0;
	margin: 30px 0 50px 0;
	float: left;
	clear: both;
}
.point img{
	display: block;
	width: 80%;
	max-width: 700px;
	height: auto;
	margin: 20px auto 40px auto;
}
.point_block{
	display: block;
	background-color: #fff;
	padding: 30px 40px 60px 40px;
	margin: 0 auto 30px auto;
	border-radius:6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
.point_block strong{
	display: block;
	text-align: center;
	color: #333 !important;
	font-size:20px !important;
	line-height: 130% !important;
	font-weight: 600 !important;
	margin-bottom: 20px;
}

.point_block strong:after {
  content: " ";
  display: block;
  border-bottom: solid 3px #A7CCF6;
  width: 35%;
  margin: 10px auto;
}

.about_copy strong{
	display: block;
	width: 100%;
	font-size:20px !important;
	font-weight: 500 !important;
	margin: 20px 0;
	float: left;
	clear: both;
}
.management{
	display: inline-block;
	text-align: center !important;
	font-weight: 400 !important;
	font-size: 20px !important;
	color: #007A30;
	font-feature-settings: 'palt';
	letter-spacing: 1px;
}
.subtitle{
	display: block;
	width: calc(100% - 23px);
	font-size:25px;
	font-weight: 400;
	border-bottom: solid 1px #666;
	border-left: solid 8px #02A4D2;
	padding: 3px 0 5px 15px;
	margin: 0 0 50px 0;
	float: left;
	clear: both;
}
.subtitle1b{
	display: block;
	width: calc(100% - 23px);
	font-size:25px;
	font-weight: 400;
	border-bottom: solid 1px #666;
	border-left: solid 8px #02A4D2;
	padding: 3px 0 5px 15px;
	margin: 30px 0 50px 0;
	float: left;
	clear: both;
}

.subtitle2{
	display: block;
	width: calc(100% - 23px);
	font-size:25px;
	font-weight: 400;
	border-bottom: solid 1px #666;
	border-left: solid 8px #09A16A;
	padding: 3px 0 5px 15px;
	margin: 20px 0 50px 0;
	float: left;
	clear: both;
}

/* サービステーブル設定 */
.table_service{
	display: table;
	width: 100%;
	max-width:1100px;
	height: auto;
	line-height: 180%;
	border-collapse: collapse;
	border: solid 2px #666;/*表全体を線で囲う*/
	background-color: #fff;
	margin-bottom: 20px;
}
.table_service th{
	display: table-cell;
	font-size: 12px;
	font-weight: 500;
	background-color: #f5f5f5;
	padding: 3px 0;
	margin: 0;
	border: solid 1px #ccc !important;
}
.table_service td{
	display: table-cell;
	font-size: 14px;
	line-height: 180% !important;
	padding: 10px 15px;
	margin: 0;
	border: solid 1px #ccc !important;
}
.table_service td p{
	font-size: 14px !important;
	line-height: 180% !important;
	margin-bottom: 0 !important;
}
.item1{
	width: 25%;
}
.item2{
	width: 75%;
}
.service_menu h3{
	display: block;
	width: calc(100% - 35px);
	font-size:20px;
	color: #fff;
	font-weight: 500;
	padding: 10px 15px;
	margin: 20px 0 10px 0;
	float: left;
	clear: both;
}

.seminar_area h3{
	background-color: #3C84C4;
	border-left: solid 5px #7CBEF8;
}
.lecture_area h3{
	background-color: #F7965F;
	border-left: solid 5px #FFC965;
}
.training_area h3{
	background-color: #1A8930;
	border-left: solid 5px #82CF7D;
}

.seminar_area h3:before {
    content: '';
    display: inline-block;
    width:7px;
    height: 7px;
    margin: 0 15px 4px 0;
    border-right: 3px solid #8AE5FF;
    border-bottom: 3px solid #8AE5FF;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.training_area h3:before {
    content: '';
    display: inline-block;
    width:7px;
    height: 7px;
    margin: 0 15px 4px 0;
    border-right: 3px solid #D7FDD4;
    border-bottom: 3px solid #D7FDD4;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.lecture_area h3:before {
    content: '';
    display: inline-block;
    width:7px;
    height: 7px;
    margin: 0 15px 4px 0;
    border-right: 3px solid #FFEE9B;
    border-bottom: 3px solid #FFEE9B;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.table_service strong{
	display: block;
	width: 100%;
	text-align: center !important;
	font-size:15px !important;
	line-height: 150% !important;
	font-weight: 500 !important;
}

.pulldown01 {
	overflow: hidden;
	width: 48%;
	margin: 0 0 100px 0 !important;
	float: left;
}
.pulldown02 {
	overflow: hidden;
	width: 48%;
	margin: 0 0 100px 0 !important;
	float: right;
}

.select_menu select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	font-size: 15px !important;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.select_menu select::-ms-expand {
    display: none;
}
.select_menu.pulldown01,.select_menu.pulldown02 {
	position: relative;
	border: 2px solid #bbbbbb;
	border-radius: 3px;
	background: #ffffff;
}
.select_menu.pulldown01::before,.select_menu.pulldown02::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.select_menu.pulldown01 select,.select_menu.pulldown02 select {
	padding: 8px 38px 8px 8px !important;
}

.lecture_menu{
	background-color: #fff !important;
}
.seminar_menu{
	background-color: #fff !important;
}
.training_menu{
	background-color: #fff !important;
}

/*.lecture_menu{
	background-color: #FFF7E9 !important;
}
.seminar_menu{
	background-color: #E9FCFF !important;
}
.training_menu{
	background-color: #F3FFE9 !important;
}*/

.soudan_area{
	padding: 0 0 0 0;
	background-color: #ebebeb;
}
.soudan_area img{
	display: block;
	width: 100px;
	height: auto;
	margin: 20px auto 0 auto;
}
.soudan{
	display: flex;
	text-align: center !important;
	margin: 0 auto !important;
}
.soudan p{
	display: block;
	width: 500px;
	text-align: center !important;
	border: double 3px #666;
	background-color: #fff;
	padding: 15px 0;
	margin: 20px auto 0 auto!important;
}

.contents_news .news_title{
	display: block;
	width: 100%;
	font-size:22px;
	line-height: 130%;
	font-weight: 600;
	border-bottom: solid 1px #000;
	padding: 0 0 7px 0;
	margin: 0 0 15px 0;
	clear: both;
}

.contents_news .date{
	display: block;
	width: 100%;
	font-size:13px;
	color: #666;
	padding: 0 0 0 0;
	margin: 0 0 50px 0 !important;
	clear: both;
}

.contents_news .category_name{
	display: inline-block;
	width: 85px !important;
	font-size: 10px !important;
	line-height: 10px !important;
	text-align: center !important;
	font-feature-settings: 'palt';
	color: #fff;
	padding: 5px 0 4px 0 !important;
	margin: 0 15px 15px 0 !important;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	vertical-align: top;
	float: left !important;
}

.category4{
	background-color: #99C40C;
}
.category6{
	background-color: #FC9E33;
}
.category5{
	background-color: #63A1DA;
}
.category25{
	background-color: #E488CA;
}

.snavi_area{
	display: block;
	width: 200px;
	float: left;
	clear: both;
}

aside h3{
	display: block;
	width: 198px;
	font-size:15px;
	font-weight: 600;
	text-align: center;
	color: #000;
	background-color: #fff;
	border: solid 1px #000;
	padding: 8px 0 6px 0 ;
	margin: 0 0 10px 0 !important;
	float: left;
	clear: both;
}
.news_subtitle_h3{
	background-image: url("../images/news_subtitle_h3.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	padding-bottom: 10px;
}
.column_subtitle_h3{
	background-image: url("../images/column_subtitle_h3.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	padding-bottom: 10px;
}
.snavi_area ul{
	display: block;
	width: 200px;
	list-style: none;
	margin-bottom: 15px;
	float: left;
	clear: both;
}

.snavi_area ul li a{
	display: inline;
	font-size:12px;
	line-height: 150%;
	background-image: url("../images/tri.png");
	background-repeat: no-repeat;
	background-position: top left;
	padding: 0 0 10px 20px;
	float: left;
	clear: both;
}
.snavi_area ul li a:hover{
	text-decoration: none;
}

.widget_title{
	display: block;
	width: 200px;
	font-size:12px;
	font-weight: 500;
	text-align: center;
	color: #fff;
	background-color: #666;
	padding: 3px 0 1px 0 ;
	margin: 0 0 10px 0 !important;
	float: left;
	clear: both;
}

.aside_keywords div{
	display: block;
	width: 200px;
	text-align: justify;
	float: left;
	clear: both;
}

.aside_keywords p{
	display: block;
	width: 100%;
	text-align: justify;
	margin-bottom: 0 !important;
	float: left;
	clear: both;
}

.aside_keywords p a{
	color: #000;
	text-decoration: none;
}
.aside_keywords p a:hover{
	text-decoration: underline;
}

.aside_keywords p span{
	display: inline;
	padding-right: 15px;
}

.aside_keywords p span:nth-child(1),
.aside_keywords p span:nth-child(2),
.aside_keywords p span:nth-child(3){
	font-size: 20px;
}
.aside_keywords p span:nth-child(4),
.aside_keywords p span:nth-child(5){
	font-size: 18px;
}
.aside_keywords p span:nth-child(6),
.aside_keywords p span:nth-child(7),
.aside_keywords p span:nth-child(8),
.aside_keywords p span:nth-child(9){
	font-size: 17px;
}
.aside_keywords p span:nth-child(10),
.aside_keywords p span:nth-child(11),
.aside_keywords p span:nth-child(12){
	font-size: 15px;
}
.aside_keywords p span:nth-child(13),
.aside_keywords p span:nth-child(14),
.aside_keywords p span:nth-child(15){
	font-size: 13px;
}
.aside_keywords p span:nth-child(16),
.aside_keywords p span:nth-child(17),
.aside_keywords p span:nth-child(18),
.aside_keywords p span:nth-child(19),
.aside_keywords p span:nth-child(20){
	font-size: 12px;
}
.aside_keywords p span:nth-child(21),
.aside_keywords p span:nth-child(22),
.aside_keywords p span:nth-child(23),
.aside_keywords p span:nth-child(24),
.aside_keywords p span:nth-child(25),
.aside_keywords p span:nth-child(26),
.aside_keywords p span:nth-child(27),
.aside_keywords p span:nth-child(28),
.aside_keywords p span:nth-child(29),
.aside_keywords p span:nth-child(30){
	font-size: 10px;
}

.search_page_list li{
	list-style: none !important;
}

.topics_img{
	display: block;
	width: 200px;
	height: 150px;
	background-image: url("../images/pic_thumb_no_img.png");
	background-size: cover;
	border: solid 2px #ccc !important;
	margin: 0 0 30px 0;
	float: left;
}
.topics_img_logo{
	display: block;
	width: 200px;
	height: 150px;
	background-image: url("../images/pic_thumb_no_img_logo.png");
	background-size: cover;
	border: solid 2px #ccc !important;
	margin: 0 0 30px 0;
	float: left;
}
.topics_img img,.topics_img_logo img{
	display: block;
	width: 200px;
	height: 150px;
	object-fit: cover !important;
	object-position:center center !important;
}
.topics_text{
	display: block;
	width: calc(100% - 220px);
	max-width: 770px !important;
	float: right;
}
.search_page_date{
	display: block;
	width: 100%;
	font-size:13px;
	color: #666;
	padding: 0 0 0 0;
	margin: 0 0 5px 0 !important;
	clear: both;
}
.search_page_title a{
	display: inline-block;
	font-size:18px;
	line-height: 130%;
	color: #000;
	font-weight: 400;
	text-decoration: underline;
	padding: 0 0 0 0;
	margin: 0 0 20px 0;
	float: left;
	clear: both;
}
.search_page_title a:hover{
	text-decoration: none !important;
}
.search_page_text{
	display: block;
	width: 100%;
	font-size: 13px !important;
	line-height: 160% !important;
	color: #000 !important;
	margin: 0 0 50px 0;
	float: left;
	clear: both;
}
.search_page_hr{
	display: block;
	width: 100%;
	height: 1px;
	border: none !important;
	background-image: -webkit-linear-gradient(left,
	transparent 0%,#999 40%,transparent 100%);
	background-image:         linear-gradient(90deg,
	transparent 0%,#999 40%,transparent 100%);
	margin:  25px 0 50px 0 !important;
	float: left;
	clear: both;
}

.search_h3{
	display: block;
	font-size:18px;
	margin-bottom: 30px;
}

.contents_news .single p{
	font-size: 15px;
	line-height: 180%;
	text-align: justify;
	margin-bottom: 25px;
}
.contents_news .single p strong{
	font-weight: 600;
}
.contents_news .single h1{
	display: block;
	width: calc(100% - 23px);
	font-size:25px;
	font-weight: 400;
	border-bottom: solid 1px #666;
	border-left: solid 8px #6AA7DE;
	padding: 3px 0 5px 15px;
	margin: 0 0 50px 0;
	float: left;
	clear: both;
}

.contents_news .single h2{
	display: flex;
	width: calc(100% - 23px);
	font-size:20px;
	font-weight: 600;
	border-left: solid 8px #6AA7DE;
	padding: 2px 0 2px 15px;
	margin: 20px 0 20px 0;
	float: left;
	clear: both;
}

.contents_news .single h3{
	display: flex;
	width: 100%;
	color: #0C5BA2;
	font-size:20px;
	font-weight: 500;
	border-bottom: solid 1px #488AC6;
	padding: 2px 0 2px 0;
	margin: 20px 0 20px 0;
	float: left;
	clear: both;
}

.contents_news .single h4{
	display: flex;
	width: 100%;
	color: #E82E4F;
	font-size:18px;
	font-weight: 600;
	padding: 2px 0 2px 0;
	margin: 20px 0 20px 0;
	float: left;
	clear: both;
}

.addtoany_content{
	display: none !important;
}

.case_block a{
	display: block;
	width: calc(30% - 6px);
	min-height: 310px;
	text-decoration: none;
	background-color: #fff;
	border: solid 3px #ccc !important;
	margin: 0 1% 30px 2%;
	float: left;
	transition-duration: 0.4s;
}
.case_block a:hover{
	border: solid 3px #0181BF !important;
	color: #0181BF;
	transition-duration: 0.2s;
}
.case_img{
	display: block;
	vertical-align: top;
	width: 100%;
	height: 200px;
	background-image: url("../images/case_thumb_no_img.png");
	background-size: cover;
	background-position: center center !important;
	margin: 0 0 10px 0;
	float: left;
}
.case_block .case_img img{
	display: block;
	width: 100%;
	height: 200px;
	object-fit: cover !important;
	object-position:center center !important;
	float: left;
	clear: both;
}
.search_case_title{
	display: block;
	width: 90%;
	height: 50px !important;
	position: relative;
	font-size:13px !important;
	line-height: 130% !important;
	font-weight: 400 !important;
	font-feature-settings: 'palt';
	padding: 0 !important;
	margin: 0 5% !important;
	float: left;
	clear: both;
}
.search_case_name strong{
	display: block;
	width: 90%;
	font-size:16px !important;
	line-height: 130% !important;
	font-weight: 600 !important;
	font-feature-settings: 'palt';
	margin: 0 5% !important;
}
.case_h4{
	display: block;
	width: 100%;
	font-size:18px !important;
	font-weight: 600 !important;
	border-bottom: solid 1px #000;
	padding: 0 0 10px 0;
	margin: 0 auto 20px auto;
	float: left;
	clear: both;
}
.case_text{
	font-size:15px;
	line-height: 180%;
}
.case_text p{
	margin-bottom: 20px !important;
}
.case_header{
	display: block;
	width: calc(100% - 6px);
	height: 400px;
	background-color: #f5f5f5;
	margin: 0 0 40px 0;
	float: left;
	clear: both;
}

.case_profile{
	display: table;
	width: 100%;
	max-width:1100px;
	font-size: 12px;
	line-height: 180%;
	border-collapse: collapse;
	border: solid 1px #ccc;/*表全体を線で囲う*/
	background-color: #fff;
	float: left;
	clear: both;
}
.case_profile th{
	display: table-cell;
	width: 100px;
	font-weight: 400;
	background-color: #ebebeb;
	padding: 15px 10px;
	margin: 0;
	border: solid 1px #ccc !important;
}
.case_profile td{
	display: table-cell;
	width: auto;
	padding: 15px 10px;
	margin: 0;
	border: solid 1px #ccc !important;
}
.case_profile td p{
	font-size: 12px;
	margin-bottom: 0 !important;
}
.case_profile td a:hover{
	text-decoration: none;
}
.case_profile .customer_logo{
	display: table-cell;
	width: 300px;
	padding: 20px;
}
.case_profile .customer_logo .thumbnail{
	display: block;
	width: 300px;
	height: 220px;
	background-color: #ccc;
	margin: 0;
}
.profile_name strong{
	display: block;
	width: 100%;
	font-size:20px !important;
	margin-bottom: 50px !important;
	float: left;
	clear: both;
}
.case_profile_area{
	background-color: #5E95C5 !important;
	padding-top: 40px !important;
}
.case_profile_area h4,.case_profile_area p strong{
	color: #fff !important;
	border-color: #fff;
}
.case_lead strong{
	font-size: 24px !important;
	font-weight: 500 !important;
	font-feature-settings: 'palt';
	letter-spacing: 2px;
	color: #2471B4;
}
#theme,#results,#customer{
	display: block;
	width: 100%;
	height: 0;
	margin: 0;
	float: left;
	clear: both;
}
.case_navi{
	display: block;
	width: 100%;
	height: 100px;
	font-size:13px;
	text-align: center;
}
.case_navi a{
	text-decoration: none;
	background-color: #ddd;
	padding: 7px 15px 5px 15px;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}
.case_navi a:hover{
	background-color: #ccc;
}

.case_navi a:after {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 0 3px 5px;
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.caselist a{
	display: block;
	width: 100%;
	font-size: 15px !important;
	text-align: center;
	color: #fff;
	margin: 50px 0 0 0;
	float: left;
	clear: both;
}
.caselist a:hover{
	text-decoration: none;
}