@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/* fontDesignation - 'Noto Sans JP' */
@import url('https://fonts.googleapis.com/css?family=Bitter:400,700');
/* fontDesignation - 'Bitter', serif;*/

html,body { font-family:'Noto Sans JP'; }
p {margin: 0; padding: 0;}
a:hover {opacity: 1;}

@media only screen and (min-width: 1025px) { .pageWrap { position: relative; width: 1060px; margin: 0 auto; } }
@media only screen and (max-width: 1024px) { .pageWrap { position: relative; width: 94%; margin: 0 auto; } }

::selection {
    background: #00afcc;
    color: #fff;
	}

::-moz-selection {
    background: #00afcc;
    color: #fff;
	}

/* site main color #00afcc */
/* site sub color  #05090e */

/*=================================================
	pintarest icon
=================================================*/

@media only screen and (min-width: 769px) {

	.pinterestBtn { margin: 0; }
	
	.pinterestBtn span {
		height: 26px !important;
		width: 26px !important;
		background: url(/img/upload/2018/10/social_icons_pin_b.png) !important;
		background-position: center !important;
		background-size: 26px 26px !important;
		box-shadow: none;
		}
	
	.pinterestBtn span:hover {
		opacity: 0.5;
		}

}

@media only screen and (max-width: 768px) {

	.pinterestBtn { margin: 0; }
	
	.pinterestBtn span {
		height: 26px !important;
		width: 26px !important;
		background: url(/img/upload/2018/10/social_icons_pin_b.png) !important;
		background-position: center !important;
		background-size: 26px 26px !important;
		box-shadow: none;
		}

}

/*=================================================
	header
=================================================*/

header { 
    position: fixed;
    border-top: none;
    overflow: hidden;
    z-index: 9999;
    margin: 0 auto;
    width: 100%;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
	}

#betterHeader {
	overflow: hidden;
    width: 96%;
    margin: 0 auto;
    border-bottom: solid 1px #FFF;
	}

#betterHeader h1 {
	float: left;
	display: inline-block;
    font-size: 12px;
    letter-spacing: 1px;
    color: #00afcc;
    padding: 12px 0 12px 6px;
	margin: 0;
    box-sizing: border-box;
	}

#betterHeader h1 a {
	display: inline-block;
    width: 84px;
	margin-right: 6px;
    vertical-align: text-bottom;
	}

#betterHeader ul {
    position: absolute;
    right: 1.6%;
    display: inline-block;
    margin: 0 12px 0 0;
	}

#betterHeader ul li {
	display: inline-block;
	margin-left: 18px;
	}

#betterHeader ul li a {
	position: relative;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	padding: 18px 0;
	letter-spacing: .5px;
	color: #FFF;
	transition: .2s;
	}

#betterHeader ul li a::after {
    position: absolute;
    top: inherit;
    bottom: -3px;
    left: 0;
    content: '';
    width: 100%;
    height: 5px;
    background-color: #00afcc;
    opacity: 0;
    transition: .2s;
	-webkit-transform: scale(.5);
    transform: scale(.5);
	}

#betterHeader ul li a:hover { color: #00afcc; }
#betterHeader ul li a:hover::after {
	bottom: -3px;
	opacity: 1;
	-webkit-transform: scale(1);
    transform: scale(1);
	}

#betterHeader ul li:first-child { margin: 0; }

.Nav > ul > li a {
	position: relative;
	display: inline-block;
	font-family: 'Bitter', serif;
	font-size: 13px;
	letter-spacing: 1px;
	padding: 18px 12px 12px;
	background: inherit;
	color: #FFF;
	transition: .2s;
	}

.Nav > ul > li a::after {
    position: absolute;
    top: -3px;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 5px;
    background-color: #00afcc;
    opacity: 0;
    transition: .2s;
	}

.Nav > ul > li a:hover { color: #00afcc; }
.Nav > ul > li a:hover::after {
	bottom: 0;
	opacity: 1;
	}

@media only screen and (max-width: 1024px) {
	
header { overflow: inherit; }
#betterHeader h1 a { width: 100px; }
#betterHeader ul {
    right: 80px;
    margin: 0;
	}

#betterHeader ul li a { padding: 22px 0 19px; }
.Nav .navbtn {
    top: -47px;
	right: 22px;
	}

.Nav .navbtn a, .Nav .navbtn a.close {
    background-color: rgba(255,255,255,.25);
    border: solid 1px #FFF;
    box-sizing: border-box;
	}

.Nav .navbtn a span::after,
.Nav .navbtn a.close span::after {
    top: 19px;
	left: 9px;
	}

.Nav .navbtn a::before,
.Nav .navbtn a.close::before {
    position: absolute;
    top: 10px;
    left: 9px;
	}

.Nav .navbtn a::after,
.Nav .navbtn a.close::after {
    position: absolute;
    bottom: 10px;
    left: 9px;
	}

.Nav .navbtn a.open::before { top: 18px; }
.Nav > ul { background-color: rgba(255,255,255,.95); }
.Nav > ul > li a {
	color: #000;
	display: block;
	text-align: center;
	}

}

@media only screen and (max-width: 767px) {

#betterHeader h1 a { width: 84px; }
#betterHeader h1 {
    float: none;
    display: block;
	font-size: 11px;
	}

#betterHeader ul {
	position: relative;
	display: block;
	right: auto;
	width: 100%;
	font-size: 0;
	}

#betterHeader ul li {
    display: inline-block;
    text-align: center;
    width: 49%;
	margin: 0 2% 0 0 !important;
	}

#betterHeader ul li:last-child { margin: 0 !important; }
.Nav .navbtn {
    top: -93px;
    right: 2%;
	}

#betterHeader ul li a {
    padding: 12px 0;
    margin: 6px 0 6px;
    display: block;
    border: solid 1px #FFF;
	background-color: rgba(255,255,255,.25);
	}

}

/*=================================================
	footer
=================================================*/

footer {
    padding: 60px 0 36px;
    background-color: #05090e;
	}

.better-footerBoxTop {
	width: 80%;
	max-width: 1280px;
	margin: 0 auto;
	}

.better-footerBoxTop ul {
	display: block;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-size: 0;
	}

.better-footerBoxTop ul li {
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	font-size: 12px;
	line-height: 18px;
	letter-spacing: 1px;
	color: #FFF;
	box-sizing: border-box;
	}

.better-footerBoxTop ul li .footerBox-logo {
    display: inline-block;
    vertical-align: middle;
    width: 36%;
    padding-right: 4%;
    box-sizing: border-box;
	transition: .2s;
	}

.better-footerBoxTop ul li .footerBox-logo:hover { opacity: .5; }
.better-footerBoxTop ul li .footerBox-shopdata {
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    width: 60%;
	}

.better-footerBoxTop ul li .footerBox-shopdata a {
	color: #FFF;
	text-decoration: underline;
	transition: .2s;
	}

.better-footerBoxTop ul li .footerBox-shopdata a:hover { color: #00afcc; }
.better-footerBoxTop ul li .footerBox-businessHour,
.better-footerBoxTop ul li .footerBox-finalAcceptance {	
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    padding: 18px;
	}

.better-footerBoxTop ul li dl { margin: 0; }
.better-footerBoxTop ul li:first-child { width: 45%; }
.better-footerBoxTop ul li:nth-child(2) {
	width: 35%;
	border-left: solid 1px #FFF;
	border-right: solid 1px #FFF;
	box-sizing: border-box;
	}
.better-footerBoxTop ul li:last-child { width: 20%; }
.footerBox-actionBtn {
	width: 80%;
	margin: 0 auto;
	}

.footerBox-actionBtn .recruit { margin-bottom: 6px; }
.footerBox-actionBtn a {
    float: none;
    width: 100%;
    display: inline-block;
    padding: 4px;
    font-size: 12px;
    letter-spacing: 2px;
    color: #FFF;
    text-decoration: none;
    transition: .2s;
    box-sizing: border-box;
	border: solid 2px #05090e;
	}

.footerBox-actionBtn a span {
    display: block;
    padding-right: 0;
    padding: 6px 18px;
    background: inherit;
    border: solid 2px #FFF;
	}

.footerBox-actionBtn a:hover { background: #00afcc; border:solid 2px #FFF; }
.better-footerBoxUnder {
    width: 80%;
    max-width: 1280px;
    margin: 24px auto 0;
    border-top: solid 1px #FFF;
	}

.better-footerBoxUnder ul.footerBox-nav {
	display: block;
	text-align: center;
	margin: 0;
	padding: 0;
	font-size: 0;
	}

.better-footerBoxUnder ul.footerBox-nav li { display: inline-block;	}
.better-footerBoxUnder ul.footerBox-nav li a {
	position: relative;
	display: inline-block;
	font-family: 'Bitter', serif;
	font-size: 13px;
	letter-spacing: 1px;
	padding: 18px 12px 12px;
	background: inherit;
	color: #FFF;
	transition: .2s;
	}

.better-footerBoxUnder ul.footerBox-nav li a::after {
    position: absolute;
    top: -3px;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 5px;
    background-color: #00afcc;
    opacity: 0;
    transition: .2s;
	-webkit-transform: scale(.5);
    transform: scale(.5);
	}

.better-footerBoxUnder ul.footerBox-nav li a:hover { color: #00afcc; }
.better-footerBoxUnder ul.footerBox-nav li a:hover::after {
	bottom: 0;
	opacity: 1;
	-webkit-transform: scale(1);
    transform: scale(1);
	}

.better-footerBoxUnder ul.snsBtn {
    display: block;
    text-align: center;
    margin: 36px auto 0;
	}

.better-footerBoxUnder ul.snsBtn li {
	display: inline-block;
    width: 24px;
    margin: 0 6px;
	transition: .2s;
	}

.better-footerBoxUnder ul.snsBtn li:hover { opacity: .5; }
footer .copy {
    text-align: center;
    color: #FFF;
    font-size: 14px;
    letter-spacing: 2px;
    margin-top: 12px;
	}

@media only screen and (max-width: 1024px) {

.better-footerBoxTop,
.better-footerBoxUnder {
    width: 90%;
    max-width: initial;
	}

.better-footerBoxTop ul li:nth-child(2) { width: 30%; }
.better-footerBoxTop ul li:last-child { width: 25%;	}

}

@media only screen and (max-width: 767px) {

footer { padding: 36px 0; }
.better-footerBoxTop ul li { display: block; }
.better-footerBoxTop ul li:first-child { width: 100%; }
.better-footerBoxTop ul li:nth-child(2) {
    width: 100%;
    border: none;
    border-top: solid 1px #FFF;
    border-bottom: solid 1px #FFF;
    margin: 12px auto;
	}

.better-footerBoxTop ul li:last-child { width: 100%; }
.better-footerBoxTop ul li .footerBox-logo {
    display: block;
    text-align: center;
    width: 100%;
    padding-right: 0;
	}

.better-footerBoxTop ul li .footerBox-logo a {
	display: inline-block;
	width: 50%;
	margin: 0 auto;
	}

.better-footerBoxTop ul li .footerBox-shopdata {
    display: block;
    text-align: center;
    width: 100%;
	margin: 12px 0 0 ;
	}

.better-footerBoxTop ul li .footerBox-businessHour,
.better-footerBoxTop ul li .footerBox-finalAcceptance { padding: 18px 12px }
.footerBox-actionBtn { width: 100%;	}
.footerBox-actionBtn a { letter-spacing: 1px; }
.better-footerBoxUnder { margin: 12px auto 0; }
.better-footerBoxUnder ul.footerBox-nav li a {
    font-size: 11px;
    padding: 18px 6px 12px;
	}

.better-footerBoxUnder ul.snsBtn { margin: 24px auto 0;	}

}

/*=================================================
	sidebar
=================================================*/

#sub .subBox .titleArea {
    margin: 0 auto 24px;
    border-bottom: 1px solid #000;
	}

#sub .subBox .titleArea p span.en {
    font-size: 21px;
    font-family: 'Bitter', serif;
    letter-spacing: 0;
	}

#sub .subBox .titleArea p span.jp {
    margin-left: 6px;
    font-size: 12px;
    font-weight: bold;
	}

#sub #subStaff ul li a,
#sub #subCategory ul li a,
#sub #subFaq ul li a,
#sub #subNewscate ul li a,
#sub #subMedicate ul li a,
#sub #subBlogcate ul li a {
    display: block;
    margin: 0 auto;
    padding: 6px;
    color: #000;
    font-size: 12px;
    box-sizing: border-box;
	transition: .2s;
	}

#sub #subStaff ul li a span,
#sub #subCategory ul li a span,
#sub #subFaq ul li a span,
#sub #subNewscate ul li a span,
#sub #subMedicate ul li a span,
#sub #subBlogcate ul li a span {
    display: block;
    border: solid 1px #000;
    padding: 6px 0;
	}

#sub #subStaff ul li a:hover,
#sub #subCategory ul li a:hover,
#sub #subFaq ul li a:hover,
#sub #subNewscate ul li a:hover,
#sub #subMedicate ul li a:hover,
#sub #subBlogcate ul li a:hover {
	background: #00afcc;
	color: #FFF;
	}

#sub #subStaff ul li a:hover span,
#sub #subCategory ul li a:hover span,
#sub #subFaq ul li a:hover span,
#sub #subNewscate ul li a:hover span,
#sub #subMedicate ul li a:hover span,
#sub #subBlogcate ul li a:hover span {
	border-color:#FFF;
	}

/* -- sidebar blog serch start -- */

dl.search2 dt { padding: 0; }
dl.search2 dt input { padding: 1px 0 1px 8px; }
dl.search2 dd button {
	font-size: 11px;
	letter-spacing: 1px;
	cursor: pointer;
    background-color: #05090e;
    border: 1px solid #05090e;
	transition: .2s;
	}

dl.search2 dd button:hover {
	background-color: #00afcc;
	border-color: #00afcc;
	}

/* -- sidebar blog serch end -- */
/* -- sidebar blog new start -- */

.sideBlogBox li {
    display: block;
    margin: 0 0 6px;
    padding: 0;
    font-size: 0;
	}

.sideBlogBox li .blogBox-img  {
    display: inline-block;
    vertical-align: top;
    width: 30%;
	}

.sideBlogBox li .blogBox-img img,
#subNews .wrapper ul li img {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
	}

.sideBlogBox li:hover .blogBox-img img,
#subNews .wrapper ul:hover li img {
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

.sideBlogBox li .blogBox-txt a { transition: .2s; }
.sideBlogBox li:hover .blogBox-txt a,
.sideBlogBox li:hover .blogBox-txt-border .category a,
.sideBlogBox li:hover .blogBox-txt-border .staff a { color: #00afcc; }

.sideBlogBox li .blogBox-txt {
    display: inline-block;
    vertical-align: top;
    width: 65%;
    padding-left: 5%;
	}

.sideBlogBox li .blogBox-txt .blogBox-txt-border {
    overflow: hidden;
    border-top: dotted 1px #CCC;
    padding: 6px 0 0;
    margin: 0 0 12px;
	}

.sideBlogBox li .blogBox-txt a { color: #000; }
.sideBlogBox li .blogBox-txt-border .date {
    float: left;
    padding: 3px 0;
    font-size: 12px;
	}

.sideBlogBox li .blogBox-txt .title {
	font-size: 12px;
	font-weight: bold;
	padding-bottom: 6px;
	}

.sideBlogBox li .blogBox-txt-border .category,
.sideBlogBox li .blogBox-txt-border .staff {
    float: right;
    margin-bottom: 2px;
	}

.sideBlogBox li .blogBox-txt-border .category a,
.sideBlogBox li .blogBox-txt-border .staff a {
    display: inline-block;
    background: #05090e;
    color: #FFF;
    padding: 3px 6px;
    font-size: 10px;
    margin-left: 6px;
    letter-spacing: 1px;
	}

#sub .subBox .titleArea a {
    float: right;
    display: block;
    padding: 8px 2px 6px 3px;
    font-size: 11px;
    color: #FFF;
    background: #05090e;
    text-decoration: none;
    transition: .2s;
	}

#sub .subBox .titleArea a:hover { background: #00afcc; }
#sub .subBox .titleArea a span {
	position: relative;
    font-size: 11px;
    padding: 0px 9px;
    background: none;
    border: solid 1px #FFF;
	}

/* -- sidebar blog new end -- */
/* -- sidebar news new start -- */

#subNews .wrapper ul { font-size: 0; }
#subNews .wrapper ul li {
    display: inline-block;
    vertical-align: middle;
    font-size: 12px;
	margin-bottom: 12px;
	}

#subNews .wrapper ul li:first-child { width: 30%; }
#subNews .wrapper ul li:last-child {
	width: 66%;
    padding-left: 4%;
	}

#subNews .wrapper ul li:last-child a {
	color: #000;
	font-size: 10px;
	}

#subNews .wrapper ul li:last-child .info_title a {
	font-size: 12px;
	line-height: 18px;
	font-weight: bold;
	}

#subNews .wrapper ul li a { transition: .2s; }
#subNews .wrapper ul:hover li a { color: #00afcc; }

/* -- sidebar news new end -- */

#sub #subStyle ul li {
	position: relative;
	transition: .2s;
	}

#sub #subStyle ul li a.txt h3 {
	position: absolute;
	bottom: 6px;
	left: 12px;
	color: #FFF;
	text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;
	}

#sub #subStyle ul li:hover { opacity: .5; }

@media only screen and (max-width: 1024px) {

#sub {
    margin: 0 auto 5rem;
    width: 90%;
	}

#sub .subBox .titleArea p span.jp { font-family:'Noto Sans JP'; }
#sub #subStaff ul li,
#sub #subCategory ul li,
#sub #subMedicate ul li,
#sub #subBlogcate ul li,
#subNewscate ul li,
#subFaq ul li {
    text-align: center;
    display: inline-block;
    width: 49.8%;
	}

#sub #subStaff ul li a,
#sub #subCategory ul li a,
#sub #subMedicate ul li a,
#sub #subBlogcate ul li a,
#sub #subNewscate ul li a,
#sub #subFaq ul li a {
    border-bottom: none;
	}

#subNews .wrapper ul {
    font-size: 0;
    display: inline-block;
    vertical-align: top;
    width: 49%;
	margin-right: 2%;
	margin-bottom: 24px;
	}

#subNews .wrapper ul:nth-child(2n) { margin: 0; }
#sub .subBox .titleArea a {
    float: none;
    text-align: center;
    display: block;
    width: 120px;
    padding: 3px;
    font-size: 11px;
    color: #FFF;
    background: #05090e;
    text-decoration: none;
    transition: .2s;
    right: inherit;
    left: 50%;
    margin-left: -60px;
	}

#sub .subBox .titleArea a span {
    position: relative;
    display: block;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 6px 9px;
    background: none;
    border: solid 1px #FFF;
	}

.sideBlogBox li {
    display: inline-block;
    vertical-align: top;
    width: 49%;
    margin: 0 0 24px;
	margin-right: 2%;
    padding: 0;
    font-size: 0;
	}

.sideBlogBox li:nth-child(2n) { margin-right: 0; }
.sideBlogBox li .blogBox-img img,
#subNews .wrapper ul li img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
	}

#sub #subStyle ul.wrapper li,
#subNewscate ul.wrapper li {
    margin: 0 2.65% 1rem 0;
    width: 23%;
	}

#sub #subStyle ul.wrapper li:nth-child(3n+2) { margin: 0 2.65% 1rem 0; }
#sub #subStyle ul.wrapper li:nth-child(4n) { margin: 0; }
#sub #subStyle ul li a.txt h3 {
    position: absolute;
    bottom: 6px;
    left: 12px;
    letter-spacing: 1px;
    color: #FFF !important;
    text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;
	}

#sub #subStaff { margin: 0; }

}

@media only screen and (max-width: 767px) {

#sub #subStaff ul li,
#sub #subCategory ul li,
#sub #subMedicate ul li,
#sub #subBlogcate ul li,
#subNewscate ul li,
#subFaq ul li {
    text-align: center;
    display: block;
    width: 100%;
	}

#sub .subBox { padding-bottom: 0; }
#sub .subBox .titleArea { margin: 0 auto 12px; }
body.menu #main .sect .menu-box { margin-bottom: 36px; }
#subNews .wrapper ul {
    font-size: 0;
    display: block;
    vertical-align: top;
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
	}

#sub .subBox .wrapper {
    margin-bottom: 20px;
    padding-bottom: 48px;
	}

.sideBlogBox li {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    margin: 0 0 12px;
    margin-right: 0;
    padding: 0;
    font-size: 0;
	}

#sub #subStyle ul.wrapper li,
#subNewscate ul.wrapper li {
    margin: 0 4% 1rem 0;
    width: 48%;
	}

#sub #subStyle ul.wrapper li:nth-child(2n) { margin-right: 0;}
#sub #subStyle ul.wrapper { padding: 0; }

#sub #subStaff { margin: 0 0 30px; }

}

/*=================================================
	top
=================================================*/

body.top #content { width: 100%; }

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 52px;
	}

/*-- top concept --*/
body.top #main { width: 100%; }
body.top .better-top-concept {
	width: 100%;
	text-align: center;
    font-size: 12px;
    line-height: 24px;
	margin-bottom: 64px;
	}

body.top .better-top-concept h2 {
	font-size: 36px;
	font-weight: normal;
	font-family: 'Bitter', serif;
	}

body.top .better-top-concept .topconceptTitle {
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 2px;
	}

body.top .better-top-concept .swiper-container { width: 640px; }
body.top .better-top-concept .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 6px; }

/*-- top style--*/

body.top section.sect {
    background: #f6f6f6;
    margin: 0 auto 64px;
	padding: 64px 0;
    clear: left;
	}

body.top section.sect .titleArea {
    margin: 0 auto 64px !important;
    border-bottom: none !important;
	text-align: center;
	}

body.top section.sect ul.wrapper {
    margin: 0 auto;
    width: 80%;
	}

body.top section.sect .titleArea h2 {
    float: none;
    margin: 0;
    padding: 0;
    color: #333;
    text-align: center;
	font-size: 36px;
	font-weight: normal;
    font-family: 'Bitter', serif !important;
	}

body.top section.sect .titleArea a {
    float: none;
    display: inline-block !important;
    padding: 4px;
    font-size: 12px !important;
    letter-spacing: 2px;
    color: #FFF !important;
    text-decoration: none !important;
    background: #333;
	transition: .2s;
	}

body.top section.sect .titleArea a span {
    display: block;
    padding: 6px 18px;
    background: inherit !important;
    border: solid 2px #FFF;
	}

body.top section.sect .titleArea a:hover { background: #00afcc; }
body.top section.sect .titleArea p {
    font-size: 11px;
    letter-spacing: 1px;
    line-height: 18px;
    width: 250px;
    margin: 12px auto;
	}

body.top section.sect.sect01 ul.wrapper li {
	position: relative;
    margin: 0px 2.66% 24px 0;
    width: 23%;
	transform-style: preserve-3d;
    box-shadow: 0 3px 24px rgba(0, 0, 0, 0.2);
	}

body.top section.sect ul.wrapper li a.img {
    display: block;
    margin: 0;
	}

body.top section.sect ul.wrapper li a.txt h3 {
    position: absolute;
    width: 100%;
    bottom: 5%;
    left: 60%;
    color: #FFF;
    font-size: 12px;
    line-height: 12px;
    letter-spacing: 1px;
    font-weight: normal;
    text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;
    -webkit-transform: translateZ(50px) translateY(-50%) translateX(-50%);
    transform: translateZ(50px) translateY(-50%) translateX(-50%);
	}

/*-- top news & blog --*/

body.top .better-top-newsbox {
	display: block;
	width: 80%;
	margin: 0 auto 64px;
	font-size: 0;
	}

body.top .better-top-newsbox h2 {
	font-size: 30px;
	font-weight: normal;
	font-family: 'Bitter', serif;
	}

body.top .better-top-newsbox .leftBox {
	display: inline-block;
	vertical-align: top;
	width: 35%;
	font-size: 12px;
	}

body.top .better-top-newsbox .rightBox {
	display: inline-block;
	vertical-align: top;
	width: 60%;
	padding-left: 5%;
	font-size: 12px;
	}

body.top .better-top-newsbox .leftBox ul {
    display: block;
    margin: 0 auto 12px;
    padding: 0 0 12px;
    font-size: 0;
    border-bottom: solid 1px #000;
	}

body.top .better-top-newsbox .leftBox ul li {
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	}

body.top .better-top-newsbox .leftBox ul li:first-child { width: 20%; }
body.top .better-top-newsbox .leftBox ul li:last-child {
	width: 76%;
	padding-left: 4%;
	}

body.top .better-top-newsbox .leftBox ul li:last-child a { color: #000; }
body.top .better-top-newsbox .info_date {
	font-size: 11px;
	line-height: 18px;
	}

body.top .better-top-newsbox .info_title {
	font-size: 13px;
	line-height: 18px;
	}

body.top .better-top-newsbox .info_title a { display: block; }
.moreBtn {
	text-align: center;
	margin: 32px auto;
	}

.moreBtn a {
    float: none;
    display: inline-block;
    padding: 4px;
    font-size: 12px;
    letter-spacing: 2px;
    color: #FFF;
    text-decoration: none;
    background: #333;
	transition: .2s;
	}

.moreBtn a span {
    display: block;
    padding-right: 0;
    padding: 6px 18px;
    background: inherit;
    border: solid 2px #FFF;
	}

.moreBtn a:hover { background: #00afcc; }
body.top .better-top-newsbox .rightBox ul { overflow: hidden; }
body.top .better-top-newsbox .rightBox ul li {
    float: left;
    width: 28%;
    margin-left: 4%;
	}

body.top .better-top-newsbox .rightBox ul li img,
body.top .better-top-newsbox .leftBox ul li img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}

body.top .better-top-newsbox .rightBox ul li:hover img,
body.top .better-top-newsbox .leftBox ul:hover img {
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

body.top .better-top-newsbox .rightBox ul li a,
body.top .better-top-newsbox .leftBox ul li a { transition: .2s; }
body.top .better-top-newsbox .rightBox ul li:hover a,
body.top .better-top-newsbox .leftBox ul:hover li a { color: #00afcc; }

@-webkit-keyframes flash {
	0% {
		opacity: .4;
	}
	100% {
	opacity: 1;
	}
}

@keyframes flash {
	0% {
		opacity: .4;
	}
	100% {
	opacity: 1;
	}
}

body.top .better-top-newsbox .rightBox ul li:first-child {
	float: left;
	width: 68%;
	margin: 0;
	}

body.top .topblog-txt a { color: #000; }
body.top .topblog-txt .title a {
    display: block;
    font-size: 14px;
    font-weight: bold;
    line-height: 18px;
    margin: 12px 0;
	}

body.top .better-top-newsbox .rightBox ul li:first-child .title a { font-size: 18px; }
body.top .topblog-txt .cont a {
	display: block;
    font-size: 12px;
    line-height: 18px;
    margin: 12px 0;
	}

body.top .better-top-newsbox .rightBox ul li:nth-child(n+2) .cont { display: none; }
body.top .topblog-txt .date {
    float: left;
    padding: 3px 0;
	}

body.top .topblog-txt .category,
body.top .topblog-txt .staff {
	float: right;
	margin-bottom: 2px;
	}

body.top .topblog-txt .category a,
body.top .topblog-txt .staff a {
    display: inline-block;
    background: #000;
    color: #FFF;
    padding: 3px 6px;
    font-size: 10px;
    margin-left: 6px;
	letter-spacing: 1px;
	}

body.top .topblog-txt-border {
    overflow: hidden;
    border-top: dotted 1px #CCC;
    padding: 6px 0 0;
    margin: 0 0 12px;
	}

@media only screen and (max-width: 1024px) {

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 12px;
	}

body.top #content { padding: 0; }
body.top #main section.sect .titleArea { border-bottom: none; }
body.top #main section.sect ul.wrapper li a.img { margin: 0; }
#mainVisual { margin: 0 auto 64px; }

body.top #main section.sect ul.wrapper li a.txt h3 {
	margin: 0;
	color: #FFF;
	bottom:12px;
	left: 12px;
    -webkit-transform: none;
    transform: none;
	}

body.top #main section.sect.sect01 ul.wrapper li:nth-child(n+7) { display: none; }
body.top .topblog-txt .title a { font-size: 12px; }
body.top .better-top-newsbox .rightBox ul li:first-child .title a { font-size: 16px; }

}

@media only screen and (max-width: 767px) {

body.top .better-top-concept .swiper-container { width: 100%; }
#mainVisual {
	height: 319px;
	padding-top: 81px;
	margin: 0 auto 42px;
	}
#mainVisual img { transform: scale(2); }

body.top .better-top-concept .swiper-container { width: 90%; }
body.top section.sect ul.wrapper { width: 90%; }

body.top #main section.sect.sect01 ul.wrapper li {
    width: 47%;
    margin: 0 6% 24px 0;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2)
	}

body.top #main section.sect.sect01 ul.wrapper li:nth-child(3n+2) { margin: 0; }
body.top #main section.sect.sect01 ul.wrapper li:nth-child(5n) { margin-right: 6%; }
body.top #main section.sect.sect01 ul.wrapper li:nth-child(2n) { margin-right: 0; }

body.top .better-top-newsbox { width: 90%; }
body.top .better-top-newsbox .leftBox {
    display: block;
    width: 100%;
	margin: 60px auto;
	}

body.top .better-top-newsbox h2 {
    text-align: center;
    font-size: 36px;
	}

body.top .better-top-newsbox .leftBox ul:nth-child(n+6) { display: none; }
body.top .better-top-newsbox .rightBox {
    display: block;
    width: 100%;
    padding-left: 0;
	margin: 60px auto;
	}

body.top .better-top-newsbox .rightBox ul li {
    float: none;
    width: 100%;
    margin-left: 0;
	margin: 0 0 36px;
	}

body.top .better-top-newsbox .rightBox ul li:first-child {
    float: none;
    width: 100%;
	margin: 0 0 36px;
	}

body.top .better-top-newsbox .rightBox ul li:nth-child(n+2) .cont { display: block;	}
body.top .better-top-newsbox .rightBox ul li img,
body.top .better-top-newsbox .leftBox ul li img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
	}

body.top .better-top-newsbox .rightBox ul li:last-child { margin-bottom: 0; }
body.top .topblog-txt .title a { font-size: 16px; }

}

@media only screen and (max-width: 375px) {
#mainVisual { height: 283px; }
}

@media only screen and (max-width: 320px) {
#mainVisual { height: 240px; }
}

/*=================================================
	page
=================================================*/

.pager ul li a:hover {
    background: #00afcc;
	}

body.lower #pageTitleArea {
    position: relative;
    margin: 0 auto;
    width: 100%;
    height: auto;
    padding: 160px 0 24px;
    background: url(/img/upload/2018/10/page_bk.jpg) repeat;
    background-position: center center;
	}

body.lower #pageTitleArea::before {
	position: absolute;
	content: "";
	background: rgba(0,0,0,0.25);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	}

body.lower #pageTitleArea h2 {
	position: relative;
    width: 80%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    text-align: left;
    font-size: 16px;
    font-weight: bold;
    color: #FFF;
	text-shadow: 0 0 10px #000;
	}

body.lower #pageTitleArea h2 span {
    display: block;
    margin-bottom: 0px;
    font-size: 36px;
	font-weight: normal;
    font-family: 'Bitter', serif;
    text-transform: inherit;
    letter-spacing: 2px;
	}

.pan {
	display: block;
    width: 100%;
    margin: 0 0 36px;
    padding: 12px 0;
    border-top: solid 1px #f6f6f6;
    border-bottom: solid 1px #f6f6f6;
	box-sizing: border-box;
	}

.pan ul {
	display: block;
	width: 80%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0;
	font-size: 0;
	}

.pan ul li {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	letter-spacing: 1px;
	margin-right: 24px;
	}

.pan ul li::after {
    position: absolute;
    content: ">";
    right: -16px;
	}

.pan ul li:last-child { margin:0; }
.pan ul li:last-child::after { display: none;}

.pan ul li a {
	color: #000;
	transition: .2s;
	}

.pan ul li a:hover { color: #00afcc; }

@media only screen and (max-width: 1024px) {

body.lower #pageTitleArea {
    padding: 120px 0 24px;
    background-size: cover;
	}

body.lower #pageTitleArea h2 { width: 90%; }
.pan ul {
    width: 90%;
    max-width: inherit;
	}

#content { padding: 0; }
body.lower #content #main {
    width: 90%;
	margin: 0 auto;
	}

}

@media only screen and (max-width: 767px) {

body.lower #pageTitleArea h2 { font-size: 14px; }
body.lower #pageTitleArea h2 span { font-size: 30px; }

}

/*=================================================
	concept
=================================================*/

body.concept .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 12px; }
body.concept #main,
body.company #main,
body.recruit #main {
    margin: 12px auto 60px;
	}

body.concept #main h3,
body.company #main h3,
body.recruit #main h3 {
	font-size: 14px;
	}

/*=================================================
	informations
=================================================*/

body.news #content #main {
    width: 756px;
    margin-right: 24px;
	}

body.news .inforBox {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 24px;
	}

body.news .inforBox:nth-child(2n) { margin: 0 0 24px 0; }
body.news .inforBox-txt a { color: #000; }
body.news .inforBox-txt .title a {
	display: block;
    font-size: 16px;
	font-weight: bold;
	margin: 9px 0;
	}

body.news .inforBox-txt .cont a {
    display: block;
    font-size: 12px;
    line-height: 18px;
    margin: 6px 0;
	}

body.news .inforBox-txt-border {
    overflow: hidden;
    border-top: dotted 1px #CCC;
    padding: 6px 0 0;
    margin: 0 0 12px;
	}

body.news .inforBox-txt-border .date {
    float: left;
    padding: 3px 0;
	font-size: 12px;
	}

body.news .inforBox-txt-border .category {
    float: right;
    margin-bottom: 2px;
	}

body.news .inforBox-txt-border .category a {
    display: inline-block;
    background: #000;
    color: #FFF;
    padding: 3px 6px;
    font-size: 10px;
    margin-left: 6px;
    letter-spacing: 1px;
	}

body.news .inforBox .inforBox-img img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}

body.news .inforBox:hover .inforBox-img img {
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

body.news .inforBox a,
body.news .inforBox a { transition: .2s; }
body.news .inforBox:hover a,
body.news .inforBox:hover li a { color: #00afcc; }

@media only screen and (max-width: 1024px) {

body.news #content #main {
    width: 90%;
	margin: 0 auto;
	}

body.news #main .couponArea { margin: 0 auto 24px; }

}

@media only screen and (max-width: 767px) {

body.news .inforBox {
    display: block;
    width: 100%;
	}

body.news .inforBox-txt .title a {
    font-size: 14px;
    margin: 6px 0;
	}

}

/*=================================================
	information
=================================================*/

body.news #main .sect .titleArea {
    margin: 0 auto 12px;
    border-bottom: 1px solid #000;
	}

body.news #main .sect .titleArea h3 {
    padding: 0 0 9px;
    font-size: 16px;
    color: #000;
    font-weight: bold;
	}

body.news #main .sect .wrapper li { background-color: #000; }
body.news #main .articleTxt { margin-top: 24px; }

@media only screen and (max-width: 1024px) {

body.news #main .sect {
    width: auto;
    margin-bottom: 48px;
    padding: 0;
	}

}

/*=================================================
	menu
=================================================*/

body.menu #main .sect { width: 100%; }
body.menu #main .sect .titleArea {
    margin: 0 auto 12px;
    border-bottom: 1px solid #000;
	}

body.menu #main .sect .titleArea h3 span.en {
    font-size: 21px;
    font-family: 'Bitter', serif;
    font-weight: bold;
    border-bottom: solid 5px #000;
    padding: 0 0 6px;
	}

body.menu #main .sect .titleArea h3 {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0 0 5px;
    margin-bottom: 5px;
    color: #333;
    font-weight: normal;
	}

body.menu #main .sect .table td:last-child { font-weight: bold;	}
body.menu #main .sect .menu-box {
    font-size: 11px;
    line-height: 18px;
    border: solid 2px #000;
    padding: 12px;
    box-sizing: border-box;
	}

@media only screen and (max-width: 1024px) {

body.menu #main .sect { width: 100%; margin: 0; }
body.menu #main .sect .table tr {
    display: block;
    margin-bottom: 18px;
	font-size: 0;
	}

body.menu #main .sect .table td { box-sizing: border-box; }
body.menu #main .sect .table > tbody > tr > td:first-child {
    display: inline-block;
    text-align: left !important;
    width: 87%;
	}

body.menu #main .sect .table td:last-child {
    display: inline-block;
    font-weight: bold;
    width: 13%;
    text-align: right;
	}

body.menu #main .sect .menu-box { margin-bottom: 48px; }

}

@media only screen and (max-width: 767px) {

body.menu #main .sect .table > tbody > tr > td:first-child { width: 70%; }
body.menu #main .sect .table td:last-child {
    width: 30%;
    word-wrap: break-word;
	}

}

/*=================================================
	coupon
=================================================*/

body.coupon #main section.sect01 .titleArea h3 span.en {
    font-size: 24px;
    font-family: 'Bitter', serif;
	}

body.coupon #main section.sect01 .titleArea {
    margin: 0 auto 18px;
    border-bottom: 1px solid #000;
	}

body.coupon #main section.sect01 .filterArea .btn button {
    padding: 10px 0;
    text-align: center;
    color: #fff;
    width: 240px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 2px;
    background-color: #00afcc;
    border: none;
	transition: .2s;
	cursor: pointer;
	}

body.coupon #main section.sect01 .filterArea {
    margin: 0 auto 50px;
    padding: 20px;
    width: 860px;
    background-color: #f6f6f6;
    border-radius: 12px;
	}

body.coupon #main section.sect01 .filterArea dl {
    margin: 0 auto 9px;
    width: 860px;
    background-color: #fff;
    border-radius: 9px;
	}

body.coupon #main section.sect01 .filterArea dl dd { padding: 0 20px 0 0; }
body.coupon #main section.sect01 .filterArea dl dd ul li { line-height: 24px; }
body.coupon .twoResult {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 0;
	}

body.coupon .twoResultWrap {
	display: inline-block;
	vertical-align: top;
	width: 49%;
	margin: 0 2% 36px 0;
	font-size: 12px;
	border: solid 1px #000;
	box-sizing: border-box;
	}

body.coupon .twoResultWrap:nth-child(2n) { margin: 0 0 24px; }
body.coupon .twoResult-target,
body.coupon .twoResult-content {
	display: table-cell;
    vertical-align: middle;
	box-sizing: border-box;
	}

body.coupon .twoResult-target {
    background: #000;
    color: #FFF;
    text-align: center;
    width: 30px;
    padding: 0 6px;
    font-size: 14px;
    line-height: 28px;
    font-weight: bold;
	}

body.coupon .twoResult-content {
	padding: 12px;
	overflow: hidden;
	}

body.coupon .twoResult-inBox ul {
	width: 100%;
	display: table;
	table-layout: fixed;
	margin: 0;
	padding: 0;
	}

body.coupon .twoResult-inBox li {
	display: table-cell;
	vertical-align: top;
	box-sizing: border-box;
	}

body.coupon .twoResult-inBox li:first-child { width: 30%; }
body.coupon .twoResult-inBox li:last-child {
	width: 70%;
	padding-left: 2%;
	}

body.coupon .twoResult-inBox li h5 {
    font-size: 16px;
    line-height: 22px;
    font-weight: bold;
    margin: 0 0 6px;
	}

body.coupon li .twoResult-category span {
    display: inline-block;
    text-align: center;
    background: #FFF;
    color: #000;
    border: solid 1px #000;
    padding: 2px 6px;
    margin-bottom: 6px;
    margin-right: 6px;
	}

body.coupon li .twoResult-price {
    text-align: right;
    margin: 12px 0;
    font-size: 24px;
    font-weight: bold;
	color: #F00;
	}

body.coupon li .twoResult-text {
	font-size: 12px;
	line-height: 18px;
	}

body.coupon li .twoResult-reserve a {
	position: relative;
    display: block;
    width: 100%;
    text-align: center;
    padding: 9px 0;
    margin-top: 12px;
    border: solid 1px #000;
    color: #000;
    background: #FFF;
    font-size: 14px;
    font-weight: bold;
	box-sizing: border-box;
	z-index: 2;
	}

body.coupon li .twoResult-reserve a:hover {
    background: #00afcc;
    border-color: #00afcc;
	color: #FFF;
	}

body.coupon li .twoResult-reserve a::before {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	}

body.coupon li .twoResult-reserve a,
body.coupon li .twoResult-reserve a::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

body.coupon li .twoResult-reserve a::before { right: 0; }
body.coupon li .twoResult-reserve a:hover::before {
	width: 0;
	background-color: #fff;
	}

body.coupon .two-rule {
	border-top: dotted 2px #666;
	margin-top: 12px;
	padding-top: 12px;
	}

body.coupon .two-rule p {
    display: inline-block;
    font-size: 11px;
    line-height: 16px;
    margin-right: 12px;
	}

body.coupon .two-rule p span {font-weight: bold;}

@media only screen and (max-width: 1024px) {

body.coupon #main section.sect01 .filterArea dl {
    width: 100%;
    box-sizing: border-box;
	}

body.coupon #main section.sect01 .filterArea {
    margin: 0 auto 24px;
    width: 100%;
    box-sizing: border-box;
	}

body.coupon #main section.sect01 .filterArea .btn { margin: 18px auto 0; }

}

@media only screen and (max-width: 767px) {

body.coupon #main section.sect01 .filterArea .btn button { width: 100%; }
body.coupon .twoResult {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 0;
	}

body.coupon .twoResultWrap {
    display: block;
    vertical-align: top;
    width: 100%;
    margin: 0 2% 12px 0;
    font-size: 12px;
    border: solid 1px #000;
    box-sizing: border-box;
	}

body.coupon .twoResultWrap:nth-child(2n) { margin: 0 0 12px; }

body.coupon .twoResult-target,
body.coupon .twoResult-content {
	display: table-cell;
    vertical-align: middle;
	box-sizing: border-box;
	}

body.coupon .twoResult-target {
    background: #000;
    color: #FFF;
    text-align: center;
    width: 30px;
    padding: 0 6px;
    font-size: 14px;
    line-height: 28px;
    font-weight: bold;
	}

body.coupon .twoResult-content {
	padding: 12px;
	overflow: hidden;
	}

body.coupon .twoResult-inBox ul {
	width: 100%;
	display: table;
	table-layout: fixed;
	margin: 0;
	padding: 0;
	}

body.coupon .twoResult-inBox li {
	display: table-cell;
	vertical-align: top;
	box-sizing: border-box;
	}

body.coupon .twoResult-inBox li:first-child { width: 30%; }
body.coupon .twoResult-inBox li:last-child {
	width: 70%;
	padding-left: 4%;
	}

body.coupon .twoResult-inBox li h5 {
    font-size: 14px;
    line-height: 18px;
    font-weight: bold;
    margin: 0 0 6px;
	}

body.coupon li .twoResult-category span {
    display: inline-block;
    text-align: center;
    background: #FFF;
    color: #000;
    border: solid 1px #000;
    padding: 2px 6px;
    margin-bottom: 6px;
    margin-right: 6px;
	}

body.coupon li .twoResult-price {
    text-align: right;
    margin: 12px 0;
    font-size: 24px;
    font-weight: bold;
	color: #F00;
	}

body.coupon li .twoResult-text {
	font-size: 12px;
	line-height: 18px;
	}

body.coupon li .twoResult-reserve a {
	position: relative;
    display: block;
    width: 100%;
    text-align: center;
    padding: 9px 0;
    margin-top: 12px;
    border: solid 1px #000;
    color: #000;
    font-size: 12px;

    font-weight: bold;
	}

body.coupon li .twoResult-reserve a::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: "";
	top: 0;
	width: 50%;
	height: 100%;
	background-color: #FFF;
	}

body.coupon li .twoResult-reserve a,
body.coupon li .twoResult-reserve a::before,
body.coupon li .twoResult-reserve a::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	}

body.coupon li .twoResult-reserve a::before { right: 0; }
body.coupon li .twoResult-reserve a::after { left: 0; }

body.coupon .two-rule {
	border-top: dotted 2px #666;
	margin-top: 12px;
	padding-top: 12px;
	}

body.coupon .two-rule p {
    display: inline-block;
    font-size: 11px;
    line-height: 16px;
    margin-right: 12px;
	}

body.coupon .two-rule p span {font-weight: bold;}

}

/*=================================================
	staffs
=================================================*/

.wrapper_stylist {
    margin: 0 auto 60px;
    overflow: inherit;
	}

body.stylist .sect h2.staffCat {
    border-bottom: solid 1px #000;
    font-size: 18px;
    margin: 0 0 24px;
    padding: 0 0 12px;
	}

ul.wrapper_stylist li {
	position: relative;
    margin: 0px 3.5% 24px 0;
    width: 31%;
    height: auto;
    display: inline-block;
    vertical-align: top;
    line-height: 1.4;
    transform-style: preserve-3d;
    box-shadow: 0 3px 24px rgba(0, 0, 0, 0.2);
	}

ul.wrapper_stylist li:nth-child(4n) { margin: 0 3.5% 24px 0; }
ul.wrapper_stylist li:nth-child(3n) { margin: 0 0 24px 0; }
ul.wrapper_stylist li .txt {
	position: absolute;
	left: 27%;
    bottom: 0%;
    text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;
	-webkit-transform: translateZ(50px) translateY(-50%) translateX(-50%);
    transform: translateZ(50px) translateY(-50%) translateX(-50%);
	}

body.stylist #main .sect02 ul.wrapper_stylist li a.txt h3 {
    margin: 0;
    color: #FFF;
    font-size: 18px;
	}

body.stylist #main .sect02 ul.wrapper_stylist li a.txt p {
    color: #FFF;
    font-size: 12px;
	}

body.stylist #main .sect02 ul.wrapper_stylist li a.img img { margin-bottom: 0px!important; }

@media only screen and (max-width: 1024px) {

ul.wrapper_stylist li { box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2); }
body.stylist #main .sect02 ul.wrapper_stylist li a.img { margin: 0;	}
.wrapper_stylist { margin: 0 auto 48px; }
ul.wrapper_stylist li .txt {
    left: 6%;
    bottom: 3%;
    -webkit-transform: inherit;
    transform: inherit;
	}

}

@media only screen and (max-width: 767px) {

body.stylist .sect h2.staffCat {
    font-size: 14px;
    margin: 0 0 12px;
	}

.wrapper_stylist { margin: 0 auto 12px; }
ul.wrapper_stylist li {
    margin: 0px 4% 24px 0;
    width: 48%;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
	}

ul.wrapper_stylist li:nth-child(3n) { margin-right: 4%; }
ul.wrapper_stylist li:nth-child(2n) { margin-right: 0; }

body.stylist #main .sect02 ul.wrapper_stylist li a.txt h3 { font-size: 16px; }

}

/*=================================================
	staff
=================================================*/

body.stylist #main .stylistBox .visualInfo { width: 250px; }
body.stylist #main .stylistBox .visualInfo .photo img { width: 100%; }
body.stylist #main .stylistBox .txtInfo {
	position: relative;
    width: 460px;
	}

body.stylist h3.staffName {
	font-size: 30px;
	font-weight: bold;
	font-family: 'Arapey', serif;
	margin-bottom: 6px;
	}

body.stylist h3.staffName p {
	font-size: 14px;
    font-weight: normal;
    letter-spacing: 1.5px;
    font-family: 'Bitter', serif;
    color: #999;
    margin-top: 3px;
	}

body.stylist #main .stylistBox .txtInfo ul.sns li {
    width: 26px;
    display: inline-block;
    margin-left: 3px;
	padding: 0;
	}

body.stylist #main .stylistBox .txtInfo p.job {
    display: inline-block;
    font-size: 1.3rem;
    border: solid 1px #000;
    padding: 2px 9px;
	}

body.stylist #main .stylistBox .txtInfo ul.sns {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    text-align: right;
	z-index: 10;
	}

body.stylist #main .stylistBox .txtInfo ul.sns li { transition: .2s; }
body.stylist #main .stylistBox .txtInfo ul.sns li:hover { opacity: .5;	}
body.stylist #main .stylistBox .txtInfo p.catch02 {
    margin: 6px 0;
    padding: 6px 12px;
    line-height: 1.5;
    font-size: 12px;
    font-weight: bold;
    background: #05090e;
    color: #FFF;
	}

body.stylist #main .stylistBox .txtInfo p.staffComment {
    font-size: 12px;
    line-height: 18px;
    margin-bottom: 12px;
    padding: 12px;
    border-top: solid 1px #05090e;
    border-bottom: solid 1px #05090e;
	}

body.stylist #main .stylistBox .txtInfo .career dl dd {
    font-size: 1.3rem;
    text-align: left;
    display: flex;
    line-height: 24px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea,
body.stylist #main .sect02 .titleArea,
body.style #main .sect02 .titleArea {
    margin: 0 auto 20px;
    border-bottom: 1px solid #000;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea h3 span.en,
body.stylist #main .sect02 .titleArea h3 span.en,
body.style #main .sect02 .titleArea h3 span.en {
    font-size: 21px;
	font-family: 'Bitter', serif;
    letter-spacing: 0;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea h3 span.jp,
body.stylist #main .sect02 .titleArea h3 span.jp,
body.style #main .sect02 .titleArea h3 span.jp {
    margin-left: 6px;
    font-size: 12px;
	font-weight: bold;
	font-family:'Noto Sans JP';
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a,
body.stylist #main .sect02 .titleArea a,
body.style #main .sect02 .titleArea a {
    float: right;
    display: block;
    padding: 8px 2px 6px 3px;
    font-size: 11px;
    color: #FFF;
	background: #05090e;
    text-decoration: none;
	transition: .2s;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a span,
body.stylist #main .sect02 .titleArea a span,
body.style #main .sect02 .titleArea a span {
    position: relative;
    font-size: 11px;
    padding: 0px 9px;
    background: none;
    border: solid 1px #FFF;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a:hover,
body.stylist #main .sect02 .titleArea a:hover,
body.style #main .sect02 .titleArea a:hover {
	background: #00afcc;
	color: #FFF;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a:hover span,
body.stylist #main .sect02 .titleArea a:hover span,
body.style #main .sect02 .titleArea a:hover span { border-color: #FFF; }
body.stylist #main .stylistBox .txtInfo .blogArea .wrapper article ul li.author a {
    color: #333;
    font-size: 1.1rem;
    text-decoration: none;
	transition: .2s;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .wrapper article a.linkToArticle p.title {
    font-weight: bold;
    margin: 0 0 5px;
    font-size: 1.4rem;
	transition: .2s;
	}

body.stylist #main .sect02 ul.wrapper {
    margin: 0 auto 64px;
    width: 100%;
	}

body.stylist #main .sect02 ul.wrapper li {
    float: none;
    display: inline-block;
    vertical-align: top;
    margin: 0px 2.65% 10px 0;
    width: 23%;	
    transform-style: preserve-3d;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
	}

body.stylist #main .sect02 ul.wrapper li:nth-child(4n) { margin: 0 0 10px 0; }
body.stylist #main .sect02 ul.wrapper li a.txt h3 {
	position: absolute;
    margin: 0;
    bottom: 12px;
    left: 64px;
    color: #FFF;
    font-size: 12px;
    font-weight: normal;
    line-height: 14px;
    text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;
    -webkit-transform: translateZ(50px) translateY(-50%) translateX(-50%);
    transform: translateZ(50px) translateY(-50%) translateX(-50%);
	}

body.stylist #main .sect02 ul.wrapper li a {	
	display: block;
	width: 100%;
	height: auto;
	}

body.stylist #main .sect02 ul.wrapper li img {
	width: 100%;
	height: auto;
	}

/* -- staff page blog start -- */

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox {
	display: block;
	margin: 0;
	padding: 0;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 0;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-img {
	display: inline-block;
	vertical-align: top;
	width: 30%;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt {
	display: inline-block;
	vertical-align: top;
	width: 65%;
	padding-left: 5%;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt a {
	font-size: 12px;
	line-height: 18px;
	color: #000;
	transition: .2s;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .title a {
	display: block;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 6px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .blogBox-txt-border {
	border-top: dotted 1px #CCC;
    margin-top: 6px;
    padding-top: 6px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .blogBox-txt-border .date { float: left; }
body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .blogBox-txt-border .category,
body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .blogBox-txt-border .staff {	float: right; }
body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .blogBox-txt-border .category a,
body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-txt .blogBox-txt-border .staff a {
    display: inline-block;
    background: #000;
    color: #FFF;
    padding: 0 6px;
    font-size: 10px;
    margin-left: 6px;
    letter-spacing: 1px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-img img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li:hover .blogBox-img img {
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li:hover .blogBox-txt a { color: #00afcc !important; }


/* -- staff page blog end -- */

body.stylist #main .stylistBox .visualInfo .calendar .calendarInner { border: 1px solid #05090e; }
body.stylist #main .stylistBox .visualInfo .calendar .calendarInner .month { background-color: #05090e; }

/* -- staff page coupon -- */

body.stylist .twoResultWrap,
body.style .twoResultWrap {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	margin: 0 2% 36px 0;
	font-size: 12px;
	border: solid 1px #000;
	box-sizing: border-box;
	}

body.stylist .twoResult-target,
body.stylist .twoResult-content,
body.style .twoResult-target,
body.style .twoResult-content {
	display: table-cell;
    vertical-align: middle;
	box-sizing: border-box;
	}

body.stylist .twoResult-target,
body.style .twoResult-target {
    background: #000;
    color: #FFF;
    text-align: center;
    width: 30px;
    padding: 0 6px;
    font-size: 14px;
    line-height: 28px;
    font-weight: bold;
	}

body.stylist .twoResult-content,
body.style .twoResult-content {
	padding: 12px;
	overflow: hidden;
	}

body.stylist .twoResult-inBox ul,
body.style .twoResult-inBox ul {
	width: 100%;
	display: table;
	table-layout: fixed;
	margin: 0;
	padding: 0;
	}

body.stylist .twoResult-inBox li,
body.style .twoResult-inBox li {
	display: table-cell;
	vertical-align: top;
	box-sizing: border-box;
	}

body.stylist .twoResult-inBox li:first-child,
body.style .twoResult-inBox li:first-child { width: 30%; }
body.stylist .twoResult-inBox li:last-child,
body.style .twoResult-inBox li:last-child {
	width: 70%;
	padding-left: 2%;
	}

body.stylist .twoResult-inBox li h5,
body.style .twoResult-inBox li h5 {
    font-size: 16px;
    line-height: 22px;
    font-weight: bold;
    margin: 0 0 6px;
	}

body.stylist li .twoResult-category span,
body.style li .twoResult-category span {
    display: inline-block;
    text-align: center;
    background: #FFF;
    color: #000;
    border: solid 1px #000;
    padding: 2px 6px;
    margin-bottom: 6px;
    margin-right: 6px;
	}

body.stylist li .twoResult-price,
body.style li .twoResult-price {
    text-align: right;
    margin: 12px 0;
    font-size: 24px;
    font-weight: bold;
	color: #F00;
	}

body.stylist li .twoResult-text,
body.style li .twoResult-text {
	font-size: 12px;
	line-height: 18px;
	}


body.stylist li .twoResult-reserve a,
body.style li .twoResult-reserve a {
	position: relative;
    display: block;
    width: 100%;
    text-align: center;
    padding: 9px 0;
    margin-top: 12px;
    border: solid 1px #000;
    color: #000;
    background: #FFF;
    font-size: 14px;
    font-weight: bold;
	box-sizing: border-box;
	z-index: 2;
	}

body.stylist li .twoResult-reserve a:hover,
body.style li .twoResult-reserve a:hover {
	background: #00afcc;
	border-color: #00afcc;
	color: #FFF;
	}

body.stylist li .twoResult-reserve a::before,
body.style li .twoResult-reserve a::before {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	}

body.stylist li .twoResult-reserve a,
body.style li .twoResult-reserve a,
body.stylist li .twoResult-reserve a::before,
body.style li .twoResult-reserve a::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

body.stylist li .twoResult-reserve a::before,
body.style li .twoResult-reserve a::before { right: 0; }
body.stylist li .twoResult-reserve a:hover::before,
body.style li .twoResult-reserve a:hover::before {
	width: 0;
	background-color: #fff;
	}

body.stylist .two-rule,
body.style .two-rule {
	border-top: dotted 2px #666;
	margin-top: 12px;
	padding-top: 12px;
	}

body.stylist .two-rule p,
body.style .two-rule p {
    display: inline-block;
    font-size: 11px;
    line-height: 16px;
    margin-right: 12px;
	}

body.stylist .two-rule p span {font-weight: bold;}
body.style .two-rule p span {font-weight: bold;}

@media only screen and (max-width: 1024px) and (min-width: 768px) {

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea,
body.stylist #main .sect02 .titleArea, body.style #main .sect02 .titleArea {
    padding-bottom: 6px;
	margin: 0 auto 12px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a,
body.stylist #main .sect02 .titleArea a, body.style #main .sect02 .titleArea a {
    margin-top: 0;
    padding: 3px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a span,
body.stylist #main .sect02 .titleArea a span, body.style #main .sect02 .titleArea a span {
    font-size: 12px;
    display: block;
	padding: 3px 9px;
	}

body.stylist #main .stylistBox {
    margin: 0 auto 36px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
	}

body.stylist #main .stylistBox .txtInfo {
    position: relative;
    width: 65%;
	}

body.stylist #main .stylistBox .visualInfo { width: 30%; }
body.stylist #main .stylistBox .txtInfo .blogArea .titleArea h3 { padding: 0; }
body.stylist #main .sect02 .titleArea h3 { padding: 0;}
body.stylist #main .sect02 ul.wrapper { width: 100%; margin-bottom: 36px; }
body.stylist #main .sect03 ul.wrapper li:nth-child(3n+2) { margin: 0px 2.65% 10px 0; }
body.stylist #main .sect03 ul.wrapper li:nth-child(4n) { margin: 0 0 10px 0; }

body.stylist #main .sect03 ul.wrapper li a.img { margin: 0; }
body.stylist #main .sect02 ul.wrapper li { transform-style: inherit; position: relative;}
body.stylist #main .sect02 ul.wrapper li a.txt h3 {
    letter-spacing: 1px;
    bottom: 6%;
    left: 6%;
	-webkit-transform: inherit;
    transform: inherit;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-img img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
	}

}

@media only screen and (max-width: 767px) {

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea,
body.stylist #main .sect02 .titleArea, body.style #main .sect02 .titleArea {
    padding-bottom: 6px;
	margin: 0 auto 12px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a,
body.stylist #main .sect02 .titleArea a, body.style #main .sect02 .titleArea a {
    margin-top: 0;
    padding: 3px;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .titleArea a span,
body.stylist #main .sect02 .titleArea a span, body.style #main .sect02 .titleArea a span {
    font-size: 12px;
    display: block;
	padding: 3px 9px;
	}

body.stylist #main .stylistBox .visualInfo .calendar { margin-bottom: 24px; }
body.stylist #main .sect02 ul.wrapper { width: 100%; }

body.stylist #main .stylistBox .txtInfo ul.sns {
    display: block;
    position: relative;
    top: 12px;
	text-align: left;
	}

body.stylist #main .stylistBox .txtInfo p.catch02 { margin: 48px 0 6px; }
body.stylist #main .stylistBox .txtInfo .blogArea .titleArea h3 { padding: 0; }
body.stylist #main .sect02 .titleArea h3 { padding: 0;}

body.stylist #main .sect02 ul.wrapper li {
    margin: 0px 4% 24px 0;
    width: 48%;
	}

body.stylist #main .sect02 ul.wrapper { width: 100%; margin-bottom: 30px; }
body.stylist #main .sect03 ul.wrapper li:nth-child(3n+2) { margin: 0px 4% 24px 0; }
body.stylist #main .sect03 ul.wrapper li:nth-child(4n),
body.stylist #main .sect03 ul.wrapper li:nth-child(2n){ margin: 0 0 24px 0; }

body.stylist #main .sect03 ul.wrapper li a.img { margin: 0; }
body.stylist #main .sect02 ul.wrapper li a.txt h3 {
    letter-spacing: 1px;
    bottom: 6%;
    left: 6%;
	-webkit-transform: inherit;
    transform: inherit;
	}

body.stylist #main .stylistBox .txtInfo .blogArea .blogBox li .blogBox-img img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
	}

}

/*=================================================
	styles
=================================================*/

body.style #main .sect02 ul.wrapper li {
	position: relative;
    display: inline-block;
    vertical-align: top;
    margin: 0px 2% 24px 0;
    width: 32%;
    height: auto;
	transform-style: preserve-3d;
    box-shadow: 0 3px 24px rgba(0, 0, 0, 0.2);
	}

body.style #main .sect02 ul.wrapper li a.img {
    display: block;
    margin: 0;
	}

body.style #main .sect02 ul.wrapper li:nth-child(4n) { margin-right: 2%; }
body.style #main .sect02 ul.wrapper li:nth-child(3n) { margin: 0 0 24px 0; }

body.style #main .sect02 ul.wrapper li a.txt h3 {
    position: absolute;
	left: 38%;
    bottom: 5%;
    margin: 0;
    color: #FFF;
    font-size: 12px;
    font-weight: normal;
    line-height: 14px;
	text-shadow: 0 0 2px #000, 0 0 5px #000, 0 0 10px #000;
    -webkit-transform: translateZ(50px) translateY(-50%) translateX(-50%);
    transform: translateZ(50px) translateY(-50%) translateX(-50%);
	}

@media only screen and (max-width: 1024px) {

body.style #main .sect02 ul.wrapper li:nth-child(3n+2) { margin: 0px 2% 24px 0; }
body.style #main .sect02 ul.wrapper li {
    transform-style: inherit;
    margin: 0px 2% 18px 0;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
	}

body.style #main .sect02 ul.wrapper li:nth-child(4n) { margin-right: 2%; }
body.style #main .sect02 ul.wrapper li:nth-child(3n) { margin: 0 0 18px 0; }
body.style #main .sect02 ul.wrapper li a.txt h3 {
    left: 18px;
    bottom: 18px;
    letter-spacing: 1px;
	-webkit-transform: inherit;
    transform: inherit;
	}

}

@media only screen and (max-width: 767px) {

body.style #main .sect02 ul.wrapper li {
    margin: 0px 4% 18px 0;
	width: 48%;
	}

body.style #main .sect02 ul.wrapper li:nth-child(3n+2) { margin-right: 4%; }
body.style #main .sect02 ul.wrapper li:nth-child(3n) { margin-right: 4%; }
body.style #main .sect02 ul.wrapper li:nth-child(2n) { margin-right: 0; }

}

/*=================================================
	style
=================================================*/

body.style #content #main {
    width: 750px;
	}

body.style #main .styleBox .txtInfo h2 {
    margin: 0 auto 14px;
	font-family: 'Bitter', serif;
    font-size: 2.4rem;
    font-weight: bold;
	}

body.style #main .styleBox .txtInfo ul.sns li {
    width: 26px;
    display: inline-block;
    vertical-align: top;
    margin-left: 3px;
	padding: 0;
	transition: .2s;
	}

body.style #main .styleBox .txtInfo ul.sns li:hover { opacity: 0.5; }
body.style #main .styleBox .txtInfo .box p.styleTitle,
.style-arrenge-point-title {
    margin: 0 auto 20px;
    padding: 0 0 6px;
    font-size: 1.4rem;
    font-weight: bold;
    border-bottom: 1px solid #000;
	}

.style-arrenge-point-text,
.hairMenu {
    line-height: 1.6;
    font-size: 1.4rem;
	}

body.style #main .styleBox .txtInfo .box ul { margin-bottom: 0; }
body.style #main .commentArea {
    margin: 0 auto 50px;
    padding: 18px;
    background-color: #FFF;
    border: solid 1px #000;
    width: 95%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	}

body.style #main .commentArea .img {
    width: 120px;
    text-align: center;
	}

body.style #main .commentArea .img a {
    display: block;
    color: #FFF;
    font-size: 12px;
    padding: 3px;
    background: #05090e;
    transition: .2s;
	}

body.style #main .commentArea .img a span {
	display: block;
    border: solid 1px #FFF;
    padding: 3px 0;
	}

body.style #main .commentArea .img a:hover {
	color: #FFF;
    background: #00afcc;
	}

body.style #main .commentArea .txt h4 {
    font-size: 1.4rem;
    font-weight: bold;
    border-bottom: dotted 1px #000;
    padding-bottom: 12px;
    margin-bottom: 12px;
	}

body.style #main .commentArea .txt p {
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.6;
	}

body.style #main .styleBox .visualInfo { width: 260px; }
body.style #main .styleBox .visualInfo .photo { width: 260px; }
.typeOn { background-color: #00afcc; }

@media only screen and (max-width: 1024px) and (min-width: 768px) {

body.style #content #main { width: 90%; }

body.style #main .styleBox .visualInfo .photo { width: 100%; }
body.style #main .styleBox { display: block; }
body.style #main .styleBox .txtInfo {
    width: 65%;
    float: right;
	}

body.style #main .styleBox .visualInfo {
    width: 30%;
	display: block;
	}

body.style #main .commentArea {
    width: 100%;
    box-sizing: border-box;
	}

body.style #main .commentArea .img {
    text-align: center;
    width: 20%;
	}

body.style #main .commentArea .txt { width: 77%; }
body.style #main .commentArea .img img {
    margin: 0 0 1.4rem 0;
    float: none;
    width: 100%;
	}

body.style #main .commentArea .img a {
    margin: 0;
    text-decoration: none;
	}

body.style #main .sect02 .titleArea h3 { padding: 0; }

}

@media only screen and (max-width: 767px) {

body.style #content #main { width: 90%; }
body.style #main .styleBox .visualInfo .photo { width: 100%; }
body.style #main .styleBox .visualInfo .thumb ul li { width: 32%; }
body.style #main .commentArea {
    width: 100%;
    box-sizing: border-box;
	}

body.style #main .commentArea .img {
    text-align: center;
    width: 30%;
	}

body.style #main .commentArea .txt { width: 67%; }
body.style #main .commentArea .img img {
    margin: 0 0 1.4rem 0;
    float: none;
    width: 100%;
	}

body.style #main .commentArea .img a {
    margin: 0;
    text-decoration: none;
	}

body.style #main .sect02 .titleArea h3 { padding: 0; }

}

/*=================================================
	medias
=================================================*/

body.media #main .sect02 ul.wrapper li {
    width: 23%;
    height: auto;
    margin: 0 2.65% 36px 0;
    display: inline-block;
    vertical-align: top;
	}

body.media #main .sect02 ul.wrapper li:nth-child(5n) { margin: 0 2.65% 36px 0; }
body.media #main .sect02 ul.wrapper li:nth-child(4n) { margin: 0 0 36px 0; }
body.media #main .sect02 ul.wrapper li a.txt h3 {
    margin: 0 0 6px;
    color: #000;
    font-size: 13px;
    font-weight: bold;
    line-height: 13px;
	transition: .2s;
	}

body.media #main .sect02 ul.wrapper li a.txt p {
    color: #333;
    font-size: 12px;
    line-height: 16px;
    margin-bottom: 6px;
    overflow: hidden;
	transition: .2s;
	}

.media-right {
    text-align: center;
    color: #FFF;
    display: block;
    background: #05090e;
    padding: 3px;
	transition: .2s;
	}

.media-right span {
	display: block;
	padding: 3px 0;
	border: solid 1px #FFF;
	}

body.media #main .sect02 ul.wrapper li a.img img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}

body.media #main .sect02 ul.wrapper li:hover a.img img{
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

body.media #main .sect02 ul.wrapper li:hover a h3,
body.media #main .sect02 ul.wrapper li:hover a p { color: #00afcc; }
body.media #main .sect02 ul.wrapper li:hover a .media-right { background:#00afcc; }

@media only screen and (max-width: 1024px) {

body.media #main .sect02 ul.wrapper li:nth-child(2n) { margin: 0 2.65% 20px 0; }
body.media #main .sect02 ul.wrapper li:nth-child(4n) { margin: 0 0 20px 0; }

body.media #main .sect02 ul.wrapper li a.img img {
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
	}

}

@media only screen and (max-width: 767px) {

body.media #main .sect02 ul.wrapper li {
    width: 48%;
    height: auto;
    margin: 0 4% 24px 0;
	}

body.media #main .sect02 ul.wrapper li:nth-child(2n) { margin: 0 0 24px 0; }

}

/*=================================================
	media
=================================================*/

/*=================================================
	gallery
=================================================*/

a.galleryCat {
	display: inline-block;
	font-size: 12px !important;
	line-height: 12px !important;
	padding: 3px;
	color: #FFF !important;
	background: #05090e;
	transition: .2s;
	}

a.galleryCat span {
	display: block;
	padding: 3px 12px;
	border: solid 1px #FFF;
	}

a.galleryCat:hover { background: #00afcc; }
body.gallery #main .sect02 ul.wrapper li {
    width: 32%;
    margin-bottom: 24px;
    margin-right: 2%;
    display: inline-block;
    vertical-align: top;
    height: auto;
	}

body.gallery #main .sect02 ul.wrapper li .lightbox-img { margin: 0; }
body.gallery #main .sect02 ul.wrapper li:nth-child(4n) { margin-right: 2%; }
body.gallery #main .sect02 ul.wrapper li:nth-child(3n) { margin-right: 0; }

.lightbox-title {
	color: #000;
    margin-top: 6px;
    line-height: 12px;
    font-size: 12px;
	}

body.gallery #main .sect02 ul.wrapper li .lightbox-img img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}

body.gallery #main .sect02 ul.wrapper li:hover .lightbox-img img {
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

body.gallery #main .sect02 ul.wrapper li:hover p.lightbox-title { color: #00afcc; }

@media only screen and (max-width: 1024px) {

body.gallery #main .sect02 ul.wrapper {
	text-align: left;
	margin-bottom: 24px;
	}

body.gallery #main .sect02 ul.wrapper li {
    width: 32% !important;
    margin-bottom: 24px !important;
    margin-right: 2% !important;
    display: inline-block;
    vertical-align: top;
    height: auto;
	}

body.gallery #main .sect02 ul.wrapper li:nth-child(3n) { margin-right: 0 !important; }
body.gallery #main .sect02 ul.wrapper li .lightbox-img img {
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
	}

}

@media only screen and (max-width: 767px) {

body.gallery #main .sect02 ul.wrapper li {
    width: 48% !important;
    margin-right: 4% !important;
	}

body.gallery #main .sect02 ul.wrapper { margin-bottom: 12px; }
body.gallery #main .sect02 ul.wrapper li:nth-child(3n) { margin-right: 4% !important; }
body.gallery #main .sect02 ul.wrapper li:nth-child(2n) { margin-right: 0 !important; }

}

/*=================================================
	movie
=================================================*/

.movie-cap {
    font-size: 12px;
    margin-bottom: 60px;
	}

@media only screen and (max-width: 1024px) {

.movie-cap { margin-bottom: 36px; }

}

/*=================================================
	blogs
=================================================*/

body.blog .blogBox .tag {
    width: 96%;
    border: solid 1px #CCC;
    margin: 0 auto 6px;
    padding: 3px 6px;
    font-size: 11px;
    letter-spacing: 1px;
    color: #666;
	transition: .2s;
	}

body.blog .blogBox:hover .tag {	color: #00afcc;	}
body.blog .blogBox {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 24px;
	}

body.blog .blogBox:nth-child(2n) { margin: 0 0 24px 0; }
body.blog .blogBox-txt a { color: #000; }

body.blog .blogBox-txt h5 { margin: 0; }
body.blog .blogBox-txt h5 a {
	display: block;
    font-size: 16px;
	font-weight: bold;
	margin: 9px 0;
	}

body.blog .blogBox-txt .cont a {
    display: block;
    font-size: 12px;
    line-height: 18px;
    margin: 6px 0;
	}

body.blog .blogBox-txt-border {
    overflow: hidden;
    border-top: dotted 1px #CCC;
    padding: 6px 0 0;
    margin: 0 0 12px;
	}

body.blog .blogBox-txt-border .date {
    float: left;
    padding: 3px 0;
	font-size: 12px;
	}

body.blog .blogBox-txt-border .category,
body.blog .blogBox-txt-border .staff {
    float: right;
    margin-bottom: 2px;
	}

body.blog .blogBox-txt-border .category a,
body.blog .blogBox-txt-border .staff a {
    display: inline-block;
    background: #000;
    color: #FFF;
    padding: 3px 6px;
    font-size: 10px;
    margin-left: 6px;
    letter-spacing: 1px;
	}

body.blog .blogBox .blogBox-img img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	}

body.blog .blogBox:hover .blogBox-img img {
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
	}

body.blog .blogBox a { transition: .2s; }
body.blog .blogBox:hover a { color: #00afcc; }

@media only screen and (max-width: 1024px) {

body.blog #main .couponArea { margin: 0 auto 36px; }

body.blog .blogBox .tag {
    width: 100%;
    box-sizing: border-box;
	}

body.blog #subBlogcate {
	margin: 0;
	padding: 0;
	}

body.blog .blogBox .blogBox-img img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
	}

body.blog .blogBox-txt-border .category a,
body.blog .blogBox-txt-border .staff a { letter-spacing: 0; }

}

@media only screen and (max-width: 767px) {

body.blog .blogBox {
    display: block;
    width: 100%;
    margin-right: 0;
	}

}

/*=================================================
	blog
=================================================*/

body.blog #main .sect .titleArea {
    margin: 0 auto 12px;
    border-bottom: 1px solid #000;
	}

body.blog #main .sect .titleArea h3 {
    padding: 0 0 9px;
    font-size: 16px;
    color: #000;
    font-weight: bold;
	}

body.blog #main .sect .wrapper li { background-color: #05090e; }
body.blog #main .sect .wrapper li:hover a { color:#00afcc; }
body.blog #main .newsTime {
    font-size: 12px !important;
    color: #000;
	}

body.blog #main .articleTxt { margin-top: 24px; }
body.blog #main .newsTime .postUser {
	color: #05090e!important;
	text-decoration: underline;
	transition: .2s;
	}

body.blog #main .newsTime .postUser:hover { color: #00afcc !important; }
body.blog #main .newsTime span {
	letter-spacing: 1px;
	margin-left: 6px;
	}

@media only screen and (max-width: 1024px) {

body.blog #main .sect {
    margin-bottom: 48px;
    padding: 0;
	}

body.blog #main .newsTime { line-height: 18px; }

}

/*=================================================
	voice
=================================================*/

body.voice #main .voiceBox {
    margin: 0 auto 48px;
    width: 100%;
	}

body.voice #main .voiceBox .voiceInner {
    margin: 0 auto 25px;
    padding: 25px 20px 20px;
    width: 100%;
    box-sizing: border-box;
    background-color: #eee;
    position: relative;
	}

body.voice #main .voiceBox.pickUp .voiceInner { background-color: #faf6e9; }

@media only screen and (max-width: 1024px) {

body.voice #main .voiceBox .review dl {
    font-size: 12px;
    margin-bottom: 9px;
	}

}

/*=================================================
	faq
=================================================*/

body.faq #main .sect .titleArea {
    margin: 0 auto 2rem;
    padding: 0;
    border-bottom: 1px solid #05090e;
	}

body.faq #main .sect .titleArea h3 span.jp {
    font-size: 18px;
    font-weight: bold;
	}

div.accordion > ul > li > a { background-color: #05090e; }

@media only screen and (max-width: 1024px) {

body.faq #sub {
	float: none !important;
    margin-bottom: 0;
	}

body.faq #sub .subBox { margin-bottom: 0px; }
body.faq #main { float: none !important; }

}

@media only screen and (max-width: 767px) {

body.faq #main .sect .titleArea h3 span.jp { font-size: 16px; }
div.accordion > ul > li > a { padding: 12px; }
div.accordion > ul > li > ul > li {
    font-size: 13px;
    padding: 24px 12px;
    line-height: 18px;
	}

}

/*=================================================
	access
=================================================*/

body.access #content { width: 100%; }
body.access.onecolumn #content #main { width: 100%; margin: 0; }

body.access #main section {
    margin: 0 auto;
    width: 100%;
	}

body.access #main .shopdate {
    width: 700px;
    margin: 0 auto 84px;
	}

body.access #main .shopdate h3 span.en {
    padding: 0 0 3px;
    font-size: 3rem;
    font-weight: normal;
    font-family: 'Bitter', serif;
    letter-spacing: 0;
    border-bottom: solid 5px #000;
	}

body.access #main .shopdate h3 span.jp {
    font-family: 'Noto Sans JP';
    margin-left: 9px;
    font-size: 13px;
    letter-spacing: 2px;
	}

body.access section .shopdate .titleArea {
    margin: 0 auto 20px;
    border-bottom: none;
	}

body.access #main .shopdate td {
	position: relative;
    padding: 12px 0;
    font-size: 1.2rem;
    line-height: 1.6;
    width: 150px;
    border-bottom: dotted 1px #000;
	}

body.access #main .shopdate td:last-child {
	padding-left: 12px;
	box-sizing: border-box;
	}

body.access #main .shopdate td:last-child::before {
	position: absolute;
    content: "";
    height: 80%;
    width: 1px;
    background: #000;
    left: 0;
    top: 10%;
	}

body.access #main .shopdate p {
    font-size: 1.4rem;
    line-height: 1.6;
    overflow: auto;
    margin-bottom: 3px;
	}

body.access #main .shopdate a {
    letter-spacing: 1px;
    color: #333;
    font-weight: bold;
    text-decoration: underline;
	transition: .2s;
	}

body.access #main .shopdate a:hover {
	color: #00afcc;
    text-decoration: underline;
	}

.ggmap {
    position: relative;
    padding-bottom: 0;
    padding-top: 0;
    height: 360px;
    overflow: hidden;
	}

.ggmap iframe, .ggmap object, .ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 360px;
	}

body.access section .shopdate .titleArea {
    margin: 0 auto 12px;
    border-bottom: none;
	}

body.access #main .shopdate h3 {
    border-bottom: 1px solid #4c342a;
	margin-bottom: 6px;
	padding-bottom: 6px;
	}


@media only screen and (max-width: 1024px) {

body.access #content { box-sizing: border-box; }
body.access #main section { margin: 0 auto;}

body.access #main .shopdate {
    width: 90% !important;
    margin: 0 auto 48px;
	}

body.access #main .shopdate table { width: 100%; }
body.access #main section .shopImg img {
    margin: 0 auto;
	}

}

@media only screen and (max-width: 767px) {

body.access #main .shopdate table { width: auto;}
body.access #main .shopdate h3 span.en { font-size: 2.4rem; }

}

/*=================================================
	recruit
=================================================*/

body.recruit #content #main { margin: 0 auto; }

body.recruit section.sect p {
	font-size: 12px;
	line-height: 18px;
	margin-bottom: 36px;
	}

table.recruit > tbody > tr > td,
table.company > tbody > tr > td {
    position: relative;
    padding: 12px 24px;
	letter-spacing: 1px;
    box-sizing: border-box;
	}

table.recruit > tbody > tr > td:first-child,
table.company > tbody > tr > td:first-child {
	color: #FFF;
    background: #333;
    font-weight: bold;
    border: solid 1px #333;
	padding: 12px 18px;
	}

table.recruit > tbody > tr > td:last-child,
table.company > tbody > tr > td:last-child {
    border: solid 1px #000;
	font-size: 13px;
	}


table.company > tbody > tr > td:first-child::after {
    position: absolute;
    content: "";
    top: 50%;
    right: -21px;
	margin-top: -9px;
    box-sizing: border-box;
    width: 9px;
    height: 9px;
    border: 9px solid transparent;
    border-left: 12px solid #333;
    z-index: 100;
	}

/*=================================================
	sitemap
=================================================*/

body.sitemap #main section {
    margin: 0 auto 64px;
	}

body.sitemap #main .shopdate ul a {
    text-decoration: underline;
    color: #333;
    padding-left: 21px;
	}

.main_page_link li {
	position: relative;
    display: inline-block;
    vertical-align: top;
    line-height: 1.6;
    color: #333;
    font-size: 1.4rem;
    font-weight: normal;
    width: 32%;
    margin: 0 0 0 0;
    padding: 12px 0;
    border-bottom: none;
    box-sizing: border-box;
	}

.main_page_link li:nth-child(2n) {
	margin: 0;
	}

.main_page_link li::before {
	position: absolute;
	content: "";
	vertical-align: middle;
	top: 16px;
	width: 14px;
	height: 14px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #333;
	}

.main_page_link li::after {
    position: absolute;
    content: "";
    vertical-align: middle;
    top: 18px;
    left: 5px;
    box-sizing: border-box;
    width: 5px;
    height: 5px;
    border: 5px solid transparent;
    border-left: 5px solid #fff;
	}

@media only screen and (max-width: 767px) {

.main_page_link li {
    font-size: 1.2rem;
    width: 49%;
	}

}

/*=================================================
	contact
=================================================*/

body.contact #main .input .contactInner dl dt {
    margin: 0 auto 12px;
    width: 93%;
	}

body.contact #main .input .contactInner dl dd {
    text-align: center;
    margin: 0;
    padding: 0;
	}

body.contact #main .input .btn input#btnReset,
body.contact #main .confirm .btn input#btnBack {
    background-color: #eee;
	cursor: pointer;
	}

body.contact #main .input .btn input#btnConfirm,
body.contact #main .confirm .btn input#btnSend {
    color: #fff;
    background-color: #05090e;
	cursor: pointer;
	}

body.contact #main .confirm .btn {
    width: 630px;
    margin: 0 auto;
	}

body.contact #main .btn input {
    display: inline-block;
    width: 300px;
    height: 40px;
    text-align: center;
    border: none;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0 6px 64px;
	}

@media only screen and (max-width: 767px) {

body.contact #main .input .contactInner dl dt {
    margin: 0 auto 6px;
    width: 100%;
    font-size: 14px;
	}

body.contact #main .confirm .btn {
	width: 100%;
	}

body.contact #main .input .btn input#btnConfirm,
body.contact #main .input .btn input#btnReset {
    width: 45%;
	}

body.contact #main .input .contactInner dl dd input {
    padding: 1rem 4%;
    border: 1px solid #e1e1e1;
    width: 100%;
    font-size: 13px;
    box-sizing: border-box;
	}

body.contact #main .input .btn { width: 100%; }

}




