@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600&family=Noto+Serif+JP:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Prata&family=Roboto:wght@500&display=swap');

/* ------------------------------
reset
------------------------------ */

a{
	color: #000;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
} 
html{
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
}
@media screen and (max-width : 1350px) {
  html {
    font-size: 0.73vw;
  }
}
@media screen and (max-width : 767px) {
	html {
		font-size: 2.4vw;
	}
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form, input, textarea {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;  
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: left;
	color: #000;
}
/*
.ie body,.ie h1,.ie h2,.ie h3,.ie h4,.ie h5,.ie h6,.ie p,.ie address,
.ie ul,.ie ol,.ie li,.ie dl,.ie dt,.ie dd,
.ie table,.ie th,.ie td,.ie img,.ie form,.ie input,.ie textarea {
	font-family: "メイリオ", Meiryo, sans-serif;
}
*/
img { vertical-align: bottom; }

.min { font-family: 'Noto Serif JP', serif; }
.bold { font-weight: 600; }

/* ------------------------------
base
------------------------------ */

body{
	position: relative;
	font-size: 1.6rem;
}
p,table,dl,ol,ul li  {
	font-size: 1.6rem;
	line-height: 2.0;
}
.en{ font-family: "linotype-didot",serif; }
.ro{ font-family: 'Roboto', sans-serif; }

/* ------------------------------
contents
------------------------------ */

.wrap{
	width: 1200px;
	box-sizing: border-box;
	margin: 0 auto;
}
.wrap_m{
	max-width: 1680px;
	margin: 0 auto;
}
#header{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 1.875em 0 0 1.875em;
	box-sizing: border-box;
	z-index: 10;
}
#header .headerWrap{
	display: flex;
	z-index: 5;
}
#header .logo{
	font-size: 1.6rem;
	width: 13.5em;
}
@media screen and (max-width : 1000px){
	#header .logo{
		width: 11.5em;
	}
}
#header .logo img{
	width: 100%;
	height: auto;
}
#header .logo a{
	transition: 0.3s;
}
#header .logo a:hover{
	opacity: 0.7;
}
#header.bk .logo img{
	opacity: 0;
}
#header.bk .logo{
	background: url(../img/common/logo_header_bk@2x.png) 0 0 no-repeat;
	background-size: 100% auto;
}
#toggle {
	display: none;
}
#gnavi .menu{
	display: flex;
	justify-content: flex-end;
	margin-left: 3.75em;
}
#gnavi .menu > li{
	font-size: 1.6rem;
	line-height: 1.0;
	font-weight: bold;
}
#gnavi .menu > li + li{
	margin-left: 3em;
}
@media screen and (max-width : 1380px){
	#gnavi .menu > li + li{
		margin-left: 2em;
	}
	#gnavi .menu{
		margin-left: 2.5em;
	}
}
#gnavi .menu > li a{
	color: #fff;
}
#gnavi_sp{
	display: none;
}
#link{
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	justify-content: flex-end;
	background: #000;
	padding: 0.625em;
}
#link li{
	width: 8.74em;
}
#link li + li{
	width: 5.25em;
	border-left: 1px solid #4C4C4C;
}
@media screen and (max-width : 1120px){
	#link li{
		width: 6.5em;
	}
	#link li span{
		display: none;
	}
	#link li + li{
		width: 7.5em;
	}
}
#link a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-flow: column;
	height: 100%;
	color: #fff;
	background: #000;
	padding: 0.6em 0 0.5em;
	box-sizing: border-box;
}
#link a p{
	line-height: 1.0;
	font-size: 1.0rem;
	text-align: center;
	font-weight: bold;
	color: #fff;
	margin-top: 1em;
}
#link img{
	display: block;
	margin: 0 auto;
}
#gnavi .menu .none{
	pointer-events: none;
}
main{
	display: block;
}
.container{
	padding-bottom: 7.5em;
}
#footer{
	position: relative;
	background: #E4E6E9;
	padding: 5em 2em 3em;
}
#footer .pagetop{
	position: absolute;
	top: -24px;
	right: 24px;
}
#footer .footerWrap{
	display: flex;
	justify-content: space-between;
	max-width: 1160px;
	flex-wrap: wrap;
	margin: 0 auto;
}
#footer .logoWrap{
	width: 15em;
}
#footer .logoWrap{
	width: 15em;
}
#footer .logoWrap .logo{
	width: 12.5em;
}
#footer .logoWrap .logo img{
	width: 100%;
	height: auto;
}
#footer .logoWrap p{
	font-size: 1.4rem;
	color: #555;
}
#footer .logoWrap p + p{
	margin-top: 1.5em;
}
#footer .logoWrap .name{
	font-size: 1.6rem;
	margin-top: 2em;
}
#footer .logoWrap .mail a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	color: #555;
}
#footer .logoWrap .mail img{
	margin-right: 0.5em;
}
#footer .menuWrap{
	display: flex;
	justify-content: space-between;
	width: 52em;
}
#footer .menuWrap p,
#footer .menuWrap ul li{
	font-size: 1.4rem;
	color: #555;
}
#footer .menuWrap a{
	color: #555;
}
#footer .menuWrap .menu p{
	font-weight: bold;
	margin-bottom: 0.5em;
}
#footer .menuWrap .menu:first-child{
	width: 30%;
}
#footer .menuWrap .menu{
	width: 43%;
}
#footer .menuWrap .menu:last-child{
	width: 18%;
}
#footer .menuWrap ul + ul,
#footer .menuWrap ul + p{
	margin-top: 2em;
}
#footer .copy{
	width: 100%;
	color: #555;
	font-size: 1.2rem;
	margin-top: 5.625em;
}

@media screen and (max-width : 1200px){
	#footer .menuWrap{
		width: 58em;
	}	
}
@media screen and (min-width : 768px){

	.bk #gnavi .menu > li a{
		color: #000;
	}
	
	.pc{
		display:block!important;
		line-height: 0;
	}
	.sp{
		display:none!important;
		line-height: 0;
	}
	a[href*="tel:"] {
		pointer-events: none;
	}
	.ie11 a[href*="tel:"] {
		pointer-events: none;
		display: inline-block;
		cursor: default;
	}
}
@media screen and (max-width : 767px){
	html{ overflow:auto; }
	body{ min-width: inherit; }
	p, table, dl, ol, ul li{ font-size: 1.6rem; line-height: 1.875; text-align: justify; word-break: break-all;}
	img{ width:100%; height: auto; }
	main{
		display: block;
	}
	.wrap{
		width: auto;
	}
	.pc{
		display:none!important;
		line-height: 0;
	}
	.sp{
		display: block!important;
		line-height: 0;
	}
	.fixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}
	#overlay{
		pointer-events: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.6);
		z-index: 11;
		opacity: 0;
		transition: 0.3s;
	}
	.fixed #overlay{
		pointer-events: all;
		opacity: 1;
	}
	#header{
		position: fixed;
		top: 0;
		right: 0;
		align-items: flex-end;
		justify-content: space-between;
		padding: 0 14vw 0 5.3vw;
		box-sizing: border-box;
		transition: 0.3s;
	}
	#header .logo{
		width: 40vw;
		transition: 0.3s;
	}
	#header .logo img{
		transition: 0.3s;
	}
	#header.scroll,
	#header.open{
		background: #fff;
		box-shadow: 0 0 5px rgba(0,0,0,0.3);
	}
	#header.scroll .logo img,
	#header.open .logo img{
		opacity: 0;
	}
	#header.scroll .logo,
	#header.open .logo{
		background: url(../img/common/logo_header_bk@2x.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
	#header .logo a{
		display: block;
	}
	#header .headerWrap{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
	}
	#header #gnavi {
		display: none;
	}
	#gnavi_sp {
		display: block;
		position: fixed;
		top: 0;
		right: -64vw;
		width: 64vw;
		height: 100vh;
		text-align: center;
		background: #fff;
		padding: 18vw 0 23vw;
		box-sizing: border-box;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		z-index: 12;
		transition: 0.3s;
	}
	#gnavi_sp .menu{
		margin: 0 5vw;
	}
	#gnavi_sp .menu p{
		font-weight: bold;
		color: #555;
		margin-bottom: 0.5em;
	}
	#gnavi_sp .menu ul + p,
	#gnavi_sp .menu ul + ul{
		margin-top: 2em;
	}
	#gnavi_sp .menu ul li + li{
		margin-top: 0.5em;
	}
	#gnavi_sp .menu ul li{
		font-size: 1.4rem;
	}
	#gnavi_sp .menu ul li a{
		color: #555;
	}
	#gnavi_sp .login{
		margin-top: 10vw;
	}
	#gnavi_sp .login li{
		font-size: 1.3rem;
		font-weight: bold;
		border-top: 1px solid #9F9F9F;
	}
	#gnavi_sp .login li a{
		display: flex;
		align-items: center;
		justify-content: flex-start;
		color: #555;
		padding: 4vw 5vw;
	}
	#gnavi_sp .login li a img{
		width: 1.5em;
		height: auto;
		margin-right: 1.5em;
	}
	.fixed #gnavi_sp{
		right: 0;
	}
	#link{
		position: relative;
		top: auto;
		left: auto;
		display: block;
		width: 14vw;
		padding: 0;
	}
	#link li{
		width: auto;
		font-size: 4.2vw;
	}
	#link li:nth-last-child(-n+2){
		display: none;
	}
	#link a{
		width: 14vw;
		height: 14vw;
		justify-content: center;
		align-items: center;
	}
	#link img{
		width: auto;
		height: 4.7vw;
	}
	#link li p{
		color: rgba(255,255,255,0.6);
		margin-top: 0.8em;
	}
	#toggle {
		position: fixed;
		top: 0;
		right: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-flow: column;
		width: 14vw;
		height: 14vw;
		background: #fff;
		cursor: pointer;
		z-index: 13;
		transition: 0.3s;
		box-sizing: border-box;
	}
	#toggle p{
		font-family: inherit;
		line-height: 1.0;
		font-size: 1.0rem;
		font-weight: bold;
		color: rgba(0,0,0,0.6);
		margin-top: 0.8em;
	}
	#toggle div{
		position: relative;
		width: 7vw;
		height: 4.7vw;
	}
	#toggle span {
		display: block;
		position: absolute;
		height: 2px;
		width: 100%;
		background: #000;
		left: 50%;
		transition: .35s ease-in-out;
		transform: translateX(-50%);
	}
	#toggle span:nth-child(1) {
		top: 0;
	}
	#toggle span:nth-child(2) {
		top: calc(50% - 1px);
	}
	#toggle span:nth-child(3) {
		bottom: 0;
	}
	.fixed #toggle span:nth-child(1) {
		top: 2.2vw;
		left: 0;
		transform: rotate(45deg);
	}
	.fixed #toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.fixed #toggle span:nth-child(3) {
		bottom: 2.2vw;
		left: 0;
		transform: rotate(-45deg);
	}
	#footer{
		padding: 15vw 4vw;
	}
	#footer .footerWrap{
		display: block;
	}
	#footer .menuWrap{
		display: none;
	}
	#footer .logoWrap{
		width: auto;
	}
	#footer .logoWrap p + p{
		margin-top: 1em;
	}
	#footer .logoWrap .mail img{
		width: 1.5em;
	}
	#footer .logoWrap .address{
		margin-top: 0;
	}
	#footer .copy{
		margin-top: 2em;
	}
	#footer .pagetop{
		left: 50%;
		right: auto;
		width: 12vw;
		height: 12vw;
		transform: translateX(-50%);
	}
}

/* lower */

.container{
	position: relative;
	overflow-x: hidden;
}

/* max width */

.mw{
	max-width: 1360px;
	margin-right: auto;
	margin-left: auto;
}

/* headline */

.headline{
	position: relative;
	width: 100%;
	/*max-width: 1350px;*/
	font-size: 4.8rem;
	line-height: 1.0;
	padding: 0 56px;
	box-sizing: border-box;
	margin: 0 auto;
}
.headline .min{
	font-size: 2.0rem;
	margin-left: 1em;
}
@media screen and (max-width : 1000px){
	.headline{
		padding: 0 1em;
	}
}
@media screen and (max-width : 767px){
	.headline{
		font-size: 3.0rem;
		padding: 0 6.4vw;
	}
	.headline span{
		font-size: 5.2rem;
	}
	.headline .min{
		display: block;
		font-size: 1.9rem;
		line-height: 1.4;
		margin: 0.5em 0 0;
	}
	.headline .none{
		display: none;
	}
}

/* cmn-btn */

.cmn-btn a{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 4.5em;
	background: #000;
	color: #fff;
	font-weight: bold;
	margin: 0 0 0 auto;
	transition: 0.3s;
}
.cmn-btn--min a{
	height: 3.5em;
}
.cmn-btn a::before{
	content: '';
	position: absolute;
	top: 50%;
	right: 1.25em;
	width: 2.6em;
	height: 0.6875em;
	background: url(../img/common/icon_arrow_wh@2x.png) 0 0 no-repeat;
	background-size: 100% auto;
	transform: translateY(-50%);
}
.cmn-btn--wh a{
	background: #fff;
	color: #000;
}
.cmn-btn--wh a::before{
	background: url(../img/common/icon_arrow_bk@2x.png) 0 0 no-repeat;
	background-size: 100% auto;
}
.cmn-btn a:hover{
	opacity: 0.7;
}
.cmn-btn img{
	margin-right: 1em;
}
.cmn-btn--btm a::before{
	
}
.cmn-btn--btm a{
	background: #fff;
	color: #000;
	border: 1px solid #000;
	box-sizing: border-box;
}
.cmn-btn--btm a::before{
	width: 0.6875em;
	height: 1.5625em;
	background: url(../img/common/icon_arrow_vertical@2x.png) 0 0 no-repeat;
	background-size: 100% auto;
}
@media screen and (max-width : 1000px){
	.cmn-btn img{
		width: 1em;
		height: auto;
	}
}
@media screen and (max-width : 767px){
	.cmn-btn--btm a{
		height: auto;
		min-height: 3em;
	}
}
.cmn-btn--detail{
	width: 26em;
	margin: 0 auto 5em;
}
@media screen and (max-width : 767px){
	.cmn-btn--detail{
		width: calc(100% - 8vw);
	}
}

#lowerMv{
	position: relative;
	display: flex;
	justify-content: flex-end;
	flex-flow: column;
	height: 30em;
	padding: 0 56px 3em;
	box-sizing: border-box;
}
#lowerMv .headline{
	color: #fff;
	padding: 0;
	z-index: 3;
}
#lowerMv .txt{
	color: #fff;
	font-weight: bold;
	margin-top: 1em;
	z-index: 2;
}
#lowerMv.bk .headline,
#lowerMv.bk .txt{
	color: #000;
}
#lowerMv .bg{
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
	z-index: 0;
}
#lowerMv .inner::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
	z-index: 1;
}
#lowerMv.bk .inner::before{
	content: none;
}
@media screen and (max-width : 1000px){
	#lowerMv{
		padding: 0 3.5em 4.6875em;
	}
}
@media screen and (max-width : 767px){
	#lowerMv{
		height: auto;
		position: relative;
		padding: 0;
		margin: 0 0 10vw;
	}
	#lowerMv .inner{
		position: relative;
		display: flex;
		flex-flow: column;
		justify-content: flex-end;
		height: 75vw;
		background: #fff;
		padding-bottom: 7vw;
		box-sizing: border-box;
	}
	#lowerMv .headline{
		margin: 0 4vw;
	}
	#lowerMv .txt{
		color: #000;
		margin: 8vw 6.4vw 0;
	}
}
.pager{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 3em;
}
.pager div{
	width: 2em;
	height: 2em;
	border: 1px solid rgba(0,0,0,0.1);
	font-size: 1.6rem;
	line-height: 1.0;
	box-sizing: border-box;
	margin: 0 0.25em;
}
.pager .current,
.pager a{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	text-align: center;
	line-height: 1.0;	
}
.pager a{
	background: #fff;
	color: #000;
	transition: 0.3s;
}
.pager a:hover{
	background: #DEDEDE;
}
.pager .current,
.pager .dots{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 2em;
}
.pager .current{
	border: 1px solid #000;
}
@media screen and (max-width : 767px){
	.pager{
		margin-top: 2em;
	}
	.pager div{
		width: 9vw;
		height: 9vw;
		font-size: 1.6rem;
		margin: 0 0.3em;
	}
	.pager .current,
	.pager .dots{
		height: 9vw;
	}
	.pager .arrow img{
		width: 1em;
		height: auto;
	}
}
@media screen and (max-width : 767px){

	.container{
		/*padding: 0 0 30vw;*/
	}
}

/* soundproof */

#soundproof{
}
#soundproof .imgBlock{
	position: relative;
	height: 23.75em;
	background-size: auto auto;
	background-color: rgba(100, 108, 117, 1);
}
#soundproof .imgBlock img{
	position: absolute;
	top: 0;
	right: 0;
	width: 30vw;
	height: 100%;
	object-fit: cover;
	object-position: center right;
}
#soundproof .txt{
	position: relative;
	box-sizing: border-box;
	padding: 3.5em 0 3.5em 56px;
	z-index: 2;
}
#soundproof .txt p{
	color: #fff;
}
#soundproof .txt .pre{
	font-weight: bold;
}
#soundproof .txt .min{
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.0;
	margin-top: 2em;
}
#soundproof .txt .en{
	font-size: 7.8rem;
	line-height: 1.0;
	margin-top: 0.5em;
}
#soundproof .cmn-btn{
	width: 30vw;
	margin: 0 0 0 auto;
}
@media screen and (max-width : 1000px){
	#soundproof .txt{
		padding-left: 3.5em;
	}
}
@media screen and (max-width : 767px){
	#soundproof .imgBlock{
		height: auto;
		background: none;
	}
	#soundproof .txt{
		display: flex;
		flex-flow: column;
		padding: 10vw 4vw;
	}
	#soundproof .txt p{
		color: #000;
	}
	#soundproof .txt .en{
		order: 1;
		font-size: 6.2rem;
		margin: 0;
	}
	#soundproof .txt .en span{
		display: block;
		font-size: 4.4rem;
	}
	#soundproof .txt .min{
		order: 2;
		line-height: 1.4;
		margin-top: 1em;
	}
	#soundproof .txt .pre{
		order: 3;
		margin-top: 1.5em;
	}
	#soundproof .imgBlock img{
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
	}
	#soundproof .cmn-btn{
		width: auto;
		margin: 0 4vw;
	}	
}

/* bottom */

#bottom{
	display: flex;
	justify-content: space-between;
	margin-top: 5.625em;
}
#bottom .block{
	width: calc((100% - 56px) / 2);
}
#bottom .block img{
	width: 100%;
	height: auto;
	margin-top: 2.5em;
}
#bottom .cmn-btn{
	width: 26.25em;
	margin: 0 0 0 auto;
}
#bottom .block .headline{
	font-size: 5.6rem;
}
@media screen and (max-width : 1000px){
	#bottom .block{
		width: calc((100% - 3.5em) / 2);
	}
}
@media screen and (max-width : 767px){	
	#bottom{
		display: block;
	}
	#bottom .block{
		width: 100%;
	}
	#bottom .block img{
		margin-top: 1em;
	}
	#bottom .block + .block{
		margin-top: 5.625em;
	}
	#bottom .block .headline{
		font-size: 5.3rem;
	}
}

/* case */

#case .blockWrap{
	position: relative;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	background: #000;
	padding-bottom: 4.375em;
}
#case.lower .blockWrap{
	padding-bottom: 3.25em;
}
#case .blockWrap::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 9.375em;
	background: #fff;
	z-index: 1;
}
#case .block.is-hidden{
	display: none;
}
#case .block{
	position: relative;
	width: calc((100% - 168px) / 4);
	margin-top: 2.8em;
	margin-right: 56px;
	z-index: 2;
}
#case .block:nth-child(4n){
	margin-right: 0;
}
#case .block:nth-child(-n+4){
	margin-top: 0;
}
#case .block .img img{
	width: 100%;
	height: auto;
}
#case .name{
	font-size: 1.6rem;
	line-height: 1.875;
	background: #fff;
	font-weight: bold;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	padding: 1em;
}
#case .link a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #000;
	padding: 1em;
	transition: 0.3s;
}
#case .link a:hover{
	opacity: 0.7;
}
#case .link a p{
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.7;
}
#case .link img{
	width: 2.6em;
	height: auto;
	margin-left: 1em;
}
#case .cmn-btn{
	background: #000;
}
#case .cmn-btn a{
	width: calc((100% - 168px) / 4);
	margin: 0 0 0 auto;
}
#case .cmn-btn.link-none a{
	pointer-events: none;
}
#case .cmn-btn.link-none{
	transition: 0.3s;
}
#case .cmn-btn.link-none:hover{
	opacity: 0.7;
	cursor: pointer;
}
@media screen and (max-width : 1000px){
	#case .block,
	#case .cmn-btn a{
		width: calc((100% - 10.5em) / 4)
	}
	#case .block{
		margin-right: 3.5em;
	}
}
@media screen and (max-width : 767px){
	#case .blockWrap{
		display: block;
		padding: 0 9vw 5vw;
	}
	#case.lower .blockWrap{
		padding-bottom: 1em;
	}
	#case .block,
	#case .cmn-btn a{
		width: auto;
	}
	#case .block{
		margin-right: 0;
		margin-top: 2em;
	}
	#case .block:nth-child(-n+4){
		margin-top: 2em;
	}
	#case .block:first-child{
		margin-top: 0;
	}
	#case .blockWrap::before{
		height: 48vw;
	}
	#case .cmn-btn{
		padding: 0 9vw 10vw;
	}
	#case .cmn-btn a{
		color: #fff;
		border: 1px solid #fff;
		background: #000;
	}
	#case .cmn-btn a::before{
		background: url(../img/common/icon_arrow_wh@2x.png) 0 0 no-repeat;
		background-size: 100% auto;
	}
}

/* club */

#club{
	position: relative;
	margin-top: 7.8em;
}
#club.lower{
/*
	background: url(../img/index/img_owners_logo.png) center center no-repeat;
	background-size: 20em auto;
*/
	margin-top: 0;
	padding: 10em 0 6.25em;
}
#club .imgBlock{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
#club .imgBlock > img{
	width: 30%;
	max-height: 720px;
	object-fit: cover;
}
@media screen and (max-width : 980px){
	#club .imgBlock > img{
		width: 30%;
		height: auto;
	}
}
#club .imgBlock .txt{
	position: relative;
	margin-left: 64px;
	/*padding-top: 145px;*/
	padding-top: 9em;
}
@media screen and (max-width : 980px){
	#club .imgBlock .txt{
		padding-top: 9vw;
	}
}
#club.lower .imgBlock .txt{
	padding: 0;
}
#club .imgBlock .txt h2{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	font-size: 3.2rem;
}
#club .imgBlock .txt h2 span{
	display: inline-block;
	line-height: 1.0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
	border: 1px solid #000;
	font-weight: bold;
	padding: 0.2em 0.5em;
	margin-left: 0.5em;
}
#club .imgBlock .txt p{
	font-weight: bold;
	margin-top: 1.2em;
}
#club .imgBlock .txt::before{
	content: '';
	position: absolute;
	top: -1.25em;
	right: -13.75em;
	width: 20em;
	height: 19.5em;
	background: url(../img/index/img_owners_logo.png) 0 0 no-repeat;
	background-size: 100% auto;
}
#club.lower .imgBlock .txt::before{
	content: none;
}
#club .btnBlock{
	position: absolute;
	right: 0;
	bottom: 182px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
@media screen and (max-width : 980px){
	#club .btnBlock{
		bottom: 11.25vw;
	}
}
#club.lower .btnBlock{
	position: relative;
	right: auto;
	bottom: auto;
}
#club .btnBlock .btnWrap{
	width: 30vw;
}
#club .btnBlock .small{
	font-family: "linotype-didot",serif;
	font-size: 1.4rem;
	letter-spacing: -0.05em;
	text-align: right;
	margin-bottom: 0.2em;
}
#club .btnBlock .big{
	font-size: 9.1rem;
	font-family: "linotype-didot",serif;
	letter-spacing: -0.03em;
	line-height: 1.0;
}
#club .btnBlock .big span{
	font-size: 4.2rem;
}
#club .btnBlock .cmn-btn + .cmn-btn{
	margin-top: 1em;
}
#club .btnBlock .btnWrap{
	margin-left: 45px;
}
@media screen and (max-width : 1000px){
	/*
	#club .btnBlock .big{
		font-size: 8rem;
	}
	*/
	#club .btnBlock .btnWrap{
		margin-left: 2.8em;
	}
}
@media screen and (max-width : 767px){
	#club{
		position: relative;
		margin: 70vw 4.2vw 20vw;
		padding-top: 40vw;
	}
	#club::before{
		content: '';
		position: absolute;
		top: -70vw;
		left: -4.2vw;
		width: calc(100% + 8.4vw);
		height: 50vw;
		background: url(../img/common/img_owners_sp.jpg) 0 0 no-repeat;
		background-size: 100% auto;
		object-fit: cover;
	}
	#club.lower{
		/*margin: 20vw 4.2vw;*/
		margin: 90vw 4.2vw 20vw;
		padding: 40vw 0 0;
	}
	/*
	#club.lower::before{
		content: none;
	}
	*/
	#club::after{
		content: '';
		position: absolute;
		top: 0.5em;
		left: 55%;
		width: 12em;
		height: 11.5em;
		background: url(../img/index/img_owners_logo.png) 0 0 no-repeat;
		background-size: 100% auto;
		transform: translateX(-50%);
	}
	#club .btnBlock .txt{
		position: absolute;
		top: -100vw;
		left: 0;
		width: 100%;
	}
	#club .imgBlock > img{
		display: none;
	}
	#club .imgBlock .txt{
		width: auto;
		padding: 0;
		margin: 0;
	}
	#club .btnBlock{
		display: block;
		position: relative;
		bottom: auto;
		right: auto;
	}
	#club .btnBlock .small{
		display: none;
	}
	#club .btnBlock .big{
		font-size: 6.2rem;
	}
	#club .btnBlock .big span{
		display: block;
		font-size: 4.4rem;
		margin-bottom: 0.3em;
	}
	#club .btnBlock .btnWrap{
		width: auto;
		margin: 5vw 0 0;
	}
	#club .imgBlock .txt h2{
		display: block;
		font-size: 2.5rem;
	}
	#club .imgBlock .txt h2 span{
		position: relative;
		display: block;
		text-align: center;
		border: 0;
		margin: 1em 0 0;
		padding: 0;
	}
	#club .imgBlock .txt h2 span::before,
	#club .imgBlock .txt h2 span::after{
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		width: calc(50% - 2em);
		height: 1px;
		background: #000;
	}
	#club .imgBlock .txt h2 span::after{
		right: 0;
		left: auto;
	}
	#club .imgBlock .txt p{
		font-size: 1.8rem;
		margin-top: 2em;
	}
	#club .imgBlock .txt::before{
		content: none;
	}
}

/* soon */

#soon{
	position: relative;
}
#soon picture{
	display: block;
}
#soon img{
	width: 100%;
	height: auto;
}
#soon .block{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 40em;
	transform: translate(-50%,-50%);
}
#soon .en{
	font-size: 4.8rem;
	text-align: center;
}
#soon .txt{
	font-weight: bold;
	text-align: center;
}
@media screen and (max-width : 1000px){

}
@media screen and (max-width : 768px){
	#soon .block{
		width: 100%;
		padding: 0 6.4vw;
		box-sizing: border-box;
	}
	#soon .en{
		font-size: 2.8rem;
	}
	#soon .txt{
		font-size: 1.4rem;
	}
}

/* */

.definition{
	display: flex;
	justify-content: space-between;
	padding: 0 56px;
	margin-top: 2.75em;
}
.definition .definition-block{
	width: 49%;
	border-left: 1px solid #9F9F9F;
}
.definition.wh .definition-block{
	background: rgba(165,165,165,0.15);
	border-left: 0;
	padding: 4.375em 0;
}
.definition dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.definition dl dt{
	align-self: flex-start;
	width: 9.5em;
	background: #000;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 1em 1.2em;
	box-sizing: border-box;
	margin-bottom: 2.86em;
}
.definition.wh dl dt{
	color: #747475;
	background: #fff;
}
.definition dl dd{
	display: flex;
	align-items: center;
	width: calc(100% - 10em);
	min-height: 2.625em;
	align-self: flex-start;
	line-height: 2.2;
	font-weight: bold;
	box-sizing: border-box;
	margin-bottom: 2.5em;	
}
.definition dl dd a[href*="tel:"]{
	margin-left: 0.4em;
}
.definition dl dt:last-of-type,
.definition dl dd:last-of-type{
	margin-bottom: 0;
}
.definition .pcnone{
	display: none;
}
.definition-solo .definition-block{
	width: auto;
}
@media screen and (max-width : 1000px){
	.definition{
		padding: 0 3.5em;
	}
}
@media screen and (max-width : 767px){
	.definition{
		display: block;
		padding: 0 4vw;
	}
	.definition .definition-block{
		width: 100%;
	}
	.definition .definition-block + .definition-block{
		padding-top: 2.86em;
	}
	.definition dl dt{
		align-self: flex-start;
	}
	.definition dl dd{
		width: calc(100% - 9em);
		min-height: 2.4em;
		font-weight: normal;
		align-self: flex-start;
		margin-bottom: 0;
	}
	.definition-row dl{
		display: block;
	}
	.definition-row dl dt{
		margin: 0;
	}
	.definition-row dl dd{
		display: block;
		width: auto;
		padding: 4vw;
	}
	.definition .pcnone{
		display: inline;
	}
	.definition.wh .definition-block{
		padding: 10vw 0 0;
	}
	.definition.wh .definition-block + .definition-block{
		padding: 4vw 0 10vw;
	}
	.definition dl dd:last-of-type{
		padding-bottom: 0;
	}
}

#form{
	background: #F2F2F2;
	padding: 5em 3.5em 6.875em;
}
#form .txt{
	font-weight: bold;
}
#form .block{
	position: relative;
	width: auto;
	max-width: 1080px;
	background: #fff;
	padding: 5em 5.75em 0;
	margin: 0 auto;
	box-sizing: border-box;
}
#form .block::after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1.875em;
	width: 100%;
	background: #F2F2F2;
}
#form input[type="text"],
#form input[type="email"],
#form input[type="tel"],
#form input[type="password"],
#form textarea{
	width: 100%;
	height: 2.5em;
	border: 1px solid #ADADAD;
	background: #fff;
	font-family: inherit;
	font-size: inherit;
	box-sizing: border-box;
	padding: 0.5em 1em;
	-webkit-appearance: none;
	border-radius: 0;
}
::placeholder {
	color: #C5C1C1;
}
::-ms-input-placeholder {
	color: #C5C1C1;
}
:-ms-input-placeholder {
	color: #C5C1C1;
}
#form textarea{
	height: 10em;
	resize: vertical;
	vertical-align: top;
	padding: 1em;
}
#form .selectWrap{
	position: relative;
	display: flex;
	max-width: 33em;
	box-sizing: border-box;
	border: 2px solid #ADADAD;
}
#form .selectWrap::after{
	content: '';
	position: absolute;
	top: 0.6em;
	right: 1em;
	width: 0.6875em;
	height: 0.6875em;
	border-left: 1px solid #444;
	border-bottom: 1px solid #444;
	box-sizing: border-box;
	transform: rotate(-45deg);
}
#form .selectWrap select{
	width: 100%;
	height: calc(2.5em - 4px);
	outline: none;
	text-indent: 0.01px;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	font-family: inherit;
	letter-spacing: 0.1em;
	border: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0 0.8em;
}
#form .selectWrap select option{
	background-color: #fff;
	color: #333;
}
select::-ms-expand {
	display: none;
}
select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #828c9a;
}
#form .name{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#form .name li{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 49%;
}
#form .name li p{
	width: 2em;
}
#form .name li .inner{
	width: calc(100% - 2em);
}
#form table{
	position: relative;
	width: 100%;
	table-layout: fixed;
	border-spacing: 0;
}
#form table th{
	position: relative;
	width: 11.375em;
	line-height: 1.6;
	border-top: 1px solid #D7D7D7;
	box-sizing: border-box;
	vertical-align: top;
	padding: 2.4em 0 0;
}
#form table td{
	border-top: 1px solid #D7D7D7;
	padding: 1.875em 0;
}
#form table tr:first-child th,
#form table tr:first-child td{
	border-top: 0;
}
#form td.none{
	border-top: 0;
	padding-top: 0;
}
#form th.none{
	border-top: 0;
	padding-top: 0.5em;
}
#form th.input{
	vertical-align: middle;
	padding: 0;
}
#form th.input.none{
	vertical-align: top;
	padding-top: 0.2em;
}
#form .required{
	color: #FF4200;
}
#form .notes{
	position: absolute;
	top: calc(50% + 0.7em);
	left: 0;
	font-size: 1.2rem;
	color: #A1A1A1;
}
#form .birth{
	display: flex;
}
#form .birth li{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 6.5em;
}
#form .birth li + li{
	margin-left: 2em;
}
#form .birth li p{
	padding-left: 1em;
}
#form .birth .birth-year{
	width: 11.5em;
}
#form .birth .birth-month input,
#form .birth .birth-day input{
	text-align: center;
}
#form .sex{
	display: flex;
	justify-content: flex-start;
}
#form .sex li + li{
	margin-left: 5em;
}
#form .zipWrap{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
#form .zipWrap .zipAd{
	width: 12.5em;
}
#form .zipWrap .btn{
	width: 7.5em;
	background: #000;
	text-align: center;
	color: #fff;
	line-height: 2.5;
	margin: 0 2.5em 0 1.25em;
}
#form .zipWrap .prefAd{
	width: 12.5em;
}
#form .address{
	margin-top: 1.25em;
}
#form .trigger{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 0 8em 0 0;
}
#form .trigger li:last-child{
	padding-right: 5em;
}
#form .trigger li{
	margin: 1em 0 0 6em;
}
#form .model .trigger{
	padding-right: 6em;
}
#form .trigger.model li{
	margin-top: 1.2em;
}
#form .trigger li:nth-child(3n+1){
	margin-left: 0;
}
#form .trigger li:nth-child(-n+3){
	margin-top: 0;
}
#form .trigger .triggerTxt{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
#form .trigger .triggerTxt .other{
	width: 13.75em;
	margin-left: 1em;
}
#form .model .trigger .model-01{
	margin-left: 2.1em;
}
#form .model .trigger .model-02{
	margin-left: 0;
	margin-top: 0.5em;
}
#form .model{
	margin-top: 2.5em;
}
@media screen and (max-width : 1200px){
	#form .trigger{
		padding: 0 18vw 0 0;
	}
	#form .model .trigger{
		padding: 0 15vw 0 0;
	}
}
#form .date{
	display: flex;
	justify-content: flex-start;
}
#form .date .picker{
	width: 21em;
}
#form .date .selectWrap{
	width: 12.5em;
	margin-left: 1em;
}
#form .policy .ttl{
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-weight: bold;
	font-size: 1.8rem;
	color: #444;
	margin: 3.3em 0 2.2em;
}
#form .policy .ttl::before,
#form .policy .ttl::after{
	content: '';
	width: calc(50% - 6em);
	height: 1px;
	background: #ADADAD;
}
#form .policy .scroll{
	height: 16.25em;
	border: 1px solid #ADADAD;
	padding: 1em 1.375em;
	overflow-y: scroll;
	box-sizing: border-box;
}
#form .policy .scroll p{
	font-size: 1.4rem;
	line-height: 1.6;
}
#form .policy .scroll p + .subttl{
	margin-top: 1em;
}
#form .policy .subttl{
	font-weight: bold;
}
.checkbox{
	font-size: 1.6rem;
	width: 100%;
	text-align: center;
	margin: 2.5em 0;
}
.checkbox .checkBtn{
	display: none;
}
.checkParts{
	display: inline-block;
	position: relative;
	height: 1.25em;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.25em;
	padding-left: 2.5em;
	cursor: pointer;
}
.checkParts::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1.25em;
	height: 1.25em;
	border: 1px solid #ADADAD;
	box-sizing: border-box;
}
.checkBtn:checked + .checkParts::after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0.4em;
	width: 0.4em;
	height: 0.9em;
	transform: rotate(40deg);
	border-bottom: 2px solid #24214E;
	border-right: 2px solid #24214E;
}
.checkbox a{
	color: #5b8934;
	text-decoration: underline;
}
.checkbox a:hover{
	text-decoration: none;
}
.selectBtn-btn {
	display: none;
}
.selectBtn-btn + .selectBtn-parts {
	padding-left: 2em;
	position: relative;
}
.selectBtn-btn + .selectBtn-parts::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 1em;
	height: 1em;
	/*
	border: 1px solid #BCBABE;
	border-radius: 50%;
	*/
	background: url(../img/common/icon_select_off.png) 0 0 no-repeat;
	background-size: 100% auto;
	box-sizing: border-box;
	transform: translateY(-50%);
}
.selectBtn-btn:checked + .selectBtn-parts::before {
	background: url(../img/common/icon_select_on.png) 0 0 no-repeat;
	background-size: 100% auto;
}
/*
.selectBtn-btn:checked + .selectBtn-parts::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0.2em;
	width: 0.6em;
	height: 0.6em;
	background: #000;
	border-radius: 50%;
	transform: translateY(-50%);
}
.win .selectBtn-btn:checked + .selectBtn-parts::after {
	top: 0.75em;
}
.mac .selectBtn-btn:checked + .selectBtn-parts::after {
	top: 50%;
	transform: translateY(-50%);
}
*/
#form .submit,
#form .submit_button{
	position: relative;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 19em;
	height: 3.3em;
	text-align: center;
	background: url(../img/common/icon_arrow_wh@2x.png) calc(100% - 1.3em) center no-repeat #000;
	background-size: 2.3em auto;
	color: #fff;
	font-family: inherit;
	font-size: 1.8rem;
	letter-spacing: 0.12em;
	font-weight: bold;
	border: 0;
	padding: 0;
	margin: 0 auto;
	cursor: pointer;
	transition: 0.3s;
	z-index: 2;
	border-radius: 0;
}
#form .submit:hover,
#form .submit_button:hover{
	opacity: 0.7;
}
#wpmem_msg,
.wpmem_msg {
    background: transparent!important;
    border: 0!important;
    border-radius: 0!important;
    padding: 0 0 2em!important;
}
#wpmem_msg h2,
.wpmem_msg h2{
	line-height: 1.6;
	margin: 0 0 1em;
}
#form .back{
	position: relative;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 19em;
	height: 3.3em;
	text-align: center;
	background: url(../img/common/icon_arrow_wh-r@2x.png) 1.3em center no-repeat #969696;
	background-size: 2.3em auto;
	color: #fff;
	font-family: inherit;
	font-size: 1.8rem;
	letter-spacing: 0.12em;
	font-weight: bold;
	border: 0;
	padding: 0;
	margin: 1em auto 0;
	cursor: pointer;
	transition: 0.3s;
	z-index: 2;
}
#form .back:hover{
	opacity: 0.7;
}
#form .top{
	position: relative;
	width: 19em;
	font-size: 1.8rem;
	margin: 3.8em auto 0;
	z-index: 2;
}
#form .top a{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 3.3em;
	text-align: center;
	background: url(../img/common/icon_arrow_wh-r@2x.png) 1.3em center no-repeat #000;
	background-size: 2.3em auto;
	color: #fff;
	letter-spacing: 0.12em;
	font-weight: bold;	
	cursor: pointer;
	padding-left: 1em;
	transition: 0.3s;
	z-index: 2;
}
#form .top a:hover{
	opacity: 0.7;
}
#form .center{
	padding-top: 0;
	vertical-align: middle;
}
#form.confirm .txt{
	font-size: 2.6rem;
	text-align: center;
	margin: 0 0 1em;
	letter-spacing: 0.1em;
}
#form.confirm table th{
	width: 20.5em;
}
#form.confirm table{
	border-top: 1px solid #D7D7D7;
	border-bottom: 1px solid #D7D7D7;
	margin-bottom: 5.625em;
}
#form.confirm table th,
#form.confirm table td{
	line-height: 1.6;
	padding: 1em 0;
}
#form.confirm table td{
	font-weight: bold;
}
#form.thanks .wrap{
	padding: 3em 5.75em 0;
}
#form.thanks .txt{
	text-align: center;
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 0.5em;
}
#form.thanks p{
	text-align: center;
}

@media screen and (max-width : 1000px){
	#form table th{
		width: 13em;
	}
}
@media screen and (max-width : 767px){

	#form{
		width: auto;
		padding: 10vw 6.4vw;
		margin-top: -10vw;
	}
	#form .block{
		padding: 4vw 4vw 0;
	}
	#form .ttl{
		font-size: 1.5rem;
		text-align: center;
		margin: 15vw 0 8vw;
	}
	#form table{
		width: 100%;
	}
	#form table th{
		display: block;
		width: 100%;
		padding: 1em 0 0.2em;
	}
	#form table td{
		display: block;
		width: auto;
		border-top: 0;
		padding: 0 0 1em;
	}
	#form table th.input{
		padding-top: 1em;
	}
	#form .name{
	}
	#form .name li{
		display: block;
		width: calc(50% - 2vw);
	}
	#form th.none{
		padding-top: 0;
	}
	#form .birth{
		justify-content: space-between;
	}
	#form .birth li p{
		padding-left: 0.2em;
	}
	#form .birth .birth-year{
		width: 35%;
	}
	#form .birth .birth-year input{
		text-align: center;
	}
	#form .birth li{
		width: 27%;
	}
	#form .birth li + li{
		margin-left: 0;
	}
	#form .sex li{
		width: 50%;
	}
	#form .sex li + li{
		margin-left: 0;
	}
	#form .zipWrap{
		justify-content: space-between;
	}
	#form .zipWrap .zipAd{
		width: 55%;
	}
	#form .zipWrap .btn{
		width: calc(45% - 4vw);
		margin: 0;
	}
	#form .zipWrap .prefAd{
		width: 60%;
		margin-top: 4vw;
	}
	#form .address{
		margin-top: 4vw;
	}
	#form .trigger{
		margin-top: 2vw;
		padding: 0;
	}
	#form .model .trigger{
		padding: 0;
	}
	#form .trigger li{
		width: 50%;
		margin: 0.5em 0 0 0;
	}
	#form .trigger .long{
		width: 100%;
	}
	#form .trigger li:nth-child(-n+3){
		margin-top: 0.5em;
	}
	#form .trigger li:nth-child(-n+2){
		margin-top: 0;
	}
	#form .model .trigger .model-01 .selectBtn{
		width: 5em;
	}
	#form .model .trigger .model-02 .selectBtn{
		width: 6em;
	}
	#form .model .trigger .model-01,
	#form .model .trigger .model-02{
		width: 100%;
		margin-left: 0;
		padding: 0;
	}
	#form .model .trigger .model-01 .triggerTxt .other{
		width: calc(100% - 5em);
		margin-left: 0;
	}
	#form .model .trigger .model-02 .triggerTxt .other{
		width: calc(100% - 6em);
		margin-left: 0;
	}
	#form .notes{
		position: relative;
		margin-left: 1em;
	}
	#form textarea{
		height: 40vw;
	}
	#form .policy .ttl{
		margin-bottom: 1em;
	}
	#form .policy .scroll{
		height: 53vw;
		padding: 5vw;
	}
	.checkbox{
		margin: 10vw 0;
	}
	#form .submit,
	#form .submit_button{
		width: 100%;
	}
	#form.confirm .txt{
		font-size: 2.0rem;
		margin: 0;
		padding: 0.5em 0 1em 0;
	}
	#form.confirm table{
		margin-bottom: 10vw;
	}
	#form.confirm table th{
		width: 100%;
		font-size: 1.4rem;
		padding-bottom: 0;
	}
	#form.confirm table td{
		padding-top: 0.5em;
	}
	#form .back{
		width: 100%;
	}
	#form.confirm .wrap::after{
		height: calc(1.875em + 4.3em);
	}
	#form.thanks .wrap{
		padding: 10vw 4vw 0;
	}
	#form.thanks .txt{
		font-size: 2.0rem;
		padding-top: 0.5em;
	}
	#form.thanks p{
		text-align: left;
	}
	#form .top{
		width: 90%;
		margin-top: 1.5em;
	}
	#form .date{
		display: block;
	}
	#form .date .picker{
		width: 100%;
	}
	#form .date .selectWrap{
		width: 100%;
		margin: 0.5em 0 0 0;
	}
	#form .center{
		padding: 1em 0 0.2em;
	}
}

.ui-datepicker{
	width: 14em;
	background: #fff;
	border: 1px solid #CFCFCF;
	padding: 0.75em;
}
.ui-datepicker-title{
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	padding: 0 4px;
}
.ui-datepicker-year,
.ui-datepicker-month{
	font-weight: bold;
	outline: none;
	text-indent: 0.01px;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	font-family: inherit;
	letter-spacing: 0.1em;
	border: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-bottom: 1px solid #CFCFCF;
}
.ui-datepicker-year{
	font-size: 1.6rem;
	background: url(../img/common/icon_datepicker_select.png) right center no-repeat;
	background-size: 0.5em auto;
	padding: 0 1em 0.3em 0;
	margin-right: 1em;
}
.ui-datepicker-month{
	font-size: 2.4rem;
	font-weight: bold;
	background: url(../img/common/icon_datepicker_select.png) right center no-repeat;
	background-size: 0.375em auto;
	padding: 0 0.7em 0.2em 0.8em;
}
.ui-datepicker-month option{
	text-align: center;
}
.ui-datepicker-calendar{
	width: 100%;
	table-layout: fixed;
	border-spacing: 4px 2px;
}
.ui-datepicker-calendar thead th{
	text-align: center;
	font-size: 1.0rem;
	font-weight: bold;
	padding: 4px 0;
}
.ui-datepicker-calendar tbody td{
	border: 1px solid #CFCFCF;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
}
.ui-datepicker-calendar tbody td a{
	display: block;
	padding: 0.2em 0;
}
.ui-datepicker-prev,
.ui-datepicker-next{
	position: absolute;
	top: 50%;
	display: block;
	width: 1.25em;
	height: 1.25em;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	transform: translateY(-50%);
	cursor: pointer;
}
.ui-datepicker-prev{
	background: url(../img/common/icon_datepicker_prev.png) 0 0 no-repeat;
	background-size: 100% auto;
	left: -0.625em;
}
.ui-datepicker-next{
	background: url(../img/common/icon_datepicker_next.png) 0 0 no-repeat;
	background-size: 100% auto;
	right: -0.625em;
}
.ui-datepicker-other-month{
	border: 1px solid #CFCFCF;
	color: #CFCFCF;
}
.ui-datepicker-week-end:first-child a{
	color: #D53A3A;
}
.ui-datepicker-week-end:last-child a{
	color: #707070;
}

/* info */

.info .tabWrap{
	margin-top: 2.5em;
}
#infoAll{
	margin-top: 5em;
}
@media screen and (min-width : 768px){
	#infoAll .tabWrap{
		margin-top: 0;
	}
	#infoAll .tab .active{
		font-size: 2.8rem;
		padding-bottom: 0.7em;
	}
	#infoAll .tab li{
		width: 20%;
		max-width: 240px;
		font-size: 2.0rem;
		padding-bottom: 1em;
	}
	#infoAll .tab{
		align-items: flex-end;
	}
}
.info .tab{
	display: flex;
	justify-content: flex-start;
	margin: 0 56px;
}
.info .tab li{
	position: relative;
	width: 10em;
	text-align: center;
	cursor: pointer;
	transition: 0.3s;
	line-height: 1.0;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	padding-bottom: 1.25em;
}
.info .tab .active::after{
	content: '';
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 3px;
	background: #000;
}
.info .blockWrap{
	border-top: 1px solid #9F9F9F;
	padding: 3em 0 0;
	margin: 0 56px;
}
.info .blockWrap .block {
	display: none;
}
.info .blockWrap .show {
	display: block;
}
.info .infoWrap{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.info .infoWrap .inner{
	position: relative;
	width: 26%;
	box-sizing: border-box;
	margin-top: 2.5em;
	padding: 0 4% 1.875em 0;
}
.info .infoWrap .inner:nth-child(-n+4){
	margin-top: 0;
}
.info .infoWrap .inner:nth-child(4n){
	width: 22%;
	padding-right: 0;
}
.info .infoWrap .inner:nth-child(4n)::before{
	content: none;
}
@media screen and (min-width : 1681px){
	#infoAll.info .infoWrap .inner{
		width: 20.5%;
		margin-top: 2.5em;
		padding-right: 2.5%;
	}
	#infoAll.info .infoWrap .inner:nth-child(-n+5){
		margin-top: 0;
	}
	#infoAll.info .infoWrap .inner:nth-child(4n){
		padding-right: 2.5%;
	}
	#infoAll.info .infoWrap .inner:nth-child(5n){
		width: 18%;
		padding-right: 0;
	}
	#infoAll.info .infoWrap .inner::before{
		right: 6%;
	}
	#infoAll.info .infoWrap .inner:nth-child(4n)::before{
		content: '';
	}
	#infoAll.info .infoWrap .inner:nth-child(5n)::before{
		content: none;
	}
}
.info .infoWrap .inner a{
	display: block;
	transition: 0.3s;
}
.info .infoWrap .inner a:hover{
	opacity: 0.7;
}
.info .infoWrap .inner::before{
	content: '';
	position: absolute;
	top: 0;
	right: 7.5%;
	width: 1px;
	height: 100%;
	background: #9F9F9F;
}
.info .infoWrap .inner .img{
	position: relative;
	margin-bottom: 1em;
}
.info .infoWrap .inner:last-child::before{
	content: none;
}
.info .infoWrap .inner .img span{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	min-width: 7.8em;
	font-size: 1.3rem;
	text-align: center;
	background: #000;
	color: #fff;
	font-weight: bold;
	padding: 0.4em 0 0.3em;
}
.info .infoWrap .inner .img img{
	width: 100%;
	height: auto;
}
.info .infoWrap .inner .date{
	font-size: 1.4rem;
	color: #747475;
	line-height: 1.75;
	margin: 0 0 0.5em;
}
.info .infoWrap .inner .txt{
	line-height: 1.75;
}
.info .cmn-btn{
	width: 26.25em;
	margin: 0 0 0 auto;
}
#column.info .blockWrap .block{
	display: block;
}
@media screen and (max-width : 1000px){
	.info .blockWrap,
	.info .tab{
		margin: 0 3.5em;
	}
	.info .infoWrap .inner{
		padding-right: 3.75em;
	}
	.info .infoWrap .inner::before{
		right: 1.875em;
	}
}
@media screen and (max-width : 767px){
	.info .blockWrap,
	.info .tab{
		margin: 0;
	}
	.info .tab li{
		width: 21%;
	}
	.info .tab li:nth-child(3){
		width: 37%;
	}
	.info .infoWrap{
		display: block;
	}
	.info .infoWrap .inner{
		width: auto;
		border-bottom: 1px solid #9F9F9F;
		padding: 0 10vw 8vw;
	}
	.info .infoWrap .inner::before{
		content: none;
	}
	.info .infoWrap .inner + .inner{
		margin-top: 10vw;
	}
	.info .infoWrap .inner:nth-child(4n){
		width: auto;
		padding: 0 10vw 8vw;
	}
	.info .blockWrap{
		padding-top: 2em;
	}
	.info .blockWrap .block{
		margin: 0 4vw;
	}
	.info .cmn-btn{
		width: 84vw;
		margin: 8vw auto 0;
	}
}

/* post */

#post{
	background: #F2F2F2;
	padding: 5em 3.5em 6.875em;
}
#post .block{
	position: relative;
	width: auto;
	max-width: 1080px;
	background: #fff;
	padding: 5em 7.5em 0;
	margin: 0 auto;
	box-sizing: border-box;
}
#post .block::after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1.875em;
	width: 100%;
	background: #F2F2F2;
}
#post .block > .ttl{
	line-height: 1.4;
	margin-bottom: 0.5em;
}
#post .block > .date{
	color: #747475;
}
#post .catWrap{
	display: flex;
	align-items: center;
	margin-bottom: 1.5em;
}
#post .catWrap p{
	line-height: 1.6;
}
#post .catWrap .cat{
	width: 6em;
	background: #000;
	text-align: center;
	color: #fff;
}
#post .catWrap .date{
	color: #747475;
	margin-left: 2em;
}
#post .img{
	margin-top: 2em;
}
#post .img img{
	width: 100%;
	height: auto;
}
#post .catch{
	margin: 3.5em 0 2.5em;
}
#post .catch p{
	font-weight: normal;
}
#post .txt{
	font-weight: bold;
	margin: 4.5em 0 3.5em;
}
#post .txt h2{
	font-size: 2.0rem;
	line-height: 1.6;
	font-weight: bold;
	border-bottom: 1px solid #A5A5A5;
	padding: 0 0 0.5em;
	margin-bottom: 1em;
}
#post .txt * + h2{
	margin-top: 2em;
}
#post .txt h3{
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: bold;
	border-bottom : 1px solid #A5A5A5;
	border-left: 1px solid #A5A5A5;
	padding: 0 0 0.5em 1em;
	margin-bottom: 1em;
}
#post .txt h4{
	position: relative;
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: bold;
	padding: 0 0 0 1.5em;
	margin-bottom: 1em;
}
#post .txt h4::before{
	content: '';
	position: absolute;
	top: 0.7em;
	left: 0;
	width: 0.8em;
	height: 2px;
	background: #A5A5A5;
}
#post .txt h5{
	font-size: 1.7rem;
	line-height: 1.6;
	font-weight: bold;
	border : 1px solid #A5A5A5;
	padding: 1em 1.5em;
	margin-bottom: 1em;
}
#post .txt h6{
	font-size: 1.7rem;
	line-height: 1.6;
	font-weight: bold;
}
#post .txt * + h3,
#post .txt * + h4,
#post .txt * + h5,
#post .txt * + h6{
	margin-top: 1em;
}
#post .txt p{
	font-weight: normal;
}
#post .txt p + p{
	margin-top: 1.5em;
}

#post .txt p a{
	color: #0086B7;
}

#post .txt img{
	margin: 2em 0;
}
#post .txt img{
	max-width: 100%;
	height: auto;
}


#post .txt .wp-block-gallery + *,
#post .txt > p + *,
#post .txt .wp-block-quote + *,
#post .txt > ul + *,
#post .txt > ol + *,
#post .txt .wp-block-embed + *{
	margin-top: 40px;
}

#post .txt .blocks-gallery-item__caption{
	font-size: 1.4rem;
}
#post .txt .blocks-gallery-grid li{
	padding: 0;
}
#post .txt .blocks-gallery-grid li::before{
	content: none;
}
#post .txt .wp-block-quote{
	background: #eeeade;
	padding: 20px 30px;
	margin-left: 0;
	margin-bottom: 0;
	margin-right: 0;
}
#post .txt .wp-block-quote cite{
	display: block;
	font-size: 1.4rem;
	text-align: right;
	margin-top: 1em;
	line-height: 1.6;
}
#post .txt ul li{
	position: relative;
	font-size: 1.6rem;
	padding: 0 0 0 1em;
	word-break: break-all;
}
#post .txt ul li::before{
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}
#post .txt ol{
	counter-reset: item;
	list-style-type: none;
}
#post .txt ol li{
	position: relative;
	padding-left: 1.3em;
	font-size: 1.6rem;
	line-height: 1.6;
	word-break: break-all;
}
#post .txt ol li:before {
	counter-increment: item;
	content: counter(item)'.';
	position: absolute;
	top: 0;
	left: 0;
}
#post .txt strong { font-weight: bold; }
#post .txt em { font-style: italic; }
#post .txt blockquote {
	display: block;
	background: #F2CBCE;
	padding: 1em 1.5em;
	margin-top: 1.5em;
	margin: 0;
}
#post .txt .aligncenter {
	display: block;
	margin: 0 auto;
}
#post .txt .alignright { float: right; margin-left: 1.5em; }
#post .txt .alignleft { float: left; margin-right: 1.5em; }
.post .wp-caption + *{
	margin-top: 40px;
}
#post .txt .alignleft.wp-caption{
	margin-right: 0;
}
#post .txt .alignleft.wp-caption + .wp-caption{
	margin-left: 1em;
}
#post .wp-caption + .wp-caption{
	margin-top: 40px;
}
#post .wp-caption-text{
	text-align: left;
}

#post .index{
	border: 1px solid #D2D2D2;
	padding: 2em;
}
#post .index ol li{
	font-weight: bold;
	line-height: 2.0;
}
#post .index ol li + li{
	margin-top: 0.2em;
}
#post .index ol li ol{
	padding: 0 2em;
	margin: 0.2em 0;
}
#post .index ol li ol li{
	font-weight: normal;
}
#post .sns{
	display: flex;
	justify-content: center;
	border-top: 1px solid #D2D2D2;
	border-bottom: 1px solid #D2D2D2;
	padding: 1em 0;
}
#post .sns div{
	margin: 0 2em;
}
#post .sns div a{
	transition: 0.3s;
}
#post .sns div a:hover{
	opacity: 0.7;
}
#post .linkWrap{
	position: relative;
	display: flex;
	justify-content: space-between;
	border-left: 1px solid #D2D2D2;
	border-right: 1px solid #D2D2D2;
	margin-top: 5em;
}
#post .linkWrap .link{
	width: 50%;
	box-sizing: border-box;
}
#post .linkWrap .link + .link{
	border-left: 1px solid #D2D2D2;
}
#post .linkWrap .link a{
	display: block;
	padding: 0 1em;
	transition: 0.3s;
}
#post .linkWrap .link a:hover{
	opacity: 0.7;
}
#post .linkWrap .link .arrow{
	position: absolute;
	top: 50%;
	width: 3.5em;
	font-size: 1.2rem;
	color: #747475;
	background: url(../img/common/icon_column_prev@2x.png) 0 bottom no-repeat;
	background-size: 100% auto;
	padding: 0 0 0.8em;
	transform: translateY(-50%);
}
#post .linkWrap .link.prev .arrow{
	left: -3.5em;
	background: url(../img/common/icon_column_prev@2x.png) 0 bottom no-repeat;
	background-size: 100% auto;
}
#post .linkWrap .link.next .arrow{
	right: -3.5em;
	text-align: right;
	background: url(../img/common/icon_column_next@2x.png) 0 bottom no-repeat;
	background-size: 100% auto;
}
#post .linkWrap .link .thumbWrap{
	display: flex;
	justify-content: space-between;
}
#post .linkWrap .link .thumb{
	position: relative;
}
#post .linkWrap .link .thumb span{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 7em;
	background: #000;
	color: #fff;
	font-size: 1.3rem;
	font-weight: bold;
	text-align: center;
	padding: 0.2em 0;
}
#post .linkWrap .link .content{
	width: 50%;
	padding: 0 0 0 1em;
}
#post .linkWrap .link .date{
	font-size: 1.4rem;
	color: #747475;
}
#post .linkWrap .link .ttl{
	line-height: 1.75;
}
#post .cmn-btn{
	position: relative;
	width: 19em;
	font-size: 1.8rem;
	letter-spacing: 0.12em;
	z-index: 2;
	margin: 3.5em auto 0;
}
#post .cmn-btn a::before{
	right: auto;
	left: 1.25em;
	width: 2.2em;
	height: 0.61em;
	background: url(../img/common/icon_arrow_wh-r@2x.png) 0 0 no-repeat;
	background-size: 100% auto;
}
#post .cmn-btn a{
	height: 3.3em;
}

@media screen and (max-width : 767px){
	#post{
		width: auto;
		padding: 0;
	}
	#post .block{
		padding: 6.4vw 0 0;
	}
	#post .block > .ttl{
		line-height: 1.4;
		margin: 0 6.4vw;
	}
	#post .block > .date{
		margin: 0.5em 6.4vw 0;
	}
	#post .catch{
		margin: 0;
		padding: 6.4vw;
	}
	#post .index{
		margin: 0 6.4vw;
		padding: 5vw 6.4vw;
	}
	#post .txt{
		margin: 10vw 6.4vw;
	}
	#post .txt .wp-block-gallery + *,
	#post .txt > p + *,
	#post .txt .wp-block-quote + *,
	#post .txt > ul + *,
	#post .txt > ol + *,
	#post .txt .wp-block-embed + *,
	#post .wp-caption + *,
	#post .wp-caption + .wp-caption{
		margin-top: 6vw;
	}
	#post .txt ul li,
	#post .txt ol li{
		font-size: 1.4rem;
		line-height: 2.0;
	}
	#post .txt .alignright { float: none; margin: 0; }
	#post .txt .alignleft { float: none; margin: 0; }
	#post .txt * + h3,
	#post .txt * + h4,
	#post .txt * + h5,
	#post .txt * + h6,
	#post .txt * + p{
		margin-top: 1em;
	}
	#post .txt * + .wp-caption{
		margin-top: 1.8rem;
	}
	#post .txt .wp-caption{
		width: auto!important;
		margin-right: auto;
		margin-left: auto;
	}
	#post .txt .wp-caption .wp-caption-text{
		margin-top: 0;
	}
	#post .txt * + img{
		margin-top: 5vw;
	}
	#post .txt .alignleft.wp-caption + .wp-caption{
		margin-left: 0;
	}
	#post .linkWrap{
		border-left: 0;
		border-right: 0;
		margin: 5vw 6.4vw 0;
	}
	#post .linkWrap .link{
		width: 45%;
	}
	#post .linkWrap .link + .link{
		border-left: 0;
	}
	#post .linkWrap .link .thumbWrap{
		display: block;
	}
	#post .linkWrap .link a{
		padding: 0;
	}
	#post .linkWrap .link .content{
		width: auto;
		padding: 0.5em 0 0;
	}
	#post .linkWrap .link .arrow{
		position: relative;
		top: auto;
		transform: none;
	}
	#post .linkWrap .link.prev .arrow{
		left: auto;
		margin: 0 0 1em 0;
	}
	#post .linkWrap .link.next .arrow{
		right: auto;
		margin: 0 0 1em auto;
	}
	#post .sns{
		margin: 0 6.4vw;
	}
	#post .cmn-btn{
		width: auto;
		margin: 10vw 6.4vw 0;
	}
	#post .block::after{
		content: none;
	}
}

/* modal */
.mfp-content button.cmn-btn{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	right: 0;
	max-width: 18.75em;
	height: 3.5em;
	font-size: 1.6rem;
	background: #fff;
	color: #000;
	font-weight: bold;
	margin: 0 0 0 auto;
	padding: 0 4em 0 0;
	opacity: 1;
	transition: 0.3s;
	cursor: pointer!important;
}
.mfp-content button.cmn-btn::before{
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 0.75em;
	height: 0.6875em;
	background: url(../img/case/icon_close.png) 0 0 no-repeat;
	background-size: 100% auto;
	transform: translateY(-50%);
}
.mfp-content button.cmn-btn:hover{
	opacity: 0.7;
}
.mfp-content{
	max-height: 90vh;
}
.mfp-figure{
	display: flex;
	flex-flow: column-reverse;
}
.mfp-figure img.mfp-img{
	max-height: calc(90vh - 4.5em)!important;
	padding: 0;
}
.mfp-figure:after{
	content: none;
}

@media screen and (max-width : 767px){
	.mfp-figure img.mfp-img{
		max-height: auto;
		height: auto;
	}
}

.clear{
	clear:both;
}
/* ------------------------------
clearfix
------------------------------ */

.cf:after{
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;	
	clear: both; 
	visibility:hidden;
}

.cf {display: inline-block;} 

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */ 