@charset "utf-8";


/**************************************************50
 * authentication
 **************************************************/
.auth-link-list {
	 list-style-type: none;
	 overflow: hidden;
}
.auth-link-list li {
	width: 100%;
	margin: 10px 0;
}
.auth-link-list li img {
	width: 100%;
}
@media screen and (min-width:768px){
	.auth-link-list li {
		float: left;
		width: 48%;
		margin: 10px 1%;
	}
}
#simplemodal-overlay{
	opacity: 0.9 !important;
}
#auth_warp{
	display: none;
}
#auth_modal{
	position: relative;
	text-align: center;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	max-width: 800px;
	margin: 0 auto;
	width: 100%;
}
#auth_modal > p {
	max-width: 400px;
	margin: 0 auto;
	}
#auth_modal > *:not(:last-child){
	margin-bottom: 20px;
}
#auth_modal img{
	max-width: 400px;
}
#auth_enter{
	border-radius: 3px;
	border-style: solid;
	border-width: 1px;
	cursor: pointer;
	font-size: 200%;
	line-height: 1.2;
	padding: 5px 0;
	position: relative;
	max-width: 400px;
	margin: 0 auto;
}
#auth_enter:before{
	content: "\F5FC";
	font-family: "Material Design Icons";
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	position: absolute;
	top: 50%;
	left: 15%;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
#auth_enter:hover:before{
	-webkit-transform: translateY(-50%) scale(0.8);
	-ms-transform: translateY(-50%) scale(0.8);
	transform: translateY(-50%) scale(0.8);
}


/**************************************************50
 * layout
 **************************************************/
#page-wrap {
	min-height: 100%;
}
#container{
	min-height: 100%;
	overflow: hidden;
	width: 100%;
}
.wrap{
	margin-left: auto;
	margin-right: auto;
}
@media screen and (min-width:1280px){
	.wrap{
		width: 1100px
	}
}
@media screen and (min-width:1920px){
	#page-wrap {
		background-size: 100% auto;
	}
}
a:not(.link_to):not(.link_blog):not(.link_back){
	text-decoration: none !important;
}
a:not(.link_to):not(.link_blog):hover:not(.link_back):hover{
	text-decoration: underline !important;
}


/**************************************************50
 * header
 **************************************************/
header{
	margin-bottom: 30px;
	padding-top: 42px;
	position: relative;
}
header#top{
	padding-top: -webkit-calc(54px + 1.6em);
	padding-top: calc(54px + 1.6em);
}
header #header_bar{
	height: 42px;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
}
header #header_bar .wrap{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	overflow: hidden;
}
header #header_bar .wrap *:not(:first-child){
	margin-left: 14px;
}
header #header_bar a{
	display: inherit;
}
header #menu_btn{
	cursor: pointer;
	display: inline-block;
	font-size: 70%;
	padding-top: 24px;
	padding-bottom: 2px;
	position: relative;
	text-align: center;
	width: 42px;
}
header #menu_btn:before{
	content: "\F35C";
	display: block;
	font-family: "Material Design Icons";
	font-size: 340%;
	margin: 0 auto;
	position: absolute;
	top: -12px;
	left: 0;
	right: 0;
}
header #header_opening{
	border-width: 1px;
	border-style: solid;
	border-color: #FFFFFF;
	border-radius: 30px;
	display: inline-block;
	font-size: 80%;
	height: 26px;
	line-height: 26px;
	padding: 0 10px;
	vertical-align: middle;
}
header .header_tel,
header .header_cellphone{
	font-size: 120%;
	position: relative;
	padding-left: 1.5em;
}
header .header_tel:before,
header .header_cellphone:before{
	font-family: "Material Design Icons";
	font-size: 120%;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
header .header_tel:before{
	content: "\F3F2";
}
header .header_cellphone:before{
	content: "\F11C";
}
header h1{
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	font-size: 75%;
	font-weight: normal;
	line-height: 1.2;
	padding: 0 1em;
	text-align: right;
}
header #header_navi{
	position: absolute;
	top: 42px;
	left: 0;
	width: 100%;
	z-index: 10;
}
#header_navi nav{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	overflow: hidden;
}
header nav a{
	padding: 6px 12px;
	text-decoration: none;
	position: relative;
}
header nav a:after{
	border-radius: 5px;
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 6px;
	height: 3px;
	text-align: center;
	-webkit-transition-property: left, right;
	transition-property: left, right;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
header #header_navi nav a:hover{
	text-decoration: none !important;
}
#header_navi nav a:after{
	left: 50%;
	right: 50%;
}
#header_navi nav a:hover:after,
#header_navi nav a.active:after{
	left: 5%;
	right: 5%;
}
#header_img{
	margin-bottom: -60px;
	overflow: hidden;
	position: relative;
}
#header_img #header_overlay{
	position: absolute;
	text-align: center;
	z-index: 1;
}
#header_img #header_overlay img{
	vertical-align: middle;
}
#float_menu{
	height: -webkit-calc(100vh - 36px);
	height: calc(100vh - 36px);
	overflow-y: auto;
	position: fixed;
	top: 42px;
	transition: left 0.2s ease-out 0s;
	z-index: 20;
}
#float_menu a{
	display: block;
}
#float_menu.active{
	left: 0;
}
header #float_menu nav a:hover{
	text-decoration: none !important;
}
@media screen and (max-width:767px){
	#float_menu{
		left: -100%;
		width: 100%;
	}
	#float_menu nav a:after{
		left: 6px;
		right: -webkit-calc(100% - 6px);
		right: calc(100% - 6px);
	}
	#float_menu nav a:hover:after,
	#float_menu nav a.active:after{
		right: 6px;
	}
}
@media screen and (min-width:768px){
	#float_menu{
		left: -200px;
		width: 200px;
	}
	#float_menu nav a:after{
		left: 5%;
		right: 95%;
	}
	#float_menu nav a:hover:after,
	#float_menu nav a.active:after{
		right: 5%;
	}
}


/**************************************************50
 * middle
 **************************************************/
#middle_block{
	min-height: -webkit-calc(100vh - 126px - 308px - 30px);
	min-height: calc(100vh - 126px - 308px - 30px);
	margin-top: 60px;
	margin-bottom: 30px;
}
header#top + #middle_block{
	margin-top: 80px;
}
#contents{
	overflow: hidden;
	min-height: -webkit-calc(100vh - 126px - 308px - 30px);
	min-height: calc(100vh - 126px - 308px - 30px);
}
#middle_block #main_contents > article:not(:last-child){
	margin-bottom: 30px;
}
#main_contents{
	text-align: center;
}
#main_contents > *{
	text-align: left;
}
@media screen and (max-width:959px){
	#side_contents{
		display: none;
	}
}
@media screen and (min-width:960px){
	#contents{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	#middle_block #main_contents{
		width: 780px;
	}
}
@media screen and (max-width:1279px){
	#contents{
		width: 100%;
	}
}

/* -- common -- */
.title_articles:not(:last-child){
	margin-bottom: 10px;
}
#main_contents .box_in{
	padding: 20px;
}
#side_contents{
	width: 240px;
}
#side_contents .box_in{
	padding: 10px;
}
#side_contents .link_to{
	font-size: 80%;
	vertical-align: middle;
}
#side_contents .box_in:not(:last-child),
#side_contents article:not(:last-child){
	margin-bottom: 20px;
}
#side_contents .box_border{
	border-radius: 5px;
	padding: 10px;
}
.box_border:not(:last-child){
	margin-bottom: 5px;
}
.box_border + .box_border{
	margin-top: 20px;
}
.box_border img{
	height: auto !important;
	max-width: 100%;
}
[class^="read_"]{
	border-radius: 0 0 10px 10px;
	cursor: pointer;
	position: absolute;
	bottom: 1px;
	left: 1px;
	padding: 7px 0;
	text-align: center;
	transition: opacity 0.2s ease-out 0s;
	width: -webkit-calc(100% - 2px) !important;
	width: calc(100% - 2px) !important;
}
[class^="read_"]:hover{
	opacity: 0.7;
}
.readmore_on [class^="read_"]{
	bottom: 34px;
}
.read_more:after{
	content: "\F140";
	font-size: 140%;
	line-height: 1;
	vertical-align: middle;
}
.read_less:after{
	content: "\F143";
	font-size: 140%;
	line-height: 1;
	vertical-align: middle;
}
#under_title{
	margin-top: 10px;
	margin-bottom: 30px;
	padding: 0 20px;
}
#under_title img{
	height: auto !important;
	max-width: 100%;
}

/* -- pager -- */
.pager_link{
	text-align: center;
}
.pager_link a,
.pager_link span{
	font-size: 12px;
	display: inline-block;
}
.pager_link a{
	border-style: solid;
	border-width: 1px;
	height: 30px;
	line-height: 30px;
	min-width: 30px;
	padding: 0 6px;
	text-decoration: none;
	transition: all 0.3s ease-out 0s;
	vertical-align: middle;
}
.pager_link a.mdi{
	position: relative;
}
.pager_link a.mdi:before{
	font-size: 20px;
	margin: 0 !important;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.pager_link span{
	height: 30px;
	line-height: 30px;
	min-width: 30px;
	vertical-align: middle;
}
.pager_link strong{
	height: 30px;
	line-height: 30px;
	min-width: 30px;
	vertical-align: middle;
}
.pager_link a + a,
.pager_link a + span,
.pager_link a + strong,
.pager_link span + a,
.pager_link span + span,
.pager_link span + strong,
.pager_link strong + a,
.pager_link strong + span,
.pager_link strong + strong{
	margin-left: 15px;
}
.pager_num{
	text-align: center;
}
.pager_link + .pager_num,
.pager_num + .pager_link{
	margin-top: 10px;
}

/* -- select -- */
select{
	border: 1px solid #9E9E9E;
	cursor: pointer;
	height: 30px;
	line-height: 30px;
	margin-bottom: 3px;
	padding: 0 29px 0 7px;
	transition: all 0.3s ease-out 0s;
}
.select_box{
	display: inline-block;
	height: 30px;
	position: relative;
	vertical-align: middle;
}
.select_box:after{
	content: "\F35D";
	font-size: 22px;
	height: 30px;
	line-height: 30px;
	position: absolute;
	right: 1px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	pointer-events: none;
}
select:focus{
	outline: none;
}
select::-ms-expand {
    display: none;
}

/* -- shop info -- */
#gmap_main{
	height: 190px;
	margin-bottom: 5px;
	width: 260px;
}
#gmap_side{
	/* height: 220px; */
	/* margin-bottom: 5px; */
	/* width: 220px; */
}
#shop_info_main{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
#shop_info_main #shop_info_about{
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	max-width: 500px;
	margin: 0 20px;
}
[id^="shop_info_"] .label_main_color{
	font-size: 90%;
	line-height: 1;
	margin-right: 1em;
	padding: 3px 5px;
}
.shop_image{
	border-width: 3px;
	border-style: solid;
	border-color: #D7D6D2;
	border-radius: 5px;
	height: 200px;
	position: relative;
	overflow: hidden;
}
.shop_image img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
}
#shop_info_main,
#shop_info_side{
	font-size: 80%;
}
#shop_info_main .link_to{
	font-size: 125%;
}
#shop_info_side > section + section{
	margin-top: 10px;
}
#main_contents .shop_image{
	width: 200px;
}

/* -- fem list-- */
.fem_size span{
	color: #EC407A;
}
@media screen and (min-width:360px) and (max-width:479px){
	.fem_list li{
		margin-left: 2%;
		width: 47%;
	}
}
@media screen and (min-width:480px) and (max-width:1099px){
	.fem_list li{
		margin-left: 2.5%;
		width: 30%;
	}
}
@media screen and (min-width:1100px){
	.fem_list li{
		margin-left: 2.4%;
		width: 22%;
	}
}
#side_contents .fem_list{
	margin: 10px auto;
	width: 180px;
}
#side_contents .fem_list li{
	margin: 0 0 1px 0;
}
#side_contents .fem_list li.slick-slide{
	width: 180px !important;
}
#side_contents .fem_list .slick-prev{
	left: -15%;
}
#side_contents .fem_list .slick-next{
	right: -15%;
}
.fem_side_list{
	max-height: 384px;
	overflow-y: auto;
}
.fem_side_list li{
	border-style: solid;
	border-width: 0 0 1px 0;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	padding: 10px 0;
	width: 100%;
}
.fem_side_list li > a{
	display: block;
	overflow: hidden;
	position: relative;
	width: 80px;
}
.fem_side_list li > a > img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	border-radius: 5px;
	width: 100%;
	vertical-align: middle;
	transition: opacity 0.2s ease-out 0s;
}
.fem_side_list li > a img:hover{
	opacity: 0.7;
}
.fem_side_list li > a .fem_status{
	text-align: right;
	max-width: 26px;
}
.fem_side_list li > a .fem_status img{
	vertical-align: top;
	max-width: 26px;
}
.fem_side_list li > section{
	padding: 10px 0;
	width: -webkit-calc(100% - 80px - 30px);
	width: calc(100% - 80px - 30px);
}
.fem_side_list li > section p{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
.fem_side_list li > section .fem_size{
	font-size: 80%;
}
.fem_side_list li > section .fem_work{
	font-size: 80%;
	margin: 3px 0;
	text-align: center;
	padding: 3px 0;
}
#main_contents .fem_size span{
	margin-left: 0.5em;
}
#side_contents .fem_size span{
	margin-left: 0.2em;
}

/* -- image slider-- */
#main_contents .image_slider{
	margin-bottom: 50px;
}
#side_contesnts .image_slider{
	margin-bottom: 40px;
}
.image_slider{
	width: 100%;
}
.image_slider > li,
.image_slider img{
	width: 100%;
}
#side_contents .image_slider{
	margin-bottom: 20px;
}
#side_contents .slick-dots{
	position: static;
}

/* -- newface-- */
.newface_list li{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.newface_list li > section *:not(:last-child){
	margin-bottom: 5px;
}
.newface_list li > section > p{
	font-size: 80%;
	font-weight: bold;
}
.newface_list li > section > div{
	font-size: 80%;
}
#main_contents .newface_list{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 10px;
	width: 100%;
}
#main_contents .newface_list li{
	margin-bottom: 20px;
}
#main_contents .newface_list .fem_img_crop{
	width: 110px;
}
#main_contents .newface_list li > section{
	width: -webkit-calc(100% - 110px - 20px);
	width: calc(100% - 110px - 20px);
}
#side_contents .newface_list{
	margin-bottom: 5px;
	max-height: 404px;
	overflow-y: auto;
	width: 100%;
}
#side_contents .newface_list li{
	border-style: solid;
	border-width: 0 0 1px 0;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	padding: 10px 0;
	width: 100%;
}
#side_contents .newface_list .fem_img_crop{
	width: 80px;
}
#side_contents .newface_list li > section{
	width: -webkit-calc(100% - 80px - 30px);
	width: calc(100% - 80px - 30px);
}
#side_contents .newface_list li > section h3{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
@media screen and (max-width:767px){
	#main_contents .newface_list li{
		width: 100%;
	}
}
@media screen and (min-width:768px){
	#main_contents .newface_list li{
		margin-left: 20px;
		width: -webkit-calc((100% - 60px) / 2);
		width: calc((100% - 60px) / 2);
	}
}

/* -- pickup-- */
.pickup_list{
	width: 100%;
}
.pickup_list li .pickup_img{
	margin: 10px 0;
	position: relative;
	width: 34.61538461538462%;
}
.pickup_list li .pickup_img > img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	margin: 3px;
	transition: opacity 0.2s ease-out 0s;
	vertical-align: middle;
	width: -webkit-calc(100% - 6px);
	width: calc(100% - 6px);
}
.pickup_list li .pickup_img img:hover{
	opacity: 0.7;
}
#main_contents .pickup_list{
	background-position: right top;
	background-repeat: no-repeat;
}
#main_contents .pickup_list .pickup_img + section{
	width: 340px;
	margin-left: 20px;
	padding-top: 20px;
}
#main_contents .pickup_list .fem_info .fem_comment{
	margin-top: 20px;
	height: 264px;
	overflow-y: auto;
}
#main_contents .pickup_list{
	margin-top: 10px;
	margin-bottom: 60px;
}
#main_contents .pickup_list > li,
#main_contents .pickup_list > .slick-list .slick-track > li{
	display: -webkit-inline-flex !important;
	display: -ms-inline-flex !important;
	display: inline-flex !important;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	width: 100%;
}
#side_contents .pickup_list{
	margin: 10px auto 40px;
	width: 80%;
}
#side_contents .pickup_list > .slick-list .slick-track > li{
	position: relative;
}
#side_contents .pickup_list li .fem_info{
	padding: 5px 10px;
	text-align: center;
	width: 100%;
}
#side_contents .slick-dots li{
	height: 10px;
	margin: 0 2px;
	width: 10px;
}
#side_contents .slick-dots li button{
	height: 10px;
	padding: 2px;
	width: 10px;
}
#side_contents .pickup_list .slick-prev{
	left: -15%;
	height: 24px;
	line-height: 24px;
	width: 24px;
}
#side_contents .pickup_list .slick-next{
	right: -15%;
	height: 24px;
	line-height: 24px;
	width: 24px;
}
#side_contents .pickup_list .slick-prev:before,
#side_contents .pickup_list .slick-next:before{
	font-size: 24px;
}

/* -- picbbs-- */
#picbbs > .box_border{
	margin: 20px 0 0;
}
.picbbs_list{
	border-style: solid;
	border-width: 0 0 0 1px;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin-top: 10px;
	margin-bottom: 10px;
	width: 100%;
}
.picbbs_list li{
	border-style: solid;
	border-width: 1px 1px 1px 0;
	margin-bottom: -1px;
}
.picbbs_list li section:first-child{
	padding: 3px 20px;
}
.picbbs_list li section:first-child p{
	font-size: 80%;
}
.picbbs_list li section:first-child h3{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
.picbbs_list li section:last-child{
	padding: 10px 20px;
}
.picbbs_list li section:last-child a.picbbs_img{
	display: block;
	position: relative;
	overflow: hidden;
}
.picbbs_list li section:last-child a.picbbs_img:before{
	content: "";
	display: block;
	padding-top: 100%;
}
.picbbs_list li section:last-child a.picbbs_img img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 100%;
	transition: opacity 0.2s ease-out 0s;
}
.picbbs_list li section:last-child a.picbbs_img img:hover{
	opacity: 0.7;
}
.picbbs_list li section:last-child h4{
	margin: 5px 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
.picbbs_list li section:last-child div{
	font-size: 90%;
}

.picbbs_side{
	margin-bottom: 5px;
	max-height: 404px;
	overflow-y: auto;
	width: 100%;
}
.picbbs_side li{
	border-style: solid;
	border-width: 0 0 1px 0;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 0;
	width: 100%;
}
.picbbs_side li > section *:not(:last-child){
	margin-bottom: 5px;
}
.picbbs_side .fem_img_crop{
	width: 80px;
}
.picbbs_side li > section{
	width: -webkit-calc(100% - 80px - 30px);
	width: calc(100% - 80px - 30px);
}
.picbbs_side li > section > p{
	font-size: 80%;
	text-align: right;
}
.picbbs_side li > section h3,
.picbbs_side li > section h4{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
@media screen and (max-width:319px){
	.picbbs_list li{
		width: 100%;
	}
}
@media screen and (min-width:320px) and (max-width:479px){
	.picbbs_list li{
		width: 50%;
	}
}
@media screen and (min-width:480px) and (max-width:767px){
	.picbbs_list li{
		width: 33.3333333333%;
	}
}
@media screen and (min-width:768px){
	.picbbs_list li{
		width: 25%;
	}
}

/* -- ranking-- */
[class^="ranking_"] li:nth-child(1) h3:before{
	background: url("https://oasis.cx/images/user/icon_crown_01.png") center center no-repeat;
}
[class^="ranking_"] li:nth-child(2) h3:before{
	background: url("https://oasis.cx/images/user/icon_crown_02.png") center center no-repeat;
}
[class^="ranking_"] li:nth-child(3) h3:before{
	background: url("https://oasis.cx/images/user/icon_crown_03.png") center center no-repeat;
}
[class^="ranking_"] li:nth-child(4) h3:before{
	background: url("https://oasis.cx/images/user/icon_crown_04.png") center center no-repeat;
}
[class^="ranking_"] li:nth-child(5) h3:before{
	background: url("https://oasis.cx/images/user/icon_crown_05.png") center center no-repeat;
}
[class^="ranking_"] li:nth-child(-n+5) h3:before{
	background-size: 100% auto;
	content: "";
	display: inline-block;
	margin-right: 0.5em;
	vertical-align: middle;
}
[class^="ranking_"] li h3{
	display: inline-block;
}
[class^="ranking_"] li h3 strong{
	border-style: solid;
	border-width: 1px;
	border-radius: 15px;
	display: inline-block;
	font-size: 80%;
	height: 20px;
	line-height: 20px;
	text-align: center;
	padding: 0 12px;
	vertical-align: middle;
}
[class^="ranking_"] li section p{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
.ranking_main{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	width: 100%;
}
.ranking_main li{
	text-align: center;
	margin: 10px 0 20px;
	width: 28%;
}
.ranking_main li:nth-child(-n+5) h3:before{
	height: 26px;
	width: 26px;
}
.ranking_main li h3 strong{
	height: 20px;
	line-height: 20px;
}
.ranking_main li > a{
	display: block;
	margin: 5px 0;
}
.ranking_side li{
	border-style: solid;
	border-width: 0 0 1px 0;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 0;
	width: 100%;
}
.ranking_side li > a{
	display: block;
	width: 80px;
}
.ranking_side li:nth-child(-n+5) h3:before{
	height: 22px;
	width: 22px;
}
.ranking_side li h3 strong{
	height: 18px;
	line-height: 18px;
}
.ranking_side li > section {
	width: -webkit-calc(100% - 80px - 30px);
	width: calc(100% - 80px - 30px);
}
.ranking_side li > section .fem_size{
	font-size: 80%;
}
.ranking_side{
	margin-bottom: 5px;
	max-height: 404px;
	overflow-y: auto;
	width: 100%;
}

/* -- banner -- */
.bnr_large{
	text-align: center !important;
}
.bnr_large img{
	max-width: 780px;
	width: 100%;
}
.bnr_large a img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: opacity 0.2s ease-out 0s;
}
.bnr_large a:hover img{
	opacity: 0.7;
}
.bnr_large p{
	text-align: left;
}
#side_contents .bnr_large img{
	vertical-align: top;
}
#side_contents .bnr_large p{
	font-size: 80%;
}
#side_contents .bnr_small img{
	vertical-align: top;
	width: 100%;
}
#side_contents .bnr_small p{
	font-size: 80%;
}
.bnr_small{
	display: inline-block;
	margin-bottom: 20px;
	vertical-align: top;
}
.bnr_small img{
	vertical-align: middle;
}
.bnr_small a img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: opacity 0.2s ease-out 0s;
}
.bnr_small a:hover img{
	opacity: 0.7;
}
.bnr_side a img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: opacity 0.2s ease-out 0s;
}
.bnr_side a:hover img{
	opacity: 0.7;
}
#side_contents .bnr_side img{
	vertical-align: top;
	width: 100%;
}
#side_contents .bnr_side p{
	font-size: 80%;
}
#main_contents .bnr_side{
	display: inline-block;
	vertical-align: top;
	width: 240px;
}
#main_contents .bnr_small,
#main_contents .bnr_small_img{
	margin-left: 7.5px;
	margin-right: 7.5px;
}
#main_contents .bnr_small .bnr_small_img{
	margin-left: 0;
	margin-right: 0;
}
#main_contents .bnr_small p{
	word-break: break-all;
}

/* -- line-- */
[class^="line_"]{
	background-color: #01CC01;
	background-image: url("https://oasis.cx/images/user/line.png");
	background-repeat: no-repeat;
	border-radius: 10px;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
}
[class^="line_"] h3{
	background-color: #FFFFFF;
	border-radius: 10px;
	color: #01CC01;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}
[class^="line_"] h3 strong{
	color: #212121;
	font-weight: bold;
}
.line_main,
.line_header{
	background-position: 20px 20px;
	background-size: 300px auto;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	padding: 20px;
}
#line_header_wrap{
	display: none;
}
.line_header{
	width: 780px;
}
.line_main h3,
.line_header h3{
	font-size: 160%;
	height: 40px;
	line-height: 40px;
	text-align: center;
}
.line_main img,
.line_header img{
	margin-left: 20px;
	width: 180px;
}
.line_side{
	background-position: center 10px;
	background-size: 220px auto;
	padding: 117px 10px 10px 10px;
}
.line_side h3{
	font-size: 120%;
	height: 85px;
	padding: 16px 10px;
}
.line_side h3 strong{
	display: block;
	text-align: center;
}
.line_side img{
	margin-left: 10px;
	width: 85px;
}

/* -- news -- */
.article_box{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	width: 100%;
}
.article_box img{
	height: auto !important;
	max-width: 100%;
}
.article_box > section:first-child{
	width: 200px;
}
.article_box > section:first-child > a > img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: opacity 0.2s ease-out 0s;
	width: 100%;
}
.article_box > section:first-child > a > img:hover{
	opacity: 0.7;
}
.article_box > section:last-child{
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}
.article_box > section + section:last-child{
	margin-left: 20px;
}
.news_side{
	margin-bottom: 5px;
	max-height: 404px;
	overflow-y: auto;
	width: 100%;
}
.news_side li{
	border-style: solid;
	border-width: 0 0 1px 0;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 0;
	width: 100%;
}
.news_side li > section *:not(:last-child){
	margin-bottom: 5px;
}
.news_side .fem_img_crop{
	width: 80px;
}
.news_side li > section{
	width: -webkit-calc(100% - 20px);
	width: calc(100% - 20px);
}
.news_side li > a + section{
	width: -webkit-calc(100% - 80px - 30px);
	width: calc(100% - 80px - 30px);
}
.news_side li > section > p{
	font-size: 80%;
}
/*
.news_side li > section h3{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
*/
[id^="news_box_"]{
	position: relative;
}
[id^="news_box_"] img{
	height: auto !important;
	max-width: 100%;
}
[id^="news_box_"] .box_border .article_box > section:last-child{
	margin-bottom: 16px;
}

/* -- free -- */
[id^="free_box_"]{
	position: relative;
}
[id^="free_box_"]{
	max-width: 100%;
}
[id^="free_box_"] .free_article{
	margin-bottom: 16px;
}
#free_page img{
	height: auto !important;
	max-width: 100%;
}
#side_contents .free_side{
	max-height: 400px;
	overflow-y: auto;
	word-break: break-all;
}
#side_contents .free_side img{
	height: auto !important;
	max-width: 100%;
}

/* -- schedule -- */
.schedule_navi{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 20px auto;
	width: 100%;
}
.schedule_navi a,
.schedule_navi span{
	border-radius: 7px;
	border-style: solid;
	border-width: 1px;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 90%;
	height: 46px;
	line-height: 1.4;
	text-align: center;
	width: 80px;
}
.schedule_navi a{
	transition: all 0.2s ease-out 0s;
}
#main_contents .schedule_navi a:hover{
	text-decoration: none !important;
}
.schedule_navi a.saturday{
	background-color: #81D4FA;
	border-color: #1976D2;
}
.schedule_navi a.saturday:hover{
	background-color: #1976D2;
	color: #FFFFFF;
}
.schedule_navi a.sunday{
	background-color: #F48FB1;
	border-color: #D81B60;
}
.schedule_navi a.sunday:hover{
	background-color: #D81B60;
	color: #FFFFFF;
}
.schedule_navi a:hover,
.schedule_navi span{
	color: #FFFFFF;
}
.schedule_navi span.saturday{
	background-color: #1976D2;
	border-color: #1976D2;
}
.schedule_navi span.sunday{
	background-color: #D81B60;
	border-color: #D81B60;
}
.schedule_navi a + a,
.schedule_navi a + span,
.schedule_navi span + a,
.schedule_navi span + span{
	margin-left: 10px;
}
.schedule_weekly{
	margin: 10px 0 30px;
}
.schedule_weekly li{
	border-style: solid;
	border-width: 1px;
	border-radius: 5px;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	overflow: hidden;
	text-align: center;
	width: 100%;
}
.schedule_weekly li + li{
	margin-top: 20px;
}
.schedule_weekly li > section:first-child{
	padding: 10px;
	width: 100px;
}
.schedule_weekly li > section:first-child .fem_img_crop{
	display: block;
	margin-bottom: 5px;
	width: 100%;
}
.schedule_weekly li > section:first-child p{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
.schedule_weekly li > section:not(:first-child){
	width: -webkit-calc((100% - 100px) / 7);
	width: calc((100% - 100px) / 7);
}
.schedule_weekly li > section.schedule_rest{
	background-color: #BDBDBD;
}
.schedule_weekly li > section:not(:first-child) > :first-child{
	border-style: solid;
	border-width: 0 0 1px 0;
	font-size: 90%;
	padding: 5px;
}
.schedule_weekly li > section:not(:first-child) > :last-child{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 104px;
	width: 100%;
	padding: 10px;
}
.schedule_weekly li > section + section{
	border-style: solid;
	border-width: 0 0 0 1px;
}
.schedule_weekly li .saturday{
	color: #1976D2;
}
.schedule_weekly li .sunday{
	color: #D81B60;
}
.schedule_weekly li .fem_work{
	border-radius: 5px;
	font-size: 80%;
	padding: 3px 2px;
}

/* -- profile -- */
#fem_profile{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: 20px 0;
	width: 100%;
}
#fem_profile > section{
	width: 380px;
}
#profile_img{
	margin-bottom: 20px;
	padding: 4px;
	position: relative;
}
#profile_img:before{
	content: "";
	display: block;
	padding-top: -webkit-calc((496 / 372) * 100%);
	padding-top: calc((496 / 372) * 100%);
}
#profile_img > img{
	position: absolute;
	top: 4px;
	left: 4px;
	width: -webkit-calc(100% - 8px);
	width: calc(100% - 8px);
	z-index: 1;
}
#profile_img .fem_work{
	padding: 5px 0;
	position: absolute;
	bottom: 4px;
	left: 4px;
	text-align: center;
	width: -webkit-calc(100% - 8px);
	width: calc(100% - 8px);
	z-index: 2;
}
#profile_thumb{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
}
#profile_thumb img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	cursor: pointer;
	transition: opacity 0.2s ease-out 0s;
	width: -webkit-calc(100% / 5);
	width: calc(100% / 5);
}
#profile_thumb img:hover,
#profile_thumb img.active{
	opacity: 0.7;
}
#fem_profile .fem_info{
	background-position: right top;
	background-repeat: no-repeat;
	padding: 0 10px;
}
#fem_profile .fem_info h3{
	font-size: 120%;
}
#fem_profile .fem_info .fem_size{
	font-size: 100%;
}
#fem_profile .fem_info hr{
	border-style: solid;
	border-width: 1px 0 0 0;
	margin: 10px -10px;
}
#fem_profile .box_border{
	padding: 10px;
}
.profile_comment{
	border-radius: 5px;
	font-size: 100% !important;
	font-weight: normal;
	display: inline-block;
	margin-bottom: 5px;
	padding: 3px 6px;
}
.link_picbbs{
	border-style: solid;
	border-width: 1px;
	border-radius: 5px;
	display: inline-block;
	padding: 10px 0;
	position: relative;
	text-decoration: none;
	transition: all 0.2s ease-out 0s;
	width: 500px;
}
.link_picbbs:hover{
	color: #FFFFFF;
}
.link_picbbs:before{
	content: "\F100";
	font-size: 200%;
	line-height: 1;
	vertical-align: middle;
	margin-right: .5em;
}
.link_picbbs:after{
	content: "\F142";
	font-size: 200%;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/* -- access -- */
#access{
	margin: 10px 0;
}
#access:before{
	content: "";
	display: block;
	padding-top: 60%;
}
#access_free img{
	height: auto !important;
	max-width: 100%;
}

/* -- system -- */
.system_detail{
	border-style: solid;
	border-width: 1px;
	padding: 20px;
	margin-bottom: 30px;
}
.system_remarks{
	border-style: solid;
	border-width: 0 1px 1px 1px;
	font-size: 80%;
	padding: 20px;
	margin-top: -30px;
	margin-bottom: 30px;
}
.system_tbl tr th{
	width: 40%;
}
[class^="system_"] img{
	height: auto !important;
	max-width: 100%;
}

.common_tbl{
	border-collapse: separate;
	border-spacing: 1px 1px;
	margin-bottom: 30px;
	table-layout: fixed;
	width: 100%;
}
.common_tbl tr th{
	padding: 7px 20px;
	vertical-align: middle;
}
.common_tbl tr td{
	padding: 7px 20px;
	vertical-align: middle;
}

/* -- mailmag -- */
.mailmag_tbl tr th{
	width: 180px;
}
.mailmag_alert:before,
.mailmag_alert:after{
	content: "\F026";
	color: #FFC107;
	font-size: 140%;
	font-weight: normal;
	line-height: 1;
	vertical-align: sub;
}
.mailmag_alert:before{
	margin-right: 0.3em;
}
.mailmag_alert:after{
	margin-left: 0.3em;
}
.mailmag_tbl tr th .btn_mail{
	background-color: #FFFFFF;
	border-radius: 15px;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.12), 0 1px 4px rgba(0, 0, 0, 0.12);
	color: #757575;
	font-size: 110%;
	cursor: pointer;
	display: inline-block;
	height: 60px;
	line-height: 1;
	margin: 3px 0;
	padding: 10px 12px;
	text-align: center;
	text-decoration: none;
	transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
	vertical-align: middle;
}
.mailmag_tbl tr th .btn_mail:hover,
.mailmag_tbl tr th .btn_mail:focus{
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.12), 0 1px 4px rgba(0, 0, 0, 0.6);
	outline:none;
}
.mailmag_tbl tr th .btn_mail:after{
	content: "\F1F0";
	display: block;
	font-size: 140%;
	font-weight: normal;
	line-height: 1;
	margin-top: 0.3em;
	text-align: center;
}

/* -- contact -- */
.contact_tbl tr th{
	width: 30%;
}
.contact_tbl tr th.require{
	padding-right: 56px;
	position: relative;
}
.contact_tbl tr th.require:after{
	background-color: #F44336;
	color: #FFFFFF;
	content: "必須";
	display: block;
	font-size: 80%;
	font-weight: normal;
	line-height: 1;
	padding: 2px 3px;
	position: absolute;
	right: 20px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
input[type="text"], input[type="password"], input[type="tel"], input[type="email"], input[type="url"], input[type="number"], textarea{
	border: 1px solid #9E9E9E;
	margin: 3px 0;
	padding: 5px 10px;
	transition: all 0.3s ease-out 0s;
}
textarea{
	height: 12em;
	margin: 3px 0;
	resize: none;
	width: 100%;
}
.contact_tbl input[type="text"]{
	width: 100%
}
button[id^="btn_"],
button[name^="btn_"],
[class^="btn_"]{
	border-radius: 2px;
	font-size: 110%;
	cursor: pointer;
	display: inline-block;
	height: 36px;
	line-height: 36px;
	margin: 3px 12px;
	min-width: 112px;
	padding: 0 12px;
	text-align: center;
	transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
	vertical-align: middle;
}
button[id^="btn_"]:hover,
button[name^="btn_"]:hover,
[class^="btn_"]:hover,
button[id^="btn_"]:focus,
button[name^="btn_"]:focus,
[class^="btn_"]:focus{
	outline:none;
}
a[class^="btn_"]{
/*	color: #212121; */
	text-decoration: none;
}
.btn_confirm:before{
	content: "\F135";
	font-size: 140%;
	line-height: 1;
	margin-right: 0.2em;
	vertical-align: middle;
}
.btn_back:before{
	content: "\F141";
	font-size: 140%;
	line-height: 1;
	margin-right: 0.2em;
	vertical-align: middle;
}
.btn_send:before{
	content: "\F1F0";
	font-size: 140%;
	line-height: 1;
	margin-right: 0.2em;
	vertical-align: middle;
}

/* -- sitemap -- */
#sitemap{
	padding: 10px 20px;
}
#sitemap li{
	padding: 10px 20px;
}
#sitemap li a{
	text-decoration:none;
}

/**************************************************50
 * link
 **************************************************/
#link_tbl{
	table-layout: auto;
}
#link_tbl tr th:not([colspan="*"]){
	width: 270px;
}
#link_list{
	margin-bottom: 50px;
}
#link_list li{
	display: inline-block;
	margin-bottom :20px;
	vertical-align: top;
	width: 130px;
}
#link_list li img{
	vertical-align: middle;
}
#link_list li p{
	font-size: 80%;
	margin-top: 5px;
	padding-right: 1em;
}


/**************************************************50
 * hotel
 **************************************************/
#hotel .title_articles{
	margin-top: 20px;
}
.hotel_tbl{
	border-collapse: separate;
	border-spacing: 2px 0;
	font-size: 95%;
	margin: 0 -2px;
	table-layout: auto;
	width: 100%;
}
.hotel_tbl tr th{
	text-align: center;
	padding: 7px 0;
}
.hotel_tbl tr td{
	padding: 7px 10px;
	vertical-align: middle;
}
.hotel_tbl tr td.border_color{
	border-width: 1px 0 0 0;
	border-style: dashed;
}
.hotel_tbl tr td:nth-child(1){
	padding: 7px 0;
	width: 86px;
}
.hotel_tbl tr td:nth-child(2){
	width: 165px;
}
.hotel_tbl tr td:nth-child(3){
	text-align: center;
	padding: 7px 0;
	width: 120px;
}
.hotel_tbl tr td:nth-child(4){
}
.hotel_tbl tr td:nth-child(5){
	text-align: center;
	width: 55px;
}
.hotel_tbl tr td.remarks{
	padding: 0 10px 7px;
}
.hotel_tbl tr td a.link_hotel{
	display: inline-block;
	border-radius: 50%;
	height: 22px;
	line-height: 22px;
	text-decoration: none;
	width: 22px;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px transparent;
	position: relative;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.hotel_tbl tr td a.link_hotel:before{
	content: "\F339";
	font-size: 120%;
}
.hotel_tbl tr td a.link_hotel:hover,
.hotel_tbl tr td a.link_hotel:focus,
.hotel_tbl tr td a.link_hotel:active{
	-webkit-animation-name: link_hotel;
	animation-name: link_hotel;
	-webkit-animation-duration: 0.3s;
	animation-duration: 0.3s;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
}
@-webkit-keyframes link_hotel {
	50% {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
}
@keyframes link_hotel {
	50% {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
}
[class^="label_hotel_"]{
	display: inline-block;
	border-radius: 5px;
	color: #FFFFFF;
	font-size: 60%;
	line-height: 1;
	padding: 0.3em 0;
	text-align: center;
	vertical-align: middle;
	width: 86px;
}
.label_hotel_bis{
	background-color: #ADADCC;
}
.label_hotel_love{
	background-color: #FF7981;
}


/**************************************************50
 * blog
 **************************************************/
#main_blog li{
	border-collapse: separate;
	border-spacing: 20px 7px;
	display: table;
	width: 100%;
}
#main_blog li:last-child{
	border: none;
}
#main_blog li > *{
	display: table-cell;
	vertical-align: middle;
}
#main_blog li > p{
	text-align: center;
	width: 120px
}
#side_blog{
	max-height: 404px;
	overflow-y: auto;
}
#side_blog li{
	padding: 10px;
}
#side_blog li p{
	font-size: 80%;
	text-align: right;
}


/**************************************************50
 * facebook
 **************************************************/
#facebook{
	text-align: center;
}


/**************************************************50
 * photo
 **************************************************/
.photo_g_list{
	border-style: solid;
	border-width: 0 0 0 1px;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	margin-top: 10px;
	margin-bottom: 10px;
	width: 100%;
}
.photo_g_list li{
	border-style: solid;
	border-width: 1px 1px 1px 0;
	margin-bottom: -1px;
	padding: 10px 20px;
}
.photo_g_list li section h3{
	margin-top: 5px;
	overflow: hidden;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
.photo_g_list li section a.photo_g_img{
	display: block;
	position: relative;
	overflow: hidden;
}
.photo_g_list li section a.photo_g_img:before{
	content: "";
	display: block;
	padding-top: 100%;
}
.photo_g_list li section a.photo_g_img img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 100%;
	transition: opacity 0.2s ease-out 0s;
}
.photo_g_list li section a.photo_g_img img:hover{
	opacity: 0.7;
}
.photo_g_list li section div{
	font-size: 90%;
}

.photo_g_side{
	margin-bottom: 5px;
	max-height: 404px;
	overflow-y: auto;
	width: 100%;
}
.photo_g_side li{
	border-style: solid;
	border-width: 0 0 1px 0;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10px 0;
	width: 100%;
}
.photo_g_side li > section *:not(:last-child){
	margin-bottom: 5px;
}
.photo_g_side .fem_img_crop{
	width: 80px;
}
.photo_g_side li > section{
	width: -webkit-calc(100% - 80px - 30px);
	width: calc(100% - 80px - 30px);
}
.photo_g_side li > section > p{
	font-size: 80%;
	text-align: right;
}
.photo_g_side li > section h3,
.photo_g_side li > section h4{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
@media screen and (max-width:319px){
	.photo_g_list li{
		width: 100%;
	}
}
@media screen and (min-width:320px) and (max-width:479px){
	.photo_g_list li{
		width: 50%;
	}
}
@media screen and (min-width:480px) and (max-width:767px){
	.photo_g_list li{
		width: 33.3333333333%;
	}
}
@media screen and (min-width:768px){
	.photo_g_list li{
		width: 25%;
	}
}
#photo_gallery{
	margin-top: 30px;
	margin-bottom: 30px;
}
#photo_gallery a{
	display: inline-block;
	margin-bottom: 10px;
	vertical-align: top;
	width: 189px;
}
#photo_gallery img{
	vertical-align: top;
	width: 100%;
}


/**************************************************50
 * footer
 **************************************************/
footer{
}
#totop .wrap{
	padding: 3px 12px;
	text-align:center;
}
#totop_btn{
	cursor: pointer;
	display: inline-block;
	padding-left: 1.5em;
	position: relative;
	overflow: hidden;
	vertical-align: middle;
}
#totop_btn:before{
	content: "\F360";
	font-family: "Material Design Icons";
	font-size: 140%;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
footer nav{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-align-content: center;
	-ms-align-content: center;
	align-content: center;
	height: 80px;
	margin-bottom: 10px;
}
footer #footer_info nav a:hover{
	text-decoration: none !important;
}
#footer_info{
	padding-bottom:10px;
}
#footer_about{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 120%;
	height: 149px;
	overflow: hidden;
}
#footer_logo,
#footer_about > *{
	width: 400px;
	margin: 0 20px;
}
#footer_about .mdi-phone,
#footer_about .mdi-cellphone{
	font-size: 200%;
	line-height: 1.2;
}
#footer_about .mdi-phone:before,
#footer_about .mdi-cellphone:before{
	font-size: 90% !important;
	margin-left: -0.1em;
}
#footer_about .mdi-email-outline:before{
	vertical-align: middle;
}
#footer_about .mdi:before{
	font-size: 120%;
	margin-right: 0.2em;
}
#copyright{
	font-size: 80%;
	text-align: center;
}
#copyright .wrap{
	padding: 6px 0;
}
.gmap > iframe {
    border: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.gmap {
	position: relative;
    content: "";
    display: block;
    padding-top: 60%;
}
#gmap_side {
    height: 220px;
    margin-bottom: 5px;
    overflow: hidden;
    position: relative;
    width: 220px;
}
#gmap_side > iframe {
    border: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

