@charset "UTF-8";
/*----------------------------------------

	Default CSS

	- default setting
	- font setting
	- line-height setting
	- indent setting
	- link setting
	- color setting
	- common setting
	- clearfix
	- header
	- content
	- footer
	- print

-----------------------------------------*/

.w_break {
	word-break: break-word;
}

.font_c_blue {
	color: #00a6cf;
}

img {
	max-width: 100%;
	height: auto;
}

/*----------------------------------------
	default setting
-----------------------------------------*/
th, h1, h2, h3, h4, h5, h6 {
	margin: 0;
	font-weight: normal;
}
p, dl, dd, ol, ul, figure {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: separate;
}
body {
	color: #000000;
	font-family: "Microsoft YaHei","微软雅黑",SimSun,sans-serif;
	line-height: 1.6;
	font-kerning: normal;
}
html, body {
	height: 100%;
}
img {
	vertical-align: bottom;
}
em {
	font-style: normal;
	font-weight: bold;
}
li, dt, dd {
	list-style: none;
	vertical-align: bottom;
}
li img, dt img, dd img {
	vertical-align: top;
}
small {
	font-size: 100%;
}
input,textarea,select {
	outline: none;
}

/* 英語フォント */
[class^="en_"], [class*=" en_"] {
	font-family: 'Open Sans', sans-serif;
	letter-spacing: 0.06em;
}

@media screen and (min-width:835px) {
	/* pc  835 - # */
	.pcObj {}
	.spObj { display: none; }
}
@media screen and (max-width:834px) {
	/* sp  # - 834 */
	.pcObj { display: none; }
	.spObj {}
}

.en_lignt01 {
	font-weight: 300;
}
.en_sbold01 {
	font-weight: 600;
}
.en_bold01 {
	font-weight: 700;
}
.italic {
	font-style: italic;
}

#fb-root { display: none; }
.over, .modal {}

/*----------------------------------------
	font setting
-----------------------------------------*/
.font8 ,.font8_12 ,.font8_15 {
	font-size: 0.8rem; }
#breadcrumb,
.font10 ,.font10_12 ,.font10_14 ,.font10_15 ,.font10_20 {
	font-size: 1.0rem; }
.font11 ,.font11_12 ,.font11_15 ,.font11_25 {
	font-size: 1.1rem; }
.font12 ,.font12_14 ,.font12_15 ,.font12_16 ,.font12_18 ,.font12_20 ,.font12_24 {
	font-size: 1.2rem; }
.font13 ,.font13_14 ,.font13_16 {
	font-size: 1.3rem; }
body,
.font14 ,.font14_12 ,.font14_15 ,.font14_16 ,.font14_18 ,.font14_22 ,.font14_24 {
	font-size: 1.4rem; }
.font15 ,.font15_12 ,.font15_16 ,.font15_20 ,.font15_22 ,.font15_30 {
	font-size: 1.5rem; }
.font16 ,.font16_14 ,.font16_18_16 ,.font16_20 ,.font16_24 ,.font16_26 ,.font16_28 {
	font-size: 1.6rem; }
.font17 ,.font17_22 ,.font17_30 ,.font17_32 {
	font-size: 1.7rem; }
.font18,.font18_20 ,.font18_22 ,.font18_24 ,.font18_26 ,.font18_28 ,.font18_32 {
	font-size: 1.8rem; }
.font20 ,.font20_32, .font20_24, .font20_26, .font20_40{
	font-size: 2.0rem; }
.font21 ,.font21_28 {
	font-size: 2.1rem; }
.font22 , .font22_40 {
	font-size: 2.2rem; }
.font23_46 {
	font-size: 2.3rem; }
.font24 ,.font24_30 {
	font-size: 2.4rem; }
 .font25_40, .font25_50 {
	font-size: 2.5rem; }
.font26, .font26_40 {
	font-size: 2.6rem; }
.font28 {
	font-size: 2.8rem; }
.font30 ,.font30_36 ,.font30_70 {
	font-size: 3.0rem; }
.font34_56 ,.font34_74 {
	font-size: 3.4rem; }
.font38_74 {
	font-size: 3.8rem; }
.font44_74 {
	font-size: 4.4rem; }

@media screen and (min-width:835px) {
	#breadcrumb,
	.font8_12 ,.font10_12 ,.font11_12 ,.font14_12 ,.font15_12 {
		font-size: 1.2rem; }
	.font10_14 ,.font12_14 ,.font16_14 {
		font-size: 1.4rem; }
	.font8_15 ,.font11_15 ,.font12_15 ,.font13_15 ,.font14_15 {
		font-size: 1.5rem; }
	body,
	.font12_16 ,.font13_16 ,.font14_16 ,.font15_16 {
		font-size: 1.6rem; }
	.font12_18 ,.font14_18 ,.font16_18 {
		font-size: 1.8rem; }
	.font10_20 ,.font12_20 ,.font15_20 ,.font16_20,.font18_20 {
		font-size: 2.0rem; }
	.font14_22 ,.font15_22 ,.font17_22 ,.font18_22 {
		font-size: 2.2rem; }
	.font12_24 ,.font14_24 ,.font16_24 ,.font18_24, .font20_24 {
		font-size: 2.4rem; }
	.font11_25 {
		font-size: 2.5rem; }
	.font16_26 ,.font18_26, .font20_26 {
		font-size: 2.6rem; }
	.font16_28, .font18_28 ,.font21_28 {
		font-size: 2.8rem; }
	.font15_30 ,.font17_30 ,.font24_30 {
		font-size: 3.0rem; }
	.font17_32, .font18_32, .font20_32 {
		font-size: 3.2rem; }
	.font30_36 {
		font-size: 3.6rem; }
	.font20_40, .font22_40 , .font25_40, .font26_40 {
		font-size: 4.0rem; }
	.font23_46 {
		font-size: 4.6rem; }
	.font25_50 {
		font-size: 5.0rem; }
	.font34_56 {
		font-size: 5.6rem; }
	.font30_70 {
		font-size: 7.0rem; }
	.font34_74, .font38_74, .font44_74 {
		font-size: 7.4rem; }
}

/*----------------------------------------
	line-height setting（default/2）
-----------------------------------------*/
.clearlh {
	line-height: 0;
}

.lh1 {
	line-height: 1;
}
ol#breadcrumb,
.lh12 {
	line-height: 1.2;
}
h1, h2, h3, h4, h5, h6, small,
[class^="en_"], [class*=" en_"],
.lh15 {
	line-height: 1.5;
}
.lh2,
.lh2_15 {
	line-height: 2;
}
.lh17 {
	line-height: 1.75;
}
@media screen and (max-width:834px) {
	/* sp  # - 834 */
	.lh2_15 {
		line-height: 1.5;
	}
}

/*----------------------------------------
	indent setting
-----------------------------------------*/
.indent00 {
	display: block;
}
.indent01 {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}
.indentVar > span {
	display: table-cell;
	vertical-align: top;
}

/*----------------------------------------
	link setting
-----------------------------------------*/
a,
a:focus {
	outline: none;
}
a:link,
a:visited {
	/*color: #ffffff;*/
	text-decoration: none;
}
a:hover,
a:active {
	/*color: #ffffff;*/
	text-decoration: none;
}
@media screen and (max-width:834px) {
	/* sp  # - 834 */
	a:hover,
	a:active {
		text-decoration: none;
	}
}
body.pc img.rOver
/*body.pc a.rOver*/ {
	transition: .3s;
}
body.pc img.rOver:hover ,
body.pc a.rOver:hover {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity:0.7;
	-khtml-opacity: 0.7;
}
body.pc a {
	transition: .3s;
}
body.pc a:hover {
	opacity:0.70;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity:0.70;
	-khtml-opacity: 0.70;
}

/*----------------------------------------
	color setting
-----------------------------------------*/
.white01 ,
a.white01 {
	color: #ffffff;
}
.red01 ,
a.red01 {
	color: #660000;
}

/*----------------------------------------
	common setting
-----------------------------------------*/
#wrapper {
 width: 100%;
 position: relative;
 height:auto !important; /*IE6対策*/
 height: 100%; /*IE6対策*/
 min-height: 100%;
 padding: 120px 0 0;
}
@media screen and (min-width:835px) {
#wrapper {
	padding: 0;
}
}

#wrapper_inner {
	position: relative;
}
@media screen and (min-width:835px) {
#wrapper_inner {
	padding: 80px 0 0;
}
}

.mincho01 {
	font-family: YuMincho, YuMinchoM, "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
@media screen and (min-width:835px) {
	.mincho02 {
		font-family: YuMincho, YuMinchoM, "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	}
}
.gosick01 {
	font-family: YuGothic, YuGothicM, "Yu Gothic", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ","MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}
.clearfsize {
	font-size: 0;
	line-height: 0;
}
.bold01 {
	font-weight: bold;
}
.bold01_00 {
	font-weight: bold;
}
@media screen and (min-width:835px) {
	.bold00_01 {
		font-weight: bold;
	}
	.bold01_00 {
		font-weight: normal;
	}
}
.taC ,.taC_R ,.taC_L { text-align: center; }
.taL ,.taL_C ,.taL_R { text-align: left; }
.taR ,.taR_C ,.taR_L { text-align: right; }
@media screen and (max-width:834px) {
	/* sp  # - 834 */
	.taL_C ,.taR_C { text-align: center; }
	.taC_R ,.taL_R { text-align: right; }
	.taC_L ,.taR_L { text-align: left; }
}

/* リストマーク */
.square01 {
	display: block;
	padding-left: 1em;
	text-indent: -2em;
}
.square01:before {
	content: "\025a0";
	width: 1em;
	padding-left: 1em;
	color: #cccccc;
}
.disc01 {
	display: block;
	padding-left: 1.5em;
	text-indent: -2em;
}
.disc01:before {
	content: "\030fb";
	width: 1em;
	padding-left: 1em;
	color: #333333;
}
.rpimg {
	width: 100%;
	height: auto;
}
@media screen and (min-width:835px) {
	/* pc  835 - # */
	.pcimg {
		width: 100%;
		height: auto;
	}
}
@media screen and (max-width:834px) {
	/* sp  # - 834 */
	.spimg {
		width: 100%;
		height: auto;
	}
}

/*----------------------------------------
	clearfix
-----------------------------------------*/
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

/*----------------------------------------
	z-index
-----------------------------------------*/

/* tb  835 - # */
@media screen and (min-width:835px) {}
/* pc  1200 - # */
@media screen and (min-width:1200px) {
}

/*----------------------------------------
	header
-----------------------------------------*/

/* tb  835 - # */
@media screen and (min-width:835px) {}
/* pc  1200 - # */
@media screen and (min-width:1200px) {
}

/*----------------------------------------
	content
-----------------------------------------*/

/* tb  835 - # */
@media screen and (min-width:835px) {}
/* pc  1200 - # */
@media screen and (min-width:1200px) {
}

/*----------------------------------------
	footer
-----------------------------------------*/

/* tb  835 - # */
@media screen and (min-width:835px) {}
/* pc  1200 - # */
@media screen and (min-width:1200px) {
}

/*----------------------------------------
	print
-----------------------------------------*/
@media print {}



/*----------------------------------------
	parts
-----------------------------------------*/

/* parts */
.btn_more a {
	position: relative;
	display: block;
	background: #00a6cf;
	width: 38.6%;
	padding: 7px 0 8px;
	margin: 0 auto;
	color: #ffffff;
	border-radius: 50px;
	text-align: center;
}
.btn_more a:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 8px;
	width: 4px;
	height: 4px;
	margin-top: -4px;
	border-top: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (min-width:835px) {
.btn_more a {
	width: 230px;
	padding: 8px 0 10px;
}
.btn_more a:after {
	right: 13px;
	width: 6px;
	height: 6px;
	margin-top: -3px;
}
}

/* picBoxScroll */
#wrapper .picBoxScroll {
	position: relative;
	overflow: hidden;
	overflow-x: scroll;
}
#wrapper .picBoxScroll .pic {
	min-width: 800px;
	padding: 0 0 3%;
}
#wrapper .picBoxScroll::-webkit-scrollbar{
	height: 6px;
	padding: 2px 0;
}
#wrapper .picBoxScroll::-webkit-scrollbar-track{
  background: #4d4d4d;
  border: none;
  border-radius: 50px;
  box-shadow: inset 0 0 2px #777;
}
#wrapper .picBoxScroll::-webkit-scrollbar-thumb{
  background: #ffffff;
  border-radius: 50px;
  box-shadow: none;
}


@media print, screen and (min-width: 835px){
#wrapper .picBoxScroll {
	overflow: inherit;
	margin: 0;
}
#wrapper .picBoxScroll .pic {
	min-width: auto;
	padding: 0;
}
}


/* ------------------------------
   logoArea
------------------------------ */

#logoArea {
	position: fixed;
	display: block;
	width: 100%;
	height: 60px;
	background: #ffffff;
	top: 0;
	z-index: 500;
}
#logoArea .logo {
	position: absolute;
	top: 14px;
	left: 9px;
	z-index: 100;
}
#logoArea .logo img {
	height: 30px;
	width: auto
}
#logoArea .txt {
	position: absolute;
	z-index: 101;
}
#logoArea .txt img {
	width: 151px;
	height: auto;
}

@media screen and (min-width:835px) {
#logoArea {
	display: none;
}
}

@media screen and (max-width:360px) {
#logoArea .txt {
	top: 18px;
	left: 159px;
}
#logoArea .txt img {
	width: 130px;
	height: auto;
}
}

@media screen and (max-width:320px) {
#logoArea .txt {
	position: absolute;
	top: 14px;
	left: 159px;
}
#logoArea .txt img {
	width: 96px;
	height: auto;
}
}


/* ------------------------------
   globalHeader
------------------------------ */

/* TOP用 */
#globalHeader {
	position: relative;
	display: none;
}

@media screen and (min-width:835px) {
#globalHeader {
	display: block;
	position: fixed;
	width: 100%;
	height: 80px;
	background: #ffffff;
	z-index: 500;
}
#globalHeader .logo {
	display: block;
	position: absolute;
	top: 22px;
	left: 30px;
	z-index: 96;
}
#globalHeader .logo img {
	width: 173px;
	height: auto;
}
#globalHeader .txt {
	margin: 0 auto;
	padding: 14px 0 0;
	text-align: center;
}
#globalHeader .txt img {
	width: 317px;
	height: auto;
}
}

/* ------------------------------
   title_sub
------------------------------ */
#title_sub {
	display: block;
	position: fixed;
	width: 100%;
	height: 60px;
	border-top: 1px solid #d8d8d8;
	text-align: center;
	top: 60px;
	z-index: 300;
	background-color: #ffffff;
	padding: 18px 0;
}
#title_sub:before {
	content: '';
	position: absolute;
	bottom: -20px;
	left: 0;
	opacity: 0;
	background-color: transparent;
	background-image: url(../img/bg_shadow_sp.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 100%;
	height: 20px;
	z-index: 301;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
#title_sub.active:before {
	opacity: 1;
}
#title_sub img {
	height: 17px;
	width: auto;
}
#title_sub.menuOpen {
	display: none;
}


@media screen and (min-width:835px) {
#title_sub {
	display: none;
}
#title_sub:before {
	content: none;
}
}

/* ------------------------------
   globalMenu
------------------------------ */

#globalMenu ul.lv1 {
	width: 100%;
}
#globalMenu ul.lv1 > li {
	width: 20%;
}
#globalMenu {
	display: none;
}
.globalMenuInner {
	height: 100%;
}
.scroll {
	display: table;
	width: 100%;
	height: 100%;
}
.scrollInner {
	display: table-cell;
	vertical-align: middle;
}
#menuOverlay {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
	display: none;
	position: fixed;
	z-index: 97;
}
#switchBtnArea {
	width: 60px;
	height: 60px;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1000;
	cursor: pointer;
}
#switchBtnArea #switchBtn {
	display: block;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	background: #00a6cf url(../img/hd_switch_btn.png) no-repeat center center;
	background-size: 30px 21px;
	position: absolute;
	cursol: pointer;
}
#switchBtnArea #switchBtn.btnClose {
	background: #00a6cf url(../img/hd_switch_btn_close.png) no-repeat center center;
	background-size: 28px 28px;
}
#rwdMenuWrap {
	top: 0;
	right: -100%;
	width: 100%;
	height: 100%;
	background: #ffffff;
	overflow-y: auto;
	position: fixed;
	z-index: 98;
}
#rwdMenuWrap ul.lv1 {
	width: 86%;
	padding: 60px 20%;
	box-sizing: border-box;
	margin: 0 auto;
}
#rwdMenuWrap ul.lv1 > li {
	width: 100%;
}
#rwdMenuWrap ul.lv1 > li a {
	position: relative;
	padding: 20px 20px 20px 34px;
	text-align: left;
	display: block;
	border-bottom: 1px solid #e5e5e5;
	box-sizing: border-box;
}
#rwdMenuWrap ul.lv1 > li a:after {
	content: "";
	display: block;
	position: absolute;
	top: 30px;
	left: 14px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #333333;
	border-right: 1px solid #333333;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
#rwdMenuWrap ul.lv2 > li a:after {
	left: 0;
}
#rwdMenuWrap ul.lv1 > li.parent a {
	display: table;
	border-bottom: none;
	padding: 20px 0 0 34px;
}
#rwdMenuWrap ul.lv2 {
	margin: 10px 0 0;
	padding: 0 0 0 22px;
	border-bottom: 1px solid #e5e5e5;
}
#rwdMenuWrap ul.lv2 > li {
	display: inline-block;
	margin: 0 0 0 10px;
}
#rwdMenuWrap ul.lv2 li a {
	padding: 0 0 20px 17px!important;
}
#rwdMenuWrap ul.lv2 li + li a {
	margin-left: 15px;
}
#rwdMenuWrap ul.lv2 li a:after {
	top: 20%!important;
}
#rwdMenuWrap ul.lv1 > li.parent + li a {
	border-top: 1px solid #e5e5e5;
}
#rwdMenuWrap ul.other {
	margin: 45px 0 0;
}
#rwdMenuWrap ul.lv1 > li.parent .other a {
	padding: 2px 0 0 34px;
}
#rwdMenuWrap ul.lv1 > li.parent .other a:after {
	top: 12px;
}

#rwdMenuWrap ul.lv1 > li.parent .out a {
	position: relative;
}
#rwdMenuWrap ul.lv1 > li.parent .out a:before {
	position: absolute;
	content: "";
	width: 13px;
	height: 13px;
	background: url(../img/i_out.png) no-repeat center center;
	background-size: 13px 13px;
	top: 50%;
	right: -20px;
	margin: -5px 0 0;
}
#rwdMenuWrap ul.lv1 > li.parent .lang {
	
	padding: 45px 0 20px 16px;
}
#rwdMenuWrap ul.lv1 > li.parent .lang li {
	display: inline-block;
}
#rwdMenuWrap ul.lv1 > li.parent .lang li+li {
	margin-left: 10px;
}
#rwdMenuWrap ul.lv1 > li.parent .lang a {
	padding: 3px 20px 2px;
	border: 1px solid #00a6cf;
	border-radius: 5px;
	color: #00a6cf;
}
#rwdMenuWrap ul.lv1 > li.parent .lang a:after {
	content: none;
}

@media screen and (max-width:414px) {
#rwdMenuWrap ul.lv1 {
	width: 95%;
	padding: 60px 17.5%;
}
#rwdMenuWrap ul.lv1 > li a {
	padding: 20px 0px 20px 29px;
}
#rwdMenuWrap ul.lv1 > li.parent a {
	padding: 20px 0 0 29px;
}
#rwdMenuWrap ul.lv1 > li.parent .other a {
	padding: 2px 0 0 29px;
}
#rwdMenuWrap ul.lv2 {
	padding: 0 0 0 16px;
}
}

@media screen and (max-width:375px) {
#rwdMenuWrap ul.lv1 {
	width: 95%;
	padding: 60px 14%;
}
}

@media screen and (max-width:320px) {
#rwdMenuWrap ul.lv1 {
	width: 100%;
	padding: 60px 10.5%;
}
}

@media screen and (min-width:835px) {
.scrollInner {
	padding: 80px 80px 0;
}
#switchBtnArea {
	width: 80px;
	height: 80px;
}
#switchBtnArea #switchBtn {
	top: 0;
	right: 0;
	width: 80px;
	height: 80px;
	position: absolute;
}
#rwdMenuWrap {
	right: -530px;
	width: 530px;
}
#rwdMenuWrap ul.lv1 {
	width: 100%;
	padding: 0;
}
#rwdMenuWrap ul.lv1 > li {
	width: 100%;
}
#rwdMenuWrap ul.lv1 > li a {
	position: relative;
	padding: 23px 16px 23px 29px;
	text-align: left;
	display: block;
	border-bottom: 1px solid #e5e5e5;
}
#rwdMenuWrap ul.lv1 > li a:hover {
	color: #00a6cf;
}
#rwdMenuWrap ul.lv1 > li a:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
	width: 6px;
	height: 6px;
	margin-top: -5px;
	border-top: 1px solid #333333;
	border-right: 1px solid #333333;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
#rwdMenuWrap ul.lv2 > li a:after {
	left: 0;
}
#rwdMenuWrap ul.lv1 > li.parent a {
	border-bottom: none;
	padding: 23px 16px 23px 29px;
}
#rwdMenuWrap ul.lv2 {
	margin: -17px 0 0;
	padding: 0;
}
#rwdMenuWrap ul.lv2 > li {
	display: inline-block;
	margin: 0 0 0 26px;
}
#rwdMenuWrap ul.lv2 li a {
	padding: 0 0 23px 20px!important;
}
#rwdMenuWrap ul.lv2 li + li {
	margin-left: 7px;
}
#rwdMenuWrap ul.lv1 > li.parent a:after {
	margin-top: -4px;
}
#rwdMenuWrap ul.lv2 li a:after {
	margin-top: 0px!important;
}
#rwdMenuWrap ul.lv1 > li.parent + li a {
	border-top: 1px solid #e5e5e5;
}
#rwdMenuWrap ul.lv1 > li.parent .other a {
	padding: 0 0 0 29px;
}
#rwdMenuWrap ul.lv1 > li.parent .other a:after {
	top: 50%;
}
#rwdMenuWrap ul.lv1 > li.parent .lang a:hover {
	border: 1px solid #00a6cf;
	background-color: #00a6cf;
	color: #fff;
}
}

/* ------------------------------
   CLEARFIX ELEMENTS
------------------------------ */
#globalMenu > ul:before,
#globalMenu > ul:after {
	content: " ";
	display: table;
}
#globalMenu > ul:after {clear: both;}
#globalMenu > ul {*zoom: 1;}


/* ------------------------------
   footer
------------------------------ */

.footer {
	border-top: 5px solid #ababab;
	padding-bottom: 20px;
	position: relative;
}
.footer:before {
	background-color: #ff0000;
	content: "";
	display: inline-block;
	height: 5px;
	left: 0;
	position: absolute;
	top: -5px;
	width: 30px;
}
.footer-link {
	margin-bottom: 10px;
}
.footer-link-list {
	margin: 0;
	padding: 0;
}
.footer-link-list-item {
	font-family: "Microsoft YaHei","微软雅黑",SimSun,sans-serif;
	background-color: #d8d8d8;
	border-bottom: 1px solid #adadad;
}
.footer-link-list-item-link {
	color: inherit;
	display: block;
	padding: 25px 20px;
	position: relative;
	text-align: center;
	text-decoration: none;
	font-size: 12px;
}
.footer-link-list-item-link:before {
	border: 0;
	content: "";
	display: inline-block;
	height: 8px;
	position: relative;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 8px;
	border-right: solid 1px #dd0000;
	border-top: solid 1px #dd0000;
}
.footer-link-list-item-link:before {
	position: absolute;
	right: 20px;
	top: 45%;
}
.footer-copyright {
	margin-bottom: 25px;
	text-align: center;
}
.footer-copyright img {
	height: auto;
	width: 280px;
}
.footer-pageTop {
	text-align: center;
}
.footer-pageTop-button {
	display: block;
}
.footer-pageTop-button:before {
	border: 0;
	content: "";
	display: inline-block;
	height: 22px;
	position: relative;
	width: 22px;
	border-right: solid 1px #111111;
	border-top: solid 1px #111111;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.pageTop {
	display: none;
}
.hidden-mobile {
    display: block;
}
.footer-link-sns {
    margin: 0;
    padding: 25px 20px;
    text-align: center;
}
.footer-link-sns-header {
    font-size: 12px;
    font-weight: 700;
}
.footer-link-sns-header,
.footer-link-sns-item {
    display: inline-block;
}
.footer-link-sns-item {
    margin-left: 10px;
}

@media screen and (min-width:835px) {
.footer {
	background-color: #efefef;
	padding-bottom: 9px;
	padding-top: 5px;
}
.footer .container {
	position: relative;
	margin: 0 auto;
	max-width: 1040px;
	line-height: 1;
}
.footer-link {
    margin-bottom: 0;
}
.footer-link-list-item {
	background-color: transparent;
	border-bottom: none;
	display: inline-block;
}
.footer-link-list li:nth-type-child(2) .footer-link-list-item-link {
	padding: 0 10px;
}
.footer-link-list-item-link:hover {
	text-decoration: underline;
}
.footer-link-list-item-link:before {
	content: none;
}
.footer-link-list-item:first-child .footer-link-list-item-link {
	border-left: 1px solid #111111;
}
.footer-link-list-item:last-child {
    margin-right: 0;
}
.footer-copyright {
	float: right;
	margin-bottom: 0;
	position: absolute;
	right: 0;
	top: 0;
}
.footer-copyright img {
	width: 383px;
	vertical-align: middle;
}
.footer-pageTop {
	display: none;
}
.pageTop {
	display: block;
	margin: 0 auto;
	position: relative;
	z-index: 20;
	opacity: 0;
	-webkit-transition: all .4s;
	transition: all .4s;
}
.pageTop.active {
	opacity: 1;
}
.pageTop-button {
	background-image: url(../img/pagetop.png);
	background-repeat: no-repeat;
	background-size: 55px 54px;
	bottom: 90px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	height: 54px;
	position: fixed;
	right: 25px;
	width: 55px;
}
	.footer-beian {
		padding: 20px 0;
	}
	.footer-link-sns {
		padding: 0;
		position: absolute;
		right: 0;
		top: -55px;
	}
	.footer-link-sns-header {
		font-size: 13px;
	}
	.footer-link-list-item {
		margin-right: 18px;
	}
	.footer-link-list-item:first-child .footer-link-list-item-link {
		border-left: none;
	}
	.footer-link-list-item-link {
		border: none;
		color: #6b6b6b!important;
		font-size: 14px;
		padding: 0;
	}
}

/*----------------------------------------
	footer_sitemap
-----------------------------------------*/
#footer_sitemap {
	background: #f6f6f6;
	border-top: 1px solid #e6e6e6;
	text-align: center;
	padding: 20px 5.3%;
}
#footer_sitemap ul > li {
	display: inline;
	position: relative;
	line-height: 2;
}
#footer_sitemap ul > li:before {
	display: inline;
	content: " ｜ ";
}
#footer_sitemap ul > li.out:before {
	display: inline;
	content: "　 ｜ ";
}
#footer_sitemap ul > li:first-child:before,
#footer_sitemap ul + ul > li:first-child:before {
	content: none;
}
#footer_sitemap .other {
	padding: 10px 0 0;
}
#footer_sitemap .other > li.out a {
	position: relative;
}
#footer_sitemap .other > li.out a:before {
	position: absolute;
	content: "";
	width: 10px;
	height: 10px;
	background: url(../img/i_out.png) no-repeat center center;
	background-size: 10px 10px;
	top: 50%;
	right: -15px;
	margin: -5px 0 0;
}
#footer_sitemap .other > li:last-child.out {
	display: inline-block;
}

@media screen and (min-width:835px) {
	#footer_sitemap {
		padding: 40px 0;
		margin: 195px 0 0;
	}
	#footer_sitemap .other {
		padding: 20px 0 0;
	}
	#footer_sitemap .other > li.out a:before {
		width: 11px;
		height: 11px;
		background-size: 11px 11px;
		right: -16px;
	}
	#footer_sitemap ul > li.out:before {
		display: inline;
		content: "  　｜ ";
	}
	#footer_sitemap .other > li:last-child.out {
		display: inline;
	}
}

/*----------------------------------------
	modal
-----------------------------------------*/
@-webkit-keyframes modalwindow_body_in {
	0% {
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
	100% {
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
	}
}
@keyframes modalwindow_body_in {
	0% {
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
	100% {
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
	}
}

@-webkit-keyframes modalwindow_body_out {
	0% {
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
	}
	100% {
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
}

@keyframes modalwindow_body_out {
	0% {
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
	}
	100% {
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
}
body.enabled_modal {
	overflow: hidden;
}
#modal {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	display: none;
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	background-color: rgba(0,0,0,0.8);
	z-index: 9999;
}
#modal #modalOverlay {
	display: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	position: relative;
	width: 100%;
	max-width: 500px;
	height: 100%;
	margin: 0 auto;
	padding: 0 20px;
	-webkit-transform: translateY(-20px);
	    -ms-transform: translateY(-20px);
	        transform: translateY(-20px);
	-webkit-animation: 500ms modalwindow_body_out;
	        animation: 500ms modalwindow_body_out;
}
#modal.is_visible #modalOverlay {
	-webkit-transform: translateY(0px);
	    -ms-transform: translateY(0px);
	        transform: translateY(0px);
	-webkit-animation: 200ms modalwindow_body_in;
	        animation: 200ms modalwindow_body_in;
}
#modal #modalWrap {
	display: table-cell;
	vertical-align: middle;
	position: relative;
	margin: 30px auto;
}
#modal #modalInner {
	position: relative;
	margin: 50px 0;
}
#modal #modalBox {}
#modal #modalBox .txt {
	padding: 4% 0 0;
	color: #fff;
}
#modal #modalBox .name {
	padding: 2% 0 0;
	color: #fff;
}
#modal .modalClose {
	margin: 6% 0 0;
}
#modal .modalClose>a {
	display: block;
	width: 40%;
	padding: 2% 0;
	margin: 0 auto;
	border-radius: 30px;
	background-color: rgba(255,255,255,0.8);
	font-family: Arial, "sans-serif";
	text-align: center;
}
#modal img {
	width: 100%;
	height: auto;
}
#modal video {
	display: block;
	width: 100%;
}
/* tb  835 - # */
@media screen and (min-width:835px) {
	#modal #modalOverlay {
		max-width: 840px;
		padding: 0 20px;
	}
	#modal #modalInner {
		margin: 70px 0;
	}
	#modal #modalBox .txt {
		padding: 22px 0 0;
	}
	#modal #modalBox .name {
		padding: 12px 0 0;
		color: #fff;
	}
	#modal .modalClose {
		margin: 56px 0 0;
	}
	#modal .modalClose>a {
		width: 170px;
		padding: 9px 0;
	}
}


/*----------------------------------------
	#sns
-----------------------------------------*/

#main .snsBox.floating {
	margin: 0 auto 25px;
}
#main .snsBox ul {
	width: 200px;
	margin: 0 auto;
	opacity: 1;
}
#main .snsBox li {
	margin-right: 10px;
	float: left;
}
#main .snsBox li:last-of-type {
	margin-right: 0;
}
#main .snsBox li:last-of-type {
	margin-right: 0;
}
#main .snsBox ul li a {
	width: 60px;
	height: 60px;
	display: block;
	background: #333333;
	position: relative;
	z-index: 0;
}
#main .snsBox ul li a:hover {
	opacity: 1;
}

@media all and (min-width: 835px) {
#main .snsBox.floating {
	position: fixed;
	right: 0;
	top: 50%;
	z-index: 60;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	margin: inherit;
}
#main .snsBox ul {
	width: 50px;
	margin: inherit;
}
#main .snsBox li {
	margin: 0;
	float: inherit;
}
#main .snsBox ul li a {
	width: 50px;
	height: 50px;
}
#main .snsBox ul li + li {
	margin: 1px 0 0;
}
}
