@charset "utf-8";

/*
layout
*/

/* マージンTOP */
.mt0   { margin-top:0    !important; }
.mt3   { margin-top:3px  !important; }
.mt5   { margin-top:5px  !important; }
.mt10  { margin-top:10px !important; }
.mt15  { margin-top:15px !important; }
.mt20  { margin-top:20px !important; }
.mt25  { margin-top:25px !important; }
.mt30  { margin-top:30px !important; }
.mt35  { margin-top:35px !important; }
.mt40  { margin-top:40px !important; }
.mt45  { margin-top:45px !important; }
.mt50  { margin-top:50px !important; }
.mt55  { margin-top:55px !important; }
.mt60  { margin-top:60px !important; }

/* マージンBOTTOM */
.mb0   { margin-bottom:0    !important; }
.mb3   { margin-bottom:3px  !important; }
.mb5   { margin-bottom:5px  !important; }
.mb10  { margin-bottom:10px !important; }
.mb15  { margin-bottom:15px !important; }
.mb20  { margin-bottom:20px !important; }
.mb25  { margin-bottom:25px !important; }
.mb30  { margin-bottom:30px !important; }
.mb35  { margin-bottom:35px !important; }
.mb40  { margin-bottom:40px !important; }
.mb45  { margin-bottom:45px !important; }
.mb50  { margin-bottom:50px !important; }
.mb55  { margin-bottom:55px !important; }
.mb60  { margin-bottom:60px !important; }

/* ワイド */
.w100   { width: 100%!important; }

/* 太字 */
.tb   { font-weight: bold; }


@media print, screen and (min-width: 641px) {
/* ------------------------------------------------------------
　パソコン
------------------------------------------------------------*/

body {
	min-width: 1280px;
}

/* パソコンのみ表示 */
.pcOnly { display:block!important; }
.spOnly { display:none!important; }

/* パソコンのみ改行 */
.brSc { display:none!important; }

/* リンク */
a:link    { color:#000; }
a:visited { color:#000; }
a:hover   { color:#000;text-decoration:underline; }
a:active  { color:#000;text-decoration:underline; }

a:hover img {
	opacity: 0.8;  
	filter: alpha(opacity=80);  
}

/* ワイド */
.w460   { width: 460px !important; }

/* -- ヘッダー -- */
.header {
	width: 100%;
	background: #000;
	box-sizing: border-box; 
}

.fixedHeader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-o-border-radius: 0;
}

.headerInner {
	width: 980px;
	margin: 0 auto;
	height: 60px;
	overflow: hidden;
}

.headerInner .logo {
	float: left;
	width: 220px;
	height: auto;
	margin-top: 10px;
}

.headerInner .logo img {
	width: 100%;
}

/* menu */
.headerInner .btnSpMenu,
.headerInner ul.spMenu { display:none; }

.headerInner ul.pcMenu {
	float: right;
	max-width: 648px;
	width:100%;
	height: 60px;
	overflow:hidden;
}

.headerInner ul.pcMenu li {
	float:left;
}

.headerInner ul.pcMenu li img {
	width: 100%;
}

/* --メインイメージ -- */
.mainImage {
	width: 100%;
	height: 339px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}
.mainImage .img_main_bg {
	width: 100%;
	height: auto;
}
.mainImage .img_main_ttl {
	position: absolute;
	top: 120px;	
	text-align: center;
	width: 100%;
}

.mainImage .img_main_ttl img {
	display: inline !important;
}


/* --テキストボタン -- */
.contentBoxInner .btnTxt a {
	width: 246px;
	height: 40px;
	box-sizing: border-box;
	border: solid 1px #666;
	background-color: #fff;
	padding-top: 16px;
	font-size: 86%;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
	display: block;
}

.contentBoxInner .btnTxt a span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	vertical-align: middle;
	text-decoration: none;
}

.contentBoxInner .btnTxt a span::before,
.contentBoxInner .btnTxt a span::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.contentBoxInner .btnTxt a span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.contentBoxInner .btnTxt_back a span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-bottom: 1px solid #666;
	border-left: 1px solid #666;
	border-top: none;
	border-right: none;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.contentBoxInner .btnTxt a:hover {
	width: 246px;
	height: 40px;
	box-sizing: border-box;
	border: solid 1px #000;
	background-color: #000;
	color: #fff;
	padding-top: 16px;
	font-size: 86%;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
	display: block;
}

.contentBoxInner .btnTxt a:hover span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	vertical-align: middle;
	text-decoration: none;
}

.contentBoxInner .btnTxt a:hover span::before,
.contentBoxInner .btnTxt a:hover span::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.contentBoxInner .btnTxt a:hover span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.contentBoxInner .btnTxt_back a:hover span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
	border-top: none;
	border-right: none;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/* --ページ内リンク -- */
.pageLink {
	width: 980px;
	margin: 0 auto;
	text-align: center;
}

.pageLink ul {
	overflow:hidden;
}

.pageLink ul li {
	display: inline-block;
	margin-right: 30px;
	box-sizing: border-box; 
}

.pageLink ul li:last-child {
	margin-right: 0;
}

.pageLink ul li a {
	font-size: 86%;
	color: #fff;
	padding: 15px 0;
	display: block;
}

.pageLink ul li a span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	vertical-align: middle;
	text-decoration: none;
}

.pageLink ul li a span::before,
.pageLink ul li a span::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageLink ul li a span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.pageLink ul li a span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	vertical-align: middle;
	text-decoration: none;
}

.pageLink ul li a span::before,
.pageLink ul li a span::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageLink ul li a span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.pageLink ul li a:hover {
	opacity: 0.8;  
	filter: alpha(opacity=80);  
}

/* --コンテンツ -- */
.content {
	width: 100%;
}

.contentBox {
	width: 100%;
	box-sizing: border-box; 
}

.bgColor01 {
	background-color: #f5f5f5;
}

.bgColor02 {
	background-color: #333;
}

.bgColor03 {
	background-color: #000;
}

.bgColor04 {
	background-color: #fff;
}

.bgColor05 {
	background-color: #f5eeee;
}

.bgColor06 {
	background-color: #e5e5e5;
}

.contentBoxInner {
	width: 980px;
	min-width: 980px;
	margin:0 auto;
	padding: 80px 0;
}

.contentBoxInnerWhite {
	width: 980px;
	min-width: 980px;
	margin:0 auto;
	box-sizing: border-box;
	padding: 30px;
	background-color: #fff
}

.pageBtnArea {
	width: 980px;
	margin: 60px auto 0;
	text-align: center;
}

.pageBtnArea ul {
	overflow:hidden;
}

.pageBtnArea ul li {
	display: inline-block;
}

.pageBtnArea ul li a {
	width: 35px;
	height: 35px;
	display: block;
	box-sizing: border-box;
	border: solid 1px #666;
	color: #000;
	background-color: #fff;
	padding-top: 0px;
}

.pageBtnArea ul li a.hover,
.pageBtnArea ul li a:hover {
	border: solid 1px #666;
	color: #fff;
	background-color: #000;
	text-decoration:none;
}

.pageBtnArea ul li a span.back {
	width: 33px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	text-indent: 100%;
	white-space: nowrap;
    overflow: hidden;
}

.pageBtnArea ul li a span.back::before,
.pageBtnArea ul li a span.back::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageBtnArea ul li a span.back::before{
	left: 14px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.pageBtnArea ul li a span.next {
	width: 33px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.pageBtnArea ul li a span.next::before,
.pageBtnArea ul li a span.next::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageBtnArea ul li a span.next::before{
	left: 10px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.pageBtnArea ul li a:hover span::before {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}

/* -- ページリンクボタン -- */
.pageLinkArea{
	background-color: #e5e5e5;
	padding: 10px 30px;
	margin-top: 30px;
}
.pageLinkArea .btnTxt_back{
	float: left;
	width: 640px;
}
.pageLinkArea .prevTxt{
	float: left;
	width: 140px;
	padding-top: 12px;
}
.pageLinkArea .nextTxt{
	float: right;
	width: 140px;
	text-align: right;
	padding-top: 12px;
}

.floatLeft {
	float: left;
}

.floatRight {
	float: right;
}

/* -- フッター -- */
.footer {
	width:100%;
	height: 308px;
	background:url(/common/images/bg_footer.png) repeat-x;
}

.footer .footerContact {
	width:100%;
	height: 197px;
	background:url(/common/images/bg_footer_contact_pc.png) no-repeat top left;
	margin:0 auto;
	text-align: center;
	box-sizing: border-box; 
	padding-top: 60px;
	-moz-background-size:100% auto;
	background-size:100% auto; 

}

.footer .footerNavi {
	width: 980px;
	height: 71px;
	margin:0 auto;
	position: relative;
	box-sizing: border-box; 
	padding-top: 19px;
}

.footer .footerNavi ul{
	display:table;
	border-spacing: 30px 0;
	height: 32px;
	margin:0 auto;
}	

.footer .footerNavi ul li {
	display:table-cell;
	vertical-align:middle;
	margin-right: 30px;
	font-size:81.25%;
	color: #fff;
}

.footer .footerNavi a:link    { color:#fff; }
.footer .footerNavi a:visited { color:#fff; }
.footer .footerNavi a:hover   { color:#fff;text-decoration:underline; }
.footer .footerNavi a:active  { color:#fff;text-decoration:underline; }

.footer .footerNavi ul li:last-child {
	margin-right: 0;
}

.footer .footerCopyright {
	width: 980px;
	height: 40px;
	margin: 0 auto;
	box-sizing: border-box; 
	text-align: center;
	padding-top: 15px;
}

.footer .footerCopyright p {
	color: #fff;
	font-size: 72%;
	font-family: Helvetica;
}

/* -- ページTOPボタン -- */
.footer .footerNavi .pageTop {
	width: 68px;
	height: 30px;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1000;
}

.pageTop_sp { display:none; }

}

@media only screen and (max-width: 640px) {
/* ------------------------------------------------------------
　スマホ
------------------------------------------------------------*/

/* スマホのみ表示 */
.spOnly { display:block!important; }
.pcOnly { display:none!important; }

/* スマホのみ改行 */
.brPc { display:none!important; }

/* リンク */
a:link    { color:#000; }
a:visited { color:#000; }
a:hover   { color:#000;text-decoration:none; }
a:active  { color:#000;text-decoration:none; }

/* -- ヘッダー -- */
.header {
	width: 100%;
	height: 45px;
	box-sizing: border-box; 
	background: #000;
}

.fixedHeader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-o-border-radius: 0;
}

.headerInner {
	height: 45px;
	padding: 10px;
	box-sizing: border-box; 
	overflow:hidden;
}

.headerInner .logo {
	float: left;
	width: 116px;
	height: 22px;
}

.headerInner .logo img {
	width: 100%;
}

/* menu */
.headerInner ul.pcMenu { display:none; }

.btnSpMenu {
	float: right;
	display:block;
	cursor:pointer;
	width:25px;
	height:25px;
	background:url(/common/images/btn_menu_sp.png) no-repeat;
	background-size:cover;
	text-indent:-9999px;
}

.btnOpen {
	float: right;
	display:block;
	cursor:pointer;
	width:25px;
	height:25px;
	background-size:contain;
	background:url(/common/images/btn_menu_sp.png) no-repeat;
	background-position:0 -25px;
	background-size:cover;
	text-indent:-9999px;
}

.btnClose {
	float: right;
	display:block;
	cursor:pointer;
	width:25px;
	height:25px;
	background-size:contain;
	background:url(/common/images/btn_menu_sp.png) no-repeat;
	background-size:cover;
	text-indent:-9999px;
}

ul.spMenu {
	display:block;
	width:100%;
	z-index: 100;
	display:none;
	position:absolute;
	top:45px;
	left:0;
}

ul.spMenu li {
	text-align: center;
}

ul.spMenu li a {
	display:block;
	padding:15px;
	background:#000;
	border-top:solid 1px #bbb;
	font-size:81.25%;
	color: #fff;
	text-decoration:none;
	position:relative;
}

ul.spMenu li a.spMenuLast  {
	border-bottom:solid 1px #bbb;
}

.contentBoxInner .btnTxt a {
	width: 90%;
	height: 45px;
	box-sizing: border-box;
	border: solid 1px #666;
	padding-top: 17px;
	font-size: 100%;
	margin: 0 auto;
	line-height: 0.5;
	text-align: center;
	display: block;
}

.contentBoxInner .btnTxt span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	vertical-align: middle;
	text-decoration: none;
}

.contentBoxInner .btnTxt span::before,
.contentBoxInner .btnTxt span::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.contentBoxInner .btnTxt span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* --メインイメージ -- */
.mainImage img {
	width:100%;
}

/* --ページ内リンク -- */
.pageLink {
	width:100%;
	box-sizing: border-box;
	padding: 15px 5px;
	text-align: center;
}

.pageLink ul {
	overflow:hidden;
}

.pageLink ul li {
	display: inline-block;
	margin-right: 10px;
	box-sizing: border-box; 
}

.pageLink ul li.pageLinkSp,
.pageLink ul li:last-child {
	margin-right: 0;
}

.pageLink ul li a {
	font-size: 68%;
	color: #fff;
	padding: 10px 0;
	display: block;
}

.pageLink ul li a span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 15px;
	vertical-align: middle;
	text-decoration: none;
}

.pageLink ul li a span::before,
.pageLink ul li a span::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageLink ul li a span::before{
	left: 2px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}


/* --コンテンツ -- */
.content {
	width:100%;
	box-sizing: border-box;
}

.contentBox {
	width:100%;
	box-sizing: border-box;
}

.contentBoxInner {
    width: 100%;
    box-sizing: border-box;
    padding: 60px 20px;
}

.contentBoxInnerWhite {
	width:100%;
	box-sizing: border-box;
	margin:0 auto;
	padding: 15px 10px;
	background-color: #fff;
	line-height:1.4em;
}

.bgColor01 {
	background-color: #f5f5f5;
}

.bgColor03 {
	background-color: #000;
}

.bgColor04 {
	background-color: #fff;
}

.pageBtnArea {
	width:100%;
	box-sizing: border-box;
	padding: 15px;
	margin-top: 30px;
	text-align: center;
}

.pageBtnArea ul {
	overflow:hidden;
}

.pageBtnArea ul li {
	display: inline-block;
}

.pageBtnArea ul li a {
	width: 35px;
	height: 35px;
	display: block;
	box-sizing: border-box;
	border: solid 1px #666;
	color: #000;
	background-color: #fff;
	padding-top: 6px;
}

.pageBtnArea ul li a.hover {
	border: solid 1px #666;
	color: #fff;
	background-color: #000;
	text-decoration:none;
}

.pageBtnArea ul li a span.back {
	width: 33px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	text-indent: 100%;
	white-space: nowrap;
    overflow: hidden;
}

.pageBtnArea ul li a span.back::before,
.pageBtnArea ul li a span.back::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageBtnArea ul li a span.back::before{
	left: 14px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.pageBtnArea ul li a span.next {
	width: 33px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.pageBtnArea ul li a span.next::before,
.pageBtnArea ul li a span.next::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageBtnArea ul li a span.next::before{
	left: 10px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


.pageLinkArea {
	width:100%;
	box-sizing: border-box;
	padding: 15px;
	margin-top: 30px;
	text-align: center;
}

.pageLinkArea ul {
	overflow:hidden;
}

.pageLinkArea ul li {
	display: inline-block;
}

.pageLinkArea ul li a {
	width: 35px;
	height: 35px;
	display: block;
	box-sizing: border-box;
	border: solid 1px #666;
	color: #000;
	background-color: #fff;
	padding-top: 6px;
}
.pageLinkArea ul li a span.back {
	width: 33px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	text-indent: 100%;
	white-space: nowrap;
    overflow: hidden;
}

.pageLinkArea ul li a span.back::before,
.pageLinkArea ul li a span.back::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageLinkArea ul li a span.back::before{
	left: 14px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.pageLinkArea ul li a span.next {
	width: 33px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.pageLinkArea ul li a span.next::before,
.pageLinkArea ul li a span.next::after{
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.pageLinkArea ul li a span.next::before{
	left: 10px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.pageLinkArea ul .sp_btnTxt_back a{
	width: 160px;
}


/* -- フッター -- */
.footer {
	width: 100%;
}

.footer .footerContact {
	width: 100%;
	background:url(/common/images/bg_footer_contact_sp.png) no-repeat top center;
	background-color: #e3e3e2;
	background-size: cover;
	text-align: center;
	box-sizing: border-box;
	padding: 30px 10px;
}

.footer .footerContact p {
	width: 100%;
	height: auto;
	margin:0 auto;
}

.footer .footerContact p img {
	width: 100%;
}

.footer .footerNavi ul{
	width: 100%;
	background-color: #333;
}	

.footer .footerNavi ul li {
	font-size:81.25%;
	text-align: center;
	color: #fff;
	border-bottom: solid 1px #bbb;
}

.footer .footerNavi ul li:last-child {
	border-bottom: none;
}

.footer .footerNavi ul li.black {
	background-color: #000;
}

.footer .footerNavi a,
.footer .footerNavi img {
	display: block;
	padding: 20px 10px;
}

.footer .footerNavi img {
	margin: 0 auto;
}

.footer .footerNavi a:link    { color:#fff; }
.footer .footerNavi a:visited { color:#fff; }
.footer .footerNavi a:hover   { color:#fff;text-decoration:none; }
.footer .footerNavi a:active  { color:#fff;text-decoration:none; }

.footer .footerCopyright {
	width:100%;
	background-color: #000;
	text-align: center;
	box-sizing: border-box;
	padding: 15px 10px;
}

.footer .footerCopyright p {
	color: #fff;
	font-size: 75%;
}

.header,
.contentBox,
.footer {
	min-width: 320px!important;
}

}