@charset "UTF-8";
/* ==========================================================================



WP
========================================================================== */

html#visionsalon {
	margin-top: 0 !important;
}

	@media screen and (min-width: 601px) {
		.admin-bar #header,
		.admin-bar #menu {
			top: 46px;
		}
		.admin-bar .herob {
			max-height: 646px;
			padding-top: 126px;
		}
		.admin-bar #container {
			margin-top: 126px;
		}
	}
	@media screen and (min-width: 783px) {
		.admin-bar #header,
		.admin-bar #menu {
			top: 32px;
		}
		.admin-bar .herob {
			padding-top: 132px;
		}
		.admin-bar #container {
			margin-top: 132px;
		}
	}

.page-id-2 #container {
	margin-top: 0;
}

/* ==========================================================================



CORE
========================================================================== */


*,
ul,
ol,
p,
dl,x
dt,
dd,
blockquote {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
	text-rendering: optimizeLegibility !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a,
button,
input,
select,
textarea,
.mask,
.loading,
#wrapper,
#menu,
#header {
	transition: all 0.3s ease-in-out;
}

button,
input,
select,
textarea,
header,
footer {
	text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
	text-rendering: optimizeLegibility !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	border-radius: 0;
}

img {
	max-width: 100%;
	height: auto;
}

label {
	cursor: pointer;
}
fieldset {
	padding: 0;
	border: none;
}
button {
	background: none;
	border: none;
	cursor: pointer;
}
button:active,
button:hover,
button:focus {
	outline: 0;
}

body {
	overflow-x: hidden;
	background-color: #fff;
	color: #1a1a1a;
	font: 15px/22px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.25em;
	margin: 0;
	/* position: relative; */
	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
	font-weight: 700;
}

p {
	margin: 10px 0;
}

a {
	color: #eb576c;
	text-decoration: none;
}
a:active,
a:hover,
a:focus {
	color: #c83c50;
}

#container {
	margin-top: 80px;
}
	@media screen and (min-width: 768px) {
		#container {
			margin-top: 100px;
		}
	}

/* #content {
	max-width: 1600px;
	margin: 0 auto;
	background-color: #fff;
}
 */

/* ==========================================================================



FORMS
========================================================================== */

input[type=text],
input[type=email],
input[type=url],
input[type=number],
input[type=password],
textarea,
select {
	width: 100%;
	height: 40px;
	line-height: 40px;
	margin: 0;
	padding: 0 10px;
	position: relative;
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 0;
	background-color: #fff;
	color: #1a1a1a;
	font-size: 14px;
	line-height: 40px;
	-webkit-appearance: none;
	text-align: left;
}
input[type=text],
input[type=email],
input[type=url],
input[type=number],
textarea {
	-webkit-appearance: none;
}
textarea {
	height: 270px;
	padding-top: 15px;
	padding-bottom: 15px;
	line-height: 18px;
}
select {
	height: 30px;
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: ellipsis;
}

.visionsalon input:-webkit-autofill::-webkit-input-placeholder,
.visionsalon textarea:-webkit-autofill::-webkit-input-placeholder,
.visionsalon select:-webkit-autofill::-webkit-input-placeholder,
.visionsalon input:-webkit-autofill,
.visionsalon textarea:-webkit-autofill,
.visionsalon select:-webkit-autofill {
	color: #1a1a1a;
}

input[type=text]:hover,
input[type=email]:hover,
input[type=url]:hover,
input[type=number]:hover,
textarea:hover,
select:hover {
	border-color: #eb576c;
	outline: 0;
}
input[type=text]:active,
input[type=text]:focus,
input[type=email]:active,
input[type=email]:focus,
input[type=url]:active,
input[type=url]:focus,
input[type=number]:active,
input[type=number]:focus,
textarea:active,
textarea:focus,
select:active,
select:focus {
	border-color: #000;
	outline: 0;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #fff;
	transition: color 0.3s ease-in-out;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
	color: #fff;
	transition: color 0.3s ease-in-out;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
	color: #fff;
	transition: color 0.3s ease-in-out;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #fff;
	transition: color 0.3s ease-in-out;
}


select {
	height: 40px;
	line-height: 40px;
	display: inline-block;
	font: inherit;
	line-height: 1.5em;
	background-image:
		linear-gradient(45deg, transparent 50%, #000 50%),
		linear-gradient(135deg, #000 50%, transparent 50%);
	background-position:
		calc(100% - 20px) calc(1em + 4px),
		calc(100% - 15px) calc(1em + 4px);
	background-size:
		5px 5px,
		5px 5px;
	background-repeat: no-repeat;
	transition: none;
	transition: border 0.3s ease-in-out;
}
select::-ms-expand {
    display: none;
}
select:focus {
	background-image:
		linear-gradient(45deg, #eb576c 50%, transparent 50%),
		linear-gradient(135deg, transparent 50%, #eb576c 50%);
	background-position:
		calc(100% - 15px) calc(1em + 4px),
		calc(100% - 20px) calc(1em + 4px);
	background-size:
			5px 5px,
			5px 5px;
	background-repeat: no-repeat;
	border-color: #eb576c;
	outline: 0;
}
input + span,
select + span {
	margin: 10px 15px 10px 6px;
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
	line-height: 100%;
}


select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #1a1a1a;
}


input[type=submit] {
	border: none;
	display: inline-block;
	white-space: normal;
}

	@media screen and (min-width: 768px) {
		#container {
			background: url(../gfx/bk-pattern.jpg) repeat-y 50% 156px;
			background-size: 100% auto;
		}
	}

.page-id-2 #container {
	background: none;
}



/* ==========================================================================



COMMON
========================================================================== */


.backtotop {
	width: 150px;
	height: 0;
	padding-top: 40px;
	position: fixed;
	right: 0;
	bottom: -40px;
	z-index: 500;
	overflow: hidden;
	background-color: #eb576c;
	color: #fff;
}
.backtotop:after {
	content: 'PAGETOP';
	width: 100%;
	height: 40px;
	position: absolute;
	top: 4px;
	left: 0;
	line-height: 40px;
	font: normal 12px/40px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: center;
}
.backtotop svg {
	position: absolute;
	top: 4px;
	left: 50%;
	margin-left: -8px;
	-webkit-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.backtotop svg path {
	fill: #fff;
}

.scrolled .backtotop {
	bottom: 0;
}

.visionsalon .menu-on .backtotop {
	bottom: -40px;
}
	@media screen and (max-width: 374px) {
		.backtotop {
			width: 110px;
		}
	}

.telBtn{
	display: none;
}
	@media screen and (max-width: 767px) {
		.telBtn{
			display: block;
			position: fixed;
			left: 0;
			bottom: 0;
			background: #fff;
			height: 40px;
			width: calc(100% - 150px);
			width: 100%;
			padding-right: 150px;
			box-sizing: border-box;
			z-index: 499;
		}
		.telBtn p{
			color: #eb576c;
			font-size: 15px;
			font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
			text-align: center;
			margin: 0;
		}
		.telBtn p a{
			display: block;
			width: 100%;
			height: 40px;
			padding-top: 11px;
		}
		.telBtn p span{
			font-size: 24px;
			font-weight: bold;
		}
	}
	@media screen and (max-width: 374px) {
		.telBtn{
			padding-right: 110px;
		}
	}


.gridw {
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
	position: relative;
}

.visionsalonlogo,
.visionsalonlogo:active,
.visionsalonlogo:hover,
.visionsalonlogo:focus {
	color: #000;
}
.visionsalonlogo i {
	width: 180px;
	padding-top: 40px;
	height: 0;
	overflow: hidden;
	display: inline-block;
	vertical-align: top;
	background: url(../gfx/vision-salon-logo.svg) no-repeat 0 0;
	background-size: contain;
}
.visionsalonlogo.alt-fff i {
	background-image: url(../gfx/vision-salon-logo-fff.svg);
}
.visionsalonlogo span {
	margin: 0 0 3px 10px;
	display: inline-block;
	vertical-align: bottom;
	font-size: 12px;
	line-height: 15px;
}
	@media screen and (max-width: 767px) {
		#visionsalonlogo span,
		#header .tagline {
			border: 0;
			clip: rect(0 0 0 0);
			height: 1px;
			margin: -1px;
			overflow: hidden;
			padding: 0;
			position: absolute;
			width: 1px;
		}

	}

.btn {
	padding: 12px 45px;
	position: relative;
	display: inline-block;
	vertical-align: top;
	border-radius: 0;
	background-color: #004B88;
	color: #fff;
	font: bold 13px/16px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: center;
	/* 	text-transform: uppercase; */
	transition: all 0.3s ease-in-out;
}
.visionsalon .btn:active,
.visionsalon .btn:hover,
.visionsalon .btn:focus {
	border-color: transparent;
	background-color: #000;
	color: #fff;
}
.visionsalon .btn.alt:active path,
.visionsalon .btn.alt:hover path,
.visionsalon .btn.alt:focus path {
	fill: #fff;
}

.btn.alt {
	border: 1px solid #f5acb6;
	background-color: transparent;
	color: #eb576c;
}
/* .visionsalon .btn:active,
.visionsalon .btn:hover,
.visionsalon .btn:focus {
	background-color: #eb576c;
	color: #fff;
} */
.visionsalon .btn.alt:active,
.visionsalon .btn.alt:hover,
.visionsalon .btn.alt:focus {
	background-color: #eb576c;
	color: #fff;
}

.btn.alt2 {
	width: 95%;
	width: calc(100% - 40px);
	max-width: 550px;
	margin: 25px auto 30px;
	display: block;
}
.btn.alt2 span {
	margin: 5px 0 0;
	display: block;
	font-size: 17px;
	line-height: 22px;
}
.btn.alt2 .arrowbox {
	right: auto;
	left: 50%;
	margin-left: 100px;
}
.btn.alt2 .visionsalonlogo ~ .arrowbox {
	margin-top: 5px;
}
.visionsalon .btn.alt2:active,
.visionsalon .btn.alt2:hover,
.visionsalon .btn.alt2:focus {
	border-color: transparent;
	background-color: #7eb7f9;
	color: #fff;
	-webkit-transform: scale3d(1.02, 1.02, 1);
	-ms-transform:     scale3d(1.02, 1.02, 1);
	transform:         scale3d(1.02, 1.02, 1);
}

.btn.back {
	width: 100%;
	margin: 0 auto 60px;
	padding-top: 39px;
	padding-bottom: 39px;
	background-color: #f3f3f3;
	color: #eb576c;
	font-size: 17px;
	line-height: 22px;
}
.btn.back .arr {
	margin-right: 15px;
}
.btn.back path {
	fill: #eb576c;
}
.visionsalon .btn.back:active,
.visionsalon .btn.back:hover,
.visionsalon .btn.back:focus {
	background-color: #eb576c;
	color: #fff;
}
.visionsalon .btn.back:active path,
.visionsalon .btn.back:hover path,
.visionsalon .btn.back:focus path {
	fill: #fff;
}
	@media screen and (min-width: 768px) {
		.btn.alt2 {
			max-width: 1100px;
			padding-top: 31px;
			padding-bottom: 31px;
		}
		.btn.alt2 span {
			margin: 0;
			display: inline-block;
			vertical-align: bottom;
		}
		.btn.alt2 span br {
			display: none;
		}
		.about-promo .btn .arrowbox {
			margin-left: 250px;
		}
	}

.bkimg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.bkimgbox {
	position: absolute;
	top: -10px;
	right: -10px;
	bottom: -10px;
	left: -10px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.glasses-lens-sales-banner {
	width: 90%;
	width: calc(100% - 40px);
	max-width: 405px;
	margin: 0 auto 50px;
	display: block;
}
.glasses-lens-sales-banner img {
	width: 100%;
}


/* ==========================================================================



MODAL
========================================================================== */
.mask {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -5;
	opacity: 0;
	background-color: rgba(255, 255, 255, 0.79);
}
.mask.rel {
	position: absolute;
}

#modalmask {
/* 	background-color: rgba(0, 0, 0, 0.7); */
	transition: none;
}
.modal-on {
	overflow: hidden;
}
.modal-on #modalmask {
	z-index: 100000;
	opacity: 1;
}

.modalbox {
	width: 100%;
	padding: 50px 20px;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	/* z-index: -1; */
	opacity: 0;
	overflow: auto;
	background-color: #fff;
	text-align: center;
	/* 	transition: all 0.3s ease; */
}




/* ==========================================================================



ANIMATIONS
========================================================================== */


.loadingblink span {
/*	font-size: 50px;*/
	-webkit-animation-name:            seqblink;
	-webkit-animation-duration:        1.4s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-fill-mode:       both;
	-moz-animation-name:               seqblink;
	-moz-animation-duration:           1.4s;
	-moz-animation-iteration-count:    infinite;
	-moz-animation-fill-mode:          both;
	-ms-animation-name:                seqblink;
	-ms-animation-duration:            1.4s;
	-ms-animation-iteration-count:     infinite;
	-ms-animation-fill-mode:           both;
	-o-animation-name:                 seqblink;
	-o-animation-duration:             1.4s;
	-o-animation-iteration-count:      infinite;
	-o-animation-fill-mode:            both;
	animation-name:                    seqblink;
	animation-duration:                1.4s;
	animation-iteration-count:         infinite;
	animation-fill-mode:               both;
}

.loadingblink span:nth-child(2) {
	-webkit-animation-delay: 0.2s;
	-moz-animation-delay:    0.2s;
	-ms-animation-delay:     0.2s;
	-0-animation-delay:      0.2s;
	animation-delay:         0.2s;
}

.loadingblink span:nth-child(3) {
	-webkit-animation-delay: 0.4s;
	-moz-animation-delay:    0.4s;
	-ms-animation-delay:     0.4s;
	-0-animation-delay:      0.4s;
	animation-delay:         0.4s;
}

@-webkit-keyframes seqblink {
	0% {
		opacity: 0.1;
	}
	20% {
		opacity: 1;
	}
	100% {
		opacity: 0.1;
	}
}
@-moz-keyframes seqblink {
	0% {
		opacity: 0.1;
	}
	20% {
		opacity: 1;
	}
	100% {
		opacity: 0.1;
	}
}
@-ms-keyframes seqblink {
	0% {
		opacity: 0.1;
	}
	20% {
		opacity: 1;
	}
	100% {
		opacity: 0.1;
	}
}
@-o-keyframes seqblink {
	0% {
		opacity: 0.1;
	}
	20% {
		opacity: 1;
	}
	100% {
		opacity: 0.1;
	}
}
@keyframes seqblink {
	0% {
		opacity: 0.1;
	}
	20% {
		opacity: 1;
	}
	100% {
		opacity: 0.1;
	}
}


@-ms-keyframes spinner {
	from { -ms-transform: rotate(0deg); }
	to { -ms-transform: rotate(360deg); }
}
@-moz-keyframes spinner {
	from { -moz-transform: rotate(0deg); }
	to { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes spinner {
	from { -webkit-transform: rotate(0deg); }
	to { -webkit-transform: rotate(360deg); }
}
@keyframes spinner {
	from {
		transform:rotate(0deg);
	}
	to {
		transform:rotate(360deg);
	}
}





.vs-sec {
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, 200px);
	-ms-transform:     translate(0, 200px);
	transform:         translate(0, 200px);
	opacity: 0;
	transition: transform 1.2s ease-in-out, opacity 1.5s ease-in;
}
.vs-sec.on {
	-webkit-transform: translate(0, 0);
	-ms-transform:     translate(0, 0);
	transform:         translate(0, 0);
	opacity: 1;
}





/* ==========================================================================



GLOBAL
========================================================================== */

#skiptocontent {
	height: 30px;
	line-height: 30px;
	padding: 0 20px;
	position: fixed;
	top: -30px;
	right: 0;
	left: 0;
	z-index: 245;
	background: #1c1c1c;
	color: #fff;
	font-size: 12px;
	text-align: left;
	text-transform: uppercase;
	display: none;
}
#skiptocontent:focus {
	top: 100px;
}
.scrolled #skiptocontent {
	top: 20px;
}
.scrolled #skiptocontent:focus {
	top: 50px;
}
.admin-bar.visionsalon #skiptocontent {
	top: -30px;
	z-index: 999999;
}
.admin-bar.visionsalon #skiptocontent:focus {
	top: 32px;
}

#container:focus {
	outline: 0;
}



/* ==========================================================================



HEADER
========================================================================== */

#visionsalonlogo {
	position: absolute;
	top: 50%;
	left: 90px;
	top: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

#header {
	width: 100%;
	height: 80px;
	line-height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 250;
	background-color: rgba(255, 255, 255, 0.9);
}
#header .gridw {
	position: static;
}
#menuscreenmask {
	position: fixed;
	bottom: -1000%;
}
#menu {
	width: 50%;
	width: calc(100% - 80px);
	position: fixed;
	top: 0;
	right: 100%;
	bottom: 0;
	z-index: 99999;
	overflow: visible;
	background-color: #fff;
}
.menu a {
	padding: 12px 30px;
	display: inline-block;
	color: #1a1a1a;
	font-weight: bold;
	font-size: 14px;
	line-height: 120%;
	text-transform: uppercase;
	letter-spacing: 1.1px;
}
/* 20220906 ショッピング追加：ここから */
.menu .p-shop a {
	color: #6F589F;
}
/* 20220906 ショッピング追加：ここまで */
#menu .dd {
	margin-top: -3px;
/* 	padding-left: 10px; */
	margin: -3px 0 5px 10px;
}
#menu .dd a {
	padding: 12px 0 12px 30px;
	color: #5e5e5e;
	font-size: 15px;
}
#menu .active > a,
#menu a:active,
#menu a:hover,
#menu a:focus {
	color: #c83c50;
}

#menuscroller {
	width: 100%;
	height: 100%;
	max-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	overflow: auto;
}

#menubox {
	width: 100%;
	height: 100%;
	display: table;
	overflow: auto;
	/* background-color: #fff; */
}

#menu ul {
	width: 100%;
	max-height: 100%;
	display: table-cell;
	overflow: auto;
	vertical-align: middle;
}
.menu li {
	padding: 0;
	position: relative;
}
.menu .p-57 {
	display: none;
}
.menutoggle {
	width: 80px;
	height: 80px;
	line-height: 80px;
	position: absolute;
	top: 0;
	left: 100%;
	/* background-color: #fff; */
}
.menutoggle:before,
.menutoggle:after,
.menutoggle i:before {
	content: '';
	width: 24px;
	height: 4px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 10;
	margin-top: -2px;
	margin-left: -12px;
	border-radius: 2px;
	background-color: #eb576c;
	transition: all 0.3s ease-in-out;
}
.menutoggle:before {
	margin-top: -10px;
}
.menutoggle:after {
	margin-top: 6px;
}
.menutoggle:active {
	color: #1b1b1b;
}
.menutoggle:hover {
	background-color: #eb576c;
	color: #fff;
}
.menutoggle:hover:before,
.menutoggle:hover:after,
.menutoggle:hover i:before {
	background-color: #fff;
}
.menu-on .mask {
	z-index: 200;
	opacity: 1;
}
.menu-on #menu {
	right: 80px;
}
.menu-on .menutoggle {
	background-color: #eb576c;
}
.menu-on .menutoggle i:before {
	opacity: 0;
}
.menu-on .menutoggle:before,
.menu-on .menutoggle:after {
	width: 30px;
	height: 2px;
	border-radius: 1px;
	background-color: #fff;
	margin-top: -1px;
	margin-left: -14px;
}
.menu-on .menutoggle:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.menu-on .menutoggle:after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


#menu {
	/* display: none; */
}
#header .hfoot {
	display: none;
}


.menu .phonenav,
.menu .contactnav {
	padding: 17px 30px;
}
.phonenav {
	display: inline-block;
	color: #1a1a1a;
	font-weight: bold;
	font-size: 16px;
	line-height: 140%;
	text-transform: uppercase;
	letter-spacing: 1.1px;
}
.phonenav .phone {
	margin: 10px 0 0;
	display: block;
	color: #eb576c;
	font-size: 10px;
	line-height: 27px;
	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
}
.phonenav .phone strong,
.phonenav .phone a {
	padding: 0;
	display: inline;
	font-size: 22px;
	font-weight: normal;
	color: #eb576c;
}
.menu .contactnav a {
	color: #fff;
}
#menu .contactnav a:active,
#menu .contactnav a:hover,
#menu .contactnav a:focus {
	color: #fff;
}

body.blog #menu .p-5 > a,
body.archive.category #menu .p-5 > a,
.single-post #menu .p-5 > a,
.tax-voice_category #menu .p-voice > a,
.post-type-archive-voice #menu .p-voice > a {
	color: #c83c50;
}

	@media screen and (max-width: 767px) {
		.scrolled #header {
			height: 50px;
		}
		.scrolled .menutoggle {
			height: 50px;
		}
	}

	@media screen and (min-width: 768px) {
		.menutoggle {
			height: 100px;
		}
		#header {
			height: 100px;
			font-size: 12px;
			line-height: 15px;
		}
		#visionsalonlogo {
			top: 40px;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 0);
			-ms-transform: translate(0, 0);
			transform: translate(0, 0);
		}
		#header .tagline {
			margin: 0;
			position: absolute;
			top: 18px;
			left: 90px;
			font: normal 12px/15px "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
		}
		.visionsalonlogo i {
			display: inline-block;
			vertical-align: top;
		}


		#header .hfoot {
			position: absolute;
			top: 0;
			right: 0;
			display: block;
			text-align: right;
		}
		#header .hfoot .btn {
			width: 250px;
			margin: 0 20px 0 0;
		}

		#header .phonecon {
			width: 250px;
			margin: 16px 20px 0 0;
			font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
			font-weight: bold;
			text-align: center;
		}
		#header .phonecon .txt {
			display: none;
		}
		#header .phone {
			margin: 10px 0 0;
			display: block;
			color: #eb576c;
			font-size: 16px;
			line-height: 27px;
		}
		#header .phone strong,
		#header .phone a {
			font-size: 27px;
			color: #eb576c;
		}

	}
	@media screen and (min-width: 900px) {
		#menu .active > a {
			border-bottom: 1px solid #c83c50;
		}
		.visionsalon .phonenav,
		.visionsalon .contactnav {
			display: none;
		}
		.menutoggle {
			display: none;
		}
		#visionsalonlogo {
			left: 20px;
		}
		#header .tagline {
			left: 20px;
		}

		#header .hfoot {
			width: 100%;
		}
		#header .phonecon {
			width: auto;
			margin-top: 14px;
			display: inline-block;
			text-align: right;
		}
/* 		#header .phonecon .txt, */
		#header .phone {
			margin-top:  0;
			display: inline-block;
		}
		#header .hfoot .btn {
		}


		#menu {
			width: 500px;
			position: absolute;
			top: auto !important;
			bottom: 12px;
			left: auto;
			right: 13px;
			background: transparent;
			text-align: right;
		}
		#menuscroller {
			position: static;
		}
		#menubox,
		#menubox ul {
			display: block;
		}
		.menu li {
			margin: 2px 7px;
			display: inline-block;
		}
		.menu .p-2 {
			display: none;
		}
		.menu a {
			padding: 0;
			font-size: 12px;
			letter-spacing: -1px;
		}

		body.blog #menu .p-5 > a,
		body.archive.category #menu .p-5 > a,
		.single-post #menu .p-5 > a,
		.tax-voice_category #menu .p-voice > a,
		.post-type-archive-voice #menu .p-voice > a {
			border-bottom: 1px solid #c83c50;
		}

	}
	@media screen and (min-width: 1000px) {
	}
	@media screen and (min-width: 1140px) {
		#header .gridw {
			height: 100%;
			padding: 0 20px;
			position: relative;
		}
		#menu {
			width: 780px;
			bottom: 19px;
		}
		.menu a {
			font-size: 12px;
		}
		#header .phonecon {
			margin-right: 41px;
		}
		#header .phonecon .txt {
			margin-right: 10px;
			display: inline-block;
			font-weight: bold;
			letter-spacing: -1px;
		}
	}





/* ==========================================================================



HOME
========================================================================== */


body.page-id-2 {
	/*opacity: 0;*/
	transition: opacity 1s ease;
}
body.page-id-2.inited {
	opacity: 1;
}



.herobanner {
	height: 80vh;
	max-height: 600px;
	position: relative;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.herobanner .con {
	width: 90%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-align: center;
}
.herobanner .con h1 {
	font-size: 44px;
	line-height: 44px;
}
.herobanner .con h1 span {
	display: block;
	font-size: 15px;
	line-height: 15px;
}

.herobanner .item {
	width: 100%;
	height: 80vh;
	max-height: 500px;
	position: relative;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}



#homehero {
	background: none;
}
/* #homehero:before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 5;
	background: url(../img/banner-home.jpg) no-repeat 50% 50%;
	background-size: auto 120%;
	transition: all 1s ease-in-out;
	opacity: 0;
} */
#homehero .con {
	margin-top: 15px;
	padding-top: 25px;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -40%);
	-ms-transform: translate(-50%, -40%);
	transform: translate(-50%, -30%);
	z-index: 20;
	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
	font-weight: bold;
}
#homehero p {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 13px;
	line-height: 13px;
}
#homehero .mods {
/* 	width: 1167px; */
	height: 418px;
/* 	width: 75%; */
	width: 95%;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background: url(../img/banner-home-mods.png) no-repeat 0 100%;
	background-size: contain;
}


/* #homehero:before {
	-webkit-transform: scale3d(1.1, 1.1, 1);
	-ms-transform:     scale3d(1.1, 1.1, 1);
	transform:         scale3d(1.1, 1.1, 1);
} */
.inited #homehero:before {
	opacity: 1;
	background-size: auto 100%;
}
#homehero .con {
	opacity: 0;
}
/* #homehero .mods {
	transition: opacity 0.6s ease-in-out 0.3s;
} */
#homehero .con {
	transition: all 1s ease-out 0.2s;
}
.inited #homehero .con {
	opacity: 1;
}
.inited #homehero .con {
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}


#homehero .flickity-slider {
  transform: none !important;
}

#homehero .item {
  left: 0 !important;
  opacity: 0;
  transition: opacity 1s ease;
  z-index: -1;
}

#homehero .item.is-selected {
  opacity: 1;
  z-index: 0
}

	@media screen and (min-width: 768px) {
		.herobanner {
			min-height: 600px;
		}
		.herobanner .item {
			min-height: 600px;
		}
		.herobanner .con h1 {
			font-size: 60px;
			line-height: 60px;
			font-weight: normal;
		}
		.herobanner .con h1 span {
			font-size: 20px;
			font-weight: bold;
		}
		#homehero .con {
			margin-top: 20px;
			padding-top: 30px;
		}
		#homehero p {
			font-size: 18px;
		}
		#homehero .mods {
			width: 100%;
			max-width: 1200px;
		}
	}

	@media screen and (min-width: 768px) {
		.inited #homehero:before {
			background-size: cover;
		}
	}




/* HOME HERO CAROUSEL UPDATES NOV 2017 starts */

#homehero.v2 {
	margin-top: 80px;
}
.herobanner.v2,
.herobanner.v2 .item {
	min-height: 0;
	height: 374px;
	max-height: none;
}
#homehero.v2 .item.event {
	background-image: url(../img/banner-home-event-sp-1.jpg), url(../img/banner-home-event-sp-1-bk.jpg);
	background-color: #dadada;
	background-size: auto 374px, 100% 100%;
}
#homehero.v2 .item.event .nakagawa-method-logo {
	width: 83px;
	padding-top: 24px;
	position: absolute;
	top: 10px;
	left: 20px;
}
#homehero.v2 .item.event a {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
}
.herobanner.v2 .flickity-page-dots {
	bottom: 19px;
}
.herobanner.v2 .flickity-page-dots .dot {
	width: 14px;
	height: 14px;
	margin: 0 7px;
	background-color: #959595;
	opacity: 1;
}
.herobanner.v2 .flickity-page-dots .dot.is-selected {
	background-color: #EB576C;
}
#homehero.v2 .con {
	display: none;
}
#homehero.v2:not(.i-0) .con {
	display: block;
}
	@media screen and (max-width: 470px) {
		.herobanner.v2 .flickity-prev-next-button {
			width: 30px;
			height: 54px;
			top: auto;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 0);
			-ms-transform:     translate(0, 0);
			transform:         translate(0, 0);
			bottom: 0;
			z-index: 10;
			border-radius: 0;
		}
		.herobanner.v2 .flickity-prev-next-button.previous {
			left: 0;
		}
		.herobanner.v2 .flickity-prev-next-button.next {
			right: 0;
		}
		.herobanner.v2 .flickity-prev-next-button svg {
			width: 70%;
			height: 70%;
			top: 15%;
			left: 15%;
		}
	}
	@media screen and (min-width: 471px) {
		.herobanner.v2 .flickity-prev-next-button {
			box-shadow: rgba(0,0,0,0.1) 0 0 10px;
		}
	}
	@media screen and (min-width: 620px) {
		.herobanner.v2,
		.herobanner.v2 .item {
			height: 300px;
			min-height: 0;
			max-height: none;
		}
		#homehero.v2 .item.event {
			background-image: url(../img/banner-home-event-dt-1.jpg);
			background-size: auto 300px;
		}
	}
	@media screen and (min-width: 768px) {
		#homehero.v2 {
			margin-top: 100px;
		}
		.herobanner.v2,
		.herobanner.v2 .item {
			height: 400px;
		}
		#homehero.v2 .item.event {
			background-size: auto 400px;
		}
		#homehero.v2 .item.event .nakagawa-method-logo {
			width: 148px;
			padding-top: 38px;
			top: 20px;
			left: 50%;
			margin-left: -335px;
			background-image: url(../gfx/nakagawa-method-logo.svg);
		}
	}
	@media screen and (min-width: 900px) {
		.herobanner.v2,
		.herobanner.v2 .item {
			height: 500px;
		}
		#homehero.v2 .item.event {
			background-size: auto 500px;
		}
		#homehero.v2 .item.event .nakagawa-method-logo {
			left: 50%;
			margin-left: -420px;
		}
	}
	@media screen and (min-width: 1140px) {
		#homehero.v2 .item.event .nakagawa-method-logo {
			top: 40px;
		}
	}
	@media screen and (min-width: 1200px) {
		.herobanner.v2,
		.herobanner.v2 .item {
			height: 600px;
		}
		#homehero.v2 .item.event {
			background-size: auto 600px;
		}
		#homehero.v2 .item.event .nakagawa-method-logo {
			margin-left: -505px;
		}
	}




/* HOME HERO CAROUSEL UPDATES NOV 2017 ends */





/* HOME HERO CAROUSEL UPDATES DEC 2017 starts */
#homehero.v2 .item.event.kodomo {
	background-image: url(../img/banner-home-event-sp-2.png), url(../img/banner-home-event-sp-2-bk.jpg);
	background-color: #fef1f6;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.kodomo {
			background-image: url(../img/banner-home-event-dt-2.jpg);
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES DEC 2017 ends */




/* HOME HERO CAROUSEL UPDATES APR 2018 starts */
#homehero.v2 .item.event.kodomo2 {
	background-image: url(../img/banner-home-event-sp-3.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.kodomo2 {
			background-image: url(../img/banner-home-event-dt-3.png);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES APR 2018 ends */




/* HOME HERO CAROUSEL UPDATES MAY 2, 2018 starts */
#homehero.v2 .item.event.even20180502 {
	background-image: url(../img/banner-home-event20180502-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.even20180502 {
			background-image: url(../img/banner-home-event20180502-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES MAY 2, 2018 ends */




/* HOME HERO CAROUSEL UPDATES JUL 2018 starts */
#homehero.v2 .item.event.kodomo3 {
	background-image: url(../img/banner-home-event-sp-4.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.kodomo3 {
			background-image: url(../img/banner-home-event-dt-4.png);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.even20180629 {
	background-image: url(../img/banner-home-even20180629-sp.png);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.even20180629 {
			background-image: url(../img/banner-home-even20180629-dt.png);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES JUL 2018 ends */



/* HOME HERO CAROUSEL UPDATES AUG 2018 starts */
#homehero.v2 .item.event.aug2018_1 {
	background-image: url(../img/banner-home-20180831_1-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2018_1 {
			background-image: url(../img/banner-home-20180831_1-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.aug2018_2 {
	background-image: url(../img/banner-home-20180831_2-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2018_2 {
			background-image: url(../img/banner-home-20180831_2-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES AUG 2018 ends */


/* HOME HERO CAROUSEL UPDATES MAR 2019 starts */
#homehero.v2 .item.event.mar2019_1 {
	background-image: url(../img/banner-home-megane-20190308-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.mar2019_1 {
			background-image: url(../img/banner-home-megane-20190308-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.mar2019_2 {
	background-image: url(../img/banner-home-kodomo-20190308-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.mar2019_2 {
			background-image: url(../img/banner-home-kodomo-20190308-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.mar2019_3 {
	background-image: url(../img/banner-home-nyukai-20190308-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.mar2019_3 {
			background-image: url(../img/banner-home-nyukai-20190308-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.mar2019_4 {
	background-image: url(../img/banner-home-shinkan-20190308-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.mar2019_4 {
			background-image: url(../img/banner-home-shinkan-20190308-dt.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES MAR 2019 ends */



#homehero.v2 .item.event.nov2018_1 {
	background-image: url(../img/couseling_sp_20181103.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.nov2018_1 {
			background-image: url(../img/couseling_pc_20181103.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.nov2018_2 {
	background-image: url(../img/child_sp_20181103.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.nov2018_2 {
			background-image: url(../img/child_pc_20181103.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.nov2018_3 {
	background-image: url(../img/campaign_sp_20181103.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.nov2018_3 {
			background-image: url(../img/campaign_pc_20181103.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}

/* HOME HERO CAROUSEL UPDATES nov2018 ends */







/* HOME HERO CAROUSEL UPDATES MAY 2019 starts */
#homehero.v2 .item.event.may2019_1 {
	background-image: url(../img/20190605/20190605-vision.sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.may2019_1 {
			background-image: url(../img/20190605/20190605-vision.PC.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.may2019_2 {
	background-image: url(../img/20190605/20190605-hangaku.sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.may2019_2 {
			background-image: url(../img/20190605/20190605-hangaku.PC.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.may2019_3 {
	background-image: url(../img/20190605/20190605-megane.sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.may2019_3 {
			background-image: url(../img/20190605/20190605-megane.PC.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.may2019_4 {
	background-image: url(../img/20190605/20190605-reputon.sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.may2019_4 {
			background-image: url(../img/20190605/20190605-reputon.PC.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES MAY 2019 ends */





/* HOME HERO CAROUSEL UPDATES MAY 2019 starts */

#homehero.v2 .item.event.aug2019_2 {
	background-image: url(../img/20190808/20190808-heijitsu-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_2 {
			background-image: url(../img/20190808/20190808-heijitsu-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.aug2019_3 {
	background-image: url(../img/20190808/20190808-child-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_3 {
			background-image: url(../img/20190808/20190808-child-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.aug2019_4 {
	background-image: url(../img/20190808/20190808-counceling-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_4 {
			background-image: url(../img/20190808/20190808-counceling-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.aug2019_5 {
	background-image: url(../img/20190808/20190808-reputon-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_5 {
			background-image: url(../img/20190808/20190808-reputon-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
#homehero.v2 .item.event.aug2019_6 {
	background-image: url(../img/20190808/20190824-aging-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_6 {
			background-image: url(../img/20190808/20190824-aging-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
	}
/* HOME HERO CAROUSEL UPDATES MAY 2019 ends */


/* HOME HERO CAROUSEL UPDATES November 2019 starts */


#homehero.v2 .item.event.aug2019_8 {
	background-image: url(../img/20191101/20191101-heijitsu-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_8 {
			background-image: url(../img/20191101/20191101-heijitsu-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
}

#homehero.v2 .item.event.aug2019_9 {
	background-image: url(../img/20191101/20191101-child-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_9 {
			background-image: url(../img/20191101/20191101-child-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
		}
#homehero.v2 .item.event.aug2019_10 {
	background-image: url(../img/20191101/20191101-counceling-sp.jpg);
	background-color: #efefef;
	background-size: auto 100%, 100% 100%;
}
	@media screen and (min-width: 620px) {
		#homehero.v2 .item.event.aug2019_10 {
			background-image: url(../img/20191101/20191101-counceling-pc.jpg);
			background-color: #dcdcdc;
			background-size: auto 100%;
		}
		}
/* HOME HERO CAROUSEL UPDATES November 2019 ends */















.featnews {
/* 	max-width: 1600px; */
	margin: 14px auto;
	opacity: 0;
	transition: opacity 1s ease-in-out 1s;
}
.inited .featnews {
	opacity: 1;
}
.featnews .item {
	width: 191px;
	max-width: 382px;
	height: 280px;
	margin: 0 7px;
	border: 1px solid #ccc;
	background-color: #eb576c;
	color: #fff;
	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
	transition: border 0.3s ease-in-out;
}
.featnews .item:hover {
	border-color: #c83c50;
}
.featnews .box {
	width: 100%;
	height: 132px;
	display: table;
	background-color: #eb576c;
	transition: background-color 0.3s ease-in-out;
}
.featnews .con {
	padding: 0 10px;
	display: table-cell;
	vertical-align: middle;
	color: #fff;
}
.featnews a:active .box,
.featnews a:hover .box,
.featnews a:focus .box {
	background-color: #c83c50;
}
.featnews .item .img {
	width: 189px;
	height: 148px;
	overflow: hidden;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.featnews .item img {
	width: 100%;
	height: auto;
	display: block;
/* 	float: right; */
}
.featnews .item em {
	max-height: 30px;
	display: block;
	overflow: hidden;
	font-style: normal;
	font-size: 10px;
	font-weight: bold;
	line-height: 15px;
}
.featnews .item strong {
	max-height: 60px;
	margin-top: 10px;
	display: block;
	overflow: hidden;
	font-size: 16px;
	line-height: 20px;
}
.featnews .item .foot {
	margin-top: 10px;
	display: block;
	/* white-space: nowrap; */
	/* overflow: hidden; */
	/* text-overflow: ellipsis; */
	font-size: 13px;
	line-height: 15px;
}
	@media screen and (min-width: 768px) {
		.featnews .item {
			width: 382px;
			height: 172px;
		}
		.featnews .item .img {
			width: 189px;
			height: 170px;
			float: right;
		}
		.featnews .item strong {
			max-height: 78px;
			display: block;
			font-size: 20px;
			line-height: 26px;
		}
		.featnews .box {
			width: 100%;
			height: 100%;
		}
		.featnews .img + .box {
			width: 191px;

		}
		.featnews .con {
			padding: 0 14px;
		}
	}

.flickity-prev-next-button {
	background-color: rgba(255, 255, 255, 0.6);
}

.flickity-prev-next-button .arrow {
	fill: #eb576c;
	transition: fill 0.3s ease-in-out;
}

.philo-promo {
	width: 95%;
	width: calc(100% - 20px);
/* 	max-width: 550px; */
	max-width: 320px;
	margin: 35px auto;
	position: relative;
	display: block;
	border: 3px solid #2eb6aa;
	background-color: #2eb6aa;
	color: #fff;
	transition: transform 1.2s ease-in-out, opacity 1.5s ease-in, border 0.3s ease-in-out, background-color 0.3s ease-in-out;
}
.philo-promo img {
	width: 72px;
	height: 72px;
	display: inline-block;
	vertical-align: middle;
}
.philo-promo span {
	/* width: 100%; */
	/* padding-left: 77px; */
/* 	width: 180px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: 21px;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(-50%, -50%); */
	margin-left: 0;
	display: inline-block;
	vertical-align: middle;
	font-size: 11px;
	font-weight: bold;
}
.philo-promo span strong {
	display: block;
	font-size: 1.57em;
}
.philo-promo .arrowbox,
.btn .arrowbox {
	width: 28px;
	height: 28px;
	right: 5px;
	background-color: #fff;
}
.philo-promo .arrowbox path {
	fill: #2eb6aa;
	transition: fill 0.3s ease-in-out;
}
.philo-promo:active,
.philo-promo:hover,
.philo-promo:focus {
	border-color: #eb576c;
	background-color: #eb576c;
	color: #fff;
}
.philo-promo:hover .arrowbox path {
	fill: #eb576c;
}

.btn:hover .arrowbox path,
.btn:active .arrowbox path {
	fill: #000;
}
	@media screen and (min-width: 500px) {
		.philo-promo {
			max-width: 400px;
		}
		.philo-promo img {
			width: 100px;
			height: 100px;
		}
		.philo-promo span {
			width: 240px;
			margin-left: 15px;
			font-size: 14px;
			line-height: 26px;
		}
		.philo-promo .arrowbox {
			right: 10px;
		}
	}
	@media screen and (min-width: 600px) {
		.philo-promo {
			width: 550px;
			max-width: 550px;
			margin: 60px auto;
		}
		.philo-promo img {
			width: 144px;
			height: 144px;
		}
		.philo-promo span {
			margin-left: 60px;
			line-height: 32px;
		}
		.philo-promo .arrowbox {
			right: 65px;
		}
	}


.visionsalonlogo.about {
	width: 270px;
	margin: 0 auto 30px;
	padding: 0 0 12px;
	position: relative;
	text-align: center;
}
.visionsalonlogo.about i {
	width: 100%;
	padding-top: 58px;
}
.visionsalonlogo.about span {
	display: block;
	font: bold 15px/22px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.visionsalonlogo.about:after {
	content: '';
	width: 35px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -17px;
	background-color: #eb576c;
}

.about-promo {
	max-width: 650px;
	margin: 0 auto;
	font-size: 15px;
	line-height: 24px;
	text-align: center;
}
.about-promo .visionsalonlogo.alt-fff i {
	width: 164px;
	padding-top: 35px;
}
.about-promo p {
	padding: 0 20px;
}
.about-promo .btn {
	padding-right: 0;
	padding-left: 0;
	font-size: 20px;
}
.about-promo .btn strong {
	width: 220px;
	margin: 0 auto 16px;
	padding: 13px 22px;
	display: block;
	border-radius: 20px;
	background-color: #fff;
	color: #00558f;
	font-size: 23px;
	line-height: 28px;
}
.about-promo .btn .arrowbox {
	margin: -6px 0 0 5px;
	position: static;
	display: inline-block;
	vertical-align: top;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
	@media screen and (min-width: 520px) {
		.about-promo .btn strong {
			width: 400px;
			display: block;
		}
	}
	@media screen and (min-width: 768px) {
		.about-promo {
			width: calc(100% - 40px);
			max-width: 1300px;
		}
		.about-promo p {
			max-width: 600px;
			margin: 0 auto;
		}
		.about-promo .visionsalonlogo.alt-fff i {
			margin-bottom: 2px;
			display: inline-block;
			vertical-align: bottom;
		}

		.about-promo .btn {
			padding-top: 25px;
			padding-bottom: 25px;
		}
		.about-promo .btn .con {
			width: auto;
			position: relative;
			display: inline-block;
			vertical-align: top;
		}
		.about-promo .btn .arrowbox {
			margin-left: 14px;
			vertical-align: middle;
		}
		.about-promo .btn strong {
			width: auto;
			margin: 0 12px 0 0;
			display: inline-block;
		}
	}
	@media screen and (min-width: 1300px) {
		.about-promo p {
			max-width: 1600px;
		}
	}


.cases-promo .item {
	width: 50%;
	position: relative;
	display: inline-block;
	vertical-align: top;
	list-style: none;
	text-align: center;
}
.cases-promo .item:after {
	content: '';
	padding-top: 68.75%;
	display: block;
}
.cases-promo .item a {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/case1.jpg) no-repeat 50% 50%;
	background-size: cover;
	color: #fff;
}
.cases-promo .item:nth-of-type(2) a {
	background-image: url(../img/case2.jpg);
}
.cases-promo .item:nth-of-type(3) a {
	background-image: url(../img/case3.jpg);
}
.cases-promo .item:nth-of-type(4) a {
	background-image: url(../img/case4.jpg);
}
.cases-promo .item a:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	background-color: rgba(0, 0, 0, 0.2);
/* 	background: rgb(204,204,204); */
/* 	background: -moz-linear-gradient(top, rgba(204,204,204,1) 38%, rgba(153,153,153,1) 100%);
	background: -webkit-linear-gradient(top, rgba(204,204,204,1) 38%,rgba(153,153,153,1) 100%);
	background: linear-gradient(to bottom, rgba(204,204,204,1) 38%,rgba(153,153,153,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#999999',GradientType=0 ); */
/* 	opacity: 0.4; */
	transition: background-color 0.3s ease-in-out;
}
.cases-promo .item a:active:after,
.cases-promo .item a:hover:after,
.cases-promo .item a:focus:after,
#case1 .cases-promo .case1 a:after,
#case2 .cases-promo .case2 a:after,
#case3 .cases-promo .case3 a:after,
#case4 .cases-promo .case4 a:after {
	background: rgba(235, 85, 108, 0.56);
}
.cases-promo .item a:active,
.cases-promo .item a:hover,
.cases-promo .item a:focus {
/* 	color: #eb576c; */
}
.cases-promo .con {
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 30px;
	z-index: 10;
	padding: 0 20px;
}
	@media screen and (min-width: 1200px) {
		.cases-promo .con {
			bottom: 35px;
		}
	}
	@media screen and (min-width: 1400px) {
		.cases-promo .con {
			bottom: 45px;
		}
	}
.cases-promo .item.case1 .con strong br{
	display: block;
}
@media screen and (max-width: 1500px){
	.cases-promo .item.case1 .con strong br{
		display: none;
	}
}
.cases-promo .item.case2 .con strong br{
	display: none;
}
@media screen and (max-width: 1720px){
	.cases-promo .item.case2 .con strong br{
		display: block;
	}
}
.cases-promo .item.case3 .con strong br{
	display: none;
}
@media screen and (max-width: 1300px){
	.cases-promo .item.case3 .con strong br{
		display: block;
	}
}
.cases-promo .item .con span.case {
	display: block;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 400;
	position: relative;
	color: #fff;
	opacity: 0.15;
	font-size: 70px;
	line-height: 1;
	margin-bottom: -0.25em;
}
.cases-promo .item .con strong {
	position: relative;
	z-index: 1;
	font-size: 30px;
	line-height: 1.2;
}
	@media screen and (min-width: 768px) {
		.cases-promo .item {
			width: 25%;
		}
		.cases-promo .item .con span.case {
			font-size: 80px;
		}
	}
	@media screen and (min-width: 1124px) {
		.cases-promo .item .con span.case {
			font-size: 60px;
		}
		.cases-promo .item .con strong {
			font-size: 26px;
		}
	}
	@media screen and (min-width: 1200px) {
		.cases-promo .item .con span.case {
			font-size: 80px;
		}
		.cases-promo .item .con strong {
			font-size: 28px;
		}
	}
	@media screen and (min-width: 1400px) {
		.cases-promo .item .con strong {
			font-size: 30px;
			line-height: 1.25;
		}
	}

.cases-promo.lrg {
	padding-bottom: 40px;
}
.cases-promo.lrg .item {
	width: 100%;
	margin-bottom: 65px;
}
.cases-promo.lrg .item p,
.cases-promo.lrg .item p span {
	font-size: 12px;
	line-height: 19px;
}
.cases-promo.lrg .item p {
	height: 58px;
	padding: 10px;
	position: absolute;
	top: 100%;
	margin: -13px 0;
	right: 10px;
	left: 10px;
	z-index: 10;
	background-color: #f3f3f3;
	color: #000;
}
.cases-promo.lrg .item p span {
	display: inline;
}
.cases-promo.lrg .item p:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 0 0;
	border-color: #eb576d transparent transparent transparent;
	position: absolute;
	top: 0;
	left: 0;
}
	@media screen and (min-width: 375px) {
		.cases-promo.lrg {
			text-align: center;
		}
		.cases-promo.lrg .item {
			max-width: 360px;
		}
		.cases-promo.lrg .item p span {
			display: block;
		}
	}
	@media screen and (min-width: 480px) {
		.cases-promo.lrg .item {
			max-width: 360px;
			margin-right: 10px;
			margin-left: 10px;
			margin-bottom: 71px;
		}
		.cases-promo.lrg .item p,
		.cases-promo.lrg .item p span {
			font-size: 13px;
			line-height: 19px;
		}
		.cases-promo.lrg .item p {
			height: auto;
		}
		.cases-promo.lrg .item p:before {
			border-width: 20px 20px 0 0;
		}
	}
	@media screen and (min-width: 1024px) {

		.cases-promo.lrg {
			padding-bottom: 110px;
		}
		.cases-promo.lrg .item p,
		.cases-promo.lrg .item p span {
			font-size: 12px;
			line-height: 18px;
		}
		.cases-promo.lrg .item p {
			margin-top: -24px;
			padding-top: 20px;
			padding-bottom: 20px;
			left: 10px;
			right: 10px;
		}
		.cases-promo.lrg .item p:before {
			border-width: 25px 25px 0 0;
		}
	}
	@media screen and (min-width: 1124px) {
		.cases-promo.lrg .item {
			width: 25%;
			max-width: 25%;
			margin-right: 0;
			margin-left: 0;
		}
		.cases-promo.lrg .item p {
			height: 94px;
			color: #666;
		}
		.cases-promo.lrg .item p span {
			display: inline;
		}
	}
	@media screen and (min-width: 1300px) {
		.cases-promo.lrg .item p {
			height: auto;
			padding-right: 0;
			padding-left: 0;
		}
		.cases-promo.lrg .item p span {
			display: block;
		}
	}
	@media screen and (min-width: 1400px) {
		.cases-promo.lrg .item {
			width: 25%;
			margin-right: 0;
			margin-left: 0;
		}
		.cases-promo.lrg .item p,
		.cases-promo.lrg .item p span {
			font-size: 13px;
			line-height: 20px;
		}
		.cases-promo.lrg .item p {
			left: 15px;
			right: 15px;
		}
	}
	@media screen and (min-width: 1500px) {
		.cases-promo.lrg .item p,
		.cases-promo.lrg .item p span {
			font-size: 14px;
			line-height: 21px;
		}
	}
	@media screen and (min-width: 1600px) {
		.cases-promo.lrg .item p,
		.cases-promo.lrg .item p span {
			font-size: 15px;
			line-height: 22px;
		}
		.cases-promo.lrg .item p:before {
			border-width: 40px 40px 0 0;
		}
	}



.caseBtm.cases-promo{
	padding: 0 20px;
}
.caseBtm.cases-promo .item{
	width: 100%;
}
.caseBtm.cases-promo .item .con span{
	opacity: 0.5;
	display: block;
	font-size: 16px;
}
.caseBtm.cases-promo .item .con strong{
	display: block;
	margin-top: 5px;
	font-size: 18px;
}
.caseBtm.cases-promo .item.case1 .con strong br {
    display: block;
}
@media screen and (min-width: 400px) {
	.caseBtm.cases-promo .item.case1 .con strong br,
	.caseBtm.cases-promo .item .con strong br {
			display: none;
	}
}
@media screen and (min-width: 480px) {
	.caseBtm.cases-promo{
		padding: 0;
	}
	.caseBtm.cases-promo .item{
		width: 50%;
	}
	.caseBtm.cases-promo .item .con span{
		font-weight: normal;
	}
	.caseBtm.cases-promo .item .con strong{
	}
	.caseBtm.cases-promo .item.case1 .con strong br,
	.caseBtm.cases-promo .item .con strong br {
			display: block;
	}
}
@media screen and (min-width: 768px) {
	.caseBtm.cases-promo .item .con{
		padding: 0 15px;
	}
	.caseBtm.cases-promo .item{
		width: 25%;
	}
	.caseBtm.cases-promo .item.case1 .con strong br,
	.caseBtm.cases-promo .item .con strong br {
			display: none;
	}
}
/*	@media screen and (min-width: 768px) {
		.cases-promo .item .con strong {
			font-size: 80px;
		}
	}
	@media screen and (min-width: 1124px) {
		.caseBtm.cases-promo .item .con strong {
			font-size: 60px;
		}
		.caseBtm.cases-promo .item .con span {
			font-size: 26px;
		}
	}
	@media screen and (min-width: 1200px) {
		.caseBtm.cases-promo .item .con strong {
			font-size: 80px;
		}
		.caseBtm.cases-promo .item .con span {
			font-size: 28px;
		}
	}
	@media screen and (min-width: 1400px) {
		.caseBtm.cases-promo .item .con span{
			font-size: 30px;
			line-height: 1.25;
		}
	}*/









.mod {
	padding: 50px 10px;
}
.mod-foot {
	margin: 15px auto 0;
	text-align: center;
}
	@media screen and (min-width: 768px) {
		.mod {
			padding: 100px 10px;
		}
	}



.heading1 {
	margin: 0 auto 30px;
	padding: 0 0 12px;
	position: relative;
	color: #eb596c;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 100;
	font-size: 38px;
	text-transform: uppercase;
	text-align: center;
	line-height: 38px;
}
.heading1:after {
	content: '';
	width: 35px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -17px;
	background-color: #eb576c;
}
.heading1 span {
	display: block;
	color: #000;
	font: bold 15px/15px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}

.heading2 {
	width: calc(100% - 40px);
	max-width: 1100px;
	margin: 0 auto 24px;
	position: relative;
	color: #eb576c;
	font: 22px/28px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.heading2 span {
	font: normal 15px/15px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.heading2.deco {
	padding-bottom: 16px;
	border-bottom: 1px solid #eb576c;
}
.heading2.deco:before {
	content: '';
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
	border-bottom: 1px solid #eb576c;
}
* + .heading2.deco {
	margin-top: 90px;
}

.heading2.deco2 {
	padding-bottom: 6px;
	border-bottom: 5px solid #eb576c;
}

header .heading2.deco2 + p {
	margin: -20px 10px 30px;
	color: #eb576c;
	font-size: 10px;
	text-align: center;
}

.heading3 {
	margin: 40px auto 20px;
	position: relative;
	background-color: #fcdde2;
}
.heading3 span {
	width: 100%;
	padding: 10px 20px;
	display: block;
	background-color: #eb576c;
	color: #fff;
	font: 15px/20px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: center;
}
	@media screen and (min-width: 375px) {
		.heading3 span {
			width: 50%;
		}
	}



.mod.news {
	background-color: #f3f3f3;
}
.mod.news .mod-foot .btn {
	width: 120px;
}
.lineup {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.visionsalon .lineup li {
	margin: 0;
	padding: 20px 0;
	position: relative;
	display: block;
/* 	border-top: 1px dotted #000; */

}
.lineup li:after {
	content: '';
	width: 100%;
	height: 1px;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(to left, transparent 3px, #000 1px);
  	background-size: 4px 1px;
}
.lineup li:nth-of-type(1):after {
	display: none;
}
.lineup .entry-meta {
	margin: 0 0 5px;
}
.lineup .entry {
	color: #000;
/* 	background-image: linear-gradient( to right, #000 0%, #000 100% );
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 0;
    transition: none; */
}
.lineup .entry:active,
.lineup .entry:hover,
.lineup .entry:focus {
/* 	background-size: 100% 1px; */
	text-decoration: underline;
}
.entry-date {
	width: 90px;
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
}
.visionsalon .tag {
	margin: 0 10px;
	padding: 3px 10px;
	display: inline-block;
	background-color: #eb596e;
	color: #fff;
	line-height: 19px;
	text-align: center;
}
.visionsalon a.tag:active,
.visionsalon a.tag:hover,
.visionsalon a.tag:focus {
	background-color: #c83c50;
	color: #fff;
}
.lineup .tag {
	width: 140px;
	margin-right: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	vertical-align: middle;
}
	@media screen and (max-width: 480px) {
		#news .vs-box {
			padding-right: 10px;
			padding-left: 10px;
		}
	}
	@media screen and (min-width: 375px) {
		.lineup {
			padding: 0 10px;
		}

	}
	@media screen and (min-width: 768px) {
		.lineup .entry-meta {
			width: 260px;
			margin: 0;
			display: inline-block;
		}
		.lineup .entry {
			width: 450px;
			width: calc(100% - 280px);
			display: inline-block;
			vertical-align: top;
			font-size: 15px;
		}
	}



.mod.featured {
	padding-right: 0;
	padding-left: 0;
	text-align: center;
}

.feats .item {
	width: 304px;
	height: 150px;
	margin: 4px;
	display: inline-block;
	vertical-align: top;
	position: relative;
	list-style: none;
	border: 1px solid #ccc;
	background-color: #fff;
	box-shadow: 0 2px 4px 0 rgba(209, 209, 209, 1);
	transition: border 0.3s ease-in-out;
}
.feats .item:hover {
	border-color: #f13953;
}
.feats .item a {
	display: block;
}
.feats .box {
	width: 100%;
	height: 148px;
	margin: 0;
	padding-left: 151px;
	display: table;
	vertical-align: top;
	background-color: #fff;
	transition: background-color 0.3s ease-in-out;
}
.feats .con {
	padding: 0 10px;
	display: table-cell;
	vertical-align: middle;
	color: #000;
	text-align: center;
}
.feats a:active .box,
.feats a:hover .box,
.feats a:focus .box {
	background-color: #f13953;
	color: #fff;
}
.visionsalon .feats a:active .con,
.visionsalon .feats a:hover .con,
.visionsalon .feats a:focus .con,
.visionsalon .feats a:active .note,
.visionsalon .feats a:hover .note,
.visionsalon .feats a:focus .note {
	color: #fff;
}
.feats .item img {
	width: 151px;
	height: 100%;
	margin: 0;
	padding: 0;
	display: block;
	position: absolute;
	top: 0;
	left: 0px;
}
.feats .item em {
	max-height: 30px;
	display: block;
	overflow: hidden;
	font-style: normal;
	font-size: 11px;
	font-weight: bold;
	line-height: 15px;
}
.feats .item strong {
	max-height: 60px;
	margin-top: 10px;
	display: block;
	overflow: hidden;
	font-size: 16px;
	line-height: 20px;
}
.feats .item .foot {
	margin-top: 10px;
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 13px;
	line-height: 15px;
}
.feats .foot.note {
	margin-top: 0;
	color: #eb596e;
	font-weight: bold;
	line-height: 21px;
}

.feats .philo,
.feats .philo .box {
	background-color: #2eb6aa;
}
.feats .philo .con {
	color: #fff;
}
.feats .philo a:active .box,
.feats .philo a:hover .box,
.feats .philo a:focus .box {
	background-color: #eb596e;
	color: #fff;
}

.feats .members,
.feats .members .box {
	background-color: #eb596e;
}
.feats .members .con {
	color: #fff;
}

.feats + .feats {
	margin-top: 54px;
}

	@media screen and (min-width: 375px) {
		.mod.featured {
			padding-right: 10px;
			padding-left: 10px;
		}
		.feats .item {
			margin: 5px;
		}
	}
	@media screen and (min-width: 982px) {
		.mod.featured {
			width: 982px;
			margin-right: auto;
			margin-left: auto;
		}

	}
	@media screen and (min-width: 1600px) {
		.mod.featured {
			width: 1600px;
		}
	}


.voice-promo {
	max-width: 616px;
	margin: 54px auto 72px;
	padding: 30px 10px;
	display: block;
	background-color: #eb596e;
	background-color: rgba(235, 89, 110, 0.6);
	color: #fff;
}
.voice-promo:active,
.voice-promo:hover,
.voice-promo:focus {
	background-color: #c83c50;
	color: #fff;
}
.voice-promo .imgs {
	margin: 0 auto;
}
.voice-promo img {
	width: 33.33%;
	display: inline-block;
	vertical-align: top;
}
.voice-promo figcaption {
	margin-top: 20px;
}
.voice-promo figcaption strong {
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 100;
	font-size: 38px;
	text-transform: uppercase;
	text-align: center;
	line-height: 38px;
	text-transform: uppercase;
}
.voice-promo figcaption span {
	display: block;
	font: bold 15px/15px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
	@media screen and (min-width: 600px) {
		.voice-promo {
			padding: 30px 15px;
		}
	}
	@media screen and (min-width: 768px) {
		.voice-promo {
			max-width: 928px;
			margin-bottom: 110px;
			padding: 10px;
		}
		.voice-promo .imgs {
			width: 49.78%;
			float: right;
		}
		.voice-promo figcaption {
			margin-top: 30px;
		}
	}

.ext-promos {
	text-align: center;
}
.ext-promos li {
	width: 264px;
	margin: 5px;
	display: inline-block;
	vertical-align: top;
	list-style: none;
}
.ext-promos li a {
	width: 264px;
	height: 130px;
	padding: 2px;
	display: block;
	border: 1px solid #e6e6e6;
}
.ext-promos li a img {
	width: 100%;
	height: 100%;
	display: block;
}


.movieBox{
	margin: 40px auto 0;
}
@media screen and (max-width: 600px) {
.movieBox{
	margin-top: 30px;
}
}
.movieBoxList {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 880px;
	margin: 0 auto -15px;
}
@media screen and (max-width: 899px) {
.movieBoxList {
	margin: 0 auto 20px;
}
}
.movieBoxList .movieBoxitem {
	width: calc(350 / 880 * 100%);
	margin: 0 calc(45 / 880 * 100%) 40px;
}
@media screen and (max-width: 899px) {
.movieBoxList .movieBoxitem {
	width: calc(380 / 880 * 100%);
	margin: 0 calc(30 / 880 * 100%) 40px;
}
}
@media screen and (max-width: 600px) {
.movieBoxList .movieBoxitem {
	width: 100%;
	margin: 0 10px 25px;
}
}
.movieBoxList .movieBoxdt {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 15px;
}
.movieBoxList .movieBoxdt iframe {
	position: absolute;
	top:0;
	right: 0;
	width: 100%;
	height: 100%;
}
.movieBoxList .movieBoxdd {
	font-size: 1rem;
	line-height: calc(25 / 17);
}
@media screen and (max-width: 899px) {
.movieBoxList .movieBoxdd {
	font-size: 0.9rem;
}
}
/* 20220906 動画表示形式改修：ここから */
.movieBoxList.-update202209 {
	justify-content: flex-start;
}
.movieBoxList.-update202209 .movieBoxitem:only-child {
	margin: 0 auto 40px;
}
@media screen and (max-width: 600px) {
	.movieBoxList.-update202209 .movieBoxitem:only-child {
		margin: 0 10px 25px;
	}
}
/* 20220906 動画表示形式改修：ここまで */


#footer {
	background-color: #f3f3f3;
	text-align: center;
}
#footer .bot {
	padding: 70px 0;
}
.access {
	padding: 30px 10px;
	background-color: #fadbd9;
	text-align: center;
}
.access .gridw {
	max-width: 940px;
}
.access .con,
.access .map {
	width: 100%;
	display: inline-block;
	vertical-align: middle;
}
.access h2 {
	color: #eb596c;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 100;
	font-size: 38px;
	text-transform: uppercase;
	line-height: 38px;
	text-transform: uppercase;
}
.access h2 span {
	margin-left: 10px;
	color: #000;
	font: bold 15px/15px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.access .con {
	padding: 0 20px 0 0;
	text-align: center;
}
.access .body {
	display: inline-block;
	text-align: left;
}
.access p {
	font-size: 15px;
}
.access .phone {
	color: #eb576c;
	font-size: 16px;
	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
}
.access .phone span {
	font-size: 27px;
	font-weight: bold;
}
.access .map {
	width: 100%;
	max-width: 480px;
	height: 217px;
	margin-top: 15px;
	background-color: #ccc;
}

.access .details {
	margin-top: 23px;
	list-style: none;
}
.access .details li {
	margin: 0 0 5px;
	padding-left: 88px;
	position: relative;
	font-size: 14px;
}
.access .details li:before {
	content: '';
	width: 9px;
	height: 9px;
	position: absolute;
	top: 6px;
	left: 1px;
	border-radius: 50%;
	background-color: #ec6d74;
}
.access .details strong {
	position: absolute;
	top: 0;
	left: 14px;
	display: inline-block;
	width: 65px;
	margin-right: 5px;
	font-weight: normal;
}
.access .note {
	max-width: 450px;
	margin-top: 20px;
	margin-bottom: 0;
	display: inline-block;
	vertical-align: top;
	font-size: 13px;
	line-height: 27px;
	text-align: left;
}
.access .note ul {
	padding-left: 18px;
	line-height: 18px;
}
.access .note li {
	margin: 8px 0;
}
	@media screen and (min-width: 500px) {
		.access .details li {
			/* padding-left: 14px; */
/* 			font-size: 15px; */
		}
		.access .details strong {
			/* position: relative; */
			/* top: auto; */
			/* left: auto; */
			/* display: inline-block; */
			/* width: 65px; */
		}
	}
	@media screen and (min-width: 660px) {
		.access .con {
			width: 40%;
			width: calc(100% - 380px);
		}
		.access .map {
			max-width: 380px;
			margin-top: 0;
		}
		.access .note {
			max-width: 100%;
		}
	}
	@media screen and (min-width: 830px) {
		.access .note {
			width: 810px;
		}
	}

#copyright {
	padding: 0 10px;
	display: block;
	font-size: 12px;
}
#copyright ul {
	margin: 40px 0 20px;
}
#copyright .vision {
	margin: 0 0 20px;
	display: block;
}
#copyright li {
	margin: 0 20px;
	line-height: 20px;
	display: inline-block;
	vertical-align: top;
	list-style: none;
}
#copyright a {
	font-weight: bold;
	font-size: 15px;
	color: #000;
}
#copyright a:active,
#copyright a:hover,
#copyright a:focus {
	color: #eb576c;
}
#copyright p {
	margin: 0;
}
#copyright p span {
	display: block;
}

.arrowbox {
	position: absolute;
	top: 50%;
	width: 44px;
	height: 44px;
	border: none;
	border-radius: 50%;
	background: #fff;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.arrowbox svg {
	position: absolute;
	left: 20%;
	top: 20%;
	width: 60%;
	height: 60%;
}
.arrowbox .arrow {
	fill: #00558f;
	transition: fill 0.3s ease-in-out;
}


.arr {
	width: 16px;
	height: 16px;
	margin-left: 6px;
	margin-bottom: -2px;
	display: inline-block;
	vertical-align: baseline;
}
.arr path {
	fill: #000;
	transition: fill 0.3s ease-in-out;
}

.vsfooter {
	width: 310px;
	padding-top: 21px;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-align: left;
}
.vsfooter .tagline {
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	font: normal 12px/15px "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
}
	@media screen and (min-width: 660px) {
		.vsfooter {
			margin: 0 20px;
		}
		#copyright .vision {
			margin: 0 20px;
			padding-right: 25px;
			display: inline-block;
			border-right: 3px solid #eb596e;
		}
	}
	@media screen and (min-width: 768px) {
		#copyright p span {
			display: inline;
		}
		#copyright p span:nth-of-type(1) {
			margin-right: 4px;
			padding-right: 8px;
			border-right: 1px solid #000;
		}
	}
	@media screen and (min-width: 900px) {
		#footer .bot {
			text-align: left;
		}
		#copyright {
			padding-right: 20px;
			display: inline-block;
			vertical-align: middle;
			text-align: left;
			float: right;
		}
		#copyright ul {
			margin: 0 -20px 20px;
		}
	}


	@media screen and (min-width: 768px) {
		.home-top {
			position: relative;
			overflow: hidden;
		}
		.home-top:before,
		.home-top:after {
			content: '';
			width: 50%;
			max-width: 800px;
			/*height: 1000px;*/
			height: 100%;
			position: absolute;
			/*top: -14px;*/
			top:0;
			z-index: 5;
			background: url(../img/bk-home-2.jpg) no-repeat 0 0;
			background-size: 200% auto;
			opacity: 0;
			transition: opacity 1s ease, transform 1.5s ease;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 300px);
			-ms-transform:     translate(0, 300px);
			transform:         translate(0, 300px);
		}
		.home-top:before {
			left: 0;
			background-position: 0 30%;
			transition: opacity 1s ease, transform 1.5s ease;
		}
		.home-top:after {
			right: 0;
			background-position: 100% 30%;
			background-position: 100% 12%;
			transition: opacity 1s ease 0.4s, transform 1.5s ease 0.4s, background 1.5s ease 0.4s;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 200px);
			-ms-transform:     translate(0, 200px);
			transform:         translate(0, 200px);
		}
		.home-top > * {
			position: relative;
			z-index: 10;
		}

		.home-top.on:before {
			opacity: 1;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 0);
			-ms-transform:     translate(0, 0);
			transform:         translate(0, 0);
		}
		.home-top.on:after {
/* 			z-index: 100; */
			opacity: 1;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 0);
			-ms-transform:     translate(0, 0);
			transform:         translate(0, 0);
			background-position: 100% 30%;
		}
	}
	@media screen and (min-width: 768px) {
		.home-bot {
			position: relative;
		}
		.home-bot:before {
			content: '';
			width: 100%;
			max-width: 1600px;
			height: 100%;
			position: absolute;
			bottom: 0;
			left: 0;
			z-index: 5;
			background: url(../img/bk-home-2.jpg) no-repeat 0 90%;
			background-size: 100% auto;
			opacity: 0;
			transition: opacity 1s ease, transform 1.5s ease, background 1.5s ease;
/* 			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 300px);
			-ms-transform:     translate(0, 300px);
			transform:         translate(0, 300px); */
		}
		.home-bot > * {
			position: relative;
			z-index: 10;
		}

		.home-bot.on:before {
			opacity: 1;
			background-position: 0 100%;
/* 			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, 0);
			-ms-transform:     translate(0, 0);
			transform:         translate(0, 0); */
		}
	}


.visionsalon .gm-style-iw p {
	font-size: 12px;
	line-height: 15px;
}




/* ==========================================================================



PAGE
========================================================================== */

.pagehead {
	background-color: #eb576c;
	color: #fff;
}
.pagehead a {
	color: #fff;
}

.bcrumb {
	padding: 13px 0;
	background-color: #ed687b;
	font-size: 12px;
	line-height: 14px;
}
.bcrumb .items {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
	display: block;
	list-style: none;
}
.bcrumb .items li {
	margin: 2px 3px 2px 0;
	display: inline-block;
	vertical-align: top;
}
.bcrumb .items li:after {
	content: '>';
	margin-left: 8px;
}
.bcrumb .items li:last-child:after {
	display: none;
}

.bcrumb a:active,
.bcrumb a:hover,
.bcrumb a:focus {
	color: #000;
}

.bannerhead {
	padding: 20px;
}
.bannerhead .heading {
	display: inline-block;
	vertical-align: top;
	font: normal 23px/23px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.bannerhead h1 span,
.bannerhead p {
	margin: 0;
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	line-height: 32px;
}
.bannerhead .tagline {
	margin-top: 5px;
	display: block;
	font-size: 15px;
	line-height: 22px;
	font-weight: bold;
}

.bannerhead .divi {
	width: 35px;
	height: 1px;
	margin: 0 10px;
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	background-color: #fff;
}
	@media screen and (min-width: 768px) {
		.bannerhead {
			max-width: 1140px;
			margin: 0 auto;
			padding-top: 44px;
			padding-bottom: 44px;
		}
		.bannerhead .heading {
			font-size: 28px;
			line-height: 28px;
		}
		.bannerhead h1 span,
		.bannerhead p {
			font-size: 19px;
			line-height: 32px;
		}
	}

.txt-intro {
	max-width: 506px;
	margin: 0 auto;
	padding: 30px 20px;
	text-align: center;
	font-size: 15px;
	line-height: 24px;
}
.txt-intro p {
	margin: 0.4em 0;
	font-size: 1em;
/* 	line-height: 1em; */
}
.txt-intro p + p {
	font-size: 0.8em;
}
	@media screen and (min-width: 768px) {
		.txt-intro {
			padding-top: 60px;
			padding-bottom: 40px;
		}
	}
	@media screen and (min-width: 1200px) {
		.txt-intro {
			max-width: 100%;
		}
	}



.pagefoot {
	padding: 60px 0;
	position: relative;
	text-align: center;
}
.pagefoot .btn.alt2 {
	margin-bottom: 60px;
}
.contact-blks {
	text-align: center;
}
.contact-blk {
	width: 95%;
	width: calc(100% - 40px);
	max-width: 380px;
	height: 150px;
	margin: 10px;
	display: inline-block;
	vertical-align: top;
	border: 1px solid #eb576c;
	background-color: #fff;
	color: #eb576c;
}
.contact-blk h3 {
	height: 50px;
	background-color: #eb576c;
	color: #fff;
	font: 17px/50px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.contact-blk > span {
	display: block;
	font-size: 15px;
	line-height: 25px;
}
.visionsalon .teltxt {
	margin-top: 23px;
	font-family: 'Open Sans', "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 30px;
	line-height: 30px;
	font-weight: 100;
}
.visionsalon .teltxt i {
	width: 42px;
	height: 26px;
	margin: 2px 5px 0 0;
	display: inline-block;
	vertical-align: top;
	background: url(../gfx/sprite.png) no-repeat 0 0;
	background-size: 300px auto;
}
.contact-blk.web a {
	display: block;
	line-height: 100px;
	font-size: 20px;
}
.contact-blk.web a .arr {
	margin-bottom: -1px;
}
.contact-blk.web a path {
	fill: #eb576c;
}
.contact-blk.web a:hover {
	background-color: #eb576c;
	color: #fff;
}
.contact-blk.web a:hover path {
	fill: #fff;
}
	@media screen and (min-width: 768px) {
		.pagefoot:before {
			content: '';
			width: 417px;
			height: 304px;
			position: absolute;
			bottom: 0;
			left: 0;
			background: url(../gfx/bk-flower-4.png) no-repeat 0 0;
			background-size: cover;
		}
		.pagefoot > * {
			position: relative;
		}
		.contact-blks {
			margin: 0;
		}
		.contact-blk {
			width: 42%;
			width: calc(50% - 45px);
			margin: 20px;
		}
		.visionsalon .teltxt {
			font-size: 36px;
		}
		.visionsalon .teltxt i {
			margin-right: 10px;
		}
		.contact-blk.web {
			margin-left: 30px;
		}
		.contact-blk.web a {
			font-size: 22px;
		}
	}
	@media screen and (min-width: 900px) {
		.pagefoot {
			padding: 75px 0 60px;
		}
		.pagefoot .btn.alt2 {
			margin-bottom: 80px;
		}
		.visionsalon .teltxt {
			margin-top: 17px;
			font-size: 42px;
			line-height: 40px;
		}
		.visionsalon .teltxt i {
			margin-top: 8px;
		}
	}

	@media screen and (min-width: 768px) {
		.pagemain {
			position: relative;
			overflow: hidden;
		}
		.bkhana:before,
		.bkhana:after,
		.pagemain:before,
		.pagemain:after {
			content: '';
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
			transition: opacity 10s ease, transform 1.5s ease;
			opacity: 0;
		}
		.pagemain:before {
			background: url(../gfx/bk-flower-1.png) no-repeat 100% -60px;
			background-size: 295px auto;
		}
		.pagemain:after {
			background: url(../gfx/bk-flower-2.png) no-repeat 0 22%;
			background-size: 494px auto;
		}

		.visionsalon .bkhana {
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 2;
		}

		.bkhana:before,
		.bkhana:after,
		.pagemain.on:before,
		.pagemain.on:after {
			opacity: 1;
		}

		.bkhana:before {
			background: url(../gfx/bk-flower-3.png) no-repeat 100% 61%;
			background-size: 485px auto;
		}
		.bkhana:after {
			display: none;
		}

		.pagemain > * {
			position: relative;
			z-index: 10;
		}

	}





.contact-blk.lrg {
	max-width: 810px;
	height: auto;
	margin: 0 auto 60px;
	padding: 0 0 10px;
}
.contact-blk.lrg h3 {
	margin: 0 0 10px;
}
.contact-blk.lrg .teltxt {
	margin: 5px;
}
	@media screen and (min-width: 768px) {
		.contact-blk.lrg {
			width: 95%;
			width: calc(100% - 40px);
		}
		.contact-blk.lrg h3 {
			margin-bottom: 20px;
		}
		.contact-blk.lrg > span {
			display: inline-block;
			vertical-align: middle;
		}
	}


/* ==========================================================================



TABLE
========================================================================== */

.tablew {
	max-width: 1280px;
	margin: 0 auto;
	overflow-x: scroll; /* has to be scroll, not auto */
	-webkit-overflow-scrolling: touch;
}
.tablew table {
	min-width: 600px;
}

table {
	width: 100%;
	max-width: 1100px;
	margin: 30px auto;
	border-spacing: 10px;
	border-collapse: separate;
	background-color: #fff;
}

table caption {
	padding: 20px 20px 10px;
	background-color: #fff;
	color: #eb576c;
	font-size: 17px;
}

th, td {
	padding: 9px 12px;
	background-color: #f3f3f3;
}
td {
	text-align: left;
}
td strong {
	font-weight: normal;
	font-size: 1.33em;
}
thead th {
	background-color: #fadbd9;
	font-weight: bold;
}
tbody th {
	text-align: left;
	font-weight: normal;
}

.tfoot {
	max-width: 1140px;
	margin: -20px auto 30px;
	padding: 0 20px;
	font-size: 12px;
	line-height: 16px;
	text-align: left;
}
.tfoot.big {
	margin-top: -15px;
	margin-bottom: 35px;
	text-align: center;
}
.tfoot.big > span {
	padding: 7px 35px;
	display: inline-block;
	vertical-align: top;
	border: 2px solid #eb596d;
	border-radius: 20px;
	font-size: 14px;
	line-height: 23px;
	font-weight: bold;
}

	@media screen and (max-width: 767px) {
		.tfoot.big > span {
			padding: 7px 15px;
		}
		.tfoot.big > span > span {
			display: block;
		}
		table.flexi {
			display: block;
			position: relative;
			border-spacing: 0;
			border-collapse: collapse;
			border-top: 5px solid #fff;
			border-bottom: 5px solid #fff;
		}
		table.flexi caption {
			display: block;
		}
		table.flexi thead {
			display: block;
			float: left;
			border-left: 5px solid #fff;
		}
		table.flexi tbody {
			display: block;
			vertical-align: top;
			position: relative;
			width: auto;
			overflow-x: auto;
			white-space: nowrap;
			-webkit-overflow-scrolling: touch;
/* 			border-right: 5px solid #fff; */
		}
		table.flexi thead th,
		table.flexi thead td {
			border: 5px solid #fff;
			display: block;
		}
		table.flexi tbody td,
		table.flexi tbody th {
			border: 5px solid #fff;
			display: block;
		}
		table.flexi tbody tr {
			display: inline-block;
			vertical-align: top;
		}

		table.flexi thead th,
		table.flexi thead td {
			border-right-width: 10px;
		}
		table.flexi tbody tr:nth-of-type(1) th,
		table.flexi tbody tr:nth-of-type(1) td {
			border-left-width: 0;
		}
		table.flexi tbody tr:last-of-type th,
		table.flexi tbody tr:last-of-type td {
			border-right-width: 10px;
		}


	}



table table {
	margin: 0;
	min-height: 100%;
	height: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
table table th {
	border-right: 5px solid #fff;
	border-bottom: 10px solid #fff;
}
table table td {
	border-bottom: 10px solid #fff;
	text-align: right;
}
table table tbody > tr:last-of-type th,
table table tbody > tr:last-of-type td {
	border-bottom: none;
}
td.tblwrap {
	padding: 0;
	position: relative;
	vertical-align: top;
}


table.alt {
	border-spacing: 1px;
	background-color: transparent;
}
table.alt th,
table.alt td {
	background-color: #F9E9E8;
	text-align: center;
}
table.alt tr:nth-of-type(odd) th,
table.alt tr:nth-of-type(odd) td {
	background-color: #F5D1D0;
}
.visionsalon table.alt thead th {
	background-color: #EB576C;
	color: #fff;
}

/* ==========================================================================



ABOUT / ビジョンサロンとは
========================================================================== */

.page-id-19 .txt-intro {
	max-width: 506px;
}
	@media screen and (min-width: 1000px) {
		.page-id-19 .txt-intro {
			max-width: 100%;
		}
	}


.services {
	margin: 0 20px;
	padding: 0;
	list-style: none;
	counter-reset: feat-item;
}
.services > li {
	max-width: 630px;
	margin: 20px auto;
	padding: 20px;
	position: relative;
	background-color: #fff;
	border: 3px solid #ccc;
}
.services > li:before {
	counter-increment: feat-item;
	content: counter(feat-item);
	width: 60px;
	text-align: center;
	position: absolute;
	top: 20px;
	left: 0;
	color: #f18998;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 60px;
	line-height: 114px;
	font-weight: 100;
}
.services .con {
	margin: 0 0 20px;
}
.services .img {
	width: 195px;
	height: 114px;
	margin: 0 0 20px 40px;
	position: relative;
	/* background-color: #ccc; */
}
.services .img img {
	width: 100%;
	height: 100%;
	z-index: 5;
}
.services .img.avail:after {
	content: 'いつでも利用可能';
	width: 50px;
	height: 50px;
	padding: 11px 4px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	display: block;
	background-color: #eb576c;
	color: #fff;
	font-size: 10px;
	line-height: 13px;
	text-align: center;
	box-sizing: border-box;
}

.services .supplement .tgl-item img {
	max-width: 180px;
	display: block;
	margin: 10px auto 10px;
}
	@media screen and (min-width: 480px) {
		.services .supplement .tgl-item img {
			width: 180px;
			margin: 10px 20px;
			float: right;
		}
	}

.services .acuity .tgl-item ul {
	max-width: 440px;
	margin: 0 auto 20px;
	display: block;
}
.services .acuity .tgl-item li {
	margin: 5px 20px;
	display: block;
}

.services .clinic .tgl-item p:not(:first-of-type) {
	text-align: left;
}
.services .clinic .tgl-item ul {
	margin-bottom: 20px;
}
.services .clinic .tgl-item li {
	margin: 5px 20px;
	display: block;
}
.services .clinic .tgl-item img {
	max-width: 180px;
	display: block;
	margin: 0 auto 10px;
}
	@media screen and (min-width: 480px) {
		.services .clinic .tgl-item img {
			width: 180px;
			margin: 0 20px;
			float: right;
		}
	}
	@media screen and (min-width: 768px) {
		.services .clinic:before {
			top: 62px;
		}
	}
.services .clinic .img {
	height: auto;
}
.services .img .aoyama-vis {
	width: auto;
	height: 62px;
	margin: 10px auto;
	display: block;
}
.services ul {
	margin: 0;
	font-size: 12px;
	line-height: 24px;
	list-style: none;
}
.services ul li {
	margin-right: 5px;
	padding-left: 13px;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
.services ul li:before {
	content: '';
	width: 10px;
	height: 10px;
	position: absolute;
	top: 8px;
	left: 0;
	background-color: #000;
	border-radius: 50%;
}
.services strong {
	margin: 0 0 10px 0;
	display: block;
	font-size: 19px;
	font-weight: normal;
	line-height: 24px;
}
.services .btn.alt {
	padding-top: 6px;
	padding-bottom: 6px;
	display: block;
	font-size: 12px;
}
.services .btn.alt path {
	fill: #eb576c;
}

.services .tgl-item {
	max-height: 30px;
	overflow: hidden;
	transition: all 0.3s ease-in-out;
	border: 1px solid #eb576c;
}
.services .tgl-item p {
	margin: 10px 20px 20px;
}
.services .togglebtn {
	width: 100%;
	height: 30px;
	display: block;
	font-size: 12px;
	line-height: 30px;
	text-align: center;
	color: #eb576c;
}
.services .togglebtn .arr {
	margin-bottom: -3px;
	transition: transform 0.2s ease-in-out;
}
.services .togglebtn .arr path {
	fill: #eb576c;
}
.services .togglebtn:hover {
	background-color: #eb576c;
	color: #fff;
}
.services .togglebtn:hover .arr path {
	fill: #fff;
}

.services .tgl-item.opened {
	max-height: 1000px;
}
.services .tgl-item.opened .togglebtn .arr {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.services .tgl-item ul {
	text-align: left;
}
.services .tgl-item .blk {
	margin: 20px;
	padding-left: 0;
	display: block;
}
.services .tgl-item .blk:before {
	display: none;
}
.services .tgl-item .blk span {
	display: block;
	color: #555;
	/* font-size: 10px; */
}
.services .tgl-item .blk img {
	max-width: 180px;
	display: block;
	margin: 0 auto 5px;
}

	@media screen and (min-width: 480px) {
		.services .tgl-item .blk {
			min-height: 114px;
		}
		.services .tgl-item .blk img {
			width: 180px;
			margin: 0 0 0 20px;
			float: right;
		}
	}



/* 	@media screen and (min-width: 375px) { */
		.services {
			text-align: center;
		}
		.services > li {
			padding-top: 154px;
		}
		.services .clinic {
			padding-top: 229px;
		}
		.services > li:before {
			left: 50%;
			margin-left: -135px;
		}
		.services .img {
			margin: 0;
			position: absolute;
			top: 20px;
			left: 50%;
			margin-left: -75px;
			display: block;
		}
		.services .txt {
			display: inline-block;
		}
/* 	} */
	@media screen and (min-width: 375px) {
		.services > li:before {
			width: 70px;
			left: 50%;
			margin-left: -146px;
			font-size: 100px;
		}
		.services .img {
			margin-left: -65px;
		}
	}
	@media screen and (min-width: 768px) {
		.visionsalon .services > li {
			padding-top: 20px;
		}
		.services > li:before {
			left: 20px;
			margin-left: 0;
		}
		.services .con {
			text-align: left;
		}
		.services .txt,
		.services .img {
			margin: 0;
			position: relative;
			top: auto;
			left: auto;
			display: inline-block;
			vertical-align: middle;
		}
		.services .txt {
			width: 389px;
			width: calc(100% - 195px);
			padding-left: 115px;
		}
	}



.page-id-19 .btn.alt2 span {
	font-size: 16px;
}
.btn.alt2.flow .arrowbox {
	margin-left: 100px;
}
	@media screen and (min-width: 375px) {
		.btn.alt2.flow.arrowbox {
			margin-left: 130px;
		}
	}
	@media screen and (min-width: 768px) {
		.btn.alt2.flow .arrowbox {
			margin-left: 295px;
		}
	}





/* ==========================================================================



ABOUT / FLOW / ビジョンサロンとは / ご利用までの流れ
========================================================================== */

.page-id-55 .btn.back {
	margin-top: 60px;
}

.whatis {
	max-width: 810px;
	margin: 70px 20px;
	padding: 30px;
	position: relative;
	background-color: #f3f3f3;
}
	@media screen and (min-width: 850px) {
		.whatis {
			margin: 70px auto;
		}
	}
.whatis:before {
	content: '';
	position: absolute;
	top: 10px;
	right: 10px;
	bottom: 10px;
	left: 10px;
	border: 1px solid #fff;
}
.whatis p {
	font-size: 15px;
	line-height: 30px;
}

.counsel-steps {
	max-width: 810px;
	margin: 20px auto 50px;
	padding: 0;
}
.counsel-steps li {
	margin: 50px 0;
	padding: 15px;
	position: relative;
	list-style: none;
	border: 3px solid #f3f3f3;
	background-color: #fff;
	font-size: 19px;
	line-height: 24px;
	text-align: center;
}
.counsel-steps li:before {
	content: '';
	width: 38px;
	height: 31px;
	position: absolute;
	top: 100%;
	left: 50%;
	margin: 13px 0 0 -19px;
	background: url(../gfx/sprite.svg) no-repeat -66px 0;
	background-size: 300px auto;
}
.counsel-steps li:last-of-type:before {
	display: none;
}

.counsel-outline {
	max-width: 850px;
	margin: 20px auto;
	padding: 0;
}
.visionsalon .counsel-outline > li {
	margin: 5px 20px;
	padding: 3px;
	position: relative;
	display: block;
	list-style: none;
	background-color: #f3f3f3;
	text-align: left;
}
.visionsalon .counsel-outline > li:before {
	content: '';
	position: absolute;
	top: 3px;
	bottom: 3px;
	left: 38%;
	right: 3px;
	z-index: 5;
	background-color: #fff;
}
.counsel-outline > li > * {
	position: relative;
	z-index: 10;
}
.counsel-outline li > strong {
	width: 38%;
	padding: 8px;
	display: inline-block;
	vertical-align: middle;
	font-weight: normal;
}
.counsel-outline li > span,
.counsel-outline li > div {
	width: 62%;
	padding: 8px 16px;
	display: inline-block;
	vertical-align: middle;
	background-color: #fff;
}

.visionsalon .counsel-outline .loose li {
	margin-right: 15px;
	display: inline-block;
	vertical-align: top;
}
.visionsalon .counsel-outline li li {
	padding-left: 15px;
}
.visionsalon .counsel-outline li li:before {
	content: '';
	width: 2px;
	height: 2px;
	top: 9px;
	border-radius: 50%;
	background-color: #222;
}

.counsel-outline.alt > li {
	background-color: #F8DDDF;
}
.counsel-outline.alt li > strong {
	width: 32%;
	text-align: center;
}
.counsel-outline.alt li > span,
.counsel-outline.alt li > div {
	width: 68%;
}

.visionsalon .vs-box .counsel-outline > li {
	margin-right: 0;
	margin-left: 0;
}

.vs-mod {
	padding: 50px 0 60px;
	background-color: #f3f3f3;
	text-align: center;
}
	@media screen and (min-width: 768px) {
		.vs-mod {
			padding-top: 100px;
		}
	}
.booking-chart caption {
	line-height: 40px;
}
.booking-chart caption .teltxt {
	margin: 0 0 0 20px;
	display: inline-block;
	vertical-align: top;
}
.booking-chart td {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

	@media screen and (max-width: 767px) {
		table.booking-chart {
			max-width: 390px;
		}
		table.booking-chart.flexi,
		table.booking-chart.flexi thead,
		table.booking-chart.flexi tbody {
			display: inline-block;
			vertical-align: top;
			float: none;
		}
		.booking-chart + .tfoot {
			max-width: 430px;
		}
	}

	@media screen and (max-width: 767px) {
		.booking-details tbody th {
			width: 110px;
		}
	}




	@media screen and (min-width: 768px) {
		.btn.alt2.counsel .arrowbox {
			margin-left: 170px;
		}
		.btn.alt2.training .arrowbox {
			margin-left: 175px;
		}
		.page-id-55 .pagefoot {
			padding-top: 50px;
		}
		.page-id-55 .pagefoot .btn.alt2 {
			margin-top: 50px;
			margin-bottom: 30px;
		}
	}


.linkpromo {
	width: 95%;
	width: calc(100% - 40px);
	max-width: 525px;
	max-width: 380px;
	height: 150px;
	margin: 10px;
	position: relative;
	display: inline-block;
	vertical-align: top;
	border: 5px solid #eb576c;
	background-color: #eb576c;
	color: #eb576c;
}
.linkpromo:before {
	content: '';
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: url(../img/about/promo-site.jpg) no-repeat 50% 50%;
	background-size: cover;
	transition: opacity 0.3s ease-in-out;
}
.linkpromo.homecare:before {
	background-image: url(../img/about/promo-home.jpg);
}

.linkpromo div {
	width: 50%;
	height: 100%;
	padding: 35px 10px;
	background-color: #fff;
	transition: background-color 0.3s ease-in-out;
}
.linkpromo div span {
	display: block;
	text-align: left;
	font-weight: bold;
}

.linkpromo:active,
.linkpromo:hover,
.linkpromo:focus {
	color: #fff;
}
.linkpromo:active div,
.linkpromo:hover div,
.linkpromo:focus div {
	background-color: #eb576c;
}
.linkpromo:active:before,
.linkpromo:hover:before,
.linkpromo:focus:before {
	opacity: 0.6;
}
	@media screen and (min-width: 375px) {
		.linkpromo div {
			width: 40%;
		}
		.linkpromo:before {
			width: 60%;
		}
	}
	@media screen and (min-width: 768px) {
		.linkpromo {
			width: 42%;
			width: calc(50% - 45px);
			margin: 20px;
		}
	}





/* ==========================================================================



ABOUT / FLOW / SITE CARE / ビジョンサロンとは / ご利用までの流れ / ご入会を希望される方
========================================================================== */

.vs-box {
	max-width: 810px;
	margin: 70px 20px;
	padding: 30px 20px;
	position: relative;
	border: 3px solid #f3f3f3;
	background-color: #fff;
}
	@media screen and (min-width: 850px) {
		.vs-box {
			margin: 70px auto;
		}
	}

.vs-box li {
	margin: 0 0 20px;
	display: inline-block;
	vertical-align: top;
}

.vs-box {
	counter-reset: vs-box-item;
}
.vs-box ol li {
	margin: 0 20px 10px;
	position: relative;
	padding-left: 20px;
}
.vs-box ol li:before {
	counter-increment: vs-box-item;
	content: counter(vs-box-item) ".";
	position: absolute;
	top: 0;
	left: 0;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 100;
	font-size: 20px;
	line-height: 22px;
}

.vs-box .procedure li {
	max-width: 710px;
	margin: 40px auto;
	padding: 14px 10px 14px 60px;
	display: block;
	background-color: #f3f3f3;
}
.vs-box .procedure li:last-of-type {
	margin-bottom: 20px;
}
.vs-box .procedure li:before {
	content: counter(vs-box-item);
	width: 60px;
	line-height: 50px;
	display: inline-block;
	vertical-align: top;
	color: #f18998;
	text-align: center;
	top: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.vs-box .procedure li:after {
	content: '';
	width: 29px;
	height: 24px;
	position: absolute;
	top: 100%;
	left: 35px;
	margin: 10px 0 0 -19px;
	background: url(../gfx/sprite.svg) no-repeat -50px 0;
	background-size: 225px auto;
}
.vs-box .procedure li:last-of-type:after {
	display: none;
}



.membership-chart td {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

.membership-fees th {
	background-color: #f3f3f3;
	font-size: 1em;
}
.membership-fees th span {
	display: block;
	font-size: 0.8em;
}
.membership-fees .membertype {
	padding-left: 50px;
	position: relative;
	overflow: hidden;
}
.membership-fees .membertype i {
	width: 10px;
	height: 80px;
	position: absolute;
	top: -10px;
	left: 25%;
	display: block;
	background-color: #fff;
	-webkit-transform: rotate(-23.3deg);
	-ms-transform: rotate(-23.3deg);
	transform: rotate(-23.3deg);
}
.membership-fees .regular {
	background-color: #a9deef;
}
.membership-fees .family {
	background-color: #efcaa9;
}
.membership-fees .heizitu {
	background-color: #f8f4ce;
}
.membership-fees .distance-regular {
	background-color: #deefa9;
}
.membership-fees .distance-family {
	background-color: #e9c4f1;
}
.membership-fees .distance-heizitu {
	background-color: #ffd967;
}
.membership-fees td {
	text-align: center;
}

.membership-fees table th {
	text-align: center;
}
.membership-fees table td {
	text-align: right;
}
.membership-fees .initial {
	min-width: 86px;
}

	@media screen and (max-width: 980px) {
		.membership-fees .membertype {
			font-size: 12px;
			padding-left: 40px;
		}
		.membership-fees .membertype i {
			left: 20%;
		}
	}
	@media screen and (max-width: 900px) {
		.membership-fees {
			border-spacing: 5px;
			font-size: 12px;
		}
		.membership-fees th,
		.membership-fees td {
			padding: 5px;
		}
		.membership-fees .membertype {
			padding-left: 80px;
		}
		.membership-fees .membertype i {
			width: 5px;
		}
		.membership-fees .tblwrap {
			padding: 0;
		}
		.membership-fees table th,
		.membership-fees table td {
			border-width: 3px;
		}
		.membership-fees .initial {
			min-width: 60px;
		}
	}
	@media screen and (max-width: 700px) {
		.membership-fees-wrap {
			max-width: 100%;
			margin: 0 auto;
			overflow-x: scroll;
			-webkit-overflow-scrolling: touch;
		}
		.membership-fees {
			width: 900px;
		}
		.membership-fees .membertype {
			padding-left: 80px;
		}
		.membership-fees .membertype i {
			width: 5px;
		}
	}

.membership-fees-wrap-cover {
  position: relative;
  margin-bottom: 20px;
}

.membership-fees-wrap-cover::after {
  content: '';
  width: 100%;
  max-width: 1100px;
  height: 1px;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  /* border-bottom: 1px solid #eb576c; */
}

@media screen and (max-width: 700px) {
  .membership-fees-wrap-cover::after {
    width: 92%;
  }
}

.table-style01 {
  table-layout: fixed;
}
.membership-fees.table-style02 th,
.membership-fees.table-style02 td{
	background-color: #f0edf5;
}

.membership-fees + .membership-fees{
	margin-top: -40px;
}

.trainingschedule {
	max-width: 1140px;
	margin: 60px auto;
	text-align: center;
}
.trainingschedule .btn.alt {
	padding-top: 11px;
	padding-bottom: 10px;
	background-color: #fff;
	font-size: 15px;
}
.trainingschedule .btn.alt path {
	fill: #eb576c;
}
.trainingschedule .sched {
	margin: 0;
}
.schedwrap {
	margin-top: 20px;
}
.schedwrap p {
	margin: 0;
	padding: 30px 0;
	background-color: #fff;
	color: #eb576c;
	font-size: 17px;
	line-height: 34px;
}
.schedwrap p .teltxt {
	margin-top: 20px;
	display: block;
}
.trainingschedule .sched td {
	text-align: center;
}
	@media screen and (min-width: 768px) {
		.trainingschedule .heading2.deco {
			width: 61%;
			margin-bottom: 0;
			padding-bottom: 10px;
			display: inline-block;
			vertical-align: top;
			/* line-height: 44px; */
		}
		.trainingschedule .btn.alt {
			width: 33.64%;
			float: right;
			margin-right: 20px;
		}
		.trainingschedule .sched {
			width: 66.36%;
			width: 60%;
			margin: 0;
			font-size: 12px;
		}
		.trainingschedule .schedwrap {
			max-width: 1100px;
			margin-right: auto;
			margin-left: auto;
			background-color: #fff;
		}
		.trainingschedule .schedwrap p {
			width: 33.64%;
			width: 40%;
			padding-top: 65px;
			float: right;
		}
	}
	@media screen and (min-width: 940px) {
		.trainingschedule .sched {
			width: 62%;
			font-size: 15px;
		}
		.trainingschedule .schedwrap p {
			width: 38%;
			padding-top: 60px;
		}
	}
	@media screen and (min-width: 1100px) {
		.trainingschedule .sched {
			width: 66.36%;
		}
		.trainingschedule .schedwrap p {
			width: 33.64%;
		}
	}
	@media screen and (min-width: 1180px) {
		.trainingschedule .schedwrap p {
			margin-right: 0;
		}
	}


	@media screen and (max-width: 600px) {
		.trainingschedule .sched {
			font-size: 13px;
		}

	}



.hour-breakdown {
	width: 300px;
	margin: 10px auto;
	padding: 10px;
	display: block;
	background-color: #fff;
	text-align: center;
	overflow: hidden;
}
.hour-breakdown strong {
	font-size: 20px;
	font-weight: normal;
}
.hour-breakdown span {
	display: block;
}
.hour-breakdown .item {
	width: 200px;
	width: 100%;
	margin: 0 auto;
	padding: 27px 20px 26px;
	position: relative;
	line-height: 25px;
}
.hour-breakdown .item:before,
.hour-breakdown .item:after {
	content: '';
	width: 0;
	height: 0;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 10;
	border-style: solid;
	border-width: 15px 140px 0 140px;
	border-color: #eb576c transparent transparent transparent;
}
.hour-breakdown .item:after {
	border-width: 17px 150px 0 150px;
	border-color: #fff transparent transparent transparent;
	z-index: 9;
	left: -9px;
	margin-top: 0px;
}
.hour-breakdown dt {
	background-color: #eb576c;
	color: #fff;
}
.hour-breakdown dd.item {
	padding-top: 14px;
	padding-bottom: 14px;
	background-color: #f3f3f3;
	color: #eb576c;
}
.hour-breakdown dd.item {
	padding-top: 31px;
}
.hour-breakdown dd.item:before {
	border-color: #f3f3f3 transparent transparent transparent;
}
.hour-breakdown dd:last-of-type:before,
.hour-breakdown dd:last-of-type:after {
	display: none;
}
	@media screen and (min-width: 720px) {
		.hour-breakdown {
			width: 100%;
			max-width: 1100px;
		}
		.hour-breakdown .item {
			width: auto;
			display: inline-block;
			vertical-align: top;
		}
		.hour-breakdown .item:before,
		.hour-breakdown .item:after {
			top: 0;
			left: 100%;
			border-width: 40px 0 40px 20px;
			border-color: transparent transparent transparent #eb576c;
		}
		.hour-breakdown .item:after {
			top: -4px;
			border-width: 44px 0 44px 22px;
			border-color: transparent transparent transparent #fff;
		}
		.hour-breakdown dd.item:before {
			border-color: transparent transparent transparent #f3f3f3;
		}
		.hour-breakdown dd.item {
			padding-top: 14px;
			padding-left: 40px;
		}
	}
	@media screen and (min-width: 768px) {
		.hour-breakdown dt.item {
			width: 20%;
		}
		.hour-breakdown dd.item:nth-of-type(1) {
			width: 18%;
		}
		.hour-breakdown dd.item:nth-of-type(2) {
			width: 13%;
		}
		.hour-breakdown dd.item:nth-of-type(3) {
			width: 25%;
		}
		.hour-breakdown dd.item:nth-of-type(4) {
			width: 24%;
		}
	}
	@media screen and (min-width: 1000px) {
		.hour-breakdown dt.item {
			width: 12.96%;
		}
		.hour-breakdown dd.item:nth-of-type(1) {
			width: 28.7%;
		}
		.hour-breakdown dd.item:nth-of-type(2) {
			width: 10%;
		}
		.hour-breakdown dd.item:nth-of-type(3) {
			width: 28.7%;
		}
		.hour-breakdown dd.item:nth-of-type(4) {
			width: 19.64%;
		}
	}

.pdffile {
	width: 250px;
	margin: 0 0 30px;
	display: inline-block;
	vertical-align: top;
}
.pdffile figcaption {
	margin: 20px 20px 0;
	display: inline-block;
	vertical-align: bottom;
	text-align: center;
}
.pdffile figcaption p {
	margin: 10px 0 0;
	font-size: 12px;
}
.pdffile figcaption a {
	color: #000;
	text-decoration: underline;
}
.pdffile figcaption a:active,
.pdffile figcaption a:hover,
.pdffile figcaption a:focus {
	text-decoration: none;
}
.pdfico {
	width: 66px;
	height: 0;
	padding-top: 81px;
	display: inline-block;
	vertical-align: bottom;
	overflow: hidden;
	background: url(../gfx/sprite.svg) no-repeat 0 0;
	background-size: 300px auto;
}
a.pdfico:active,
a.pdfico:hover,
a.pdfico:focus {
	-webkit-transform: scale3d(1.1, 1.1, 1);
	-ms-transform:     scale3d(1.1, 1.1, 1);
	transform:         scale3d(1.1, 1.1, 1);
}
	@media screen and (min-width: 580px) {
		.pdffile {
			width: auto;
		}
		.pdffile figcaption {
			margin: 0 0 0 25px;
			text-align: left;
		}
	}



/* ==========================================================================



ABOUT / FLOW / HOME CARE / ビジョンサロンとは / ご利用までの流れ / 自宅でケアしたい方
========================================================================== */

.homecares {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: feat-item;
}
.homecares > .vs-box:before {
	counter-increment: feat-item;
	content: counter(feat-item);
	padding-top: 10px;
	display: block;
	color: #f18998;
	font: 100 50px/50px Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}
.homecares .vs-box {
	max-width: 360px;
	width: 95%;
	width: calc(100% - 40px);
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	position: relative;
	background-color: #f3f3f3;
	text-align: center;
}
.homecares .con {
	padding: 10px;
}
.homecares .con strong {
	display: block;
}
.homecares .con p {
	margin: 10px 0 0;
}
.homecares .con p + p {
	margin-top: 5px;
}
.homecares .img {
	width: 100%;
}
.homecares .img img {
	width: 100%;
	height: auto;
}

.homecares ul.img li {
	width: 45%;
	width: calc(50% - 10px);
	margin: 0 5px 10px;
	display: inline-block;
	vertical-align: top;
}
.homecares ul.img li.full {
	width: 90%;
	width: calc(100% - 10px);
	/* margin-bottom: 30px; */
}
.homecares ul.img .btn {
	width: 100%;
	padding: 6px 2px;
	background-color: #fff;
	font-size: 9px;
}
.homecares ul.img .btn .arr {
	width: 12px;
	height: 12px;
}

.homecares p.feat {
	width: auto;
	margin: 10px auto;
	padding-right: 10px;
	padding-left: 10px;
	display: inline-block;
	vertical-align: top;
	border-left: 3px solid #eb576c;
	font-size: 11px;
	text-align: left;
}
.homecares .foot {
	margin: 0;
	padding: 10px 5px 9px;
	background-color: #fff;
	color: #eb576c;
	text-align: center;
}
.homecares .foot .btn.alt {
	width: 95%;
	width: calc(100% - 20px);
	margin: 10px auto 0;
	padding-right: 5px;
	padding-left: 5px;
	font-size: 12px;
}
.homecares .btn.alt path {
	fill: #eb576c;
}
.homecares > span {
	font-size: 15px;
	display: inline-block;
	vertical-align: middle;
}
.homecares .lead {
	margin-bottom: 10px;
	display: block;
	color: #1a1a1a;
}
.homecares .teltxt {
	margin: 5px 0 0;
	display: block;
}

.homecares .book .links {
	padding: 0 20px;
}
.homecares .links .btn {
	width: 100%;
	margin: 10px 0;
	padding: 5px;
	display: block;
	background-color: #fff;
}
	@media screen and (min-width: 375px) {
		.homecares .foot .btn.alt {
			font-size: 13px;
		}

	}
	@media screen and (min-width: 768px) {
		.homecares .vs-box {
			max-width: 810px;
		}
		.homecares > .vs-box:before {
			width: 50px;
			position: absolute;
			margin: -30px 0 0;
			padding: 0;
			left: 5%;
			top: 50%;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, -50%);
			-ms-transform: translate(0, -50%);
			transform: translate(0, -50%);
			font-size: 100px;
			line-height: 100px;
		}

		.homecares .img,
		.homecares .con {
			display: inline-block;
			vertical-align: middle;
		}
		.homecares .con {
			width: 61.44%;
			padding-left: 17%;
			text-align: left;
		}
		.homecares .con strong {
			font-size: 19px;
			font-weight: normal;
		}
		.homecares .img {
			width: 38.56%;
			margin: 0 0 3px;
		}

		.homecares p.feat {
			margin: 10px auto 0;
			font-size: 12px;
		}

		.homecares .foot {
			padding-top: 18px;
			padding-bottom: 20px;
		}
		.homecares .foot + .foot {
			padding-top: 10px;
		}
		.homecares > span {
			font-size: 17px;
		}
		.homecares .lead {
			/* margin-bottom: 20px; */
		}
		.homecares .teltxt {
			margin: 0 0 0 10px;
			display: inline-block;
			vertical-align: middle;
		}

		.homecares > .vs-box.extlink:before {
			margin-top: -60px;
		}
		.homecares > .vs-box:nth-of-type(4) .con {
			width: calc(100% - 330px);
		}
		.homecares > .vs-box:nth-of-type(4) .con strong {
			margin-bottom: 32px;
		}
		.homecares > .vs-box.extlink .foot .btn {
			width: auto;
			margin: 0 0 0 10px;
			padding: 5px 5px 5px 8px;
			vertical-align: middle;
			font-size: 12px;
		}

		.homecares > .vs-box.extlink.supplement:before {
			margin-top: -110px;
		}

		.homecares > .vs-box.extlink.book:before {
			margin-top: 0;
		}
		.homecares .book .con {
			width: 355px;
		}
		.homecares ul.img {
			width: 330px;
			margin: 7px 0 0;
		}
		.homecares ul.img img {
			width: 155px;
		}
		.homecares ul.img .btn {
			font-size: 12px;
		}
		.homecares .book .links {
			width: calc(100% - 355px);
			padding: 30px 10px 30px 20px;
			position: relative;
			display: inline-block;
			vertical-align: middle;
		}
		.homecares .book .links img {
			width: 120px;
			height: auto;
			position: absolute;
			top: 50%;
			left: 0;
			-webkit-transform: translateZ(0) scale(1.0, 1.0);
			-webkit-transform: translate(0, -50%);
			-ms-transform: translate(0, -50%);
			transform: translate(0, -50%);

			display: none;
		}

	}
	@media screen and (min-width: 810px) {
		.homecares .book .links {
			padding-left: 130px;
		}
		.homecares .book .links img {
			display: block;
		}
	}
	@media screen and (min-width: 830px) {
		.homecares .book .links {
			padding-left: 140px;
		}
		.homecares .book .con {
			width: 365px;
		}
		.homecares .book .links {
			width: calc(100% - 365px);
		}
	}





/* ==========================================================================



COUNSELING+TRAINING / カウンセリング/トレーニング
========================================================================== */

.page-id-11 .bkhana:before {
	background-position: 100% 64%;
}

.pagenav {
	margin: 30px 10px;
	text-align: center;
}
.pagenav ul {
	margin: 0;
	padding: 0;
}
.pagenav li {
	width: 100%;
	padding: 10px;
	display: inline-block;
	vertical-align: top;
}
.pagenav .btn {
	width: 100%;
	padding: 10px 2px 11px;
	background-color: #fff;
	font-size: 15px;
}
.pagenav .btn path {
	fill: #eb576c;
}
.visionsalon .pagenav .btn.active {
	background-color: #eb576c;
	color: #fff;
}
.visionsalon .pagenav .btn.active path {
	fill: #fff;
}
.pagenav .btn svg {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}
.pagenav .btn.other {
	background-color: #f8f0ef;
}
.pagenav .btn.other svg {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
}
	@media screen and (min-width: 768px) {
		.pagenav {
			margin-top: 70px;
			margin-bottom: 70px;
		}
		.pagenav li {
			width: auto;
/* 			margin: 10px; */
		}
		.pagenav .btn {
			padding-right: 20px;
			padding-left: 23px;
		}
	}

.stepsbox {
	max-width: 810px;
	margin: 60px 20px;
	padding: 20px;
	position: relative;
	border: 3px solid #f3f3f3;
	background-color: #fff;
}
	@media screen and (min-width: 850px) {
		.stepsbox {
			margin: 60px auto;
		}
	}

.stepsbox .heading2 {
	width: 100%;
	max-width: 710px;
}

.stepsbox ol {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: stepsbox;
}
.stepsbox > ol > li {
	max-width: 710px;
	margin: 30px auto 50px;
	padding: 40px 20px;
	position: relative;
/* 	overflow: hidden; */
	background-color: #f3f3f3;
}
.stepsbox ol > li:after {
	content: '';
	width: 38px;
	height: 31px;
	position: absolute;
	top: 100%;
	left: 50%;
	margin: 10px 0 0 -19px;
	background: url(../gfx/sprite.svg) no-repeat -66px 0;
	background-size: 300px auto;
}
.stepsbox ol > li:last-of-type:after {
	display: none;
}
/* .stepsbox .head {
	margin: 0 0 20px;
} */
.stepsbox .head .num {
	width: 30px;
	display: inline-block;
	vertical-align: bottom;
	color: #f18998;
	font: 100 56px/50px Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	text-align: center;
}
.stepsbox .head .num:after {
	counter-increment: stepsbox;
	content: counter(stepsbox);

}
.stepsbox .head strong {
	width: 80%;
	width: calc(100% - 30px);
	margin-bottom: 0px;
	padding-left: 10px;
	display: inline-block;
	vertical-align: bottom;
	font-size: 22px;
	line-height: 28px;
	font-size: 17px;
	line-height: 25px;
	font-weight: normal;
}
	@media screen and (min-width: 375px) {
		.stepsbox .head .num {
			width: 50px;
			padding-left: 20px;
		}
		.stepsbox .head strong {
			width: 60%;
			width: calc(100% - 50px);
		}
	}
	@media screen and (min-width: 768px) {
		.stepsbox .head .num {
			position: absolute;
			top: 30px;
			left: 14px;
			font-size: 100px;
			line-height: 100%;
		}
		.stepsbox .head strong {
			width: 100%;
			padding-left: 0;
			font-size: 22px;
			line-height: 28px;
		}
	}

.visionsalon .stepsbox > ol > li .img {
	width: 100%;
	margin: 20px auto;
	display: block;
	text-align: center;
	float: none;
}
.stepsbox > ol > li .img img {
	width: 100%;
	max-width: 240px;
	height: auto;
	margin: 0 auto;
	display: block;
}
.stepsbox .alt .img {

}
.stepsbox .alt .img img {
	width: 43%;
	width: calc(50% - 10px);
	margin: 5px;
	display: inline-block;
	vertical-align: top;
}

.stepsbox .footnote {
	font-size: 12px;
}

.stepsbox .steptag {
	width: 84px;
	height: 42px;
	display: block;
	position: absolute;
	top: 18px;
	left: 0;
 	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	transform-origin: 0 100%;
}
.steptag:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 42px 42px 42px;
	border-color: transparent transparent #eb576c transparent;
	position: absolute;
	top: 0;
	left: 0;
}
.steptag:after {
	content: 'STEP';
	width: 84px;
	position: absolute;
	bottom: 5px;
	left: 0;
	text-align: center;
	color: #fff;
	font-size: 12px;
	font-style: normal;
	line-height: 100%;
}

.stepsbox ul {
	margin-top: 20px;
}
.stepsbox ul li {
	margin: 0 0 10px;
	padding-left: 20px;
	position: relative;
	list-style: none;
}
.stepsbox ul li:before {
	content: '◉';
	top: 0;
	left: 0;
	position: absolute;
}
	@media screen and (min-width: 768px) {
		.stepsbox > ol > li {
			padding: 40px;
			padding-left: 15%;
		}
		.stepsbox > ol > li .img img {
			margin: 0 0 0 20px;
			float: right;
		}
		.stepsbox > ol > li.alt .img {
			margin: 20px -10px;
			text-align: left;
		}
		.stepsbox > ol > li.alt .img img {
			width: 235px;
			margin: 0 10px;
			float: none;
		}
		.stepsbox > ol > li:first-of-type .img img {
			width: 190px;
		}
	}


.stepsbox.alt .head .num {
	width: 70px;
	padding: 0;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	color: #eb576c;
	font-size: 64px;
	text-align: center;
}
.stepsbox.alt .item {
	max-width: 610px;
	padding: 20px 20px 20px 70px;
	background-color: #F9E9E8;
}
.stepsbox.alt .head strong {
	padding-left: 0;
	font-size: 18px;
	line-height: 26px;
}
.stepsbox.alt ol > li:after {
	display: none;
}
.stepsbox.alt > ol > li {
	margin-bottom: 30px;
}
	@media screen and (min-width: 768px) {
		.stepsbox.alt .head .num {
			width: 120px;
		}
		.stepsbox.alt .item {
			padding: 30px 20px 30px 120px;
		}
	}



.vs-box .heading2,
.vs-box .heading3 {
	width: 100%;
	max-width: 710px;
}

.visionsalon .txtbox {
	max-width: 710px;
	margin: 30px auto;
	padding: 40px 20px;
	position: relative;
	background-color: #f3f3f3;
}
.visionsalon .stepsbox .txtbox {
	padding: 40px;
}
	@media screen and (min-width: 768px) {
		.visionsalon .txtbox {
			padding: 40px;
		}
	}


.txtbox .heading {
	margin: 40px 0 20px;
	display: block;
	font: normal 17px/25px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.txtbox .heading.alt {
	position: relative;
	color: #009a8d;
}

.txtbox > .heading:first-child {
	margin-top: 0;
}
.visionsalon .txtbox p + .heading,
.visionsalon .txtbox .btn + .heading {
	margin-top: 30px;
}

.txtbox ul li {
	margin: 0 0 10px;
	display: block;
	padding-left: 20px;
	position: relative;
	list-style: none;
}
.txtbox ul li:before {
	content: '◉';
	top: 0;
	left: 0;
	position: absolute;
}
.txtbox .loose li {
	margin-right: 10px;
	display: inline-block;
	vertical-align: top;
}

.txtbox .img {
	width: 100%;
	margin: 20px auto;
	display: block;
	text-align: center;
}
.txtbox .img img {
	width: 100%;
	max-width: 190px;
	height: auto;
	margin: 0 auto;
	display: block;
}

.txtbox p {
	line-height: 26px;
}
.txtbox p strong.alt {
	color: #ce001d;
}

.txtbox .child {
	margin-top: 40px;
}

.txtbox .note {
	margin: 20px 0 0;
	padding: 10px 10px 10px 70px;
	position: relative;
	background-color: #fff;
	color: #eb576c;
}
.txtbox .note span {
	width: 50px;
	position: absolute;
	top: 10px;
	left: 10px;
	bottom: 10px;
	background-color: #eb576c;
	color: #fff;
}
.txtbox .note span strong {
	width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-align: center;
}

.txtbox .btn.alt {
	margin-top: 30px;
	padding-top: 6px;
	padding-bottom: 6px;
	display: block;
	background-color: #fff;
	font-size: 12px;
}
.txtbox .btn.alt + .btn {
	margin-top: 20px;
}
.txtbox .btn.alt path {
	fill: #eb576c;
}
	@media screen and (min-width: 768px) {
		.txtbox .heading {
			width: 100%;
			padding-left: 0;
			font-size: 22px;
			line-height: 28px;
		}
		.txtbox .heading.sml {
			margin-top: 20px;
			font-size: 17px;
			line-height: 22px;
		}
		.txtbox .img {
			margin: 0 0 0 20px;
			width: 190px;
			float: right;
		}
		.txtbox .img img {
			margin: 0 0 20px;
		}
		.txtbox .img + ul {
			padding-right: 210px;
		}

		.txtbox .img.alt {
			margin: 6px 20px 0 0;
			float: left;
		}
	}




.txtbox.alt {
	padding-top: 0;
}
.txtbox.alt .heading {
	width: auto;
	margin: 0 -20px 20px;
	padding: 12px 20px 13px;
	background-color: #fadbd9;
}
	@media screen and (min-width: 768px) {
		.txtbox.alt {
			padding: 0 40px 40px 40px;
		}
		.txtbox.alt .heading {
			margin: 0 -40px 35px;
			padding-top: 11px;
			padding-bottom: 11px;
		}
		.txtbox.alt .img {
			width: 236px;
			margin: 0;
			position: absolute;
			top: 90px;
			bottom: 40px;
			right: 40px;
			background-repeat: no-repeat;
			background-position: 50% 50%;
			background-size: cover;
		}
		.txtbox.alt .img + ul {
			padding-right: 266px;
		}
		.txtbox.alt > p,
		.txtbox.alt > ul,
		.txtbox.alt > ol {
			padding-right: 266px;
		}
		.txtbox.alt > .note {
			min-height: 90px;
			margin-top: 30px;
			margin-right: 266px;
			padding: 20px 20px 20px 90px;
		}
		.txtbox.alt .note span {
			top: 20px;
			left: 20px;
			bottom: 20px;
		}
		.page-id-11 .txtbox.alt:last-of-type .note {
			padding-top: 34px;
		}
	}


.page-id-11 .vs-mod .trainingschedule {
	margin-top: 0;
}

#training header {
	max-width: 1100px;
	margin: 0 auto;
	position: relative;
}
header .heading2.deco2 + p {
	margin: -10px 20px 0;
	font-size: 15px;
	line-height: 22px;
	text-align: left;
}
	@media screen and (min-width: 768px) {
		header .heading2.deco2 + p {
			margin: 0;
			position: absolute;
			right: 20px;
			top: 0;
			line-height: 28px;
		}

	}
#training .txt-intro {
	padding-top: 30px;
	padding-bottom: 0;
}




/* ==========================================================================



PRODUCTS / オリジナル商品
========================================================================== */

.aboutglasses .con {
	padding: 20px;
	background-color: #f3f3f3;
}

.aboutglasses .feat {
	margin-top: 30px;
	padding-left: 40px;
	position: relative;
}
.aboutglasses h4 {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	left: -20px;
	background-color: #fff;
	font: 17px/50px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: center;
}
.aboutglasses .feat li {
	margin: 0 -20px 5px 0;
	padding: 14px 20px 14px 30px;
	display: block;
	background-color: #fff;
}
.aboutglasses .feat li:before {
	width: 30px;
	color: #f18998;
	line-height: 50px;
	text-align: center;

}
	@media screen and (min-width: 600px) {
		.aboutglasses h4 {
			width: 110px;
		}
		.aboutglasses .feat {
			padding-left: 110px;
		}
		.aboutglasses .feat li {
			margin-right: -40px;
			margin-left: 55px;
		}
		.aboutglasses .feat li:before {
			content: counter(vs-box-item);
			width: 50px;
			left: auto;
			right: 100%;
			margin-right: 5px;
			background-color: #fff;
			font-size: 30px;
		}
	}
	@media screen and (min-width: 600px) {
		.aboutglasses .con {
			padding: 40px;
		}
		.aboutglasses h4 {
			left: -40px;
		}
		.aboutglasses .feat li {
			margin-left: 35px;
		}
	}

#glasses {
	padding-bottom: 80px;
}
#glasses .vs-box {
	margin: 50px auto;
}
#glasses .stepsbox ol > li:nth-of-type(7):after {
	display: none;
}

#glasses .txtbox {
	margin-bottom: 0;
}
#glasses .txtbox .note {
	margin-top: 3px;
	margin-right: 0;
	padding-left: 10px;
	padding-right: 10px;
	border: 3px solid #fff;
	background-color: #f3f3f3;
}
#glasses .txtbox .note + .note {
	background-color: #fff;
	color: #000;
}

#glasses-guarantee {
	padding-right: 20px;
	padding-left: 20px;
}
#glasses-guarantee table {
	margin-top: 0;
}
#glasses-guarantee table span {
	color: #eb576c;
}
#glasses-guarantee table td {
	background-color: #fff;
	padding-right: 5px;
	padding-left: 5px;
}
#glasses-guarantee table .contents {
	width: 105px;
}
#glasses-guarantee table .ref {
	width: 90px;
}
#glasses-guarantee table .details {
	width: 115px;
}


#glasses-howto {
	margin: 0;
	border-spacing: 0;
	font-size: 12px;
}
#glasses-howto th,
#glasses-howto td {
	padding: 5px;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	background-color: #f3f3f3;
	text-align: center;
	font-weight: normal;
}
#glasses-howto thead td {
	background-color: #fff;
}
#glasses-howto thead th {
	border-right: 3px solid #fff;
	border-top: 3px solid #fff;
	background-color: #f3f3f3;
}
#glasses-howto thead th:first-of-type {
	background-color: #fff;
	border-top: none;
	border-right: 3px solid #f3f3f3;
	border-bottom: 3px solid #f3f3f3;
}
#glasses-howto tbody th:first-of-type {
	border-right: 3px solid #f3f3f3;
	background-color: #fff;
	border-bottom: 3px solid #f3f3f3;
}
#glasses-howto tbody th:nth-of-type(2) {
	border-left: 3px solid #fff;
}
#glasses-howto tbody tr:last-of-type th:first-of-type {
	border-bottom: none;
}
	@media screen and (min-width: 600px) {
		#glasses-howto {
			font-size: 15px;
		}
		#glasses .txtbox .note {
			padding: 20px;
			line-height: 30px;
		}
	}



.visionsalon .txtbox.prod {
	margin: 20px auto;
	text-align: center;
}

.txtbox .specs {
	margin: 20px 0 0;
	border: 5px solid #fff;
	background-color: #f3f3f3;
}
.txtbox .specs dt,
.txtbox .specs dd {
	width: 50%;
	padding: 9px 5px;
	display: inline-block;
	vertical-align: middle;
}
.txtbox .specs dt {
	border-right: 2px solid #fff;
}
.txtbox .specs dd {
	border-left: 3px solid #fff;
}
.txtbox.prod .img img {
	max-width: 200px;
}
	@media screen and (min-width: 600px) {
		.txtbox.prod .img {
			width: 200px;
			margin: 0;
			float: left;
		}
		.txtbox.prod .img img {
			margin: 0;
		}
		.txtbox.prod .heading,
		.txtbox.prod p,
		.txtbox.prod .specs {
			margin-left: 220px;
			text-align: left;
		}
		.txtbox.prod .heading {
			margin-top: 0;
		}
		.txtbox.prod p {
			overflow: hidden;
		}
		.txtbox.prod .specs {
			text-align: center;
		}
	}
	@media screen and (min-width: 768px) {
		.txtbox .specs dt {
			width: 39%;
		}
		.txtbox .specs dd {
			width: 61%;
		}
	}
	@media screen and (min-width: 840px) {
		.txtbox.prod {
			padding: 40px;
		}
		.txtbox.prod .specs {
			right: 40px;
			left: 40px;
		}
	}

.vs-box > .note {
	max-width: 710px;
	margin: 20px auto 0;
}
.hardnote {
	max-width: 710px;
	margin: 20px auto 0;
	padding: 18px 20px;
	border: 1px solid #eb576c;
	color: #eb576c;
	text-align: center;
}

.prod-order {
/* 	padding: 50px 0 0; */
	padding-bottom: 0;
}
.prod-order > .heading2 {
	/* margin-right: 20px; */
	/* margin-left: 20px; */
}
.order-contact {
	text-align: center;
}
.order-contact .contact-blk {width: 100%;max-width: 710px;margin-bottom: 50px;padding-bottom: 20px;}
.order-contact .contact-blk > span:first-of-type {
	padding: 0 10px;
}
.order-contact .contact-blk .hilite {
	max-width: 270px;
	margin: 5px auto 20px;
	display: block;
	background-color: #fadbd9;
}
	@media screen and (min-width: 768px) {
		.order-contact .contact-blk > span {
			width: 48%;
		}
		.order-contact .contact-blk .hilite {
			margin-bottom: 0;
		}
	}

.warranty {
	margin: 0 -20px;
	padding: 50px 20px;
	background-color: #f3f3f3;
}
.warranty .heading2 {
/* 	width: auto; */
/* 	margin: 0 20px; */
	padding: 20px;
	border: 1px solid #eb576c;
	background-color: #fff;
	text-align: center;
}


.txtbox.plain {
	margin: 20px auto;
	background-color: #fff;
}
.txtbox.plain .heading {
	padding-bottom: 6px;
	border-bottom: 1px solid #000;
}

.warranty .txtbox + .heading2 {
	margin-top: 50px;
}






/* ==========================================================================



CONTACT / お問い合わせ・資料請求
========================================================================== */

.page-id-57 .txt-intro {
	max-width: 506px;
}
	@media screen and (min-width: 1000px) {
		.page-id-57 .txt-intro {
			max-width: 100%;
		}
	}


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

.formwrap .wpcf7 {
	padding: 40px 20px;
	background-color: rgba(255, 255, 255, 0.9);
}
.wpcf7 .item {
	padding: 20px 0;
	display: block;
	border-bottom: 1px dotted #ccc;
}
.wpcf7 .item .rqr {
	height: 20px;
	line-height: 20px;
	margin: 0 0 0 10px;
	padding: 0 8px;
	font-style: normal;
	display: inline-block;
	vertical-align: top;
	background-color: #eb576c;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
}
.wpcf7 .item > span:first-of-type {
	margin: 0 0 10px;
	display: block;
}
.wpcf7 .item .note {
	display: block;
	font-size: 12px;
	font-style: normal;
}
.wpcf7 br {
	display: none;
}

.wpcf7-submit {
	width: 100%;
	max-width: 100%;
	padding: 12px 45px;
	position: relative;
	display: inline-block;
	vertical-align: top;
	border-radius: 0;
	background-color: #eb576c;
	color: #fff;
	font: bold 13px/16px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: center;
	/* 	text-transform: uppercase; */
	transition: all 0.3s ease-in-out;
}
.wpcf7-submit:active,
.wpcf7-submit:hover,
.wpcf7-submit:focus {
	background-color: #000;
}

.formwrap span.wpcf7-not-valid-tip {
	margin: 0;
	padding: 5px;
	display: block;
	background-color: #eb576c;
	color: #fff;
}
.formwrap div.wpcf7-validation-errors {
	padding: 40px 20px;
	border-color: #eb576c;
	background-color: #ffefee;
	color: #c31e36;
	font-size: 20px;
	line-height: 32px;
	font-weight: bold;
	text-align: center;
}
.formwrap .wpcf7-not-valid {
	border-color: #eb576c;
}

.formwrap div.wpcf7-mail-sent-ok {
	padding: 40px 20px;
	border-color: #ccc;
	background-color: #f8f8f8;
	text-align: center;
}
.formwrap p {
	margin: 0;
}

.wpcf7-list-item.last.has-free-text * {
	display: inline-block;
}
.wpcf7-list-item.last.has-free-text input[type=text] {
	width: calc(100% - 100px);
}

.wpcf7 .item.find-src {
	padding-right: 0;
	/* letter-spacing: -2px; */
	letter-spacing: 0;
}
.wpcf7 .item.find-src .rqr {
	margin-left: 5px;
}
.wpcf7 .item.find-src em {
	letter-spacing: 0;
	vertical-align: top;
}

	@media screen and (min-width: 768px) {
		.wpcf7 .item > span:first-of-type,
		.formwrap .wpcf7-form-control-wrap {
			display: inline-block;
			vertical-align: top;
		}
		.wpcf7 .item > span:first-of-type {
			width: 220px;
			padding: 8px 10px 0 0;
		}
		.formwrap .wpcf7-form-control-wrap {
			width: calc(100% - 225px);
		}
		.vs-consultation-notes,
		.vs-eyesight-right,
		.vs-eyesight-left {
			padding-top: 10px;
		}
		.wpcf7-submit {
			padding: 30px;
			font-size: 18px;
			line-height: 24px;
		}

		.wpcf7 .vs-consultation-notes span:first-of-type {
			width: 100%;
			display: block;
		}
		.wpcf7 .vs-consultation-notes .wpcf7-form-control-wrap {
			width: 100%;
		}

	}



.formwrap .policy {
	padding: 20px 0;
	font-size: 11px;
	line-height: 16px;
}
.formwrap .policy p {
	margin: 5px 0;
}
.formwrap .policy strong {
	margin: 0 auto 5px;
	display: block;
}
.formwrap .policy > strong {
	font-weight: normal;
	font-size: 16px;
	line-height: 24px;
	text-align: center;
}
.formwrap .policy .con {
	height: 200px;
	margin: 20px 0;
	padding: 10px;
	overflow: auto;
	border: 1px solid #ccc;
}
	@media screen and (min-width: 768px) {
		.formwrap .policy {
			font-size: 13px;
			line-height: 20px;
		}
		.formwrap .policy p {
			margin: 10px 0;
		}
	}




/* ==========================================================================



VOICE / お客様の声
========================================================================== */

.byline {
	text-align: right;
}

.post-type-archive-voice .txt-intro,
.tax-voice_category .txt-intro {
	max-width: 506px;
}

.cat-tag {
	width: 100%;
	padding: 10px;
	display: inline-block;
	vertical-align: top;
	background-color: #eb576c;
	color: #fff;
	text-align: center;
}
a.cat-tag:active,
a.cat-tag:hover,
a.cat-tag:focus {
	background-color: #000;
	color: #fff;
}

.voicelineup {
	margin: 0 20px;
	text-align: center;
}
.voicepost {
	max-width: 630px;
	margin: 20px auto;
	padding: 20px;
	position: relative;
	background-color: #fff;
	border: 3px solid #ccc;
	text-align: left;
}
.voicepost h2 {
	margin: 0 0 10px;
	font: 16px/22px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.voicepost .byline {
	text-align: right;
}
.voicepost .byline span {
	margin-left: 10px;
}
.voicepost .item {
/* 	margin: 20px 0; */
/* 	padding: 0 0 10px; */
	padding: 20px 0 10px;
	position: relative;
	border-top: 1px solid #ccc;
}
.voicepost .top .item {
	padding-top: 0;
	border-top: none;
}
.voicepost h3 {
	margin: 0;
	position: relative;
	padding: 3px 14px;
	display: inline-block;
	vertical-align: top;
	border: 1px solid #eb576c;
	color: #eb576c;
	font: 15px/19px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: left;
}
/* .voicepost h3:before {
	content: '';
	width: 30px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -15px;
	border-bottom: 1px solid #eb576c;
} */

.voicepost .img {
	width: 100%;
	max-width: 240px;
	margin: 20px auto;
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #f2f2f2;
}
.voicepost .img:after {
	content: '';
	padding-top: 56.25%;
	display: block;
}
.voicepost .img.no-img {
	background: url(../gfx/voice-noimg.png) no-repeat 50% 50%;
	background-size: cover;
}
/* .voicepost .img.no-img:before {
	content: 'No Image';
	color: #777;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
} */
.voicepost .img img {
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

	@media screen and (min-width: 600px) {
		.voicepost .byline {
			margin-bottom: 0;
		}
		.voicepost .img,
		.voicepost .top .item {
			display: inline-block;
			vertical-align: top;
		}
		.voicepost .top .item {
			width: calc(100% - 270px);
			margin-left: 20px;
			padding-top: 20px;
		}

	}

	@media screen and (min-width: 768px) {
		.voicepost {
			margin: 40px auto;
			padding: 30px 20px 10px;
		}
	}






/* ==========================================================================



PAGINATION
========================================================================== */
.pagination {
	margin: 50px -20px;
	list-style: none;
	text-align: center;
}
.pagination ul {
	margin: 0 auto;
}
.pagination li {
	margin: 0 5px;
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.pagination a {
	padding: 0 9px;
	display: inline-block;
	vertical-align: top;
	border: 1px solid #eb576c;
	background-color: #eb576c;
	color: #fff;
	font-size: 16px;
	line-height: 30px;
}
.pagination a:active,
.pagination a:hover,
.pagination a:focus {
	border-color: #000;
	background-color: #000;
	color: #fff;
}
.pagination .current {
	padding: 0 9px;
	display: inline-block;
	vertical-align: top;
	border: 1px solid #eb576c;
	background-color: #fff;
	color: #eb576c;
	font-size: 16px;
	line-height: 30px;
}

.pagination .pg-1 + :not(.pg-2):before,
.pagination :not(.pg-n) + .pg-n:before {
	content: '...';
	margin-right: 16px;
	color: #B4BABF;
	line-height: 30px;
}
.pagination .pg-n-minus-1 + .pg-n:before {
	display: none;
}
.pagination .pg-n + .pg-n {
	display: none;
}
.pagination .pg-arr a {
	width: 32px;
	height: 32px;
	position: relative;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	font-size: 12px;
	background-color: transparent;
	border: none;
	color: #f4f4f4;
}
.pagination .pg-arr .arrowbox {
	width: 32px;
	height: 32px;
	top: 0;
	left: 0;
	background-color: #eb576c;
	/* -webkit-transform: translateY(0); */
	/* transform: translateY(0); */
}
.pagination .pg-arr .arrowbox path {
	fill: #fff;
}
.pagination .pg-arr a:active .arrowbox,
.pagination .pg-arr a:hover .arrowbox,
.pagination .pg-arr a:focus .arrowbox {
	background-color: #000;
}

.pagination .arr i {
	width: 21px;
	height: 16px;
	margin-top: 11px;
	display: inline-block;
	vertical-align: top;
	background: url(../gfx/sprite.svg) no-repeat 0 0;
}
.pg-prev i {
	-moz-transform: scaleX(-1);
	-o-transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1);
	-ms-filter: "FlipH";
	filter: FlipH;
}
.pg-next i {
	-moz-transform: scaleX(1);
	-o-transform: scaleX(1);
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}



.pagination .pg-prev {
	margin-right: 20px;
}
.pagination .pg-next {
	margin-left: 20px;
}

.pagination .pg-arr span {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
	@media screen and (max-width: 400px) {
		.pagination:not(.first-last) {
			position: relative;
			padding-bottom: 50px;
		}
		.pagination:not(.first-last) .pg-arr {
			margin: 0;
			position: absolute;
			bottom: 0;
		}
		.pagination:not(.first-last) .pg-prev {
			margin-left: -40px;
			left: 50%;
		}
		.pagination:not(.first-last) .pg-next {
			margin-right: -40px;
			right: 50%;
		}
	}

	@media screen and (min-width: 768px) {
		.pagination .pg-prev {
			margin-right: 57px;
		}
		.pagination .pg-next {
			margin-left: 57px;
		}
		.pagination .arr a {
			width: 138px;
		}
		.pg-prev i {
			margin-right: 10px;
		}
		.pg-next i {
			margin-left: 10px;
		}
	}




/* ==========================================================================



COMPANY
========================================================================== */

.page-id-89 .txt-intro {
	max-width: 600px;
}
.page-id-89 .txt-intro h2 {
	margin: 0 0 30px;
	padding: 0 0 20px;
	position: relative;
	color: #eb576c;
	font: 20px/28px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.page-id-89 .txt-intro h2:after {
	content: '';
	width: 35px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -17px;
	background-color: #ccc;
}
.page-id-89 .txt-intro .byline {
	margin-top: 20px;
	font-size: 14px;
	text-align: right;
}
.page-id-89 .txt-intro br {
	display: none;
}
	@media screen and (min-width: 768px) {
		.page-id-89 .txt-intro h2 {
			font-size: 30px;
			line-height: 46px;
		}
		.page-id-89 .txt-intro h2 span {
			display: block;
		}
		.page-id-89 .txt-intro {
			line-height: 28px;
		}
	}

.company-info {
	margin: 0 auto 60px;
	background-color: #f3f3f3;
}
.company-info th {
	min-width: 100px;
}
.company-info td {
	background-color: #fff;
}
	@media screen and (min-width: 768px) {
		.company-info th {
			min-width: 150px;
		}
	}





/* ==========================================================================



NAKAGAWA METHOD
========================================================================== */

.nakagawa-method-logo {
	width: 230px;
	height: 0;
	padding-top: 60px;
	margin: 0 auto 10px;
	display: block;
	overflow: hidden;
	background: url(../gfx/nakagawa-method-logo.svg) no-repeat 0 0;
	background-size: contain;
	font-style: normal;
}
.nakagawa-method-logo.stroke {
	background-image: url(../gfx/nakagawa-method-logo-stroke.svg);
}
	@media screen and (min-width: 600px) {
		.nakagawa-method-logo {
			width: 360px;
			padding-top: 92px;
		}
	}

.nakagawaphilo .heading2 {
	text-align: center;
	color: #000;
}

.nakagawaphilo img {
	width: 100%;
	max-width: 405px;
	height: auto;
	margin: 0 auto 30px;
	display: block;
}
.nakagawaphilo .byline {
	margin-top: 20px;
	font-size: 22px;
}

.vs-mod-con {
	max-width: 1100px;
	margin-right: auto;
	margin-left: auto;
}

.visiongroup {
	padding: 0 5px;
}
.visiongroup .item {
	width: 50%;
	max-width: 241px;
	display: inline-block;
	vertical-align: top;
	padding: 5px;
}
.visiongroup .item .con {
	height: 100%;
	border: 1px solid #fff;
	background-color: #fff;
}
.visiongroup .item a {
	height: 100%;
	position: relative;
	display: block;
	color: #1a1a1a;
}
.visiongroup .item a:before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid transparent;
	transition: border-color 0.3s ease-in-out;
}
.visiongroup .item a:hover:before {
	border-color: #1a1a1a;
}
.visiongroup .item img {
	width: 100%;
	height: auto;
}
.visiongroup .item p {
	margin: 10px;
	font-size: 13px;
	line-height: 18px;
	text-align: left;
}
.visiongroup .item strong {
	margin: 0 0 5px;
	position: relative;
	display: inline-block;
	vertical-align: top;
	border-bottom: 1px solid #eb576c;
	font-weight: normal;
}
	@media screen and (min-width: 520px) {
		.visiongroup {
			max-width: 520px;
			margin: 60px auto;
		}
		.visiongroup .item {
			max-width: 251px;
			padding: 10px;
		}
		.visiongroup .item a {
			padding-bottom: 10px;
		}
	}
	@media screen and (min-width: 1000px) {
		.visiongroup {
			max-width: 1200px;
		}
	}

.methodinfo {
	text-align: center;
}
.methodinfo .intro p:first-of-type {
	font-size: 26px;
	line-height: 34px;
	text-align: center;
	color: #eb576c;
}

.methodinfo .chart img {
	width: 100%;
	max-width: 352px;
	margin: 20px auto;
	display: block;
}
.chart .keys {
	font-size: 25px;
	line-height: 30px;
	/* 	font-weight: bold; */
}
.chart .keys li {
	width: 42%;
}
.chart .keys span {
/* 	display: block; */
	margin-right: 5px;
	display: inline-block;
	font-size: 20px;
	font-family: "Open Sans", Arial, "Lucida Grande", sans-serif;
	font-weight: 300;
}
.chart .keys li {
	margin: 5px;
}
	@media screen and (min-width: 580px) {
		.methodinfo .chart img {
			margin: 40px auto;
		}
		.chart .keys li {
			width: auto;
		}
		.chart .keys li:after {
			content: '-';
			margin-left: 13px;
			font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
			font-weight: 100;
			font-size: 19px;
			color: #bbb;
		}
		.chart .keys li:last-of-type:after {
			display: none;
		}
	}



/* ==========================================================================



NEWS
========================================================================== */

#news {
	padding-top: 30px;
}

.newscats {
	padding: 0 20px;
	text-align: center;
}
.newscats li {
	margin: 4px;
	display: inline-block;
	vertical-align: top;
}
.newscats .active a {
	background-color: #fff;
	color: #eb576c;
}
.newscats a {
	border: 1px solid #eb576c;
}
.visionsalon .newscats a {
	margin: 0;
}

.newscats + .vs-box {
	margin-top: 24px;
}

.newscats a:active,
.newscats a:hover,
.newscats a:focus {
	border-color: #c83c50;
}

.single #news .entry-body {
	margin-top: 30px;
	padding: 30px 20px;
	background-color: #eee;

}

.single #news .entry-body h1,
.single #news .entry-body h2,
.single #news .entry-body h3,
.single #news .entry-body h4,
.single #news .entry-body h5,
.single #news .entry-body h6 {
	margin: 20px 0;
}
.single #news .entry-body p {
	margin: 20px 0;
}
.single #news .entry-body ul {
	margin-left: 30px;
}
.single #news .entry-body ul li {
	list-style-type: disc;
	display: list-item;
}

#news .entry-body .featnews {
	transition: none;
	opacity: 1;
}
#news .entry-body .featnews .item {
	margin: 0 auto 40px;
	display: block;
}
#news .entry-body .featnews .item:hover {
	border-color: #ccc;
}

	@media screen and (min-width: 500px) {
		#news .entry-body .featnews .item {
			width: 382px;
			height: 172px;
		}
		#news .entry-body .featnews .item .img {
			width: 189px;
			height: 170px;
			float: right;
		}
		#news .entry-body .featnews .item strong {
			max-height: 78px;
			display: block;
			font-size: 20px;
			line-height: 26px;
		}
		#news .entry-body .featnews .box {
			width: 100%;
			height: 100%;
		}
		#news .entry-body .featnews .img + .box {
			width: 191px;

		}
		#news .entry-body .featnews .con {
			padding: 0 14px;
		}
	}
	@media screen and (min-width: 768px) {
		#news {
			padding-top: 70px;
		}
		#news .lineup {
			padding-right: 40px;
			padding-left: 40px;
		}
		.single #news .vs-box {
			padding-right: 32px;
			padding-left: 32px;
		}
		.single #news .entry-body {
			padding: 50px 45px;
		}
	}









/* ==========================================================================



MEMBERS
========================================================================== */

.page-id-15 .featnews {
	opacity: 1;
}

.calwrap {
	width: calc(100% - 40px);
	max-width: 810px;
	margin: 70px auto;
	padding: 0;
	border-radius: 10px;
	overflow: hidden;
	background-color: #fff;
}

#campaign {
	padding-top: 0;
	padding-bottop: 70px;
}

.qa-items > li {
	padding-bottom: 22px;
	position: relative;
	display: block;
}
.qa-items > li:before {
	content: '';
	width: 40px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -20px;
	background-color: #f3f3f3;
}
.qa-items > li:last-of-type {
	padding-bottom: 0;
}
.qa-items > li:last-of-type:before {
	display: none;
}
.qa-items li .con {
	max-width: 710px;
	margin: 0 auto;

}
.qa-items li h3,
.qa-items li p {
	padding: 10px 10px 10px 30px;
	position: relative;
	display: block;
	font: normal 15px/22px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.qa-items li h3 {
	border-bottom: 1px dotted #ccc;
	font-size: 17px;
	line-height: 24px;
}
.qa-items li p {
	margin: 0 auto;
}
.qa-items li h3:before,
.qa-items li p:first-of-type:before {
	width: 20px;
	position: absolute;
	top: 0;
	left: 0;
	color: #f18998;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 100;
	font-size: 24px;
	line-height: 42px;
	text-align: center;
}
.qa-items li h3:before {
	content: 'Q';
	top: 2px;
}
.qa-items li p:first-of-type:before {
	content: 'A';
}

.qa-items ol,
.qa-items ul {
	padding-left: 10px;
	line-height: 26px;
}
.qa-items ol li {
	display: block;
}
.qa-items ol li:before {
	top: 2px;
}
.qa-items ul li {
	margin: 0 20px 10px;
	position: relative;
	padding-left: 20px;
	display: block;
}
.qa-items ul li:before {
	content: '◉';
	top: 0;
	left: 0;
	position: absolute;
}

.wp-pagi-mod {
	position: relative;
}
.wp-pagi-mod:before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	background-color: rgba(255, 255, 255, 0.9);

	display: none;
}
.wp-pagi-mod .loadingblink {
	width: 90%;
	position: absolute;
	margin-top: -60px;
	top: 50%;
	left: 50%;
	z-index: 15;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-align: center;
	color: #eb576c;
	font-size: 100px;

	display: none;
}
.wp-pagi-mod.loading .loadingblink,
.wp-pagi-mod.loading:before {
	display: block;
}

.btn.pdf {
	width: 100%;
}
.btn.pdf .fa {
	margin-left: 10px;
}




/* ==========================================================================



CASES
========================================================================== */

.case-tpl .vs-box,
.case-tpl .stepsbox {
	max-width: 960px;
}
.case-tpl .vs-box .olist,
.visionsalon .case-tpl .txtbox,
.case-tpl .vs-box .heading2,
.case-tpl .vs-box .heading3 {
	max-width: 860px;
}

#case2 .figs.i-3.mag-gallery {
	margin-bottom: 0;
}

.page-id-9 .pagenav {
	max-width: 700px;
	margin-right: auto;
	margin-left: auto;
}

.cases-nav {
	padding: 20px 10px;
	background-color: #fad1d7;
	text-align: center;
}
.cases-nav ul {
	margin: 0 auto;
	max-width: 320px;
	display: block;
}
.cases-nav li {
	margin: 5px;
	display: inline-block;
	vertical-align: top;
}
.cases-nav .btn {
	width: 130px;
	height: 30px;
	line-height: 30px;
	padding: 0;
	border-radius: 15px;
	background-color: #fff;
	color: #000;
	font-size: 16px;
	font-weight: normal;
	white-space: nowrap;
}
.cases-nav .active .btn {
	background-color: #eb576c;
	color: #fff;
}
	@media screen and (min-width: 400px) {
		.cases-nav ul {
			max-width: inherit;
		}
		.cases-nav .btn {
			width: 140px;
		}
	}
	@media screen and (min-width: 600px) {
		.cases-nav .btn {
			width: 150px;
		}
	}
	@media screen and (min-width: 768px) {
		.cases-nav ul {
			max-width: 1140px;
		}
		.cases-nav .btn {
			width: 200px;
			height: 40px;
			line-height: 40px;
			border-radius: 20px;
			font-size: 24px;
		}
	}

.olist {
	list-style: none;
}
.olist li {
	padding-left: 20px;
	position: relative;
	display: list-item;
}
.olist li:before {
	content: '';
	width: 13px;
	height: 13px;
	position: absolute;
	top: 4px;
	left: 0;
	box-sizing: border-box;
	border: 1px solid #222;
}

.vs-box .olist {
	max-width: 710px;
	margin: 30px auto;
}
	@media screen and (min-width: 600px) {
		.vs-box .olist {
			-moz-column-count: 2;
			-webkit-column-count: 2;
			column-count: 2;
			-webkit-column-gap: 0;
			-moz-column-gap: 0;
			column-gap: 0;
		}
		.vs-box .olist li {
			padding-right: 20px;
		}
	}


.gridlist {
	list-style: none;
}
.visionsalon .gridlist li {
	width: 100%;
	height: 70px;
	margin: 0;
	padding: 0;
	position: relative;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	background-color: #FBEBEA;
}
.gridlist li:nth-of-type(even) {
	background-color: #F8DDDF;
}
.gridlist li:before {
	display: none;
}
.gridlist li span {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.vs-box .gridlist {
/* 	margin: 30px auto; */
}
	@media screen and (min-width: 480px) {
		.visionsalon .gridlist li {
			width: 50%;
		}
		.gridlist li:nth-of-type(even) {
			background-color: #FBEBEA;
		}
		.gridlist li:nth-of-type(4n-1),
		.gridlist li:nth-of-type(4n-2) {
			background-color: #F8DDDF;
		}
	}
	@media screen and (min-width: 768px) {
		.visionsalon .gridlist li {
			width: 33.33%;
		}
		.gridlist li:nth-of-type(4n-1),
		.gridlist li:nth-of-type(4n-2) {
			background-color: #FBEBEA;
		}
		.gridlist li:nth-of-type(even) {
			background-color: #F8DDDF;
		}
	}

.visionsalon .gridlist + p {
	margin-top: 20px;
}
.visionsalon .gridlist .img {
	height: auto;
	float: none;
}
.visionsalon .gridlist .img img {
	width: 100%;
	max-width: 100%;
	margin: 0;
}

.mag-popup,
.mag-gallery a {
	color: #1a1a1a;
}

.figs {
	margin: 30px -5px 40px;
}
.figs img {
	width: 100%;
	height: auto;
}
.figs figure {
	width: 100%;
	width: calc(100% - 10px);
	/* max-width: 235px; */
	margin: 5px 0;
	display: inline-block;
	vertical-align: top;
}
/* .figs.i-2 figure {
	width: 45%;
	width: calc(50% - 10px);
} */
.figs figcaption {
	margin-top: 10px;
	font-size: 13px;
	line-height: 18px;
}
.figs figure {
	margin: 10px auto;
	display: block;
}
	@media screen and (min-width: 600px) {
		.figs figure {
			width: 45%;
			width: calc(50% - 16px);
			margin: 0 8px 16px;
			display: inline-block;
		}
	}
	@media screen and (min-width: 768px) {
		.figs.i-3 figure {
			width: 30%;
			width: calc(33.33% - 16px);
		}
	}

.visionsalon .mag-img img {
	margin-right: 0 !important;

}
.visionsalon .mag-img {
	position: relative;
}
.mag-img:after {
	content: "\f002";
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: 40px;
	height: 40px;
	position: absolute;
	right: 10px;
	bottom: 10px;
	font-size: 16px;
	line-height: 40px;
	border-radius: 50%;
	border: 1px solid rgba(177, 160, 202, 0.7);
	background-color: rgba(113, 88, 143, 0.7);
	color: #fff;
	text-align: center;
	transition: all 0.3s ease-in-out;
}
a:hover .mag-img:after {
	border: 1px solid rgba(177, 160, 202, 1);
	background-color: rgba(113, 88, 143, 1);
	color: #fff;
	text-align: center;
}

.visionsalon .imgblock {
/* 	padding: 40px 0; */
}
.visionsalon .imgblock .heading {
	margin-top: 0;
}
.visionsalon .imgblock img {
	width: 100%;
	max-width: 235px;
	height: auto;
	margin: 20px auto;
	display: block;
}
.visionsalon .imgblock.lrg img {
	max-width: 340px;
}
	@media screen and (min-width: 768px) {
		.visionsalon .imgblock .con,
		.visionsalon .imgblock .img {
			width: 50%;
			margin: 0;
			display: inline-block;
			vertical-align: top;
			float: none;
		}
		.visionsalon .imgblock .con {
			width: 61.1%;
		}
		.visionsalon .imgblock .img {
			width: 38.9%;
		}
		.visionsalon .imgblock.lrg .con {
			width: 47.8%;
		}
		.visionsalon .imgblock.lrg .img {
			width: 52.2%;
		}
		.visionsalon .imgblock .con {
			padding-right: 10px;
		}
		.visionsalon .imgblock img {
			margin-top: 0;
			margin-right: 0;
		}
		.visionsalon .imgblock .img {
			padding-left: 10px;
		}
	}



.case-tpl .txtbox .img img {
	max-width: 100%;
}

.txtbox.img-235 .heading {
	margin-top: 0;
}
	@media screen and (min-width: 768px) {
		.case-tpl .txtbox.img-235:before,
		.case-tpl .txtbox.img-235:after {
			content: " "; /* 1 */
			display: table; /* 2 */
		}
		.case-tpl .txtbox.img-235:after {
			clear: both;
		}
		.case-tpl .txtbox.img-235 {
			*zoom: 1;
		}
		.txtbox.img-235 .img {
			width: 235px;
		}
		.txtbox.img-235 .img img {
			max-width: 235px;
		}
		.case-tpl .txtbox.img-235 .img {
			width: 50%;
			max-width: 379px;
		}
		.case-tpl .txtbox.img-235 .img img {
			max-width: 100%;
		}
	}

.txtbox.eye-ex .heading {
	margin-top: 0;
}
.txtbox.eye-ex .img {
	width: 100%;
}
.txtbox.eye-ex .img img {
	max-width: 100%;
}
	@media screen and (min-width: 768px) {
		.txtbox.eye-ex .img {
			width: 300px;
			margin-left: 0;
			margin-right: 20px;
			float: left;
		}
	}

.txtbox .secret .img img {
	max-width: 100%;
}
	@media screen and (min-width: 768px) {
		.txtbox .secret .img {
			width: 340px;
			margin-left: 0;
			margin-right: 20px;
			float: left;
		}
	}


	@media screen and (min-width: 768px) {
		.txtbox .examples figure {
			/* width: 210px; */
		}
	}

.txtbox .heading + .figs,
.txtbox .heading + table {
	margin-top: -15px;
}

.case-foot {
	max-width: 850px;
	margin: 0 auto;
}
.case-foot .btn.alt2 .arrowbox {
	margin-left: 60px;
}
	@media screen and (min-width: 768px) {
		.case-foot {
			margin-top: 100px;
		}
	}


.vs-box.pilot .olist {
	margin-bottom: 0;
}
.vs-box.pilot .olist > li:before {
	content: '';
	top: 4px;
}
	@media screen and (min-width: 600px) {
		.vs-box.pilot .olist {
			-moz-column-count: 1;
			-webkit-column-count: 1;
			column-count: 1;
			-webkit-column-gap: 0;
			-moz-column-gap: 0;
			column-gap: 0;
		}
		.vs-box.pilot .olist li {
			display: inline-block;
			padding-right: 20px;
		}
		.vs-box.pilot .olist .olist {
			margin-top: 10px;
		}
		.vs-box.pilot .olist .olist li:before {
			content: '◉';
			width: auto;
			height: auto;
			top: 0;
			left: 0;
			position: absolute;
			border: none;
		}
	}

.checklistwrap {
	text-align: center;
}
.visionsalon .checklist {
	margin-bottom: 30px;
}
.visionsalon .checklist li {
	max-width: 610px;
	margin: 10px auto;
	padding: 20px 10px 20px 50px;
	background-color: #F9E9E8;
	border-radius: 5px 0 0 5px;
	overflow: hidden;
	font-size: 16px;
}
.visionsalon .checklist li:nth-of-type(even) {
	background-color: #F8DDDF;
}
.visionsalon .checklist li:before {
	content: '';
	width: 40px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #eb576c;
}
.checklist .fa {
	position: absolute;
	top: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	left: 8px;
	color: #fff;
	font-size: 26px;
}
	@media screen and (min-width: 768px) {
		.visionsalon .checklist li {
			padding-left: 80px;
		}
		.visionsalon .checklist li:before {
			width: 60px;
		}
		.checklist .fa {
			left: 18px;
		}
	}

.img-head {
	height: 240px;
	margin-right: -20px;
	margin-left: -20px;
	position: relative;
}
.img-head .heading2 {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 20px;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: rgba(255, 255, 255, 0.9);
}
.improvements .img-head {
	background: url(../img/cases/reading.jpg) no-repeat 50% 0;
	background-size: cover;
}
.improvements {
	padding-top: 0;
}
.improvements .heading2 {
	z-index: 10;
	text-align: center;
}
	@media screen and (min-width: 768px) {
		.img-head {
			height: 400px;
		}
	}

.casevoice .couple .img {
	margin-top: 12px;
}
.casevoice h5.heading {
	margin-bottom: 0;
	font-size: 18px;
}
.casevoice h6 {
	margin: 0;
	position: relative;
	padding: 3px 0;
	display: block;
	vertical-align: top;
	border-bottom: 1px solid #eb576c;
	color: #eb576c;
	font: 15px/19px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	text-align: left;
}
.casevoice .col {
	padding: 10px;
	display: inline-block;
	vertical-align: top;
}
	@media screen and (min-width: 620px) {
		.casevoice .col {
			width: 50%;
		}
	}



.case-header {
	width: 100%;
	margin: 0 auto;
	position: relative;
	background: url(../img/case1.jpg) no-repeat 50% 50%;
	background-size: cover;
	color: #fff;
	text-align: center;
	padding-top: 50%;
}
#case2 .case-header {
	background-image: url(../img/case2.jpg);
}
#case3 .case-header {
	background-image: url(../img/case3.jpg);
}
#case4 .case-header {
	background-image: url(../img/case4.jpg);
}
.case-header:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	background-color: rgba(0, 0, 0, 0.2);
}
.case-header .con {
	width: 100%;
	position: absolute;
	bottom: 20px;
	left: 0;
	z-index: 10;
	font: 15px/22px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.case-header span {
	display: block;
	font-family: Roboto, "Open Sans", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 100;
	font-size: 45px;
			line-height: 38px;
}
.case-header strong {
	display: block;
	font-size: 16px;
}
	@media screen and (min-width: 768px) {
		.case-header {
			width: 405px;
			height: 277px;
			margin: 70px auto 40px;
			padding-top: 0;
		}
	}

#case2 .aboutglasses .feat {
	padding-left: 60px;
}
#case2 .aboutglasses .feat li:before {
	display: none;
}
#case2 .aboutglasses .feat li {
	padding: 14px 10px 14px 10px;
	font-size: 14px;
}
#case2 .aboutglasses .feat li strong {
	margin: 0 0 5px;
	display: block;
	font-weight: normal;
	font-size: 18px;
	line-height: 24px;
}

#case2 .aboutglasses h4 {
	width: 75px;
	height: 100%;
	padding: 0;
	line-height: 24px;
	background-color: #f5d2d0;
}
#case2 .aboutglasses h4 span {
	width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
	@media screen and (min-width: 600px) {
		#case2 .aboutglasses h4 {
			width: 130px;
		}
		#case2 .aboutglasses h4 span {
			padding: 26px 20px 27px;
		}
	}

.b404 {
	padding: 100px 20px;
	text-align: center;
}
.b404 .heading {
	font: normal 26px/32px "游ゴシック体", YuGothic, メイリオ, Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProW3", "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
}
.b404 p {
	font-size: 22px;
	line-height: 28px;
}





/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover,
  .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover,
  .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before,
  .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }





/*---------------------------------------------------------------------*/
/*---------------------------------------------------------------------*/
/*---------------------------------------------------------------------*/
.home-notice {
	background: #ffdcda;
	padding: 3%;
}
.home-notice > .inner {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	background: #ffffff;
	display: flex;
}
.home-notice > .inner .hd  {
	background: #eb576c;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-weight: bold;
	font-size:  0.875rem;
	padding: 1em 2em;
	white-space: nowrap;
}
.home-notice > .inner .post {
	padding: 2em;
	flex: 1;
}
.home-notice > .inner .post .title {
	color: #eb576c;
}
.home-notice > .inner .post .text {
	margin-top: 1.5em;
}

@media all and (max-width: 620px) {
	.home-notice > .inner {
		max-width: initial;
		display: block;
	}
	.home-notice > .inner .post {
		padding: 1.5em;
	}
}

.vg_bnr_211013{
	display: flex;
	justify-content: center;
	width: 100%;
	padding-left: 30px;
	padding-right: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}

.vg_bnr_211013 a{
	width: 100%;
	max-width: 550px;
	display: block;
	transition: 0.3s;
}

.vg_bnr_211013 a:hover{
	opacity: 0.9;
	transition: 0.3s;
}

.vg_bnr_211013 a img{
	width: 100%;
	height: auto;
}



/* ==========================================================================
	20220325	トレーニング予約ボタン追加
========================================================================== */

.btn-training {
	background-color: #2eb6aa;
}
.visionsalon .btn-training:hover {
	background-color: #eb576c;
}

.contactnav .btn {
	max-width: 280px;
	width: 100%;
}

@media screen and (min-width: 768px) {
	#header .hfoot--two-btn .phonecon {
		margin-right: 8px;
		text-align: right;
		width: auto;
	}
	#header .hfoot--two-btn .phone {
		font-size: 14px;
	}
	#header .hfoot--two-btn .phone strong {
		font-size: 24px;
	}
	#header .hfoot--two-btn .btn {
		font-size: 12px;
		margin-right: 8px;
		padding-right: 6px;
		padding-left: 6px;
		width: 172px;
	}
}

@media screen and (min-width: 900px) {
	#header .hfoot--two-btn .btn {
		font-size: 13px;
		width: 186px;
	}
}

@media screen and (min-width: 1140px) {
	#header .hfoot--two-btn .phonecon {
		margin-right: 16px;
	}
	#header .hfoot--two-btn .btn {
		margin-right: 16px;
		padding: 12px;
		width: 200px;
	}
}



















