@charset "UTF-8";
body { padding: 0; }

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

p { margin: 0; }

h1, h2, h3, h4 { margin: 0; }

div[class*=pure-g], div[class*=pure-u], input, textarea { -webkit-box-sizing: border-box; box-sizing: border-box; }

fieldset { border: none; margin: 0; padding: 0; }

/* common design */
html { color: #444; background-color: #fff; font-family: Georgia, "Kozuka Mincho Pro", "Kozuka Mincho Std", "小塚明朝 Pro R", "小塚明朝 Std R", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, "ＭＳ Ｐ明朝", メイリオ, Meiryo,serif; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; font-size: 1.2em; font-size: 1.5vw; }
@media all and (-ms-high-contrast: none) { html { font-family: "ＭＳ Ｐ明朝", Georgia, "Kozuka Mincho Pro", "Kozuka Mincho Std", "小塚明朝 Pro R", "小塚明朝 Std R", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, "ＭＳ Ｐ明朝", メイリオ, Meiryo,serif; } }
@media screen and (min-width: 1281px) { html { font-size: 1.2em; } }
@media screen and (max-width: 768px) { html { font-size: 1.2em; font-size: 1.875vw; } }
@media screen and (max-width: 640px) { html { font-size: 0.5em; font-size: 3vw; } }

p { line-height: 1.5em; }
p ~ p { margin-top: 1.5em; }

.img-cnt { line-height: 0; }

ul.list { padding: 0; margin: 0; list-style: none; }
ul.list li { margin-left: 1em; }
ul.list li ~ li { margin-top: 0.4166%; }
@media screen and (min-width: 961px) { ul.list li ~ li { margin-top: 4px; } }
@media screen and (max-width: 640px) { ul.list li ~ li { margin-top: 0.6666%; } }
ul.list li:before { content: ''; width: 0.3em; height: 0.3em; border-radius: 36px; background-clip: padding-box; display: inline-block; background-color: #cd0000; position: relative; left: -0.5em; top: -3px; }
ul.list.blue li:before { background-color: #2e72c5; }

a:not([href*=tel]) { opacity: 1; -webkit-transition: 0.2s linear; transition: 0.2s linear; }
a:not([href*=tel]):hover { opacity: 0.5; }
a.btn, button { -webkit-box-sizing: border-box; box-sizing: border-box; display: inline-block; font-size: 1.32em; color: #fff; background-color: #0059B7; text-align: center; text-decoration: none; }
a.btn, button { opacity: 1; -webkit-transition: 0.2s linear; transition: 0.2s linear; }
a.btn:hover, button:hover { opacity: 0.75; }

button { border-style: none; }

input, textarea { -webkit-appearance: none; border-radius: 0; }
input:not([type=submit]), textarea:not([type=submit]) { border: 1px solid #aaa; }

@media screen and (max-width: 640px) { .pc { display: none; } }

@media screen and (min-width: 641px) { .sp { display: none; } }

strong { font-weight: bold; }

.red { color: #cd0000; }

.blue { color: #2e72c5; }

/* 			base container layout */
.outer { position: relative; width: 100%; }

.inner { position: relative; -webkit-box-sizing: border-box; box-sizing: border-box; max-width: 1280px; min-width: 320px; width: 100%; margin: 0 auto; overflow: hidden; padding-left: 12.5%; padding-right: 12.5%; }
@media screen and (min-width: 1281px) { .inner { padding-left: 160px; } }
@media screen and (max-width: 640px) { .inner { padding-left: 3.125%; } }
@media screen and (min-width: 1281px) { .inner { padding-right: 160px; } }
@media screen and (max-width: 640px) { .inner { padding-right: 3.125%; } }

/* 			header,nav,footer */
/* gheader */
#gheader { -webkit-box-sizing: border-box; box-sizing: border-box; }
#gheader .inner { padding-left: 0 !important; padding-right: 0 !important; padding-top: 58.4375%; }
@media screen and (min-width: 1281px) { #gheader .inner { height: 100%; padding-top: 748px; } }
@media screen and (max-width: 640px) { #gheader .inner { height: 100%; padding-top: 58.4375%; } }
#gheader .inner > * { position: absolute; top: 0; left: 0; z-index: 1; }
#gheader .inner h1.site-title { top: 29.0106%; left: 16.25%; width: 24.1015%; }
@media screen and (max-width: 640px) { #gheader .inner h1.site-title { top: 23.5294%; left: 4.6875%; width: 41.5625%; } }
#gheader .inner p.kanzen_yoyaku { top: 46.7914%; left: 21.4062%; width: 14.0625%; }
@media screen and (max-width: 640px) { #gheader .inner p.kanzen_yoyaku { top: 52.9411%; left: 13.125%; width: 24.375%; } }
#gheader .inner h2.tel { top: 56.016%; left: 15.4687%; width: 22.4609%; }
@media screen and (max-width: 640px) { #gheader .inner h2.tel { top: 67.9144%; left: 3.4375%; width: 38.125%; } }
#gheader .inner h2.tel a { cursor: default; }
#gheader .inner #mainvisual { z-index: 0; top: 0; left: 0; }

/* gnav */
#gnav { -webkit-box-sizing: border-box; box-sizing: border-box; position: relative; }
@media screen and (max-width: 640px) { #gnav .inner { padding-left: 0; padding-right: 0; } }
#gnav ul { padding: 0; margin: 0; list-style: none; }
#gnav ul:before, #gnav ul:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; *zoom: 1; }
#gnav ul > li { float: left; }
@media screen and (max-width: 640px) { #gnav ul { float: none; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; }
  #gnav ul:before, #gnav ul:after { content: ""; } }
#gnav ul li { position: relative; height: auto; width: 20%; }
@media screen and (max-width: 640px) { #gnav ul li { width: 33.3333%; } }
#gnav ul li a { position: relative; display: block; width: 100%; padding-top: 64.5833%; }
@includ mq-up( $pcW ) { #gnav ul li a { height: 100%; padding-top: 124px; } }
@includ mq-dw( sm ) { #gnav ul li a { height: auto; padding-top: 9.6875%; } }
#gnav ul li a img { display: block; position: absolute; top: 30.6451%; }
#gnav ul li.home img { left: 40.1041%; width: 20.5729%; }
#gnav ul li.first img { left: 24.4791%; width: 51.302%; }
#gnav ul li.massage img { left: 8.8541%; width: 81.5104%; }
#gnav ul li.access img { left: 27.6041%; width: 44.0104%; }
#gnav ul li.contact img { left: 27.6041%; width: 43.4895%; }

/* main  */
main { margin-top: 2.8125%; }
@media screen and (min-width: 1281px) { main { margin-top: 36px; } }
@media screen and (max-width: 640px) { main { margin-top: 3.125%; } }
main article > .outer ~ .outer { margin-top: 5.625%; }
@media screen and (min-width: 1281px) { main article > .outer ~ .outer { margin-top: 72px; } }
@media screen and (max-width: 640px) { main article > .outer ~ .outer { margin-top: 11.25%; } }
main h3 { text-align: center; margin-bottom: 7.5%; }
@media screen and (min-width: 1281px) { main h3 { margin-bottom: 72px; } }
@media screen and (max-width: 640px) { main h3 { margin-bottom: 6.6666%; } }
main h4 { margin-top: 3.3333%; margin-bottom: 1.25%; font-weight: normal; font-size: 1.2em; }
@media screen and (min-width: 1281px) { main h4 { margin-top: 32px; } }
@media screen and (max-width: 640px) { main h4 { margin-top: 5.3333%; } }
@media screen and (min-width: 1281px) { main h4 { margin-bottom: 12px; } }
@media screen and (max-width: 640px) { main h4 { margin-bottom: 2%; } }
main h4.underline { display: inline-block; font-size: 1.32em; border-bottom: 1px solid #777777; padding-bottom: 2px; margin-top: 0; line-height: 1.2em; margin-bottom: 2.5%; }
@media screen and (min-width: 1281px) { main h4.underline { margin-bottom: 24px; } }
@media screen and (max-width: 640px) { main h4.underline { margin-bottom: 2%; } }
main .outer:last-child { margin-bottom: 10.1562%; }
@media screen and (min-width: 1281px) { main .outer:last-child { margin-bottom: 130px; } }
@media screen and (max-width: 640px) { main .outer:last-child { margin-bottom: 6.25%; } }

/* gfooter */
#gfooter > .inner > .wrapper { position: relative; height: auto; padding-top: 10.4166%; text-align: center; }
@media screen and (min-width: 1281px) { #gfooter > .inner > .wrapper { padding-top: 100px; } }
@media screen and (max-width: 640px) { #gfooter > .inner > .wrapper { padding-top: 16.6666%; } }
#gfooter > .inner > .wrapper small.copyright { display: block; position: relative; margin-top: -6.25%; }
@media screen and (min-width: 1281px) { #gfooter > .inner > .wrapper small.copyright { margin-top: -60px; } }
@media screen and (max-width: 640px) { #gfooter > .inner > .wrapper small.copyright { margin-top: -10%; } }
#gfooter > .inner > .wrapper p.pagetop { position: absolute; top: 10px; right: 0; width: 100%; }
#gfooter > .inner > .wrapper p.pagetop a { display: block; float: right; width: 8.3333%; }
@media screen and (max-width: 640px) { #gfooter > .inner > .wrapper p.pagetop a { width: 10%; } }
#gfooter > .inner > .wrapper p.pagetop a:hover { opacity: 1; -webkit-transition: 0.2s linear; transition: 0.2s linear; }
#gfooter > .inner > .wrapper p.pagetop a:hover:hover { opacity: 0.75; }


.marginBottom20{
	margin-bottom: 20px;	
}

.clickBack {
	padding-top: 25px;
	padding-bottom: 25px;
	padding-left: 60px;
	padding-right: 60px;
}

span.colorRed{
	color: #E30000;	
}