@charset "UTF-8";
/* CSS Document */

/*----- PAGE-HEADER -----*/

.page-header{
	background-image: url("../../../images/_assets-page/gentleman/img-cover-sp.webp");
}

@media screen and (min-width: 768px) {
	
	.page-header{
		background-image: url("../../../images/_assets-page/gentleman/img-cover-pc.webp");
	}
	
}

/*----- MESSAGE-CONTENT -----*/

.message{
	width:100%;
	
	background-color:#f8f8f8;
	background-image: url("../../../images/_assets-page/gentleman/bg-message.webp");
	background-repeat: repeat;
	background-size:216px;
	background-position: center;
	
	box-sizing: border-box;
	padding:10px;
}

.message div.post-content{
	width:100%;
	margin:0 auto;
	max-width: 1080px;
	
	box-sizing: border-box;
	padding:40px 30px;
	
	background-color:#fff;
	color:#222;
}

.message div.inner{
	width:100%;
	position: relative;
}

.message div.inner span.design-top-left{
	display:block;
	
	width:80px;
	height:80px;
	
	position: absolute;
	top:-30px;
	left:-20px;
	
	background-image: url("../../../images/_assets-page/gentleman/design-frame-message.webp");
	background-repeat: no-repeat;
	background-size: 80px;
	background-position: top left;
}

.message div.inner span.design-top-right{
	display:block;
	
	width:80px;
	height:80px;
	
	position: absolute;
	top:-30px;
	right:-20px;
	
	background-image: url("../../../images/_assets-page/gentleman/design-frame-message.webp");
	background-repeat: no-repeat;
	background-size: 80px;
	background-position: top left;
	
	transform: rotate(90deg);
}

.message div.inner span.design-bottom-right{
	display:block;
	
	width:80px;
	height:80px;
	
	position: absolute;
	bottom:-30px;
	right:-20px;
	
	background-image: url("../../../images/_assets-page/gentleman/design-frame-message.webp");
	background-repeat: no-repeat;
	background-size: 80px;
	background-position: top left;
	
	transform: rotate(180deg);
}

.message div.inner span.design-bottom-left{
	display:block;
	
	width:80px;
	height:80px;
	
	position: absolute;
	bottom:-30px;
	left:-20px;
	
	background-image: url("../../../images/_assets-page/gentleman/design-frame-message.webp");
	background-repeat: no-repeat;
	background-size: 80px;
	background-position: top left;
	
	transform: rotate(270deg);
}

.message h4{
	font-size:1.25rem;
	line-height:1.5em;
	
	text-align: center;
	
	margin-bottom:20px;
}

.message p{
	font-size:0.8rem;
	line-height:1.75em;
	
	margin-bottom:10px;
}

.message h5{
	font-size:1.15rem;
	line-height:1.5em;
	
	text-align: center;
	
	color:#fd5e53;
	
	text-decoration: underline;
	text-underline-offset: 0.25rem;
	
	margin-top:10px;
}

@media screen and (min-width: 768px) {
	
	.message{
		padding:20px;
	}
	
	.message div.post-content{
		padding:40px;
	}
	
	.message div.inner span.design-top-left{
		top:-30px;
		left:-30px;
	}
	
	.message div.inner span.design-top-right{
		top:-30px;
		right:-30px;
	}
	
	.message div.inner span.design-bottom-left{
		bottom:-30px;
		left:-30px;
	}
	
	.message div.inner span.design-bottom-right{
		bottom:-30px;
		right:-30px;
	}
	
	.message h4{
		font-size:1.5rem;
		line-height:1.75em;
	}
	
	.message h4 br{
		display:none;
	}
	
	.message p{
		font-size:1.0rem;
		line-height:1.75em;
	}
	
	.message h5{
		font-size:1.25rem;
		line-height:1.75em;
	}
	
	.message h5 br:nth-child(1){
		display:none;
	}
	
}

/*----- MEMBERSHIP-CONTENT -----*/

.membership{
	width:100%;
	
	background-color:#f0f0f0;
	color:#222;
}

.membership div.post-content{
	width:100%;
	margin:0 auto;
	max-width: 960px;
	
	box-sizing: border-box;
	padding:5px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
}

.membership-child{
	width:100%;
	
	box-sizing: border-box;
	padding:5px;
	
	margin-bottom:20px;
}

.membership-child div.inner{
	width:100%;
	height:100%;
	
	box-sizing: border-box;
	padding:40px 10px;
	border:solid 1px #000;
	
	background-color:#000;
	color:#fff;
	
	border-radius:5px;
	position: relative;
}

.cat-a div.inner{
	background-color:#2f4f4f;
	border:solid 1px #2f4f4f;
}

.cat-b div.inner{
	background-color:#b8860b;
	border:solid 1px #b8860b;
}

.cat-c div.inner{
	background-color:#4682b4;
	border:solid 1px #4682b4;
}

.cat-d div.inner{
	background-color:#4b0082;
	border:solid 1px #4b0082;
}

.membership-child p.budge{
	display:block;
	
	width:75px;
	height:50px;
	
	position: absolute;
	top:0;
	left:0;
	right:0;
	
	margin:0 auto;
	
	background-color:#fff;
	color:#000;
	
	text-align: center;
	
	font-size:1.0rem;
	line-height:30px;
	
	clip-path: polygon(0 0,100% 0,50% 75%);
}

.cat-a p.budge{
	color:#2f4f4f;
}

.cat-b p.budge{
	color:#b8860b;
}

.cat-c p.budge{
	color:#4682b4;
}

.cat-d p.budge{
	color:#4b0082;
}

.membership-child h4{
	font-size:1.25rem;
	line-height:30px;
	
	text-align: center;
	
	box-sizing: border-box;
	padding-bottom:50px;
	
	background-image: url("../../../images/_assets-page/gentleman/design-membership-child-h4.webp");
	background-repeat: no-repeat;
	background-size:80px;
	background-position: center bottom 20px;
}

.membership-child h4 span.note{
	display:block;
	
	font-size:0.8rem;
	line-height:20px;
}

.membership-child div.row{
	width:100%;
}

.membership-child div.row h6{
	width:100%;
	
	font-size:1.0rem;
	line-height:20px;
	
	background-color:#fff;
	color:#000;
	
	text-align: center;
	
	box-sizing: border-box;
	padding:5px 0;
	
	position: relative;
}

.cat-a div.row h6{
	color:#2f4f4f;
}

.cat-b div.row h6{
	color:#b8860b;
}

.cat-c div.row h6{
	color:#4682b4;
}

.cat-d div.row h6{
	color:#4b0082;
}

.membership-child div.row h6::after{
	display:block;
	content:"";
	
	width:20px;
	height:20px;
	
	background-color:#fff;
	
	position: absolute;
	bottom:-20px;
	left:0;
	right:0;
	
	margin:0 auto;
	
	clip-path: polygon(0 0,100% 0,50% 75%);
}

.membership-child div.row h6 span.note{
	display:block;
	
	font-size:0.6rem;
	line-height:10px;
	
	margin-top:2.5px;
}

.membership-child div.row div.ans{
	box-sizing: border-box;
	padding:10px;
	padding-top:20px;
	
	font-size:1.15rem;
	line-height:1.5em;
	
	text-align: center;
}

.membership-child div.row div.ans p.note{
	display:block;
	
	font-size:0.6rem;
	line-height:10px;
	
	margin-top:2.5px;
}

@media screen and (min-width: 768px) {
	
	.membership div.post-content{
		padding:15px;
	}
	
	.membership-child{
		width:25%;
		margin-bottom:0;
	}
	
}

/*----- MEMBERSUPPORT-CONTENT -----*/

.membersupport{
	width:100%;
	
	background-color:#f0f0f0;
	color:#222;
}

.membersupport div.post-content{
	width:100%;
	margin:0 auto;
	max-width: 960px;
	
	box-sizing: border-box;
	padding:10px;
}

.membersupport div.possible{
	box-sizing: border-box;
	border:solid 10px #fff;
	
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.membersupport div.row{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	font-size:0.8rem;
	line-height:1.5em;
	
	border-bottom:solid 2.5px #fff;
}

.membersupport div.row:last-child{
	border-bottom:none;
}

.membersupport div.row p{
	width:50px;
	
	box-sizing: border-box;
	padding:10px 0;
	
	border-left:solid 2.5px #fff;
	
	background-color:#f8f8f8;
	
	display:flex;
	align-items: center;
	justify-content: center;
}

.membersupport div.row p span.pc-only{
	display:none;
}

.membersupport div.row p span.sp-only{
	display:block;
}

.membersupport div.row p:nth-child(1){
	width:calc(100% - 200px);
	
	box-sizing: border-box;
	padding:10px;
	
	background-color:#f0f0f0;
	
	border-left:none;
	
	justify-content: flex-start;
}

.membersupport div.row:nth-child(1) p:nth-child(1){
	background-color:#5f161d;
	color:#fff;
}

.membersupport div.row:nth-child(1) p:nth-child(2){
	background-color:#2f4f4f;
	color:#fff;
}

.membersupport div.row:nth-child(1) p:nth-child(3){
	background-color:#b8860b;
	color:#fff;
}

.membersupport div.row:nth-child(1) p:nth-child(4){
	background-color:#4682b4;
	color:#fff;
}

.membersupport div.row:nth-child(1) p:nth-child(5){
	background-color:#4b0082;
	color:#fff;
}

.membersupport div.row p.active{
	background-color:#ffefed;
}

.membersupport div.row p.active::after{
	content:"◯";
	
	font-size:0.6rem;
	line-height:1.0em;
}

.membersupport div.row:last-child p:nth-child(2){
	background-color:#ffefed;
}

.membersupport div.row:last-child p:nth-child(3){
	background-color:#ffefed;
}

.membersupport div.row:last-child p:nth-child(4){
	background-color:#ffdfdd;
	color:#f44;
}

.membersupport div.row:last-child p:nth-child(5){
	background-color:#ffdfdd;
	color:#f44;
}

.membersupport div.row p span.note{
	color:#f44;
	
	display:inline-block;
	
	box-sizing: border-box;
	padding-left:5px;
}

@media screen and (min-width: 768px) {
	
	.membersupport div.post-content{
		padding:20px;
	}
	
	.membersupport div.row{
		font-size:1.0rem;
		line-height:1.75em;
	}
	
	.membersupport div.row p{
		width:120px;
	}
	
	.membersupport div.row p span.pc-only{
		display:block;
	}
	
	.membersupport div.row p span.sp-only{
		display:none;
	}
	
	.membersupport div.row p:nth-child(1){
		width:calc(100% - 480px);
	}
	
	.membersupport div.row p.active::after{
		font-size:0.8rem;
		line-height:1.0em;
	}
	
}

.membersupport div.attention{	
	box-sizing: border-box;
	padding:10px;
	
	background-color:#fff;
	
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

.membersupport div.attention ul{
	font-size:0.8rem;
	line-height:1.75em;
}

.membersupport div.attention ul li{
	box-sizing: border-box;
	padding-left:20px;
	
	position: relative;
	
	color:#f44;
}

.membersupport div.attention ul li::before{
	content:"※0";
	
	display:block;
	
	position: absolute;
	top:0;
	left:0;
}

.membersupport div.attention ul li:nth-child(1)::before{
	content:"※1";
}

.membersupport div.attention ul li:nth-child(2)::before{
	content:"※2";
}

/*----- LICENSE-CONTENT -----*/

.license{
	width:100%;
	
	background-color:#f0f0f0;
	color:#222;
}

.license div.post-content{
	width:100%;
	margin:0 auto;
	max-width: 1080px;
	
	box-sizing: border-box;
	padding:10px;
}

.license div.row{
	box-sizing: border-box;
	padding:10px;
	
	background-color:#fff;
	color:#222;
	
	border-radius:5px;
	margin-bottom:20px;
}

.license div.row:last-child{
	margin-bottom:0;
}

.license div.row h5{
	font-size:1.15rem;
	line-height:40px;
	
	box-sizing: border-box;
	padding-left:30px;
	
	position: relative;
	
	margin-bottom:10px;
}

.license div.row h5::before{
	display:block;
	content:"";
	
	width:20px;
	height:1px;
	
	background-color:#000;
	
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto 0;
}

.license div.row ul li{
	box-sizing: border-box;
	padding-left:17.5px;
	
	position: relative;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.license div.row p.extra{
	font-size:0.8rem;
	line-height:1.75em;
	
	color:#222;
	
	position: relative;
	
	box-sizing: border-box;
	padding-left:25px;
	
	margin-top:10px;
}

.license div.row p.extra::before{
	display:block;
	content:"※";
	
	position: absolute;
	top:0;
	bottom:0;
	left:12.5px;
	margin:auto 0;
}

.license div.row ul li::before{
	display:block;
	content:"・";
	
	position: absolute;
	top:0;
	left:0;
}

.license div.row p.caption{
	color:#f44;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.license div.row h6{
	margin:10px 0;
	font-weight:bolder;
}

@media screen and (min-width: 768px) {
	
	.license div.post-content{
		padding:20px;
	}
	
	.license div.row{
		padding:20px;
	}
	
	.license div.row h5{
		font-size:1.5rem;
		line-height:50px;
	}
	
	.license div.row ul li{
		font-size:1.0rem;
		line-height:1.75em;
	}
	
	.license div.row p.caption{
		font-size:1.0rem;
		line-height:1.75em;
	}
	
}

/*----- FLOW-CONTENT -----*/

.flow{
	width:100%;
	
	background-color:#f0f0f0;
	color:#222;
}

.flow div.post-content{
	width:100%;
	margin:0 auto;
	max-width: 1080px;
	
	box-sizing: border-box;
	padding:10px;
}

.flow div.steps{
	width:100%;
	
	box-sizing: border-box;
	padding:10px;
	
	background-color:#fff;
	color:#222;
	
	border-radius:5px;
}

.flow ul{
	margin-bottom:10px;
}

.flow ul li{
	display:block;
	width:100%;
	
	box-sizing: border-box;
	padding:10px;
	padding-left:50px;
	border:solid 1px #5f161d;
	
	margin-bottom:20px;
	
	position: relative;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.flow ul li::before{
	display:block;
	content:"0";
	
	width:40px;
	height:100%;
	
	background-color:#5f161d;
	color:#fff;
	
	text-align: center;
	
	position: absolute;
	top:0;
	left:0;
	
	font-size:1.0rem;
	line-height:40px;
}

.flow ul li::after{
	display:block;
	content:"";
	
	width:30px;
	height:30px;
	
	background-color: #5f161d;
	
	position: absolute;
	bottom:-30px;
	left:5px;
	
	clip-path: polygon(20% 0,80% 0,50% 50%);
}

.flow ul li:last-child::after{
	display:none;
}

.flow ul li:nth-child(1)::before{
	content:"1";
}

.flow ul li:nth-child(2)::before{
	content:"2";
}

.flow ul li:nth-child(3)::before{
	content:"3";
}

.flow ul li:nth-child(4)::before{
	content:"4";
}

.flow ul li:nth-child(5)::before{
	content:"5";
}

.flow ul li:nth-child(6)::before{
	content:"6";
}

.flow ul li:nth-child(7)::before{
	content:"7";
}

.flow ul li:nth-child(8)::before{
	content:"8";
}

.flow ul li:nth-child(9)::before{
	content:"9";
}

.flow ul li:nth-child(10)::before{
	content:"10";
}

.flow ul li:last-child{
	margin-bottom:0;
}

.flow p{
	font-size:0.8rem;
	line-height:1.75em;
	
	box-sizing: border-box;
	padding:0 20px;
	padding-left:30px;
	
	position: relative;
}

.flow p::before{
	display:block;
	content:"※";
	
	position: absolute;
	top:0;
	left:12.5px;
}

@media screen and (min-width: 768px) {
	
	.flow div.post-content{
		padding:20px;
	}
	
	.flow ul{
		padding:20px;
	}
	
	.flow ul li{
		font-size:1.0rem;
		line-height:1.75em;
	}
	
}


/*----- SIGNUP-CONTENT -----*/

.signup{
	width:100%;
	
	background-color:#ffffff;
	color:#222;
}

.signup div.post-content{
	width:100%;
	margin:0 auto;
	max-width: 800px;
	
	box-sizing: border-box;
	padding:10px;
	
	background-color:#fff;
	color:#222;
	
	border-radius:5px;
}

.signup p.banner{
	width:100%;
	margin:0 auto;
	max-width: 720px;
}

@media screen and (min-width: 768px) {
	
	.signup div.post-content{
		padding:20px;
	}
	
}
