/* footer
--------------------------------------------------- */
 .footer_show {
	 display: block;
 }

.footer_block p, .footer_block li, .footer_block dl dt, .footer_block dl dd, .footer_block th, .footer_block td {
	font-size: 14px;
	line-height: 1.8;
}

#footerservice_on {
	display: block;
}

#footerservice_off {
	display: none;
}

.common_footer a {
	color: #ffffff;
	text-decoration: none;
	line-height: 1rem;
}

.common_footer a:hover {
	text-decoration: underline;
}

footer {
	margin-top:1px;
	text-align:center;
	font-size:12px;
}


footer #footer_btn_area {
	width: 100%;
	padding: 40px 20px;
	box-sizing: border-box;
	padding-top: 60px;
	background-color: #333333;
	color: #ffffff;
}


footer #footer_btn_box {
	max-width: 1084px;
	width: auto !important;
	width: 1084px;
	margin: 0 auto;
	box-sizing: border-box;
	margin-bottom: 30px;
}

.common_footer > #footer1 {
	width:100%;
	padding:0;
	/* background-color: #f5f5f5; */
}

.footer_block {
	max-width:1084px;
	margin:0 auto;
	display:none;
	display: block;
}

.footer_block:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}

.footer_block ul li {
	font-size: 12px;
	padding-left:7px;
	background-position: left 7px;
}

.foot_category {
	margin: 30px 10px 0 5px;
	text-align:left;
	border-bottom:solid 1px #b6b6b6;
}

.foot_category > p {
	font-size:13px;
	font-weight:normal;
}

.footer_box {
	width: 100%;
	clear:both;
	overflow: hidden;
}

.footer_w30 {
	float: left;
	text-align: left;
	padding: 20px 10px 0 5px;
	width: 33.3%;
	box-sizing: border-box;
}

.footer_w25 {
	float: left;
	text-align: left;
	width: 25%;
	box-sizing: border-box
}

.footer_w18 {
	float: left;
	text-align: left;
	width: 18.75%;
	box-sizing: border-box
}

.footer_w25 div:nth-of-type(2) , .footer_w18 div:nth-of-type(2) {
	padding: 20px 10px 0 5px;
}

/* GMO Footer
---------------------------------------------------------- */

.gmofooter_container {
	margin: 0 auto;
}

html[lang=ja] #gmofooter {
	display: block;
}

html[lang=en] #gmofooter {
	display: none;
}

/* ------------------------ footer ----------------------*/

.footer_area a, .footer_area a:visited {
	color: #ffffff !important;
}

footer > #footer1 > .footer_block {
	display: block !important;
}

#footer2 a {
	color: #5a5858;
	line-height: 1.8;
}


#footer2 .line {
    padding: 0;
    margin: 0 auto;
    text-align: left;
}

#footer2 .line .box2 {
    text-align: left;
    vertical-align: middle;
    float: left;
}

#footer2 .copyright {
    float: right;
}

#footer2, .gmofooter {
    margin: 0 auto;
    padding: 40px 5px;
}

footer > #footer3 {
	/* background-color: #f5f5f5; */
}

footer > #footer3 p a {
	color: #C76C69 !important;
}

footer > #footer1 > .sns_btn {
	background: #333;
}

#footer2, .gmofooter {
	padding: 40px 10px;
	font-size: 0.8rem;
}


#footer1 > .sns_btn {
	max-width:1084px;
	margin:0 auto;
	padding:0 0 50px 5px;
	background: initial;
	margin-top: 50px;
}

footer #footer_btn {
	width: 210px;
	height: 14px;
	cursor:pointer;
	display:block;
	background:url(/common/img/btn_foot_close.png) left bottom no-repeat;
	text-align: left;
	padding-left: 22px;
}

#footer1 > .sns_btn > .wrap {
	width:350px;
	height:50px;
	border:solid 1px #b0afab;
	margin-left:0;
}

#footer1 > .sns_btn > .wrap .line > ul > li:nth-child(1) {
	float:left;
	line-height:48px;
	background: url(/common/img/icon_share.png) 8px center no-repeat;
}

#footer1 > .sns_btn > .wrap .line > ul > li:nth-child(1) > .txt{
	padding-left:36px;
}

#footer1 > .sns_btn > .wrap .line > ul > li:nth-child(2) {
	float:right;
	padding:8px 8px 0 0;
}


#footer2,
#gmofooter .gmofooter {
	max-width: 1084px;
	margin: 0 auto;
	padding:40px 5px;
	box-sizing: border-box;
}

#footer2 .line {
		padding:0;
		margin:0 auto;
		text-align:left;
}


#footer2 .line .box2   {
		text-align:left;
		vertical-align:middle;
		float:left;
}

#footer2 .copyright {
		float: right;
}

#footer3{
	box-sizing: border-box;
	border-style: solid;
	border-width: 1px 0;
	border-color: #E0DED7;
	line-height: 1.5rem;
}

#footer3 p{
	width: 90%;
	margin: 0 auto;
	max-width: 1084px;
	padding:30px 5px;
	text-align: left;
	font-size: 12px;
}

#footer3 p a{
	color: #C76C69;
	display: inline-block;
}

#gmofooter .gmofooter_relatedservicelist {
	width: 100%;
}

#gmofooter .gmofooter_relatedservicelist ul li {
	width: 31.9%;
	padding-bottom: 10px;
}


/* !Footer	------------------------------------------------ */

.ft_bnr {
	padding: 80px 0 60px 0;
	border-bottom: 1px solid #9EA0A2;
	width: 80%;
	margin: 0 auto;
}

.ft_bnr img {
	margin: 5px;
	border: 1px solid #DCDCDC;
	/* height: 55px; */
}

.ft_mark {
	padding: 50px 0;
	width: 80%;
	margin: 0 auto;
	text-align: center;
	display: inline-block;
}

.ft_mark_box {
	width: 320px;
	color: #353a3c;
	text-align: left;
	display: inline-block;
}

.ft_mark_box img {
	vertical-align: middle;
	margin-right: 14px;
	margin-left: 14px;
}

.ft_mark_box p {
	margin-top: 5px;
	margin-bottom: 10px;
	font-size: 10px !important;
	line-height: 1rem;
}

.ft_mark_box span {
	font-weight: bold;
}

.ft_bnr, .ft_mark {
	justify-content: space-around;
	flex-wrap: wrap;
	width: 100%;
}

.ft_mark_box {
	text-align: center;
}



/* pc
--------------------------------------------------- */
@media (min-width: 1024px) {
	/* common */
	#header_area_sp,
	#footer_area_sp {
	display: none;
	}
}

/* sp
--------------------------------------------------- */
@media screen and (max-width: 767px) {

	/* #footer_area {
		display: inline-block;
	} */

	footer #footer_btn_area {
		padding-left: 0;
		padding: 40px 20px;
	}

	.footer_w30 {
		width: 50%;
	}

	.footer_w25 {
		width: 50%;
	}

	.footer_w18 {
		width: 50%;
	}

	#footer1 > .sns_btn {
		max-width: 100%;
		margin:0 auto;
		padding:40px 15px 85px;
				box-sizing: border-box;
		/* background:#f5f5f5; */
	}

	#footer1 > .sns_btn > .wrap {
		width: initial;
	}

	.gmofooter_container {
		width: 100%;
	}

	#gmofooter .gmofooter {
		padding: 30px 0 !important;
	}
}


@media (max-width: 970px)  {
	#footer2 .line {
		display:block;
		width:100%;
		text-align:left;
	}


	#footer2 .line .box2 {
		float:none;
		display:block;
		padding-top:0;
		margin:10px auto;
	}

	#footer2 .copyright {
				width: 100%;
		margin-top:0px;
	}
}

/* tablet low-level　common
--------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1023px) {
	#header_area_sp,
	#footer_area_sp {
display: none;
}

#footer2 {
	padding: 30px 15px;
}

#footer3 {
	padding: 20px 15px;
}

footer #footer_btn_box {
	width: 100%;
	padding: 0 15px;
	box-sizing: border-box;
}


#footer2 .line {
	padding: 0;
}

#footer2 .copyright {
	float: none;
	text-align: left;
	clear: both;
	padding-top: 5px;
}


#gmofooter .gmofooter {
	padding: 15px 10px !important;
}

#footer2,
#gmofooter .gmofooter {
	max-width: 100%;
	padding-left: 10px;
	padding-right: 10px;
		box-sizing: border-box;
	margin: 0 auto;
}

#footer3{
	max-width: 100%;
	padding-left: 10px;
	padding-right: 10px;
		box-sizing: border-box;
	margin: 0 auto;
}

footer #footer_btn_area {
	/* padding-left: 0; */
}

}

/* sns buttons
---------------------------------------------------------- */

@media screen and (-webkit-min-device-pixel-ratio:0) {
	@font-face {
		font-family:si;
		src: url(PATH_TO/socicon.svg) format(svg);
	}
}

.soc {
	overflow:hidden;
	margin:0; padding:0;
	list-style:none;
}

.soc li {
	display:inline-block;
	*display:inline;
	zoom:1;
}

.soc li a {
	font-family:si!important;
	font-style:normal;
	font-weight:400;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
	text-decoration:none;
	text-align:center;
	display:block;
	position: relative;
	z-index: 1;
	line-height: 30px;
	font-size: 16px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	margin-right: 15px;
	color: #ffffff;
	vertical-align: top;
}

.soc li a img {
	width: 30px;
	height: 30px;
}

.soc li.last a {
	margin-top: 1px;
}

.soc li.last a img {
	width: 32px;
	height: 32px;
	max-width: none;
}

.soc-icon-last{
	margin:0 !important;
}

.soc-twitter {
	background-color: #4da7de;
}
.soc-twitter:before {
	content:'a';
}
.soc-facebook {
	background-color: #3e5b98;
}
.soc-facebook:before {
	content:'b';
}
.soc-google {
	background-color: #d93e2d;
}
.soc-google:before {
	content:'c';
}