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

/*** リセット ***/
* {
	margin : 0;
	padding: 0;
}

body,
input,
select,
textarea {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}

body {
	font-size: 13.5px;
	width    : 100%;
	color    : #555;

}

ul,
ol {
	list-style: none;
}

a,
img {
	list-style     : none;
	text-decoration: none;
	border         : none;
	border-style   : none;
}

img {
	max-width     : 100%;
	vertical-align: middle;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
	display: block;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
	margin: 0px\9;
}




/*** クリアフィックス ***/
.clearfix:after {
	content   : ".";
	display   : block;
	height    : 0;
	clear     : both;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

/* End Hack */

/*** ベースＣＳＳ ***/
.clear {
	clear: both;
}

.bold {
	font-weight: 600;
}

.red {
	color: #f00;
}

.blue {
	color: #437de9;
}

.line {
	text-decoration: underline;
}

.fl_l {
	float: left;
}

.fl_r {
	float: right;
}

.al_l {
	text-align: left;
}

.al_c {
	text-align: center;
}

.al_r {
	text-align: right;
}

.mg_c {
	margin-left : auto;
	margin-right: auto;
}

.ml_a {
	margin-left: auto;
}

.mr_a {
	margin-right: auto;
}

.fs12 {
	font-size: 12px;
}

.fs14 {
	font-size: 14px;
}

/*-----------margin---------*/
.mt0 {
	margin-top: 0px;
}

.mt5 {
	margin-top: 5px;
}

.mt10 {
	margin-top: 10px;
}

.mt15 {
	margin-top: 15px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}

.mt40 {
	margin-top: 40px;
}

.mt50 {
	margin-top: 50px;
}

.mb0 {
	margin-bottom: 0px;
}

.mb5 {
	margin-bottom: 5px;
}

.mb10 {
	margin-bottom: 10px;
}

.mb15 {
	margin-bottom: 15px;
}

.mb20 {
	margin-bottom: 20px;
}

.mb25 {
	margin-bottom: 25px;
}

.mb30 {
	margin-bottom: 30px;
}

.mb35 {
	margin-bottom: 35px;
}

.mb40 {
	margin-bottom: 40px;
}

.mb50 {
	margin-bottom: 50px;
}

.ml0 {
	margin-left: 0px;
}

.ml5 {
	margin-left: 5px;
}

.ml10 {
	margin-left: 10px;
}

.ml15 {
	margin-left: 15px;
}

.ml20 {
	margin-left: 20px;
}

.ml30 {
	margin-left: 30px;
}

.ml40 {
	margin-left: 40px;
}

.ml50 {
	margin-left: 50px;
}

.mr0 {
	margin-right: 0px;
}

.mr5 {
	margin-right: 5px;
}

.mr10 {
	margin-right: 10px;
}

.mr15 {
	margin-right: 15px;
}

.mr20 {
	margin-right: 20px;
}

.mr30 {
	margin-right: 30px;
}

.mr40 {
	margin-right: 40px;
}

.mr50 {
	margin-right: 50px;
}


/*** 全体 ***/
a {
	color: #3131ac;
}

a:hover {
	color: #f00;
}

h1,
h2,
h3,
h4 {
	font-size  : 18px;
	line-height: 1;
}

h5,
h6 {
	font-size: 14px;
}

h2 {
	color           : #fff;
	font-weight     : 400;
	text-align      : center;
	line-height     : 2em;
	background-color: #c5bebe;
}

hr {
	margin      : 6px 0;
	border-width: 1px 0 0;
	border-style: solid;
	border-color: #ccc;
}



input[type="submit"] {
	display: block;
	margin : 0 auto;
	padding: 8px 0;

	width                : 80%;
	color                : #fff;
	font-size            : 14px;
	background-color     : #22b7bf;
	border               : 0px none;
	-webkit-border-radius: 40px;
	border-radius        : 40px;
	-webkit-appearance   : none;
	cursor               : pointer;
}

a.btn {
	display              : block;
	margin               : 0 auto;
	padding              : 10px 0;
	width                : 75%;
	color                : #fff;
	font-size            : 1.33em;
	text-align           : center;
	text-decoration      : none;
	background-color     : #ff0066;
	border               : 0px none;
	-webkit-border-radius: 5px;
	border-radius        : 5px;
}

DIV#main h3 {
	margin-bottom: 10px;
	padding      : 6px;
	color        : #fff;
	font-weight  : 500;
	background   : -moz-linear-gradient(left, #ff6699 40%, #FFC778);
	background   : -webkit-linear-gradient(left, #ff6699 40%, #FFC778);
	background   : linear-gradient(to right, #ff6699 40%, #FFC778);
}

.policy {
	margin-bottom: 1em;
	padding      : 1em;
}

.policy p {
	padding-left: 1em;
	line-height : 150%;
	text-indent : -1em;
}

.policy h2 {
	margin     : 10px 5px 5px;
	padding    : 5px 0;
	font-size  : 0.88em;
	font-weight: 600;
}

.error {
	color: #f00;
}

/*** ヘッダ ***/
header {
	padding         : 0px;
	/*max-height    : 180px;*/
	background-color: #fff;
}

header img {
	max-width: 100%;

}

DIV#header {
	position        : relative;
	padding         : 0px;
	min-height      : 50px;
	text-align      : center;
	background-color: #22b7bf;

}

DIV#header img {
	text-align : center;
	height     : 30px;
	padding-top: 10px;
}

/* ログイン後-ヘッダナビ */
#header-navi {
	display         : none;
	position        : absolute;
	top             : 50px;
	left            : 0;
	width           : 100%;
	background-color: #fff;
	opacity         : 0.9;
	filter          : alpha(opacity=90);
	z-index         : 9999;
}

#header-navi ul {
	border-bottom: 2px solid #999;
}

#header-navi li {}

#header-navi li a {
	display        : block;
	padding        : 10px 20px;
	color          : #333;
	text-decoration: none;
	border-bottom  : 1px dotted #ccc;
}

#header-navi li a.active {
	color           : #fff;
	background-color: #999;
}

#header-navi li:last-child a {
	border-bottom: 0px none;
}

a#burger {
	position : absolute;
	right    : 10px;
	font-size: 2.5em;
	color    : #ffffff;
}

/*** フッタ ***/
footer {
	padding         : 3%;
	color           : #333;
	font-size       : 0.85em;
	line-height     : 1.5;
	text-align      : left;
	background-color: #fff;

}

footer a {
	display: inline-block;
	margin : 0.1em 2%;
	padding: 2px 0;

	color     : #333;
	text-align: left;

}

footer #copy {}

/*** ログイン前 ***/
/* トップページ（index） */
p.top_notice {
	padding         : 7px;
	font-size       : 0.88em;
	text-align      : center;
	background-color: #fff;
}

p.top_notice span {
	color      : #c96;
	font-size  : 1.4em;
	font-weight: 600;
}

#index_image {
	padding         : 1.5em;
	font-size       : 1.5em;
	text-align      : right;
	background-image: url("/freespace/img/sp/top_pattern.png");
}

/* ログイン */
div#top_login {
	text-align: center;
	font-size : 13px;

}

div#top_login2 {
	text-align: center;
	font-size : 13px;

}

div#top_loginfont {
	text-align   : center;
	font-size    : 9px;
	margin-top   : 5px;
	margin-bottom: 5px;

}



/* メールで登録 */
div#top_regist {

	text-align: center;
	font-size : 12px;

}

/*form css*/
.cp_iptxt {
	position  : relative;
	width     : 80%;
	margin    : 10px 10%;
	text-align: center;
}

.cp_iptxt input[type='text'] {
	font          : 15px/24px sans-serif;
	box-sizing    : border-box;
	width         : 100%;
	padding       : 0.3em;
	padding-left  : 40px;
	letter-spacing: 1px;
	border        : 0;
}

.cp_iptxt input[type='text']:focus {
	outline: none;
}

.cp_iptxt input[type='text']:focus::after {
	outline: none;
}

.cp_iptxt i {
	position  : absolute;
	top       : 0;
	left      : 0;
	padding   : 9px 5px;
	transition: 0.3s;
	color     : #aaaaaa;
}

.cp_iptxt::after {
	display     : block;
	width       : 100%;
	height      : 4px;
	margin-top  : -1px;
	content     : '';
	border-width: 0 1px 1px 1px;
	border-style: solid;
	border-color: #da3c41;
}


/*form css end*/


div#top_regist ul {
	overflow: hidden;
}

div#top_regist li {
	display   : inline-block;
	width     : 50%;
	text-align: center;
	float     : left;
}

div#top_regist li img {
	width: 96%;
}

div#top_regist div {
	margin   : 10px;
	font-size: 0.8em;
}

div#top_regist div a {
	text-decoration: underline;
}



/* サイト紹介 */
div#top_intro {}

div#top_intro ul {
	margin: 10px;
}

div#top_intro li:first-child {
	display: table-cell;
	width  : 35%;
}

div#top_intro li:first-child img {
	width                : 90%;
	-webkit-border-radius: 10px;
	border-radius        : 10px;
}

div#top_intro li:last-child {
	display       : table-cell;
	width         : 65%;
	font-size     : 0.9em;
	vertical-align: top;
}

/* 登録しているユーザー */
.slick-slide a {
	display: block;
}

/* お試し検索 (/guest/findprofile/form.jsp) */
#top_search_trial form {
	text-align: left;
}

#top_search_trial form div.gender {
	margin: 10px 0;
}

#top_search_trial form select {
	font-size: 13px;
}

#top_search_trial form .profile div {
	margin-bottom: 10px;
}

#top_search_trial form span {
	display   : inline-block;
	width     : 4em;
	text-align: left;
}

/*form css*/
/* ===== Horizontal Rule ===== */
.rule {
	margin          : 10px 0;
	border          : none;
	height          : 1.5px;
	background-image: linear-gradient(left, #f0f0f0, #c9bbae, #f0f0f0);
}

/* ===== Select Box ===== */
.sel {
	font-size       : 15px;
	display         : inline-block;
	margin          : 10px 30px;
	width           : 80%;
	background-color: transparent;
	position        : relative;
	cursor          : pointer;
}

.sel::before {
	position   : absolute;
	content    : '\f063';
	font-family: 'FontAwesome';
	font-size  : 15px;
	color      : #FFF;
	right      : 50px;
	top        : calc(50% - 0.5em);
}

.sel.active::before {
	transform: rotateX(-180deg);
}

.sel__placeholder {
	display       : block;
	font-family   : 'Quicksand';
	font-size     : 15px;
	color         : #838e95;
	padding       : 0.1em 0.5em;
	text-align    : left;
	pointer-events: none;
	user-select   : none;
	visibility    : visible;
}

.sel.active .sel__placeholder {
	visibility: hidden;
}

.sel__placeholder::before {
	position  : absolute;
	top       : 0;
	bottom    : 0;
	left      : 0;
	right     : 0;
	padding   : 20px 50px;
	content   : attr(data-placeholder);
	visibility: hidden;
}

.sel.active .sel__placeholder::before {
	visibility: visible;
}

.sel__box {
	position        : absolute;
	top             : calc(100% + 4px);
	left            : -4px;
	display         : none;
	list-style-type : none;
	text-align      : left;
	font-size       : 15px;
	background-color: #FFF;
	width           : calc(100% + 8px);
	box-sizing      : border-box;
}

.sel.active .sel__box {
	display  : block;
	animation: fadeInUp 500ms;
}

.sel__box__options {
	display    : list-item;
	font-family: 'Quicksand';
	font-size  : 15px;
	color      : #838e95;
	padding    : 0.5em 1em;
	user-select: none;
}

.sel__box__options::after {
	content    : '\f00c';
	font-family: 'FontAwesome';
	font-size  : 0.5em;
	margin-left: 5px;
	display    : none;
}

.sel__box__options.selected::after {
	display: inline;
}

.sel__box__options:hover {
	background-color: #ebedef;
}

/* ----- Select Box Black Panther ----- */
.sel {
	border-bottom: 4px solid rgba(0, 0, 0, 0.3);
}

.sel--black-panther {
	z-index: 3;
}

/* ----- Select Box Superman ----- */
.sel--superman {
	/*   display: none; */
	z-index: 2;
}

/* ===== Keyframes ===== */
@keyframes fadeInUp {
	from {
		opacity  : 0;
		transform: translate3d(0, 20px, 0);
	}

	to {
		opacity  : 1;
		transform: none;
	}
}

@keyframes fadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

/*form css*/






#top_search_trial form input[type="submit"] {
	margin-bottom: 10px;
	width        : 80%;
}

/* サイトで登録 */
div#top_web_regist {
	padding-bottom: 20px;
	text-align    : center;
}

/*** お試し検索→検索結果 (/guest/findprofile/result.jsp) ***/
ul.profile_search_result {}

ul.profile_search_result>li {
	margin-bottom: 5px;
	padding      : 10px 10px 15px;
	border-bottom: 1px solid #ccc;
}

div.profileImage {
	width: 25%;
	float: left;
}

div.profileImage img {
	margin: 0 auto;
	width : 83%;
	border: 1px solid #ccc;
}

div.profile_detail {
	width    : 75%;
	font-size: 0.9em;
	float    : left;
}

.profile_detail li span {
	padding-right: 2em;
	color        : #f36;
	font-weight  : 600;
}

/*** お試し検索→検索結果詳細 (/guest/profile/view.jsp) ***/
div.profile_detail_view {
	padding: 10px 10px 15px;
}

div.profile_detail_view div.left {
	margin-right: 10px;
	float       : left;
}

div.profile_detail_view div.right {
	float: left;
}

div.profile_detail_view div.right p {
	margin   : 3px 0;
	font-size: 0.88em;
}

div.profile_detail_view div.right p:first-child {
	margin-top: 0;
}

div.profile_detail_view div.right p span {
	font-size: 16px;
}

div.profile_detail_view div.intro {
	position             : relative;
	margin-top           : 15px;
	padding              : 8px;
	font-size            : 0.88em;
	background-color     : #ffc;
	border               : 1px solid #ccc;
	-webkit-border-radius: 10px;
	border-radius        : 10px;
}

div.profile_detail_view div.intro:before {
	content      : "";
	position     : absolute;
	top          : -23px;
	left         : 8%;
	border       : 12px solid transparent;
	border-bottom: 12px solid #ffc;
	z-index      : 100;
}

div.profile_detail_view div.intro:after {
	content      : "";
	position     : absolute;
	top          : -24px;
	left         : 8%;
	border       : 12px solid transparent;
	border-bottom: 12px solid #ccc;
	z-index      : 50;
}

.prof_login {
	padding      : 10px;
	text-align   : center;
	border-bottom: 1px solid #ccc;
}

.prof_login input[type="text"],
.prof_login input[type="password"] {
	margin-bottom: 10px;
	padding      : 5px;
	width        : 80%;
	height       : 25px;
}

.prof_login input[type="submit"] {
	margin-top: 10px;
	width     : 80%;
	font-size : 16px;
}

.prof_login a {
	display        : block;
	margin         : 15px 0px;
	text-decoration: underline;
}


/*** ログイン後 ***/
/* メニュー - 非表示 */
#menu_area {
	display: none;
}

#menu_area ul {
	display        : table;
	width          : 100%;
	vertical-align : middle;
	box-sizing     : border-box;
	border-collapse: separate;
	border-spacing : 0 0;
	table-layout   : fixed;
	text-align     : center;
}

#menu_area li {
	display: table-cell;
}

/** 共通 **/
#wrap {
	margin: 1em;
}

p.not_found {
	margin    : 10px 0;
	text-align: center;
}

.favorite {
	margin    : 10px auto;
	text-align: center;
}

.favorite a {
	display              : inline-block;
	padding              : 5px 0;
	width                : 50%;
	color                : #fff;
	background-color     : #999;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

.favorite span {
	color: #f00;
}

ul.error {
	display: inline-block;
}

ul.error li {
	padding  : 5px;
	font-size: 80%;
}

/* トップへ戻る */
.back_link {
	margin: 20px 0;
}

.back_link a {
	width: 50%;
}

.back_link .btn_01 {
	padding: 10px;
	height : 25px;
}

/* ページャー */
div.pager {
	margin    : 25px auto;
	text-align: center;
	font-size : 9px;
}

div.pager p {
	display: inline-block;
}

div.pager p a {
	padding         : 8px 7px;
	color           : #fff;
	background-color: #666;
}

div.pager a.current {
	background-color: #69c;
}

/** メール送信（共通 / INCLUDE用）(/common/mail_form.jsp) **/
form.mail-form {
	padding: 10px;
}

form.mail-form div {
	margin: 0 0 10px;
}

form.mail-form div p {
	font-size: 0.88em;
}

form.mail-form input[type="text"] {
	width: 70%;
}

form.mail-form textarea {
	width : 98%;
	height: 8em;
}

form.mail-form input[type="submit"] {
	width           : 80%;
	background-color: #777;
}

/** 送信完了(sendmail/finish) **/
p.sent {
	text-align: center;
}


/* マイページ-トップ */
#mypage_area {}

.user_area {
	margin               : 10px;
	padding              : 10px 15px;
	background-color     : #fff;
	border               : 2px solid #ccc;
	-webkit-border-radius: 5px;
	border-radius        : 5px;
}

.user_area span {
	padding: 0 5px;
	color  : #999;
}

.user_area span:first-child {
	padding: 0 5px 0 0;
}

.mail_area {
	display        : table;
	margin         : 12px auto;
	width          : 100%;
	border-collapse: separate;
	border-spacing : 3px 0;
	box-sizing     : border-box;
	table-layout   : fixed;
	vertical-align : middle;
}

.mail_area li {
	display: table-cell;
}

.mail_area li a {
	display         : block;
	padding         : 3px 0;
	font-size       : 0.8em;
	text-align      : center;
	background-color: #fff;
	border          : 1px solid #ccc;
}

ul.new_mail_area {
	overflow: hidden;
}

ul.new_mail_area li {
	padding : 2%;
	overflow: hidden;
}

ul.new_mail_area li a.btn {
	display       : inline-block;
	margin-left   : 0.5em;
	padding       : 0px;
	width         : 20%;
	font-size     : 0.8em;
	line-height   : 1.6em;
	vertical-align: top;
}

.profile_area {
	display        : table;
	margin         : 10px auto;
	width          : 100%;
	border-collapse: separate;
	border-spacing : 10px 0;
	box-sizing     : border-box;
	table-layout   : fixed;
	vertical-align : middle;
}

.profile_area li {
	display: table-cell;
}

.profile_area li a {
	display         : block;
	padding         : 3px 0;
	font-size       : 0.8em;
	text-align      : center;
	background-color: #fff;
	border          : 1px solid #ccc;
}

.bbs_area {
	display        : table;
	margin         : 10px auto;
	width          : 100%;
	border-collapse: separate;
	border-spacing : 10px 0;
	box-sizing     : border-box;
	table-layout   : fixed;
	vertical-align : middle;
}

.bbs_area li {
	display: table-cell;
}

.bbs_area li a {
	display         : block;
	padding         : 3px 0;
	font-size       : 0.8em;
	text-align      : center;
	background-color: #fff;
	border          : 1px solid #ccc;
}

/*** メール一覧(/mailbox/index.jsp) ***/
ul.mail-list li {
	position     : relative;
	padding      : 5px;
	border-bottom: 1px solid #ccc;
}

ul.mail-list li .mail-info {
	font-size: 0.88em;
}

ul.mail-list li .mail-info a {
	display       : inline-block;
	margin-right  : 5px;
	vertical-align: top;
}

ul.mail-list li .mail-info a p.date {
	display     : inline-block;
	margin-right: 10px;
}

ul.mail-list li .mail-info a p.user-name {
	display: inline-block;
}

ul.mail-list li .mail-info a div.mail-title {
	margin: 5px 0 10px 0;
}

ul.mail-list li .mail-info a div.mail-title span {
	color: #f00;
}

ul.mail-list li .mail-info a div.photo {
	position             : absolute;
	top                  : 5px;
	right                : 5px;
	padding              : 3px 5px;
	font-size            : 10px;
	color                : #999;
	background-color     : #fff;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

div.mail-menu {
	margin-top: 6px;
}

div.mail-menu p {
	width: 50%;
	float: left;
}

div.mail-menu p a {
	padding              : 5px 0;
	width                : 90%;
	font-size            : 0.8em;
	background-color     : #808080;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

/*** メール表示(/mailbox/view.jsp) ***/
div.mail-contents {
	margin: 10px;
}

div.mail-contents dl {
	overflow: hidden;
}

div.mail-contents dt {
	padding         : 5px;
	width           : calc(20% - 10px);
	font-size       : 0.88em;
	background-color: #fff;
	float           : left;
}

div.mail-contents dd {
	padding: 5px;
	width  : calc(80% - 10px);
	float  : left;
}

div.mail-contents dd a {
	display: block;
}

div.mail-contents .mail-text {
	padding              : 10px;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

/*** あしあと(/visitor/index.jsp) ***/
ul.visitor-contents li {
	padding      : 10px;
	border-bottom: 1px solid #ccc;
}

ul.visitor-contents .visitor-info>a {
	float       : left;
	margin-right: 10px;
}

ul.visitor-contents .username a {
	display: block;
}

ul.visitor-contents .visitor-menu {
	margin-top: 6px;
}

ul.visitor-contents .visitor-menu p {
	width     : 50%;
	font-size : 0.8em;
	text-align: center;
	float     : left;
}

ul.visitor-contents .visitor-menu p a {
	display              : block;
	margin               : 0 auto;
	padding              : 5px 0;
	width                : 90%;
	color                : #fff;
	text-align           : center;
	background-color     : #808080;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

/*** プロフィール検索(/findprofile/search.jsp) ***/
.search-contents ul {
	margin: 10px;
}

.search-contents li {
	padding-bottom: 20px;
}

.search-contents li span {
	display       : inline-block;
	width         : 4em;
	vertical-align: middle;
}

.search-contents li select {
	display       : inline-block;
	width         : calc(100% - 4em);
	vertical-align: middle;
}

.search-contents input[type="submit"] {
	width: 80%;
}

/*** プロフィール検索（結果）(/findprofile/result.jsp) ***/
ul.search-result {
	margin: 10px;
}

ul.search-result li {
	margin-bottom: 10px;
	border-bottom: 1px solid #ccc;
}

ul.search-result li a.image {
	display     : inline-block;
	margin-right: 10px;
	float       : left;
}

ul.search-result li a.nickname {
	font-size: 13px;
	float    : left;
}

ul.search-result li a.photo {
	display              : inline-block;
	margin               : 6px auto;
	padding              : 5px 0px;
	width                : 50%;
	color                : #fff;
	font-size            : 0.8em;
	text-align           : center;
	background-color     : #808080;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

/*** プロフィール表示(/profile/view.jsp) ***/
div.profile-content {
	margin: 10px;
}

div.profile-content .thum {
	float       : left;
	margin-right: 10px;
}

div.profile-content ul {
	float: left;
	clear: right;
}

div.profile-content ul li {
	padding-right: 1em;
	font-size    : 0.88em;
	border-bottom: 1px solid #fff;
}

div.profile-content ul li div {
	display     : inline-block;
	margin-right: 0.5em;
	padding     : 3px;
	width       : 4.5em;
	background  : #fff;
}

div.profile-content .pr-text {
	padding: 5px;
	clear  : both;
}

div.profile-content .pr-photo a {
	margin               : 10px auto;
	padding              : 5px 0;
	font-size            : inherit;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

/*** 写真表示(/profile/photo.jsp) ***/
div.profile-images .image {
	padding   : 20px 0;
	text-align: center;
	background: #666;
}

div.profile-images .image img {
	max-width: 60%;
}

div.profile-images ul.switch {
	margin: 10px;
}

div.profile-images ul.switch li {
	width: 30%;
	float: left;
}

div.profile-images ul.switch li a {
	width                : 90%;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

/*** お気に入り一覧(favorite/list) ***/
.favorite_num {
	margin          : 2px 0px 15px;
	padding-right   : 1em;
	color           : #fff;
	text-align      : right;
	background-color: #999
}

.favorite_num span {
	font-weight: 600;
}

.favorite_list>ol>li {
	padding      : 10px;
	border-bottom: 1px solid #ccc;
}

.favorite_list li div a {
	vertical-align: top;
}

.favorite_list li ul {
	margin  : 10px 0px 0px;
	overflow: hidden;
}

.favorite_list li ul li {
	margin: 0px 1%;
	width : 31%;
	float : left;
}

.favorite_list li ul li a {
	display              : block;
	width                : 100%;
	color                : #fff;
	font-size            : 0.8em;
	line-height          : 2.4em;
	text-align           : center;
	background-color     : #999;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

.favorite_list li span a {
	margin-left          : 10px;
	padding              : 2px 5px;
	color                : #fff;
	font-size            : 0.8em;
	background-color     : #999;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
	float                : right;
}

/*** お気に入りユーザーの追加/削除(favorite/add,favorite/remove) ***/
.favorite_list .favorite_username {
	margin     : 15px 0px 10px;
	font-size  : 1.33em;
	font-weight: 600;
	text-align : center;
}

.favorite_list p {
	text-align: center;
}

.favorite_list p.add_date {
	font-size: 0.8em;
}

.favorite_list form {
	margin-top   : 1em;
	border-bottom: 1px solid #ccc;
	overflow     : hidden;
}

.favorite_list form .btn_go {
	margin    : 0px 0px 20px 30px;
	width     : 35%;
	background: #999;
	float     : left;
}

.favorite_list form .btn_cancel {
	margin    : 0px 30px 20px 0px;
	width     : 35%;
	background: #999;
	float     : right;
}

/*** 掲示板選択（投稿）(/bbscreate/choice.jsp) ***/
div.bbscreate p {
	margin-bottom: 15px;
	font-size    : 0.88em;
}

div.bbscreate form {
	text-align: center;
}

div.bbscreate form select {
	margin-bottom: 10px;
	width        : 90%;
}

div.bbscreate form input[type="submit"] {
	width           : 80%;
	background-color: #777;
}

/*** 掲示板かきこみ（投稿）(/bbscreate/form.jsp) ***/
div.bbscreate form div {
	margin: 0 auto 15px;
	width : 90%;
}

div.bbscreate form p {
	margin-bottom: 0px;
	text-align   : left;
}

div.bbscreate form input[type="text"],
div.bbscreate form textarea {
	width: 98%;
}

/*** 掲示板かきこみ完了（投稿）(/bbscreate/finish.jsp) ***/
div.bbscreate p.finish {
	text-align: center;
}

/*** 掲示板選択（閲覧）(/bbs/choice.jsp) ***/
div.bbs_choice p {
	margin-bottom: 15px;
	font-size    : 0.88em;
}

div.bbs_choice form {
	text-align: center;
}

div.bbs_choice form select {
	margin-bottom: 10px;
	width        : 90%;
}

div.bbs_choice form input[type="submit"] {
	width           : 70%;
	background-color: #777;
}

/*** 掲示板かきこみ一覧（閲覧）(/bbs/list.jsp) ***/
div.bbs-list li {
	margin-bottom: 20px;
	padding      : 5px;
	font-size    : 0.88em;
}

div.bbs-list li .bbs-head {
	position     : relative;
	margin-bottom: 4px;
	overflow     : hidden;
}

div.bbs-list li .bbs-head a.image {
	margin-right: 10px;
	margin-left : 1px;
	float       : left;
}

div.bbs-list li .bbs-head p {
	font-size: 0.8em;
}

div.bbs-list li div.bbs-head .photo {
	position: absolute;
	top     : 2px;
	right   : 10px;
}

div.bbs-list li div.bbs-head .photo a {
	padding              : 2px 5px;
	width                : 100%;
	font-size            : 0.8em;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

div.bbs-list ul li div.bbs-body {
	line-height          : 1.7;
	background-color     : #fff;
	border               : 1px solid #ccc;
	-webkit-border-radius: 3px;
	border-radius        : 3px;
}

div.bbs-list ul li div.bbs-body div {
	padding: 5px;
}

div.bbs-list ul li div.bbs-body div:first-child {
	border-bottom: 1px solid #ccc;
}

/*** 各種設定(/setting/index.jsp) ***/
div.setting-menu {
	margin: 10px;
}

div.setting-menu p {
	font-size : 0.8em;
	text-align: center;
}

div.setting-menu ul {
	margin: 10px;
}

div.setting-menu ul li {
	padding-bottom: 6px;
	line-height   : 3.3em;
	text-indent   : 0.5em;
}

div.setting-menu ul li a {
	display         : block;
	background-color: #fff;
}

/*** プロフィール変更(/setting/prof/edit.jsp) ***/
/*** 名前変更(/setting/username/edit.jsp) ***/
/*** パスワード変更(/setting/password/edit.jsp) ***/
/*** メールアドレス変更(/setting/email/edit.jsp) ***/
div.setting-edit form div {
	margin    : 0 auto 15px;
	width     : 94%;
	text-align: center;
}

div.setting-edit form div p {
	text-align: left;
}

div.setting-edit form select {
	padding: 5px;
	width  : 90%;
}

div.setting-edit form label {
	display   : inline-block;
	width     : 45%;
	text-align: left;
}

div.setting-edit form input[type="text"],
div.setting-edit form input[type="password"] {
	width: 90%;
}

div.setting-edit form .dob input {
	width: 22%;
}

div.setting-edit form textarea {
	width : 90%;
	height: 10em;
}

div.setting-edit form input[type="submit"] {
	width           : 70%;
	background-color: #777;
}

/*** プロフィール変更完了(/setting/prof/finish.jsp) ***/
/*** 名前変更完了(/setting/username/finish.jsp) ***/
/*** パスワード変更完了(/setting/password/finish.jsp) ***/
/*** メールアドレス変更完了(/setting/email/finish.jsp) ***/
div.setting-edit-finish {
	text-align: center;
}

/*** 写真・動画エントリー(/photo/register.jsp) ***/
.photo_regist {}

.photo_regist .entry {
	margin   : 1em;
	font-size: 1.1em;
}

.photo_regist>div {
	margin-bottom: 1em;
	padding      : 0.5em;
	border       : 1px solid #ccc;
}

/*** ショップ(ポイント購入)(/payment/index.jsp) ***/
.payment_list {}

.payment_list p {
	text-align: center;
	font-size : 0.8em;
}

.payment_list ul {
	margin-left: 1em;
}

.payment_list li a {
	display    : block;
	line-height: 3em;
}

/*** ショップ(ポイント購入)各窓口(/payment/***.jsp) ***/
.payment_window {}

.payment_window p {
	padding: 5px;
}

.payment_window a.btn {
	padding  : 5px 0px;
	font-size: 15px;
}

.payment_window select {
	margin-bottom: 1em;
	width        : 90%;
}

.payment_window input[type="text"] {
	margin-bottom: 1em;
}

/*** 使い方(利用ポイント)(/point/index.jsp) ***/
.point_usage {}

.point_usage th {
	padding    : 5px;
	width      : 55%;
	font-weight: 400;
	text-align : left;
}

.point_usage td {
	padding   : 5px;
	width     : 40%;
	text-align: right;
}

/*** 振込確認(/bankrequest/form.jsp) ***/
.bankrequest {}

.bankrequest p {
	padding: 5px;
}

.bankrequest input[type="text"] {
	margin-bottom: 1em;
	width        : 90%;
}

.bankrequest a.btn {
	padding  : 5px 0px;
	font-size: 15px;
}

/*** お問い合わせ(/inquiry/form.jsp) ***/
div.inquiry-form {}

div.inquiry-form form>p {
	margin-bottom: 10px;
	font-size    : 0.8em;
	text-align   : center;
}

div.inquiry-form form div {
	margin-bottom: 15px;
	text-align   : center;
}

div.inquiry-form form div p {
	margin    : 0 auto;
	width     : 94%;
	text-align: left;
}

div.inquiry-form form div input[type="text"] {
	width: 90%;
}

div.inquiry-form form div textarea {
	width : 90%;
	height: 10em;
}

div.inquiry-form form input[type="submit"] {
	width           : 70%;
	background-color: #777;
}

/*** お問い合わせ完了(/inquiry/finish.jsp) ***/
div.inquiry-form-finish {
	text-align: center;
}

/*** お問い合わせ履歴(/inquiry/history.jsp) ***/
.inquiry-history {
	border-bottom: 1px solid #ccc;
}

.inquiry-history p.counter {
	margin-top: 1em;
	text-align: right;
}

.inquiry-history .switch {
	margin    : 1em 0;
	text-align: center;
}

.inquiry-history .switch a {
	display  : inline-block;
	margin   : 0 1%;
	padding  : 5px 0px;
	width    : 30%;
	font-size: 0.88em;
}

/*** 退会(/withdrawal/index.jsp) ***/
.withdrawal {}

.withdrawal a.btn {
	margin   : 1em auto 2em;
	padding  : 5px 0;
	font-size: initial;
}

/*** 退会完了(/withdrawal/finish.jsp) ***/
.withdrawal-finish p {
	text-align: center;
}



/*** ログイン前 ***/
/* 会員登録(/entry/index.jsp) */
/* 会員簡易登録（ログインID/パスワード省略）(/entry/index_simple.jsp) */
.entry {}

form.entry {
	margin: 10px 0;
}

.entry table {
	margin-bottom: 3em;
	width        : 100%;
}

.entry table th {
	padding         : 3px 8px;
	text-align      : left;
	font-weight     : 400;
	background-color: #e2e2e2;
}

.entry table td {
	padding: 10px;
}

.entry input[type="text"],
.entry input[type="password"] {
	width: 80%;
}

.entry input.btn_confirm {
	padding  : 10px 0px;
	width    : 75%;
	font-size: 1.3em;
}

/* 空メール無し 会員登録フォーム(/directentry/index.jsp) */
/* 空メール無し 会員登録フォーム (確認画面)(/directentry/confirm.jsp) */
.regist_caption {
	margin   : 10px;
	font-size: 0.8em;
}

.regist_caption p {
	padding: 5px line-height: 1.5;
}

form.directentry {
	margin: 10px 0;
}

.directentry table {
	width: 100%;
}

.directentry table th {
	padding         : 3px 8px;
	text-align      : left;
	font-weight     : 400;
	background-color: #e2e2e2;
}

.directentry table td {
	padding: 10px;
}

.directentry table td span {
	display    : inline-block;
	margin-top : 5px;
	font-size  : 80%;
	line-height: 1.3;
}

.directentry table td li {
	margin-bottom: 10px;
}

.directentry table .center {
	text-align: center;
}

.directentry textarea {
	width: 90%;
}

.directentry input[type="text"],
.directentry input[type="password"] {
	width: 80%;
}

.directentry div.well {
	padding: 20px;
	color  : #0000cd;
}

.directentry input.btn_confirm {
	padding: 10px 0px;
	width  : 75%;
}

.directentry input.btn_back,
.directentry input.btn_go {
	display: inline-block;
	margin : auto 4%;
	padding: 10px 0px;
	width  : 40%;
}

.main {
	width: 100%
}

.main-image {
	width: 100% max-width: 100% height: auto;
}

/* end */


#footerFloatingMenu {
	display   : block;
	width     : 100%;
	position  : fixed;
	left      : 0px;
	bottom    : 0px;
	z-index   : 9999;
	text-align: center;
	padding   : 0 auto;

}

#footerFloatingMenu .fa {
	font-size: 3em;
	color    : #fff;
	padding  : 10px;
}

.top-banner {
	display  : flex;
	flex-wrap: wrap;
}

.top-banner li {
	width: calc(100%/2);
	/*←画像を横に4つ並べる場合*/

	/*←画像の左右に5pxの余白を入れる場合*/
	box-sizing: border-box;
}

.top-banner li img {
	max-width: 100%;
	/*画像のはみだしを防ぐ*/

	/*画像の縦横比を維持 */

}

.top-banner2 {

	display  : flex;
	flex-wrap: wrap;
}

.top-banner2 li {
	width: calc(80%/2);
	/*←画像を横に4つ並べる場合*/

	/*←画像の左右に5pxの余白を入れる場合*/
	box-sizing: border-box;
}

.top-banner2 li img {
	width: 80%;
	/*画像のはみだしを防ぐ*/

	/*画像の縦横比を維持 */

}

.title000 {
	padding         : 10px 20px;
	text-align      : center;
	background-color: #00c4cc;
	color           : #FFF;
	font-size       : 18px;
}

.big00 {
	font-size  : 1.7em;
	font-weight: bold;
	margin     : 10px 20px;
}

.text012 {
	font-size  : 1em;
	font-weight: bold;
	margin     : 10px 20px;
}

.biz00 {
	font-size  : 1.7em;
	font-weight: bold;
	margin     : 10px 20px;
}

.biz001 {
	font-size  : 1.3em;
	font-weight: bold;
	margin     : 10px 20px;
}

.biz0011 {
	font-size  : 1.1em;
	font-weight: bold;
	margin     : 10px 20px;
}

.biz002 {
	font-size: 12px;

	margin: 10px 20px;
}

table,
th,
td {
	border-collapse: collapse;

	line-height: 1.5;
}

table.type06 th {
	width         : 150px;
	padding       : 10px;
	font-weight   : bold;
	vertical-align: top;
	text-align    : left;
}

table.type06 td {
	width         : 350px;
	padding       : 10px;
	vertical-align: top;
}

tr:nth-child(even) {}

.ceo {
	width     : 90%;
	text-align: center;


}

.ceo1 {
	font-size  : 1.2em;
	font-weight: bold;
	margin     : 2px 20px;
}

.ceo3 {
	font-size: 1.0em;

	margin: 2px 20px;
}

.ceo2 {
	font-size: 0.5em;
	margin   : 2px 20px;
}



.title120 {
	font-size  : 1em;
	font-weight: bold;
	margin     : 10px 0px;
	padding    : 0.25em 0.5em;
	/*上下 左右の余白*/
	color      : #00c4cc;
	/*文字色*/
	background : transparent;
	/*背景透明に*/
	border-left: solid 5px #00c4cc;
	/*左線*/
}

.title1200 {
	font-size  : 1em;
	font-weight: bold;

	color     : #00c4cc;
	/*文字色*/
	background: transparent;
	/*背景透明に*/

	/*左線*/
}

.text0123 {
	font-size: 0.8em;

	margin: 10px 20px;
}

.form__answer {
	display       : inline-block;
	box-sizing    : border-box;
	width         : 25%;
	margin        : 1px 1% 1px 0;
	height        : 140px;
	vertical-align: top;
	font-size     : 18px;
	text-align    : center;
}

label {
	border    : 1px solid rgba($font-color, .15);
	box-sizing: border-box;
	display   : block;
	height    : 100%;
	width     : 100%;
	padding   : 1px 10px 10px 10px;
	cursor    : pointer;
	opacity   : .5;
	transition: all .5s ease-in-out;

	&:hover,
	&:focus,
	&:active {
		border: 1px solid rgba($font-color, .5);
	}
}

.form__button {
	height          : 20px;
	border          : none;
	background-color: $submit-color;
	color           : $font-color;
	text-transform  : uppercase;
	font-family     : 'Source Sans Pro', sans-serif;
	padding         : 0 10px;
	border-radius   : 20px;
	font-weight     : 900;
	cursor          : pointer;
	margin          : 10px 0;
	transition      : all .25s ease-in-out;

	&:hover,
	&:focus {
		background-color: $submit-color-darker;
		text-shadow     : 1px 1px 1px rgba(0, 0, 0, .25);
		outline         : none;
	}
}


/* Input style */

input[type="radio"] {
	opacity: 0;
	width  : 0;
	height : 0;
}

input[type="radio"]:active~label {
	opacity: 1;
}

input[type="radio"]:checked~label {
	opacity: 1;
	border : 1px solid $font-color;
}