
/*==================================================================================
　共通
==================================================================================*/

@import url('https://fonts.googleapis.com/css2?family=Roboto');
@import url('http://fonts.googleapis.com/earlyaccess/notosansjp.css');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Josefin+Sans:wght@400;600;700&family=Montserrat:wght@400;500;700&family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://allfont.net/allfont.css?fonts=ubuntu-light');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Josefin+Sans:wght@200;300;400;600;700&family=Montserrat:wght@400;500;700&family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@300;400;500;700;900&display=swap');

html, body {
	font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 62.5%; 
}
body {
  color: #231815;
  text-align: left;
}
a {
  color: #3C5CA4;
  text-decoration: none;
}
.pc {
  display: block !important;
}
.sp {
  display: none !important;
}
.center {
	text-align: center;
}
.inner{
	max-width: 1186px;
	width: 100%;
	padding:0;
	margin:auto;
}
.common-mv {
	width: 100%;
	height: 450px;
	padding: 120px 20px 0;
	margin-bottom: 120px;
	box-sizing: border-box;
}
.mv-frame {
	background-image: url(../../frame/images/mv-frame.png);
	background-position: top center;
	background-size: cover;
}
.mv-lens {
	background-image: url(../../lens/images/mv-lens.png);
	background-position: top center;
	background-size: cover;
}
.mv-ha {
	background-image: url(../../ha/images/mv-ha.png);
	background-position: top center;
	background-size: cover;
}
.mv-shop {
	background-image: url(../../shop/images/mv-shop.png);
	background-position: top center;
	background-size: cover;
	padding-top: 194px;
}
.mv-shop .common-mv-inner{
	max-width: 1200px;
}
.mv-shop .common-mv-inner h2 {
	color: #fff;
}
.mv-blog {
	background-image: url(../../blog/images/mv-blog.png);
	background-position: top center;
	background-size: cover;
	padding-top: 194px;
}
.mv-blog .common-mv-inner{
	max-width: 1200px;
}
.mv-blog .common-mv-inner h2 {
	color: #48567D;
}
.common-mv-inner {
	max-width: 1366px;	
	margin: auto;
	text-align: left;
}
.common-mv-inner h2{
	font-family: "Roboto";
	font-size: 8rem;
	font-weight: lighter;
	color: #48567D;
	margin-bottom: 40px;
}
.common-mv-inner p{
	font-size: 1.6rem;
	line-height: 3.2rem;
	color: #48567D;
}

.container{
	max-width: 1200px;
	width: 100%;
	margin: auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.common-lead {
	font-size: 1.6rem;
	line-height: 3.2rem;
}
.common-h3 {
	text-align: left;
	background-color: #48567D;
	padding: 22px 27px;
	margin-bottom: 70px;
}
.common-h3 h3 {
	font-size: 3rem;
	font-weight: 500;
	font-family: 'Noto Serif JP', serif;
	color: #fff;
	display: inline-block;
	border-left: 6px solid #fff;
	padding-left: 20px;
}

.common-h4 {
	padding-bottom: 20px;
	margin-bottom: 30px;
	border-bottom: 1px solid #c7ccd8;
	text-align: left;
}
.common-h4 h4{
	font-size: 2.5rem;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	line-height: 4.3rem;
	color: #48567D;
}
.common-text {
	font-size: 1.6rem;
	line-height: 3.2rem;
	text-align: left;
}
.sp-lead {
	display: none;
}

@media (max-width: 869px) {
	.pc {
	  display: none !important;
	}
	.sp {
	  display: block !important;
	}
	.inner{
		max-width: 100%;
		width: 100%;
		padding:0 16px;
		margin:auto;
	}
	.common-mv {
		width: 100%;
		height: auto;
		padding: 60px 0 0;
		margin-bottom: 33px;
		box-sizing: border-box;
	}
	.mv-frame {
		background-image: none;
	}
	.mv-lens {
		background-image: none;
	}
	.mv-ha {
		background-image: none;
	}
	.mv-shop {
		background-image: none;
	}
	.mv-shop .common-mv-inner{
		max-width: 100%;
	}
	.mv-shop .common-mv-inner h2 {
		display: none;
	}
	.mv-blog {
		background-image: url(../../blog/images/mv-blog.png);
		background-position: top center;
		background-size: cover;
		padding-top: 194px;
	}
	.mv-blog .common-mv-inner{
		max-width: 1200px;
	}
	.mv-blog .common-mv-inner h2 {
		color: #48567D;
	}
	.common-mv-inner {
		max-width: 100%;	
		margin: auto;
		text-align: left;
	}
	.common-mv-inner h2{
		display: none;
	}
	.common-mv-inner p{
		display: none;
	}
	
	.container{
		max-width: 100%;
		width: 100%;
		margin: auto;
		padding: 0 5%;
		box-sizing: border-box;
	}
	.common-lead {
		font-size: 1.6rem;
		line-height: 3rem;
	}
	.common-h3 {
		text-align: left;
		background-color: #48567D;
		padding: 15px;
		margin-bottom: 20px;
	}
	.common-h3 h3 {
		font-size: 1.8rem;
		font-weight: 500;
		font-family: 'Noto Serif JP', serif;
		color: #fff;
		display: inline-block;
		border-left: 3px solid #fff;
		padding-left: 10px;
	}
	
	.common-h4 {
		padding-bottom: 5px;
		margin-bottom: 10px;
		margin-top: 15px;
		border-bottom: 1px solid #c7ccd8;
		text-align: left;
	}
	.common-h4 h4{
		font-size: 1.7rem;
		font-weight: bold;
		font-family: 'Noto Serif JP', serif;
		line-height: 3rem;
		color: #48567D;
	}
	.common-text {
		font-size: 1.4rem;
		line-height: 2.8rem;
		text-align: left;
	}
	.common-mv-inner figure img{
		max-width: 100%;	
		width: 100%;
	}
	.sp-lead {
		display: block;
		font-size: 1.6rem;
		line-height: 3rem;
		color: #48567D;
		margin-bottom: 55px;
	}
}

/* -----------------------------------------------
header
----------------------------------------------- */

.header{
	background:#48567d;
}
#globalNav .menu {
	display: flex;
	align-items: center;
}
#globalNav .menu li{
	margin-right: 50px;
	position: relative;
}
#globalNav .menu li:last-child{
	margin-right: 0;
}
#globalNav .menu li a{
	font-size: 2rem;
	font-family: 'Noto Serif JP', serif;
	color: #fff;
	padding: 30px 0;
}
#globalNav .menu li a:hover{
	opacity: .7;
}
#globalNav .menu .menu-insta {

}
#globalNav .menu .menu-insta img{
	width: 200px;
}

.header .header-inner {
	max-width: 1366px;
	height:110px;
	position: relative;
	margin: auto;
	padding: 0 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header .header-inner h1{
	width: 220px;
}
.header .header-inner h1 img{
	width: 100%;
}
.header .header-text {
	background: #222222;
	padding: 20px 20px;
	color: #fff;
}
.header .header-text p{
	max-width: 1366px;
	margin: auto;
	font-size: 1.6rem;
	line-height: 2.2rem;
}

#globalNav .menu .sub{
	min-width:140px;
	display:none;
	position:absolute;
	top:30px;
	left: -30px;
	z-index: 100;
}

#globalNav .menu .sub li a {
	width:160px;
	height:30px;
	padding: 10px;
	background:#48567d;
	color:#fff;
	font-size:1.6rem;
	text-decoration:none;
	line-height:30px;
	display:block;
	border-top:1px solid #445377;
	text-align:center;
}

#globalNav .menu .sub li a:hover {
	background:#303e64;
	opacity: 1;
}

.sp-navi {
    display: none;
}

@media (max-width: 1200px) {
	#globalNav .menu li {
		margin-right: 2vw;
	}
	#globalNav .menu li a {
		font-size: 1.6vw;
		padding: 30px 0;
	}
	#globalNav .menu .menu-insta img {
		width: 20vw;
	}
}

@media (max-width: 869px) {
	.header {
		padding: 0 5%;
		box-sizing: border-box;
		position: fixed;
		top: 0;
		left: 0;
		z-index:10;
		width: 100%;
		height: 60px;
	}
	.header .header-inner h1 {
		width: 170px;
	}
	.header .header-inner h1 img {
		width: 100%;
	}
	.header .header-inner {
		max-width: 100%;
		height: 60px;
		position: relative;
		padding: 0;
		margin: auto;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	#globalNav {
		display: none;
	}
	.header .header-text {
		background: #222222;
		padding: 10px 0;
		color: #fff;
		display: none;
	}
	.header .header-text p{
		max-width: 100%;
		margin: auto;
		font-size: 1.4rem;
	}
}





/*==================================================================================
　SPハンバーガーメニュー
==================================================================================*/

.sp-navi {
	display: none;
}
  
@media (max-width: 869px) {
	.sp-menu {
		width: 20px;
		height: 16px;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		z-index: 101;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
			-ms-flex-align: center;
				align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
			-ms-flex-pack: center;
				justify-content: center;
	}
	.sp-menu .sp-menu-inner {
		width: 20px;
		height: 16px;
		overflow: hidden;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
			-ms-flex-direction: column;
				flex-direction: column;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
			-ms-flex-pack: justify;
				justify-content: space-between;
	}
	.sp-menu span {
		display: block;
		width: 100%;
		height: 2px;
		background-color: #fff;
		border-radius: 2px;
		-webkit-transform-origin: center center;
				transform-origin: center center;
		-webkit-transition: all 0.2s;
		transition: all 0.2s;
	}
	.sp-menu.open span {
		-webkit-transform-origin: center center;
				transform-origin: center center;
		background-color: #fff;
	}
	.sp-menu.open span:nth-child(1) {
		-webkit-transform: translateY(7px) rotate(45deg);
				transform: translateY(7px) rotate(45deg);
	}
	.sp-menu.open span:nth-child(2) {
		-webkit-transform: translateX(-200%);
				transform: translateX(-200%);
	}
	.sp-menu.open span:nth-child(3) {
		-webkit-transform: translateY(-7px) rotate(-45deg);
				transform: translateY(-7px) rotate(-45deg);
	}
	.sp-navi {
		display: none;
		position: fixed;
		height: calc(100%);
		left: 0;
		top: 60px;
		z-index: 20;
		background-color: #48567D;
		overflow-y: auto;
		width: 100%;
		padding: 20px 5% 0;
		box-sizing: border-box;
	}
	.sp-navi .sp-navi-item {
		width: 100%;
		text-align: left;
		border-bottom: 1px solid #fff;
	}
	.sp-navi .sp-navi-item a {
		color: #fff;
		display: block;
		padding: 24px 16px 24px 0;
		font-size: 1.6rem;
		font-weight: normal;
		font-family: 'Noto Serif JP', serif;
	}
	.sp-navi .menu-insta {
		padding: 35px 0 35px 0;
		text-align: center;
	}
	.sp-navi .menu-insta img{
		width: 200px;
	}
}

/* -----------------------------------------------
トップページ #mv
----------------------------------------------- */

#mv{
	width: 100%;
	height: 698px;
}

#mv .bx-wrapper {
	width: 100%;
}

#mv .swiper-slide{
	width: 100%;
	height: 698px;
}
#mv .swiper-slide .slide-01{
	background-image:url(../../images/mv-01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	width: 100%;
	height: 698px;
}
#mv .swiper-slide .slide-02{
	background-image:url(../../images/mv-02.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	width: 100%;
	height: 698px;
}
#mv .swiper-slide .slide-03{
	background-image:url(../../images/mv-03.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	width: 100%;
	height: 698px;
}
#mv .swiper-slide .slide-04{
	background-image:url(../../images/mv-04.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	width: 100%;
	height: 698px;
}
#mv .swiper-slide .slide-05{
	background-image:url(../../images/mv-05.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	width: 100%;
	height: 698px;
}
#mv .swiper-slide .slide-01 .bxslider-h2 {
	padding-bottom: 45px;
	margin-bottom: 45px;
	border-bottom: 2px solid #fff;
	text-align: left;
}
#mv .swiper-slide .slide-01 .slider-textBox {
	width: 100%;
	max-width: 1366px;
	height: 100%;
	margin: auto;
	position: relative;
}
#mv .swiper-slide .slide-01 .slider-textBox-inner {
	position: absolute;
	top: 230px;
	right: 0;
}

#mv .swiper-slide .slide-02 .bxslider-h2 {
	padding-bottom: 45px;
	margin-bottom: 45px;
	border-bottom: 2px solid #fff;
	text-align: center;
}
#mv .swiper-slide .slide-02 .slider-textBox {
	width: 100%;
	max-width: 1366px;
	height: 100%;
	margin: auto;
	position: relative;
}
#mv .swiper-slide .slide-02 .slider-textBox-inner {
	position: absolute;
	top: 230px;
	right: 0;
}
#mv .swiper-slide .slide-02 .bxslider-text {
	text-align: center;
}

#mv .swiper-slide .slide-03 .bxslider-h2 {
	padding-bottom: 45px;
	margin-bottom: 45px;
	border-bottom: 2px solid #48567D;
	text-align: center;
	color: #48567D;
}
#mv .swiper-slide .slide-03 .slider-textBox {
	width: 100%;
	max-width: 1366px;
	height: 100%;
	margin: auto;
	position: relative;
}
#mv .swiper-slide .slide-03 .slider-textBox-inner {
	position: absolute;
	top: 230px;
	left: 0;
}
#mv .swiper-slide .slide-03 .bxslider-text {
	text-align: center;
	color: #48567D;
}

.bxslider-h2 {
	color: #fff;
	font-family: "Ubuntu Light";
	font-size: 11rem;
	font-style: italic;
	font-weight: 100;
}
.bxslider-text {
	color: #fff;
	font-size: 2.5rem;
	line-height: 4.3rem;
}

.swiper-container-horizontal>.swiper-pagination-bullets{
	bottom: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.swiper-pagination-bullet {
	background-color: #fff;
	border: 1px solid #48567D;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	display: inline-block;
	margin: 0 7px;
    opacity: 1;
}
.swiper-pagination-bullet:hover {
	background-color: #48567D;
}

.swiper-pagination-bullet-active {
	background-color: #48567D;
	width: 17px;
	height: 17px;
}

.slide-figure {
	display: none;
}


@media (max-width: 869px) {

	#mv{
		width: 100%;
		height: auto;
		padding-top: 60px;
	}
	
	#mv .bx-wrapper {
		width: 100%;
	}
	
	#mv .swiper-slide{
		width: 100%;
		height: auto;
	}
	#mv .swiper-slide .slide-01{
		background-image:none;
		background-color: #7dbedc;
		width: 100%;
		height: auto;
		padding-bottom: 50px;
	}
	#mv .swiper-slide .slide-02{
		background-image:none;
		background-color: #678d3a;
		width: 100%;
		height: auto;
		padding-bottom: 50px;
	}
	#mv .swiper-slide .slide-03{
		background-image:none;
		background-color: #bfc2bb;
		width: 100%;
		height: auto;
		padding-bottom: 50px;
	}
	#mv .swiper-slide .slide-04{
		background-image:none;
		background-color: #0eaac3;
		width: 100%;
		height: auto;
		padding-bottom: 50px;
	}
	#mv .swiper-slide .slide-05{
		background-image:none;
		background-color: #6289A3;
		width: 100%;
		height: auto;
		padding-bottom: 50px;
	}
	#mv .swiper-slide .bxslider-h2 {
		display: none;
	}
	#mv .swiper-slide .slider-textBox {
		display: none;
	}

	.slide-figure {
		display: block;
		width: 100%;
	}
	
	.swiper-container-horizontal>.swiper-pagination-bullets{
		bottom: 30px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	.swiper-pagination-bullet {
		background-color: #fff;
		border: 1px solid #48567D;
		width: 11px;
		height: 11px;
		border-radius: 50%;
		display: inline-block;
		margin: 0 7px;
		opacity: 1;
	}
	.swiper-pagination-bullet:hover {
		background-color: #48567D;
	}
	
	.swiper-pagination-bullet-active {
		background-color: #48567D;
		width: 17px;
		height: 17px;
	}
	.slider-thumbnail .swiper-slide {
		opacity: .5;
		transition: opacity .5s;
		width: calc(100% / 3);
	}
	.slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
		opacity: 1;
	}
	/* レイアウトのためのスタイル */
	.swiper {
		max-width: 810px;
		width: 100%;
		margin: 0 auto 16px;
		overflow: hidden;
		position: relative;
	}
	.swiper-slide img {
		height: auto;
		width: 100%;
	}
}

/* -----------------------------------------------
トップページ　#keyContents
----------------------------------------------- */

#keyContents{
	background-color: #f4f4f4;
}
.keyContents-inner {
	padding: 90px 20px 90px;
	margin: auto;
	max-width: 1200px;
}
.keyContents-inner .keyContents-h2 {
	color: #505e83;
	font-size: 3rem;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	line-height: 5.3rem;
	margin-bottom: 70px;
}
.keyContents-inner .keyContents-group {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.keyContents-inner .keyContents-group .keyContents-group-box {
	width: 31%;
}
.keyContents-group-box-img {
	width: 100%;
	border: 1px solid #cdcdd0;
}
.keyContents-group-box-img img{
	width: 100%;
}
.keyContents-group-box-h3 {
	color: #505e83;
	font-size: 4rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	text-align: left;
	margin: 40px 0 20px;
}
.keyContents-group-box-h3-caption {
	font-size: 2rem;
	text-align: left;
	padding-bottom: 30px;
	margin-bottom: 40px;
	border-bottom: 1px solid #c8ccd6;
}
.keyContents-group-box-h3-text {
	font-size: 1.6rem;
	line-height: 3.2rem;
	text-align: left;
}
.bx-wrapper .bx-viewport {
	box-shadow:none !important;
}

@media (max-width: 869px) {
	#keyContents{
		background-color: #f4f4f4;
	}
	.keyContents-inner {
		padding: 45px 5% 45px;
		margin: auto;
		max-width: 100%;
	}
	.keyContents-inner .keyContents-h2 {
		color: #505e83;
		font-size: 1.7rem;
		font-family: 'Noto Serif JP', serif;
		text-align: center;
		line-height: 3rem;
		margin-bottom: 35px;
	}
	.keyContents-inner .keyContents-group {
		display: block;
	}
	.keyContents-inner .keyContents-group .keyContents-group-box {
		width: 100%;
		margin-bottom: 80px;
	}
	.keyContents-inner .keyContents-group .keyContents-group-box:last-child {
		margin-bottom: 0;
	}
	.keyContents-group-box-img {
		width: 100%;
		border: 1px solid #cdcdd0;
	}
	.keyContents-group-box-img img{
		width: 100%;
	}
	.keyContents-group-box-h3 {
		color: #505e83;
		font-size: 3rem;
		font-family: 'Noto Serif JP', serif;
		font-weight: 400;
		text-align: left;
		margin: 30px 0 15px;
	}
	.keyContents-group-box-h3-caption {
		font-size: 1.6rem;
		text-align: left;
		padding-bottom: 20px;
		margin-bottom: 20px;
		border-bottom: 1px solid #c8ccd6;
	}
	.keyContents-group-box-h3-text {
		font-size: 1.6rem;
		line-height: 3.2rem;
		text-align: left;
		margin-bottom: 30px;
	}
	.bx-wrapper .bx-viewport {
		box-shadow:none !important;
	}
}

/* -----------------------------------------------
トップページ　#newsArea
----------------------------------------------- */



#newsAndInfo{
	padding-top:105px;
}
.newsAndInfo-innner {
	max-width: 1200px;
	padding: 0 20px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}

.newsAndmovieArea {
	width: 65.8%;
}

#movie-block{
    margin-bottom: 20px;
}
#movie-block h3{
	color: #505e83;
    font-size: 4rem;
    font-weight: normal;
    font-family: 'Noto Serif JP', serif;
    text-align: left;
    margin-bottom: 30px;
}
#movie-block .movie-text{
    font-size: 1.6rem;
    text-align: left;
    margin-bottom: 40px;
}
#movie-block video{
    width: 100%;

}


.movie{
	position: relative;
	margin:0 auto;
}
.movie .play-btn{
	display: block;
	width: 15%;
	position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translateY(-50%) translateX(-50%);
	  -webkit- transform: translateY(-50%) translateX(-50%);
}
.movie .play-btn.playActive{
	display:none;
}
.movie .play-btn:hover{
	cursor: pointer;
}


#newsArea{
	padding:55px 45px 45px;
	border:1px solid #dcdcdc;
	box-sizing: border-box;
}
.newsArea-h3 {
	color: #505e83;
	font-size: 4rem;
	font-weight: normal;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
	margin-bottom: 40px;
}
.newslist dl{
	display: flex;
	padding: 15px 20px;
	font-size: 1.6rem;
}
.newslist dl:nth-child(odd){
	background-color: #f4f4f4;
}
.newslist dl dt{
	margin-right: 35px;
}

.shopinfo{
	width:29.1%;
}
.shopinfo-img{
	border: 1px solid #DCDCDC;
	padding: 3px;
	width: 350px;
}
.shopinfo-img img{
	width: 100%;
}

.shopinfo-h3{
	font-size: 2rem;
	font-weight: normal;
	margin: 25px 0 15px;
	text-align: left;
}
.shopinfo-tel {
	color: #c2aa73;
	font-size: 40px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 26px;
}
.shopinfo-tel span{
	font-size: 2.5rem;
	margin-right: 10px;
}
.shopinfo-detail {
	display: flex;
	align-items: top;
}
.shopinfo-detail dt{
	font-size: 1.6rem;
	line-height: 3.8rem;
	padding-right: 30px;
	margin-right: 30px;
	border-right: 1px solid #ebebeb;
	box-sizing: border-box;
	text-align: left;
	width: 30%;
}
.shopinfo-detail dd{
	font-size: 1.6rem;
	line-height: 3.8rem;
	margin-bottom: 15px;
	text-align: left;
	width: 70%;
}
#shopinfo-telnum{
	margin-top:8px;
	margin-bottom:12px;	
}

#shopinfo dl{
	margin-left:10px;
}

#shopinfo dt,
#shopinfo dd{
	line-height:22px;
}

#shopinfo dt{
	float:left;
	width:58px;
}

#shopinfo dd{
	float:left;
	padding-left:10px;
	width:170px;
	border-left:1px solid #e6e6e6;
}



@media (max-width: 1200px) {
	#newsAndInfo{
		padding-top:55px;
	}
	.newsAndInfo-innner {
		max-width: 100%;
		margin: auto;
		padding: 0 5%;
		display: block;
	}

	.newsAndmovieArea {
		width: 100%;
	}

	#movie-block h3{
        color: #505e83;
        font-size: 3rem;
        font-weight: normal;
		line-height: 4rem;
        font-family: 'Noto Serif JP', serif;
        text-align: left;
        margin-bottom: 20px;
	}

	#movie-block .movie-text{
		font-size: 1.6rem;
		text-align: left;
		margin-bottom: 40px;
	}

	#newsArea{
		padding:30px 20px 35px;
		border:1px solid #dcdcdc;
		width: 100%;
		box-sizing: border-box;
		margin-bottom: 30px;
	}
	.newsArea-h3 {
		color: #505e83;
		font-size: 3rem;
		font-weight: normal;
		font-family: 'Noto Serif JP', serif;
		text-align: left;
		margin-bottom: 30px;
	}
	.newslist {
		
	}
	.newslist dl{
		display: block;
		padding: 15px 20px;
		font-size: 1.6rem;
		line-height: 3rem;
	}
	.newslist dl:nth-child(odd){
		background-color: #f4f4f4;
	}
	.newslist dl dt{
		margin-right: 0;
		margin-bottom: 10px;
	}
	
	.shopinfo{
		width:100%;
	}
	.shopinfo-img img{
		width: 100%;
	}
	
	.shopinfo-h3{
		font-size: 2rem;
		font-weight: normal;
		margin: 25px 0 15px;
		text-align: left;
	}
	.shopinfo-tel {
		color: #c2aa73;
		font-size: 3rem;
		font-family: 'Noto Serif JP', serif;
		margin-bottom: 20px;
	}
	.shopinfo-tel span{
		font-size: 2rem;
		margin-right: 10px;
	}
	.shopinfo-detail {
		display: flex;
		align-items: top;
	}
	.shopinfo-detail dt{
		font-size: 1.6rem;
		line-height: 3.8rem;
		padding-right: 20px;
		margin-right: 20px;
		border-right: 1px solid #ebebeb;
		box-sizing: border-box;
		text-align: left;
		width: 30%;
	}
	.shopinfo-detail dd{
		font-size: 1.6rem;
		line-height: 3.8rem;
		margin-bottom: 15px;
		text-align: left;
		width: 70%;
	}
	#shopinfo-telnum{
		margin-top:8px;
		margin-bottom:12px;	
	}
	
	#shopinfo dl{
		margin-left:10px;
	}
	
	#shopinfo dt,
	#shopinfo dd{
		line-height:22px;
	}
	
	#shopinfo dt{
		float:left;
		width:58px;
	}
	
	#shopinfo dd{
		float:left;
		padding-left:10px;
		width:170px;
		border-left:1px solid #e6e6e6;
	}
}

/*==================================================================================
　ボタン
==================================================================================*/

.btn {
	background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 20px 27px;
	text-align: center;
	display: block;
	width: 242px;
	margin:0 auto;
}
.btn:hover{
	opacity: .8;
}
.btn.allow {
	background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
	position: relative;
	width: 242px;
	margin:68px auto 100px;
	display: block;
	text-align: center;
	font-size: 16px;
	padding:21px 0;
}
.btn.allow:hover{
	opacity: .8;
}
.btn.allow:after {
	content: '>';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
}

.white-btn {
	color: #232850;
	font-size: 16px;
	width: 242px;
	height: 58px;
	text-align: center;
	background:#fff;
	display: block;
	padding:21px 0;
	box-sizing: border-box;
	position: relative;
	margin:auto;
}
.white-btn:hover{
	opacity: .8;
}
.white-btn:after {
	content: '>';
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 21px;
}

@media (max-width: 869px) {
	.center {
		text-align: center;
	}
	.btn {
		background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		padding: 14px 27px;
	}
	.btn.allow {
		position: relative;
		width: 75%;
		margin:30px auto 60px;
		display: block;
		text-align: center;
		font-size: 14px;
		padding:21px 0;
	}
	.btn.allow:hover{
		opacity: .8;
	}
	.btn.allow:after {
		content: '>';
	    position: absolute;
	    right: 14px;
	    top: 50%;
	    transform: translateY(-50%);
	    font-size: 18px;
	}
}


/*==================================================================================
　fotter
==================================================================================*/

.footer {
	background-color: #48567d;
	margin-top: 135px;
	color: #fff;
}
.footer-inner {
	max-width: 1200px;
	margin: auto;
	padding: 90px 20px;
}
.footer-list {
	display: flex;
	justify-content: space-between;
	max-width: 690px;
	margin: auto;
}
.footer-list li{
	list-style-type: none;
}
.footer-list li a{
	color: #fff;
	font-size: 2rem;
	font-family: 'Noto Serif JP', serif;
}
.footer-box {
	margin-top: 40px;
	padding-top: 70px;
	border-top: 1px solid #fff;
	display: flex;
	justify-content: space-between;
}
.footer-box-left {

}
.footer-box-right {

}
.footer-logo{
	width: 220px;
	margin-bottom: 60px;
}
.footer-logo img {
	width: 100%;
}
.footer-h2 {
	font-size: 2.3rem;
	font-weight: normal;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
	padding-left: 5px;
	margin-bottom: 15px;
}
.footer_shopinfo {
	font-size: 1.6rem;
	text-align: left;
}
.footer_address {
	font-size: 1.6rem;
	line-height: 3rem;
	text-align: right;
	margin-bottom: 20px;
}
.footer_address a{
	color: #fff;
}
.footer-insta {
	text-align: right;
	margin-bottom: 85px;
}
.footer-insta img{
	width: 200px;
}
.footer-copyright {
	font-size: 1.4rem;
	line-height: 28px;
	text-align: right;
}

.page-top {
    width: 64px;
    height: 64px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
	border: 1px solid #272727;
    position: absolute;
    top: -30px;
    right: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top:10px;
}
.page-top:before {
    content: "";
  width: 18px;
  height: 18px;
  border: 2px solid;
  border-color: #272727 #272727 transparent transparent;
  transform: rotate(-45deg);
}
.copyright {
	margin-top: 15px;
	margin-bottom: 25px;
	font-size:12px;
	text-align: center;
}

@media (max-width: 869px) {

	.footer {
		background-color: #48567d;
		margin-top: 50px;
		color: #fff;
	}
	.footer-inner {
		max-width: 100%;
		margin: auto;
		padding: 40px 5% 45px;
	}
	.footer-list {
		display: block;
		max-width: 100%;
		margin: auto;
	}
	.footer-list li{
		padding-bottom: 24px;
		margin-bottom: 24px;
		border-bottom: 1px solid #fff;
		text-align: left;
	}
	.footer-list li a{
		color: #fff;
		font-size: 1.6rem;
		font-family: 'Noto Serif JP', serif;
	}
	.footer-box {
		margin-top: 30px;
		padding-top: 0;
		border-top: 0;
		display: block;
	}
	.footer-box-left {
	
	}
	.footer-box-right {
	
	}
	.footer-logo{
		width: 170px;
		margin:0 auto 30px;
		text-align: center;
	}
	.footer-logo img {
		width: 100%;
		margin: auto;
	}
	.footer-h2 {
		font-size: 2rem;
		line-height: 3.3rem;
		font-weight: normal;
		font-family: 'Noto Serif JP', serif;
		text-align: center;
		padding-left: 0;
		margin-bottom: 20px;
	}
	.footer_shopinfo {
		font-size: 1.4rem;
		line-height: 2.8rem;
		text-align: center;
		margin-bottom: 40px;
	}
	.footer_address {
		font-size: 1.6rem;
		line-height: 3rem;
		text-align: center;
		margin-bottom: 0;
	}
	.footer-insta {
		text-align: center;
		margin-bottom: 45px;
	}
	.footer-insta img{
		width: 200px;
	}
	.footer-copyright {
		font-size: 1.4rem;
		line-height: 28px;
		text-align: center;
		padding: 20px 0 50px;
	}

	.page-top {
	    width: 46px;
	    height: 46px;
	    background: #FFFFFF 0% 0% no-repeat padding-box;
		border: 1px solid #272727;
	    position: absolute;
	    top: 16px;
	    right: 16px;
	    display: flex;
	    display: none;
	    align-items: center;
	    justify-content: center;
	    padding-top:10px;
	}
	.page-top:before {
	    content: "";
	  width: 18px;
	  height: 18px;
	  border: 2px solid;
	  border-color: #272727 #272727 transparent transparent;
	  transform: rotate(-45deg);
	}
	.copyright {
		margin-top: 15px;
		margin-bottom: 25px;
		font-size:12px;
		text-align: center;
	}
}


/*==================================================================================
　メインビジュアル
==================================================================================*/

.mv-img-left {
	background:url(../img/mv-bg.png) no-repeat;
	background-size: cover;
	height: 707px;
	position: relative;
}
.mv-img-left .mv-inner {
	position: absolute;
	top: 50%;
	left: 89px;
	color: #fff;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
}
.mv-img-left .mv-inner h2{
	font-size: 50px;
	line-height: 50px;
	margin-bottom: 30px;
}
.mv-img-left .mv-inner .mv-inner p{
	font-size: 20px;
	line-height: 30px;
}
.border-b h2{
	position: relative;
}
.border-b h2:after{
	content:"";
	width:62%;
	height: 6px;
	position: absolute;
	bottom:0;
	left: 0;
	background:#fff;
}


@media (max-width: 869px) {
	.mv-img-left {
		background:url(../img/mv-bg-sp.png) no-repeat;
		background-size: cover;
		background-position:center center;
		height: auto;
		position: relative;
	}
	.mv-img-left .mv-inner {
		position: static;
		top: auto;
		left: auto;
		display: block;
		transform:none;
		padding:20px;
	}
	.mv-img-left .mv-inner h2{
		font-size: 30px;
		line-height: 30px;
		margin-bottom: 20px;
	}
	.border-b h2{
		position: relative;
		padding-bottom: 10px;
		color: #ccc;
	}
}


/*==================================================================================
　sec01
==================================================================================*/

.sec01 {
	margin-top:100px;
}

.box01 {
	background: transparent linear-gradient(135deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
	box-shadow: 25px 25px 70px #23285066;
	box-sizing: border-box;
	padding:64px 53px 73px;
}
.box01 h3{
	font-size: 50px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 4px;
}
.box01 h4{
	font-size: 20px;
	font-weight: normal;
	color: #fff;
	margin-bottom: 40px;
	margin-top: 10px;
}
.box01 p{
	font-size: 16px;
	line-height: 31px;
	color: #fff;
	margin-bottom: 40px;
}

@media (max-width: 869px) {
.sec01 {
	margin-top:100px;
}

.box01 {
	box-shadow: 15px 15px 35px #23285066;
	box-sizing: border-box;
	padding:20px;
}

.box01 h3{
	font-size: 25px;
}
.box01 h4{
	font-size: 16px;
	margin-bottom: 20px;
}
}


/*==================================================================================
　form
==================================================================================*/

.form-block {
    border-bottom: 1px solid #c3c3c3;
    border-right: 1px solid #c3c3c3;
    width: 100%;
    display: table;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
.form-block:first-of-type {
    border-top: 1px solid #c3c3c3;
}

.form-block .form-label {
    position: relative;
    font-size: 16px;
    color: #fff;
    word-break: break-all;
    display: table-cell;
    width: 30%;
    vertical-align: middle;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 40px 20px;
    margin-right: 50px;
    background: #232850;
}

.form-block .form-input {
    font-size: 16px;
    line-height: 27px;
    word-break: break-all;
    display: table-cell;
    width: 75%;
    vertical-align: middle;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 20px 20px 30px;
}

.form-block .form-input input[type="text"] {
    width: 100%;
    border: 0;
    background: #F2F2F2;
    padding: 26px;
    font-size: 16px;
    height: 60px;
}

.form-block .textarea-box textarea {
    width: 100%;
    border: 0;
    background: #F2F2F2;
    padding: 26px;
    height: calc( 1.3em * 8 );
    line-height: 1.3;
    font-size: 14px;
}


.form-buttom .confirm-wrap {
	display: block;
	position: relative;
	width: 334px;
	text-align: center;
	margin:68px auto 100px;
}
.form-buttom .confirm-wrap:after {
	content: '>';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #fff;
}
.form-buttom input.confirm-btn {
	background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 14px 27px;
	width: 334px;
	display: block;
	text-align: center;
	font-size: 16px;
	padding:21px 0;
	border: 0;
}

.form-block.txt {
	font-size: 16px;
	line-height: 27px;
	color: #232850;
	margin-bottom: 20px;
}

.form-block .form-input input[type="file"] {
    font-size: 16px;
}

.contact-form .file-clear input {
	background:#639FFF;
	border:0;
	color: #fff;
	padding:5px 15px;
	margin-top: 13px;
}
.btn-flex {
	max-width: 564px;
	width: 100%;
	margin:80px auto ;
	display: flex;
}

.form-buttom .sosin-wrap {
	display: block;
	position: relative;
	width: 232px;
	text-align: center;
}
.form-buttom .sosin-wrap:after {
	content: '>';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #fff;
}
.form-buttom input.sosin-btn {
	background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 14px 27px;
	width: 232px;
	display: block;
	text-align: center;
	font-size: 16px;
	padding:21px 0;
	border: 0;
}
.form-buttom .back-btn{
	width: 232px;
	font-size: 16px;
	border:0;
	background: #CBCBCB;
	margin-right: 50px;
}
.form-block.required .form-label:after {
    position: absolute;
    right: 50px;
    content: "必須";
    font-size: 14px;
    line-height: 1;
    padding: 3px 5px;
    color: #232850;
    font-weight: 700;
    background: #fff;
}

.formpage.thanks p{
	font-size: 20px;
	line-height: 35px;
	text-align: center;
	margin-bottom: 100px;
}
.formpage.thanks .btn {
	width: 334px;
	text-align: center;
	display: block;
	margin: 0 auto 100px;
	padding:20px 0;
}

@media (max-width: 869px) {

	.contact-form {
		padding:0;
	}
	.contact-form .form-block:first-of-type {
	    border-top: 0;
	}
	.contact-form .form-block.bd{
	    border-bottom: 1px solid #c3c3c3;
	}
	.contact-form .form-block {
	    border-bottom: 0;
	    border-right: 0;
	    border-left: 0;
	    width: 100%;
	    display: block;
	    -moz-box-sizing: border-box;
	    -webkit-box-sizing: border-box;
	    -o-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	    box-sizing: border-box;
	}

	.contact-form .form-block .form-label {
	    position: relative;
	    font-size: 14px;
	    color: #fff;
	    word-break: break-all;
	    display: block;
	    width: 100%;
	    vertical-align: middle;
	    -moz-box-sizing: border-box;
	    -webkit-box-sizing: border-box;
	    -o-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	    box-sizing: border-box;
	    padding: 17px 20px;
	    margin-right: 50px;
	    background: #232850;
	}

	.contact-form .form-block .form-input {
	    font-size: 14px;
	    line-height: 27px;
	    border-left: 1px solid #c3c3c3;
	    border-right: 1px solid #c3c3c3;
	    border-bottom: 1px solid #c3c3c3;
	    word-break: break-all;
	    display: block;
	    width: 100%;
	    vertical-align: middle;
	    -moz-box-sizing: border-box;
	    -webkit-box-sizing: border-box;
	    -o-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	    box-sizing: border-box;
	    padding: 16px;
	}

	.contact-form .form-block .form-input input[type="text"] {
	    width: 100%;
	    border: 0;
	    background: #F2F2F2;
	    padding: 26px;
	    font-size: 16px;
	    height: 60px;
	}

	.contact-form .form-block .textarea-box textarea {
	    width: 100%;
	    border: 0;
	    background: #F2F2F2;
	    padding: 26px;
	    height: calc( 1.3em * 8 );
	    line-height: 1.3;
	    font-size: 14px;
	}


	.contact-form .form-buttom .confirm-wrap {
		display: block;
		position: relative;
		width: 80%;
		text-align: center;
		margin:50px auto 50px;
	}
	.contact-form .form-buttom .confirm-wrap:after {
		content: '>';
	    position: absolute;
	    right: 14px;
	    top: 50%;
	    transform: translateY(-50%);
	    font-size: 18px;
	    color: #fff;
	}
	.contact-form .form-buttom input.confirm-btn {
		background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		padding: 14px 27px;
		width: 100%;
		display: block;
		text-align: center;
		font-size: 14px;
		padding:18px 0;
		border: 0;
		margin:auto;
	}

	.contact-form .txt {
		font-size: 14px;
		line-height: 26px;
		color: #232850;
		margin-bottom: 16px;
	}

	.contact-form .form-block .form-input input[type="file"] {
	    font-size: 14px;
	}

	.contact-form .file-clear input {
		background:#639FFF;
		border:0;
		color: #fff;
		padding:5px 15px;
		margin-top: 13px;
	}
	.btn-flex {
		max-width: 100%;
		width: 100%;
		height: 76px;
		margin:50px auto ;
		display: block;
		position: relative;
	}

	.contact-form .form-buttom .sosin-wrap {
		display: block;
		position: relative;
		width: 100%;
		text-align: center;
		position: absolute;
		top: 0;
	}
	.contact-form .form-buttom .sosin-wrap:after {
		content: '>';
	    position: absolute;
	    right: 14px;
	    top: 50%;
	    transform: translateY(-50%);
	    font-size: 18px;
	    color: #fff;
	}
	.contact-form .form-buttom input.sosin-btn {
		background: transparent linear-gradient(90deg, #232850 0%, #105498 100%) 0% 0% no-repeat padding-box;
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		width: 80%;
		display: block;
		text-align: center;
		font-size: 16px;
		padding:14px 0;
		margin: auto;
		border: 0;
	}
	.contact-form .form-buttom .back-btn{
		width: 80%;
		font-size: 14px;
		border:0;
		background: #CBCBCB;
		margin: auto;
		position: absolute;
		padding:14px 0;
		top: 77px;
		left: 0;
		right: 0;
	}
	.contact-form .form-block.required .form-label:after {
	    position: absolute;
	    right: 16px;
	    content: "必須";
	    font-size: 14px;
	    line-height: 1;
	    padding: 3px 5px;
	    color: #232850;
	    font-weight: 700;
	    background: #fff;
	    top:14px;
	}
	.contact.formpage .entry-title {
		margin-top:110px;
	}

	.formpage.thanks p{
		font-size: 14px;
		line-height: 28px;
		text-align: center;
		margin-bottom: 50px;
	}
	.formpage.thanks .btn {
		width: 72%;
		text-align: center;
		display: block;
		margin: 0 auto 50px;
		padding:19px 0;
		font-size: 14px;
	}

}


/*==================================================================================
　タグ切り替え
==================================================================================*/

.content-area {
  font-size: 30px;
  text-align: center;
}

.content-area .content {
  display: none;
}

.content-area .content.show {
  margin-top: 50px;
  display: block;
  text-align: left;
}

.content-area .tag a.active {
  cursor: auto;
}

.tag {
  margin-bottom: 15px;
  text-align: right;
}

.tag a {
  display: inline-block;
  border-bottom: solid 2px #E6E6E6;
  padding-bottom: 10px;
  margin-left: 10px;
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  font-weight: 700;
  color: #4C4549;
  cursor: pointer;
}

.tag a.active {
  color: #75191B;
  border-bottom-color: #75191B;
}

.news-list {
  border-top: solid 1px #DBDCDC;
}

.news-list li {
  display: flex;
  align-items: center;
  border-bottom: solid 1px #DBDCDC;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  padding: 14px 0;
}

.news-list li a {
  color: #4C4549;
  transition: all 0.2s;
}

.news-list li a:hover {
  opacity: 0.7;
}

@media (max-width: 869px) {
.tag {
  margin-bottom: 15px;
  text-align: left;
}
.tag a {
  font-size: 14px;
}
.content-area .orange {
	font-size: 14px;
}
.news-list {
	margin-top: 10px;
}
.news-list li {
	font-size: 14px;
}
.news-list li span{
	margin-right: 10px;
}
.news-list li p{
	line-height: 21px;
}
}


/*==================================================================================
　フィルター ナビ
==================================================================================*/

.filter-navi .filter-content {
    background-color: #F2F2F2;
    padding: 85px 0 60px;
    display: none;
}
.bl_selectBlock {
    padding: 0 30px;
    box-sizing: border-box;
    margin-bottom: 30px;
    font-size: 14px;
    letter-spacing: 0.1em;
}
.bl_selectBlock_wrapper {
    width: 100%;
    max-width: 1186px;
    margin: auto;
    display: flex;
}
.bl_selectBlock_wrapper_wrapper {
    width: 28%;
    margin-right: 4%;
}
.bl_selectBlock_ttl {
    color: #4c4549;
    font-size: 20px;
    letter-spacing: 0.1em;
    padding-bottom: 20px;
    border-bottom: 1px solid #cfcfcf;
    margin-bottom: 20px;
}
.bl_selectBlock_check {
    display: block;
    margin-bottom: 15px;
}
.bl_selectBlock_check input {
    display: none;
}
.bl_selectBlock_check label {
    cursor: pointer;
    display: inline;
}
.bl_selectBlock_check label .el_checkbox {
    position: relative;
    top: -4px;
    width: 14px;
    height: 14px;
    display: inline-block;
    margin-right: 5px;
    border: 1px solid #0073aa;
}
.bl_selectBlock_check label .el_checkbox:after {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    bottom: 4px;
    right: 4px;
}
.bl_selectBlock_release {
    text-align: center;
    color: #fff;
    background-color: #bdbdbd;
    padding: 15px 0;
    display: block;
    margin-top: 50px;
}
.bl_selectBlock_check input[type=checkbox]:checked + label .el_checkbox:after {
    background-color: #0073aa;
}

@media (max-width: 869px) {
.filter-navi .filter-content {
    padding: 20px 0 20px;
}
.bl_selectBlock {
    margin-bottom: 0;
}
.bl_selectBlock_wrapper {
    display: block;
}
.bl_selectBlock_wrapper_wrapper {
    width: 100%;
}
.bl_selectBlock_ttl {
    width: 100%;
    font-size: 16px;
    padding-bottom: 5px;
    margin-bottom: 10px;
    margin-top: 30px;
}
.bl_selectBlock_content {
    width: 100%;
}
.bl_selectBlock_release {
    margin-top: 30px;
}
}


/*==================================================================================
　フィルター コンテンツ
==================================================================================*/

.filter-list {
	display: flex;
	flex-wrap: wrap;
}
.fillList {
    width: calc((100% / 4) - 35px);
    margin-left: 35px;
}
.js_target {
    display: none;
}
.js_target.js_selected {
    display: block;
}
.filter-list__content-img {
    border: solid 1px #A0A0A0;
    vertical-align: top;
	margin-bottom: 10px;
}
.filter-list__content-img img {
    vertical-align: top;
    width: 100%;
}
.filter-list__content-text {
    color: #4C4549;
    padding: 10px 0 60px;
    text-align: left;
    font-size: 1.4rem;
    line-height: 1.5em;
    letter-spacing: 0em;
    font-weight: 300;
    margin-bottom: 7px;
}
.filter-list__content-text .title {
    font-weight: 700;
    margin-bottom: 7px;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 1.428em;
}
.filter-list__content-text .title span {
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.1em;
    display: block;
    margin-top: 3px;
    word-break: break-all;
}
.filter-list__content-text .code {
    margin-top: 15px;
	line-height: 1.7rem;
    margin: 5px 0;
    font-size: 14px;
    font-weight: 300;
}
.filter-list__content-text .icon {
    font-size: 1rem;
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 4px;
}
.filter-list__content-text .icon img {
    padding-right: 4px;
    padding-top: 4px;
    vertical-align: top;
}
.filter-list__content-text .type {
	font-size: 14px;
    font-weight: 300;
    padding-left: 18px;
}
.filter-list__content-text span {
    display: block;
}
.filter-list__content-text .type:before {
    width: 13px;
    height: 13px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    content: "";
    border-radius: 50%;
    left: 0;
}
.type {
    font-weight: bold;
    position: relative;
    padding-left: 30px;
    line-height: 24px;
}
.type.green:before {
    background-color: #7AC843;
}
.type.red:before {
    background-color: #FE1D25;
}
.type.blue:before {
    background-color: #3FA8F4;
}
.type.orange:before {
    background-color: #FF921E;
}

@media (max-width: 869px) {

.filter-list{
    justify-content: space-between;
}
.fillList {
    width: 48.7%;
    margin: 0;
}
.filter-list__content-text {
    font-size: 1.2rem;
    padding-bottom: 45px;
}
.filter-list__content-text .title {
    margin-bottom: 0;
}
.filter-list__content-text .code {
    margin: 15px 0 0 0;
}
.filter-list__content-text .type {
    margin-top: 20px;
    line-height: 1;
}
}

/*==================================================================================
　スクロールすると表示
==================================================================================*/

/*　サイドナビゲーション　*/
.side-nav {
    width: 200px;
    border: 1px solid #fff;
    position: fixed;
    right: 0;
    top: 80px;
    display: none;
    z-index: 100;
}
.side-nav .side-box {
    text-align: center;
    background: #5aa5f6;
    border: 1px solid #fff;
}
.side-nav a {
    display: block;
    padding: 24px 0;
}

.sp-bottom-tab-wrap {
    position: fixed;
    bottom: 0;
    width: 100%;
    display: none;
    z-index: 100;
}
.sp-bottom-box {
    width: 50%;
}
.sp-bottom-tab {
    display: flex;
    background: #5aa5f6;
}
.sp-bottom-1 {
    border-right: 1px solid #fff;
}
.sp-bottom-tab a {
    color: #fff;
    display: block;
    padding: 10px;
}
.sp-bottom-tab .sp-bottom-txt1 {
    font-size: 12px;
    font-weight: 600;
    background: #fff;
    padding: 5px;
    color: #5aa5f6;
    text-align: center;
    margin-bottom: 10px;
    box-shadow: 0 2px 0 0 rgb(0 0 0 / 10%);
    position: relative;
    border-radius: 2px;
}
.side-img {
    display: inline;
}
.side-img img {
    width: 60px;
}
.sp-bottom-txt2 {
    font-size: 10px;
    display: inline-block;
    vertical-align: super;
}

/*　ヘッダー上に上がる　*/
#header.UpMove{
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 0;
  transform: translateY(-100px);
  }
}

/*　ヘッダー下に下がる　*/
#header.DownMove{
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 0;
  transform: translateY(-100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*　コンテンツ表示　*/

.view{
	opacity : 0;
	transform : translate(0, 70px);
	transition : all 500ms;
	margin-bottom:30px;
}
.view.scrollin{
	opacity : 1;
	transform : translate(0, 0);
}


/*==================================================================================
　ローディング
==================================================================================*/

#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #000;
  z-index: 1;
}
#loader {
  display: none;
  position: absolute;
  top: 80vh;
  left: 0;
  right: 0;
  bottom:0;
  width: 200px;
  height: 100vh;
  margin:auto;
  text-align: center;
  color: #fff;
  z-index: 2;
}


/*==================================================================================
　ポップアップ
==================================================================================*/
.sort-content__wrap {
	display: flex;
	justify-content: space-between;
}
.sort-content__box {
	width: 50%;
}

.sort-content__box-img {
	margin-bottom: 20px;
}
.popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.4);
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    display: none;
}
.popUp-show {
    display: flex;
}
.popup-inner {
    background-color: #fff;
    box-shadow: 2px 2px 17px 3px #e0e0e0;
    padding: 4%;
    max-width: 1000px;
    width: 100%;
    max-height: 80vh;
    position: relative;
}
.popup-inner .popup-flex {
    display: flex;
    position: relative;
}
.popup-inner__content {
    max-height: calc(80vh - 160px);
}
.popup-inner__content .pop-img {
    width: 53%;
}
.popup-inner__content .pop-img img {
    width: 100%;
    max-height: 340px;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.popup-inner__content .txt-wrap {
    width: 47%;
    height: 100%;
    max-height: 340px;
    padding-left: 2.5%;
}
.popup-inner__content .pop-title {
    font-size: 1.4rem;
    font-weight: 500;
    color: #810915;
    text-align: left;
    padding-bottom: 25px;
    border-bottom: 1px solid #8F8F8F;
    margin-top: 20px;
	margin-bottom: 20px;
}
.popup-inner__content .close {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 25px;
    height: 25px;
}
.popup-inner__content .close:before,
.popup-inner__content .close:after{
    position: absolute;
    content: "";
    width: 25px;
    height: 4px;
    background-color: #121212;
}
.popup-inner__content .close:before{
	transform: translateY(10px) rotate(45deg);
}
.popup-inner__content .close:after{
	transform: translateY(10px) rotate(-45deg);
}


/*==================================================================================
　frame ページ
==================================================================================*/

.section-kodawari {
	text-align: left;
}
.section-kodawari-h3 {
	font-size: 4rem;
	font-weight: 500;
	font-family: 'Noto Serif JP', serif;
	color: #48567D;
	margin-bottom: 30px;
	margin-left: -8px;
}
.section-kodawari-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 80px;
	padding: 0;
}
.section-kodawari-box-item {
	width: 23.3%;
	margin-bottom: 27px;
}
.section-kodawari-box-item img{
	width: 100%;
}

@media (max-width: 869px) {
	.section-kodawari {
		text-align: left;
		padding: 0;
	}
	.section-kodawari-h3 {
		font-size: 2.5rem;
		font-weight: 500;
		line-height: 4.4rem;
		font-family: 'Noto Serif JP', serif;
		text-align: center;
		color: #48567D;
		margin-bottom: 55px;
		margin-left: 0;
	}
	.section-kodawari-box {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 50px;
	}
	.section-kodawari-box-item {
		width: 100%;
		margin-bottom: 27px;
		text-align: center;
	}
	.section-kodawari-box-item img{
		width: 280px;
	}
}

/*==================================================================================
　frame ページ
==================================================================================*/

.lens-links-gr {
	display: flex;
	justify-content: space-between;
}
.lens-links-gr-item {
	width: 32%;
	display: block;
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	position: relative;
	text-align: center;
	background-color: #C2AA73;
	padding: 25px 0;
}
.lens-links-gr-item:after {
	content: "";
	background-image: url(../../lens/images/lens-links-gr-item-arrow.png);
	background-size: cover;
	background-repeat: no-repeat;
	width: 14px;
	height: 8px;
	position: absolute;
	top: 47%;
	right: 18px;
}
.lens-links-gr-item:hover {
	opacity: .6;
}
.lens-section{
	padding-top: 130px;
}
.lens-section-lead {
	font-size: 1.6rem;
	margin-top: -35px;
	margin-bottom: 70px;
}

.lens-box-01 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
.lens-box-01.last-child {
	margin-bottom: 0px;
}
.lens-box-01-left {
	width: 365px;
	margin-right: 25px;
}
.lens-box-01-left img{
	width: 365px;
}
.lens-box-01-right {
	width: 770px;
}
.lens-box-01-indext {
	font-size: 1.6rem;
	line-height: 3.2rem;
	padding-left: 1em;
	text-indent: -1em;
}

.lens-box-02 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
.lens-box-02.last-child {
	margin-bottom: 0px;
}
.lens-box-02-left {
	width: 546px;
	margin-right: 25px;
}
.lens-box-02-left img{
	width: 546px;
}
.lens-box-02-right {
	width: 592px;
}
.lens-box-02-text-indent {
	font-size: 1.6rem;
	line-height: 3.2rem;
	padding-left: 3em;
	text-indent: -3em;
}


@media (max-width: 869px) {
	.lens-links-gr {
		display: block;
	}
	.lens-links-gr-item {
		width: 100%;
		display: block;
		font-size: 2rem;
		font-weight: bold;
		color: #fff;
		position: relative;
		text-align: center;
		background-color: #C2AA73;
		padding: 20px 0;
		margin-bottom: 2%;
	}
	.lens-links-gr-item:after {
		content: "";
		background-image: url(../../lens/images/lens-links-gr-item-arrow.png);
		background-size: cover;
		background-repeat: no-repeat;
		width: 14px;
		height: 8px;
		position: absolute;
		top: 47%;
		right: 18px;
	}
	.lens-links-gr-item:hover {
		opacity: .6;
	}
	.lens-section{
		padding-top: 40px;
	}
	.lens-section-lead{
		font-size: 1.4rem;
		line-height: 3rem;
		margin-top: 20px;
		margin-bottom: 40px;
	}
	
	.lens-box-01 {
		display: block;
		margin-bottom: 40px;
	}
	.lens-box-01.last-child {
		margin-bottom: 0px;
	}
	.lens-box-01-left {
		width: 100%;
		margin-right: 0;
	}
	.lens-box-01-left img{
		width: 100%;
	}
	.lens-box-01-right {
		width: 100%;
	}
	.lens-box-01-indext {
		font-size: 1.4rem;
		line-height: 2.4rem;
		padding-left: 1em;
		text-indent: -1em;
	}
	
	.lens-box-02 {
		display: block;
		margin-bottom: 40px;
	}
	.lens-box-02.last-child {
		margin-bottom: 0px;
	}
	.lens-box-02-left {
		width: 100%;
		margin-right: 0;
	}
	.lens-box-02-left img{
		width: 100%;
	}
	.lens-box-02-right {
		width: 100%;
	}
	.lens-box-02-text-indent {
		font-size: 1.4rem;
		line-height: 2.4rem;
		padding-left: 3em;
		text-indent: -3em;
	}
}

/*==================================================================================
　補聴器（ha） ページ
==================================================================================*/

.ha-container {
	max-width: 1200px;
    width: 100%;
    margin: auto;
}

.ha-lead {
	font-size: 3rem;
	font-weight: 500;
	line-height: 5.3rem;
	color:#48567D;
	text-align: center;
	margin-bottom: 50px;
}

.ha-box-01 {
	background-color: #F4F4F4;
	padding: 60px 57px 50px;
	max-width: 1200px;
	margin:0 auto 110px;
	box-sizing: border-box;
}
.ha-box-01-inner{
	display: flex;
	justify-content: space-between;
}

.ha-box-01-left {
	background: #fff;
	width: 523px;
	padding-bottom: 40px;
}
.ha-box-01-left .title{
	background-color: #86AD3D;
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	padding: 15px;
	text-align: center;
}
.ha-box-01-left .ha-box-01-figure {
	width: 380px;
	margin: 40px auto 0;
}
.ha-box-01-left .ha-box-01-figure img{
	width: 380px;
}

.ha-box-01-right {
	background: #fff;
	width: 523px;
	padding-bottom: 40px;
}
.ha-box-01-right .title{
	background-color: #4A8BCB;
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	padding: 15px;
	text-align: center;
}
.ha-box-01-right .ha-box-01-figure {
	width: 359px;
	margin: 40px auto 0;
}
.ha-box-01-right .ha-box-01-figure img{
	width: 359px;
}
.ha-box-01-text {
	font-size: 3rem;
	font-weight: bold;
	text-align: center;
	color: #48567D;
	margin-top: 45px;
}

.ha-box-02 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 140px;
}
.ha-box-02.last-child {
	margin-bottom: 0px;
}
.ha-box-02-left {
	width: 365px;
	margin-right: 25px;
}
.ha-box-02-left img{
	width: 365px;
}
.ha-box-02-right {
	width: 770px;
}
.ha-box-02-text-indent {
	font-size: 1.6rem;
	line-height: 3.2rem;
	padding-left: 3em;
	text-indent: -3em;
}
.ha-lead-2 {
	font-size: 1.6rem;
	line-height: 3.2rem;
	margin-top: -35px;
	margin-bottom: 70px;
	text-align: left;
}
.ha-figure-L {
	margin-bottom: 28px;
}
.ha-figure-L figure img{
	width: 100%;
}

.ha-figure-gr {
	display: flex;
	justify-content: space-between;
	margin-bottom: 130px;
}
.ha-figure-gr-item {
	width: 210px;
}
.ha-figure-gr-item-figure img{
	width: 100%;
}
.ha-figure-gr-item-text {
	font-size: 1.6rem;
	line-height: 3rem;
	margin-top: 20px;
}

.ha-box-03 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 140px;
}
.ha-box-03.last-child {
	margin-bottom: 0px;
}
.ha-box-03-left {
	width: 360px;
	order: 1;
	margin-right: 25px;
}
.ha-box-03-left .ha-box-03-left-figure img{
	width: 360px;
}
.ha-box-03-arrow {
	text-align: center;
}
.ha-box-03-arrow img {
	width: 26px;
	margin: 20px auto;
}
.ha-box-03-right {
	width: 773px;
	order: 2;
}
.ha-box-03-right-item {
	margin-bottom: 75px;
}
.ha-box-03-right-item.last-child {
	margin-bottom: 0;
}
.ha-box-03-right-item-h4 {
	padding-bottom: 20px;
    margin-bottom: 30px;
    border-bottom: 1px solid #c7ccd8;
    text-align: left;
	display: flex;
}
.ha-box-03-right-item-h4 h4 {
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 4.3rem;
    color: #48567D;
	margin-left: 25px;
	padding-left: 25px;
	border-left: 1px solid #48567D;
}
.ha-box-03-right-item-h4 span{
    font-size: 2rem;
    font-weight: bold;
    line-height: 4.3rem;
    color: #48567D;
	display: inline-block;
}

.ha-btn {
	text-align: center;
}
.ha-btn-a {
    width: 677px;
    display: inline-block;
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    position: relative;
    text-align: center;
    background-color: #C2AA73;
    padding: 25px 0;
}
.ha-btn-a:after {
    content: "";
    background-image: url(../../ha/images/a-btn-a-arrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 10px;
    height: 17px;
    position: absolute;
    top: 40%;
    right: 18px;
}
.ha-btn-a:hover {
    opacity: .6;
}

@media (max-width: 869px) {
	.ha-container {
		max-width: 100%;
		width: 100%;
		margin: auto;
		padding: 0;
		box-sizing: border-box;
	}
	.ha-lead {
		font-size: 2.5rem;
		line-height: 4.4rem;
		padding: 0 5%;
		margin-bottom: 50px;
	}
	.ha-box-01 {
		padding: 43px 5% 40px;
		margin-bottom: 50px;
	}
	.ha-box-01-inner {
		display: block;
	}
	.ha-box-01-left {
		padding-bottom: 30px;
		margin-bottom: 20px;
	}
	.ha-box-01-left,.ha-box-01-right {
		width: 100%;
	}
	.ha-box-01-left .ha-box-01-figure,
	.ha-box-01-right .ha-box-01-figure {
		width: 90%;
		margin: 20px auto 0;
	}
	.ha-box-01-left .ha-box-01-figure img,
	.ha-box-01-right .ha-box-01-figure img{
		width: 100%;
	}
	.ha-box-01-text {
		font-size: 2.5rem;
		line-height: 4.4rem;
		margin-top: 30px;
	}
	.ha-box-02 {
		display: block;
		margin-bottom: 50px;
	}
	.ha-box-02-left {
		width: 100%;
		margin-right: 0;
	}
	.ha-box-02-left img {
		width: 100%;
	}
	.ha-box-02-right {
		width: 100%;
	}
	.ha-box-02-right .common-h4{
		font-size: 2rem;
		line-height: 3.7rem;
		text-align: center;
		margin-top: 30px;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.ha-box-02-text-indent {
		font-size: 1.6rem;
		line-height: 3.2rem;
		padding-left: 1em;
		text-indent: -1em;
		margin-bottom: 10px;
	}
	.ha-lead-2 {
		font-size: 1.6rem;
		line-height: 3.2rem;
		margin-top: 20px;
		margin-bottom: 55px;
		text-align: left;
	}
	.ha-figure-gr {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 20px;
	}
	.ha-figure-gr-item {
		width: 48%;
		margin-bottom: 30px;
	}
	.ha-figure-gr-item-text {
		font-size: 1.4rem;
		line-height: 2.4rem;
		margin-top: 10px;
	}
	.ha-box-03 {
		display: block;
		margin-bottom: 50px;
	}
	.ha-box-03-right {
		width: 100%;
		margin-bottom: 50px;
	}
	.ha-box-03-right-item {
		margin-bottom: 40px;
	}
	.ha-box-03-right-item-h4 {
		padding-bottom: 15px;
		margin-bottom: 20px;
		border-bottom: 1px solid #c7ccd8;
		text-align: left;
		display: flex;
	}
	.ha-box-03-right-item-h4 span {
		font-size: 1.6rem;
		line-height: 2rem;
	}
	.ha-box-03-right-item-h4 h4 {
		font-size: 2rem;
		font-weight: bold;
		line-height: 2rem;
		color: #48567D;
		margin-left: 16px;
		padding-left: 13px;
		border-left: 1px solid #48567D;
	}
	.ha-box-03-right-item .common-text {
		font-size: 1.6rem;
		line-height: 3rem;
		text-align: left;
	}
	.ha-box-03-left {
		width: 100%;
		order: 1;
		margin-right: 0;
	}
	.ha-box-03-arrow img {
		width: 26px;
		margin: 17px auto;
	}
	.ha-box-03-left .ha-box-03-left-figure img {
		width: 100%;
	}
	.ha-btn-a {
		width: 100%;
		display: inline-block;
		font-size: 1.6rem;
		font-weight: bold;
		color: #fff;
		position: relative;
		text-align: center;
		background-color: #C2AA73;
		padding: 22px 0;
	}
	.ha-btn-a:after {
		top: 35%;
		right: 18px;
	}
}

/*==================================================================================
　shop ページ
==================================================================================*/

.shop-h3 {
	font-size: 4rem;
    font-weight: 500;
	font-family: 'Noto Serif JP', serif;
    line-height: 5.3rem;
	margin-bottom: 20px;
	color: #48567D;
}
.shop-lead {
	font-size: 1.6rem;
    line-height: 3.2rem;
	margin-bottom: 80px;
}

.shop-address {
	display: flex;
	justify-content: space-between;
	margin-top: 100px;
}
.shop-address-left {
	width: 557px;
	margin-right: 25px;
}
.shop-address-right {
	width: 580px;
}
.shop-address-dl {
	padding-bottom: 15px;
	margin-bottom: 20px;
	border-bottom: 1px solid #48567D;
	font-size: 1.6rem;
	line-height: 2.7rem;
	display: flex;
}
.shop-address-dl dt{
	color: #48567D;
	width: 130px;
}
.shop-address-iframe {

}
.shop-address-iframe iframe{
	width: 580px;
	height: 443px;
	border: none;
}

.shop-photo .slider-thumbnail .swiper-slide {
	opacity: .5;
	transition: opacity .5s;
	width: calc(100% / 3);
}
.shop-photo .slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
	opacity: 1;
}
/* レイアウトのためのスタイル */
.shop-photo .swiper {
	max-width: 810px;
	width: 100%;
	margin: 0 auto 16px;
	overflow: hidden;
	position: relative;
}
.shop-photo .swiper-slide img {
	height: auto;
	width: 100%;
}

@media (max-width: 869px) {
	.shop-h3 {
		font-size: 3rem;
		font-weight: 500;
		font-family: 'Noto Serif JP', serif;
		line-height: 4.3rem;
		margin-bottom: 20px;
		color: #48567D;
	}
	.shop-lead {
		font-size: 1.4rem;
		line-height: 2.4rem;
		margin-bottom: 40px;
	}
	
	.shop-address {
		display: block;
		margin-top: 50px;
	}
	.shop-address-left {
		width: 100%;
		margin-right: 0;
	}
	.shop-address-right {
		width: 100%;
	}
	.shop-address-dl {
		padding-bottom: 15px;
		margin-bottom: 20px;
		border-bottom: 1px solid #48567D;
		font-size: 1.6rem;
		line-height: 2.7rem;
		display: flex;
	}
	.shop-address-dl dt{
		color: #48567D;
		width: 30%;
	}
	.shop-address-dl dd{
		width: 70%;
	}
	.shop-address-dl dd a{
		color: #231815;
	}
	.shop-address-iframe {
	
	}
	.shop-address-iframe iframe{
		width: 100%;
		height: 252px;
		border: none;
	}
	.shop-photo .swiper-button-next, .shop-photo .swiper-button-prev {
		width: 27px;
		height: 27px;
		top: 55%;
	}
}
