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

/* -----------------------------------------------
 *  	         base style setting
 * ----------------------------------------------- */

/* =========== font-setting =========== */
.font_mincho {
	font-family: 'Ovo', serif !important;
}

/* =========== Reset =========== */

*{ margin: 0;padding: 0;}

html {
	font-size: 14px;
	line-height: 1.8;
}

a {
	text-decoration: underline;
	-webkit-transition: all .3s;
	transition: all .3s;
}

a, a:visited {
	color: #000;
}

a:hover {
	color: #999;
}

a.over:hover img {
	opacity: .5;
	-webkit-opacity: .5;
	-moz-opacity: .5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}
 
a.over img {
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}

ul, ol {
	list-style: none;
}

em, address {
	font-style: normal;
}

img {
	vertical-align: middle;
	max-width: 100%;
	border: none;
}

body {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans Japanese","メイリオ", "Meiryo", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: #000000;
}
@media only screen and (max-width: 48em) {
  body {
    font-size: 13px;
    /*font-size: 1.2rem;*/
  }
}



/* =========== mainvisual =========== */
.mainvisual {
	width: 100%;
	background: url(../img/main-img_001.jpg);
	height: 500px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size:cover;
}
@media only screen and (max-width: 48em) {
	.mainvisual {
		width: 100%;
		background: url(../img/main-img_001_S.jpg);
		height: 250px;
		background-position: center center;
		background-repeat: no-repeat;
		background-size:cover;
	}
}
/* topics017 */
.specialTopics_area .mainvisual {
	width: 100%;
	background: url(/recruiting/topics/017/img/mainvisual.jpg);
	height: 500px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size:cover;
}
@media only screen and (max-width: 48em) {
	.specialTopics_area .mainvisual {
		width: 100%;
		background: url(/recruiting/topics/017/img/mainvisual_mb.jpg);
		height: 250px;
		background-position: center center;
		background-repeat: no-repeat;
		background-size:cover;
	}
}
/* topics029 */
.specialTopics_area.ver2 .mainvisual {
	width: 100%;
	background: url(/recruiting/topics/029/img/mainvisual.jpg);
	height: 500px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size:cover;
}
@media only screen and (max-width: 48em) {
	.specialTopics_area.ver2 .mainvisual {
		width: 100%;
		background: url(/recruiting/topics/029/img/mainvisual_mb.jpg);
		height: 250px;
		background-position: center center;
		background-repeat: no-repeat;
		background-size:cover;
	}
}


/* =========== pageBase =========== */

#pageBase {
	width: 100%;
	text-align: center;
	position: relative;
}



/* =========== headerArea =========== */
#headerWrap {
	width: 100%;
	margin: 0 0 0;
	background: url(../img/bg_header.png) repeat-x left top;
	position: fixed;
	z-index: 9999;
	
}

#headerWrap #headerArea {
	margin: 0 auto;
	padding: 0;
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#headerWrap #headerArea { max-width: 1050px; }
}

#headerWrap #headerArea #headerTop {
	height: 150px;
	margin: 0 auto;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

/* ==== width 768px以下の場合 ==== */
@media screen and (max-width : 768px){
	#headerWrap #headerArea #headerTop { width: 98%; }
	
}

#headerWrap #headerArea #headerTop:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: "";
}

#headerWrap #headerArea #headerTop h1 {
	float: left;
	margin: 0;
	padding: 15px 0 0;
	font-size: 0;
	line-height: 0;
}

#headerWrap #headerArea #headerTop h1 img {
	width: 100%;
}

/* ==== width 768px以下の場合 ==== */
@media screen and (max-width : 768px){
	#headerWrap #headerArea #headerTop h1 { width: 90%; }
	
}

#headerWrap #headerArea #headerTop p {
	float: right;
	margin: 0;
	padding: 6px 0 0;
	font-size: 0;
	line-height: 0;
}

#headerWrap #headerArea #headerNav {
	width: 100%;
	height: 40px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

#headerWrap #headerArea #headerNav:after {
	clear: both;
	display: block;
	content: "";
	height: 0;
	visibility: hidden;
}

#headerWrap #headerArea #headerNav ul {
	width: 100%;
	margin: 0;
	padding: 0;
	float: left;
	left: 50%;
	position:relative;
	list-style: none;
}

#headerWrap #headerArea #headerNav ul li {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	width: 26%;
	height: 40px;
	margin: 0;
	padding: 0;
	float: left;
	left: -50%;
	position:relative;
	border-left: solid 1px #ffffff;
}

#headerWrap #headerArea #headerNav ul li:last-child {
	border-right: solid 1px #ffffff;
}

#message #headerWrap #headerArea #headerNav ul li.mind {
	border-bottom: solid 5px #a37e39;
}

#introduction #headerWrap #headerArea #headerNav ul li.about {
	border-bottom: solid 5px #a37e39;
}

#nakama #headerWrap #headerArea #headerNav ul li.people {
	border-bottom: solid 5px #a37e39;
}

#hito #headerWrap #headerArea #headerNav ul li.people {
	border-bottom: solid 5px #a37e39;
}

#miraizu #headerWrap #headerArea #headerNav ul li.future {
	border-bottom: solid 5px #a37e39;
}

#seishin #headerWrap #headerArea #headerNav ul li.spirits {
	border-bottom: solid 5px #a37e39;
}

#headerWrap #headerArea #headerNav ul li a {
	display: block;
	height: 50px;
	padding-top: 3px;
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3s;
	font-family: 'Noto Sans JP', sans-serif, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	font-weight:300;
	letter-spacing:1.4px;
}

/* ==== width 768px以下の場合 ==== */
@media screen and (max-width : 768px){
	#headerWrap #headerArea #headerNav ul li a { font-size: 11px; padding-top: 10px; }	
}

#headerWrap #headerArea #headerNav ul li a, a:visited {
	color: #000000;
}

#headerWrap #headerArea #headerNav ul li a:hover {
	color: #a37e39;
}




/* =========== contentArea =========== */
#contentArea {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	background-color: #FFFFFF;
}
/* top */
.top_area#contentArea {
	padding-top: 190px;
}	
/* about */
.content_about_area#contentArea{
	background-color: #faf9f6;
}
/* topics017 */
.specialTopics_area#contentArea {
	padding-top: 90px;
}



/* =========== mainArea =========== */
#mainArea {
	width: 100%;
	margin: 0 auto;
	padding: 190px 0 80px 0;
}

/* about */
.main_about_area#mainArea {
	background-color: #ffffff;
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .2);
}

#information #mainArea {
	width: 80%;
	margin: 0 auto;
	padding: 190px 0 80px 0;
}

#hito #mainArea {
	width: 100%;
	margin: 0 auto;
	padding: 50px 0 20px 0;
}

#hito .articleArea {
	width: 100%;
	margin: 0 auto;
	padding: 50px 0 0 0;
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#mainArea { max-width: 1050px; }
	#hito #mainArea { max-width: 1050px; }
	#hito .articleArea { max-width: 1050px; }
}

/* ==== width 1050px以下の場合 ==== */
@media screen and (max-width : 1049px){
	#mainArea { width: 100%; margin: 0 auto; }
	#hito #mainArea { width: 90%; margin: 0 auto; }
	#hito .articleArea { width: 98%; margin: 0 auto; }
}

/* ==== width 768px以下の場合 ==== */
@media screen and (max-width : 768px){
	#information #mainArea { width: 95%; margin: 0 auto; }
}




/* =========== asideArea =========== */
#asideArea {
	width: 100%;
	margin: 0 auto;
	padding: 30px 0 30px;
	background-color: #EEE;
}

#asideArea p {
	font-size: 22px;
	font-family: Arial, Helvetica, sans-serif;
	line-height: 1;
	margin: 0 0 20px;
}

#asideArea ul {
	margin: 0 0 10px;
	padding: 0;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

#asideArea ul:after {
	clear: both;
	display: block;
	content: "";
	height: 0;
	visibility: hidden;
}

#asideArea ul li {
	display: inline;
	width: 78px;
	margin: 0 80px 0 0;
	padding: 0;
	line-height: 0;
	font-size: 0;
}

/* ==== width 768px以下の場合 ==== */
@media screen and (max-width : 768px){
	#asideArea ul li { margin: 0 20px 0 0; }
	
}

#asideArea ul li:last-child {
	margin: 0;
}

#asideArea ul li img {
	width: 78px;
}

#asideArea figure {
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
}




/* =========== footerArea =========== */
#footerArea {
	width: 100%;
	margin: 0;
	padding: 30px 0 20px 0;
	background-color: #ffffff;
	color: #FFF;
	text-align: center;
}

#footerArea a {
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3s;
}

#footerArea a.link-txt_001:after {
    content: '';
	display: inline-block;
	width: 12px; /*アイコン画像横サイズ*/
	height: 12px; /*アイコン画像縦サイズ*/
	background: url(../img/mark_001.svg) no-repeat 50% 50% ;
}

#footerArea a.link-txt_002:after {
    content: '';
	display: inline-block;
	width: 18px; /*アイコン画像横サイズ*/
	height: 18px; /*アイコン画像縦サイズ*/
	background: url(../img/mark_002.svg) no-repeat 50% 50% ;
}

#footerArea a, a:visited {
	color: #000000;
}

#footerArea a:hover {
	color: #000000;
}

#footerArea figure {
	margin: 0 auto 15px auto;
	padding: 0;
	width: 120px;
}

/* ==== width 768px以下の場合 ==== */
@media screen and (max-width : 768px){
	#footerArea figure { width: 100px; }
	
}

#footerArea address {
	margin: 15px 0 0;
	padding: 0;
	font-size: 12px;
	font-family: Arial, Helvetica, sans-serif;
	text-align: center;
    color: #444;
}

#footerArea #link-btn {
	width: 100%;
	margin: 0 auto;
	padding: 0 0 30px;
	position: relative;
	overflow: hidden;
	*zoom: 1;     /* clear float, ~WinIE7 */
	_height: 1px; /* clear float, ~WinIE6 */
}

/* ==== width 1050px以上の場合 ==== */
@media screen and (min-width : 1050px){
	#footerArea #link-btn { max-width: 1050px; }
}

#footerArea #link-btn ul {
	margin: 0;
	padding: 0;
	float: left;
	left: 50%;
	position:relative;
	list-style: none;
}

#footerArea #link-btn ul li {
	margin: 0 0 0 20px;
	padding: 0;
	float: left;
	left: -50%;
	position:relative;
}

#footerArea #link-btn ul li:first-child {
	margin: 0;
}

#footerArea .btn {
	padding: 0;
	font-size: 16px;
	text-align: center;
}

#footerArea .btn a {
	display: block;
	border: solid 1px #000000;
	background-color: #ffffff;
	margin: 0 auto;
	padding: 10px 30px;
	color: #000000;
	text-decoration: none;
}

#footerArea .btn a:after {
    content: '';
	display: inline-block;
	width: 14px; /*アイコン画像横サイズ*/
	height: 14px; /*アイコン画像縦サイズ*/
	background: url(../img/mark_001.svg) no-repeat 50% 50% ;
}

/* ==== width 480px以下の場合 ==== */
@media screen and (max-width : 480px){
	#footerArea #link-btn ul { float: none; width: 100%; margin: 0; border-bottom: solid 1px #FFF; left: 0; }
	#footerArea #link-btn ul li { float: none; margin: 0; left: 0; }
	#footerArea .btn a { width: 100%; border-left: none; border-right: none; border-bottom: none; padding: 10px 0; }
	
}

#footerArea .btn a:hover {
	background-color: #eee;
	color: #000000;
}


/* =========== pageTop =========== */
#pageTop {
	bottom: 0px;
	position: fixed;
	right: 15px;
}

#pageTop a:hover img {
	opacity: .8;
	-webkit-opacity: .8;
	-moz-opacity: .8;
	filter: alpha(opacity=80);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=80)"; /* IE 8 */
}
 
#pageTop a img {
	-webkit-transition: opacity 0.5s ease-out;
	-moz-transition: opacity 0.5s ease-out;
	-ms-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}

/* =========== limit =========== */
.limited{width:95%;}

.limit{max-width:1200px; margin: 0 auto;}/*可変width 基本的にこれを使う*/

.limit1600{max-width:1600px !important; margin: 0 auto;}
.limit1400{max-width:1400px !important; margin: 0 auto;}
.limit1200{max-width:1200px !important; margin: 0 auto;}
.limit1050{max-width:1050px !important; margin: 0 auto;}
.limit1024{max-width:1024px !important; margin: 0 auto;}
.limit960{max-width:960px !important; margin: 0 auto;}
.limit768{max-width:768px !important; margin: 0 auto;}
.limit480{max-width:480px !important; margin: 0 auto;}

/* =========== loading =========== */
#loading {
}

/* =========== text-aline =========== */
.txt_left { text-align: left; }