@charset "utf-8";

/*Googlefonts*/

@import url('https://fonts.googleapis.com/css?family=Roboto');
@import url('https://fonts.googleapis.com/css?family=M+PLUS+1p:700&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Dancing+Script');

body {
	margin: 0px;
	padding: 0px;
	font-family: "Arial", Lato, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	-webkit-text-size-adjust: 100%;
	/* スマホで文字サイズが大きくなるのを防ぐ */
	font-size: 160%;
	background-color: #fff;
	max-width: 1920px;
	margin: 0 auto;
}

.serif {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

ul {
	padding: 0;
}

li {
	list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0px;
	padding: 0px;
	font-weight: normal;
	font-size: 100%
}

a {
	transition-property: all;
	transition: 0.2s linear;
	text-decoration: none;
}

a:focus,
*:focus {
	outline: none;
}

p {
	margin: 0px;
	padding: 0px
}

.clearfix:after {
	content: " ";
	/* 新しい要素を作る */
	display: block;
	/* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*/
	/*/
height: auto;
overflow: hidden;
/**/
}

/*
	a:hover img {
		opacity: 0.8;
	}
*/

.moa {
	margin: 0 auto;
}

.tac {
	text-align: center;
}

.tal {
	text-align: left
}

@media (min-width: 992px) {
	.tal {
		text-align: center
	}
}

.left {
	float: left;
}

.right {
	float: right;
}

.mb0 {
	margin-bottom: 0px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mb55 {
	margin-bottom: 55px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.mb65 {
	margin-bottom: 65px !important;
}

.mb70 {
	margin-bottom: 70px !important;
}

.mb75 {
	margin-bottom: 75px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.mb85 {
	margin-bottom: 85px !important;
}

.mb90 {
	margin-bottom: 90px !important;
}

.mb95 {
	margin-bottom: 95px !important;
}

.mb100 {
	margin-bottom: 100px !important;
}

.fwb {
	font-weight: bold;
}

.lh2 {
	line-height: 2;
}

.s11 {
	font-size: 11px !important;
	line-height: 1.6;
}

.s12 {
	font-size: 12px !important;
	line-height: 1.6;
}

.s13 {
	font-size: 13px !important;
	line-height: 1.6;
}

.s14 {
	font-size: 14px !important;
	line-height: 1.6;
}

.s15 {
	font-size: 15px !important;
	line-height: 1.7;
}

.s16 {
	font-size: 16px !important;
	line-height: 1.7;
}

.s14_c {
	font-size: 14px !important;
	line-height: 1.6;
	text-align: center;
}

.s15_c {
	font-size: 15px !important;
	line-height: 1.7;
	text-align: center;
}

@media (max-width: 767px) {
	.s16_c {
		font-size: 14px !important;
		line-height: 1.7;
		text-align: left;
	}
}

@media (min-width: 768px) {
	.s16_c {
		font-size: 15px !important;
		line-height: 1.7;
		text-align: center;
	}
}

@media (min-width: 992px) {
	.s16_c {
		font-size: 16px !important;
		line-height: 1.7;
		text-align: center;
	}
}


.s17 {
	font-size: 17px !important;
	line-height: 1.7;
}

.s18 {
	font-size: 18px !important;
	line-height: 1.7;
}

.s19 {
	font-size: 19px !important;
	line-height: 1.7;
}

.s20 {
	font-size: 20px !important;
	line-height: 1.7;
}

.s21 {
	font-size: 21px !important;
	line-height: 1.7;
}

.s22 {
	font-size: 22px !important;
	line-height: 1.7;
}

.s23 {
	font-size: 23px !important;
	line-height: 1.7;
}

.s24 {
	font-size: 24px !important;
	line-height: 1.7;
}

.s25 {
	font-size: 25px !important;
	line-height: 1.7;
}

.s26 {
	font-size: 26px !important;
	line-height: 1.7;
}

.s27 {
	font-size: 27px !important;
	line-height: 1.7;
}

.s28 {
	font-size: 28px !important;
	line-height: 1.7;
}

.s29 {
	font-size: 29px !important;
	line-height: 1.7;
}

.s30 {
	font-size: 30px !important;
	line-height: 1.7;
}

.br10 img {
	border-radius: 10px;
}

.br20 img {
	border-radius: 20px;
}

.br30 img {
	border-radius: 30px;
}

img.br10 {
	border-radius: 10px;
}

img.br20 {
	border-radius: 20px;
}

img.br30 {
	border-radius: 30px;
}

a.underline {
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

.pos {
	position: relative;
}

@media (max-width: 767px) {
	.flex_b {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.reverse_sp {
		flex-direction: column-reverse;
	}
}

@media (min-width: 768px) {
	.flex_b {
		display: flex;
		flex-direction: row;
		justify-content: space-between;

	}
}

.flex_c {
	display: flex;
	flex-direction: column;
}

.stretch {
	align-items: stretch;
}

.center {
	align-items: center;
}

.start {
	align-items: flex-start;
}

.end {
	align-items: flex-end;
}

.baseline {
	align-items: baseline;
}

.wrap {
	flex-wrap: wrap;
}


@media (max-width: 767px) {
	p.pic45 {
		width: 100%;
	}

	p.pic46 {
		width: 100%;
	}

	p.pic47 {
		width: 100%;
	}

	p.pic48 {
		width: 100%;
	}

	p.pic49 {
		width: 100%;
	}

	p.pic50 {
		width: 100%;
	}

	.cont45 {
		width: 100%;
	}

	.cont46 {
		width: 100%;
	}

	.cont47 {
		width: 100%;
	}

	.cont48 {
		width: 100%;
	}

	.cont49 {
		width: 100%;
	}

	.cont50 {
		width: 100%;
	}
}

@media (min-width: 768px) {
	p.pic45 {
		width: 45%;
	}

	p.pic46 {
		width: 46%;
	}

	p.pic47 {
		width: 47%;
	}

	p.pic48 {
		width: 48%;
	}

	p.pic49 {
		width: 49%;
	}

	p.pic50 {
		width: 50%;
	}

	.cont45 {
		width: 45%;
	}

	.cont46 {
		width: 46%;
	}

	.cont47 {
		width: 47%;
	}

	.cont48 {
		width: 48%;
	}

	.cont49 {
		width: 49%;
	}

	.cont50 {
		width: 50%;
	}
}

.img-responsive {}

@media (max-width: 420px) {
	.mb_mainimg {
		margin-bottom: 30px !important;
	}

	.mb_cont {
		margin-bottom: 40px !important;
	}

	.mb_cont2 {
		margin-bottom: 40px !important;
	}
}

@media (min-width: 421px) {

	.mb_mainimg {
		margin-bottom: 40px !important;
	}

	.mb_cont {
		margin-bottom: 40px !important;
	}

	.mb_cont2 {
		margin-bottom: 40px !important;
	}
}

@media (min-width: 992px) {

	.mb_mainimg {
		margin-bottom: 70px !important;
	}

	.mb_cont {
		margin-bottom: 60px !important;
	}

	.mb_cont2 {
		margin-bottom: 50px !important;
	}
}

.dn {
	display: none;
}

span.tel_link {
	color: #333;
}

span.tel_link_blue {
	color: #0C5BAA;
}

span.tel_link_blue2 {
	color: #0759AC;
}

/* header
=========================================================================== */

@media (min-width: 992px) {
	.flex_h {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.flex_right {
		width: auto;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}
}

@media (max-width: 991px) {
	header {
		width: 100%;
		background-color: #fff;
		position: relative;
		z-index: 9999999;
	}

	.inner_body {
		width: 100%;
		overflow: hidden;
	}

	.bd_pt {
		padding-top: 110px;
	}
}

@media (min-width: 992px) {
	header {
		width: 100%;
		background-color: #fff;
		padding: 30px 0 0;
	}

	.inner_body {
		width: 100%;
		overflow: hidden;
	}

	.bd_pt {
		padding-top: 110px;
	}
}

@media (min-width: 1200px) {
	header {
		width: 100%;
	}
}

@media (min-width: 1400px) {
	header {
		width: 100%;
	}
}

@media (min-width: 1500px) {
	header {
		width: 100%;
	}
}


/* navigation
=========================================================================== */

/*navbar ナビゲーション全体*/

.navbar {
	margin-bottom: 0;
	/*	デフォルトのマージンを消す*/
	border: none;
	/*	透明1px線を消す*/
	border-radius: 0;
}

.navbar-default {
	background-color: transparent;
	/*デフォルトの背景色を消す*/
}

/*
.clearfix:before,
.clearfix:after,
*/

.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
/*
.row:before,
.row:after,
*/

/*
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
*/

.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after {
	display: none;
	/*	自動で生成される疑似要素を消す　flex-boxでカウントされてしまう*/
}

.navbar-brand {
	padding: 0;
	/*	デフォルトのパディングを消す*/
}

/* navbar collapse for iPad (bootstrap) タブレットでもスマホ用ナビゲーションを使う*/

@media (max-width: 991px) {
	.navbar-header {
		float: none;
	}

	.navbar-toggle {
		display: block;
	}

	.navbar-collapse {
		border-top: 1px solid transparent;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
	}

	.navbar-collapse.collapse {
		display: none !important;
	}

	.navbar-nav {
		float: none !important;
		margin: 7.5px -15px;
	}

	.navbar-nav > li {
		float: none;
	}

	.navbar-nav > li > a {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.navbar-text {
		float: none;
		margin: 15px 0;
	}

	.navbar-collapse.collapse.in {
		display: block !important;
	}

	.collapsing {
		overflow: hidden !important;
	}
}

.navbar-default .navbar-toggle {
	border-color: transparent;
	/*	ハンバーガーメニューの背景色を消す*/
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
	background-color: transparent;
}

@media (min-width: 768px) {

	.navbar > .container .navbar-brand,
	.navbar > .container-fluid .navbar-brand {
		margin-left: 0;
	}
}

/*navbar-header　ロゴやスマホメニューが入る部分*/

.navbar-header {}


/*navbar-brand ロゴの大きさ*/

.navbar-brand a:hover {
	opacity: 0.95 !important;
}

@media (max-width: 419px) {
	.navbar-brand {
		width: 75%;
		height: auto;
	}
}

@media (min-width: 420px) {
	.navbar-brand {
		width: 240px;
		height: auto;
	}
}

@media (min-width: 768px) {
	.navbar-brand {
		width: 290px;
		height: auto;
	}
}

@media (min-width: 992px) {
	.navbar-brand {
		width: 308px;
	}
}

@media (max-width: 991px) {
	.navbar-nav > li > a {
		padding: 15px;
		font-size: 15px;
		font-weight: bold;
		color: #333;
		margin: 10px;
		border-radius: 2px;
		text-align: left;
		box-shadow: 0px 1px 3px 0px #ccc inset;
		text-decoration: none;
	}

	.navbar-nav > li {
		margin-bottom: 0px;
	}

	.navbar-nav > li span {
		color: #999999;
		font-size: 10px;
		font-weight: normal;
		float: right;
		letter-spacing: 1px;
	}
}

@media (min-width: 992px) {
	.bg_gnav {
		width: 100%;
		height: 64px;
		background-color: #085AAC;
		margin-top: 30px;
	}

	.navbar-collapse {}

	.navbar-nav {
		background: none;
		float: none;
		display: flex !important;
		flex-direction: row;
		justify-content: space-between;
		/*		padding-top: 20px;*/
	}

	.navbar-nav li > a span {
		display: none;
	}

	.navbar-nav li {
		width: 20%;
		height: 64px;
		border-left: 1px solid #fff;
	}

	.navbar-nav li:last-child {
		border-right: 1px solid #fff;
	}

	.navbar-nav li > a {
		display: block;
		height: 64px;
		font-size: 15px;
		font-weight: bold;
		color: #fff !important;
		/*		padding: 5px 10px 7px 10px !important;*/
		letter-spacing: 0.05em;
		line-height: 70px;
		padding: 0;
		text-align: center;
		position: relative;
	}

	.navbar-nav li > a:hover {
		opacity: 1;
		color: #2FCBFF !important;
	}

	.navbar-nav li > a:after {
		content: '';
		display: block;
		width: 5px;
		height: 5px;
		border-left: 5px solid transparent;
		border-right: 5px solid #fff;
		border-top: 5px solid transparent;
		border-bottom: 5px solid #fff;
		position: absolute;
		bottom: 5px;
		right: 5px;
	}

	.navbar-nav li > a:hover:after,
	.navbar-nav li.active > a:after {
		content: '';
		display: block;
		width: 5px;
		height: 5px;
		border-left: 5px solid transparent;
		border-right: 5px solid #2FCBFF;
		border-top: 5px solid transparent;
		border-bottom: 5px solid #2FCBFF;
		position: absolute;
		bottom: 5px;
		right: 5px;
	}

	.navbar-nav li.active > a {
		color: #2FCBFF !important;
		background-color: transparent !important;
	}
}

@media (min-width: 1200px) {
	.navbar-nav li > a {
		font-size: 16px;
	}
}

/*スマホグローバルナビ*/

@media (max-width: 991px) {
	.sp_fix {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding: 15px 0;
	}

	nav.navbar {
		background-color: #fff;
		box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
		z-index: 999;
		position: fixed;
		top: 0;
		width: 100%;
	}

	.navbar-toggle {
		position: relative;
		width: 30px;
		height: 20px;
		border: none;
		background-color: transparent;
	}

	.navbar-toggle,
	.navbar-toggle span {
		display: inline-block;
		/*transition: all .4s;*/
	}

	.navbar-toggle span {
		position: absolute;
		right: 0;
		width: 100%;
		height: 2px;
		background-color: #333;
	}

	.navbar-toggle span:nth-of-type(1) {
		top: 0;
	}

	.navbar-toggle span:nth-of-type(2) {
		top: 9px;
	}

	.navbar-toggle span:nth-of-type(3) {
		bottom: 0;
	}

	.navbar-toggle.active span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}

	.navbar-toggle.active span:nth-of-type(2) {
		opacity: 0;
		-webkit-animation: active-menu-bar02 .8s forwards;
		animation: active-menu-bar02 .8s forwards;
	}

	.navbar-toggle.active span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
	}

	#gnav {
		/*		overflow-y: scroll;*/
		width: 100%;
		height: 100vh;
		background-color: #0d5cab;
		position: relative;
		-webkit-overflow-scrolling: touch;
		/*スマホナビゲーションでスクロールできるようにする*/
		padding-bottom: 50px;
	}

	.navbar-nav > li > a {
		padding: 15px;
		background-color: #fff;
		font-size: 15px;
		font-weight: bold;
		color: #004690;
		margin: 5px 10px;
		border-radius: 2px;
		text-align: left;
		text-decoration: none;
	}

	.navbar-nav > li.active > a {
		background-color: #d2e8ff !important;
	}

	.navbar-nav > li span {
		color: #999999;
		font-size: 10px;
		font-weight: normal;
		float: right;
		letter-spacing: 1px;
		font-family: 'Dancing Script', cursive;
	}

	.navbar-nav > li > a:hover,
	.navbar-nav > li > a:focus {
		color: #004690 !important;
		background-color: #d2e8ff !important;
		opacity: 1;
	}

	.navbar-nav > li > a:hover span {
		color: #004690 !important;
	}
}

/*ヘッダー電話番号*/

@media (max-width: 991px) {
	p.text_h {
		display: none;
	}

	ul.tel_h li {
		display: none;
	}
}

@media (min-width: 992px) {
	p.text_h {
		font-size: 15px;
		margin-right: 50px;
	}

	ul.tel_h li {
		font-size: 19px;
		color: #0C5BAA;
		font-family: 'M PLUS 1p', sans-serif;
	}
}

/* メインイメージ
=========================================================================== */

@media (max-width: 400px) {
	.bg_mainimg {
		width: 100%;
		height: 240px;
		background: url(../images/mainimg.jpg) center center /cover no-repeat;
		padding-top: 150px;
		margin-top: 76px;
	}

	p.catch_mainimg {
		width: 100%;
	}
}

@media (min-width: 401px) and (max-width: 767px) {
	.bg_mainimg {
		width: 100%;
		height: 320px;
		background: url(../images/mainimg.jpg) center top /cover no-repeat;
		padding-top: 200px;
		margin-top: 78px;
	}

	p.catch_mainimg {
		width: 100%;
		max-width: 500px;
	}
}

@media (min-width: 768px) {
	.bg_mainimg {
		width: 100%;
		height: 380px;
		background: url(../images/mainimg.jpg) center top /cover no-repeat;
		padding-top: 220px;
		margin-top: 84px;
	}

	p.catch_mainimg {
		width: 600px;
	}
}

@media (min-width: 992px) {
	.bg_mainimg {
		width: 100%;
		height: 420px;
		background: url(../images/mainimg.jpg) center top /cover no-repeat;
		padding-top: 240px;
		margin-top: 0;
	}

	p.catch_mainimg {
		width: 700px;
	}
}

@media (min-width: 1200px) {
	.bg_mainimg {
		width: 100%;
		height: 500px;
		background: url(../images/mainimg.jpg) center top /cover no-repeat;
		padding-top: 300px;
	}

	p.catch_mainimg {
		width: 840px;
	}
}


/* index.html
=========================================================================== */

@media (max-width: 767px) {
	.bg_top01 {
		width: 100%;
		background: url(../images/bg_top01.jpg) center top /100% auto no-repeat;
		padding: 40px 0 0;
	}

	h2.top01 {
		font-size: 18px;
		color: #0C5AAA;
		text-align: center;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		line-height: 1.4;
	}

	h2.top01:after {
		content: "";
		display: block;
		width: 60px;
		height: 3px;
		background-color: #3961AB;
		margin: 20px auto 20px;
	}
}

@media (min-width: 768px) {
	.bg_top01 {
		width: 100%;
		background: url(../images/bg_top01.jpg) center top /cover no-repeat;
		padding: 50px 0 0;
	}

	h2.top01 {
		font-size: 24px;
		color: #0C5AAA;
		text-align: center;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
	}

	h2.top01:after {
		content: "";
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto 30px;
	}
}

@media (min-width: 992px) {
	.bg_top01 {
		width: 100%;
		background: url(../images/bg_top01.jpg) center top /cover no-repeat;
		padding: 70px 0 0;
	}

	h2.top01 {
		font-size: 28px;
		color: #0C5AAA;
		text-align: center;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
	}

	h2.top01:after {
		content: "";
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto 30px;
	}
}

p.pic_top01 {
	margin-bottom: 30px;
}

@media (max-width: 767px) {
	h2.top {
		width: 100%;
		text-align: center;
		font-size: 16px;
		color: #333;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		padding-bottom: 15px;
		border-bottom: 5px solid #00A3D9;
	}

	h2.top span {
		font-size: 27px;
		color: #0C5BAA;
		letter-spacing: 0.01em;
		display: block;
		margin-bottom: 5px;
	}
}

@media (min-width: 768px) {
	h2.top {
		width: 100%;
		text-align: center;
		font-size: 20px;
		color: #333;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		padding-bottom: 15px;
		border-bottom: 5px solid #00A3D9;
	}

	h2.top span {
		font-size: 39px;
		color: #0C5BAA;
		letter-spacing: 0.01em;
		display: block;
		margin-bottom: 10px;
	}
}

@media (max-width: 767px) {
	.flex_top02 {
		width: 100%;
		display: flex;
		flex-direction: column;
	}

	.flex_top02 article {
		width: 100%;
		margin-bottom: 30px;
	}

	.flex_top02 article a {
		width: 100%;
		height: 240px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		position: relative;
	}

	.flex_top02 article a h3 {
		width: 240px;
		height: 100px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 20px;
		color: #fff;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		text-align: center;
		line-height: 1.5;
		margin: 0 auto;
	}

	.flex_top02 article h3 span {
		font-size: 15px;
	}

	.flex_top02 article a:after {
		content: '';
		display: block;
		width: 27px;
		height: 26px;
		background: url(../images/icon_top02.png) 0 0 /27px 26px no-repeat;
		position: absolute;
		bottom: 15px;
		right: 20px;
	}

	.flex_top02 article h4 {
		font-size: 14px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		margin: 15px 10px 10px 10px;
		letter-spacing: 1.4;
	}

	.flex_top02 article p.text {
		font-size: 14px;
		line-height: 1.8;
		margin: 0 10px;
	}
}

@media (min-width: 768px) {
	.flex_top02 {
		width: 100%;
		display: flex;
		flex-direction: row;
	}

	.flex_top02 article {
		width: 25%;
		margin-right: 2px;
	}

	.flex_top02 article a {
		width: 100%;
		height: 240px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		position: relative;
	}

	.flex_top02 article a h3 {
		width: 360px;
		height: 100px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 18px;
		color: #fff;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		text-align: center;
		line-height: 1.5;
	}

	.flex_top02 article h3 span {
		font-size: 15px;
	}

	.flex_top02 article a:after {
		content: '';
		display: block;
		width: 27px;
		height: 26px;
		background: url(../images/icon_top02.png) 0 0 /27px 26px no-repeat;
		position: absolute;
		bottom: 15px;
		right: 20px;
	}

	.flex_top02 article h4 {
		font-size: 14px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		margin: 15px 10px 10px 10px;
		letter-spacing: 1.4;
	}

	.flex_top02 article p.text {
		font-size: 14px;
		line-height: 1.8;
		margin: 0 10px;
	}
}

@media (min-width: 992px) {
	.flex_top02 article a {
		height: 270px;
	}

	.flex_top02 article a h3 {
		width: 360px;
		height: 100px;
		font-size: 20px;
	}

	.flex_top02 article h3 span {
		font-size: 17px;
	}

	.flex_top02 article h4 {
		font-size: 14px;
		letter-spacing: 1.4;
	}

	.flex_top02 article p.text {
		font-size: 14px;
	}
}

@media (min-width: 1200px) {
	.flex_top02 article a {
		width: 100%;
		height: 334px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		position: relative;
	}

	.flex_top02 article a h3 {
		width: 360px;
		height: 100px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 24px;
		color: #fff;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		text-align: center;
		line-height: 1.5;
	}

	.flex_top02 article h3 span {
		font-size: 18px;
	}

	.flex_top02 article a:after {
		content: '';
		display: block;
		width: 27px;
		height: 26px;
		background: url(../images/icon_top02.png) 0 0 /27px 26px no-repeat;
		position: absolute;
		bottom: 15px;
		right: 20px;
	}

	.flex_top02 article h4 {
		font-size: 16px;
		letter-spacing: 1.4;
	}

	.flex_top02 article p.text {
		font-size: 15px;
	}
}

.flex_top02 article:nth-of-type(1) a {
	background: url(../images/pic_top02_1.jpg) center top /cover no-repeat;
}

.flex_top02 article:nth-of-type(2) a {
	background: url(../images/pic_top02_2.jpg) center top /cover no-repeat;
}

.flex_top02 article:nth-of-type(3) a {
	background: url(../images/pic_top02_3.jpg) center top /cover no-repeat;
}

.flex_top02 article:nth-of-type(4) a {
	background: url(../images/pic_top02_4.jpg) center top /cover no-repeat;
}

.flex_top02 article a:hover:after {
	right: 10px;
}

.flex_top02 article a:after {
	transition: 0.2s;
}

.flex_top02 article:nth-of-type(4) {
	margin-right: 0;
}

.flex_top02 article:nth-of-type(1) a h3 {
	background-color: rgba(0, 163, 217, 0.8);
}

.flex_top02 article:nth-of-type(2) a h3 {
	background-color: rgba(217, 217, 0, 0.8);
}

.flex_top02 article:nth-of-type(3) a h3 {
	background-color: rgba(255, 128, 0, 0.8);
}

.flex_top02 article:nth-of-type(4) a h3 {
	background-color: rgba(0, 217, 54, 0.8);
}

@media (max-width: 767px) {
	.bg_top03 {
		width: 100%;
		background: url(../images/bg_top03.jpg) center top /cover no-repeat;
		padding-top: 30px;
		padding-bottom: 40px;
	}

	.bg_top03 h3 {
		font-size: 16px;
		color: #333;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		line-height: 1.4;
	}

	.bg_top03 p.text {
		font-size: 14px;
		line-height: 2;
		margin-bottom: 20px;
	}

	p.btn_top a {
		display: block;
		width: 210px;
		height: 52px;
		background-color: #0C5BAA;
		border-radius: 24px;
		font-size: 15px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		text-align: center;
		line-height: 52px;
		position: relative;
		margin: 0 auto;
	}

	p.btn_top a:after {
		content: '';
		display: block;
		width: 50px;
		height: 3px;
		background-color: #26C9FF;
		position: absolute;
		right: -25px;
		top: 25px;
	}

	.list_top03 {
		width: 100%;
		margin: 30px auto 0;
		display: flex;
		flex-direction: column;
	}

	.list_top03 article {
		width: 100%;
		height: 90px;
		background-color: #009CD0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: relative;
		margin-bottom: 20px;
	}

	.list_top03 article h4 {
		font-size: 17px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 5px;
		margin-top: 20px;
	}

	.list_top03 article p.text {
		font-size: 14px;
		color: #BDEEFF;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 0;
	}

	.list_top03 article:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 20px;
		height: 17px;
		border-top: 17px solid #26C9FF;
		border-left: 20px solid #26C9FF;
		border-bottom: 17px solid transparent;
		border-right: 20px solid transparent;
	}
}

@media (min-width: 768px) {
	.bg_top03 {
		width: 100%;
		background: url(../images/bg_top03.jpg) center top /cover no-repeat;
		padding-top: 50px;
		padding-bottom: 70px;
	}

	.bg_top03 h3 {
		font-size: 18px;
		color: #333;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		line-height: 1.4;
	}

	.bg_top03 p.text {
		font-size: 15px;
		line-height: 2;
		margin-bottom: 20px;
	}

	p.btn_top a {
		display: block;
		width: 210px;
		height: 52px;
		background-color: #0C5BAA;
		border-radius: 24px;
		font-size: 15px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		text-align: center;
		line-height: 52px;
		position: relative;
	}

	p.btn_top a:after {
		content: '';
		display: block;
		width: 50px;
		height: 3px;
		background-color: #26C9FF;
		position: absolute;
		right: -25px;
		top: 25px;
	}

	p.btn_top a:hover:after {
		width: 60px;
		transition: 0.1s;
		right: -35px;
	}

	.list_top03 {
		width: 720px;
		margin: 20px auto 0;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}

	.list_top03 article {
		width: 32%;
		height: 100px;
		background-color: #009CD0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: relative;
	}

	.list_top03 article h4 {
		font-size: 17px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 5px;
		margin-top: 20px;
	}

	.list_top03 article p.text {
		font-size: 14px;
		color: #BDEEFF;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 0;
	}

	.list_top03 article:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 20px;
		height: 17px;
		border-top: 17px solid #26C9FF;
		border-left: 20px solid #26C9FF;
		border-bottom: 17px solid transparent;
		border-right: 20px solid transparent;
	}
}

@media (min-width: 992px) {
	.bg_top03 {
		width: 100%;
		background: url(../images/bg_top03.jpg) center top /cover no-repeat;
		padding-top: 50px;
		padding-bottom: 70px;
	}

	.bg_top03 h3 {
		font-size: 18px;
	}

	.bg_top03 p.text {
		font-size: 15px;
	}

	.list_top03 {
		width: 940px;
		margin: 20px auto 0;
	}

	.list_top03 article {
		width: 31%;
		height: 100px;
	}

	.list_top03 article h4 {
		font-size: 18px;
	}

	.list_top03 article p.text {
		font-size: 15px;
	}
}

@media (min-width: 1200px) {
	.bg_top03 {
		width: 100%;
		background: url(../images/bg_top03.jpg) center top /cover no-repeat;
		padding-top: 50px;
		padding-bottom: 70px;
	}

	.bg_top03 h3 {
		font-size: 19px;
	}

	.bg_top03 p.text {
		font-size: 16px;
	}

	.list_top03 {
		width: 1020px;
		margin: 50px auto 0;
	}

	.list_top03 article {
		width: 31%;
		height: 120px;
	}

	.list_top03 article h4 {
		font-size: 20px;
	}

	.list_top03 article p.text {
		font-size: 16px;
	}
}

@media (max-width: 767px) {
	.bg_top04 {
		padding: 40px 0;
		background-color: #D9E7F2;
	}

	.bg_top04 h2 {
		font-size: 18px;
		font-family: 'M PLUS 1p', sans-serif;
		color: #009BD0;
		letter-spacing: 0.1em;
		margin-bottom: 15px;
	}

	.bg_top04 h2 span {
		display: block;
		font-size: 21px;
		color: #333;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 10px;
	}

	.bg_top04 p.text {
		font-size: 14px;
		line-height: 1.8;
	}
}

@media (min-width: 768px) {
	.bg_top04 {
		padding: 50px 0;
		background-color: #D9E7F2;
	}

	.bg_top04 h2 {
		font-size: 18px;
		font-family: 'M PLUS 1p', sans-serif;
		color: #009BD0;
		letter-spacing: 0.1em;
		margin-bottom: 30px;
	}

	.bg_top04 h2 span {
		display: block;
		font-size: 21px;
		color: #333;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 10px;
	}

	.bg_top04 p.text {
		font-size: 14px;
		line-height: 1.8;
	}
}

@media (min-width: 992px) {
	.bg_top04 {
		padding: 50px 0;
		background-color: #D9E7F2;
	}

	.bg_top04 h2 {
		font-size: 21px;
		font-family: 'M PLUS 1p', sans-serif;
		color: #009BD0;
		letter-spacing: 0.1em;
		margin-bottom: 30px;
	}

	.bg_top04 h2 span {
		display: block;
		font-size: 25px;
		color: #333;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 10px;
	}

	.bg_top04 p.text {
		font-size: 16px;
		line-height: 1.8;
	}
}

@media (min-width: 1200px) {
	.bg_top04 {
		padding: 70px 0;
		background-color: #D9E7F2;
	}

	.bg_top04 h2 {
		font-size: 24px;
		font-family: 'M PLUS 1p', sans-serif;
		color: #009BD0;
		letter-spacing: 0.1em;
		margin-bottom: 30px;
	}

	.bg_top04 h2 span {
		display: block;
		font-size: 30px;
		color: #333;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 10px;
	}

	.bg_top04 p.text {
		font-size: 16px;
		line-height: 1.8;
	}
}

@media (max-width: 767px) {
	.bg_top05 {
		width: 100%;
		padding: 50px 0;
		background: url(../images/bg_top05.jpg) center bottom /cover no-repeat;
	}

	.movie {
		width: 96%;
		margin: 0 auto;
	}

	p.comment {
		width: 210px;
		height: 40px;
		background-color: #009CD0;
		text-align: center;
		line-height: 40px;
		color: #fff;
		font-size: 15px;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin: 0 auto 30px;
	}

	p.comment:after {
		content: '';
		display: block;
		width: 12px;
		height: 12px;
		border-top: 12px solid #009CD0;
		border-left: 12px solid transparent;
		border-bottom: 12px solid transparent;
		border-right: 12px solid transparent;
		margin: 0 auto;
	}
}

@media (min-width: 768px) {
	.bg_top05 {
		width: 100%;
		padding: 50px 0;
		background: url(../images/bg_top05.jpg) center top /cover no-repeat;
	}

	.movie {
		width: 680px;
		margin: 0 auto;
	}

	p.comment {
		width: 280px;
		height: 55px;
		background-color: #009CD0;
		text-align: center;
		line-height: 55px;
		color: #fff;
		font-size: 19px;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 30px;
	}

	p.comment:after {
		content: '';
		display: block;
		width: 12px;
		height: 12px;
		border-top: 12px solid #009CD0;
		border-left: 12px solid transparent;
		border-bottom: 12px solid transparent;
		border-right: 12px solid transparent;
		margin: 0 auto;
	}
}

@media (min-width: 992px) {
	.bg_top05 {
		width: 100%;
		padding: 50px 0;
		background: url(../images/bg_top05.jpg) center top /cover no-repeat;
	}

	.movie {
		width: 840px;
		margin: 0 auto;
	}

	p.comment {
		width: 280px;
		height: 55px;
		background-color: #009CD0;
		text-align: center;
		line-height: 55px;
		color: #fff;
		font-size: 19px;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 30px;
	}

	p.comment:after {
		content: '';
		display: block;
		width: 12px;
		height: 12px;
		border-top: 12px solid #009CD0;
		border-left: 12px solid transparent;
		border-bottom: 12px solid transparent;
		border-right: 12px solid transparent;
		margin: 0 auto;
	}
}

@media (max-width: 767px) {
	.news_top {
		width: 100%;
		margin: 30px auto 20px;
		padding: 2%;
	}

	.news_top article {
		margin-bottom: 20px;
		display: flex;
		flex-direction: column;
		border-bottom: 2px dotted #DDDDDD;
	}

	.news_top article .inner {
		width: 100%;
		display: flex;
		flex-direction: row;
		align-items: center;
		border-bottom: 2px solid #266BB3;
		padding-bottom: 7px;
		margin-bottom: 10px;
	}

	p.news_date {
		font-size: 15px;
		margin-right: 20px;
	}

	p.news_icon {
		font-size: 12px;
		color: #FF4D4D;
		font-weight: bold;
	}

	.news_cont {
		width: 100%;
		padding-bottom: 10px;
		font-size: 14px;
		line-height: normal;
	}
}

@media (min-width: 768px) {
	.news_top {
		width: 720px;
		margin: 30px auto 50px;
	}

	.news_top article {
		margin-bottom: 20px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		border-bottom: 2px solid #DDDDDD;
	}

	.news_top article .inner {
		width: 170px;
		display: flex;
		flex-direction: row;
		align-items: center;
		border-bottom: 2px solid #266BB3;
		padding-bottom: 10px;
		margin-bottom: -2px;
	}

	p.news_date {
		font-size: 14px;
		margin-right: 20px;
	}

	p.news_icon {
		font-size: 12px;
		color: #FF4D4D;
		font-weight: bold;
	}

	.news_cont {
		width: calc(720px - 190px);
		padding-bottom: 10px;
		font-size: 14px;
		line-height: normal;
	}
}

@media (min-width: 992px) {
	.news_top {
		width: 900px;
		margin: 50px auto 70px;
		max-height: 400px;
		overflow-y: scroll;
	}

	.news_top article {
		margin-bottom: 20px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		border-bottom: 2px solid #DDDDDD;
	}

	.news_top article .inner {
		width: 170px;
		display: flex;
		flex-direction: row;
		align-items: center;
		border-bottom: 2px solid #266BB3;
		padding-bottom: 10px;
		margin-bottom: -2px;
	}

	p.news_date {
		font-size: 15px;
		margin-right: 20px;
	}

	p.news_icon {
		font-size: 12px;
		color: #FF4D4D;
		font-weight: bold;
	}

	.news_cont {
		width: calc(820px - 150px);
		padding-bottom: 10px;
		font-size: 15px;
		line-height: normal;
	}
}


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

@media (max-width: 767px) {
	footer {
		padding: 20px 0 0;
		background-color: #fff;
	}

	.info_fl {
		width: 100%;
	}

	.info_fr {
		width: 100%;
	}

	p.logo_f {
		width: 240px;
		margin: 0 auto 20px;
	}

	p.text_f {
		font-size: 14px;
		text-align: center;
	}

	.info_fr .inner {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	p.tel_f {
		font-size: 17px;
		color: #0C5BAA;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 5px;
	}

	p.btn_contact_f a {
		display: block;
		font-size: 16px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		width: 330px;
		height: 42px;
		background-color: #F259A6;
		text-align: center;
		line-height: 42px;
	}

	p.btn_contact_f a:before {
		content: "\f0e0";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
	}

	ul.fnav {
		display: none;
	}

	p.copyright {
		font-size: 11px;
		color: #D3D3D3;
		width: 100%;
		background-color: #555;
		width: 100%;
		height: 30px;
		text-align: center;
		line-height: 30px;
	}

	p.pagetop a {
		position: fixed;
		bottom: 50px;
		right: 25px;
		width: 32px;
		height: 32px;
		z-index: 999999;
	}

	p.pagetop a img {
		width: 32px;
		height: auto;
	}
}


@media (min-width: 768px) {
	footer {
		padding: 70px 0 0;
		background-color: #fff;
	}

	.info_fl {
		width: 40%;
	}

	.info_fr {
		width: 55%;
	}

	p.logo_f {
		width: 300px;
		margin-bottom: 20px;
	}

	p.text_f {
		font-size: 15px;
	}

	.info_fr .inner {
		display: flex;
		flex-direction: row;
		align-items: center;
	}

	p.tel_f {
		font-size: 16px;
		color: #0C5BAA;
		font-family: 'M PLUS 1p', sans-serif;
		margin-right: 30px;
	}

	p.btn_contact_f a {
		display: block;
		font-size: 16px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		width: 330px;
		height: 42px;
		background-color: #F259A6;
		text-align: center;
		line-height: 42px;
	}

	p.btn_contact_f a:before {
		content: "\f0e0";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
	}

	ul.fnav {
		background-color: #085AAC;
		width: 100%;
		height: 60px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		margin-top: 30px;
		margin-bottom: 0;
	}

	ul.fnav li a {
		font-size: 15px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-right: 70px;
	}

	ul.fnav li:last-child a {
		margin-right: 0;
	}

	p.copyright {
		font-size: 11px;
		color: #D3D3D3;
		width: 100%;
		background-color: #555;
		width: 100%;
		height: 40px;
		text-align: center;
		line-height: 40px;
	}

	p.pagetop a {
		position: fixed;
		bottom: 50px;
		right: 30px;
		width: 40px;
		height: 40px;
		z-index: 999999;
	}
}

@media (min-width: 992px) {
	footer {
		padding: 50px 0 0;
	}

	.info_fl {
		width: 40%;
	}

	.info_fr {
		width: 55%;
	}

	p.logo_f {
		width: 340px;
	}

	p.text_f {
		font-size: 15px;
	}

	p.tel_f {
		font-size: 19px;
		margin-right: 40px;
	}

	p.btn_contact_f a {
		font-size: 16px;
		width: 330px;
		height: 42px;
	}

	p.btn_contact_f a:before {
		content: "\f0e0";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
	}

	ul.fnav {
		width: 100%;
		height: 70px;
		margin-top: 30px;
	}

	ul.fnav li a {
		font-size: 15px;
		margin-right: 70px;
	}

	ul.fnav li:last-child a {
		margin-right: 0;
	}

	p.pagetop a {
		bottom: 55px;
		right: 30px;
	}
}

@media (min-width: 1200px) {
	footer {
		padding: 70px 0 0;
	}

	.info_fl {
		width: 45%;
	}

	.info_fr {
		width: 45%;
	}

	p.logo_f {
		width: 405px;
	}

	p.text_f {
		font-size: 15px;
	}

	p.tel_f {
		font-size: 19px;
		margin-right: 40px;
	}

	p.btn_contact_f a {
		font-size: 16px;
		width: 330px;
		height: 42px;
	}

	p.btn_contact_f a:before {
		content: "\f0e0";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
	}

	ul.fnav {
		width: 100%;
		height: 70px;
		margin-top: 50px;
	}

	ul.fnav li a {
		font-size: 15px;
		margin-right: 70px;
	}

	ul.fnav li:last-child a {
		margin-right: 0;
	}

	p.pagetop a {
		bottom: 55px;
		right: 30px;
	}
}

/* サブページ共通
=========================================================================== */
@media (max-width: 767px) {
	.bg_sub {
		width: 100%;
		height: 240px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		margin-top: 75px;
	}

	h2.sub {
		font-size: 27px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		text-align: center;
		margin-top: 10px;
	}

	h2.sub span {
		font-size: 16px;
		display: block;
		margin-top: 10px;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 768px) {
	.bg_sub {
		width: 100%;
		height: 300px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		margin-top: 75px;
	}

	h2.sub {
		font-size: 34px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		text-align: center;
		margin-top: 10px;
	}

	h2.sub span {
		font-size: 21px;
		display: block;
		margin-top: 10px;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 992px) {
	.bg_sub {
		width: 100%;
		height: 300px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		margin-top: 0;
	}

	h2.sub {
		font-size: 34px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		text-align: center;
		margin-top: 10px;
	}

	h2.sub span {
		font-size: 21px;
		display: block;
		margin-top: 15px;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 1200px) {
	.bg_sub {
		width: 100%;
		height: 300px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	h2.sub {
		font-size: 34px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		text-align: center;
		margin-top: 10px;
	}

	h2.sub span {
		font-size: 21px;
		display: block;
		margin-top: 15px;
		letter-spacing: 0.05em;
	}
}



.bg_works {
	background: url(../images/bg_works.jpg) center top /cover no-repeat;
}

.bg_example {
	background: url(../images/bg_example.jpg) center top /cover no-repeat;
}

.bg_recruit {
	background: url(../images/bg_recruit.jpg) center top /cover no-repeat;
}

.bg_company {
	background: url(../images/bg_company.jpg) center top /cover no-repeat;
}


/* works.html　事業内容
=========================================================================== */

#works01,
#works02,
#works03,
#works04 {
	margin-top: -40px;
	padding-top: 40px;
}

@media (max-width: 767px) {
	.bg_works01 {
		/*	background-color: #E7F7FC;*/
		padding: 30px 0 30px;
	}

	p.ttl_sub {
		font-size: 16px;
		color: #0C59AC;
		text-align: center;
		letter-spacing: 0.05em;
		font-family: 'M PLUS 1p', sans-serif;
	}

	p.ttl_sub:after {
		content: '';
		display: block;
		width: 60px;
		height: 3px;
		background-color: #3961AB;
		margin: 20px auto 20px;
	}

	p.text_c {
		font-size: 14px;
		text-align: left;
		letter-spacing: 0;
		line-height: 1.8;
	}

	.pic_works h3 {
		width: 70%;
		height: 70px;
		font-size: 21px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.04em;
		position: absolute;
		top: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.pic_works h3 span {
		display: block;
		font-size: 16px;
		letter-spacing: 0;
		margin-top: 5px;
	}

	.inner_works {
		background-color: #F6F6F6;
		padding: 15px;
	}

	.inner_works p.text {
		font-size: 14px;
		letter-spacing: 0.02em;
		line-height: 1.8;
	}
}

@media (min-width: 768px) {
	.bg_works01 {
		/*	background-color: #E7F7FC;*/
		padding: 40px 0 30px;
	}

	p.ttl_sub {
		font-size: 20px;
		color: #0C59AC;
		text-align: center;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
	}

	p.ttl_sub:after {
		content: '';
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto 25px;
	}

	p.text_c {
		font-size: 15px;
		text-align: center;
		letter-spacing: 0;
		line-height: 1.8;
	}

	.pic_works h3 {
		width: 500px;
		height: 80px;
		font-size: 27px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.07em;
		position: absolute;
		top: 0;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	.pic_works h3 span {
		font-size: 21px;
		letter-spacing: 0;
	}

	.inner_works {
		background-color: #F6F6F6;
		padding: 30px;
	}

	.inner_works p.text {
		font-size: 15px;
		letter-spacing: 0.02em;
		line-height: 1.8;
	}
}

@media (min-width: 992px) {
	.bg_works01 {
		/*	background-color: #E7F7FC;*/
		padding: 50px 0;
	}

	p.ttl_sub {
		font-size: 22px;
		color: #0C59AC;
		text-align: center;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
	}

	p.ttl_sub:after {
		content: '';
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto 25px;
	}

	p.text_c {
		font-size: 15px;
		text-align: center;
		letter-spacing: 0.02em;
		line-height: 1.8;
	}

	.pic_works h3 {
		width: 730px;
		height: 90px;
		font-size: 30px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.07em;
		position: absolute;
		top: 0;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	.pic_works h3 span {
		font-size: 23px;
		letter-spacing: 0;
	}

	.inner_works {
		background-color: #F6F6F6;
		padding: 30px;
	}

	.inner_works p.text {
		font-size: 15px;
		letter-spacing: 0.02em;
		line-height: 1.8;
	}
}

.pic_works {
	position: relative;
}

.pic_works01 {
	border-top: 5px solid #33B5E1;
}

.pic_works02 {
	border-top: 5px solid #E1E133;
}

.pic_works03 {
	border-top: 5px solid #FF9933;
}

.pic_works04 {
	border-top: 5px solid #33E15E;
}

h3.works01 {
	background-color: rgba(0, 163, 217, 0.8);
	left: 0;
}

h3.works02 {
	background-color: rgba(217, 217, 0, 0.8);
	right: 0;
}

h3.works03 {
	background-color: rgba(255, 128, 0, 0.8);
	left: 0;
}

h3.works04 {
	background-color: rgba(0, 217, 54, 0.8);
	right: 0;
}

@media (max-width: 767px) {
	ul.pic3 {
		width: 100%;
		margin-top: 20px;
	}

	ul.pic3 li {
		width: 31%;
		float: left;
		position: relative;
		margin-right: 3.5%;
	}

	ul.pic3 li:last-child {
		margin-right: 0;
	}

	ul.pic3 li:after {
		content: "\f00e";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
		font-size: 16px;
		color: #fff;
		position: absolute;
		bottom: 5px;
		right: 5px;
		text-shadow: 1px 1px 5px #999;
	}
}

@media (min-width: 768px) {
	ul.pic3 {
		width: 100%;
		margin-top: 20px;
	}

	ul.pic3 li {
		width: 31%;
		float: left;
		position: relative;
		margin-right: 3.5%;
		position: relative;
	}

	ul.pic3 li:last-child {
		margin-right: 0;
	}

}



/* example.html　施工実績
=========================================================================== */

@media (max-width: 767px) {
	article.example h3 {
		width: 100%;
		padding: 0.8em;
		background-color: #0A69C9;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		font-size: 17px;
		display: flex;
		flex-direction: row;
		align-items: center;
		position: relative;
		margin-bottom: 20px;
		line-height: 1.4;
	}

	article.example h3:before {
		content: '';
		display: inline-block;
		width: 10px;
		height: 10px;
		background-color: #333;
		margin-right: 10px;
	}

	article.example h3 span {
		display: none;
	}
}

@media (min-width: 768px) {
	article.example h3 {
		width: 100%;
		padding: 0.8em;
		background-color: #0A69C9;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		font-size: 22px;
		display: flex;
		flex-direction: row;
		align-items: center;
		position: relative;
		margin-bottom: 20px;
	}

	article.example h3:before {
		content: '';
		display: inline-block;
		width: 20px;
		height: 7px;
		background-color: #333;
		margin-right: 15px;
	}

	article.example h3 span {
		font-size: 18px;
		color: #67b3ff;
		font-family: 'Dancing Script', cursive;
		display: block;
		position: absolute;
		top: 20px;
		right: 20px;
	}
}


@media (max-width: 767px) {
	article.example p.pic {
		width: 100%;
		margin-bottom: 25px;
		background-color: #f3f3f3;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		position: relative;
	}

	article.example p.pic:after {
		content: "\f00e";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
		font-size: 18px;
		color: #fff;
		position: absolute;
		bottom: 10px;
		right: 10px;
		text-shadow: 1px 1px 5px #999;
	}

	article.example p.pic img {
		max-height: 200px;
	}
}

@media (min-width: 768px) {
	article.example p.pic {
		width: 23%;
		margin-bottom: 25px;
		background-color: #f3f3f3;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		position: relative;
	}

	article.example p.pic:after {
		content: "\f00e";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
		font-size: 18px;
		color: #fff;
		position: absolute;
		bottom: 10px;
		right: 10px;
		text-shadow: 1px 1px 5px #999;
	}

	article.example p.pic img {
		max-width: 165.5px;
		max-height: 200px;
	}

	article.example .flex_b:before {
		content: '';
		display: block;
		width: 23%;
		order: 1;
	}

	article.example .flex_b:after {
		content: '';
		display: block;
		width: 23%;
	}

}

@media (min-width: 992px) {
	article.example p.pic:after {
		font-size: 21px;
	}

	article.example p.pic img {
		max-width: 216px;
		max-height: 200px;
	}
}

@media (min-width: 1200px) {
	article.example p.pic:after {
		font-size: 24px;
	}

	article.example p.pic img {
		max-width: 262px;
		max-height: 200px;
	}
}

/* recruit.html　採用情報
=========================================================================== */

@media (max-width: 767px) {

	#recruit01,
	#recruit02,
	#recruit03,
	#recruit04 {
		margin-top: -100px;
		padding-top: 100px;
	}

}

@media (min-width: 768px) {

	#recruit01,
	#recruit02,
	#recruit03,
	#recruit04 {
		margin-top: -30px;
		padding-top: 30px;
	}

}

@media (max-width: 767px) {
	.bg_recruit01 {
		width: 100%;
		background: url(../images/bg_top01.jpg) center top /100% auto no-repeat;
		padding: 30px 0 0;
	}

	ul.nav_recruit {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 20px;
	}

	ul.nav_recruit li {
		width: 100%;
		margin-bottom: 10px;
	}

	ul.nav_recruit li a {
		display: block;
		background-color: #DCEDFE;
		padding: 0.6em;
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		font-size: 15px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
	}

	ul.nav_recruit li a:before {
		content: "\f0d7";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 8px;
	}
}

@media (min-width: 768px) {
	.bg_recruit01 {
		width: 100%;
		background: url(../images/bg_top01.jpg) center top /100% auto no-repeat;
		padding: 70px 0 0;
	}

	ul.nav_recruit {
		width: 100%;
		display: flex;
		flex-direction: row;
		align-items: center;
		margin-bottom: 50px;
	}

	ul.nav_recruit li {
		width: 23.5%;
		margin-right: 2%;
	}
	
	ul.nav_recruit li:nth-child(4n) {
		margin-right: 0;
	}

	ul.nav_recruit li a {
		display: block;
		background-color: #DCEDFE;
		height: 56px;
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		font-size: 15px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0;
	}

	ul.nav_recruit li a:before {
		content: "\f0d7";
		font-family: 'Font Awesome\ 5 Free';
		font-weight: 900;
		margin-right: 5px;
	}
}

@media (min-width: 992px) {
	ul.nav_recruit li {
		width: 23.5%;
	}

	ul.nav_recruit li a {
		font-size: 16px;
	}
}

@media (min-width: 1200px) {
	ul.nav_recruit li {
		width: 23.5%;
	}

	ul.nav_recruit li a {
		font-size: 18px;
	}
}

@media (max-width: 767px) {
	h3.sub {
		font-size: 22px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		text-align: center;
		margin-bottom: 25px;
	}

	h3.sub span {
		display: block;
		font-size: 16px;
		color: #2DCBFF;
		text-align: center;
		margin-top: 10px;
		letter-spacing: 0.25em;
	}

	.h3_bdr {
		border-bottom: 3px solid #085AAC;
		padding-bottom: 15px;
		margin-bottom: 30px;
	}

	.bdr_cont:after {
		content: '';
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto;
	}
}

@media (min-width: 768px) {
	h3.sub {
		font-size: 24px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.2em;
		text-align: center;
		margin-bottom: 25px;
	}

	h3.sub span {
		display: block;
		font-size: 16px;
		color: #2DCBFF;
		text-align: center;
		margin-top: 10px;
		letter-spacing: 0.25em;
	}

	.h3_bdr {
		border-bottom: 3px solid #085AAC;
		padding-bottom: 15px;
		margin-bottom: 30px;
	}

	.bdr_cont:after {
		content: '';
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto;
	}
}

@media (min-width: 992px) {
	h3.sub {
		font-size: 28px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.2em;
		text-align: center;
		margin-bottom: 25px;
	}

	h3.sub span {
		display: block;
		font-size: 17px;
		color: #2DCBFF;
		text-align: center;
		margin-top: 10px;
		letter-spacing: 0.25em;
	}

	.h3_bdr {
		border-bottom: 3px solid #085AAC;
		padding-bottom: 15px;
		margin-bottom: 30px;
	}

	.bdr_cont:after {
		content: '';
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto;
	}
}

@media (min-width: 1200px) {
	h3.sub {
		font-size: 34px;
		color: #0C59AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.2em;
		text-align: center;
		margin-bottom: 25px;
	}

	h3.sub span {
		display: block;
		font-size: 18px;
		color: #2DCBFF;
		text-align: center;
		margin-top: 10px;
		letter-spacing: 0.25em;
	}

	.h3_bdr {
		border-bottom: 3px solid #085AAC;
		padding-bottom: 15px;
		margin-bottom: 30px;
	}

	.bdr_cont:after {
		content: '';
		display: block;
		width: 80px;
		height: 3px;
		background-color: #3961AB;
		margin: 30px auto;
	}
}

@media (max-width: 767px) {
	.cont_recruit01 {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.cont_recruit01 dl dt {
		font-size: 16px;
		color: #3961AB;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 5px;
	}

	.cont_recruit01 dl dd {
		font-size: 14px;
		color: #333;
		letter-spacing: 0.05em;
		line-height: 1.6;
	}
}

@media (min-width: 768px) {
	.cont_recruit01 {
		width: 50%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	.cont_recruit01 dl {
		margin-bottom: 10px;
	}

	.cont_recruit01 dl dt {
		font-size: 16px;
		color: #085AAC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 5px;
	}

	.cont_recruit01 dl dd {
		font-size: 14px;
		color: #333;
		letter-spacing: 0.02em;
		line-height: 1.6;
	}
}

@media (min-width: 992px) {
	.cont_recruit01 {
		width: 50%;
		background-color: #085AAC;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	.cont_recruit01 dl dt {
		font-size: 16px;
		color: #91E3FF;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 5px;
	}

	.cont_recruit01 dl dd {
		font-size: 14px;
		color: #fff;
		letter-spacing: 0.05em;
		line-height: 1.8;
	}
}

@media (min-width: 1200px) {
	.cont_recruit01 {
		width: 50%;
		background-color: #085AAC;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	.cont_recruit01 dl dt {
		font-size: 18px;
		color: #91E3FF;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 5px;
	}

	.cont_recruit01 dl dd {
		font-size: 15px;
		color: #fff;
		letter-spacing: 0.05em;
		line-height: 1.8;
	}
}

@media (max-width: 767px) {
	.inner_recruit02 {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.inner_recruit02 article {
		width: 100%;
		background-color: #F2F2F2;
		margin-bottom: 20px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 10px;
	}

	.inner_recruit02 article p.icon {
		margin-bottom: 10px;
	}

	.inner_recruit02 article p.icon img {
		max-width: 60px;
		max-height: 50px;
	}

	.inner_recruit02 article p.text {
		font-size: 16px;
		color: #0759AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
	}

	.mb_pic_recruit {
		margin-bottom: 20px;
	}
}

@media (min-width: 768px) {
	.inner_recruit02 {
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: space-around;
		flex-wrap: wrap;
		align-items: center;
	}

	.inner_recruit02 article {
		width: 28%;
		background-color: #F2F2F2;
		margin-bottom: 20px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: stretch;
		padding: 20px;
	}

	.inner_recruit02 article p.icon {
		margin-bottom: 15px;
	}

	.inner_recruit02 article p.icon img {
		max-width: 60px;
		max-height: 50px;
	}

	.inner_recruit02 article p.text {
		font-size: 17px;
		color: #0759AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
		text-align: center;
	}
}

@media (min-width: 992px) {
	.inner_recruit02 {
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: space-around;
		flex-wrap: wrap;
		align-items: center;
	}

	.inner_recruit02 article {
		width: 32%;
		background-color: #F2F2F2;
		margin-bottom: 20px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 30px;
	}

	.inner_recruit02 article p.icon {
		margin-bottom: 15px;
	}

	.inner_recruit02 article p.text {
		font-size: 17px;
		color: #0759AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 1200px) {
	.inner_recruit02 {
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: space-around;
		flex-wrap: wrap;
		align-items: center;
	}

	.inner_recruit02 article {
		width: 28%;
		background-color: #F2F2F2;
		margin-bottom: 20px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 30px;
	}

	.inner_recruit02 article p.icon {
		margin-bottom: 10px;
	}

	.inner_recruit02 article p.text {
		font-size: 18px;
		color: #0759AC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.05em;
	}
}

#interview {
	margin-top: -40px;
	padding-top: 40px;
}

@media (max-width: 767px) {
	.interview {
		width: 100%;
	}

	p.name_staff {
		background-color: #085AAC;
		height: 100px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 21px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.2em;
		margin-bottom: 20px;
	}

	p.name_staff span {
		font-size: 15px;
		display: inline-block;
		margin-top: 10px;
	}

	.interview .inner {
		background-color: #cee4fa;
		padding: 20px 10px;
	}

	p.ttl_schedule {
		font-size: 18px;
		color: #085AAC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		padding-bottom: 10px;
		border-bottom: 2px dashed #085AAC;
		margin-bottom: 10px;
		text-align: center;
	}

	ul.schedule {
		margin-bottom: 0;
	}

	ul.schedule li {
		font-size: 15px;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 10px;
	}

	ul.schedule li span {
		font-size: 13px;
		background-color: #b1c7dd;
		padding: 5px 10px;
		width: 70px;
		display: inline-block;
		margin-right: 10px;
		text-align: center;
	}

	ul.schedule li:last-child {
		margin-bottom: 0;
	}

	p.question {
		font-size: 16px;
		color: #0659AC;
		letter-spacing: 0.05em;
		font-family: 'M PLUS 1p', sans-serif;
		display: flex;
		flex-direction: row;
		align-items: center;
		padding-bottom: 5px;
		border-bottom: 1px dashed #085AAC;
		margin-bottom: 20px;
	}

	p.question span {
		width: 30px;
		height: 30px;
		border-radius: 50%;
		color: #fff;
		font-size: 16px;
		text-align: center;
		line-height: 30px;
		display: inline-block;
		margin-right: 10px;
		background-color: #0659AC;
	}

	.interview p.text {
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 768px) {
	.interview {
		width: 47%;
	}

	p.name_staff {
		background-color: #085AAC;
		height: 90px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		font-size: 24px;
		color: #fff;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.2em;
		margin-bottom: 20px;
	}

	p.name_staff span {
		font-size: 15px;
		display: inline-block;
		margin-left: 30px;
	}

	.interview .inner {
		background-color: #eff8ff;
		padding: 20px 20px;
	}

	p.ttl_schedule {
		font-size: 20px;
		color: #085AAC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		padding-bottom: 10px;
		border-bottom: 2px dashed #085AAC;
		margin-bottom: 15px;
		text-align: center;
	}

	ul.schedule {
		margin-bottom: 0;
	}

	ul.schedule li {
		font-size: 16px;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 15px;
	}

	ul.schedule li span {
		font-size: 14px;
		background-color: #b1c7dd;
		padding: 5px 10px;
		width: 60px;
		display: inline-block;
		margin-right: 15px;
	}

	ul.schedule li:last-child {
		margin-bottom: 0;
	}

	p.question {
		font-size: 16px;
		color: #0659AC;
		letter-spacing: 0.05em;
		font-family: 'M PLUS 1p', sans-serif;
		display: flex;
		flex-direction: row;
		align-items: center;
		padding-bottom: 5px;
		border-bottom: 1px dashed #085AAC;
		margin-bottom: 20px;
	}

	p.question span {
		width: 30px;
		height: 30px;
		border-radius: 50%;
		color: #fff;
		font-size: 16px;
		text-align: center;
		line-height: 30px;
		display: inline-block;
		margin-right: 10px;
		background-color: #0659AC;
	}

	.interview p.text {
		font-size: 14px;
		line-height: 1.8;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 992px) {
	ul.schedule li {
		font-size: 16px;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 20px;
	}

	ul.schedule li span {
		font-size: 14px;
		background-color: #b1c7dd;
		padding: 5px 10px;
		width: 74px;
		display: inline-block;
		margin-right: 15px;
	}
}

@media (min-width: 1200px) {
	ul.schedule li {
		font-size: 18px;
		letter-spacing: 0.1em;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 20px;
	}

	ul.schedule li span {
		font-size: 15px;
		background-color: #b1c7dd;
		padding: 5px 10px;
		width: 74px;
		display: inline-block;
		margin-right: 15px;
	}
}

@media (max-width: 767px) {
	table.recruit {
		width: 100%;
		border-top: 1px solid #aaa;
		border-left: 1px solid #aaa;
	}

	table.recruit th {
		width: 100%;
		display: block;
		border-bottom: 1px solid #aaa;
		border-right: 1px solid #aaa;
		padding: 10px 20px;
		background-color: #B4D0F3;
		font-size: 15px;
		line-height: 1.6;
		font-weight: bold;
	}

	table.recruit td {
		width: 100%;
		display: block;
		border-bottom: 1px solid #aaa;
		border-right: 1px solid #aaa;
		padding: 10px 20px;
		background-color: #fff;
		font-size: 15px;
		line-height: 1.6;
	}
}

@media (min-width: 768px) {
	table.recruit {
		width: 100%;
	}

	table.recruit th {
		width: 300px;
		border: 1px solid #aaa;
		padding: 15px 20px;
		background-color: #B4D0F3;
		font-size: 15px;
		line-height: 1.6;
		font-weight: bold;
	}

	table.recruit td {
		border: 1px solid #aaa;
		padding: 15px 20px;
		background-color: #fff;
		font-size: 15px;
		line-height: 1.6;
	}
}

@media (max-width: 767px) {
	.contact_recruit {
		width: 100%;
		max-width: 480px;
		border: 2px solid #0659AC;
		background-color: #DCEDFE;
		padding: 20px;
		text-align: center;
		margin: 0 auto;
	}

	.contact_recruit p.ttl {
		font-size: 15px;
		color: #0759AC;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
	}

	.contact_recruit p.tel_recruit {
		font-size: 21px;
		color: #0759AC;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
		font-family: 'M PLUS 1p', sans-serif;
	}

	.contact_recruit p.text {
		font-size: 14px;
		color: #0759AC;
		letter-spacing: 0.05em;
	}
}

@media (min-width: 768px) {
	.contact_recruit {
		width: 640px;
		border: 2px solid #0659AC;
		background-color: #DCEDFE;
		padding: 30px;
		text-align: center;
		margin: 0 auto;
	}

	.contact_recruit p.ttl {
		font-size: 18px;
		color: #0759AC;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
	}

	.contact_recruit p.tel_recruit {
		font-size: 30px;
		color: #0759AC;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
		font-family: 'M PLUS 1p', sans-serif;
	}

	.contact_recruit p.text {
		font-size: 16px;
		color: #0759AC;
		letter-spacing: 0.05em;
	}
}



/* company.html　会社概要
=========================================================================== */

@media (max-width: 767px) {
	h3.company {
		width: 100%;
		background-color: #F8F8F8;
		padding: 10px 15px;
		display: flex;
		flex-direction: row;
		align-items: center;
		position: relative;
		font-size: 18px;
		color: #085AAC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 20px;
	}

	h3.company:before {
		content: '';
		display: inline-block;
		width: 8px;
		height: 40px;
		background-color: #085AAC;
		margin-right: 10px;
	}

	h3.company span {
		display: block;
		font-size: 14px;
		font-family: 'Dancing Script', cursive;
		color: #085AAC;
		position: absolute;
		top: 20px;
		right: 20px;
	}
}

@media (min-width: 768px) {
	h3.company {
		width: 100%;
		background-color: #F8F8F8;
		padding: 10px 20px;
		display: flex;
		flex-direction: row;
		align-items: center;
		position: relative;
		font-size: 24px;
		color: #085AAC;
		font-family: 'M PLUS 1p', sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 20px;
	}

	h3.company:before {
		content: '';
		display: inline-block;
		width: 8px;
		height: 40px;
		background-color: #085AAC;
		margin-right: 15px;
	}

	h3.company span {
		display: block;
		font-size: 16px;
		font-family: 'Dancing Script', cursive;
		color: #085AAC;
		position: absolute;
		top: 20px;
		right: 20px;
	}
}


@media (max-width: 767px) {
	table.company {
		width: 100%;
		border-top: 1px solid #ddd;
		border-left: 1px solid #ddd;
	}

	table.company th {
		display: block;
		width: 100%;
		background-color: #95c6ea;
		padding: 10px 10px;
		font-size: 14px;
		border-bottom: 1px solid #ddd;
		border-right: 1px solid #ddd;
	}

	table.company td {
		display: block;
		padding: 10px 10px;
		font-size: 14px;
		border-bottom: 1px solid #ddd;
		border-right: 1px solid #ddd;
		background-color: #fff;
	}
}

@media (min-width: 768px) {
	table.company {
		width: 100%;
		box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.05);
	}

	table.company th {
		width: 240px;
		background-color: #95c6ea;
		padding: 20px 25px;
		font-size: 14px;
		border: 1px solid #fffbef;
	}

	table.company td {
		padding: 20px 25px;
		font-size: 14px;
		border: 1px solid #c5e6ff;
		background-color: #fff;
	}
}

p.btn_map a {
	display: block;
	border: 1px solid #333;
	font-size: 14px;
	text-align: center;
	width: 270px;
	height: 46px;
	line-height: 46px;
	margin: 10px auto 0;
}

p.btn_map a:after {
	content: "\f061";
	font-family: 'Font Awesome\ 5 Free';
	font-weight: 900;
	margin-left: 8px;

}


/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */

/* = */
