@charset "UTF-8";
/* =============================================================
 structure.css
 =============================================================== */

* {
	margin: 0;
	padding: 0;
}

html {
	height: 100%;
	overflow-y: scroll;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	/*font: 12px/1.5 "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";*/
	font: 13px/1.7 "ヒラギノ角ゴ Pro W3", "メイリオ", Arial, Osaka, "ＭＳ Ｐゴシック", sans-serif;
	/*font: 13px/2 "Kozuka Mincho Pro", "Kozuka Mincho Std", "小塚明朝 Pro R", "小塚明朝 Std R", "ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro", serif;*/
	*font-size: small;
	*font: x-small;
	background: #fff;
	color: #000;
}

a {
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}
a:link, a:visited {
	color: #0073be;
	text-decoration: none;
}
a:hover, a:active {
	color: #f04c0b;
	text-decoration: none;
}

/*---layout-------------------------------------------------------------------*/

/* wrapper
---------------------------------------------------------------- */
#wrapper {
	position: relative;
	width: 100%;
	min-height: 100%;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	font-size: 100%;
	background: #fff;
}
* html #wrapper {
	height: 100%;
}

/* header
---------------------------------------------------------------- */
#header {
	position: fixed;
	top: 0;
	width: 100%;
    height: 136px;
	min-width: 1200px;
	/*border-bottom: 1px solid #efefef;*/
	background: #fff;
	z-index: 2000;
}
#header #header_inner {
	width: 1165px;
	margin: 0 auto;
	padding: 30px 35px 15px 0;
	overflow: hidden;
}
#header #header_inner #logo {
    float: left;
	/*width: 301px;*/
    margin-right: 40px;
    font-size: 24px;
    font-weight: bold;
    line-height: 24px;
    color: #343434;
}
#header #header_inner #logo a {
    color: #343434;
}
#header #header_inner #logo a:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.50;
	opacity: 0.50;
}
#header #header_inner #head_sub {
    float: left;
    font-size: 16px;
}
#header #header_inner ul {
	float: right;
}
#header #header_inner ul a {
    font-size: 20px;
    font-weight: bold;
	color: #676767;
}
#header #header_inner ul a:hover {
	color: #7d6bba;
}

/* gnavi
---------------------------------------------------------------- */
#gnavi {
	width: 100%;
	min-width: 1200px;
	height: 58px;
	background: url("../images/gnavi_bg.gif") repeat-x left top;
	font-size: 14px;
}
#gnavi > ul {
	width: 1202px;
    margin: 0 auto;
    overflow: hidden;
}
#gnavi > ul > li {
	float: left;
	width: 200px;
    padding: 15px 0;
}
#gnavi > ul > li > a {
    position: relative;
	display: block;
	width: 100%;
	/*height: 27px;*/
    border-left: 1px solid #A4A4A4; 
    line-height: 28px;
	font-size: 18px;
	color: #fff;
}
#gnavi > ul > li:nth-child(6) > a {
    border-right: 1px solid #A4A4A4; 
}
#gnavi > ul > li > a::after {
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	margin: auto;
	background: #fff;
	transition: 0.2s;
}
#gnavi > ul > li > a:hover::after {
	width: 40px;
}

#gnavi ul.sub {
	display: none;
	position: absolute;
	top: 137px;
	z-index: 3000;
	width: 200px;
}
#gnavi ul.sub li a {
	display: block;
	width: 185px;
	height: 44px;
	padding: 0 0 0 15px;
	border-top: 1px solid #fff;
	background: #AE6DD4;
	line-height: 44px;
	font-size: 18px;
    color: #fff;
	text-align: left;
}
#gnavi ul.sub li p {
	display: block;
	width: 185px;
	height: 44px;
	padding: 0 0 0 15px;
	border-top: 1px solid #fff;
	background: #F1EFE2;
	line-height: 44px;
	font-size: 18px;
    color: #707070;
	text-align: left;
}
#gnavi ul.sub li:first-child a,
#gnavi ul.sub li:first-child p {
	border-top: none;
}

/* breadcrumb
---------------------------------------------------------------- */
#breadcrumb {
	width: 100%;
	min-width: 1200px;
	margin-top: 137px;
	padding: 16px 0;
	font-size: 16px;
	line-height: 1;
	color: #535353;
}
#breadcrumb ul {
	width: 1200px;
	margin: 0 auto;
	padding: 1px 0;
	overflow: hidden;
}
#breadcrumb li {
	float: left;
	margin-right: 12px;
	padding-right: 20px;
	background: url(../images/breadcrumb.png) no-repeat right;
}
#breadcrumb li:last-child {
	margin-right: 0;
	padding-right: 0;
	background: none;
}
#breadcrumb li a {
	text-decoration: none;
	color: #535353;
}
#breadcrumb li a:hover {
	text-decoration: underline;
	color: #fc9808;
}

/* main
---------------------------------------------------------------- */
#main {
	position: relative;
	width: 100%;
	min-width: 1200px;
	margin: 0 auto;
	padding-bottom: 150px;
	overflow: hidden;
}

/* contents
---------------------------------------------------------------- */
#contents {
	width: 100%;
	min-width: 1200px;
	overflow: hidden;
	text-align: left;
}

/* pagetop
---------------------------------------------------------------- */
.pagetop {
	display: none;
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 5000;	
}
.pagetop a {
	display: block;
	width: 60px;
	height: 60px;
	background: url(../images/pagetop.png) no-repeat;
}
.pagetop a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

/* footer
---------------------------------------------------------------- */
#footer {
	width: 100%;
	min-width: 1200px;
	background: #F1EFE2;
}
#footer #footer_t {
	width: 100%;
}
#footer #footer_t_inner {
	width: 1200px;
	margin: 0 auto;
	padding: 50px 0 40px;
	overflow: hidden;
	text-align: left;
}
#footer #footer_t_inner .footer_l {
	float: left;
	width: 450px;
}
#footer #footer_t_inner .footer_r {
	float: left;
	width: 750px;
    overflow: hidden;
}
#footer #footer_t_inner #footer_logo {
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: bold;
}
#footer #footer_t_inner .address {
	margin-bottom: 10px;
	font-size: 14px;
}
/*#footer #footer_t_inner .mail_tit {
	margin-bottom: 10px;
	font-size: 14px;
}*/
#footer #footer_t_inner .footer_l_inner {
	width: 360px;
    overflow: hidden;
}
#footer #footer_t_inner .footer_l_inner .mail {
    float: left;
    display: block;
	width: 228px;
    height: 38px;
    padding-left: 25px;
    border: 1px solid #7D6BBA;
    background: url("../images/icon_mail.png") no-repeat 10px center;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
    font-size: 13px;
    line-height: 38px;
    color: #7D6BBA;
    text-align: center;
}
/*#footer #footer_t_inner .footer_l_inner .sub {
    float: right;
    display: block;
	width: 120px;
    height: 40px;
	border-radius: 3px;
    background: #7D6BBA;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	font-size: 16px;
    line-height: 40px;
    color: #fff;
    text-align: center;
}
*/
#footer #footer_t_inner .footer_r ul.footer_list01,
#footer #footer_t_inner .footer_r ul.footer_list02,
#footer #footer_t_inner .footer_r ul.footer_list03,
#footer #footer_t_inner .footer_r ul.footer_list04 {
	float: left;
    margin-right: 70px;
}
#footer #footer_t_inner .footer_r ul {
	font-size: 13px;
}
#footer #footer_t_inner .footer_r ul li {
	margin-bottom: 10px;
}
#footer #footer_t_inner .footer_r ul a {
	color: #000;
}
#footer #footer_t_inner .footer_r ul a:hover {
	color: #f04c0b;
}
#footer #footer_t_inner .footer_r ul li ul {
	margin-top: 5px;
	margin-left: 2.5em;
	padding-left: 0em;
	list-style: disc;
}
#footer #footer_t_inner .footer_r ul li ul li {
	margin-bottom: 0;
}

#footer_b {
	width: 100%;
	background: #444;
	color: #fff;
}
#footer_b_inner {
	width: 1200px;
	margin: 0 auto;
	padding: 20px 0;
	font-size: 14px;
}
