@charset "utf-8";

/**
 * CSS for common styles
 *
 * @project  Rakuten IR & PR
 * @date     2012.07.11
 * @author   ashimazaki
 */

/* ------------------------------------------
	CSS reset
------------------------------------------ */

body,
div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, code, form, fieldset, legend,
p, blockquote, table, th, td {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
fieldset, img {
	border: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: inherit;
	font-weight: inherit;
}
ol, ul {
	list-style: none outside;
}
caption, th {
	text-align: left;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: inherit;
}

h7 {
	font-size: 130%;
	font-weight: inherit;
}

h8 {
	font-size: 130%;
	font-weight: inherit;
	font-weight: bold;
}


q:before, q:after {
	content: '';
}
abbr, acronym {
	border: 0;
	font-variant: normal;
}
sup {
	vertical-align: text-top;
}
sub {
	vertical-align: text-bottom;
}
input, textarea, select, button {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}
button {
	overflow: visible;
}

/* ------------------------------------------
	Default styles for this site
------------------------------------------ */

html {
	overflow-x: auto;
	overflow-y: scroll;
}
body {
	min-width: 950px;
	line-height: 1.25;
	color: #000000;
	background-color: #dddddd;
	font-size: 12px;
	font-family: "Arial" , "Verdana" , "Helvetica" , "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}
*:first-child+html body {
	font-size: 82%;
	font-family: "ＭＳ Ｐゴシック", sans-serif;
} /* for ie7 */
* html body {
	font-size: 82%;
	font-family: "ＭＳ Ｐゴシック", sans-serif;
} /* for ie6 */
img {
	vertical-align: bottom;
}
a, a:link {
	color: #004e99;
}
a:visited {
	color: #004e99;
}
a:hover {
	text-decoration: none;
}
input, label {
	vertical-align: middle;
}
#container {
	background-color: #ffffff;
}

/* ------------------------------------------
	Header
------------------------------------------ */


/* ヘッダ全体枠 */
#header {
	min-width: 950px;
	border-top: 5px solid #bf0000;
}

/* サイト内共通ヘッダー */
#commonHeader {
	width: 950px;
	line-height: 1.1;
	overflow: hidden;
	margin: 0 auto;
	text-align: left;
}
#header h1 {
	float: left;
}
#header h1 img {
	margin: 17px 0;
}

#headerNavi {
	float: right;
	text-align: right;
}
#headerNavi ul {
	margin-top: 10px;
	font-size: 100%;
}
#headerNavi li {
	display: inline;
	padding-left: 10px;
}

/* search from */
#search {
	float: right;
	min-height: 21px;
	margin-top: 17px;
	border: 1px solid #cccccc;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
}
#search div {
	display: inline-block;
	margin: 0;
}
*:first-child+html #search div {
	display: inline;
}
* html #search div {
	display: inline;
}
#search .searchBtn {
	border-left: 1px solid #cccccc;
	border-radius: 0 4px 4px 0;
	-webkit-border-radius: 0 4px 4px 0;
	-moz-border-radius: 0 4px 4px 0;
	-o-border-radius: 0 4px 4px 0;
	-ms-border-radius: 0 4px 4px 0;
	color: #ffffff;
	background: #2f2f2f url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/bg_search.gif") repeat-x 0 0;
	font-size: 100%;
	font-weight: bold;
}
#search .search input {
	width: 160px;
	margin: 0;
	padding: 0 5px;
	border: none;
	background: none;
}
#search .searchBtn input {
	width: 45px;
	min-height: 21px;
	margin: 0;
	padding: 0;
	border: none;
	color: #ffffff;
	background: none;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

/* common navi menu */
#siteNav {
	clear: both;
	width: 100%;
	background: #dddddd;
	border-bottom: 3px solid #999999;
}
#siteNav ul {
	width: 950px;
	line-height: 1;
	margin: 0 auto;
	text-align: left;
}
#siteNav li {
	float: left;
	zoom: 1;
}
#siteNav li dl {
	position: relative;
	z-index: 1;
}
#siteNav li .top a,
#siteNav li dt a {
	display: block;
	padding: 11px 17px 8px;
	color: #000000;
	font-size: 120%;
	text-decoration: none;
}

#siteNav li .top.active a,
#siteNav li dt.active a {
	color: #ffffff;
	background: #999999;
}

#siteNav li .top a:hover,
#siteNav li.menuHover dt a {
	color: #ffffff;
	background: #333333;
}
#siteNav li dt span {
	display: none;
	position: absolute;
	width: 100%;
	height: 6px;
	margin-top: -3px;
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/bg_sitenav.gif") no-repeat 50% 0;
	text-align: center;
}
* html #siteNav li dt span {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/bg_sitenav.gif") no-repeat 20px 0;
}
#siteNav li.menuHover dt span {
	display: block;
}
#siteNav li dd {
	display: none;
	width: 158px;
	position: absolute;
	margin-left: -2px;
}
#siteNav .subMenu {
	display: block;
	width: 154px;
	margin-top: 3px;
	border: 2px solid #ffffff;
	border-top: none;
	background: #dddddd;
}
#siteNav .newsSubMenu {
	width: 18em;
}
#siteNav .aboutSubMenu {
	width: 16em;
}
#siteNav .irSubMenu {
	width: 14em;
}
#siteNav .csrSubMenu {
	width: 19em;
}
#siteNav .careersSubMenu {
	width: 23em;
}
#siteNav .subMenu li{
	float: none;
	border-top: 2px solid #999999;
	word-break: normal;
}
#siteNav .subMenu li.first {
	border: none;
}
#siteNav .subMenu li a {
	display: block;
	padding: 9px 15px 9px 25px;
	color: #000000;
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_sitenav.gif") no-repeat 11px 50%;
	text-decoration: none;
	zoom: 1;
}
#siteNav .subMenu li a:hover {
	color: #ffffff;
	background: #333333 url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_sitenav_active.gif") no-repeat 11px 50%;
}


/* Start clearfix ------------------------------ */
#siteNav ul:after {
	content: "";
	display: block;
	clear: both;
}
/* -------------------------------- end clearfix */



/* ------------------------------------------
	Footer
------------------------------------------ */

/* entire footer */
#footer {
	margin-top: 20px;
	padding-bottom: 20px;
	background: #dddddd;
	text-align: left;
}
#serviceFooter {
	width: 950px;
	margin: 0 auto;
	line-height: 1;
	padding-top: 20px;
}
#serviceFooter .titleBox {
	overflow: hidden;
	zoom: 1;
}
#serviceFooter .titleBox .link {
	float: left;
	margin: 3px 0 0 20px;
}
#serviceFooter .title {
	float: left;
	margin-bottom: 14px;
	border-bottom: 1px solid #dddddd;
}
#serviceFooter .title dt {
	display: inline;
	font-size: 152%;
}
#serviceFooter .title dd {
	display: inline;
	vertical-align: bottom;
}
#serviceFooter .title dd a {
	margin-left: 15px;
}
#serviceList {
	overflow: hidden;
	zoom: 1;
}
#serviceList dl {
	line-height: 1.6;
	margin-bottom: 13px;
}
#serviceList dt {
	float: left;
	width: 100px;
}
#serviceList dd {
	/*margin-left: 110px;*/
}
#serviceList ul {
	overflow: hidden;
	zoom: 1;
}
#serviceList li {
	float: left;
	margin-right: 10px;
	word-break: keep-all;
	word-wrap: normal;
	white-space: nowrap;
}
#companyFooter {
	overflow: hidden;
	width: 950px;
	margin: 20px auto 0;
}
#companyFooter #copyright {
	float: left;
}
#companyFooter ul {
	float: right;
}
#companyFooter li {
	display: inline;
	padding-left: 10px;
}

/* Noscript
------------------------------------*/

noscript p.jsAttention {
	width:950px;
	margin: 10px auto;
	padding: 5px 10px;
	border: 2px solid #bf0000;
	background-color: #fff6f6;
}




/* ------------------------------------------
	 Layout
------------------------------------------ */
#location {
	width: 950px;
	overflow: hidden;
	margin: 10px auto 0;
}
#location .topicPath {
	float: left;
}
#location .copy {
	float: right;
	font-size: 80%;
}

#contents {
	position: relative;
	width: 950px;
	margin: 0 auto;
	overflow: hidden;
}

#contentsNav {
	float: left;
	width: 210px;
	margin-top: 15px;
}
#contentsMain {
	float: right;
	width: 690px;
	margin-top: 15px;
}
.pageTop {
	display: block;
	width: 950px;
	margin: 20px auto 0;
	text-align: right;
}
.pageTop a {
	margin-left: 2px;
}

/* ------------------------------------------
	 module
------------------------------------------ */
#contents h1 {
	line-height: 1;
	padding-bottom: 5px;
	border-bottom: 6px solid #777777;
	font-size: 240%;
}
* html #contents h1 {
	line-height: 1.2;
}

h1#categoryTitle {
	display: block;
	border: none;
	font-size: 200%;
	font-weight: bold;
}
.noSocial h1#categoryTitle {
	margin-top: 25px;
}
#contents h1.articleTitle {
	line-height: 1.1;
	margin-top: 20px;
	padding-bottom: 0;
	border: none;
	text-align: center;
}

/* .refine */
.refine {
	margin-bottom: 15px;
	overflow: hidden;
	margin-top: 20px;
	background: #dddddd;
	zoom: 1;
}
.refine dt {
	float: left;
	width: 120px;
	padding: 10px;
	font-size: 140%;
}
.refine dd {
	float: right;
	width: 545px;
	padding: 5px 0 10px;
}
.refine ul {
	overflow: hidden;
	zoom: 1;
}
.refine li {
	float: left;
	width: 91px;
	min-height: 12px;
	line-height: 1;
	margin: 5px 5px 0 0;
	padding: 10px 3px 9px;
	border: 1px solid #999999;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	-o-border-radius: 6px;
	-ms-border-radius: 6px;
	background: #ffffff url("//jp.rakuten-static.com/1/bu/corp/global/im/shared/bg_btn.gif") repeat-x 0 100%;
	text-align: center;
	cursor: pointer;
	word-break: normal;
	word-wrap: normal;
}

.refine .backNumber li {
	width: 60px;
	padding: 7px 1px 6px;
	text-align: center;
	margin-right: 3px;
}
.refine .backNumber li a {
	color: #000000;
	text-decoration: none;
}
.refine li.active {
	border: 1px solid #bf0000;
	color: #ffffff;
	background: #bf0000;
}
.refine .doubleLine {
	min-height: 24px;
	line-height: 1;
	padding: 4px 5px 3px;
}



/* dataTable */
div.dataTable {
	margin-bottom: 15px;
}



/* ------------------------------------------
	leftNavInfo
------------------------------------------ */
#leftNavInfo {
	background: #dddddd;
	zoom: 1;
}
#leftNavInfo a {
	display: block;
	color: #000000;
	text-decoration: none;
	zoom: 1;
}
#leftNavInfo a:hover {
	color: #ffffff;
}
#leftNavInfo .active a {
	color: #ffffff;
	background: #999999;
}
#leftNavInfo .mainCategory {
	border-top: 3px solid #999999;
	font-size: 120%;
}
#leftNavInfo .first .mainCategory {
	border: none;
}
#leftNavInfo .mainCategory a {
	padding: 19px 22px 18px;
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_arrow.gif") no-repeat 10px 24px;
}
#leftNavInfo .mainCategory.active a {
	background: #999999 url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_arrow_active.gif") no-repeat 10px 24px;
}
#leftNavInfo .mainCategory a:hover {
	background: #333333 url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_arrow_active.gif") no-repeat 10px 24px;
}
#leftNavInfo .subCategory {
	display: none;
	padding-bottom: 15px;
}
#leftNavInfo .subList a {
	padding: 4px 10px 3px 30px;
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_sitenav.gif") no-repeat 20px 8px;
}
#leftNavInfo .subList .active a {
	background: #999999 url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_sitenav_active.gif") no-repeat 20px 8px;
}
#leftNavInfo .subList a:hover {
	background: #333333 url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_sitenav_active.gif") no-repeat 20px 8px;
}

#leftNavInfo .subList .subCategory a {
	padding: 4px 10px 3px 40px;
	background: #dddddd url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/icon_sitenav.gif") no-repeat  30px 8px;
}
#leftNavInfo ul.applyBox li {
	margin-top: 10px;
}
#leftNavInfo ul.applyBox li a {
	display: block;
	width: 175px;
	height: 39px;
	margin: 0 auto;
    overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
#leftNavInfo ul.applyBox li#gradsCollege a {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat 0 0;
}
#leftNavInfo ul.applyBox li#gradsCollege a:hover {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat -175px 0;
}
#leftNavInfo ul.applyBox li#gradsMba a {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat 0 -39px;
}
#leftNavInfo ul.applyBox li#gradsMba a:hover {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat -175px -39px;
}
#leftNavInfo ul.applyBox li#forTech a {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat 0 -78px;
}
#leftNavInfo ul.applyBox li#forTech a:hover {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat -175px -78px;
}
#leftNavInfo ul.applyBox li#forNonTech a {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat 0 -117px;
}
#leftNavInfo ul.applyBox li#forNonTech a:hover {
	background: url("//jp.rakuten-static.com/1/bu/corp/global/im/careers/btn_leftnav.gif") no-repeat -175px -117px;
}



/* ------------------------------------------
	pressNews / upDate left navi
------------------------------------------ */

#contents.upDate .pressRelease,
#contents.pressRelease .upDate {
	display: none;
}

/* #contentsNav.pressNav
------------------------------------*/

#contentsNav.pressNav .infoBox {
	overflow: hidden;
	background: #dddddd;
	zoom: 1;
}
#contentsNav.pressNav .infoBox li span {
	display: block;
	padding: 10px 10px 37px;
	margin-bottom: -30px;
	color: #ffffff;
	background: #999999;
	text-align: center;
}
#contentsNav.pressNav .infoBox li a {
	display: block;
	padding: 10px 10px 37px;
	margin-bottom: -30px;
	color: #333333;
	text-align: center;
	text-decoration: none;
}
#contentsNav.pressNav .infoBox li a:hover {
	color: #ffffff;
	background: #333333;
}
#pressRelease {
	float: left;
	width:105px;
}
#upDateInfo {
	float: right;
	width:105px;
}
#contentsNav.pressNav .info .links,
#contentsNav.pressNav .info dl {
	display: block;
	line-height: 1.1;
	padding: 10px 15px 9px;
	border-top: 3px solid #999999;
	color: #000000;
	background: #dddddd;
	text-decoration: none;
	zoom: 1;
}
#contentsNav.pressNav .info dt {
	font-size: 120%;
}
#contentsNav.pressNav .info dd {
	margin-top: 3px;
}
#contentsNav.pressNav .info dd ul {
	overflow: hidden;
	zoom: 1;
}
#contentsNav.pressNav .info ul li {
	float: left;
	margin: 3px 3px 0 0;
	white-space: nowrap;
}

#contentsNav.pressNav .info a {
	margin-right: 3px;
	color: #004e99;
	text-decoration: underline;
	cursor: pointer;
}
#contentsNav.pressNav .info a.active:hover,
#contentsNav.pressNav .info a:hover {
	color: #ffffff;
	background: #333333;
	text-decoration: none;
}

#contentsNav.pressNav .info a.active {
	color: #333333;
	text-decoration: none;
}
#contentsNav.pressNav .info a.current {
	color: #000000;
	text-decoration: none;
	cursor: default;
}
#contentsNav.pressNav .info a.current:hover {
	color: #000000;
	background: none;
}
#contentsNav.pressNav .info .links {
	padding: 5px 10px 10px;
}
#contentsNav.pressNav .links ul li {
	float: none;
	margin-top: 4px;
}

/* ------------------------------------------
	social
------------------------------------------ */
#contents .socialBtn {
	padding: 5px 0 0;
	overflow: hidden;
	zoom: 1;
}
#contents .socialBtn ul {
	float: right;
	overflow: hidden;
	zoom: 1;
}
#contents .socialBtn li {
	float: left;
	margin-right: 5px;
}
#contents .socialBtn li.last {
	margin-right: 0;
}