@charset "utf-8";
/* -----------------------------------------------------------------
 common
----------------------------------------------------------------- */
body {
}
.forPc {
	display:block;
}
.forSp {
	display:none;
}
#overlay {
	z-index:100;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(255,255,255,0.75);
}
@media screen and (max-width : 767px){
}

/* 一覧ボタン
------------------------------------- */
.btn_goList {
	font-size:85%;
	text-align:center;
	width:100%;
}
.btn_goList a {
	color:#fff;
	text-decoration:none;
	background: #4a4a4a;
	display:block;
	padding:8px 5px 8px 18px;
}
.btn_goList a:after {
	font-size:80%;
	content:"＞";
	margin-left:8px;
}
.btn_goList a:hover {
	background: #6a6a6a;
}

/* 一覧に戻るボタン
------------------------------------- */
.btn_goListBack {
	font-size:85%;
	text-align:center;
	width:100%;
}
.btn_goListBack a {
	color:#fff;
	text-decoration:none;
	background: #4a4a4a;
	display:block;
	padding:8px 18px 8px 5px;
}
.btn_goListBack a:before {
	font-size:80%;
	content:"＜";
	margin-right:8px;
}
.btn_goListBack a:hover {
	background: #6a6a6a;
}


/* Prev・Nextボタン
------------------------------------- */
ul.btn_pager {
	overflow:hidden;
}
ul.btn_pager li {
	color:#fff;
	text-align:center;
	width:50%;
	float:left;
	background: #f25811;
	/*box-sizing*/
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}
ul.btn_pager li.disabled_true {
	background: #f25811;
	opacity:0.50;
	filter:alpha(opacity=50);
	-ms-filter:"alpha(opacity=50)";
}
ul.btn_pager li.prev {
	border-right: 1px solid #fff;/*上書き*/
}
ul.btn_pager li a {
	color:#fff;
	text-decoration:none;
	display:block;
}
ul.btn_pager li a,
ul.btn_pager li.disabled_true {
	padding:3px 0;
}
ul.btn_pager li a:hover {
	background: rgba(255,255,255,0.2);
}
ul.btn_pager li.prev a:before,
ul.btn_pager li.prev.disabled_true:before {
	font-size:80%;
	content:"＜";
	margin-right:8px;
}
ul.btn_pager li.next a:after,
ul.btn_pager li.next.disabled_true:after {
	font-size:80%;
	content:"＞";
	margin-left:8px;
}
@media screen and (max-width : 767px){
body {
}
.forPc {
	display:none;
}
.forSp {
	display:block;
}
img {
	max-width:100%;
	height:auto;
}
}

/* -----------------------------------------------------------------
 header
----------------------------------------------------------------- */
header {
	z-index:110;
	position:relative;
}
header > .inner {
	width: 960px;
	margin:0px auto;
	overflow:hidden;
}

@media screen and (max-width : 767px){
header > .inner {
	width: 100%;
	margin:0px auto;
	overflow:hidden;
}
}

/*
 上部ブロック
------------------------------------- */
header .siteLogo {
	float:left;
	padding-top:25px;
}
header .unav {
	float:right;
}
header .unav a {
	padding:40px 12px;
	display:block;
	background: #f9f9f9;
	border-right: 1px dotted #7f7f7f;
	border-left: 1px dotted #7f7f7f;
}
@media screen and (max-width : 767px){
header .siteLogo {
	padding-top:14px;
}
}

/*
 gnav
------------------------------------- */
header .gNav.forPc:before {
	content:"";
	background: #FFF url(../images/parts_bg_collarBlock.png) repeat-x left top;
	height: 5px;
	width: 100%;
	display:block;
}
header .gNav.forPc {
	background: #464647;
	overflow:hidden;
}
header .gNav.forPc > ul {
	background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:0px 0px;
	width:948px;
	padding-left:36px;
	margin:0 auto;
	overflow:hidden;
}
header .gNav.forPc > ul > li {
	float:left;
	display:block;
	margin-left:-36px;
}
header .gNav.forPc > ul > li .menu {
	display:block;
	padding:0 36px;
	cursor:pointer;
}
header .gNav.forPc ul > li.menu01:hover,
header .gNav.forPc ul > li.menu01.active,
header .gNav.forPc ul > li.menu01.current {
background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:0px -71px;
}
header .gNav.forPc ul > li.menu02:hover,
header .gNav.forPc ul > li.menu02.active,
header .gNav.forPc ul > li.menu02.current {
background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:-157px -142px;
}
header .gNav.forPc ul > li.menu03:hover,
header .gNav.forPc ul > li.menu03.active,
header .gNav.forPc ul > li.menu03.current {
background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:-314px -213px;
}
header .gNav.forPc ul > li.menu04:hover,
header .gNav.forPc ul > li.menu04.active,
header .gNav.forPc ul > li.menu04.current {
background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:-471px -284px;
}
header .gNav.forPc ul > li.menu05:hover,
header .gNav.forPc ul > li.menu05.active,
header .gNav.forPc ul > li.menu05.current {
background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:-627px -355px;
}
header .gNav.forPc ul > li.menu06:hover,
header .gNav.forPc ul > li.menu06.active,
header .gNav.forPc ul > li.menu06.current {
	background: url(../images/gnav/gnav_bg.png) no-repeat;
	background-position:-785px -426px;
}
@media screen and (max-width : 767px){
/*----- gnavメニュー -----*/
header .forSp.btnGnav {
	text-align: center;
	background: #737373;
	height: 50px;
	width: 58px;
	padding-top:12px;
	float:right;
}
header .forSp .gNav {
	color:#fff;
	background: #1c1c1c;
	width:90%;
	padding:20px 5%;
	position:absolute;
	z-index:1000;
}
header .forSp .gNav .ttl_main {
	background: url(../images_sp/gnav_ico_main.png) no-repeat left 2px;
	background-size:20px 20px;
	margin-bottom:10px;
	padding-left: 28px;
}
header .forSp .gNav nav {
	overflow:hidden;
}
header .forSp .gNav ul {
	width:50%;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	border-left: 1px solid #FFF;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	float:left;
	overflow:hidden;
}

header .forSp .gNav ul.w100per {/*幅100％*/
	width:100%;
}

header .forSp .gNav ul+ul {
	border-left:none;
}
header .forSp .gNav ul li {
	color:#fff;
	border-bottom: 1px solid #FFF;
}
header .forSp .gNav ul li > a {
	color:#fff;
	text-decoration:none;
	font-size:90%;
	display:block;
	padding:8px 5px;
	background: #292929;
}
header .forSp .gNav ul li > a:before {
	content:"＞";
	font-size:55%;
	margin-top:5px;
	margin-right:3px;
	display:block;
	float:left;
}
header .forSp .gNav .btnClose {
	color:#000;
	text-align:center;
	background: #bfbfbf;
	border: 1px solid #FFF;
	padding:8px 5px;
	margin-top:15px;
}
}

/*
 gNavOpen
------------------------------------- */
header .gNavOpen {
	background-color:rgba(0,0,0,0.80);
	position:absolute;
	width:100%;
	left:0;
}
header .gNavOpen > .inner {
	width:960px;
	margin:0 auto;
	overflow:hidden;
}
header .gNavOpen .ttl {
	color:#fff;
	font-size:171%;
	margin:17px 0 23px 0;
}
header .gNavOpen .ttl:after {
	content:"";
	background: #FFF url(../images/parts_bg_facultyCollarBlock.png) repeat-x center center;
	margin-top:7px;
	height: 5px;
	width: 100%;
	display:block;
}
header .gNavOpen .ttl > a {
	color:#fff;
	text-decoration:none;
	padding-right:20px;
}
header .gNavOpen .ttl > a:before {
	content: url("../images/gnav/gnavOpen_ttl_arrow.png");
	margin-right:10px;
}
header .gNavOpen .img {
	width: 250px;
	float: left;
}
header .gNavOpen .easyLink {
	width: 658px;
	float: left;
	margin-left: 47px;
	margin-bottom:10px;
}
header .gNavOpen .easyLink a {
	line-height: 30px;
	color:#fff;
	text-decoration:none;
	padding:7px 10px;
}
header .gNavOpen .easyLink a.goTop {
	font-size:130%;
	background: url(../images/parts_ico_arrowWhiteLarge.png) no-repeat left center;
	padding-left:33px;
}
header .gNavOpen .easyLink a.goTop:hover {
	background: #222 url(../images/parts_ico_arrowWhiteLarge.png) no-repeat left center;
}
header .gNavOpen .easyLink a.goNews {
}
header .gNavOpen .easyLink a.goNews:hover{
	background: #222;
}
header .gNavOpen .easyLink a.goNews:before {
	content:"＜"
}
header .gNavOpen .easyLink a.goNews:after {
	content:"＞"
}
header .gNavOpen ul.subNav {
	width:188px;
	float:left;
	border-top: 1px dashed #bdbfc3;
	margin-left:47px;
	overflow:hidden;
}
header .gNavOpen ul.subNav > li {
	font-size:105%;
}
header .gNavOpen ul.subNav > li > a {
	color:#fff;
	text-decoration:none;
	display:block;
	border-bottom: 1px dashed #bdbfc3;
	background: url(../images/parts_ico_arrowWhite.png) no-repeat 5px center;
	padding:8px 0 8px 16px;
}
header .gNavOpen ul.subNav > li > a:hover {
	background: #222 url(../images/parts_ico_arrowWhite.png) no-repeat 5px center;
}
header .gNavOpen .btnClose {
	text-align:right;
	padding-top:40px;
	clear:both;
}
@media screen and (max-width : 767px){
}

/*
 utilityBox
------------------------------------- */
header .utilityBox {
	background: #f4f4f4;
}
header .utilityBox_inner {
	width: 980px;
	margin:0px auto;
	overflow:hidden;
}
header .utilityBox ul.access {
	border-left: 1px solid #d9dfcc;
	margin:20px 0;
	overflow:hidden;
	float:left;
}
header .utilityBox ul.access li {
	line-height:19px;
	float:left;
	border-right: 1px solid #d9dfcc;
}
header .utilityBox ul.access li a {
	display:block;
	margin:0 15px;
}
@media screen and (max-width : 767px){
header .utilityBox:before {
	content:"";
	background: #FFF url(../images/parts_bg_collarBlock.png) repeat-x -300px top;
	background-size:1278px auto;
	height: 15px;
	width: 100%;
	display:block;
}
header .utilityBox_inner {
	width: 100%;
}
header .utilityBox ul.access {
	border-right: 1px solid #f9f9f9;
	margin:0;
	overflow:hidden;
	float:left;
}
header .utilityBox ul.access li {
	line-height:35px;
	float:left;
	border-right: 1px solid #d5d5d5;
	border-left: 1px solid #f9f9f9;
	padding:10px 0;
}
header .utilityBox ul.access li a {
	margin:0 3px;
}
}

/*
 検索窓
------------------------------------- */
header .utilityBox .searchBox.forPc {
	margin:14px 0 0 20px;
	float:left;
}
header .utilityBox .searchBox.forPc input.l-search__text {
	width:140px;
	height:30px;
	padding:0 3px !important;
	border: 1px solid #dedede !important;
	/* border-radius */
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
}
header .utilityBox .searchBox.forPc button.l-search__btn {
	background: #f4f4f4;
	border: none;
	cursor: pointer;
}
header .utilityBox .searchBox.forPc button.l-search__btn img {
	padding:6px 9px;
	border: 1px solid #dedede;
	/* border-radius */
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
}
@media screen and (max-width : 767px){
header .utilityBox .searchBox:before {
	content:"";
	border-top: 1px solid #f9f9f9;
	display:block;
}
header .utilityBox .searchBox {
	text-align:center;
	clear:both;
	border-top: 1px solid #d5d5d5;
	padding:5px 0;
}
header .utilityBox .searchBox input.l-search__text {
	width:75%;
	height:30px;
	padding:0 3px !important;
	border: 1px solid #dedede !important;
	/* border-radius */
	border-radius:0px;
	-webkit-border-radius:0px;
	-moz-border-radius:0px;
}
header .utilityBox .searchBox button.l-search__btn {
	background: #737373;
	border: none;
	padding: 7px 15px;
	height: 30px;
	width: 50px;
}
}


/*
 言語メニュー
------------------------------------- */
header .utilityBox ul.lang {
	margin:13px 0 0 10px;
	overflow:hidden;
	float:left;
}
header .utilityBox ul.lang li {
	margin-left:3px;
	float:left;
}
header .utilityBox ul.lang li.ttl {
	margin-top:5px;
	margin-right:3px;
}
header .utilityBox ul.lang li.btn img {
	border: 1px solid #dedede;
	/* border-radius */
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
}
@media screen and (max-width : 767px){
}


/*
 オファーボタン
------------------------------------- */
header .utilityBox ul.offer {
	margin:9px 0 0 0;
	overflow:hidden;
	float:right;
}
header .utilityBox ul.offer li {
	float:left;
}
header .utilityBox ul.offer li img {
	padding:11px 10px;
	margin:0 1px 1px 4px;
	/* border-radius */
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	/* box-shadow */
	box-shadow:rgba(0, 0, 0, 0.1) 1px 1px 0px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.1) 1px 1px 0px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.1) 1px 1px 0px 0px;
}
header .utilityBox ul.offer li.docRequest img {
	border: 1px solid #8caf33;
	background: #8caf33;
}
header .utilityBox ul.offer li.application img {
	border: 1px solid #8caf33;
	background: #FFF;
}
@media screen and (max-width : 767px){
header .utilityBox ul.offer {
	margin:5px 3px 0 0;
	overflow:hidden;
	float:right;
}
header .utilityBox ul.offer li {
	float:left;
}
header .utilityBox ul.offer li img {
	padding:8px 8px;
	margin:0 1px 1px 3px;
	/* border-radius */
	border-radius:0px;
	-webkit-border-radius:0px;
	-moz-border-radius:0px;
	/* box-shadow */
	box-shadow:rgba(0, 0, 0, 0.1) 1px 1px 0px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.1) 1px 1px 0px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.1) 1px 1px 0px 0px;
}
header .utilityBox ul.offer li.docRequest img {
	border: 1px solid #8caf33;
	background: #8caf33;
}
header .utilityBox ul.offer li.application img {
	border: 1px solid #8caf33;
	background: #FFF;
}

}



/* -----------------------------------------------------------------
 contents
----------------------------------------------------------------- */
#contents {
	width:980px;
	margin:0px auto 80px;
	padding-top:40px;
	position:relative;
}
#contents:after {
  content: "";
  display: block;
  clear: both;
}
#main.col2 {
	width:640px;
	float:left;
}
#side.col2 {
	width:255px;
	float:right;
}

@media screen and (max-width : 767px){
#contents {
	width:90%;
	margin:0px auto 50px;
	padding-top:20px;
}
#main.col2 {
	width:auto;
	float:none;
}
#side.col2 {
	width:100%;
	float:none;
}
}


/* -----------------------------------------------------------------
 footer
----------------------------------------------------------------- */
footer {
	clear:both;
	background: #ecf1f7 url(../images/ft/ft_bg.png);
}
footer a:link {
	color:#000;
	text-decoration:none;
}
footer a:visited {
	color:#000;
	text-decoration:none;
}
footer a:hover {
	color:#666;
	text-decoration:none;
}
footer a:active {
	color:#666;
	text-decoration:none;
}

@media screen and (max-width : 767px){
}

/*
 infoLink
------------------------------------- */
footer .infoLink {
	width:960px;
	margin:auto;
	padding-top:140px;
}
footer .infoLink ul {
	overflow:hidden;
	text-align:center;
	letter-spacing: -.4em;
}
footer .infoLink ul li {
	width:105px;
	display:inline-block;
	vertical-align:top;
	letter-spacing: 0;
}
footer .infoLink ul li a > img {
	width:62px;
	margin:auto;
	display:block;
}
footer .infoLink ul li a > p {
	font-size:85%;
	line-height:1.2;
	margin-top:8px;
}
@media screen and (max-width : 767px){
footer .infoLink {
	text-align:center;
	width:100%;
	margin:auto;
	padding-top:60px;
}
footer .infoLink ul li {
	width:65px;
	margin-bottom:10px;
	float:none;
	display:inline-block;
	vertical-align:top;
}
footer .infoLink ul li a > img {
	width:38px;
	margin:auto;
	display:block;
}
footer .infoLink ul li a > p {
	font-size:55%;
	line-height:1.2;
	margin-top:2px;
}
footer .infoLink ul li a > div {
	line-height:10px;
}
}


/*
 snsLink
------------------------------------- */
footer .snsLink {
	width:960px;
	margin:35px auto 0;
}
footer .snsLink ul {
	overflow:hidden;
}
footer .snsLink ul li {
	float:left;
}
footer .snsLink ul li a {
	text-align:center;
	background: #4c4c4c;
	border: 1px solid #FFF;
	width:238px;
	padding:10px 0;
	display:block;
}
footer .snsLink ul li a:hover {
	background: #666;
}
@media screen and (max-width : 767px){
footer .snsLink {
	width:90%;
	margin:17px auto 0;
}
footer .snsLink ul {
	text-align:center;
	width:100%;
	display:table;
}
footer .snsLink ul li {
	width:25%;
	float:none;
	display:table-cell;
}
footer .snsLink ul li a {
	width:100%;
	padding:9px 0;
}
footer .snsLink ul li a > img {
	width:auto;
	height:17px;
}
}


/*
 termsLink
------------------------------------- */
footer .termsLink {
	width:960px;
	margin:25px auto 0;
}
footer .termsLink:before {
	content:"";
	background: url(../images/parts_bg_hrGray2px.png) repeat-x left top;
	display: block;
	height: 2px;
	width: 100%;
}
footer .termsLink ul {
	text-align:center;
}
footer .termsLink ul li {
	display:inline-block;
}
footer .termsLink ul li a {
	color:#666;
	font-size:80%;
	padding:9px 20px 12px 10px;
	display:block;
	background: url(../images/hd/hd_ico_unav_arrow.png) no-repeat left center;
}
footer .termsLink ul li a:hover {
	color:#222;
}
@media screen and (max-width : 767px){
footer .termsLink {
	width:90%;
	margin:5px auto 0;
}
footer .termsLink:before {
	content:"";
	display:none;
}
footer .termsLink ul {
	text-align:left;
	background:#fff;
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	overflow:hidden;
}
footer .termsLink ul li {
	overflow:hidden;
	display:table-cell;
	width:50%;
	float:left;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}
footer .termsLink ul li:nth-child(3),
footer .termsLink ul li:nth-child(6)  {
	width:100%;
	display:block;
	float:none;
}
footer .termsLink ul li a {
	padding:5px 8px;
	display:block;
	background: none;
}
}


/*
 authorBox
------------------------------------- */
footer .authorBox {
	color:#666;
	font-size:85%;
	text-align:center;
}
footer .authorBox h2 {
	margin-top:8px;
}
footer .authorBox h2 img {
	width:183px;
}
footer .authorBox p {
	margin-top:5px;
}

@media screen and (max-width : 767px){
footer .authorBox {
	font-size:70%;
	width:95%;
	margin:auto;
}
footer .authorBox h2 {
	margin-top:18px;
}
footer .authorBox h2 img {
	width:115px;
}
}


/*
 copyright
------------------------------------- */
footer .copyright {
	color:#999;
	font-size:75%;
	text-align:center;
	margin-top:5px;
	padding-bottom:50px;
}

@media screen and (max-width : 767px){
footer .copyright {
	font-size:65%;
	padding-bottom:90px;
}
}


/* -----------------------------------------------------------------
 fixedBox
----------------------------------------------------------------- */
/*
 goIndex
------------------------------------- */
#goIndexBox {
	position: fixed;
	z-index:10;
	bottom: 40px;
	right:20px;
}
@media screen and (max-width : 767px){
#goIndexBox {
	position: fixed;
	z-index:10;
	bottom: 30px;
	right:10px;
}
}

