@charset "utf-8";
/*
 * style.css
 *
 */

.greetingArea {
	padding: 80px 0 100px;
	background: url(../img/top/bg_greeting.jpg) no-repeat center top #F06094;
	background-size: 100%;
	color: #fff;
	font-weight: bold;
}

.greetingArea .title {
	margin: 0 auto 45px;
	letter-spacing: 0.45em;
	text-align: center;
	font-size: 2.6rem;
}

.greetingArea .title .in {
	display: inline-block;
	position: relative;
}

.greetingArea .title .cheers {}

.greetingArea .displayImgTxt .introd {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.greetingArea .link a {
	margin: 30px auto 0;
	width: 430px;
}

.memberRegister {
	position: relative;
	padding-right: 60%;
}

.memberRegister .level {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 90px 20% 80px;
	letter-spacing: 0.15em;
}

.memberRegister .regist {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 0;
	top: 0;
	width: 60%;
	height: 100%;
	text-align: center;
	color: #fff;
}

.memberRegister .hd01 {
	margin: 0 auto 25px;
	padding: 17px 25px;
	background: url(../img/common/img_line.png) no-repeat top center, url(../img/common/img_line.png) no-repeat bottom center;
	background-size: 100%;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	max-width: 300px;
	width: 100%;
	box-sizing: border-box;
}

.memberRegister .hd01 span {
	font-size: 1.5rem;
}

.memberRegister .level li {
	padding: 12px 0 12px 68px;
	background-position: 8px center;
	background-repeat: no-repeat;
	background-size: 38px auto;
	font-size: 1.8rem;
	font-weight: bold;
}

.memberRegister .level li.gold.large {
	font-size: 2.8rem;
}

.level .junior {
	background-image: url(../img/common/ico_medal_junior.png);
}

.level .gold {
	background-image: url(../img/common/ico_medal_gold.png);
}

.level .gold.large {
	background-size: 54px auto;
	background-position: left center;
}

.level .premium {
	background-image: url(../img/common/ico_medal_premium.png);
}

.level .small {
	font-size: 1.4rem;
}

.memberRegister .level li .eng {
	display: block;
	letter-spacing: 0.25em;
	font-size: 1rem;
	font-weight: normal;
}

.memberRegister .level li.gold.large .eng {
	font-size: 1.3rem;
}

.level .junior .eng {
	color: #48B0C1;
}

.level .gold .eng {
	color: #D3BC59;
}

.level .premium .eng {
	color: #B2B2B2;
}

.memberRegister .hd02 {
	margin: 0 auto 30px;
	letter-spacing: 0.2em;
	font-size: 4.4rem;
	font-weight: bold;
}

.memberRegister .regist p {
	margin: 0;
	padding: 0;
}

.memberRegister .regist .toRegist a {
	margin: 0 auto 15px;
	width: 350px;
	font-size: 1.5rem;
}

.memberRegister .regist .detail {
	letter-spacing: 0.08em;
	line-height: 1.75;
	font-size: 1.4rem;
}

.memberRegister .regist .detail a {
	text-decoration: underline;
	color: #fff;
}

.memberRegister .regist .detail a:hover {
	text-decoration: none;
}

.memberNote {
	width: 100%;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	margin-top: 20px;
	padding: 0 10px;
	box-sizing: border-box;
}

.listCMN {
	padding: 90px 0 50px;
}

.listCMN ul {
	margin-left: -50px;
}

.listCMN li {
	padding-left: 50px;
}

.listCMN .hdM {
	margin-bottom: 15px;
	text-align: left;
}

.listCMN .hdM .eng {
	letter-spacing: 0.3em;
	font-size: 3.6rem;
}

.listCMN li .card {
	padding: 20px 35px 35px;
	background: #F2F2F2;
	border-radius: 12px;
	box-shadow: 3px 3px 0 #ccc;
}

.listCMN .infoList {
	height: 450px;
}

.infoList dl {
	border-bottom: 1px dashed #D8D8D8;
	letter-spacing: 0.08em;
}

.infoList.news dl {
	padding: 21px 0;
}

.infoList.victorina dl {
	padding: 15px 0;
}

.infoList dl:after {
	content: "";
	display: block;
	clear: both;
}

.infoList.news dt {
	margin-bottom: 8px;
	font-family: 'Libre Franklin', sans-serif;
	font-size: 1.2rem;
}

.infoList dd a {
	color: #525263;
}

.listCMN .infoList dd a:hover {
	color: #F06094;
}

.listCMN .infoList.victorina dt {
	float: left;
	margin-right: 15px;
	width: 120px;
}

.listCMN .infoList p {
	padding: 0;
	margin: 0;
}

.listCMN .infoList.victorina dd {
	overflow: hidden;
	padding: 10px 0;
}

.listCMN .infoList dd .tit {
	margin-bottom: 10px;
	font-size: 1.2rem;
}

.listCMN .infoList dd .date {
	margin-top: 14px;
	color: #B3B3B3;
	font-size: 1rem;
}

.infoList a.title_slice {
	display: inline-block;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.pagePrevNext {
	margin-top: 25px;
	text-align: center;
	line-height: 40px;
}

.pagePrevNext a {
	font-weight: bold;
	color: #F06094;
	font-size: 1.2rem;
}

.pagePrevNext .prev,
.pagePrevNext .next {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 36px;
	background: #fff;
	border: 2px solid #F06094;
	text-align: center;
}

.pagePrevNext .prev {
	float: left;
}

.pagePrevNext .next {
	float: right;
}

.pagePrevNext .prev:hover,
.pagePrevNext .next:hover {
	background: #F06094;
	color: #fff;
}

.pagePrevNext .toList {
	padding-left: 20px;
	background: url(../img/common/ico_prefix.png) no-repeat left center;
	border-bottom: 1px solid transparent;
	letter-spacing: 0.25em;
}

.pagePrevNext .toList:hover {
	border-bottom-color: #F06094;
}

.onlineArea {
	padding: 90px 50px;
	background: url(../img/top/bg_online.jpg) no-repeat center;
	background-size: cover;
}

.onlineArea li {
	height: 16.666vw;
}

.onlineLink li {
	position: relative;
}

.membership-big {
	height: calc(100% + 1px) !important;
}

.onlineLink li:nth-of-type(even) {
	padding-left: 1px;
}

.onlineLink li .item {
	overflow: hidden;
	height: 100%;
	width: calc(100% - 0.5px);
}

.onlineLink li .img {
	transition-duration: 0.8s;
	height: 100%;
}

.onlineLink li .item:hover .img {
	transform: scale(1.1);
}

.onlineLink li .title {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
	line-height: 2;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}

.onlineLink li .title .eng {
	display: block;
	letter-spacing: 0.4em;
	font-size: 1.8rem;
}

.sponsorArea {
	padding: 50px 0 50px;
}

.sponsorArea .hdM p {
	margin: 0;
	padding: 0;
}

.sponsorArea ul {
	text-align: center;
	font-size: 0;
}

.sponsorArea li {
	display: inline-block;
	vertical-align: middle;
	margin: 15px 0;
	padding: 0 10px;
	width: 20%;
}

.sponsorArea .goList {
	margin: 0;
	padding-bottom: 50px;
}

.sponsorArea .goList a {
	margin: 50px auto 0;
}

.recruitCorporate {
	padding: 90px 0 100px;
	background: url(../img/top/bg_recruit.jpg) no-repeat center top #F06094;
	background-size: 100%;
	color: #fff;
	font-weight: bold;
}

.recruitCorporate .link a {
	margin-top: 45px;
	width: 80%;
	max-width: 400px;
}

.recruitCorporate .img {
	position: relative;
}

.recruitCorporate .slogan {
	pointer-events: none;
	position: absolute;
	left: 0;
	bottom: 0;
	transform: translate(-9%, 50%);
	opacity: 0.25;
	white-space: nowrap;
	letter-spacing: 0.1em;
	color: #fff;
	font-family: 'Libre Franklin Black', sans-serif;
	font-size: 12rem;
}

.membershipArea {
	padding: 90px 50px;
	background: url(../img/top/bg_membership.jpg) no-repeat center;
}

.membershipArea li {
	height: 23vw;
}

.siteOpen li {
	position: relative;
}

.siteOpen li .item {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
	height: 50%;
}

.siteOpen li .item:nth-of-type(2) {
	display: block;
	top: calc(50% + 1px);
}

.siteOpen li .item:hover {
	z-index: 0;
}

.nav-fixed {
	position: fixed;
	top: 0;
	bottom: auto;
	width: auto !important;
	z-index: 1;
}

.nav-fixed-foot {
	position: fixed;
	top: auto;
	width: auto !important;
	z-index: 1;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.greetingArea {
		padding: 70px 15px 50px;
		background-size: 100%;
	}

	.greetingArea .displayImgTxt .introd {
		display: block;
	}

	.greetingArea .link a {
		width: 80%;
	}

	.memberRegister {
		padding: 0;
	}

	.memberRegister .level {
		padding: 50px 10%;
		letter-spacing: 0.2em;
	}

	.memberRegister .regist {
		position: relative;
		padding: 45px 20px;
		width: 100%;
	}

	.memberRegister .hd01 {
		padding: 17px 8px;
	}

	.memberRegister .hd02 {
		margin: 0 auto 25px;
		letter-spacing: 0.25em;
		font-size: 3.1rem;
	}

	.memberRegister .level li {
		font-size: 1.6rem;
	}

	.memberRegister .regist .toRegist a {
		width: 90%;
	}

	.memberNote {
		font-size: 1.2rem;
		height: 55px;
	}

	.listCMN {
		padding: 50px 0 10px;
	}

	.listCMN li {
		margin-bottom: 40px;
		width: 100%;
	}

	.listCMN .hdM {
		margin-bottom: 10px;
	}

	.listCMN li .card {
		padding: 15px 25px 30px;
	}

	.listCMN .infoList {
		height: auto;
	}

	.listCMN .infoList.news dl {
		padding: 15px 0;
	}

	.listCMN .infoList.news dt {
		margin-bottom: 4px;
	}

	.listCMN .infoList.victorina dt {
		float: none;
		margin: 0 auto 20px;
		width: auto;
		text-align: center;
	}

	.pagePrevNext {
		margin-top: 15px;
		line-height: 35px;
	}

	.pagePrevNext .prev,
	.pagePrevNext .next {
		width: 35px;
		height: 35px;
		line-height: 35px;
		border-width: 1px;
	}

	.listCMN li .pagePrevNext .toList {
		padding-left: 0;
		background: none;
	}

	.onlineArea {
		padding: 50px 0;
	}

	.onlineArea .hdM {
		padding: 0 15px;
	}

	.onlineArea li {
		height: 73.33vw;
	}

	.onlineLink li {
		width: 100%;
	}

	.onlineLink li:nth-of-type(even) {
		padding: 1px 0 0;
	}

	.sponsorArea li {
		padding: 0 15px;
		width: 33.33%;
	}

	.sponsorArea .goList a {
		margin: 25px auto 0;
	}

	.recruitCorporate {
		padding: 50px 15px 0;
	}

	.recruitCorporate .link a {
		margin: 30px auto 0;
	}

	.recruitCorporate .slogan {
		left: 0;
		bottom: auto;
		top: 0;
		transform: translate(0, -40%);
		font-size: 10rem;
	}

	.membershipArea {
		padding: 50px 0;
	}

	.membershipArea li {
		height: auto;
	}

	.membershipArea li .img {
		height: 50.4vw;
	}

	.siteOpen li .item {
		position: relative;
	}

	.siteOpen li .item:nth-of-type(2) {
		margin-top: 1px;
	}
}

@media screen and (max-width: 374px) {
	.memberRegister .hd01 {
		font-size: 1.8rem;
	}

	.listCMN .hdM .eng {
		font-size: 2.8rem;
	}
}


/**==================================
online_store
==================================**/
.displayProduct ul {
	margin-left: -20px;
}

.displayProduct li {
	padding: 0 0 40px 20px;
}

.displayProduct li .item {
	position: relative;
	padding: 10px;
	background: #F2F2F2;
	font-size: 1.4rem;
	font-weight: bold;
}

.displayProduct li .sign {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
	border-width: 50px 50px 0 0;
	border-style: solid;
}

.displayProduct li .sign:before {
	content: "";
	position: absolute;
	left: 5px;
	top: -48px;
	font-size: 1rem;
}

.displayProduct li .sign.new {
	border-color: #F06094 transparent transparent transparent;
}

.displayProduct li .sign.new:before {
	content: "NEW";
	color: #fff;
}

.displayProduct li .sign.re {
	border-color: #FCE649 transparent transparent transparent;
}

.displayProduct li .sign.re:before {
	content: "RE";
}

.displayProduct li p {
	margin: 0;
}

.displayProduct li .pic {
	display: block;
	position: relative;
	margin-bottom: 10px;
}

.displayProduct li .pic img {
	width: 100%;
	height: 90%;
	object-fit: cover;
}

.displayProduct li .pic:hover {
	opacity: 0.7;
}

.displayProduct li.soldout .pic:after {
	content: "SOLD OUT";
	pointer-events: none;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	text-align: center;
	color: #fff;
}

.displayProduct li .name {
	margin: 0 auto 10px;
	min-height: 40px;
}

.displayProduct li .price {
	text-align: right;
}

.displayProduct li .vip {
	margin-bottom: 3px;
	font-weight: normal;
	font-size: 1.2rem;
}

.displayProduct li .price .num {
	font-size: 2rem;
}

.sliderProduct .slick-prev,
.sliderProduct .slick-next {
	width: 60px;
	height: 60px;
	background-repeat: no-repeat;
	background-position: center;
	text-align: center;
	color: #F06094;
	font-weight: bold;
}

.sliderProduct .slick-prev {
	left: 0;
	transform: translate(-100%, -75%);
	background-image: url(../img/common/slider_prev.png);
}

.sliderProduct .slick-next {
	right: 0;
	transform: translate(100%, -75%);
	background-image: url(../img/common/slider_next.png);
}

/* 追加分試合一覧 */
ul#matching-board {}

ul#matching-board li {
	background-color: #F2F2F2;
	width: 100%;
	padding: 20px;
	margin-bottom: 50px;
	display: table;
	table-layout: fixed;
}

ul#matching-board li div.date {
	display: table-cell;
	vertical-align: middle;
}

ul#matching-board li div.date span {
	font-size: 2.4rem;
	font-weight: 900;
}

ul#matching-board li div.date span span.small {
	font-size: 1.8rem;
}

.day_of_week_sat {
	color: #2498B3;
}

.day_of_week_sun {
	color: #F06094;
}

ul#matching-board li div.to,
ul#matching-board li div.from {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	width: 200px;
}

ul#matching-board li div.to img,
ul#matching-board li div.from img {
	height: 70px;
	width: 70px;
}

ul#matching-board li div.vs {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 60px;
}

ul#matching-board li div.vs span {
	width: 30px;
	font-size: 1.8rem;
	font-weight: 900;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	ul#matching-board li {
		padding: 0;
		display: block;
		margin: 0 20px 30px;
		width: 95%;
	}

	ul#matching-board li div.date {
		display: block;
		width: 100%;
		text-align: center;
		background-color: #A9A9A9;

	}

	ul#matching-board li div.date span {
		font-size: 2.2rem;
	}

	ul#matching-board li div.date span span.small {
		font-size: 1.6rem;
	}

	ul#matching-board li div.block {
		display: block;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}

	ul#matching-board li div.vs,
	ul#matching-board li div.to,
	ul#matching-board li div.from {
		padding: 20px 0;
	}
}

/* 追加分試合一覧終了 */

.productDetail {}

.productDetail .hd01 {
	margin: 0 auto 20px;
	font-size: 2.4rem;
	font-weight: bold;
}

.productDetail .displayImg {
	float: left;
	margin-right: 45px;
	width: 55.6%;
}

.productDetail .bigImg {
	margin-bottom: 10px;
}

.productDetail .slick-list {
	max-height: 434px !important;
}

.productDetail .bigImg li {
	padding-bottom: 5.7%;
	/*border: 2px solid #E6E6E6;*/
	aspect-ratio: 4 / 3;
	background-size: contain;
	background-position: top;
	height: auto !important;
}

.productDetail .smallImg {
	margin-left: -5px;
}

.productDetail .smallImg li {
	cursor: pointer;
	padding: 0 0 5px 5px;
}

.smallImg li .img {
	padding-bottom: 95%;
	border: 2px solid #E6E6E6;
	height: 100%;
}

.smallImg li.slick_on .img {
	border-color: #F06094;
}

.productDetail .info {
	overflow: hidden;
}

.productDetail .info p {
	margin: 0;
}

.productDetail .info .price {
	margin-bottom: 15px;
	padding: 20px 10px;
	text-align: center;
	font-size: 1.2rem;
}

.productDetail .price .num {
	padding: 5px;
	margin-top: 5px;
	background: #fff;
	color: #222;
	font-size: 2.8rem;
}

.productDetail .price .num:after {
	content: "（税込）";
	font-size: 1.4rem;
	font-weight: bold;
}

.productDetail .info .stock {
	margin: 15px 0;
	padding: 10px;
	text-align: center;
	font-weight: bold;
}

.productDetail .standard {
	margin-bottom: 30px;
}

.productDetail .standard .tit {
	margin-bottom: 5px;
	text-align: center;
	color: #C1272D;
	font-weight: bold;
}

.productDetail .standard .info01 {
	padding: 0 10px;
	width: 100%;
	height: 48px;
	border: 1px solid #ccc;
	border-radius: 6px;
	text-align: center;
	color: #ccc;
}

.productDetail .standard ul {
	margin-left: -15px;
}

.productDetail .standard li {
	padding-left: 15px;
	font-size: 1.4rem;
	font-weight: bold;
}

.productDetail .standard select {
	padding: 0 40px 0 10px;
	width: 100%;
	height: 40px;
	background: url(../img/common/ico_select.png) no-repeat right center;
	background-size: auto 100%;
	border: 1px solid #ccc;
	border-radius: 6px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.productDetail .back-link {
	margin-bottom: 15px;
	width: 100%;
	height: 70px;
	border: 0;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
	font-weight: bold;
	background: #8fbc8f;
	color: #fff;
}

.productDetail .like {
	margin-bottom: 30px;
}

.productDetail .like button {
	margin-bottom: 15px;
	width: 100%;
	height: 70px;
	border: 0;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
	font-weight: bold;
}

.productDetail .like i {
	display: inline-block;
	vertical-align: middle;
	margin-right: 15px;
	width: 26px;
	height: 26px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
}

.productDetail .like .cart {
	position: relative;
	top: 0px;
	opacity: 1;
	visibility: visible;
	background: #F06094;
	color: #fff;
}

.productDetail .like .heart {
	background: #EAEAEA;
	color: #F06094;
}

.productDetail .like .cart i {
	background-image: url(../img/common/ico_cart_white2.png);
}

.productDetail .like .heart i {
	background-image: url(../img/common/ico_heart_pink.png);
}

.productDetail .like .cart:hover {
	background: #EF2E7D;
}

.productDetail .like .heart:hover {
	background: #D4D4D4;
}

.productDetail .hd02 {
	margin: 0 auto 15px;
	font-weight: bold;
}

.productDetail .txt p {
	margin: 0 auto 25px;
	line-height: 1.75;
}

/* member.html */
.memberMyPage .btnStyle {
	margin: auto;
	max-width: 260px;
}

.memberMyPage .infoList.news dt {
	color: #B3B3B3;
}

.memberMyPage p {
	margin: 0;
}

.memberInfo .memberCard {
	margin: 0 auto 35px;
	text-align: center;
}

.memberInfo .info {
	overflow: hidden;
}

.memberCard p {
	margin: 0;
}

.memberCard .card {
	margin: auto;
	width: 380px;
	padding: 10px 16px 25px;
	background-image: repeating-linear-gradient(to bottom right, #35A6B8 0%, #35A6B8 50%, #2498B3 50%, #2498B3 100%);
	border-radius: 8px;
}

.memberCard .card-mail-magazine {
	background-image: repeating-linear-gradient(to bottom right, #fff 0%, #fff 50%, #f2f2f2 50%, #F2F2F2 100%);
	border: solid 3px #cccccc;
}

.memberCard .card-jr {
	background-image: repeating-linear-gradient(to bottom right, #35A6B8 0%, #35A6B8 50%, #2498B3 50%, #2498B3 100%)
}

.memberCard .card-platinum {
	background-image: linear-gradient(45deg, #000000 0%, #333333 45%, #efefef 70%, #333333 85%, #000000 90% 100%);
}

.memberCard .card-gold {
	background-image: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
}

.memberCard .card-silver {
	background-image: linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%);
}

.memberCard .card-family {
	background-image: linear-gradient(45deg, #eb608f 0%, #eb608f 45%, #e6d0d0 70%, #eb608f 85%, #eb608f 90% 100%);
}

.memberCard .card-pinkgold {
	background-image: linear-gradient(45deg, #000000 0%, #333333 45%, #a9a9a9 70%, #333333 85%, #000000 90% 100%);
}

.memberCard .card-whitestar {
	background-image: linear-gradient(45deg, #01466d 0%, #1e526f 45%, #97acb8 70%, #1e526f 85%, #01466d 90% 100%);
}

.--pinkgold-color {
	color: #b26e79
}

.--whitestar-color {
	color: #FFFFFF
}

.--family-color {
	color: #FFFFFF
}

.memberCard .card img {
	height: 120px;
}

.memberCard .card .number {
	font-size: 14px;
	color: white;
	float: right;
}

.memberCard .card .badgeVip {
	margin-top: 15px;
	margin-bottom: 8px;
	clear: both;
}

.memberCard .card .ship {
	letter-spacing: 0.15em;
	color: #fff;
	font-weight: bold;
	font-family: "Octin Sports", "Libre Franklin Black", sans-serif;
	font-size: 4rem;
	line-height: 3.2rem;
	letter-spacing: 1px;
}

.memberCard .card .ship .num {
	letter-spacing: 0.1em;
	font-size: 1.4rem;
}

.memberCard .card .ship .num:after {
	margin-left: 10px;
	font-size: 1.6rem;
}

.memberInfo .info table {
	width: 100%;
	text-align: left;
	line-height: 1.75;
}

.memberInfo .info tr {
	border-bottom: 1px solid #E6E6E6;
}

.memberInfo .info th {
	padding: 13px 40px 13px 0;
	width: 320px;
}

.memberInfo .info td {
	padding: 13px 0;
}

.memberInfo .info .juniorMembers {
	margin-top: 20px;
}

#regular-member-btn {
	display: block;
	width: 155px;
	text-align: center;
	color: white;
	background-color: #39A3BD;
	box-shadow: 0 2px 0 0 #16778E;
	border-radius: 5px;
	padding: 4px 0;
}

.juniorMembers .title {
	cursor: pointer;
	position: relative;
	margin-bottom: 10px;
	padding: 18px 50px 18px 20px;
	font-weight: bold;
}

.juniorMembers .title:after {
	content: "";
	position: absolute;
	top: 0;
	right: 25px;
	width: 12px;
	height: 100%;
	background: url(../img/common/ico_arr_down_black.png) no-repeat center;
	background-size: 100%;
}

.juniorMembers .title.open:after {
	transform: rotate(180deg);
}

.juniorMembers li {
	padding: 16px 0;
	border-bottom: 1px solid #E6E6E6;
}

.juniorMembers li .status {
	display: block;
	float: right;
	position: relative;
	width: 40px;
	height: 20px;
	background: #E6E6E6;
	border-radius: 50px;
	font-weight: bold;
	font-size: 1.4rem;
}

.juniorMembers li .status:before {
	content: "ジュニア会員として登録";
	position: absolute;
	left: 0;
	top: 1px;
	transform: translateX(-100%);
	width: 200px;
	color: #111;
	text-align: right;
}

.juniorMembers li .status.now:before {
	content: "ジュニア会員を解除";
	color: #F06094;
}

.juniorMembers li .status button {
	display: block;
	position: absolute;
	top: 2px;
	width: 16px;
	height: 16px;
	border-radius: 50px;
	border: 0;
	cursor: pointer;
	outline: none;
}

.juniorMembers li .status button.no {
	right: 2px;
	background: #696969;
}

.juniorMembers li .status button.yes {
	opacity: 0;
	right: 22px;
	background: #F06094;
}

.juniorMembers li .status.now button.no {
	opacity: 0;
}

.juniorMembers li .status.now button.yes {
	pointer-events: inherit;
	opacity: 1;
}

.acceptPopup {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	display: none;
}

.acceptPopupIn {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	background: rgba(0, 0, 0, 0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 0 20px;
}

.fancyboxPart {
	padding: 80px 20px 60px;
	width: 590px;
	text-align: center;
	background: #fff;
	position: relative;
}

.fancyboxPart .subtitle {
	margin: 0;
	line-height: 1.75;
}

.fancyboxPart .approve {}

.fancyboxPart .approve a {
	display: inline-block;
	padding: 15px 25px;
	margin: 0 20px;
	letter-spacing: 0.15em;
	color: #111;
	font-weight: bold;
	font-size: 1.5rem;
}

.fancyboxPart .approve .yes {
	background: #F2E879;
}

.fancyboxPart .approve .no {
	background: #DFDFDF;
}

.fancybox-close {
	background: url(../img/about/fancy_close.png.png) no-repeat center !important;
	background-size: 15px !important;
	top: 0;
	right: 0;
	transform: translate(0);
}

.newsList .notice {
	margin-bottom: 20px;
}

.newsList .notice .item {
	padding: 20px 28px;
	margin-bottom: 10px;
	background: #fff;
	border: 5px solid #E6E6E6;
	box-shadow: 3px 3px 0 #ccc;
	line-height: 1.75;
}

.newsList .notice .tit {
	margin-bottom: 6px;
	font-weight: bold;
	font-size: 1.8rem;
}

.newsList dl {
	padding: 26px 0;
	border-bottom: 1px dashed #E6E6E6;
}

.newsList dt {
	float: left;
	width: 130px;
	font-family: 'Libre Franklin', sans-serif;
	font-size: 1.4rem;
}

.newsList dd {
	overflow: hidden;
}

.newsList dd a {
	color: #111;
}

.newsList dd a.hot:after {
	content: "•";
	margin-left: 10px;
	color: #EF8200;
}

.newsList dd a:hover {
	color: #F06094;
}

.newsList .pagePrevNext {
	text-align: right;
}

.couponCode li {
	margin-bottom: 32px;
}

.couponCode li .hdLine {
	margin: 0 auto 15px;
}

.couponCode li p {
	margin: 0;
}

.couponCode li .period {
	margin-bottom: 10px;
	text-align: right;
	font-size: 1.4rem;
}

.couponCode li .detail {
	margin-bottom: 10px;
	line-height: 2;
	letter-spacing: 0.05em;
}

.couponCode li .code {
	letter-spacing: 0.15em;
	font-weight: bold;
	font-size: 2.2rem;
}

.couponCode li .code:before {
	content: "クーポンコード：";
	letter-spacing: 0.05em;
	font-family: "游ゴシック", Roboto, YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	font-weight: normal;
	font-size: 1.4rem;
}

.purchaseHistory .hd01 {
	margin: 0 auto 22px;
	letter-spacing: 0.15em;
	font-weight: bold;
	font-size: 2.2rem;
}

.purchaseHistory li {
	margin-bottom: 20px;
	letter-spacing: 0.08em;
}

.purchaseHistory li p {
	margin: 0;
	line-height: 1.75;
}

.purchaseHistory li .date {
	margin: 0;
	padding: 11px 20px;
	background: #F06094;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}

.purchaseHistory li .info {
	padding: 15px 20px;
	background: #F2F2F2;
}

.purchaseHistory .caseImg li .data {
	float: left;
	padding: 12px 10px 12px 0;
	width: 25%;
}

.purchaseHistory li .data p {
	margin: 6px 0;
	font-size: 1.4rem;
}

.purchaseHistory li .data p:before {
	content: "";
	margin-right: 10px;
}

.purchaseHistory li .data .money:before {
	content: "金額";
}

.purchaseHistory li .data .total:before {
	content: "合計額";
}

.purchaseHistory li .data .order:before {
	content: "注文番号";
}

.purchaseHistory li .data .pay:before {
	content: "決済方法";
}

.purchaseHistory li .imgs {
	overflow: hidden;
}

.purchaseHistory li .imgs .item {
	margin: 5px;
	width: 100%;
	display: inline-block;
}

.purchaseHistory li .imgs .item .imgBox {
	float: left;
	width: 200px;
	height: auto;
}

.purchaseHistory li .imgs .item .product_detail {
	float: left;
	margin: 10px;
	width: calc(100% - 220px);
}

.purchaseHistory li .imgs .item .product_detail span {
	display: block;
	width: 100%;
	padding-bottom: 10px;
}

.unsubscribed .hd01 {
	padding: 15px 0;
	margin: 0 auto 25px;
	border-bottom: 1px solid #111;
	letter-spacing: 0.08em;
	font-size: 2rem;
	font-weight: bold;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {

	/* online_store.html */
	.displayProduct ul {
		margin-left: -15px;
	}

	.displayProduct li {
		padding: 0 0 15px 15px;
		width: 50%;
	}

	.displayProduct li .item {
		padding: 8px;
		max-width: 96%;
	}

	.displayProduct li .name {
		height: 30px;
		font-size: 1.3rem;
	}

	.displayProduct li .vip {
		font-size: 1.1rem;
	}

	.displayProduct li .price .num {
		font-size: 1.6rem;
	}

	.productDetail .displayImg {
		float: none;
		margin: 0 auto 15px;
		width: 100%;
	}

	.productDetail .smallImg {
		display: none;
	}

	.productDetail .standard {
		margin-bottom: 25px;
	}

	.productDetail .like button {
		position: relative;
		height: 55px;
		font-size: 1.3rem;
	}

	.productDetail .like i {
		position: absolute;
		left: 22%;
		top: 50%;
		transform: translateY(-50%);
		width: 20px;
	}

	.productDetail .hd02 {
		margin: 0 auto 10px;
	}


	/* member.html */
	.memberCard .card {
		padding: 15px;
		width: 90%;
	}

	.memberCard .card img {
		height: 90px;
	}

	.memberCard .card .ship {
		line-height: 3.2rem;
	}

	.memberCard .card .ship .num {
		font-size: 1.2rem;
	}

	.memberCard .card .ship .num:after {
		font-size: 1.3rem;
	}

	.memberInfo .info {
		padding: 0 15px 15px;
		background: #f2f2f2;
	}

	.memberInfo .info tr {
		border: 0;
	}

	.memberInfo .info th {
		display: block;
		padding: 10px 10px 8px;
		width: 100%;
	}

	.memberInfo .info td {
		display: block;
		padding: 15px 10px;
		width: 100%;
		background: #fff;
	}

	.memberInfo .info .juniorMembers {
		margin: 0;
	}

	.juniorMembers .title {
		padding: 15px 30px 12px 10px;
		margin-bottom: 0;
		background: none;
	}

	.memberInfo .juniorMembers .bg {
		padding: 0 10px 30px;
		background: #fff;
	}

	.juniorMembers li .status {
		font-size: 1.2rem;
	}

	.juniorMembers li .status:before {
		content: "ジュニア会員\Aとして登録";
		top: -10px;
		width: 90px;
		white-space: pre;
	}

	.juniorMembers li .status.now:before {
		content: "ジュニア会員\Aを解除";
	}

	.fancyboxPart {
		padding: 35px 10px 30px;
		width: 100%;
	}

	.fancyboxPart .approve a {
		display: inline-block;
		padding: 8px 16px;
		margin: 0 12px;
		font-size: 1.2rem;
	}

	.fancybox-close {
		width: 30px;
		height: 30px;
	}

	.newsList .notice .item {
		padding: 10px 15px;
	}

	.newsList .notice .tit {
		font-size: 1.4rem;
	}

	.newsList dl {
		padding: 15px 0;
	}

	.newsList dt {
		float: none;
		margin-bottom: 5px;
		width: auto;
		font-size: 1.2rem;
	}

	.newsList .pagePrevNext {
		text-align: center;
	}

	.newsList .pagePrevNext .toList {
		display: inline-block;
		padding: 5px 0 5px 20px;
		width: 240px;
		background-position: 30% center;
		border: 1px solid #F06094;
	}

	.couponCode li .hdLine {
		padding: 0 5px;
		background: none;
		font-size: 1.4rem;
	}

	.couponCode li .period {
		margin-bottom: 5px;
		font-size: 1.2rem;
	}

	.couponCode li .code {
		font-size: 2rem;
	}

	.couponCode li .code:before {
		font-size: 1.3rem;
	}

	.purchaseHistory .hd01 {
		margin: 0 auto 10px;
		letter-spacing: 0.08em;
		font-size: 1.4rem;
	}

	.purchaseHistory li {
		margin-bottom: 20px;
		letter-spacing: 0.08em;
	}

	.purchaseHistory li .date {
		padding: 7px 10px;
	}

	.purchaseHistory li .info {
		padding: 10px;
	}

	.purchaseHistory li .data p {
		margin: 3px 0;
	}

	.purchaseHistory .caseImg li .data {
		float: none;
		padding: 5px 0;
		width: auto;
	}

	.purchaseHistory li .imgs .item a.imgBox {
		margin: 5px 1.66%;
		width: 30%;
		height: 100%;
	}

	.purchaseHistory li .imgs .item .product_detail {
		width: 60%;
		min-height: 110px;
		height: auto;
	}

	.displayProduct li .pic img {
		width: auto;
		height: auto;
		max-width: 100%;
		height: 70%;
	}
}

@media screen and (max-width: 374px) {
	.displayProduct li .pic img {
		width: 100%;
		height: 60%;
	}
}


/*======================================================
  login  contact
======================================================*/
.inputForm {
	padding: 100px 30px;
}

.twoForm {
	margin: auto;
	max-width: 1340px;
}

.oneForm {
	margin: auto;
	max-width: 1060px;
}

.twoBox,
.oneBox {
	padding: 60px;
	background: #F2F2F2;
	box-shadow: 3px 3px 0 #ccc;
}

.twoForm ul {
	margin-left: -40px;
}

.twoForm li {
	padding-left: 40px;
}

.twoForm .bg,
.inputForm .bgPc,
.oneForm .bg {
	padding: 40px 35px 60px;
	background: #fff;
}

.inputForm .hd01 {
	padding: 15px 0;
	margin: 0 auto 30px;
	border-bottom: 1px solid #111;
	letter-spacing: 0.08em;
	font-size: 1.8rem;
	font-weight: bold;
}

.inputForm .hd02 {
	margin: 0 auto 25px;
	text-align: center;
	letter-spacing: 0.08em;
	font-size: 2rem;
	font-weight: bold;
}

.loginFlow {
	margin-bottom: 50px;
	width: 100%;
	text-align: center;
	font-size: 0;
}

.loginFlow li p {
	margin: 0;
}

.loginFlow li {
	display: inline-block;
	vertical-align: top;
	position: relative;
	padding: 0 10px;
	width: 16.66%;
	font-size: 1.6rem;
}

.loginFlow li .step {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
	z-index: 3;
	margin: 0 auto 15px;
	height: 100px;
	width: 100px;
	background: #F2F2F2;
	border: 2px solid #34373E;
	border-radius: 100px;
	font-size: 2rem;
}

.loginFlow li+li:before {
	content: "";
	position: absolute;
	left: -25%;
	top: 47px;
	z-index: 0;
	width: 50%;
	border-top: 6px dotted #D4D4D4;
}

.loginFlow li .step-fin {
	background: #F06094 !important;
	border-color: #F06094 !important;
	color: #fff !important;
}

.loginFlow li .step-non {
	border-top-color: #34373E;
}

.loginFlow li.step-now {
	font-weight: bold;
}

.inputForm form p {
	margin: 0;
	padding: 0;
}

.inputForm dt {
	display: block;
	margin-bottom: 10px;
	width: 100%;
	letter-spacing: 0.08em;
	font-weight: bold;
}

.inputForm dd {
	display: block;
	margin-bottom: 18px;
	letter-spacing: 0.05em;
	font-size: 1.4rem;
}

.inputForm .full {
	width: 100%;
}

.inputForm .half {
	width: 48%;
}

.inputForm .small {
	width: 260px;
}

.inputForm .small02 {
	width: 30%;
}

.inputForm .small03 {
	width: 140px;
}

.inputForm select::-ms-expand {
	display: none;
}

.inputForm input[type=radio]::-ms-check,
.inputForm input[type=checkbox]::-ms-check {
	display: none;
}

.inputForm select,
.inputForm input[type=radio],
.inputForm input[type=checkbox],
.inputForm input[type=text],
.inputForm input[type=password],
.inputForm input[type=email],
.inputForm input[type=tel],
.inputForm input[type=number],
.inputForm input[type=reset],
.inputForm input[type=button],
.inputForm input[type=submit],
.inputForm textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	font-family: "游ゴシック", Roboto, YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
}

.inputForm input[type=text]::-ms-clear,
.inputForm input[type=tel]::-ms-clear,
.inputForm input[type=number]::-ms-clear {
	display: none;
}

.inputForm input[type=reset],
.inputForm input[type=button],
.inputForm input[type=submit] {
	font-family: "游ゴシック", Roboto, YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
	cursor: pointer;
}

.inputForm input[type=text],
.inputForm input[type=email],
.inputForm input[type=tel],
.inputForm input[type=number] {
	padding: 0 10px;
	height: 40px;
	text-align: left;
	/*color:#CCCCCC;*/
}

.attachmentsFile {
	position: relative;
}

.attachmentsFile input.text {
	width: 80%;
}

.attachmentsFile .fileBtn {
	float: right;
	margin: 5px 0;
	width: 15%;
	max-width: 70px;
	height: 30px;
	background: #ddd;
	border: 0;
	border-radius: 6px;
}

.attachmentsFile:hover .fileBtn {
	opacity: 0.7;
}

.attachmentsFile .file {
	cursor: pointer;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 3;
	width: 15%;
	max-width: 70px;
	height: 100%;
}

.fileImgBox {
	margin-top: 10px;
}

.fileImgBox .fileImglist {
	margin: 5px 0;
}

.fileImgBox .fileImglist:before {
	content: "・";
}

.fileImgBox .fileImglist img {
	max-height: 60px;
}

.fileImgBox .fileImglist .delfile {
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
	cursor: pointer;
	width: 14px;
	height: 14px;
	background: url(../img/common/ico_delete.png) no-repeat center;
}

.inputForm select {
	padding: 0 40px 0 10px;
	height: 40px;
	background: url(../img/common/ico_select.png) no-repeat right center;
	background-size: auto 100%;
}

.inputForm input.send {
	cursor: pointer;
	width: 120px;
	height: 42px;
	background: #34373E;
	border: 0;
	letter-spacing: 0.15em;
	text-align: center;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}

.inputForm input.send:hover {
	opacity: 0.7;
}

.spaceRow select,
.spaceRow p {
	margin: 0 0 10px 0 !important;
}

.spaceCol .cell {
	float: left;
	margin: 0 12px 5px 0;
}

.borStyle {
	border: 1px solid #ccc;
	border-radius: 4px !important;
}

.password {
	overflow: hidden;
	position: relative;
}

.password #password {
	padding: 0 10px;
	height: 40px;
	width: calc(100% + 35px);
	border: 0;
}

.password i {
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -4px;
	width: 13px;
	height: 8px;
	background: url(../img/common/ico_password.png) no-repeat center;
}

.closeEye {
	opacity: 0.5;
}

.openEye {
	opacity: 1;
}

.inputForm textarea {
	resize: none;
	padding: 5px 10px;
	width: 100%;
	height: 180px;
}

.inputForm textarea.height01 {
	height: 80px;
}

.checkboxStyle input {
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
	width: 18px;
	height: 17px;
	border: 0;
	background: url(../img/common/ico_checkbox.png) no-repeat center;
	background-size: 100%;
}

.checkboxStyle input:checked {
	background-image: url(../img/common/ico_checkbox_checked.png);
}

.radioStyle {
	padding: 15px 20px;
	font-size: 0;
	background: #eb608f;
	color: #FFF;
}

.radioStyle input {
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
	width: 13px;
	height: 13px;
	background: #ccc;
	border-radius: 50px !important;
}

.radioStyle input:checked {
	background: #39A3BD;
}

.radioStyle p {
	cursor: pointer;
	display: inline-block;
	vertical-align: top;
	margin: 5px 1% 5px 0 !important;
	min-width: 48%;
	font-size: 2rem;
}

.radioStyle label,
.radioRegistStyle label {
	font-weight: bold;
}

.radioStyle label .num,
.radioRegistStyle label {
	font-size: 1.4rem;
}

/* サポーター会員選択時におけるお客様情報登録部分のラジオボタン */
.radioRegistStyle {
	padding: 0;
	font-size: 0;
}

.radioRegistStyle p {
	background: white;
	padding: 15px 20px !important;
	margin: 0 0 0 !important;
}

.radioRegistStyle p:first-child {
	margin: 0 0 15px !important;
}

.radioRegistStyle input {
	display: inline-block;
	margin-right: 8px;
	width: 13px;
	height: 13px;
	background: #ccc;
	border-radius: 50px !important;
}

.radioRegistStyle input:checked {
	background: #F06094;
}

/* end */

.inputForm .summary {
	margin-top: 50px;
	text-align: center;
}

.inputForm .argee {
	font-size: 1.4rem;
}

.inputForm dd .argee {
	margin-top: 20px;
}

.inputForm .goRegist .argee {
	margin-bottom: 20px;
	text-align: center;
}

.inputForm .link {
	color: #525263;
	text-decoration: underline;
}

.inputForm .link:hover {
	text-decoration: none;
}

.inputForm .login .btnStyle {
	margin: 15px auto;
	width: 100%;
	max-width: 480px;
	border: 0;
	font-size: 1.6rem;
}

.inputForm .modify .btnStyle {
	margin: 30px auto 0;
}

.inputForm .note {
	color: #F06094;
	font-size: 1.2rem;
	font-weight: bold;
}

.inputForm .forget {
	margin-top: 10px;
	text-align: right;
	font-size: 1.2rem;
}

.inputForm .sns {
	margin-top: 50px;
}

.inputForm .sns a {
	display: block;
	margin: 30px auto;
	padding: 0 10px 0 70px;
	width: 100%;
	height: 70px;
	line-height: 70px;
	background-repeat: no-repeat;
	background-position: 2px center;
	letter-spacing: 0.15em;
	text-align: center;
	color: #fff;
	font-weight: bold;
}

.inputForm .sns a:hover {
	opacity: 0.7;
}

.inputForm .sns .line {
	background-image: url(../img/login/ico_line.png);
	background-color: #00B900;
}

.inputForm .sns .yahoo {
	background-image: url(../img/login/ico_yahoo.png);
	background-color: #FF0033;
}

.inputForm .sns .twitter {
	background-image: url(../img/login/ico_twitter.png);
	background-color: #1DA1F2;
}

.goRegist .btnStyle {
	margin: 0 auto;
	height: 95px;
	width: 80%;
	max-width: 640px;
	letter-spacing: 0.15em;
}

.contactAccess {
	text-align: center;
	letter-spacing: 0.08em;
}

.contactAccess p {
	margin: 0;
	padding: 0;
}

.contactAccess .sub {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 1.8rem;
}

.contactAccess .tel {
	margin-bottom: 5px;
}

.contactAccess .tel a {
	color: #F06094;
	font-size: 3.4rem;
	font-weight: bold;
}

.contactAccess .tel a:before {
	content: "tel.";
	font-size: 2.6rem;
}

.memberConfirm {
	width: 100%;
	line-height: 1.75;
}

.memberConfirm tr {
	border-bottom: 1px solid #E6E6E6;
}

.memberConfirm th {
	padding: 13px 10px 14px 0;
	text-align: left;
	font-weight: bold;
}

.memberConfirm td {
	padding: 13px 0;
	text-align: right;
}

/*contact.html*/
.contactIntrod {
	text-align: center;
	letter-spacing: 0.05em;
}

.contactIntrod p {
	margin: 0;
	padding: 0;
}

.contactIntrod .txt {
	line-height: 2;
}

.contactIntrod .link {
	color: #525263;
	text-decoration: underline;
}

.contactIntrod .link:hover {
	text-decoration: none;
}

.contactIntrod .note {
	margin-top: 25px;
	color: #999;
	font-size: 1.4rem;
}

.contact .btnStyle {
	height: 70px;
	font-size: 1.6rem;
}

.contactAccess.box {
	padding: 10px;
	margin: auto;
	max-width: 768px;
	text-align: left;
}

.contactAccess.box .bg {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 30px;
	letter-spacing: 0.08em;
}

.contactAccess.box p {
	margin: 5px 0;
}

.contactAccess.box .tel a {
	margin-right: 15px;
}

/*** スマホ ***/
@media screen and (max-width: 1160px) {
	.inputForm {
		padding: 50px 10px;
	}

	.twoBox {
		padding: 0;
		box-shadow: none;
	}

	.twoForm li {
		width: 100%;
	}

	.twoForm .bg {
		padding: 20px 20px 25px;
		background: #F2F2F2;
		box-shadow: 3px 3px 0 #ccc;
	}

	.twoForm .bgPc {
		padding: 15px;
	}

	.oneBox {
		padding: 15px 20px;
	}

	.oneForm .bg {
		padding: 0px;
		background: transparent;
	}

	.inputForm .hd01 {
		padding: 10px 0;
		font-size: 1.5rem;
	}

	.inputForm .hd02 {
		font-size: 1.6rem;
	}

	.loginFlow {
		margin-bottom: 30px;
	}

	.loginFlow li {
		padding: 0;
	}

	.loginFlow li .step {
		margin: 0 auto;
		width: 100%;
		height: 70px;
		background: #F2F2F2;
		border-style: solid;
		border-width: 1px 0;
		border-color: #9E9FA2;
		border-radius: 0;
		color: #34373E;
		font-size: 1.2rem;
		font-weight: bold;
	}

	.loginFlow li+li:before {
		content: none;
	}

	.loginFlow li+li .step:before {
		content: "";
		position: absolute;
		left: 0;
		top: -1px;
		bottom: -1px;
		transform: translateX(-88%);
		width: 14px;
		background: url(../img/login/ico_flow.png) no-repeat center;
		background-size: 100% 100%;
		border-top: 0;
	}

	.loginFlow li .step-fin:before {
		background-image: url(../img/login/ico_flow_now.png) !important;
	}

	.loginFlow li:last-child .step {
		border-width: 1px 1px 1px 0;
	}

	.loginFlow li span.pc {
		display: none !important;
	}

	.loginFlow li span.sp {
		display: block !important;
	}

	#member_rank .loginFlow li#flow02 .step:before,
	#member_information .loginFlow li#flow02 .step:before,
	#member_information .loginFlow li#flow03 .step:before,
	#member_register_card .loginFlow li#flow02 .step:before,
	#member_register_card .loginFlow li#flow03 .step:before,
	#member_register_card .loginFlow li#flow04 .step:before,
	#member_confirm .loginFlow li#flow02 .step:before,
	#member_confirm .loginFlow li#flow03 .step:before,
	#member_confirm .loginFlow li#flow04 .step:before,
	#member_confirm .loginFlow li#flow05 .step:before,
	#member_complete .loginFlow li .step:before {
		background-image: url(../img/login/ico_flow_now.png);
	}

	.loginFlow li .name {
		display: none;
	}

	.twoForm dt {
		padding: 0 10px;
	}

	.twoForm dd,
	.oneForm dd {
		padding: 10px;
		background: #fff;
	}

	.password {
		width: 100%;
	}

	.inputForm .half {
		width: 100%;
	}

	.inputForm .small {
		width: 260px;
	}

	.inputForm .small02 {
		width: 30%;
	}

	.inputForm .login .btnStyle {
		width: 80%;
		font-size: 1.3rem;
	}

	.goRegist .btnStyle {
		height: 55px;
	}

	.inputForm .sns {
		margin: 0;
		padding: 1px 20px;
		background: #fff;
	}

	.inputForm .sns a {
		padding: 0 5px 0 56px;
		margin: 20px auto;
		height: 55px;
		line-height: 55px;
		background-size: 51px;
	}

	.inputForm textarea {
		height: 150px;
	}

	.fileImgBox {
		margin-top: 0;
	}

	.radioStyle {
		padding: 10px 5px;
	}

	.radioStyle p {
		display: block;
		margin: 5px 0;
		width: 100%;
		font-size: 1.4rem;
	}

	.radioStyle label .num {
		font-size: 1.2rem;
	}

	.radioStyle input {
		width: 9px;
		height: 9px;
	}

	.radioStyle input:checked {
		border-width: 2px;
	}

	.inputForm .summary {
		margin-top: 0px;
		padding: 10px;
		background: #fff;
		text-align: left;
	}

	.inputForm .summary .argee {
		padding-left: 26px;
		text-indent: -26px;
	}

	.spaceCol .cell {
		margin: 0;
		width: 100%;
	}

	.spaceCol .cell+.cell {
		margin-top: 15px;
	}

	.spaceCol .cell .half {
		width: 48%;
	}

	.contact .btnStyle {
		height: 55px;
		font-size: 1.3rem;
	}

	.memberConfirm tr {
		border-bottom: 1px solid #E6E6E6;
	}

	.memberConfirm th {
		display: block;
		padding: 10px;
		width: 100%;
	}

	.memberConfirm td {
		display: block;
		padding: 10px;
		width: 100%;
		background: #fff;
		text-align: left;
	}

	.contactAccess .sub {
		margin-bottom: 5px;
		font-size: 1.4rem;
	}

	.contactAccess .tel a {
		font-size: 2.5rem;
	}

	.contactAccess .tel a:before {
		font-size: 2.1rem;
	}

	.contactAccess.box {
		text-align: center;
	}

	.contactAccess.box .bg {
		padding: 25px 10px;
	}

	.contactAccess.box .tel a {
		margin: 0;
	}

	.contactIntrod {
		text-align: left;
	}

	.contactIntrod .note {
		margin-top: 10px;
	}
}

@media screen and (max-width: 430px) {
	.twoForm .bg {
		padding: 15px;
	}

	.inputForm .sns {
		padding: 1px 10px;
	}

	.inputForm .sns a {
		margin: 15px auto;
		padding: 0 5px 0 41px;
		height: 40px;
		line-height: 20px;
		background-size: 36px;
		font-size: 1.2rem;
	}

	.sp-custom {
		display: block !important;
	}
}

.sp-custom {
	display: none;
}


/*======================================================
 VICTORINA
======================================================*/
.victorinaList {}

.signCate {
	margin-bottom: 50px;
	text-align: center;
}

.signCate .cate {
	display: inline-flex;
	vertical-align: top;
	justify-content: center;
	align-items: center;
	margin: 5px;
	width: 140px;
	height: 140px;
	border-radius: 200px;
	letter-spacing: 0.18em;
	color: #fff;
	font-family: 'Libre Franklin Black', sans-serif;
}

.signCate .cate:first-child {
	color: #B3B3B3;
}

.selectSort {
	margin-bottom: 20px;
}

.selectSort a {
	display: inline-block;
	float: right;
	width: 30px;
	height: 30px;
	background: url(../img/common/ico_up_down.png) no-repeat center;
	background-size: 16px;
}

.selectSort select {
	float: right;
	padding: 0 5px;
	width: 220px;
	height: 30px;
	background: url(../img/common/ico_arr_down_black.png) no-repeat 95% center;
	background-size: 7px;
	border-radius: 4px;
	border: 1px solid #E6E6E6;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.victorinaList ul {
	margin-left: -40px;
}

.victorinaList li {
	padding: 0 0 30px 40px;
}

.victorinaList li .img {
	margin-bottom: 15px;
}

.victorinaList li .tit {
	margin-bottom: 15px;
	font-size: 1.2rem;
}

.victorinaList li .tit .readRecord {
	float: right;
	color: #B3B3B3;
	position: static;
}

.like .fa-heart-o.checked:before,
.like .fa-heart-o.checked {
	content: "\f004";
	color: #F06094;
}

.victorinaList li .date {
	margin-top: 15px;
	color: #B3B3B3;
	font-size: 1.2rem;
}

.victorinaList dl {
	padding: 20px 0;
	border-bottom: 1px dashed #C5C5C5;
}

.victorinaList dt {
	margin-bottom: 10px;
	font-size: 1.2rem;
}

.victorinaList dd a {
	text-decoration: underline;
	color: #39A3BD;
}

.victorinaList dd a:hover {
	text-decoration: none;
}

.default-next-btn {
	float: left;
	width: 35%;
	margin-left: 10%;
}

.default-back-btn {
	float: right;
	width: 35%;
	margin-right: 10%;
}

.fan-course__cards-deco {
	top: calc(100% - 25px) !important;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.default-next-btn {
		width: 46%;
		margin-left: 2%;
	}

	.default-back-btn {
		width: 46%;
		margin-right: 2%;
	}

	.signCate {
		margin-bottom: 20px;
	}

	.signCate .cate {
		width: 90px;
		height: 90px;
		font-size: 1.1rem;
	}

	.selectSort select {
		width: 125px;
	}

	.victorinaList ul {
		margin-left: -10px;
	}

	.victorinaList li {
		padding: 0 0 15px 10px;
		width: 50%;
	}

	.victorinaList .times {
		margin-left: -10px;
	}

	.victorinaList dl {
		float: left;
		padding: 0 0 15px 10px;
		width: 50%;
		border-bottom: 0;
	}

	.victorinaList dt {
		color: #B3B3B3;
	}

	.victorinaList dt .img {
		margin-bottom: 10px;
	}

	.victorinaList dd a {
		text-decoration: none;
		color: #333;
	}

}

@media screen and (max-width: 374px) {
	.signCate .cate {
		width: 80px;
		height: 80px;
	}
}


/*================================================
member_community.html
================================================*/
.girlTitle {
	position: relative;
	text-align: center;
}

.girlTitle .adorn {
	margin: 0;
	line-height: 2.25;
	letter-spacing: 0.45em;
	font-size: 2.6rem;
	font-weight: bold;
}

.girlTitle .wavy {
	display: inline-block;
	background: url(../img/common/ico_wavy_line.png) repeat-x center bottom;
}

.girlTitle .adorn i {
	display: inline-block;
	position: relative;
	font-style: normal;
}

.girlTitle .adorn i:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: calc(-4px - 0.225em);
	width: 8px;
	height: 8px;
	background: #FCE649;
	border-radius: 50px;
}

.submitArticle {
	margin: 0 auto;
	max-width: 840px;
}

.submitArticle .subBtn {
	cursor: pointer;
	position: relative;
	margin: 0 auto;
	height: 70px;
	line-height: 70px;
	max-width: 480px;
	background: #F06094;
	text-align: center;
	color: #fff;
	font-weight: bold;
}

.submitArticle .subBtn:after {
	content: "";
	position: absolute;
	right: 5%;
	top: 50%;
	margin-top: -4px;
	width: 12px;
	height: 8px;
	background: url(../img/common/ico_arr_down_white.png) no-repeat center;
}

.submitArticle .subBtn.open:after {
	transform: rotate(180deg);
}

.submitArticle .attachmentsFile input.text {
	width: 90%;
}

.memberHead {
	display: flex;
	align-items: center;
	position: relative;
	margin-bottom: 20px;
}

.memberHead .head {
	display: block;
	margin-right: 10px;
	width: 70px;
	height: 70px;
	line-height: 70px;
	text-align: center;
	border-radius: 100px;
}

.memberHead .info p {
	margin: 5px 0;
}

.memberHead .info .time {
	letter-spacing: 0.1em;
	color: #B3B3B3;
	font-size: 1.2rem;
	margin-left: 5px;
}

.memberHead .info .nickname {
	font-weight: bold;
	font-size: 0.9em;
}

.memberFootprint>ul>li {
	position: relative;
	margin: 0 auto 30px;
	padding: 30px 35px;
	border: 5px solid #E6E6E6;
	box-shadow: 3px 3px 0 #CCCCCC;
}

.memberFootprint li .hd03 {
	margin: 0 auto 15px;
	letter-spacing: 0.05em;
	color: #F06094;
	font-size: 2rem;
	font-weight: bold;
}

.memberFootprint li .txt p {
	margin: 0 auto 20px;
	line-height: 1.75;
}

.memberFootprint li .infoImg {
	margin: 0 auto 20px;
	text-align: center;
}

.hideContent {
	display: none;
}

.textBtn {
	display: block;
	position: relative;
	transition: all 0.5s;
	-moz-transition: all 0.5s;
	-webkit-transition: all 0.5s;
	width: 100%;
	line-height: 40px;
	text-align: center;
	cursor: pointer;
	color: #111;
	font-size: 1.4rem;
	font-weight: bold;
}

.textBtn i {
	margin-left: 6px;
}

.textBtn .down {
	display: inline-block;
}

.textBtn .up {
	display: none;
}

.textBtn.open .down {
	display: none;
}

.textBtn.open .up {
	display: inline-block;
}

.readRecord {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.readRecord a {
	display: inline-block;
	vertical-align: middle;
	margin-left: 25px;
	color: #B3B3B3;
	font-size: 1.2rem;
}

.readRecord .fa:before {
	margin-right: 5px;
	font-size: 1.7rem;
}

.readRecord .ico_talk {
	padding-left: 22px;
	background: url(../img/member_community/ico_comment.png) no-repeat left center;
}

.readRecord .fa-heart-o.checked:before {
	content: "\f004";
	color: #F06094;
}

.readRecord .ico_talk:hover,
.readRecord .ico_talk.checked {
	background-image: url(../img/member_community/ico_comment_checked.png);
}

.readRecord.up {
	position: static;
	transform: translateY(0%);
}

.readRecord.up a {
	margin: 0 25px 0 0;
	padding-top: 5px;
	padding-bottom: 5px;
	color: #111;
	font-size: 1.4rem;
}

.readRecord .fa:before {
	font-size: 2rem;
}

.readRecord.up .ico_talk {
	padding-left: 25px;
	background-image: url(../img/member_community/ico_comment_black.png);
}

.memberHead .left {
	left: 0;
}

.memberFootprint .readerLeave {
	margin-top: 10px;
	padding: 30px 40px;
	border-top: 1px dashed #4D4D4D;
}

.readerLeave .memberHead {
	margin-bottom: 10px;
	border-bottom: 1px solid #E6E6E6;
}

.readerLeave .replyItem .memberHead {
	border-bottom: 0;
}

.readerLeave .replyItem {
	margin-left: 20px;
}

.readerLeave .memberHead .head {
	width: 50px;
	height: 50px;
	line-height: 50px;
}

.readerLeave .memberHead .head img {
	transform: scale(0.7, 0.7);
}

.readerLeave .replyTextarea textarea {
	height: 60px;
}

.readerLeave .replyTextarea p {
	margin: 0;
}

.readerLeave .replyTextarea input.send {
	width: 80px;
	height: 26px;
	font-size: 1.2rem;
}

.readerLeave .more {
	margin: 0;
	text-align: right;
	font-size: 1.4rem;
	font-weight: bold;
}

.readerLeave .more a {
	padding-right: 20px;
}

.readerLeave .more a:hover {
	color: inherit;
}

.readerLeave .more i {
	margin-left: 5px;
	font-size: 1rem;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.girlTitle .adorn {
		padding: 0 6%;
		line-height: 2;
		font-size: 2rem;
	}

	.girlTitle .adorn i:before {
		top: 2px;
		margin-left: calc(-2.5px - 0.225em);
		width: 5px;
		height: 5px;
	}

	.girlTitle .wavy {
		background-image: url(../img/common/ico_wavy_line_sp.png);
		background-position: center 90%;
		background-size: auto 5px;
	}

	.submitArticle .subBtn {
		width: 80%;
		height: 55px;
		line-height: 55px;
	}

	.memberHead {
		margin-bottom: 10px;
	}

	.memberHead .head {
		width: 35px;
		height: 35px;
		line-height: 35px;
	}

	.memberHead .head img {
		transform: scale(0.5, 0.5);
	}

	.memberFootprint>ul>li {
		padding: 0;
		border: 0;
		box-shadow: none;
	}

	.memberFootprint li .hd03 {
		margin: 0 auto 10px;
		line-height: 1.2;
		font-size: 1.4rem;
	}

	.memberFootprint li .txt p {
		line-height: 1.2;
	}

	.readRecord {
		position: static;
		transform: translateY(0%);
		margin-bottom: 10px;
	}

	.readRecord a {
		margin: 0 25px 0 0;
	}

	.memberFootprint li .infoImg {
		margin: 0 auto 15px;
	}

	.memberFootprint .readerLeave {
		margin-top: 10px;
		padding: 20px 0;
	}

	.readerLeave .more {
		text-align: center;
	}

	.submitArticle .attachmentsFile input.text {
		width: 80%;
	}

}


/*======================================================
  magazine calendar greetcard sponsor
======================================================*/
.magazine .btnStyle {
	margin: 0 auto;
	width: 88%;
}

.timesList a.img {
	width: 150px;
	float: left;
}

.timesList img {
	width: 150px;
	height: 234px;
}

.calendar .sub {
	text-align: center;
}

.greetcardLIst .inner,
.timesList .inner {
	max-width: 1660px;
}

.greetcardLIst ul {
	margin-left: -30px;
}

.greetcardLIst li {
	padding: 0 0 40px 30px;
}

.timesList li {
	width: 30%;
	padding: 30px;
	margin: 25px;
	background-color: #F2F2F2;
}

.greetcardLIst li .img {
	margin-bottom: 15px;
}

.timesList li .times-detail {
	float: left;
	padding-left: 30px;
	width: calc(100% - 150px);
}

.timesList li .times-detail h3 {
	margin: 0 0 12px 0;
	display: block;
	width: 100%;
	padding-bottom: 6px;
	border-bottom: solid 1px #000000;
}

.timesList li .times-detail .date {
	font-size: 1.2rem;
}

.timesList li .times-detail .text {
	height: 80px;
	word-break: break-all;
}

.timesList li .times-detail .link {
	font-size: 1.3rem;
	font-weight: bold;
}

.greetcardLIst dt {
	float: left;
	margin-right: 30px;
	font-size: 1.2rem;
}

.greetcardLIst dd {
	overflow: hidden;
}

.timesList li .download {
	background-color: #F2E879;
	max-width: 265px;
	height: 40px;
}

.sponsorList .hdL {
	letter-spacing: 0.35em;
	font-family: 'Libre Franklin Black', sans-serif;
}

.sponsor06 li {
	margin: 5px 0;
	width: 16.66%;
}

.sponsorCorporate {
	padding: 80px 20px 90px;
	background: url(../img/sponsor/bg_sponsor.jpg) no-repeat center top #E05E8C;
	background-size: 100%;
	text-align: center;
	color: #fff;
}

.sponsorCorporate .txt {
	margin: 0 auto 50px;
	line-height: 2;
	font-weight: bold;
}

.sponsorCorporate .btnStyle {
	margin: auto;
	max-width: 450px;
}

.sponsorMaterials ul {
	margin-left: -40px;
}

.sponsorMaterials li {
	padding-left: 40px;
}

.sponsorMaterials li a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: #F2F2F2;
	border: 3px solid #111;
	letter-spacing: 0.15em;
	color: #111;
	font-size: 1.4rem;
}

.sponsorMaterials li a:hover {
	opacity: 0.7;
}

.sponsorMaterials p {
	margin: 0;
}

.sponsorMaterials li .sign {
	margin-right: 10px;
	width: 70px;
	height: 70px;
	background-size: 100%;
}

.sponsorMaterials li .sign01 {
	background-image: url(../img/sponsor/ico_material01.png);
}

.sponsorMaterials li .sign02 {
	background-image: url(../img/sponsor/ico_material02.png);
}

.sponsorMaterials li .downLoad {
	margin-top: 3px;
	font-size: 2.4rem;
	font-weight: bold;
}

.twoForm.sponsorIn {
	max-width: 1060px;
}

.twoForm.sponsorStyle {
	max-width: 740px;
}

.useRules {}

.useRules .tit {
	margin: 0 auto 10px;
	letter-spacing: 0.1em;
	font-weight: bold;
}

.useRules .rules {
	padding: 10px 15px;
	overflow-y: scroll;
	height: 190px;
	border: 1px solid #CCCCCC;
}

.useRules .rules p {
	margin: 0 auto 20px;
	line-height: 2;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.calendar .sub {
		text-align: left;
	}

	.greetcardLIst ul {
		margin-left: -10px;
	}

	.greetcardLIst li {
		padding: 0 0 15px 10px;
		width: 50%;
	}

	.timesList li {
		width: calc(100% - 60px);
	}

	.timesList li a.img {
		width: 100%;
	}

	.timesList li .times-detail {
		padding: 30px 0;
		width: 100%;
	}

	.sponsor06 li {
		padding: 0 10px;
		width: 33.33%;
	}
}

@media screen and (min-width: 769px) and (max-width: 1100px) {
	.timesList li {
		width: calc(50% - 30px);
	}
}

/*======================================================
 sorry
======================================================*/
.sorry .oneBox .bg {
	text-align: center;
	background: #FFFFFF;
}

.sorry .oneBox .bg .login a {
	height: 95px;
	max-width: 640px;
	margin: 20px auto;
}

.sorry .oneBox .bg .top-back {
	width: 100%;
}

.sorry .oneBox .bg a.btnStyle.style04 {
	max-width: 260px;
	margin: 60px auto 0;
}

/*** スマホ ***/
@media screen and (max-width: 512px) {

	.sorry .oneBox,
	.sorry .oneBox .bg {
		text-align: left;
	}
}

@media screen and (max-width: 768px) {

	.sorry .oneBox,
	.sorry .oneBox .bg {
		padding: 5px;
		background: #FFFFFF;
		box-shadow: none;
	}

	.sorry .oneBox .bg .login .btnStyle {
		width: 100%;
	}

	.sorry .oneBox .bg .login a {
		height: 70px;
		max-width: 82%;
		margin: 15px auto;
	}

	.sorry .oneBox .bg a.btnStyle.style04 {
		max-width: 67%;
	}
}

/*======================================================
 cart
======================================================*/
.ec-cartRow__contentColumn .back-link {
	margin: 15px;
	width: 180px;
	height: 40px;
	border: 0;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
	font-weight: bold;
	background: #8fbc8f;
	color: #fff;
}

/*======================================================
 about
======================================================*/
.greetingArea.about {
	padding: 80px 0 0;
	background: url(../img/about/bg_about.jpg) no-repeat center top #f06095;
	background-size: 100%;
}

.greetingArea.about .hdM {
	margin-bottom: 25px;
	color: #fff;
}

.greetingArea.about .title {
	line-height: 2;
}

/*.membershipRanks .slide{padding-bottom:70px;}
.membershipRanks .slick-slider{margin-bottom:0;}
.membershipRanks .levelCard p{margin:0;}
.membershipRanks .slide .slick-dots li button:before{
	content:none;
}
.slick-dots li{
	margin: 0 10px;
	width: 15px;
    height: 15px;
	background:#606060;
}
.slick-dots li.slick-active{
	background:#F06094;
}
.membershipRanks .levelCard {
	position:relative;
	overflow:hidden;
	padding:30px 70px;
	margin:0 20px;
	border:2px solid;
    border-radius: 8px;
}
.membershipRanks .levelCard:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	z-index:0;
	width:100%;
	height:180px;
	background:url(../img/common/ico_bg_line.png) center top;
}
.membershipRanks .levelCard img{width:auto;}
.membershipRanks .levelCard .ranksIn{
	position:relative;
	z-index:2;
}
.membershipRanks .levelCard.junior{
	border-color:#48B0C1;
}
.membershipRanks .levelCard.gold{
	border-color:#CEAF30;
}
.membershipRanks .levelCard.premium {
	border-color:#AAAAAA;
}
.levelCard .annual{
	float:left;
	width:63%;
}
.levelCard .card {
	float:right;
    padding: 20px;
	max-width:280px;
	width:35%;
    background: #808080;
    border-radius: 8px;
	text-align:center;
	color:#fff;
}
.levelCard .annual .sign{
	display:block;
	margin-bottom:10px;
	padding-left:60px;
	background-repeat:no-repeat;
	background-position:left center;
	background-size:45px;
	color:#111;
}
.levelCard.junior .annual .sign{
	background-image:url(../img/common/ico_medal_junior.png);
}
.levelCard.gold .annual .sign{
	background-image:url(../img/common/ico_medal_gold.png);
}
.levelCard.premium .annual .sign{
	background-image:url(../img/common/ico_medal_premium.png);
}
.levelCard .annual .sign .tit{
	letter-spacing:0.15em;
	font-size: 2.8rem;
    font-weight: bold;
}
.levelCard .annual .sign .eng{
	letter-spacing:0.25em;
}
.levelCard .annual .fee{
	display:inline-block;
	padding:5px 40px;
	background:#fff;
	box-shadow:3px 3px 0 #ccc;
	font-size:1.4rem;
}
.levelCard .annual .fee:before{
	content:"年会費";
	margin-right:28px;
	letter-spacing:0.2em;
}
.levelCard .annual .fee .num{
	letter-spacing:0.1em;
	font-size:2rem;
}
.levelCard .annual .fee .num:after{
	content:"円";
	margin-left:10px;
	font-size:1.4rem;
}
.levelCard.junior .annual .sign .eng,
.levelCard.junior .annual .fee .num{
	color:#48B0C1;
}
.levelCard.gold .annual .sign .eng,
.levelCard.gold .annual .fee .num{
	color:#CEAF30;
}
.levelCard.premium .annual .sign .eng,
.levelCard.premium .annual .fee .num{
	color:#AAAAAA;
}
.levelCard .card img{
	margin-bottom:10px;
}
.levelCard .card .ship:after{
	content:"000000000";
	margin-left:12px;
}
.levelCard .discount{
	position:relative;
}
.levelCard .discount .privilege{
	margin:-10px 0 0 20px;
}
.levelCard .discount .hdLine{
	display:inline-block;
	margin:0 0 25px;
	padding: 10px 30px;
	background-image: url(../img/common/img_line.png),url(../img/common/img_line.png);
}
.levelCard .discount .txt{
	line-height:1.75;
    font-weight: bold;
}*/

.membership div.step {
	width: 1080px;
	margin: 0 auto;
	display: table;
}

.membership .step div.step-box {
	width: 360px;
	padding: 40px;
	display: table-cell;
	text-align: center;
	position: relative;
}

.membership .step div.step-box img {
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

.membership .step div.step-box p {
	padding-top: 30px;
}

.membership .step div.step-box p.number {
	position: absolute;
	top: -10px;
	left: 70px;
	font-size: 50px;
	line-height: 1;
	color: #FFFFFF;
	background-color: #F06094;
	padding: 10px !important;
	margin: 10px;
	border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
}

.membership .step div.step-box span.big {
	font-size: 2.4rem;
}

.catch {
	padding: 30px;
	font-size: 60px;
	text-align: center;
}

@media screen and (max-width: 1080px) {
	.membership div.step {
		width: 100%;
	}

	.membership .step div.step-box {
		display: block;
		margin: 0 auto;
	}
}

.membershipRanks p {
	margin: 0;
}

.membershipRanks .table01 {
	width: 100%
}

.membershipRanks table {
	width: 100%;
	border: 1px solid #B7B8BA;
}

.membershipRanks th {
	padding: 18px 10px;
	background: #F2F2F2;
	border: 1px solid #B7B8BA;
	text-align: left;
	font-weight: bold;
	width: 200px;
}

.membershipRanks thead th {
	background: #FFFFFF;
}

.membershipRanks td {
	padding: 16px 20px;
	border: 1px solid #B7B8BA;
	text-align: center;
}

.membershipRanks tbody th {
	width: 310px;
}

.membershipRanks thead th:first-child {
	background: url(../img/about/img_table_th.png) no-repeat center;
	background-size: 100% 100%;
}

.membershipRanks th.level {
	text-align: center;
}

.membershipRanks th.level .sign {
	display: inline-block;
}

.membershipRanks .level .sign {
	padding: 5px 0 5px 60px;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 45px;
	text-align: left;
	color: #111;
}

.membershipRanks th.level.gold {
	background-color: #F5F0D9;
}

.membershipRanks th.level.junior {
	background-color: #EBF5F5;
}

.membershipRanks .level.gold .sign {
	background-image: url(../img/common/ico_medal_gold.png);
}

.membershipRanks .level.junior .sign {
	background-image: url(../img/common/ico_medal_junior.png);
}

.membershipRanks .level.premium .sign {
	background-image: url(../img/common/ico_medal_premium.png);
	min-height: 60px;
}

.membershipRanks .level .sign .tit {
	letter-spacing: 0.15em;
	font-size: 2.2rem;
	font-weight: bold;
}

.membershipRanks .level .sign .tit .small {
	font-size: 1.6rem;
}

.membershipRanks .level .sign .eng {
	letter-spacing: 0.25em;
	font-size: 1.3rem;
}

.membershipRanks .level.gold .sign .eng {
	color: #B5981D;
}

.membershipRanks .level.junior .sign .eng {
	color: #208EA0;
}

.registProcedure li,
.howToUse li {
	position: relative;
	padding: 30px 30px 30px 195px;
	min-height: 170px;
	background: #f2f2f2;
}

.howToUse li {
	padding-right: 140px;
	min-height: 215px;
}

.registProcedure li+li,
.howToUse li+li {
	margin-top: 40px;
}

.registProcedure li p,
.howToUse li p {
	margin: 0;
}

.registProcedure li .step,
.howToUse li .step {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 20px;
	top: -10px;
	width: 160px;
	height: 170px;
	text-align: center;
	letter-spacing: 0.1em;
	font-size: 1.8rem;
}

.howToUse li .icon-ticket {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 0;
	top: 0;
	text-align: center;
	letter-spacing: 0.1em;
	font-size: 1.8rem;
	min-height: 215px;
	min-width: 200px;
}

.registProcedure li .step:before,
.howToUse li .step:before {
	content: "";
	position: absolute;
	left: -6px;
	top: 0;
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-right: 6px solid #913A5D;
}

.registProcedure li:nth-of-type(6) .step:before {
	border-right-color: #AFA55A;
}

.registProcedure li .step:after,
.howToUse li .step:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-bottom: 10px solid #f2f2f2;
	border-left: 80px solid transparent;
	border-right: 80px solid transparent;
}

.registProcedure li .step .num:before,
.howToUse li .step .num:before {
	content: "STEP";
	display: block;
	letter-spacing: 0.3em;
	font-size: 1.9rem;
}

.registProcedure li:nth-of-type(1) .step,
.howToUse li .step {
	background: #F489AF;
	color: #fff;
}

.registProcedure li:nth-of-type(2) .step {
	background: #F06094;
	color: #fff;
}

.registProcedure li:nth-of-type(3) .step,
.registProcedure li:nth-of-type(4) .step,
.registProcedure li:nth-of-type(5) .step {
	background: #EE4A86;
	color: #fff;
}

.registProcedure li:nth-of-type(6) .step {
	background: #F2E879;
}

.registProcedure li .tit,
.howToUse li .tit {
	margin-bottom: 15px;
	font-size: 1.8rem;
	font-weight: bold;
}

.registProcedure li .txt,
.howToUse li .txt {
	line-height: 2;
}

.registProcedure li .toRegist {
	text-align: right;
}

.registProcedure li .toRegist a {
	display: inline-block;
	width: 350px;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	border-bottom: 4px solid #E6CA00;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.membershipRanks .table01 {
		overflow-x: scroll;
	}

	.membershipRanks .table01 table {
		width: 520px;
	}

	.membershipRanks tbody th {
		width: 125px;
	}

	.membershipRanks th {
		padding: 10px;
		font-size: 1.4rem;
	}

	.membershipRanks .level .sign {
		padding: 0 0 0 40px;
		background-size: 30px;
	}

	.membershipRanks .level .sign .tit {
		font-size: 1.5rem;
	}

	.membershipRanks .level .sign .eng {
		font-size: 1rem;
	}

	.registProcedure li,
	.howToUse li {
		padding: 50px 10px 15px 10px;
	}

	.registProcedure li+li,
	.howToUse li+li {
		margin-top: 20px;
	}

	.registProcedure li .step,
	.howToUse li .step {
		left: 10px;
		top: -5px;
		width: 80px;
		height: 50px;
		font-size: 1rem;
	}

	.howToUse li .icon-ticket {
		position: static;
		margin-top: 10px;
	}

	.registProcedure li .step:after,
	.howToUse li .step:after {
		border-bottom: 5px solid #f2f2f2;
		border-left: 40px solid transparent;
		border-right: 40px solid transparent;
	}

	.registProcedure li .step .num:before,
	.howToUse li .step .num:before {
		display: inline-block;
		margin-right: 3px;
		font-size: 1.1rem;
	}

	.registProcedure li .tit,
	.howToUse li .tit {
		margin-bottom: 5px;
		font-size: 1.6rem;
	}

	.registProcedure li .toRegist {
		padding-top: 1em;
		text-align: center;
	}

	.registProcedure li .toRegist a {
		width: 90%;
		border-bottom: 0;
	}
}


/*======================================================
terms  privacy_policy law  faq
======================================================*/
.termsList {}

.termsList li {
	padding: 30px 0;
	border-bottom: 1px solid #ccc;
}

.termsList li p {
	margin: 0;
	line-height: 1.75;
}

.termsList li .tit {
	margin-bottom: 15px;
	letter-spacing: 0.2em;
	font-size: 2.2rem;
	font-weight: bold;
}

.aboutPolicy .serialNumber {
	counter-reset: serial;
}

.aboutPolicy .serialNumber li {
	padding-left: 40px;
}

.aboutPolicy .serialNumber li .tit {
	position: relative;
}

.aboutPolicy .serialNumber li .tit:before {
	content: counter(serial);
	counter-increment: serial;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
	transform: translateX(-100%);
	width: 40px;
}

.faqList li {
	padding: 0 20px 20px;
	margin-bottom: 15px;
	background: #f2f2f2;
	box-shadow: 3px 3px 0 #ccc;
}

.faqList li p {
	position: relative;
	margin: 0;
}

.faqList li p:before {
	content: "";
	position: absolute;
	font-family: 'Libre Franklin Black', sans-serif;
}

.faqList li .quest:before {
	content: "Q";
	top: 10px;
	left: 0;
	color: #34373E;
	font-size: 4.2rem;
}

.faqList li .answer:before {
	content: "A";
	top: 0;
	left: 15px;
	color: #F06094;
	font-size: 3.6rem;
}

.faqList li .quest {
	cursor: pointer;
	padding: 30px 20px 10px 50px;
}

.faqList li .quest.open {
	padding: 30px 20px 30px 50px;
}

.faqList li .quest:after {
	content: "";
	position: absolute;
	right: 0;
	top: calc(50%);
	width: 16px;
	height: 10px;
	background: url(../img/common/ico_arr_down_black.png) no-repeat center;
	background-size: 100%;
}

.faqList li .quest.open:after {
	transform: rotate(180deg);
}

.faqList li .answer {
	display: none;
	padding: 15px 15px 15px 60px;
	background: #fff;
	line-height: 1.8;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.termsList li {
		padding: 15px 0;
		border-bottom: 1px solid #ccc;
	}

	.termsList li .tit {
		margin-bottom: 8px;
		letter-spacing: 0.08em;
		font-size: 1.4rem;
	}

	.aboutPolicy .serialNumber li {
		padding-left: 0px;
	}

	.aboutPolicy .serialNumber li .tit:before {
		position: static;
		transform: translateX(0%);
		width: 20px;
	}

	.faqList li {
		padding: 0 15px 20px;
		margin-bottom: 10px;
	}

	.faqList li .quest {
		padding: 20px 24px 0 35px;
	}

	.faqList li .quest.open {
		padding: 20px 24px 20px 35px;
	}

	.faqList li .quest:before {
		font-size: 2.7rem;
	}

	.faqList li .answer {
		padding: 10px 15px;
	}

	.faqList li .answer:before {
		position: static;
		display: block;
		font-size: 2.7rem;
	}

}

.cartTotal .contactTitle {
	font-size: 1.4rem;
	border-bottom: 1px dashed #aaa;
	text-align: center;
	padding: 8px 0;
}

.cartTotal .contactSide {
	font-size: 1.2rem;
	text-align: center;
	padding: 15px 0;
}

.cartTotal .contactSide p {
	margin: 0;
}

.cartTotal .contactTel {
	font-size: 1.4rem;
	margin-bottom: 8px !important;
}

.cartTotal .contactTel span {
	font-size: 2rem;
}

.mailBtn {
	margin-bottom: 20px;
}

.mailBtn a {
	border: 1px solid #000;
	background: #F2F2F2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 60px;
	box-sizing: border-box;
	color: #000;
	font-size: 1.4rem;
}

.mailBtn a:hover {
	opacity: .7;
}

.loginOut a {
	background: url("../img/common/bg_loginout.png") center center no-repeat;
	background-size: 100% 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 60px;
	box-sizing: border-box;
	color: #000;
	font-size: 1.4rem;
	font-weight: bold;
}

.loginOut a:hover {
	opacity: .7;
}

.detailSlider {
	max-width: 800px;
	margin: 0 auto;
}

.detailSlider .slick-arrow {
	width: 40px;
	height: 59px;
}

.detailSlider .slick-prev {
	background: url("../img/common/prev.png") center center no-repeat;
	background-size: 100%;
	left: -100px;
}

.detailSlider .slick-next {
	background: url("../img/common/next.png") center center no-repeat;
	background-size: 100%;
	right: -100px;
}

.detailCtrl {
	max-width: 776px;
	margin: 40px auto 0;
	position: relative;
}

.detailCtrl .allList {
	width: 33.4%;
	margin: 0 auto;
}

.detailCtrl .allList a span:first-child:before {
	display: inline-block;
	background: url("../img/common/ico_list.png") center center no-repeat;
	background-size: 100%;
	width: 11px;
	height: 11px;
	vertical-align: middle;
	margin-right: 10px;
	content: '';
}

.detailCtrl .allList a:hover span:first-child:before {
	background: url("../img/common/ico_list_hover.png") center center no-repeat;
	background-size: 100%;
}

.detailCtrl .back a span:first-child:before {
	display: inline-block;
	background: url("../img/common/ico_prev.png") center center no-repeat;
	background-size: 100%;
	width: 7px;
	height: 11px;
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	content: '';
}

.detailCtrl .back a:hover span:first-child:before {
	background: url("../img/common/ico_prev_hover.png") center center no-repeat;
	background-size: 100%;
}

.detailCtrl .next a span:first-child:before {
	display: inline-block;
	background: url("../img/common/ico_next.png") center center no-repeat;
	background-size: 100%;
	width: 7px;
	height: 11px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	content: '';
}

.detailCtrl .next a:hover span:first-child:before {
	background: url("../img/common/ico_next_hover.png") center center no-repeat;
	background-size: 100%;
}

.detailCtrl a {
	width: 100% !important;
}

.detailCtrl .back {
	position: absolute;
	left: 0;
	top: 0;
	width: calc(33.3% + 1px);
	height: 100%;
	z-index: 2;
}

.detailCtrl .next {
	position: absolute;
	right: 0;
	top: 0;
	width: calc(33.3% + 1px);
	height: 100%;
	z-index: 2;
}

.conpetBtn {
	border-bottom: 1px dashed #4d4d4d;
	padding-bottom: 28px;
	cursor: pointer;
	font-size: 1.4rem;
	font-weight: bold;
	padding-left: 30px;
	background: url("../img/common/ico_message.png") 0 0 no-repeat;
	background-size: 23px auto;
}

.detailStyle .inputForm {
	padding: 100px 0 0;
}

.detailStyle .submitArticle {
	max-width: 100%;
}

.detailStyle .memberFootprint {
	padding: 0 40px;
}

.conmentFrom {
	border-bottom: 1px dashed #4d4d4d;
}

.detailStyle .memberFootprint .memberHead .head {
	width: 50px;
	height: 50px;
	line-height: 50px;
}

.detailStyle .memberFootprint .memberHead .head img {
	height: 40px;
	width: auto;
}

div.calendar iframe {
	width: 800px;
}

.ec-cartRole {
	padding: 20px;
}

.iframeLink16x9 {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin-bottom: 10px;
}

.iframeLink16x9 iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.detailSlider {
		padding: 0 20px;
	}

	.detailSlider .slick-arrow {
		width: 20px;
		height: 30px;
	}

	.detailSlider .slick-prev {
		left: -10px;
	}

	.detailSlider .slick-next {
		right: -10px;
	}

	.conpetBtn {
		padding-bottom: 15px;
	}

	.detailStyle .memberFootprint {
		padding: 0;
	}

	div.calendar iframe {
		width: 320px;
	}

	.ec-cartRole {
		padding-left: 10px;
		padding-right: 10px;
	}
}

/*======================================================
 new community
======================================================*/
#suggest {
	position: absolute;
	background-color: #FFFFFF;
	border: 1px solid #CCCCFF;
	font-size: 90%;
	width: 200px;
}

#suggest div {
	display: block;
	width: 200px;
	overflow: hidden;
	white-space: nowrap;
}

#suggest div.select {
	/* キー上下で選択した場合のスタイル */
	color: #FFFFFF;
	background-color: #3366FF;
}

#suggest div.over {
	/* マウスオーバ時のスタイル */
	background-color: #99CCFF;
}

.hashtag-box {
	border: 2px solid #F06094;
	border-radius: 4px;
	margin: 2em 0;
	padding: 0em;
	position: relative;
	width: 80%;
	max-width: 480px;
	text-align: center;
	margin: auto;
	font-weight: bold;
}

.hashtag-box::before {
	background-color: #fff;
	color: #F06094;
	content: "よく使われているハッシュタグ";
	font-weight: bold;
	left: 1.7em;
	padding: 0 .5em;
	position: absolute;
	top: -1em;
	font-size: 0.8em;
}

.hashtag-box dd {
	margin: 10px;
}

.community_post {
	color: #fff;
}

.community_post:hover {
	color: #fff;
}

.community_post:visited {
	color: #fff !important;
}

.community_post:active {
	color: #fff !important;
}

.community_post:focus {
	color: #fff !important;
}

.submitArticle .subBtn:after {
	content: none !important;
}

.community-search-box {
	width: 85%;
	max-width: 480px;
	margin: auto;
}

#community_file_text {
	width: 100%;
}

#community_contents {
	width: 100%;
}

#community_hash_tag {
	width: 100%;
}

.liked_member {
	position: absolute;
	left: 50px;
}

.liked_list_title {
	border-bottom: 1px solid;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 10px;
}

.like_loading {
	margin-left: 25px;
	vertical-align: middle;
}

.hashtag_list {
	font-weight: bold;
	margin-left: 25px;
}

.girlTitle .communityAdorn {
	margin: auto;
	line-height: 1.5;
	letter-spacing: 0.45em;
	font-size: 2.6rem;
	font-weight: bold;
	width: 80%;
}

#search_word {
	color: #F06094;
	font-weight: bold;
	font-size: 2.6rem;
}

.fwb {
	font-weight: bold;
}

#community_form .note {
	color: #F06094;
	font-size: 1.2rem;
	font-weight: bold;
}

/* カードレイアウト部分をラッピングし、
Flexboxを指定"space-between"で各アイテムを均等に配置し、
最初と最後のアイテムを端に寄せます。*/
#cardlayout-wrap {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	margin: 0.5em auto;
	max-width: 960px;
	width: 100%;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	justify-content: space-between;
}

/* リンクテキストの下線を非表示 */
a.card-link {
	text-decoration: none;
}

/* カードレイアウト内の画像を幅いっぱいに表示 */
#cardlayout-wrap img {
	display: block;
	width: 100%;
	height: 200px;
	margin: auto;
	object-fit: cover;
}

.card-figure {
	margin: 0;
	padding: 0;
}

/* カードレイアウトのタイトル部分 */
.card-title {
	margin: 0.6em 0 0;
	color: #333;
	text-align: center;
	font-size: 1.8em;
}

/* カードレイアウトの説明文部分 */
.card-text-tax {
	margin: 0;
	padding: 1em;
	color: #818181;
}

/* カードレイアウトを1カラムで配置 */
.card-list {
	margin: 0.5em auto;
	padding: 0;
	width: 96%;
}

/* 画面幅768px以上の場合カードレイアウトを2カラムで配置 */
@media all and (min-width: 768px) {
	.card-list {
		margin: 0.5em 0;
		width: calc(96% / 2);
		/* 96%幅を2で割るという指定 */
	}
}

/* 画面幅992px以上の場合カードレイアウトを3カラムで配置 */
@media all and (min-width: 992px) {
	.card-list {
		width: calc(96% / 3);
		/* 96%幅を3で割るという指定 */
	}

	/* 最後の行が3列より少ない場合左寄せにレイアウトさせる */
	#cardlayout-wrap::after {
		content: "";
		display: block;
		width: calc(96% / 3);
	}
}

.newsList {
	border-top: dotted 2px #F06094;
	padding: 30px 0 25px;
	border-bottom: dotted 2px #F06094;
}

/*** スマホ ***/
@media screen and (max-width: 768px) {
	.girlTitle .communityAdorn {
		font-size: 1.3rem;
	}

	.hashtag_list {
		margin-left: 0px;
	}

	.like_loading {
		margin-left: 0px;
	}

	#search_word {
		font-size: 1.5rem;
	}
}

/* 新規会員登録 */
.bgLineSex {
	background: url(/html/template/victorina/assets/project/img/common/ico_bg_line.png) center;
	color: #000;
}