/*smartPhone*/


@charset "UTF-8";
@import "reset.css";

body {
  -webkit-text-size-adjust: 100%;
}
.wrapper {
	width: 100%;
	max-width: 720px;
	overflow: hidden;
	height: auto;
	background-color:#f7f7f5;
}

/*===============
	header
===============*/
#header {
	background-color:rgba(255,255,255,0.9);
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:10010;
}
#header .inner {
	width: 100%;
	padding-bottom: 7px;
	position:relative;
}

#header .inner:after {
  display: block;
  clear: both;
  content: '';
}

#header .logo {
	position: relative;
	width: 14.7142857%;
	float:left;
	margin-left: 4.2857142%;
	margin-top: 3.1428571%;
	overflow: visible;
}

#header .logo img,
#header .menu img {
	width: 100%;
	height: auto;
}

#header .menu,
#header .logo span {
	display: block;
}
#header .menu {
	float: right;
	width: 11.28571428%;
	margin-top: 0.857142857%;
	cursor: pointer;
	background-image: url(../img/hd_menu_cls.png);
	background-size: cover;
	background-repeat: no-repeat;
}
#header .logo span {
	position: absolute;
	display: block;
	top: 10%;
	left: 122.6415094%;
	width: 150%;
	font-size: 1.2rem;
	font-size: 3.125vw;
}

#gnavi {
	overflow: visible;
}
#gnavi li {
	border-top: 1px solid #fff;
}

#gnavi nav {
	display: block;
	clear: both;
	position: absolute;
	right: -45.625%;
	z-index: 11111;
	width: 45.625%;
	background:#333;
	color: #fff;
	margin-top: 11%;
	-webkit-transition: right 0.5s;
	transition: right 0.5s;
}
#gnavi.open nav {
	right: 0;
	-webkit-transition: right 0.5s;
	transition: right 0.5s;
	z-index: 11111;
}
#gnavi.open .menu img {
	visibility: hidden;
}
#gnavi .entry {
	display: block;
	position: absolute;
	right: 14.57142857%;
	top: 5px;
	width: 31.5625%;
	height: 80.7692307%;
}
#gnavi li:first-child {
	border-top: none;
}
#gnavi li a {
	display:block;
	box-sizing: border-box;
	position: relative;
	color: #fff;
	font-size: 1.2rem;
	font-size: 3.125vw;
	line-height: 400%;
	padding-left: 1.5em;
	width: 100%;
}
#gnavi li a:after {
	content: url(../img/ico_nav2.png);
	position: absolute;
	right: 1em;
}

#gnavi .entry a {
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	overflow: hidden;
	background-image: url(../img/entry.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
}





/*===============
	mainArea
===============*/
#mainArea {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	margin-top:12.4457308%;
	overflow:hidden;
}





/*===============
	共通
===============*/
/*模様背景付きのタイトル*/
.titleBG01 {
	width:100%;
	text-align:center;
	color:#ffffff;
	font-weight:normal;
	font-size:2.14rem;
	line-height:8.56rem;
	height:8.56rem;
	letter-spacing:0.15rem;
	background-image:url(../img/title_bg.png);
	background-position:center top;
	background-repeat:repeat-x;
	position:relative;
}
.titleBG01:after {
	position:absolute;
	content:"";
	bottom: -7px;
	left: 50%;
	margin-left: -6px;
	width: 0;
	height: 0;
	border-top: 8px solid #2abcae;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	z-index:2;
}


/*titleBalloon01タイトル（アクセス・会社概要）*/
#mainArea .titleBalloon01 {
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
	height:4em;
	border:3px solid #2ebcb1;
	background-color:#ffffff;
	font-size:1.71rem;
	line-height:4em;
	position:relative;
	color: #2ebcb1;
	box-sizing:border-box;
	text-align:center;
}
#mainArea .titleBalloon01:before {
	content: "";
	position: absolute;
	bottom: -12px;
	left: 50%;
	margin-left: -10px;
	width: 0;
	height: 0;
	border-top: 12px solid #2ebcb1;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
}
#mainArea .titleBalloon01:after {
	content: "";
	position: absolute;
	bottom: -7px;
	left: 50%;
	margin-left: -10px;
	width: 0;
	height: 0;
	border-top: 12px solid #fff;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
}


/*mainArea .inner*/
#mainArea .inner {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	position:relative;
}
#mainArea .inner:after {
  display: block;
  clear: both;
  content: '';
}


/*続きを読むボタン*/
#mainArea a.more {
	width:92%;
	margin-left:auto;
	margin-right:auto;
	line-height:5.0rem;
	font-size:1.571rem;
	color:#ffffff;
	text-align:center;
	display:block;
	background-color:#8f8f8f;
	padding:0;
}


/*エントリーボタン*/
#mainArea a.entry {
	width:52%;
	margin-left:auto;
	margin-right:auto;
	line-height:5.85rem;
	font-size:1.571rem;
	color:#ffffff;
	text-align:center;
	display:block;
	background-color:#2addd2;
	border-radius:32px;
}


/*別windowボタン*/
.btn a.window {
	padding:1em 2em;
	margin-left:auto;
	margin-right:auto;
	display:inline-block;
	border:3px solid #2ebcb1;
	background-color:#ffffff;
	font-size:1.428rem;
	position:relative;
	color: #2ebcb1;
	box-sizing:border-box;
	text-align:center;
}
.btn a.window span {
	display:inline-block;
}
.btn a.window span:after {
	content:url(../img/icon_window.png);
	margin-left:5px;
}


.no-br {
	display:none;
}





/*===============
	slideShow
===============*/
#slideShow li {
	width:100%;
	background-image:none;
}
#slideShow li.slide01,
#slideShow li.slide02,
#slideShow li.slide03 {
	background-image:none;
}
#slideShow li img {
	display:block;
}


/*BX-SLIDERオプション*/
#slideShow .bx-wrapper {
	margin: 0 auto;
}
/* PAGER */
#slideShow .bx-wrapper .bx-pager,
#slideShow .bx-wrapper .bx-controls-auto {
	font-size: 1.48rem;
	bottom: 2px;
}
#slideShow .bx-wrapper .bx-pager.bx-default-pager a {
	background: #a3a3a3;
	text-indent: -9999px;
	display: block;
	width: 16px;
	height: 16px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 16px;
	-webkit-border-radius: 16px;
	border-radius: 16px;
}
#slideShow .bx-wrapper .bx-pager.bx-default-pager a:hover,
#slideShow .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #333333;
}

/*arrow*/
#slideShow .bx-wrapper .bx-controls-direction a {
	display:none;
}





/*===============
	job
===============*/
#job {
	padding-bottom:1em;
}
#job .slide {
	background-image:url(../img/job_bg.jpg);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:cover;
}
#job .subtitle {
	font-size:1.85rem;
	font-weight:bold;
	text-align:center;
	padding-top:1em;
	padding-bottom:1em;
}
#job .job {
	text-align:center;
}
#job .job .contents {
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
}
#job .photo {
	width:75.78125%;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:1em;
}
#job .text {
	font-size:1.48rem;
	line-height:1.5;
	text-align: left;
	letter-spacing:-0.05rem;
}


/*BX-SLIDERオプション*/
#job .bx-wrapper .bx-viewport {
	background-color:transparent;
}
/*arrow*/
#job .bx-wrapper .bx-prev {
	left: 10px;
	background: url(../img/job_l.png) no-repeat 0 0;
	background-size:100% auto;
}
#job .bx-wrapper .bx-next {
	right: 10px;
	background: url(../img/job_r.png) no-repeat 0 0;
	background-size:100% auto;
}
#job .bx-wrapper .bx-prev:hover,
#job .bx-wrapper .bx-next:hover {
	background-position: 0 0;
}
#job .bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -70px;
	outline: 0;
	width: 36px;
	height: 36px;
	text-indent: -9999px;
	z-index: 9999;
}


#job .jobIndex {
	text-align:center;
	margin-top:-0.5em;
}
#job .jobIndex li {
	display:inline-block;
	width:32%;
}
#job .jobIndex li a {
	display:block;
	border:2px solid #2ebcb1;
	background-color:#ffffff;
	font-size:1.5rem;
	line-height:3;
	position:relative;
	color: #2ebcb1;
	/*padding-left:8px;*/
	padding-top:20px;
	box-sizing:border-box;
}
#job .jobIndex li a.active:before {
  content: "";
  position: absolute;
  top: -12px;
  left: 50%;
  margin-left: -10px;
  width: 0;
  height: 0;
  border-bottom: 12px solid #2ebcb1;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
}
#job .jobIndex li a.active:after {
  content: "";
  position: absolute;
  top: -8px;
  left: 50%;
  margin-left: -10px;
  width: 0;
  height: 0;
  border-bottom: 12px solid #fff;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
}
#job .jobIndex li a {
	background-repeat:no-repeat;
	background-position:center 10px;
	background-size:18px auto;
}
#job .jobIndex .job01 a {
	background-image:url(../img/icon_job01.png);
	letter-spacing:-0.1rem;
}
#job .jobIndex .job02 a {
	background-image:url(../img/icon_job02.png);
}
#job .jobIndex .job03 a {
	background-image:url(../img/icon_job03.png);
}





/*===============
	message01
===============*/
#message01 {
	padding-bottom:3em;
}
#message01 .inner {
	width:100%;
	position:relative;
	padding-bottom:2em;
}
#message01 .text {
	padding-top:56%;
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
	font-size:1.48rem;
	line-height:1.54;
	text-align: justify;
	text-justify: inter-ideograph;
}
#message01 .photo {
	text-align:center;
	width:100%;
	padding-top:45.14285714285714%;
	background-image:url(../img/message01_ph01.jpg);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:56% auto;
	background-color:#f3f2f0;
	position:absolute;
	top:0;
	left:0;
}
#message01 .photo img {
	/*margin-bottom:20px;*/
	display:none;
}
#message01 .photo .name {
	display:none;
}
#message01 .text .name {
	display:block;
}





/*===============
	message02,message03
===============*/
/*名前と写真部分*/
.msgIndex {
	width:100%;
	padding-top:54.714285714285715%;
}
.msgIndex li {/* .photo*/
	display:none;
}
.nameIndex {
	width:99%;/*91.42857142857143%*/
	margin:0.5em auto 1em;
	text-align:center;
}
.nameIndex li {
	display:inline-block;
	width:48%;
	box-sizing:border-box;
	border:3px solid #2ebcb1;
	background-color:#ffffff;
	color:#2ebcb1;
	font-size:1.52rem;
	line-height:1.36;
	padding:1em 0;
}
.nameIndex li span {
	display:inline-block;
	margin-left:auto;
	margin-right:auto;
	text-align:left;
}


/*インタビュー本文部分*/
.interview dl {
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
	padding-top:30px;
}
.interview dl:first-child {
	padding-top:20px;
}
.interview dt {
	font-size:1.71rem;
	color:#2ebcb1;
	padding-bottom:0.5rem;
}
.interview dd {
	font-size:1.42rem;
	line-height:1.54;
	padding-bottom:0.3em;
	overflow:hidden;
}
.interview dd .name {
	width:4.5em;
	display:table-cell;
}
.interview dd .text {
	width:auto;
	display:table-cell;
}
.interview dd .name span {
	width:4.5em;
	font-size:0.9em;
	line-height:2;
	display:inline-block;
	text-align:center;
	color:#ffffff;
	background-color:#2ebcb1;
	margin-right:1rem;
}

/*続きを読む部分*/
.readmore-button-box {
   text-align: center;
   background-image: linear-gradient( 180deg, rgba(255,255,255,0.5), white );
   padding-top: 4.5em;
   margin-top: -6.5em;
   position: relative;
}
.readmore-area {
   display: none;
}



#message02 {
	padding-bottom:3em;
}
#message02 .msgIndex {
	background-image:url(../img/message02_ph0.jpg);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:110% auto;
}


#message03 {
	padding-bottom:3em;
}
#message03 .msgIndex {
	background-image:url(../img/message03_ph0.jpg);
	background-repeat:no-repeat;
	background-position:center top;
	background-size:110% auto;
}






/*===============
	snap
===============*/
#snap {
	margin-top:3em;
}
#snap.slide .inner {
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
	margin-top:1em;
}
#snap ul {
	width:100%;
	text-align:center;
	
}
#snap li p {
	/*font-size:1.57rem;
	line-height:1.6;*/
	font-size:1.48rem;
	line-height:1.5;
	padding-left:1em;
	padding-right:1em;
	text-align:left;
}
#snap li div img {
	width:100%;
	height:auto;
	margin-bottom:1em;
}


/*BX-SLIDERオプション*/
#snap.slide .bx-wrapper {
	margin: 0 auto;
}
/* PAGER */
#snap.slide .bx-wrapper .bx-pager,
#snap.slide .bx-wrapper .bx-controls-auto {
	top: 0;
	margin-top:59%;
	font-size: 1.42rem;
}
#snap.slide .bx-wrapper .bx-pager.bx-default-pager a {
	background: #a3a3a3;
	text-indent: -9999px;
	display: block;
	width: 16px;
	height: 16px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 16px;
	-webkit-border-radius: 16px;
	border-radius: 16px;
}
#snap.slide .bx-wrapper .bx-pager.bx-default-pager a:hover,
#snap.slide .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #333333;
}

/*arrow*/
#snap.slide .bx-wrapper .bx-prev {
	left: 5px;
	background: url(../img/slide_l.png) no-repeat 0 0;
	background-size:23px auto;
}
#snap.slide .bx-wrapper .bx-next {
	right: 5px;
	background: url(../img/slide_r.png) no-repeat 0 0;
	background-size:23px auto;
}
#snap.slide  .bx-wrapper .bx-prev:hover,
#snap.slide  .bx-wrapper .bx-next:hover {
	background-position: 0 0;
}
#snap.slide .bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -80px;
	outline: 0;
	width: 23px;
	height: 37px;
	text-indent: -9999px;
	z-index: 9999;
}







/*===============
	faq
===============*/
#faq {
	padding-bottom:2em;
}
#faq .inner {
	/*margin-top:76px;*/
	margin-top:2em;
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
}
#faq dt {
	background-image:url(../img/faq_bg.png);
	background-size:55px 55px;
	padding:1em;
	color:#ffffff;
	font-size:1.57rem;
	line-height:1.54;
}
#faq dd {
	margin:1em 0 2.5em;
	font-size:1.48rem;
	line-height:1.54;
}

#faq dt span {
	display:table-cell;
}
#faq dt span:first-child {
	width:2.5em;
}




/*===============
	recruit
===============*/
#recruit {
	padding-bottom:2em;
}
#recruit .inner {
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
}
#recruit .jobName {
	font-size:1.857rem;
	color:#2addd2;
	text-align:center;
	margin-top:1.5em;
	margin-bottom:1.5em;
}
.table {
	width:100%;
	border-top:1px solid #afafaf;
	border-bottom:1px solid #afafaf;
}
.table th {
	box-sizing:border-box;
	width:23.4375%;
	background-color:#f1f1f1;
	background-image:url(../img/table_border01.png);
	background-repeat:repeat-x;
	background-position:left bottom;
	border-left:1px solid #afafaf;
	border-right:1px solid #afafaf;
	font-weight:normal;
	font-size:1.42rem;
	padding:0.8em;
}
.table td {
	box-sizing:border-box;
	background-color:#ffffff;
	background-image:url(../img/table_border01.png);
	background-repeat:repeat-x;
	background-position:left bottom;
	border-right:1px solid #afafaf;
	font-size:1.42rem;
	padding:0.8em;
	letter-spacing:-0.06rem;
}
.table tr:last-child th,
.table tr:last-child td {
	background-image:none;
}

#recruit .btn {
	margin-top:2em;
}





/*===============
	access
===============*/
#access {
	padding-bottom:4em;
}
#access .inner {
	margin-top:2em;
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
}
#access .gMap {
	position: relative;
	padding-top: 75%;
	height: 100px;
	overflow: hidden;
}
#access .gMap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;

}	
#access .text {
	font-size:1.428rem;
	line-height:1.5;
	width:100%;
	text-align:center;
}
#access .text p {
	display:inline-block;
	margin:2em auto 1em;
	text-align:left;
}
#access .btn a.window {
	letter-spacing:0;
}





/*===============
	profile
===============*/
#profile .inner {
	margin-top:2em;
	width:91.42857142857143%;
	margin-left:auto;
	margin-right:auto;
}
#profile .table {
	margin-bottom:1em;
}
#profile .btn  {
	width:100%;
	clear:both;
	text-align:center;
}
#profile .btn a.window {
	display:inline-block;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}





/*===============
	pagetop
===============*/
#pagetop {
	margin:1em auto;
	text-align:right;
}
#pagetop a {
	width:66px;
	display:block;
	margin-left:auto;
	margin-right:0;
}
#pagetop img {
	width:66px;
}





/*===============
	footer
===============*/
#footer {
	background-color:#27bcb8;
	padding-top:38px;
	height:34px;
	color:#ffffff;
	font-size:12px;
	text-align:center;
}
