@charset "UTF-8";
/* -----------------------------------------------
FileName: style.css
----------------------------------------------- */
html,body {
	font-family: "AXIS Std" , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	position: relative;
}
.pc_none_img,.br_sp {
	display: none;
}
img {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 640px) {
	.sp_none_img,.br_pc {
		display: none;
	}
	.pc_none_img,.br_sp {
		display: inline;
	}
}
.clearfix::after,header .inner::after,footer .topColum::after,
#topSelect::after,.cont::after,#flame #contents ul::after,#contents::after,
#contSelect::after,#lens .ttlArea::after,#lens .content .inner div::after,
#sunglasses .point::after,#sunglasses .brand ul::after,#shop .detail div::after,footer .bottomColum::after {
	content:"";
    display:block;
    clear:both;
}
/* -------------------------------
	header
------------------------------- */



header #description {
	background: #0068b7;
	color: #fff;
}
header p,.inner {
	margin: 0 auto;
	width: 94%;
	max-width: 1000px;
	position: relative;
	z-index: 100;
}
header p {
	font-size: 11px;
	font-weight: 300;
	line-height: 1.3;
	padding: .3em 0 .2em;
}
h1 {
	float: left;
	line-height: 0;
	margin: 20px 0;
	width: 200px;
}
	h1 a {
		display: block;
	}
#gn {
	float:right;
	width: calc(100% - 239px);
}
nav ul {
	float:right;
	margin: 32px 18px 0 0;
	/* max-width: 75%; */
}
nav ul li {
	float: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	margin: 0 0 0 1.2em;
}
nav ul li:first-child {
	margin: 0;
}
nav ul li a {
	background: url(../images/top/header_menu_icon.jpg) right 0 top 50% no-repeat;
	color: #231815;
	text-decoration: none;
}
a.btn-black {
	display:inline-block;
	font-size:0.8em;
	background:#000;
	color:#FFF;
	padding:0.2em 0.5em;
}


#contactTop {
	background: #281d1b;
	background-size: auto 100%;
	float: right;
	margin: 24px 0 23px;
	padding: 12px 14px;
	width: 92px;
}
#navControl,#closeSpace {
	display: none;
}
@media screen and (max-width: 1000px) {
	h1 {
		margin: 3.2% 0;
		width: 23.9%;
	}
	nav ul {
		margin: 2% 18px 0 0;
		display: table;
	}
	nav ul li {
		display: table-cell;
		padding: 0 0 0 1.2em;
		float: none;
		font-size: 1.63vw;
		height: 50px;
		vertical-align: middle;
	}
	nav ul li:first-child {
		padding: 0;
	}
	#contactTop {
		line-height: 1;
		margin: 3.2% 0;
		padding: 1% 1.4% 1.5%;
		width: 9.2%;
	}
	#contactTop img {
		vertical-align: middle;
	}
}
@media screen and (max-width: 640px) {

	header .inner {
		padding: 2% 0;
		width: 100%;
		z-index: 9999;
	}
	#navControl,#closeSpace {
		display: block;
	}
	h1 {
		margin: 1.2% 0 1.2% 3%;
		width: 37%;
	}
	#gn {
		float: none;
	}
	#navControl {
		background: #281d1b;
		box-sizing: border-box;
		line-height: 0;
		margin: 0 3% 0 0;
		height: 70%;
		position: absolute;
		right: 0;
		padding: 2.5% 2% 0;
		width: 10%;
	}
	#contactTop {
		float: left;
		margin: 0 0 0 12%;
		padding: 2% 3% 2.8%;
		width: 27%;
	}
	nav ul {
		clear: both;
		display: none;
		float:none;
		margin: 0;
		width: 102%;
		position: absolute;
		top: 100%;
		left: -1%;
		max-width: none;
	}
	nav ul li {
		display: block;
		float: none;
		font-size: 16px;
		margin: 0;
		padding: 0;
		height: auto;
		width: 100%;
	}
	nav ul li a {
		background-color: #fff;
		background-position: right 1em center;
		border-top: 1px solid #cac5c3;
		display: block;
		padding: 3% 0;
		text-align: center;
		width: 100%;
	}
	a.btn-black {
		padding: 3% 0;
	}
	nav ul li:last-child a {
		background: none;
		background-color: #fff;
		border-bottom: 1px solid #cac5c3;
	}
}
/* -------------------------------
	footer
------------------------------- */
footer {
	background: #fbfae9;
}
footer .topColum {
	border-bottom: 1px dotted #646464;
	padding: 1% 0;
}


#footerLinks {
	list-style: none;
	float: left;
	margin: 1.3% 0;
/* 	max-width: 565px; */
}
#footerLinks li {
	font-size: 18px;
	font-weight: 400;
	float: left;
	line-height: 1.5;
	margin: 0 1.5em 0 0;
}
#footerLinks li:last-child {
	margin: 0;
}
#footerLinks li a {
	color: #231815;
	text-decoration: none;
}
	#footerLinks li a:hover {
		color: #d70c19;
		text-decoration: underline;
	}
.contactBottom {
	background: #281d1b;
	background-size: auto 100%;
	float: right;
	margin: 5px 0 0;
	padding: 12px 14px;
	width: 92px;
}
footer .copy {
	background: #0068b7;
	color: #fff;
	font-size: 11px;
	text-align: center;
}
#linksControl {
	display: none;
}
footer .bottomColum {
	padding: 2% 0;
}
footer .bottomColum #wink {
	font-weight: 600;
	margin: 0 0 .7em;
}
	footer .bottomColum #wink a {
		color: #231815;
		text-decoration: none;
	}
footer .bottomColum img {
	float: left;
	width: 22%;
	vertical-align: middle;
}
footer .bottomColum .shop {
	float: left;
	margin: 0 0 0 2%;
	width: 76%;
}
footer .bottomColum .shop p {
	line-height: 1.4;
}
footer .bottomColum .text p:nth-child(2) {
	font-size: 12px;
}
footer .bottomColum .text .bold {
	font-weight: bold;
}
footer .bottomColum #footer_phone {
	float: right;
	font-family: "Letter Gothic Std Medium", "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-size: 30px;
	text-align: right;
	line-height: 1;
	box-sizing: border-box;
	padding: .5% 0 0 3.5%;
	position: relative;
	width: 26%;
}
	footer .bottomColum #footer_phone::before {
		content: "";
		background: url(../images/top/footer_phone.gif) center no-repeat;
		background-size: contain;
		height: 100%;
		width: 13.5%;
		position: absolute;
		left: 0;
		top: 0;
	}
#footerLinks {
	position:relative;
	width:100%;
}
.footer-btn-black{
	position:absolute;
	right:0;
}
#footerLinks .footer-btn-black a{
	font-size:0.8em;
	padding:0.1em 0.5em;
	color:#FFF;
	background:#000;
	display:inline-block;
}
#footerLinks .footer-btn-black a:hover{
	background: #d70c19;
	text-decoration: none;
	color:#FFF;
}

@media screen and (max-width: 768px) {
	/*#footerLinks {
		width: 75%;
	}*/
	.contactBottom {
		width: 15.7%;
	}
}
@media screen and (max-width: 640px) {
	footer {
		
	}
	footer .inner {
		width: 100%;
	}
	footer .topColum {
		padding: 1% 0 0;
		margin: 0;
		border: none;
	}
	#linksControl {
		border-bottom: 1px dotted #646464;
		color: #231815;
		font-size: 16px;
		font-weight: 300;
		display: block;
		text-decoration: none;
		margin: 0 auto;
		padding: 3% 1%;
		width: 96%;
		position: relative;
		text-align:center;
	}
		#linksControl::after {
			content: "";
			border: 8px solid transparent;
			border-top-color: #231815;
			position: absolute;
			right: .2em;
			top: 50%;
			margin: -5px 0 0;
		}
		#linksControl.close::after {
			border-top-color: transparent;
			border-bottom-color: #231815;
			top: 50%;
			margin: -15px 0 0;
		}
	#footerLinks {
		display: none;
		background: #f5f5dc;
		margin: 0;
		padding: 0 1%;
		width: 100%;
		box-sizing: border-box;
		/*min-height:400px;*/
	}
	#footerLinks li {
		float: none;
		width: 100%;
		padding: 0;
		margin: 0;
		box-sizing: border-box;
	}
	#footerLinks li a {
		border-bottom: 1px dotted #646464;
		font-size: 16px;
		font-weight: 300;
		display: block;
		line-height: 1;
		padding: 4% 1% 3%;
		position: relative;
		width: 98%;
		text-align:center;
	}
		#footerLinks li a::after {
			content: "";
			border: 8px solid transparent;
			border-left-color: #231815;
			position: absolute;
			right: 0;
		}
	#footerLinks li a:hover {
		text-decoration: none;
	}

	#footerLinks li.footer-btn-black {
		float: none;
		width: 100%;
		padding: 0;
		margin: 0;
		background:#f5f5dc;
		text-align:center;
	}

#footerLinks li.footer-btn-black a{
		border-bottom: 1px dotted #646464;
		font-size: 16px;
		color: #231815;
		font-weight: 300;
		display: inline-block;
		line-height: 1;
		padding: 4% 1% 3%;
		position: relative;
		width: 98%;
		text-align:center;
		background:#f5f5dc;
		box-sizing: border-box;
}
#footerLinks .footer-btn-black a:hover{
	background: #f5f5dc;
	text-decoration: none;
	color:#d70c19;
}
	.contactBottom {
		display: none;
	}
	footer .bottomColum {
		padding: 8% 0 3%;
	}
	footer .bottomColum #wink {
		text-align: center;
		margin: 0 auto 5%;
		width: 96%;
	}
	footer .bottomColum img {
		float: none;
		display: block;
		margin: 0 auto 3%;
		width: 70%;
	}
	footer .bottomColum .shop {
		float: none;
		padding: 0;
		text-align: center;
		width: auto;
	}
	footer .bottomColum .shop p {
		margin: 0 0 .5em;
	}
	footer .bottomColum a {
		color: #231815;
		text-decoration: none;
		color: #d70c19;
	}
}
/* -------------------------------
	bread
------------------------------- */
#bread {
	background: rgba(35,24,21,0.16);
	position:relative;
	z-index: 10;
}
	#bread ul {
		list-style: none;
		box-sizing: border-box;
		margin: 0 auto;
		padding: .4em 0 .6em;
		height: 33px;
		width: 94%;
		max-width: 1000px;
	}
	#bread ul li {
		color: #362621;
		display: inline-block;
		font-size: 11px;
		line-height: 1.3;
	}
		#bread ul li::after {
			content: ">";
			margin: 0 0 0 .5em ;
		}
		#bread ul li:last-child::after {
			content: "";
		}
	#bread ul li a {
		color: #362621;
	}
@media screen and (max-width: 640px) {
	#bread {
		display: none;
	}
}
/* -------------------------------
	page:top
------------------------------- */
#top header nav ul li:nth-child(1) a {
	color: #d70c19;
	pointer-events: none;
}
.bx-wrapper .first img,.bx-wrapper .second img,.bx-wrapper .third img,.bx-wrapper .fourth img {
	max-width: 1000px;
	margin: 0 auto;
}
.bx-wrapper .first {
	background: url(../images/top/main_v1_pc_bg.jpg) top center no-repeat;
	height: 533px;
	text-align: center;
}
.bx-wrapper .second {
	background: url(../images/top/main_v2_pc_bg.jpg) top center no-repeat;
	height: 533px;
	text-align: center;
}
.bx-wrapper .third {
	background: url(../images/top/main_v3_pc_bg.jpg) top center no-repeat;
	height: 533px;
	text-align: center;
}
.bx-wrapper .fourth {
	background: url(../images/top/main_v4_pc_bg.jpg) top center no-repeat;
	height: 533px;
	text-align: center;
}


.sp-view{display:none !important;}
@media(max-width:1000px){
	.sp-view{display:block !important;}
/*
	.bx-wrapper .first {
		background: url(../images/top/main_v1_sp.jpg) top center no-repeat;
		height: 533px;
		text-align: center;
	}
	.bx-wrapper .second {
		background: url(../images/top/main_v2_sp.jpg) top center no-repeat;
		height: 533px;
		text-align: center;
	}
	.bx-wrapper .third {
		background: url(../images/top/main_v3_sp.jpg) top center no-repeat;
		height: 533px;
		text-align: center;
	}
	.bx-wrapper .fourth {
		background: url(../images/top/main_v4_sp.jpg) top center no-repeat;
		height: 533px;
		text-align: center;
	}
*/
}










#topSelect {
	padding: 40px 0 0;
}
.cont {
	padding: 40px 0;
}
#topSelect div {
	float: left;
	margin: 0 3% 0 0;
	width: 31%;
}
#topSelect div:last-child {
	margin: 0;
}
#topSelect a {
	display: block;
	border: 1px solid #c3c0bb;
}
#topSelect div h2 {
	font-size: 18px;
	margin: 22px 0 8px;
}
#topSelect div h2:first-letter {
	color: #d70c19;
}
#topSelect div .subTtl {
	margin: 0 0 15px;
}
#topSelect div p {
	line-height: 1.5;
	font-weight: 300;
}
#movie {
	background: #f4f4f4;
	padding: 3% 0;
}
#news {
	border: 1px solid #c3c0bb;
	box-sizing: border-box;
	float: left;
	padding: 2% 1% 1%;
	width: 65.7%;
	min-height: 430px;
}
#news h2 {
	background: url(../images/top/icon_rss.jpg) right center no-repeat;
	background-size: contain;
	float: left;
	margin: 0 0 0 1%;
	padding: .5% 27px 0 0;
	width: 190px;
	max-width: 50%;
}
#news .backNumber {
	background: #231815;
	box-sizing: border-box;
	color: #fff;
	display: block;
	float: right;
	font-size: 14px;
	padding: 1.21% 4%;
	text-align: center;
	text-decoration: none;
	width: 126px;
	max-width: 35%;
	overflow: hidden;
}
#feed {
	clear: both;
	padding: 3% 0 0;
}
#feed ul {
	list-style: none;
}
#feed li {
	padding: 1.8% 3%;
}
#feed li:nth-child(odd) {
	background: #e7e7e7;
}
#feed li p {
	clear: both;
	color: #2a2a2a;
	float: left;
	line-height: 1.5;
	margin: 0 1em 0 0;
}
#feed li h3 {
	padding: 0 0 0 5.3em;
}
#feed li h3 a {
	color: #2a2a2a;
	text-decoration: none;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5;
}
#detail {
	float: right;
	width: 31.4%;
}
#detail>p {
	margin: 0 1% 10px;
}

#top #detail > p {text-align:center;padding:0 3em;}


#detail section:last-child {
	margin: 25px 0 0;
}
#detail h2 {
	background: #231815;
	color: #fff;
	text-align: center;
	padding: .3em 0 .4em;
}
#detail ul {
	list-style: none;
}
#detail ul li {
	font-size: 14px;
	line-height: 1.5;
	color: #2a2a2a;
	margin: 14px 0 0;
	padding: 0 0 0 28px;
	position: relative;
}
#detail ul li::before {
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	left: 0;
}
#detail ul li.access::before {
	background: url(../images/top/icon_access.jpg) center no-repeat;
	background-size: contain;
	margin: -12px 0 0;
}
#detail ul li.tel {
	font-size: 18px;
	font-weight: 600;
}
#detail ul li.tel a {
	color: #2a2a2a;
	text-decoration: none;
}
#detail ul li.tel::before {
	background: url(../images/top/icon_phone.jpg) center no-repeat;
	background-size: contain;
	margin: -10px 0 0;
}
#detail ul li.time::before {
	background: url(../images/top/icon_time.jpg) center no-repeat;
	background-size: contain;
	margin: -10px 0 0;
}
@media screen and (max-width: 1000px) {
	#movie .movie {
		padding: 0 0 56%;
	}
	.bx-wrapper .first {
		background: none;
		height: auto;
	}
	.bx-wrapper .second {
		background: none;
		height: auto;
	}
	.bx-wrapper .third {
		background: none;
		height: auto;
	}
	.bx-wrapper .fourth {
		background: none;
		height: auto;
	}
	.bx-wrapper .first img:nth-child(1),.bx-wrapper .second img:nth-child(1),.bx-wrapper .third img:nth-child(1),.bx-wrapper .fourth img:nth-child(1) {
		/*display: block;*/
	}
}
@media screen and (max-width: 640px) {
	/*.bx-wrapper {
		margin: 0;
	}
	.bx-wrapper .first img:nth-child(1),.bx-wrapper .second img:nth-child(1),.bx-wrapper .third img:nth-child(1),.bx-wrapper .fourth img:nth-child(1) {
		display: none;
	}
	.bx-wrapper .first img:nth-child(2),.bx-wrapper .second img:nth-child(2),.bx-wrapper .third img:nth-child(2),.bx-wrapper .fourth img:nth-child(2) {
		display: block;
	}*/
	#topSelect,.cont {
		padding: 3% 0;
	}
	#topSelect div,#topSelect div:last-child  {
		margin: 1em 0 0;
		width: 100%;
	}
	#topSelect div h2 {
		font-size: 20px;
		margin: .5em 0 .3em;
	}
	#topSelect div .subTtl {
		margin: 0 0 .5em;
	}
	#news {
		width: 100%;
		margin: 0 0 5%;
		padding: 3% 1% 2%;
		min-height: inherit;
	}
	#news h2 {
		margin: 0 0 0 3%;
	}
	#feed {
		padding: 3% 0 0;
	}
	#detail {
		margin: 0 0 10%;
		width: 100%;
	}
}
/* -------------------------------
	page:flame
------------------------------- */
#flame header nav ul li:nth-child(2) a {
	color: #d70c19;
	pointer-events: none;
}
#mainV {
	line-height: 0;
	position: relative;
	overflow: hidden;
	margin: -33px 0 0;
	z-index: 5;
}
#mainV .inner img {
	width: auto;
	height: auto;
}
#mainV p {
	font-size: 13px;
	position: absolute;
	width: 450px;
	top: 32%;
	bottom: 0;
	text-align: justify;
}
#flame #mainV {
	background: #f4f4f3;
}
#flame #contents {
	margin: 0 auto;
	padding: 60px 0 10px;
	width: 94%;
	max-width: 1000px;
}
#contents h2,#contents2 h2 {
	margin: 0 auto 2%;
	position: relative;
	width: 100%;
	max-width: 895px;
	text-align: center;
}
#flame #contents h2 img {
	width: 42.459%;
}
	#contents h2::before,#contents h2::after,#contents2 h2::before,#contents2 h2::after,#shop #contents3 h2::before,#shop #contents3 h2::after {
		content:"";
		border-top: 2px solid #7b0910;
		position: absolute;
		top: 50%;
		margin: -2px 0 0;
	}
	#flame #contents h2::before,#flame #contents h2::after {
		width: 27%;
	}
	#contents h2::before,#contents2 h2::before,#shop #contents3 h2::before {
		left: 0;
	}
	#contents h2::after,#contents2 h2::after,#shop #contents3 h2::after {
		right: 0;
	}
#flame #contents p {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
#flame #contents ul {
	list-style: none;
	margin: 2% 0 3%;
}
#flame #contents ul li {
	float: left;
	margin: 1.1% 2.2% 1.1% 0;
	width: 23.3%;
}
#flame #contents ul li:nth-child(4n) {
	margin: 1.1% 0;
}
#flame #contents ul li a {
	border: 1px solid #c3c0bb;
	display: block;
	line-height: 0;
	padding: 0 0 1px;
}
#flame #contents ul li p {
	font-size: 14px;
	font-weight: 300;
	text-align: left;
}
#toTop {
	color: #231815;
	display: inline-block;
	font-size: 12px;
	float: right;
	text-decoration: none;
}
@media screen and (max-width: 640px) {
	#mainV {
		margin: 0;
	}
	#flame #mainV {
		background: none;
	}
	#mainV .inner,#mainV .inner img {
		width: 100%;
	}
	#mainV p {
		font-size: 16px;
		margin: 2% 3%;
		position: static;
		width: 94%;
	}
	#flame #contents {
		padding: 5% 0 1%
	}
	#flame #contents h2 img {
		width: 79.5%;
	}
	#flame #contents h2::before,#flame #contents h2::after {
		width: 7%;
	}
	#flame #contents p {
		font-size: 3.8vw;
	}
	#flame #contents ul li {
		margin: 0 3% 3% 0;
		width: 48.5%;
	}
	#flame #contents ul li:nth-child(2n) {
		margin:0 0 3%;
	}
	#toTop {
		margin: 0 0 1em;
	}
}
/* -------------------------------
	page:lens
------------------------------- */
#lens header nav ul li:nth-child(3) a {
	color: #d70c19;
	pointer-events: none;
}
#lens #mainV {
	background: #f6f6f6;
}
#lens #contents {
	padding: 60px 0 10px;
}
#lens #contents h2 {
	width: 98%;
}
#lens #contents h2 img {
	width: 36.425%;
}
	#lens #contents h2::before,#lens #contents h2::after {
		width: 29%;
	}

#lens #contSelect {
	list-style: none;
	margin:0 auto 35px;
	text-align:center;
	max-width: 860px;
	box-sizing: border-box;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row wrap;flex-flow:row wrap;
	-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
}

	#lens #contSelect a {
		width: 30.3%;
		background: #231815;
		color: #fff;
		display: block;
		font-size: 16px;
		padding: 1em;
		position: relative;
		text-decoration: none;
		display: -webkit-flex; display: -ms-flexbox; display: flex;
		-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
		-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
		box-sizing: border-box;
	}


		.icon-circle{
			border: 1px solid #FFF;
			width:1em;
			height:1em;
			border-radius: 50%;
			position:absolute;
			right:1em;
			display: -webkit-inline-flex;
			display: -ms-inline-flexbox;
			display: inline-flex;
			-webkit-justify-content: center;
			-ms-flex-pack: center;
			justify-content: center;
			-webkit-align-items: center;
			-ms-flex-align: center;
			align-items: center;
			background: #FFF;
		}
		.icon-down{
		  width: 0.3em;
		  height: 0.3em;
		  border: 1px solid;
		  border-color:  transparent transparent #333333 #333333;
		  transform: rotate(-45deg);
		  display:inline-block;
		  margin-top:-0.25em;
		}

@media(max-width:860px){
	#lens #contSelect {padding:1em;}
	#lens #contSelect a {width:100%;margin-bottom:0.8em;}
}


#lens #contSelect::after{
	display:none;
}

	#lens .content {
		padding: 34px 0 1px;
	}
	#lens1,#lens3 {
		background: #fbfae9;
	}
	#lens .ttlArea {
		background: #231815;
		color: #fff;
		padding: .5em 1em;
		font-size: 18px;
		margin: 0 0 10px;
	}
	#lens .ttlArea h3 {
		float: left;
		font-weight: 400;
		line-height: 1.5;
		margin: 0 .7em 0 0;
	}
	#lens .ttlArea h3::after {
		border-right: 1px solid;
		content: "";
		padding: 0 .7em 0 0;
	}
	#lens .ttlArea p {
		font-size: 18px;
		line-height: 1.5;
	}
	#lens p.disc {
		font-size: 14px;
		margin: 0 1.2em;
	}
	#lens .content .inner div {
		margin: 20px 1.2em 25px;
	}
	#lens .content .inner div img {
		display: block;
		float: left;
	}
	#lens .content .inner div section h4 {
		border-bottom: 1px solid #cacaca;
		color: #231815;
		font-size: 18px;
		margin: 0 0 .5em;
		padding: 0 0 .5em;
	}
	#lens .content .inner div section p {
		color: #231815;
		text-align:justify;
	}
	#lens .content .inner div section p span {
		padding: 0 0 0 1em;
		position: relative;
	}
	#lens .content .inner div section p span::before {
		content: "";
		background: #231815;
		width: 12px;
		height: 12px;
		position: absolute;
		left: 0;
		bottom: 2px;
	}
	#lens .content .lens1 div img,#lens .content .lens3 div img {
		width: 234px;
	}
	#lens .content .lens1 div section,#lens .content .lens3 div section {
		padding: 0 0 0 250px;
	}
	#lens .content .lens2 div img {
		width: 404px;
	}
	#lens .content .lens2 div section {
		padding: 0 0 0 420px;
	}
	#lens #toTop {
		margin: 1% 0 0;
	}
@media screen and (max-width: 1000px) {
	#lens #contSelect li a {
		font-size: 1.8vw;
	}
}
@media screen and (max-width: 640px) {
	#lens #mainV {
		background: none;
	}
	#lens #contents h2 img {
		width: 66.3%;
	}
	#lens #contents h2::before,#lens #contents h2::after {
		width: 14%;
	}
	#lens #contSelect li {
		margin: 0 0 2%;
		width: 100%;
	}
	#lens #contSelect li a {
		font-size: 20px;
	}
	#lens #contSelect li a::after {
		right: 2%;
		width: 20px;
		height: 20px;
		margin: -10px 0 0;
	}
	#lens .content .lens1 div img,#lens .content .lens2 div img,#lens .content .lens3 div img {
		margin: 0 0 4%;
		width: 100%;
	}
	#lens .content .lens1 div section,#lens .content .lens2 div section,#lens .content .lens3 div section {
		padding: 0;
	}

}
/* -------------------------------
	page:sunglasses
------------------------------- */
#sunglasses header nav ul li:nth-child(4) a {
	color: #d70c19;
	pointer-events: none;
}
#sunglasses #mainV {
	background: #f6f6f6;
}
#sunglasses #contents {
	padding: 60px 0 10px;
}
#sunglasses h2 {
	width: 94%;
}
#sunglasses h2 img {
	width: 32.3%;
}
	#sunglasses #contents h2::before,#sunglasses #contents h2::after {
		width: 32%;
	}
#sunglasses .point {
	list-style: none;
	margin: 0 auto 50px;
	max-width: 1000px;
	width: 94%;
}
#sunglasses .point li {
	float: left;
	margin: 0 3.5% 0 0;
	width: 31%;
}
#sunglasses .point li:last-child {
	margin: 0;
}
	#sunglasses .point li img {
		border: 1px solid #c3c0bb;
	}
	#sunglasses .point li p {
		font-size: 18px;
		line-height: 1.5;
		margin: 5px 0 0;
	}
#sunglasses .brand {
	margin: 50px auto;
	max-width: 1000px;
	width: 94%;
}
#sunglasses .brand h3 {
	border-right: 1px solid;
	float: left;
	font-size: 20px;
	font-weight: 300;
	line-height: 1.3;
	margin: 0 .5em 0 0;
	padding: 0 .5em 0 0;
}
#sunglasses .brand>p {
	font-size: 16px;
	line-height: 1.5;
}
#sunglasses .brand ul {
	clear: both;
	list-style: none;
	margin: 25px 0 0;
}
#sunglasses .brand ul li {
	float: left;
	margin: 0 2.2% 20px 0;
	width: 23.3%;
}
#sunglasses .brand ul li:nth-child(4n) {
	margin: 0 0 20px;
}
#sunglasses .brand ul li img {
	border: 1px solid #c3c0bb;
}
#sunglasses .brand ul li p {
	font-size: 14px;
	font-weight: 300;
}
@media screen and (max-width: 640px) {
	#sunglasses #mainV {
		background: none;
	}
	#sunglasses #contents {
		padding: 3% 0 0;
	}
	#sunglasses h2 img {
		width: 62.2%;
	}
	#sunglasses #contents h2::before,#sunglasses #contents h2::after {
		width: 16%;
	}
	#sunglasses .point li p {
		font-size: 14px;
	}
	#sunglasses .brand ul li,#sunglasses .brand ul li:nth-child(4n) {
		margin: 0 3% 0 0;
		width: 48.5%;
	}
	#sunglasses .brand ul li:nth-child(2n) {
		margin: 0 0 3%;
	}
}


/* -------------------------------
	hearingaid
------------------------------- */
#Ha #mainV .txt {
	top: 100px;
}
@media screen and (min-width: 769px) {
	#Ha #mainV .txt p {
		max-width: 580px;
	}
}
#Ha img {
	display: block;
}
#Ha {
	padding: 0 0 30px;
}

#Ha #checkColum {
	padding: 59px 0 60px;
}
	#Ha #checkColum #check {
		background: #eeeef2;
		border-radius: 7px;
		margin: 41px auto 0;
		overflow: hidden;
		padding: 0 0 20px;
	}
		#Ha #checkColum #check h3 {
			background: #0068b7;
			border-bottom: 2px solid #fff;
			color: #fff;
			font-size: 18px;
			letter-spacing: .1em;
			line-height: 1.4;
			padding: .65em 3%;
			text-align: center;
		}
			#Ha #checkColum #check #cList {
				border-spacing: 20px 0;
				display: table;
				margin: 17px auto 20px;
				width: 100%;
			}
				#Ha #checkColum #check #cList section {
					background: #fff;
					border: 1px solid #f3ebd9;
					border-radius: 7px;
					display: table-cell;
					padding: 3px;
					text-align: center;
				}
				#Ha #checkColum #check #cList h4 {
					background: #b8d9f1;
					border-radius: 4px;
					color: #312927;
					font-size: 18px;
					letter-spacing: .1em;
					line-height: 1.4;
					padding: .45em 3%;
				}
				#Ha #checkColum #check #cList ul {
					display: inline-block;
					color: #312927;
					font-size: 16px;
					letter-spacing: .1em;
					line-height: 1.4;
					list-style: none;
					margin: 2.2% 3%;
					text-align: left;
				}
				#Ha #checkColum #check #cList ul li{
					display: -webkit-flex; display: -ms-flexbox; display: flex;
					-webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;
					-ms-flex-flow:row nowrap; flex-flow:row nowrap;
					-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
					line-height:3em;
				}
					#Ha #checkColum #check #cList ul li:before {
						content:"";
						width:1.2em;
						height:3em;
						background: url(../images/hearingaid/check.png) 50% 50% no-repeat;
						background-size:contain;
						display:inline-block;
						margin-right:0.8em;
					}
			#Ha #checkColum #check #atend {
				margin: 0 20px;
			}
				#Ha #checkColum #check #atend h4 {
					background:#0068b7;
					border-radius: 7px;
					color: #fff;
					font-size: 22px;
					letter-spacing: .1em;
					line-height: 1.4;
					padding: .75em 3% .65em;
					text-align: center;
				}
				#Ha #checkColum #check #atend .text {
					background: #fff;
					border: 1px solid #f3ebd9;
					border-radius: 7px;
					margin: 20px auto 0;
					padding: 20px 25px 12px;
				}
					#Ha #checkColum #check #atend .text p {
						border-bottom: 1px dotted #beaf88;
						color: #312927;
						font-size: 16px;
						letter-spacing: .1em;
						line-height: 1.4;
						padding: 15px 0;
					}
					#Ha #checkColum #check #atend .text p:last-child,
					#Ha #checkColum #check #atend .text p.big {
						border: none;
					}
					#Ha #checkColum #check #atend .text p.big {
						color: #a22b2a;
						font-size: 18px;
						font-weight: bold;
						padding: 0 0 10px;
						text-align: center;
					}
#Ha #rootColum {
	background: #fbfae9;
	padding: 60px 0 77px;
	margin-bottom:20px;
}
	#Ha #rootColum ol {
		color: #312927;
		list-style: none;
		margin: 30px auto 50px;
	}
		#Ha #rootColum ol li {
			border-bottom: 1px dotted #000;
			padding: 20px 0;
		}
		#Ha #rootColum ol li:last-child {
			border: none;
		}
			#Ha #rootColum ol li h3 {
				font-size: 22px;
				letter-spacing: .1em;
				line-height: 1.4;
				padding: 0 0 0 80px;
				text-indent: -80px;
			}
				#Ha #rootColum ol li h3 img {
					display: inline-block;
					padding: 0 20px 0 0;
					vertical-align: middle;
					max-width: 60px;
				}
			#Ha #rootColum ol li p {
				letter-spacing: .155em;
				line-height: 1.89;
				margin: 8px 0 0;
			}
	#Ha #rootColum a {
		box-sizing: border-box;
		font-size: 18px;
		max-width: 424px;
		padding: 1.17em 3%;
	}
@media screen and (max-width: 768px) {
	#Ha  {
		padding: 0 0 35px;
	}
	#Ha h2 {
		max-width: 616px;
		width: 85%;
	}
	#Ha #checkColum,
	#Ha #rootColum {
		padding: 10% 0;
	}
	#Ha #checkColum #check {
		margin: 5% auto 0;
		padding: 0 0 3%;
	}
		#Ha #checkColum #check h3,
		#Ha #checkColum #check #cList h4,
		#Ha #checkColum #check #atend h4 {
			font-size: 16px;
		}
		#Ha #checkColum #check #cList {
			display: block;
			margin: 3% auto;
		}
		#Ha #checkColum #check #cList section {
			display: block;
			margin: 3% 3% 0;
		}
			#Ha #checkColum #check #cList ul,
			#Ha #checkColum #check #atend .text p,
			#Ha #checkColum #check #atend .text p.big,
			#Ha #rootColum a {
				font-size: 14px;
			}
				#Ha #checkColum #check #cList ul li {
					padding: 2px 0 2px 0;
				}
		#Ha #checkColum #check #atend {
			margin: 0 3%;
		}
			#Ha #checkColum #check #atend .text {
				margin: 3% auto 0;
				padding: 6%;
			}
				#Ha #checkColum #check #atend .text p {
					padding: 2% 0;
				}
	#Ha #rootColum ol {
		margin: 2% auto 5%;
	}
		#Ha #rootColum ol li {
			padding: 3% 0;
		}
			#Ha #rootColum ol li h3 {
				font-size: 16px;
				padding: 0 0 0 50px;
				text-indent: -50px;
			}
				#Ha #rootColum ol li h3 img {
					padding: 0 10px 0 0;
					width: 40px;
				}
}

.brand-link{
display: -webkit-flex; display: -ms-flexbox; display: flex;
-ms-flex-flow:row wrap;flex-flow:row wrap;
-webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;
padding-bottom:30px;
}

.brand-link a{
	display:inline-block;
	margin:0 10px;
	text-decoration:none;
	color:#333;
	margin-bottom:10px;
}

.brand-link a img{
	border:1px solid #ccc;
}

@media(max-width:545px){
	.brand-link a{width:calc(50% - 20px);display:block;}
	.brand-link a img{width:100%;display:block;}
}
@media(max-width:374px){
	.brand-link a{width:calc(100% - 20px);display:block;}
	#Ha #rootColum a{font-size:12px;}
}





/* -------------------------------
	page:shop
------------------------------- */
#shop header nav ul li:nth-child(5) a {
	color: #d70c19;
	pointer-events: none;
}
#shop #mainV {
	background: #f6f6f6;
}
#shop #mainV p {
	top: 60%;
}
#shop #contents,#shop #contents2 .inner,#shop #contents3,#shop #contents4 .inner {
	margin: 0 auto;
	width: 94%;
	max-width: 895px;
}
#shop #contents2,#shop #contents4 {
	background: #fbfae9;
	padding: 30px 0 25px;
}
#shop #contents3 {
	margin: 100px auto 0;
	padding-bottom:3em;
}
#shop h2,h2.border-h2 {
	margin: 60px auto 50px;
	font-size:24px;
}

@media(max-width:900px){
	#shop h2 ,h2.border-h2{font-size:20px;}
}
@media(max-width:640px){
	#shop h2,h2.border-h2{font-size:4.6vmin;}
}


	h2.border-h2{
		position: relative;
		width: 100%;
		max-width: 895px;
		text-align: center;
		font-size: 28px;
		font-weight: 400;
		margin: 0 auto 25px;
		position:relative;
	}

	h2.border-h2::before,h2.border-h2::after {

		content:"";
		border-top: 2px solid #7b0910;
		position: absolute;
		top: 50%;
		margin: -2px 0 0;
	}

	h2.border-h2.width15::before,h2.border-h2.width15::after{
		width: 15% !important;
	}
	h2.border-h2.width35::before,h2.border-h2.width35::after{
		width: 35% !important;
	}

	h2.border-h2::before{
		position:absolute;
		left:0;
	}
	h2.border-h2::after{
		position:absolute;
		right:0;
	}

	@media(max-width:900px){
		h2.border-h2{font-size:20px;}
	}
	@media(max-width:640px){
		h2.border-h2{font-size:16px;}
	}

	@media(max-width:480px){
		h2.border-h2{font-size:6vmin;font-weight:bold;line-height:1.5em;}
	h2.border-h2.width15::before,h2.border-h2.width15::after{
		width: 0% !important;
	}
	h2.border-h2.width35::before,h2.border-h2.width35::after{
		width: 0% !important;
	}
	}

.spbr{display:none;}
@media(max-width:480px){
.spbr{display:block;}
}

#shop #contents3 h2 {
	position: relative;
	width: 100%;
	max-width: 895px;
	text-align: center;
}
#shop h2 img {
	width: 40.7%;
}
#shop #contents3 h2 img {
	width: 37.32%;
}
	#shop h2::before,#shop h2::after{
		width: 25%;
	}
	#shop #contents3 h2::before,#shop #contents3 h2::after {
		width: 25%;
	}
#shop #contents2 h2,#shop #contents4 h2{
	font-size: 28px;
	font-weight: 400;
	margin: 0 auto 25px;
	text-align: left;
}
#shop #contents2 h2::before,#shop #contents2 h2::after{
	content: none;
}
#shop .detail div {
	margin: 0 auto;
	max-width: 880px;
}
#shop .detail div img {
	float: left;
	margin: 0 2% 0 0;
	width: 37.73%;
}
#shop .detail div dl {
	float: left;
	font-size: 14px;
	margin:  0;
	width: 58.41%;
}
#shop .detail div dt {
	background: #231815;
	clear: both;
	color: #fff;
	float: left;
	letter-spacing: .1em;
	line-height: 1.5;
	margin: .6em .5em .3em 0;
	padding: .3em 0;
	text-align: center;
	width: 5.5em;
}
#shop .detail div dd {
	border-bottom: 1px dotted #231815;
	padding: .9em 0 .6em 6em;
	line-height: 1.5;
}
#shop .detail div dd.tel,#shop .detail div dd.tel a {
	color: #7b0910;
	font-weight: 600;
	text-decoration: none;
}
#shop .detail div .map {
	float: right;
	width: 34.1%;
	text-align: right;
}
	#shop .detail div .map iframe {
		width: 100%;
		min-height:300px;
	}
	#shop .detail div .map a {
		color: #2f4cc8;
		display: inline-block;
		font-size: 14px;
		margin: 5px 0 0;
		text-decoration: none;
	}
	#shop .detail div .map a:hover {
		text-decoration: underline;
	}
#shop .detail .messe {
	margin: 40px auto;
	max-width: 880px;
}
	#shop .detail .messe h3 {
		font-size: 16px;
		margin: 0 0 10px;
	}

#shop .thumbs {
	margin: 5px 0 0;
	text-align: center;
}
#shop .thumbs a {
	border: 1px solid #cacaca;
	display: inline-block;
	box-sizing: border-box;
	line-height: 0;
	width: 13.4%;
}
#shop .thumbs a.active {
	border-color: #d70c19;
}
@media screen and (max-width: 1000px) {
	#shop #gm #bigMap {
		margin: 0;
	}
}
@media screen and (max-width: 640px) {
	#shop #mainV {
		background: none;
	}
	#shop h2 {
		margin: 6% auto 3%;
	}
	#shop h2 img {
		width: 76.4%;
	}
	#shop #contents3 h2 img {
		width: 70.2%;
	}
	#shop h2::before,#shop h2::after {
		width: 10%;
	}
	#shop #contents3 h2::before,#shop #contents3 h2::after {
		width: 13%;
	}
	#shop #contents2 h2 {
		font-size: 20px;
		margin: 0 auto 3%;
	}
	#shop .detail div img {
		margin: 0 0 2%;
		width: 100%;
	}
	#shop .detail div dl {
		width: 100%;
	}
	#shop .detail div .map {
		margin: 3% 0;
		width: 100%;
	}
	#shop .detail .messe {
		margin: 1em auto 2em;
	}
	#shop .thumbs {
		margin: 5px 0 0;
	}
	#shop .thumbs a {
		display: block;
		float: left;
		width: 18.4%;
		margin: 0 2% 0 0;
	}
	#shop .thumbs a:last-child {
		margin: 0;
	}
}
@media screen and (max-width: 320px) {
	#shop h2 img {
		width: 90%;
	}
	#shop #contents3 h2 img {
		width: 82.6%;
	}
	#shop h2::before,#shop h2::after {
		width: 3%;
	}
	#shop #contents3 h2::before,#shop #contents3 h2::after {
		width: 6%;
	}
}




.btnarea{
display: -webkit-flex; display: -ms-flexbox; display: flex;
-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}
.btn-next{
box-sizing: border-box;
font-size: 18px;
padding: 1.17em 3%;
background: #312927;
border-radius: 5px;
color: #fff;
letter-spacing: .1em;
text-align: center;
text-decoration: none;
cursor: pointer;
display: -webkit-flex; display: -ms-flexbox; display: flex;
-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}
.btn-next:after{
	content:"";
	width:5px;
	height:9px;
	background:url(../images/hearingaid/link.png) 0 0 no-repeat;
	background-size:contain;
	z-index:999;
	display:inline-block;
	margin-left:0.8em;
	line-height:2em;
}
.btn-next:hover{
	cursor: pointer;
}


/**/
.header-catch{
	color:#0068b7;
	display:block;
	font-size:50px;
	font-weight:100;
	margin-bottom:10px;
	letter-spacing: 0.1em;
}
.header-catch b{font-size:12px;padding-left:1em;letter-spacing: 0.15em;}

#shop #mainV p.shop-header-catch{
	top:47%;
}

@media(max-width:640px){
.header-catch{font-size:10vmin;position:absolute;top:25%;}
.header-catch b{display:block;margin-top:1em;margin-left:0;}
}






