@charset "utf-8";
/* ===================================================================

 file name  :class.css
 style info :汎用クラス

=================================================================== */


.pcHide{display:none;}

/* js連携 電話番号リンク無効 */
.tellink a{	cursor:default;}
.is_touch a{	cursor:pointer;}



/* ---------------------------------------------------------------------------
	font
--------------------------------------------------------------------------- */
.yumin{font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;}
.yugo{font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;}
.italic{font-style: italic;}
.bold{font-weight: bold;}
.no-text-decoration{text-decoration: none;}

.wf-Amiri{font-family: 'Amiri', serif;}
.wf-Amiri-i{font-family: 'Amiri', serif; font-style: italic;}
.wf-Garamond{font-family: 'EB Garamond', serif;}


/* ---------------------------------------------------------------------------
	othes
--------------------------------------------------------------------------- */
.ls1em{letter-spacing: 0.1em;}
.ls2em{letter-spacing: 0.2em;}
.lh13{ line-height: 1.3;}
.lh18{ line-height: 1.8;}
.lh2{ line-height: 2;}
.lh25{ line-height: 2.5;}

/* ---------------------------------------------------------------------------
	囲み要素
--------------------------------------------------------------------------- */
.sec-inner-1200{
	max-width: 1200px;
	margin: 0 auto;
}

/* ---------------------------------------------------------------------------
	magnific-popup
--------------------------------------------------------------------------- */
.mfp-wrap{
  z-index: 11000;
}
.movie-popup {
  position: relative;
  padding: 20px;
  width: auto;
  width: 90vw;
  height: 90vh;
  margin: 20px auto;
  pointer-events: none;
}
.movie-popup .inner{
	position: relative;
	width: 100%;
	height: 100%;
}
.movie-popup video{
	top: 50%;
	left: 50%;
	position: absolute;
	transform: translate(-50%,-50%);
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
  pointer-events: auto;
}
.mfp-close-btn-in .mfp-close{color: #FFF;pointer-events: auto;}
/* overlay at start */
.mfp-fade-zoom.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  z-index: 11000;
	background: #000;
}
/* overlay animate in */
.mfp-fade-zoom.mfp-bg.mfp-ready {
  opacity: 0.95;
}
/* overlay animate out */
.mfp-fade-zoom.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-fade-zoom.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  transition: all 0.5s ease;
  transform: scale(0.9);
}
/* content animate it */
.mfp-fade-zoom.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
  transform: scale(1);
}
/* content animate out */
.mfp-fade-zoom.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

@media screen and (max-width: 600px){
	.movie-popup {
	  padding: 5px;
	  margin: 10px auto;
	}
}

/* ---------------------------------------------------------------------------
	animation
--------------------------------------------------------------------------- */
.sc-fade{
	opacity:0;
	transition:all ease .8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-fade.sc-show{
	opacity:1;
}

.sc-zoom{
	opacity:0;
	transform:scale(0.8);
	transition:all ease .8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-zoom.sc-show{
	opacity:1;
	transform:scale(1);
}

.sc-slideup{
	opacity:0;
	transform:translateY(50px);
	transition:all ease .8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-slideup.sc-show{
	opacity:1;
	transform:translateY(0);
}

.sc-slideup-wide{
	opacity:0;
	transform:translateY(100px);
	transition:all ease .8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-slideup-wide.sc-show{
	opacity:1;
	transform:translateY(0);
}

.sc-slideleft{
	opacity:0;
	transform:translateX(100px);
	transition:all ease .8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-slideleft.sc-show{
	opacity:1;
	transform:translateX(0);
}

.sc-slideright{
	opacity:0;
	transform:translateX(-100px);
	transition:all ease .8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-slideright.sc-show{
	opacity:1;
	transform:translateX(0);
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}



.sc-fade-box .sc-target{
	opacity:0;
	transition-timing-function:linear;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-fade-box.show .sc-target{
	opacity:1;
}


.sc-fade-box-delay03 .sc-target{
	opacity:0;
	transition-timing-function:linear;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-fade-box-delay03.show .sc-target{
	opacity:1;
}

.sc-slideup-box .sc-target{
	opacity:0;
	transform:translateY(50px);
	transition-timing-function:linear;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.page-loaded .sc-slideup-box.show .sc-target{
	opacity:1;
	transform:translateY(0);
}


.sc-delay_03{
	transition-delay: .3s !important;
}
.sc-delay_05{
	transition-delay: .5s !important;
}



/* ---------------------------------------------------------------------------
	ボタン
--------------------------------------------------------------------------- */
.btn-detail{
	font-family: 'Amiri', serif; font-style: italic;
}
.btn-detail a,
.btn-detail span{
	padding-right: 58px;
	font-size: 16px;
	position: relative;
	color: #FFF;
	letter-spacing: 0.2em;
}
.btn-detail.btn-detail-bk a,
.btn-detail.btn-detail-bk span{color: #000;}
.btn-detail.btn-detail-bl a,
.btn-detail.btn-detail-bl span{color: #012e6d;}
.btn-detail a::before,
.btn-detail a::after,
.btn-detail span::before,
.btn-detail span::after{
	content:'';
	background: #FFF;
	position: absolute;
	right: 0;
	top:50%;
	margin-top: 3px;
	width: 36px;
	height: 1px;
	transition: all ease .3s;
}
.btn-detail.btn-detail-bk a::before,
.btn-detail.btn-detail-bk a::after,
.btn-detail.btn-detail-bk span::before,
.btn-detail.btn-detail-bk span::after{background: #000;}
.btn-detail.btn-detail-bl a::before,
.btn-detail.btn-detail-bl a::after,
.btn-detail.btn-detail-bl span::before,
.btn-detail.btn-detail-bl span::after{background: #012e6d;}
.btn-detail a::after,
.btn-detail span::after{
	margin-top: -1px;
	width: 10px;
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}


.btn-all{
	margin-bottom: 1em;;
	font-size: 117%;
	text-align: right;
}
.btn-all a{
	position: relative;
	padding: 0 32px 0 0;
	color: #000;
	display: inline-block;
}
.btn-all a::after{
	content:'';
	background: url(/assets/images/top/ico_btn-all.png) no-repeat right 50%;
	background-size:cover;
	width: 16px;
	height: 10px;
	position: absolute;
	right:4px;
	top: 50%;
	margin-top: -6px;
}
.btn-all a:hover{
	padding: 0 24px 0 0;
}
/* ---------------------------------------------------------------------------
	ophover
--------------------------------------------------------------------------- */
.ophover{
	transition:opacity ease .3s;
}
.ophover:hover{
	opacity: 0.6 !important;
}

/* ---------------------------------------------------------------------------
	loader
--------------------------------------------------------------------------- */
.cssload-spin-box {
	position: absolute;
	margin: auto;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	width: 15px;
	height: 15px;
	border-radius: 100%;
	box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
		-o-box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
		-ms-box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
		-webkit-box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
		-moz-box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
	animation: cssload-spin ease infinite 4.6s;
		-o-animation: cssload-spin ease infinite 4.6s;
		-ms-animation: cssload-spin ease infinite 4.6s;
		-webkit-animation: cssload-spin ease infinite 4.6s;
		-moz-animation: cssload-spin ease infinite 4.6s;
}



@keyframes cssload-spin {
	0%,
	100% {
		box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
	}
	25% {
		box-shadow: -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73);
	}
	50% {
		box-shadow: -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223);
	}
	75% {
		box-shadow: 15px -15px #dfdfdf, 15px 15px #4f4d49, -15px 15px #dfdfdf, -15px -15px #4f4d49;
	}
}

@-o-keyframes cssload-spin {
	0%,
	100% {
		box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
	}
	25% {
		box-shadow: -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73);
	}
	50% {
		box-shadow: -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223);
	}
	75% {
		box-shadow: 15px -15px #dfdfdf, 15px 15px #4f4d49, -15px 15px #dfdfdf, -15px -15px #4f4d49;
	}
}

@-ms-keyframes cssload-spin {
	0%,
	100% {
		box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
	}
	25% {
		box-shadow: -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73);
	}
	50% {
		box-shadow: -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223);
	}
	75% {
		box-shadow: 15px -15px #dfdfdf, 15px 15px #4f4d49, -15px 15px #dfdfdf, -15px -15px #4f4d49;
	}
}

@-webkit-keyframes cssload-spin {
	0%,
	100% {
		box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
	}
	25% {
		box-shadow: -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73);
	}
	50% {
		box-shadow: -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223);
	}
	75% {
		box-shadow: 15px -15px #dfdfdf, 15px 15px #4f4d49, -15px 15px #dfdfdf, -15px -15px #4f4d49;
	}
}

@-moz-keyframes cssload-spin {
	0%,
	100% {
		box-shadow: 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223);
	}
	25% {
		box-shadow: -15px 15px rgb(223,223,223), -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73);
	}
	50% {
		box-shadow: -15px -15px rgb(79,77,73), 15px -15px rgb(223,223,223), 15px 15px rgb(79,77,73), -15px 15px rgb(223,223,223);
	}
	75% {
		box-shadow: 15px -15px #dfdfdf, 15px 15px #4f4d49, -15px 15px #dfdfdf, -15px -15px #4f4d49;
	}
}


/* ---------------------------------------------------------------------------
		.clearfix
			クリアフィックス
--------------------------------------------------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}


/* ==========================================================================
   tablet
   ========================================================================== */
@media screen and (max-width: 960px){

	.pcHide{display:block;}
	.spHide{display:block;}
	.tbHide{display:none;}

	/* ---------------------------------------------------------------------------
		囲み要素
	--------------------------------------------------------------------------- */
	.sec-inner-1000{width: 100%;}
	.sec-inner-1200{width: 100%;}





}




/* ==========================================================================
   smartPhone
   ========================================================================== */
@media screen and (max-width: 600px){

	.pcHide{display:block;}
	.tbHide{display:block;}
	.spHide{display:none;}



	/* ---------------------------------------------------------------------------
		囲み要素
	--------------------------------------------------------------------------- */
	.sec-inner-1000{width: 100%;}
	.sec-inner-1200{width: 100%;}


	/* ---------------------------------------------------------------------------
		ボタン
	--------------------------------------------------------------------------- */
	.btn-detail a,
	.btn-detail span{
		padding-right: 30px;
		font-size: 11px;
	}
	.btn-detail a::before,
	.btn-detail a::after,
	.btn-detail span::before,
	.btn-detail span::after{
		top:50%;
		margin-top: 0;
		width: 20px;
	}
	.btn-detail a::after,
	.btn-detail span::after{
		margin-top: -2px;
		width: 6px;
	}

	/* ---------------------------------------------------------------------------
		animation
	--------------------------------------------------------------------------- */
	.sc-fade{
		opacity:1;
	}

	.sc-zoom{
		opacity:1;
		transform:scale(1);
	}

	.sc-slideup{
		opacity:1;
		transform:translateY(0);
	}

	.sc-slideup-wide{
		opacity:1;
		transform:translateY(0);
	}

	.sc-slideleft{
		opacity:1;
		transform:translateX(0);
	}

	.sc-slideright{
		opacity:1;
		transform:translateX(0);
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
	}

	.sc-fade-box .sc-target{
		opacity:1;
	}

	.sc-fade-box-delay03 .sc-target{
		opacity:1;
	}

	.sc-slideup-box .sc-target{
		opacity:1;
		transform:translateY(0);
	}



}
