@charset "UTF-8";

/*スタイルシートの中で sanitize.css を読み込み、リセットします。*/
@import url(/css/sanitize.css);
/*フォントを統一するためにGoogle の 日本語対応の Web フォント を利用します。*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html {
  font-size: 62.5%;
}

body {
	font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  font-size: 1.6rem;
	line-height: 1.6em;	
	-webkit-text-size-adjust: 100%;
  background-color: #FFF;
	width: 100%;
	margin: 0 auto;
}
*, *::before, *::after {
  box-sizing: border-box;
}
a:link, a:visited, a:hover, a:active {
  color: #FFF;
  text-decoration: none;
}
html, body {
width: auto !important;
overflow-x: hidden !important;
}

a:hover {
	color: #FFF;
	text-decoration: none;
}

a,a:hover {
	-webkit-transition: 0.6s;
	-moz-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}

a img:hover {
	-webkit-transition: 0.4s;
	-moz-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
	opacity:0.6;
	filter: alpha(opacity=60);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=60)";  /* ie 8 */
	-moz-opacity:0.6;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.6;              /* Safari 1.x */
	zoom:1;	
}

.pc_none{display:none;}
.floatL{float:left;}
.floatR{float:right;}
.textL{text-align:left;}
.textR{text-align:right;}
.textC{text-align: center;}
.txt_indent{
	padding-left:1em;
	text-indent:-1em;
}
.txtS{font-size: 80%;}
.red{color:#ee6100;}
.bold{font-weight:bold;}
.img_center{vertical-align:inherit;}
.inBlock{display: inline-block}
.flex{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.txtBlue{
	color: #284f9e;
}

@media screen and (max-width: 999px) {
	.tab_none{display:none;}
	.pc_none{display: block;}

	img{
		max-width:100%;
		height:auto;
	}
	
	.brPc{
		display: none !important;
	}
}

@media screen and (max-width: 767px) {
	
	.sp_none{display:none;}
		.pc_none{display: block;}
	img{
		max-width:100%;
		height:auto;
	}
}


/* コンテンツ共通
---------------------------------------------------------------------- */
#wrapper{
	position: relative;
}

.secWrap01{
	width: 1000px;
	margin: 0 auto;
}

.secWrap02{
	width: 800px;
	margin: 0 auto;
}

.bgBlue{
	background: #284f9e;
	padding: 30px 0;
	margin-top: 80px;
}

.bgBlue h2,
.bgBlue h3{
	color: #FFF;
}


main{
	padding-top: 80px;
}

main h2{
	text-align: center;
}


.brSp{
	display: none;
}
	

.ttl{
	background: url(../images/common/ttl_bg.jpg) no-repeat center;
	background-size: cover;
	width: 100%;
	height: 350px;
	margin-bottom: 100px;
}

.ttl h2{
	padding-top: 80px;
}

.tel-mobile {
    display: none;
}


.subPageH3 {
  position: relative;
  display: block;
	font-size: 3rem;
  margin-bottom: 2em;
	padding: 1rem 0;
	text-align: center;
	color: #284f9e;
	font-weight: bold;
	line-height: 1.4;
}

.subPageH3:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color:#284f9e;
  border-radius: 2px;
}

.subPageH2{
	margin: 8% auto;
	color: #284f9e;
	font-size: 1.8rem;
	font-weight: normal;
}

.subPageH2 span{
	font-family: 'Renner*';
	font-size: 3.4rem;
	font-weight: 500;
}

.bgBlueTtl{
	color: #fff;
}

.bgBlueTtl {
  position: relative;
  display: block;
	font-size: 1.6rem;
  margin-bottom: 2em;
	padding: 1rem 0;
	text-align: center;
}

.bgBlueTtl:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color:#FFF;
  border-radius: 2px;
}

.bgBlueTtl span{
	font-family: 'Renner*';
	font-size: 3.4rem;
	font-weight: 400;
}

.bgBlue .subPageH3:before{
	background-color:#FFF;
}

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

	.secWrap01{
		width: 90%;
		margin: 0 auto;
	}
	
	.secWrap02{
		width: 90%;
		margin: 0 auto;
	}

	main{
		padding-top: 77px;
	}
	
	.ttl{
		margin-bottom: 50px;
	}
	
	.ttl h2 {
    padding-top: 80px;
    min-height: 210px;
	}
	
	.sv{
		margin-bottom: 100px;
	}
}


@media screen and (max-width: 767px) {
	.ttl{
		margin-bottom: 50px;
		height: auto;
	}
	
	.ttl h2 {
		/*max-width: 70%;*/
		margin: 0 auto;
		padding: 50px 0;
		min-height: 195px;
	}
	
	.ttl h2 img{
		max-width: 50%;
	}
	
	.brPc{
		display: none;
	}
	
	.brSp{
		display: block;
	}
	
	.tel-pc{
		display: none;
	}
	
	.tel-mobile{
		display:inline;
	}

	.tel-mobile a{
		color: #284f9e;
		text-decoration:underline;
	}
	
	.subPageH2{
		margin-bottom: 15%;
	}
	
	.subPageH3 {
		line-height: 1.4em;
	}
	
	.subPageH3:before {
    bottom: -5px;
	}
	
	
}

/* ヘッダー
---------------------------------------------------------------------- */
header{
	font-family: 'Renner*';
	background: #284f9e;
	padding: 25px 0;
	font-size: 1.8rem;
	letter-spacing:0.1em;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999999;
}

header h1{
	width: 284px;
	float: left;
}

header nav{
	float: right;
	color: #FFF;
}

header nav ul{
	display: flex;
	justify-content: flex-end;
	margin-top: 3px;
}

header nav ul li{
	margin-left: 30px;	
}

.gNavOn{
	border-bottom: 2px #FFF solid;
}

.headNavSv{
	position: relative;
}

.headNavSv:after{
	content: url(../images/common/aroow_down.png);
	position: absolute;
	bottom: -16px;
	left: 44%;
}

.headNavSv ul{
	display: block;
	margin-top: 7px;
	font-size: 1.4rem;
}

.headNavSv ul li{
	margin-bottom: 10px;
}

/*ドロップダウンここから*/
.headNavSv ul.headNavSvIn {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}

header nav ul > li.headNavSv {
    position: relative;
}

li.headNavSv ul.headNavSvIn {
    position: absolute;
    top: 0;
		left: -55%;
    width: 100%;
		min-width: 180px;
    background: #FFF;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
		text-align: left;
		font-size: 1.4rem;
		padding: 10px 15px 0;
}

li.headNavSv ul.headNavSvIn a{
		color: #284f9e;
}

li.headNavSv:hover ul.headNavSvIn {
    top: 45px;
    visibility: visible;
    opacity: 1;
}

li.headNavSv:hover ul.headNavSvIn li{
	margin-left: 0;
}

.headNavSv li{
	position: relative;
	padding-left: 10px;
}

.headNavSv li:before{
	content: url(../images/common/arrow_right_bl.png);
	position: absolute;
	bottom: 2px;
	left: 0;
}

.headNavSvIn .finance{
	color: #284f9e;
}

.headNavSvIn .finance:before{
	content: none;
}

/*FINANCEドロップダウン*/
.headNavSvIn ul{
	margin-top: 0;
}

.headNavSvIn ul li{
	font-size: 1.2rem;
	padding-top: 0;
	padding-left: 15px
}

.headNavSvIn ul li{
	margin-bottom: 0;
}

.headNavSvIn ul li:before{
	bottom: 1px;
}

/*ドロップダウンここまで*/

@media screen and (max-width: 999px) {
	header nav ul{
		display: block;
		margin-top: 0;
		padding-top: 10px;
		color: #284f9e;
	}
	
	header nav ul li a:link{
		color: #284f9e;
	}
	
	header nav ul li{
		padding: 15px 0;
	}
	
	.headSpNavSv ul li{
		padding: 5px 0;
		margin-left: 20px;
	}
	
	
	/*ハンバーガーメニューここから*/
	.spNavBox,
	.headSpNavSv{
		color: #284f9e;		
	}
	
	.spNav{
		position: relative;
		z-index: 999999;
	}
	/*チェックボックス等は非表示に*/
	.nav-unshown {
		display:none;
	}

	/*アイコンのスペース*/
	#nav-open {
		display: inline-block;
		width: 30px;
		height: 22px;
		vertical-align: middle;
	}

	/*ハンバーガーの形をCSSで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute;
		height: 2px;/*線の太さ*/
		width: 35px;/*長さ*/
		border-radius: 3px;
		background: #FFF;
		display: block;
		content: '';
		cursor: pointer;
	}
	#nav-open span:before {
		bottom: -12px;
	}
	#nav-open span:after {
		bottom: -24px;
	}

	/*閉じる用の薄黒箇所*/
	#nav-close {
		display: none;
		position: fixed;
		z-index: 99;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}

	/*メニューの中身*/
	.spNavBox {
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
		width: 85%;
		height: 100%;
		background: #fff;
		color: #000;
		transition: .3s ease-in-out;
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);
	}
	
	.spNavBox li{
		position: relative;
		padding-left: 15px;
	}

	.spNavBox li a{
		color: #284f9e;	
	}
	
	.spNavBox li a:before{
		content: url(../images/common/arrow_right_bl.png);
		position: absolute;
		top:12px;
		left: 0;
	}
	
	.headSpNavSv ul li{
		padding-left: 15px;
	}
	
	.headSpNavSv ul li a:before{
		top:3px;
	}
	
	.headSpNavSv .finance ul li{
		font-size: 1.4rem;
	}
	

	/*チェックがついたら表示させる*/
	#nav-input:checked ~ #nav-close {
		display: block;
		opacity: .5;
	}

	#nav-input:checked ~ .spNavBox {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}

	.header-logo-menu{
		display: flex;
		display: -moz-flex;
		display: -o-flex;
		display: -webkit-flex;
		display: -ms-flex;
		flex-direction: row;
		-moz-flex-direction: row;
		-o-flex-direction: row;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
	}

	/*ロゴやサイトタイトルをセンタリング*/
	.logo-erea{text-align:center;margin:auto;}
	
	/*ハンバーガーメニューここまで*/	
	
}


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




/* トップページ
---------------------------------------------------------------------- */
/*メインビジュアル*/
.mv{
	background:url(../images/main.jpg) no-repeat bottom center;
	height: 691px;
	margin-bottom: 50px;
}

.mv div{
	text-align: center;
	padding-top: 115px;
}

.mvSp{
	display: none;
}

/*CRESTはオーナー経営者&ドクターの味方*/
.featureTop{
	margin-bottom: 50px;
}

.featureTop .icon{
	text-align: center;
	margin-bottom: 20px;
}

.featureTop .featureList{
	margin: 30px auto;
}

.featureTop .featureList ul{
	align-self:stretch;
}

.featureTop .featureList ul li{
	width: 45%;
	border: 4px solid #284f9e;
	margin-bottom: 20px;
	padding: 20px 20px 20px 55px;
	color: #284f9e;
	position: relative;
	display: flex;
	align-items:center;
}

.featureTop .featureList ul li::before{
	position: absolute;
	content: "";
	background: url("../images/common/icon_check.png") no-repeat;
	width: 26px;
	height: 28px;
	left: 20px;
	top: 0;
  bottom: 0;
  margin: auto 0;	
}

.featureTop .txtBox{
	background: #ebf2fa;
	margin-top: 30px;
}

.featureTop .txtBox p{
	color: #284f9e;
	background: url("../images/illust_01.jpg") no-repeat right center;
	background-size: contain;
	padding: 50px 40px;
	line-height: 2em;
	font-size: 2.2rem;
	font-weight: bold;
}

/*MISSION*/
.mission{
	background: #39788c;
}

.missionBg{
	background: url(../images/mission_bg.png) no-repeat center;
	padding: 40px 0;
}

.mission .secWrap01{
	width: 954px;
	margin: 0 auto;
	border: 1px solid #FFF;
	text-align: center;
	color: #FFF;
	padding: 55px 0 80px;
	line-height: 1.8em;
}

.missionTxt01{
	font-size: 2rem;
	line-height:  2.4em;
	margin: 40px auto;
}

/*SERVICE*/
.svArea ul li{
	border-top: 1px solid #284f9e;
	width: 45%;
	padding: 20px;
	color: #284f9e;
}

.svArea ul li:nth-last-child(1),
.svArea ul li:nth-last-child(2){
	border-bottom: 1px solid #284f9e;
}

/*CRESTの4つの強み*/
.strengths{
	padding: 30px 0;
	margin-top: 80px;
}

.strengthsArea{
	margin: 90px auto 50px;
}

.strengthsArea .box {
  position: relative;
  width: 20%;
  border: 3px solid white;
  border-top: none; /* 上部を開く */
  text-align: center;
  color: white;
  padding: 20px;
  box-sizing: border-box;
}

.strengthsArea .box::before,
.strengthsArea .box::after {
  content: "";
  position: absolute;
  top: 0;
  height: 3px;
  width: 30%;
  background: white;
}

.strengthsArea .box::before {
  left: 0;
}

.strengthsArea .box::after {
  right: 0;
}

.strengthsArea .number {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
	font-family: 'Renner*';
	font-size: 10rem;
	font-weight: 500;
}

.strengthsArea .icon {
  margin-top: 40px;
}

.strengthsArea p {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 20px;
}

@media screen and (max-width: 999px) {
	.mv {
    max-height: 550px;
		background-size: cover;
	}
	
	.mv div{
		padding-top: 50px;
		max-width: 78%;
    margin: 0 auto;
	}
	
	.featureTop {
    margin-bottom: 50px;
	}
	
	.missionBg{
		background-size: cover;
	}
	
	.mission .secWrap01{
		width: 90%;
		padding: 55px 0 3%;
	}
	
	.missionTxt01{
		width: 85%;
		font-size: 2.0rem;
    line-height: 1.8em;
    margin: 60px auto;
	}
	
	.missionTxt02{
		width: 85%;
    margin: 60px auto;		
	}
	
	.service{
		margin: 70px auto;
	}
	
	.svArea{
		width: 90%;
		margin: 0 auto;
	}
	
	.svBox{
		margin: 0 auto 40px;
	}
	
	
}


@media screen and (max-width: 767px) {
	.mv{
		background: none;
		height: auto;
	}
	
	.mvPc{
		display: none;
	}
	
	.mvSp{
		display: block;
	}
	
	.mv div {
		padding-top: 0;
		max-width: 100%;
		margin: 0 auto;
	}
	
	.svBox div .svBtn01{
		display: block;
	}
	
	.svBox div .svBtn01 li{
		margin: 0 auto 15px;
		text-align: center;
	}
	
	.featureTop .featureList ul li {
		width: 100%;
	}
	
	.featureTop .txtBox p{
        padding-bottom: 260px;
        background-position:bottom;
    }

	.missionTxt01 {
		margin: 0 auto 30px;
	}
	
	.svArea {
		width: 100%;
	}
	
	.svArea ul li {
		width: 100%;
	}
	
	.svArea ul li:nth-last-child(1), .svArea ul li:nth-last-child(2) {
			border-bottom: none;
	}
	
	.strengthsArea {
    margin: 90px auto 0;
	}
	
	.strengthsArea .box {
    width: 100%;
		margin-bottom: 80px;
	}
	
	.service {
		margin: 50px auto;
	}
	
	    
}



/* SERVICE
---------------------------------------------------------------------- */
.serviceArea{
	margin-top: 50px;
	justify-content: center;
}

.serviceBox{
	width: 30%;
	border-right: 1px solid #284f9e;
	padding: 0 30px;
}

.serviceBox:last-child{
	border-right: none;
}

.serviceArea .serviceBoxTtl{
	justify-content: flex-start;
	align-items:center;
	color: #284f9e;
	margin-bottom: 20px;
}

.serviceArea .serviceBoxTtl .number{
	font-family: 'Renner*';
	font-size: 6rem;
	font-weight: 500;
	margin-right: 10px;
}

.serviceArea .serviceBoxTtl h3{
	font-weight:bold;
}

/*サービスフロー*/
.serviceFlow .process-container {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap; /* スマホ対応 */
	
}

.serviceFlow .process-box {
  border: 2px solid white;
  padding: 40px 30px;
  box-sizing: border-box;
  text-align: left;
  position: relative;
	width: 27%;
	align-self:stretch;
}

.serviceFlow .process-box .icon {
  text-align: center;
  margin-bottom: 20px;
}

.serviceFlow .process-box .icon img {
  width: 132px;
  height: auto;
}

.serviceFlow .process-box h3 {
  text-align: center;
  background-color: white;
  color: #21468c;
  font-size: 18px;
  font-weight: bold;
  padding: 10px 15px;
  margin: 0 0 25px;
}

.serviceFlow .process-box ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.serviceFlow .process-box ul li {
  position: relative;
  padding-left: 18px;
  margin-bottom: 12px;
  line-height: 1.6;
	color: #FFF;
}

.serviceFlow .process-box ul li::before {
  content: "●";
  position: absolute;
  left: 0;
  color: white;
  font-size: 10px;
  top: 2px;
}

.serviceFlow .process-container .arrow {
  align-self: center;
}

.serviceFlow .process-container .arrow img {
  width: 25px;
  height: auto;
  transform: rotate(0deg); /* 必要に応じて角度調整 */
}

@media screen and (max-width: 999px) {
	.serviceBox {
    width: 33%;
    padding: 0 14px;
	}
}


@media screen and (max-width: 767px) {
	.serviceBox {
		width: 100%;
	}
	
	.serviceFlow{
		margin-bottom: 80px;
	}
	
	.serviceFlow .process-box {
		width: 100%;
	}
	
	
}


/* PLAN
---------------------------------------------------------------------- */
.plan{
	margin-bottom: 50px;
}

.plan table{
	margin-bottom: 20px;
}

.plan table tr th,
.plan table tr td{
	border: 1px solid #6a85bd;
	text-align: center;
	padding: 10px;
}

.plan .tableThBlue01{
	background: #284f9e;
	color: #FFF;
}

.plan .tableThBlue02{
	background: #1a3771;
	color: #FFF;
}

.plan .tableThBlue03{
	background: #3f63ab;
	color: #FFF;
}

.plan .listCycle{
	padding-left:1em;
	text-indent:-1em;
	text-align: left;
	padding-left:30px;
}

.plan .listCycle::before{
	content:  "";     /* 空の要素作成 */
	width:  10px;               /* 幅指定 */
	height:  10px;              /* 高さ指定 */
	display:  inline-block;     /* インラインブロックにする */
	background-color: #21468c;  /* 背景色指定 */
	border-radius:  50%; 
}

.plan .txtBlue{
	font-weight: bold;
}

.listNumberBlue  {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
}
.listNumberBlue li {
  font-size: 16px;
  line-height: 1.5;
  padding-left: 30px;
  position: relative;
	margin-bottom: 20px;
}
.listNumberBlue li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #284f9e;
  border: 1px solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 22px;
  width: 22px;
  color: #ffffff;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}

.plan03 ol{
	width: 90%;
	margin: 0 auto;
}


@media screen and (max-width: 999px) {
}


@media screen and (max-width: 767px) {
 /* 横スクロール用のラッパーを利用 */
  .table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* スムーズスクロール */
		white-space: nowrap;
    margin-bottom: 20px;
  }

  /* テーブル自体を広げてスクロールを促す */
  .table-wrapper table {
    min-width: 800px; /* スクロールのための最小幅（列数に応じて調整） */
  }

  /* スクロールバーを明示的に表示 */
  .table-wrapper::-webkit-scrollbar {
    height: 8px;
		background-color: #f1f1f1;
  }
  .table-wrapper::-webkit-scrollbar-track {
    background: #e6ebf5;
  }
  .table-wrapper::-webkit-scrollbar-thumb {
    background: #284f9e;
    border-radius: 4px;
  }
	
	.plan04 .table-wrapper table,
	.plan03 .table-wrapper table{
		min-width: 500px;
	}
	
	/* ガイド用バー */
	.scroll-guide {
		position: sticky;
		bottom: 0;
		height: 4px;
		background: linear-gradient(90deg, #ccc 50%, transparent 50%);
		background-size: 20px 4px;
		animation: scroll-hint 1s infinite linear;
	}

	@keyframes scroll-hint {
		from { background-position: 0 0; }
		to { background-position: 20px 0; }
	}
}



/* MEMBER
---------------------------------------------------------------------- */
.memberArea .memberBox{
	margin-bottom: 50px;
}

.memberArea .memberBox figure{
	width: 30%;
	margin: 0;
	padding: 0;
}

.memberArea .memberBoxRight{
	width: 60%;
	padding-top: 20px;
}

.memberArea .memberBoxRight h4{
	font-size: 2.4rem;
	color: #284f9e;
	font-weight: bold;
}

.memberArea .memberBoxRight .nameEn{
	font-family: 'Renner*';
	font-weight: 400;
	margin: 0 0 10px;
	color: #acacac;
}

.memberArea .memberBoxRight .position{
	border-bottom: 1px solid #284f9e;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.memberBoxS{
	width: 28%;
	margin-bottom: 30px;
}

.memberBoxSarea::after{
  content:"";
  display: block;
  width:28%;
}

.memberBoxS figure{
	margin: 0;
}

.memberBoxS h4{
	color: #284f9e;
	font-size: 2rem;
	margin-top: 30px;
	font-weight: bold;
}

.memberBoxS .nameEn{
	font-family: 'Renner*';
	font-weight: 400;
	color: #acacac;
	font-size: 1.4rem;
}

.memberBoxS .position{
	border-bottom: 1px solid #284f9e;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

@media screen and (max-width: 999px) {
}


@media screen and (max-width: 767px) {
	.memberArea .memberBox figure {
    width: 100%;
	}
	
	.memberArea .memberBoxRight {
    width: 90%;
    padding-top: 30px;
		margin-bottom: 30px;
	}
	
	
	
}


/* ABOUT US
---------------------------------------------------------------------- */
.aboutAsArea{
	margin-bottom: 100px;
}

.aboutAsArea h3{
	text-align: center;
	margin-bottom: 60px;
} 

.aboutAsArea dl{
	width: 70%;
	margin: 0 auto;
	color: #284f9e;
}

.aboutAsArea dl dt{
	display: inline-block;
	width: 20%;
	vertical-align: top;
	padding: 20px 20px;

}

.aboutAsArea dl dd{
	display: inline-block;
	width: 70%;
	border-left: #b3c1de 1px solid;
	padding: 20px 20px 20px 50px;
}

@media screen and (max-width: 999px) {
	.aboutTab{
		width: 90%;
	}
	
	.aboutTab ul li{
		width: 30%;
	}
	
	.aboutAsArea{
		margin-bottom: 80px;
	}
	
	.aboutAsArea dl{
		width: 90%;
	}
	
}


@media screen and (max-width: 767px) {
	.aboutTab{
		margin-bottom: 50px;
	}
	
	.aboutAsArea dl{
		width: 100%;
	}
	
	.aboutAsArea dl dt{
		display: block;
		width: 100%;
    padding: 0 20px;
    font-weight: bold;
	}
	
	.aboutAsArea dl dd{
		display: block;
		width: 100%;
    border-left: none;
    padding: 5px 0 20px 40px;
	}
	
}


/* ACCESS
---------------------------------------------------------------------- */
.access{
	width: 100%;
	max-width: 1250px;
	height: 450px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.accessBox01{
	background: #284f9e;
	color: #FFF;
	width: 450px;
	padding: 40px;
	letter-spacing: 0.05em;
}

.accessBox01 dl dt{
	margin: 10px 0 70px;
}

.accessBox01 dl dd+dd{
	margin-top: 30px;
}

.accessImg{
	margin: 100px auto;
}

@media screen and (max-width: 999px) {
	.access,
	.access iframe{
		height: auto;
	}
	
	.accessBox01{
		width: 500px;
	}

	.accessBox01 dl dt{
		margin-bottom: 45px;
	}
	
	.accessImg{
		width: 90%;
		margin: 50px auto;
	}
}


@media screen and (max-width: 767px) {
	.access{
		display: block;
		width: 90%;
		margin: 0 auto;
	}
	
	.accessBox01{
		width: 100%;
	}
	.access iframe{
		width: 100%;
		height: 400px;
	}
	
}


/* recruit
---------------------------------------------------------------------- */
.recruit{
	margin-bottom: 50px;
}

.recruitBox01{
	margin-bottom: 40px;
}

.recruitBox01 dt{
	color: #284f9e;
	font-weight: bold;
	margin-bottom: 10px;
}

.recruitBox01 dt span{
	color: #000;
	font-size: 80%;
	font-weight: normal;
}

.recruitArea01 .img,
.recruitArea02img{
	margin-top: 30px;
}

.recruitArea01 .img figure{
	width: 48%;
	margin: 0;
}

.recruitArea02img figure{
	width: 45%;
	margin: 0;
}

.recruitArea02{
	margin-bottom: 40px;
}

.recruitBox02{
	width: 33%;
}

.recruitBox02 h3{
	line-height: 1.3;
}

.recruitBox02 h3 span{
	display: block;
	font-size: 1.2rem;
}

.recruitBox03{
	color: #284f9e;
	text-align: center;
	width: 20%;
}

.recruitBox03 .number{
	font-family: 'Renner*';
	font-size: 8rem;
	font-weight: 500;
	text-align: center;
	margin-bottom: 20px;
}

.recruitBox03 h3{
	font-weight: bold;
	line-height: 1.4;
	padding-top: 10px;
}

.recruitBox03 .icon{
	margin: 10px auto;
}

.recruitBox04 dl{
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #284f9e;
	margin-bottom: 15px;
	padding-bottom: 15px;
}

.recruitBox04 dl dt{
	width: 20%;
	color: #284f9e;
	font-weight: bold;
}

.recruitBox04 dl dd{
	width: 75%;
	
}

@media screen and (max-width: 999px) {
}


@media screen and (max-width: 767px) {
	.recruitArea02 {
    margin-bottom: 10px;
	}

	.recruitBox02 {
    width: 100%;
	}
	
	.serviceBox{
		border-bottom: 1px solid #284f9e;
		border-right: none;
		padding-bottom: 30px;
		margin-bottom: 30px;
	}
	
	.serviceArea .serviceBoxTtl h3 {
    font-size: 2rem;
	}
	
	.recruitBox03 {
    width: 80%;
		margin-bottom: 80px;
	}
	
	.recruitBox04 dl dt {
    width: 100%;
		margin-bottom: 10px;
		padding: 0 10px;
	}
	
	.recruitBox04 dl dd{
		width: 100%;
		padding: 0 10px;
	}
	
}


/* フッター
---------------------------------------------------------------------- */
footer{
	background: #284f9e;
	color: #FFF;
	padding: 3% 0;
	margin-top: 50px;
}

footer h2{
	width: 166px;
	margin: 0 auto 50px;
}

footer .footNav{
	width: 800px;
	margin: 0 auto;
	display: flex;
	justify-content:space-around;
	letter-spacing: 0.07em;
}

footer .footNav a{
	color: #FFF;
}

footer .footNav li{
	position: relative;
	padding-left: 15px;
}

footer .footNav li a:before{
	content: url(../images/common/arrow_right.png);
	position: absolute;
	left: 0;
	top:-3px;
}

footer .footNav .footNavSv:before{
	content: none;
	padding-left: 0;
}


.footNavSv ul{
	display: block;
	margin-top: 10px;
	font-size: 1.4rem;
	margin-left: 10px;
}

.footNavSv ul li{
	margin-bottom: 10px;
}

.footNavSv ul li:before{
	top:-1px;
}


footer .copy{
	margin-top: 50px;
	text-align: center;
	display: block;
}

.pagetop {
	position: fixed;
	bottom: 20px;
	right: 5%;
}
.pagetop a {
	display: block;
}

@media screen and (max-width: 999px) {
	footer{
		margin-top: 5%;
		padding: 50px 0;
	}
	
	footer .footNav{
		width: 90%;
	}
}


@media screen and (max-width: 767px) {
	footer .footNav{
		width:100%;
		display: block;
		border-top: 1px solid #6283c6;
	}
		
	footer .footNav li{
		width: 100%;
		padding: 10px 35px;
		border-bottom: 1px solid #6283c6;
	}
	
	footer .footNav li a:before {
    left: 20px;
    top: 8px;
	}
	
	.footNavSv ul li{
		border:none;
		padding: 0px 25px;
	}
	
	.footNavSv ul li a:before {
    left: 10px;
    top: -1px;
	}
}





	


