@charset "utf-8";

/* Body
------------------------------ */
html{
	overflow-x: hidden;
}
body {
	box-shadow: none;
	color: #3c2f20;
	font-family: "Hiragino Sans",ヒラギノ角ゴシック, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "verdana", sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 23pt;
	letter-spacing: 0.04em;
	-webkit-text-size-adjust: 100%!important;
	top: 0!important;
}
@font-face {
	font-family: 'logotype';
	src: url('../font/logotype.eot'); /* IE9以上用 */
	src: url('../font/logotype.eot?#iefix') format('embedded-opentype'), /* IE8以前用 */
	url('../font/logotype.woff') format('woff'), /* モダンブラウザ用 */
	url('../font/logotype.ttf') format('truetype'); /* iOS, Android用 */
	font-weight: normal;
	font-style: normal;
}
.logotype {
	font-family: 'logotype'!important;
}
a:link{
	color: #fff;
	text-decoration: none;
}
a:visited {
	color: #fff;
}
a:active {
	color: #fff;
}
a:hover {
	color: #fff;
}
a{
	transition: .3s;
}

.text_link {
	display: inline-block;
	text-decoration: none;
	color: #749e22;
}
/* reset default css */
.text_link:after {
	content: "";
	display: block;
	width: 0;
	transition: width 0.3s;
	border-bottom: 1px solid #fff;
	margin: -6px auto 0;
	border-radius: 1px;
}
.text_link:hover{
	text-decoration: none;
}
.text_link:hover:after {
	width: 100%;
}
.emphasis{
	font-weight: 600;
	color: #da001e;
}
.caution{
	position: relative;
	display: block;
	font-size: 14px;
	padding-left: 1em!important;
	text-indent: -1em;
	line-height: 1.4em;
	margin-top: 14px;
}
.caution:before{
	content: "※";
}

.spbr{
	display: none;
}

/* layout
------------------------------ */
.wrapper{
	position: relative;
	display: block;
	clear: both;
	float: none;
	width: 1250px;
	margin: 0 auto;
	padding: 35px 15px 0;
}

/* Common
------------------------------ */
.clear{
	clear: both;
	float: none;
	height: 0;
}
.fl_l{
	position: relative;
	display: block;
	float: left;
}
.fl_r{
	position: relative;
	display: block;
	float: right;
}
.fl_r .toptel img{
	width: 350px;
	height: auto;
}

.float::after,.float::after,
.wrapper::after,
.wrapper::before{
	content: "";
	display: block;
	clear: both;
}
.pict img{
	position: relative;
	display: block;
	width: 100%;
	height: auto;
}
.pict_list{
	letter-spacing: -.4em;
	line-height: 0;
}
.pict_list li{
	position: relative;
	display: inline-block;
}
.reservation_box{
	position: relative;
	display: inline-block;
	color: #FFF;
	font-size: 14px;
	font-weight: 600;
	line-height: 32px;
	text-align: center;
	background: #749e22;
	padding: 0 10px;
	vertical-align: top;
}
/*.tel{
	position: relative;
	display: inline-block;
	width: auto;
	color: #749e22;
	font-size: 40px;
	font-weight: 600;
	line-height: 1em;
	margin: 0 auto;
}*/
/*.tel:before{
	content: "";
	position: relative;
	display: inline-block;
	width: 16px;
	height: 28px;
	background: url(../images/phone.svg) no-repeat top left;
	-webkit-background-size: 16px auto;
	background-size: 16px auto;
	top: 0;
	margin-right: 8px;
}*/

/* Header
------------------------------ */
header{
	position: absolute;
	display: block;
	width: 100%;
	height: auto;
	background: rgba(33, 156, 133, .7);
	top: 0;
	z-index: 1;
}
#header_logo a,
#fix-header-logo a,.logo{
	position: relative;
	display: block;
	width: 165px;
	height: 80px;
	text-indent: -9999px;
	background: url(../images/main_icon2.png) no-repeat 0 0;
	-webkit-background-size: contain;
	background-size: contain;
}
#header_logo a span{
	display: none;
}
#header_logo a:hover,
#fix-header-logo a:hover{
	opacity: 0.6;
}
header .wrapper .toptitle{
	display:inline-block;
	vertical-align: top;
	margin-left: 20px;
}
header #lead{
	position: relative;
	color: #fff;
	font-size: 17px;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 10px;
	vertical-align: top;
}
header h2{
	color: #fff;
	font-weight: normal;
	font-size: 14px;
}
header .reservation_box{
	background: #282828;
	margin-top: 6px;
	margin-right: 7px;
}
header .businessHour{
	color: #fff;
	text-align: right;
	font-size: 14px;
}
header .businessHour span{
	font-weight: 600;
}

/* gnav */
#gnav ul{
	position: relative;
	display: block;
	width: 1250px;
	letter-spacing: -.4em;
	text-align: center;
	z-index: 1;
}
#gnav ul li,
.fix-header ul li{
	position: relative;
	display: inline-block;
	width: 245px;
	height: 70px;
	letter-spacing: .04em;
	border-left: 1px solid #fff;
}




#gnav ul li:last-child,
.fix-header ul li:last-child{
	margin-right: 0;
	border-right: 1px solid #fff;
}
#gnav ul li a,
.fix-header ul li a{
	position: relative;
	display: block;
	color: #fff;
	font-weight: 600;
	line-height: 1em;
	padding-top: 15px;
}


#gnav ul li a:hover,
.fix-header ul li a:hover{
	color: #219c85;
	background: #fff;
}




#gnav ul li a span,
.fix-header ul li a span{
	position: relative;
	display: block;
	color: #fff;
	font-size: 12px;
	font-family : Arial,'ＭＳ Ｐゴシック',sans-serif;
	font-weight: 400;
	background: url(../images/border.svg) no-repeat center top;
	-webkit-background-size: contain;
	background-size: contain;
	padding-top: 10px;
	padding-bottom: 12px;
}
#gnav ul li a:hover span,
.fix-header ul li a:hover span{
	color: #219c85;
}
/* for Scroll Fix Header */
.fix-header {
	position: fixed;
	line-height: 65px;
	top: -65px;/* 上に隠す鷹さ */
	left: 0;
	text-align: center;
	width: 100%;
	height: 84px;
	margin: 0 auto;
	background: rgba(33, 156, 133, .7);
	box-shadow: 0 0 2px rgba(0,0,0,.5);
	opacity: 0;
	z-index: 1000;
}
.customize-support .fix-header{
	margin-top: 32px;
}
#fix-header-logo {
	margin-right: 20px;
}
#fix-header-logo a{
	width: 110px;
	top: 13px;
	left: 0px;
}
.fix-header-contents{
	width: 1200px;
	margin: 0 auto;
	vertical-align: bottom;
	/*padding-top: 0;*/
}
.fix-header ul{
	letter-spacing: -.4em;
	margin: 0 auto;
}
.fix-header ul li{
	vertical-align: top;
	line-height: 1em;
	margin-top: 8px;
	width: 200px;
}

/* bxslider */
.bxslider li{
	position: relative;
	width: 100%;
	height: 750px;
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: cover;
	background-size: cover;
}
.bxslider li:first-child{
	background-image: url(../images/slide01.jpg);
}
.bxslider li:last-child{
	background-image: url(../images/slide02.jpg);
}
.bxslider li img{
	position: relative;
	display: block;
	width: 100%;
	height: auto;
}
.bxslider li:first-child .wrapper{
	position: absolute;
	display: block;
	height: 750px;
	background: url(../images/slider01_before.png) no-repeat center center;
	-webkit-background-size: auto 750px;
	background-size: auto 750px;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
}
.bxslider li:last-child .wrapper{
	position: absolute;
	display: block;
	height: 750px;
	background: url(../images/slider02_before.png) no-repeat center center;
	-webkit-background-size: auto 750px;
	background-size: auto 750px;
	left: 0;
	right: 0;
	z-index: 1;
}

.bx-wrapper .bx-pager{
	bottom: -45px!important;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active{
	background: #219c85 !important;
}
.bx-wrapper .bx-pager.bx-default-pager a{
	background: #c4c4c4!important;
}

/* main_contents
------------------------------ */
.main_contents h2{
	position: relative;
	display: block;
	font-size: 26px;
	font-family : Arial,'ＭＳ Ｐゴシック',sans-serif;
	text-align: center;
	line-height: 1em;
	margin-bottom: 30px;
	padding: 30px 0;
	background-image: url(../images/h2_bg.png), url(../images/border.svg);
	background-repeat: no-repeat, no-repeat;
	background-position: center top, bottom center;
	-webkit-background-size: 66px, 136px auto;
	background-size: 66px, 136px auto;
}
.main_contents h2 span{
	position: relative;
	display: block;
	color: #219c85;
	font-size: 12px;
	font-weight: 400;
	line-height: 1em;
	padding-top: 20px;
}
.main_contents h3{
	position: relative;
	display: block;
	color: #282828;
	font-size: 22px;
	/*font-weight: 500;*/
}
.main_contents .mainText{
	position: relative;
	display: block;
	text-align: center;
	line-height: 2.5em;
}
.borderB{
	position: relative;
	display: block;
	background: url(../images/border.svg) repeat-x 0 0;
	-webkit-background-size: 141px auto;
	background-size: 141px auto;
}
.whiteBox{
	position: relative;
	display: block;
	padding: 32px;
	background: #FFF;
}
.num{
	position: relative;
	display: block;
	width: 98px;
	height: 83px;
	color: #FFF;
	font-size: 12px;
	font-family : Arial,'ＭＳ Ｐゴシック',sans-serif;
	text-align: center;
	border-radius: 50%;
	background: #749e22;
	margin: -50px auto 0;
	padding-top: 15px;
}
.num span{
	position: relative;
	display: block;
	font-size: 46px;
	font-style: italic;
	margin-left: -4px;
}
.greenBox{
	position: relative;
	display: block;
	background: #e8efdb;
}
.img-wrap {
	position: relative;
	overflow: hidden;
}
.img-wrap:before{
	animation: img-wrap 2s cubic-bezier(.4, .4, .2, 1) forwards;
	animation-duration: 2s;
	background: #fff;
	bottom: 0;
	content: '';
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}
#greeting li:nth-child(1) .img-wrap:before{
	animation-delay: 1s;
}
#greeting li:nth-child(2) .img-wrap:before{
	animation-delay: 5s;
}
@keyframes img-wrap {
	100% {
		transform: translateY(100%);
	}
}
@keyframes fadeIn{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}

/* greeting */
#greeting {
	background: #fff;
	background-repeat:  no-repeat;
	background-size: 100%;
	text-align: center;
}
/*題名*/
#greeting .titleimg1 {
	/*margin-top: 110px;*/
	margin-top: 50px;
}
#greeting .titleimg1 img{
	height: 65px;
}
#greeting .sectitle h2{
	font-size: 26px;
	margin: 15px 0 10px;
	padding: 0;
}
#greeting .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
#greeting .titleimg2 img{
	width: 165px;
	height: auto;
}
/*題名*/
/*文章*/
#greeting .greet1{
	margin-bottom: 50px;
}
#greeting .greet1 p{
	line-height: 2.5;
	letter-spacing: 2;
}
#greeting .greet2{
	/* margin-bottom: 70px; */
	margin-bottom: 30px;
}
#greeting .greet2 p{
	line-height: 2.5;
	letter-spacing: 2;
}
/*文章*/
/* slogan */
#greeting .slogan{
	margin-bottom: 70px;
}
#greeting .slogan h3{
	position: relative;
	display: block;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: .05em;
	margin-bottom: 20px;
	padding-bottom: 20px;
	background: url(../images/border-bottom.png) no-repeat center bottom / auto 5px;
}
#greeting .slogan h4{
	color: #219C85;
	font-size: 24px;
	font-weight: 500;
	line-height: 180%;
	letter-spacing: .05em;
}
/* //slogan */
/*resume*/
#greeting .resume{
	background: #d6e9e6;
	width: 1250px;
	margin: 0 auto;
	padding: 30px;
	box-sizing: border-box;
}
#greeting .resume:after {
	content: "";
	display: block;
	clear: both;
}
#greeting .resume .column1 img{
	width: 260px;
}
#greeting .resume .column1{
	float: left;
}
#greeting .resume .column2{
	width: 500px;
	float: left;
	text-align: left;
	margin-left:45px;
}
/*#greeting .resume .column2 .myname br{
	display: none;
}*/
#greeting .resume .column2 h3{
	display: inline-block;
	margin-right: 25px;
	text-align: left;
}
#greeting .resume .column2 .nameimg{
	display: inline-block;
	position: relative;
}
#greeting .resume .column2 img{
	position: absolute;
	bottom: -4px;
	width: 235px;
	text-align: left;
	line-height: 10px;
}
#greeting .resume .column2 p{
	margin-top: 5px;
	margin-bottom: 14px;
}
#greeting .resume .column2 h4{
	font-size: 16px;
	border: 1px solid #219c85;
	color:  #219c85;
	display: inline;
	padding: 7px 20px;
	font-weight: 500;
}
#greeting .resume .column2 dl{
	display: inline-block;
	text-align: left;
	font-size: 14px;
	font-weight: 600;
	margin-top: 14px;
}
#greeting .resume .column2 dl dt{
	display: inline-block;
	width: 150px;
	color: #219c85;
	margin-right: 15px;
}
#greeting .resume .column2 dl dt div{
	position: relative;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #219c85;
	display: inline-block;
	margin-right: 15px;
}
#greeting .resume .column2 dl dt div:before{
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
  	height: 53px;
	border-left: 1px solid #219c85;
}
#greeting .resume .column2 dl dd{
	display: inline-block;
}
#greeting .resume .column3{
	width: 370px;
	float: left;
	font-weight: 600;
	margin-top: 82px;
	margin-left: 5px;
	text-align: left;
}
#greeting .resume .column3 h4{
	font-size: 16px;
	border: 1px solid #219c85;
	color:  #219c85;
	display: inline;
	padding: 7px 20px;
	margin: 30px 0;
	font-weight: 500;
}
#greeting .resume .column3 p{
	font-size: 14px;
	margin: 14px 0;
}
/*resume*/
/*greeting*/










/*concept*/
.concept {
	background: #fff;
	background-repeat:  no-repeat;
	background-size: 100%;
	text-align: center;
}
/*題名*/
.concept .titleimg1 {
	margin-top: 110px;
}
.concept .titleimg1 img{
	height: 65px;
}
.concept .sectitle h2{
	font-size: 26px;
	margin: 15px 0 10px;
	padding: 0;
}
.concept .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
.concept .titleimg2 img{
	width: 165px;
	height: auto;
}
/*題名*/


/*trouble全体*/
.concept .trouble{
	background: url(../images/background_01.jpg);
	background-repeat:  no-repeat;
	background-size: cover;
	padding: 75px 0;
}
.concept .trouble .wrapper{
	background: rgba(255, 255, 255, .7);
	margin: 0 auto;
	color: #282828;
}
/*trouble全体*/
/*悩み*/
.concept .trouble .wrapper h3{
	margin-top: 60px;
	margin-bottom: 10px;
	font-size: 28px;
	font-weight: 500;
}
.concept .trouble .wrapper ul{
	max-width: 770px;
	margin: 0 auto;
}
.concept .trouble .wrapper ul li{
	display: inline-block;
	width: 360px;
	margin-top: 40px;
	text-align: left;
}
.concept .trouble .wrapper ul li:nth-child(2n){
	margin-left: 50px;
}
.concept .trouble .wrapper ul img{
	height: 30px;
}
.concept .trouble .wrapper ul h4{
	display: inline-block;
	color: #219c85;
	font-size: 24px;
	margin-left: 5px;
	vertical-align: top;
	font-weight: 500;
}
/*悩み*/
/*答え*/
.concept .trouble .wrapper .answer1{
	font-size: 18px;
	font-weight: 500;
	margin-top: 80px;
	margin-bottom: 15px;
}
.concept .trouble .wrapper .answer2{
	font-size: 28px;
	font-weight: 500;
}
.concept .trouble .wrapper .border{
	height: 5px;
	margin-top: 10px;
	margin-bottom: 60px;
}
.concept .trouble .wrapper .border img{
	width: 675px;
	height: 5px;
}
/*答え*/


/*then*/
.concept .trouble .wrapper .then{
	padding-bottom: 100px;
}
.concept .trouble .wrapper .then h5{
	height: 200px;
	width: 200px;
	border-radius: 50%;
	background: #282828;
	color: #fff;
	display: inline-block;
	vertical-align: middle;
	font-size: 23px;
	position: relative;
	font-weight: 500;
}
.concept .trouble .wrapper .then h5 span{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 200px;
}
.concept .trouble .wrapper .then img{
	height: 35px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 50px;
}


/*then*/

/*band1*/
.concept .band1{
	background: url(../images/background_02.jpg);
	background-repeat:  no-repeat;
	background-size: cover;
	height: 135px;
	width: 100%;
	position: relative;
}
.concept .band1:before{
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	right: 50%;
	bottom: -42px;
	transform: translateX(50%);
	border: 22px solid transparent;
	border-top: 22px solid #2CA897;
}
.concept .band1 p{
	color: #fff;
	font-size: 20px;
	padding-top: 30px;
	font-weight: 500;
}
.concept .band1 h3{
	color: #fff;
	font-size: 28px;
	padding-top: 23px;
	font-weight: 500;
	line-height: 150%;
}
/*band1*/




.concept .wrapper .motto h4{
	font-size: 20px;
	color: #219c85;
	letter-spacing: 2;
	margin-top: 50px;
	margin-bottom: 15px;
	font-weight: 500;
}
.concept .wrapper .motto h5{
	font-size: 20px;
	color: #282828;
	letter-spacing: 2;
	margin-bottom: 20px;
	font-weight: 500;
}
.concept .wrapper .motto h5 span{
	text-decoration: underline;
}
.concept .wrapper .motto p{
	font-size: 16px;
	color: #282828;
	letter-spacing: 2;
	margin-bottom: 60px;
	font-weight: 500;
}



.concept .feature{
	margin-bottom: 80px;
}
.concept .feature:after {
	content: "";
	display: block;
	clear: both;
}
.concept .feature .no1{
	float: left;
}
.concept .feature .no2{
	float: left;
	margin-left: 50px;
}
.concept .feature .no1,
.concept .feature .no2{
	width: 600px;
}

.concept .feature .no1 .g1,
.concept .feature .no2 .g2{
	width: 600px;
	background: #d6e9e6;
	/*height: 255px;*/
}
.concept .feature .no1 .g1:after,
.concept .feature .no2 .g2:after{
	content: "";
	display: block;
	clear: both;
}
.concept .feature .no1 .g1 .g1_left,
.concept .feature .no2 .g2 .g2_left{
	width: 330px;
	float: left;
	text-align: left;
	margin: 25px 0 0 25px;
}
.concept .feature .no1 .g1 .g1_left h6,
.concept .feature .no2 .g2 .g2_left h6{
	margin-top: 20px;
	font-size: 22px;
	line-height: 1.5;
	font-weight: 500;
}
.concept .feature h6 span{
	position: relative;
	display: block;
	font-size: 16px;
	margin-top: 10px;
}
.concept .feature .no1 .g1 .g1_left .no01,
.concept .feature .no2 .g2 .g2_left .no02{
	height: 55px;
}
.concept .feature .no1 .g1 .pic1,
.concept .feature .no2 .g2 .pic2{
	width: 240px;
	height: 255px;
	display: :inline-block;
	float: right;
}
.concept .feature .no1 p,
.concept .feature .no2 p{
	text-align: left;
	margin-top: 20px;
}

/*menulist*/
.concept .menulist{
	background: #219c85;
	position: relative;
	height: 370px;
}
.concept .menulist .zindex{
	position: relative;
}
.concept .menulist .zindex .ribbon{
	width: 785px;
	position: absolute;
	top: 40px;
	left: -20px;
	/*z-index: 5;*/
}
.concept .menulist .zindex h4{
	position: absolute;
	color: #fff;
	font-weight: 500;
	font-size: 24px;
	text-align: left;
	z-index: 10;
	top: 65px;
	left: 30px
}
.concept .menulist .zindex .insolemenu{
	width: 100px;
	height: 10px;
	position: absolute;
	top: 76px;
	left: 420px;
	z-index: 10;
}



.concept .menulist a {
	display: inline-block;
	width: 270px;
	height: 115px;
	background: #fff;
	margin:200px 10px 55px;
	color: #282828;
	vertical-align: center;
}
.concept .menulist a:hover{
	opacity: .7;
	transition: .3s;
	cursor: pointer;
}
.concept .menulist a .arrow{
	height: 30px;
	width: 30px;
	background-image: url(../images/arrow.png);
	background-size: contain;
  	background-repeat: no-repeat;
  	margin: 10px auto 0;
}
.concept .menulist a h5{
	display: inline-block;
	font-size: 23px;
	font-weight: 500;
	margin-top: 35px;
}



/*menulist*/


/*ABCD*/
.concept .menulist .menuA{
	position: relative;
}
.concept .menulist .menuA:before{
	position: absolute;
	content: "";
	width: 65px;
	height: 65px;
	background: #282828;
	border-radius: 50%;
	top: -45px;
	left: 50%;
	transform: translateX(-50%);
}
.concept .menulist .menuA:after{
	position: absolute;
	content: "A";
	color: #fff;
	top: -27px;
	left: 50%;
	font-size: 30px;
	transform: translateX(-50%);
}
.concept .menulist .menuB{
	position: relative;
}
.concept .menulist .menuB:before{
	position: absolute;
	content: "";
	width: 65px;
	height: 65px;
	background: #282828;
	border-radius: 50%;
	top: -45px;
	left: 50%;
	transform: translateX(-50%);
}
.concept .menulist .menuB:after{
	position: absolute;
	content: "B";
	color: #fff;
	top: -27px;
	left: 50%;
	font-size: 30px;
	transform: translateX(-50%);
}
.concept .menulist .menuC{
	position: relative;
}
.concept .menulist .menuC:before{
	position: absolute;
	content: "";
	width: 65px;
	height: 65px;
	background: #282828;
	border-radius: 50%;
	top: -45px;
	left: 50%;
	transform: translateX(-50%);
}
.concept .menulist .menuC:after{
	position: absolute;
	content: "C";
	color: #fff;
	top: -27px;
	left: 50%;
	font-size: 30px;
	transform: translateX(-50%);
}
.concept .menulist .menuD{
	position: relative;
}
.concept .menulist .menuD:before{
	position: absolute;
	content: "";
	width: 65px;
	height: 65px;
	background: #282828;
	border-radius: 50%;
	top: -45px;
	left: 50%;
	transform: translateX(-50%);
}
.concept .menulist .menuD:after{
	position: absolute;
	content: "D";
	color: #fff;
	top: -27px;
	left: 50%;
	font-size: 30px;
	transform: translateX(-50%);
}
/*ABCD*/





/*SmileFootのインソール(中敷き)*/
.sf_insole {
	margin-top: 80px;
}

.sf_insole .ourinsole {
	margin: 0 auto 60px;
	width: 1250px;
	border-bottom: 3px solid #e2e2e2;
	text-align: left;
	position: relative;
}
.sf_insole .ourinsole:before{
	content: "";
  	position: absolute;
  	left: 0;
  	bottom: -3px;
  	width: 420px;
  	height: inherit;
  	border-bottom: 3px solid #219c85;
}
.sf_insole .ourinsole img{
	height: 50px;
	margin: 0 20px 0px 0;
}
.sf_insole .ourinsole h3{
	display: inline-block;
	font-size:28px;
	vertical-align: top;
	margin-top: 15px;
	font-weight: 500;
	/*line-height: -28px;*/
}
.sf_insole:after{
	content: "";
	display: block;
	clear: both;
}
.sf_insole .leftclm{
	width: 790px;
	text-align: left;
	float: left;
}
.sf_insole .leftclm h4{
	color: #219c85;
	font-size: 23px;
	font-weight: 500;
	line-height: 150%;
	margin: 40px 0 10px;
}
.sf_insole .leftclm h4:first-child{
	margin-top: 0;
}
.sf_insole .leftclm .effect{
	background: #d6e9e6;
	margin-top: 25px;
	padding: 20px 40px;
	box-sizing: border-box;
}
.sf_insole .leftclm .effect .borderb{
	border-bottom: 1px solid #219c85;
	margin-top: 10px;
}
.sf_insole .leftclm .effect .borderb:last-child{
	border-bottom:none;
}
.sf_insole .leftclm .effect img{
	width: 30px;
	height: 30px;
}
.sf_insole .leftclm .effect p{
	display: inline-block;
	vertical-align: top;
	margin-left: 20px;
	font-size: 20px;
	font-weight: 500;
}


.sf_insole .rightclm {
	width: 450px;
	float: right;
	text-align: right;
}
.sf_insole .rightclm img{
	width: 415px;
	height: 270px;
	margin-bottom: 57px;
	display: block;
	margin-left: 33px;
}

/*SmileFootのインソール(中敷き)*/



/*////////////////////////////
***************************
////////////////////////////
*/






/* about */
#about {
	text-align: center;
	background: url(../images/background_04.jpg);
	background-repeat:  no-repeat;
	background-size: 100%;
}
/*題名*/
#about .wrapper .titleimg1 {
	margin-top: 110px;
}
#about .wrapper .titleimg1 img{
	height: 65px;
}
#about .wrapper .sectitle h2{
	font-size: 26px;
	margin: 15px 0 10px;
	padding: 0;
}
#about .wrapper .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
#about .wrapper .titleimg2 img{
	width: 165px;
	height: auto;
}
/*題名*/



/*about*/
.leftleft{
	text-align: left;
}
.leftleft h3{
	font-size: 17px;
	color: #219c85;
	font-weight: 500;
	margin-bottom: 10px;
}
.leftleft img{
	width: 155px;
}
.leftleft p{
	font-size: 14px;
	line-height: 1.8;
	margin-top: 15px;
}
.leftleft p .bold{
	color: #219c85;
	font-weight: 500;
}
.leftleft .bookinfo{
	margin: 20px 0;
}
.leftleft .bookinfo h4{
	background: #219c85;
	font-size: 16px;
	color: #fff;
	display: inline-block;
	width: 100px;
	padding: 3px;
	margin-right: 10px;
	text-align: center;
	font-weight: 500;
	vertical-align: middle;
}
.leftleft .bookiinfo img {
	width: 350px;
	height: auto;
	vertical-align: middle;
}

.leftleft .bookbtn a{
	width: 260px;
	height: 60px;
	font-size: 16px;
	color: #fff;
	background: #282828;
	margin-bottom: 20px;
	display: inline-block;
	line-height: 60px;
	text-align: center;
}
.leftleft .bookbtn a:hover{
	opacity: .7;
	transition: .3s;
	cursor: pointer;
}
.leftleft table tr th{
	border: 1px solid #d6e9e6;
	vertical-align: middle;
	text-align: center;
	background: #219c85;
	padding: 7px 15px;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}
.leftleft table tr td{
	border: 1px solid #d6e9e6;
	vertical-align: middle;
	text-align: center;
	padding: 7px 15px;
	font-size: 14px;
}
.leftleft table tr th:first-child{
	text-align: left;
	padding-right: 45px;
}
.leftleft table tr td:first-child{
	text-align: left;
	padding-right: 45px;
}




.rightright p{
	text-align: left;
	font-size: 14px;
	margin-bottom: 15px;
	line-height: 1.8;
}
.rightright p span{
	color: #219c85;
}

.picture{
	margin-top: 40px;
	margin-bottom: 140px;
	text-align: left;
}
.picture img{
	width: 600px;
	height: 355px;
}
.picture img:last-child{
	margin-left: 42px;
}


/*about*/




/*//////////////////////////////
******************************
//////////////////////////////*/






/* menu */
#menu {
	text-align: center;
}
#menu .bg {
	background: url(../images/background_06.jpg);
	background-repeat:  no-repeat;
	background-size: cover;
	padding-top: 50px;
	padding-bottom: 110px;
}

/*題名*/
#menu .titleimg1 {
	margin-top: 110px;
}
#menu .titleimg1 img{
	height: 65px;
}
#menu .sectitle h2{
	font-size: 26px;
	margin: 15px 0 10px;
	padding: 0;
}
#menu .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
#menu .titleimg2 img{
	width: 165px;
	height: auto;
}
/*題名*/


.menuprice {
	margin: 0 auto 60px;
	width: 1250px;
	border-bottom: 3px solid #fff;
	text-align: left;
	position: relative;
}
.menuprice:before{
	content: "";
  	position: absolute;
  	left: 0;
  	bottom: -3px;
  	width: 420px;
  	height: inherit;
  	border-bottom: 3px solid #219c85;
}
 .menuprice img{
	height: 50px;
	margin: 0 20px 0px 0;
}
.menuprice h3{
	display: inline-block;
	font-size:28px;
	vertical-align: top;
	margin-top: 15px;
	font-weight: 500;
	/*line-height: -28px;*/
}


#menu .contents {
	/*display: flex;
	justify-content: space-between;*/
	width: 1250px;
	background: #219c85;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 35px 35px 35px 140px;
	position: relative;
	margin-bottom: 30px;
}
#menu .contents.flex:before {
	content:"";
	position: absolute;
	top: 0;
	/*right: 440px;*/
	right: 500px;
	width: 1px;
	height: 100%;
	background: #fff;
	opacity: .5;
}
#menu .contents.flex{
	display: flex;
	justify-content: space-between;
}
/*#menu .contents:after {
	content: "";
    display: block;
  	clear: both;
}*/
#menu .contents .mention {
	/*width: 630px;*/
	/*float: left;*/
	/*width: 550px;*/
	text-align: left;
	color: #fff;
	position: relative;
}
#menu .contents .mention:before {
	position: absolute;
	content: "";
	top: 0;
	left: -100px;
	width: 70px;
	height: 70px;
	background: #fff;
	border-radius: 50%;
	font-size: 34px;
	color: #282828;
}
#menu .contents.flex .mention{
	width: 550px;
}
/*abcd*/
#menu .contents .abcd1 {
	position: relative;
}
#menu .contents .abcd2 {
	position: relative;
}
#menu .contents .abcd3 {
	position: relative;
}
#menu .contents .abcd4 {
	position: relative;
}

#menu .contents .abcd1:after {
	position: absolute;
	content:"A";
	top: 20px;
	left: -77px;
	color: #282828;
	font-size: 33px;
}
#menu .contents .abcd2:after {
	position: absolute;
	content:"B";
	top: 20px;
	left: -77px;
	color: #282828;
	font-size: 33px;
}
#menu .contents .abcd3:after {
	position: absolute;
	content:"C";
	top: 20px;
	left: -77px;
	color: #282828;
	font-size: 33px;
}
#menu .contents .abcd4:after {
	position: absolute;
	content:"D";
	top: 20px;
	left: -77px;
	color: #282828;
	font-size: 33px;
}
/*abcd*/

#menu .contents .mention h4{
	font-size: 23px;
	margin-bottom: 20px;
	display: inline-block;
	font-weight: 500;
	padding-top: 125px;
	margin-top: -125px;
}
#menu .contents .mention p{
	font-size: 16px;
}
#menu .contents .mention p::after{
	content: "";
	position: relative;
	display: block;
	width: 100%;
	height: 1px;
	margin: 20px auto 30px;
	background: rgba(255,255,255,.5);
}
#menu .contents.flex .mention p::after{
	display: none;
}
#menu .contents table {
	/*display: inline-block;*/
	/*float: right;*/
	/*max-width: 423px;*/
	width: 650px;
	box-sizing: border-box;
	margin: auto 0;
	background: #fff;
	/*position: absolute;
	top: 50%;
	right: 35px;
	transform: translateY(-50%);*/

}
#menu .contents.flex table{
	max-width: 423px;
}
#menu .contents table th{
	border: 1px solid #219c85;
	width: 175px;
	height: 50px;
	vertical-align: middle;
	color: #282828;
	font-weight: 500;
}
#menu .contents table td{
	border: 1px solid #219c85;
	width: 175px;
	height: 50px;
	vertical-align: middle;
	color: #219c85;
	font-weight: 500;
}
#menu .contents table td:last-child{
	height: auto;
	text-align: right;
	padding: 10px 20px 10px 0;
}
#menu .contents table td .caution{
	font-size: 12px;
	line-height: 1;
	margin: 0;
}








#menu .make{
	background: #d6e9e6;
	width: 100%;
	padding-bottom: 110px;
}
/*band*/
#menu .make .band2{
	background: url(../images/background_02.jpg);
	background-repeat:  no-repeat;
	background-size: 100%;
	height: 135px;
	position: relative;
}
#menu .make .band2:before{
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	right: 50%;
	bottom: -42px;
	transform: translateX(50%);
	border: 22px solid transparent;
	border-top: 22px solid #2CA897;
}
#menu .make .band2 h3{
	color: #fff;
	line-height: 135px;
	font-size: 28px;
	font-weight: 500;
}
/*band*/
/*makeの全体*/
#menu .make .raw1,
#menu .make .raw2 {
	width: 1250px;
	margin: 0 auto;
}
#menu .make .raw1{
	margin-top: 115px;
	margin-bottom: 60px;
}
#menu .make .raw1:after,
#menu .make .raw2:after {
	content: "";
    display: block;
  	clear: both;
}
/*makeの全体*/
/*番号*/
#menu .make .no1,
#menu .make .no2,
#menu .make .no3,
#menu .make .no4,
#menu .make .no5,
#menu .make .no6,
#menu .make .no7{
	position: relative;
}
#menu .make .no1:before,
#menu .make .no2:before,
#menu .make .no3:before,
#menu .make .no4:before,
#menu .make .no5:before,
#menu .make .no6:before,
#menu .make .no7:before{
   	content: "";
	position: absolute;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #219c85;
}
#menu .make .no1:after{
	content: "1";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
#menu .make .no2:after{
	content: "2";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
#menu .make .no3:after{
	content: "3";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
#menu .make .no4:after{
	content: "4";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
#menu .make .no5:after{
	content: "5";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
#menu .make .no6:after{
	content: "6";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
#menu .make .no7:after{
	content: "7";
	position: absolute;
	top: -14px;
	right: 50%;
	transform: translateX(50%);
	font-size: 30px;
	color: #fff;
}
/*番号*/
/*makeのグループ*/
#menu .make .group {
	width: 285px;
	float: left;
	margin-right: 35px;
}
#menu .make .group:last-child{
	margin-right: 0px;
}
#menu .make .group img {
	width: 285px;
	height: 285px;
}
#menu .make .group h4 {
	margin: 5px 0;
	color: #219c85;
	font-weight: 500;
}
#menu .make .group p{
	margin-right: 10px;
	text-align: left;
	line-height: 1.5;
}
/*makeのグループ*/
/*makeのグループ2のみ*/
#menu .make .group2 {
	width: 610px;
	float: left;
	margin-right: 35px;
}
#menu .make .group2 img{
	width: 305px;
	height: 285px;
}
#menu .make .group2 h4 {
	margin: 5px 0;
	color: #219c85;
	font-weight: 500;
}
#menu .make .group2 p{
	margin-right: 10px;
	text-align: left;
}
/*makeのグループ2のみ*/
/* menu ここまで */




/*お客様の声*/
.voice {
	background: url(../images/background_03.jpg), #fff;
	background-repeat:  no-repeat;
	background-size: 100%;
}
.voice .title {
	text-align: center;
}


/*題名*/
.voice .titleimg1 {
	margin-top: 110px;
}
.voice .titleimg1 img{
	height: 65px;
}
.voice .sectitle h2{
	font-size: 26px;
	margin: 15px 0 10px;
	padding: 0;
	color: #fff;
}
.voice .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
.voice .titleimg2 img{
	width: 165px;
	height: auto;
}
/*題名*/




.voice .wrapper .group {
	background: rgba(214, 233, 230, .7);
	padding: 25px;
	color: #282828;
	/*width: 1250px;*/
	margin: 0 auto 35px;
}
.voice .wrapper .group .border {
	position: relative;
	border-bottom: 3px solid #fff;
	vertical-align: bottom;
}
.voice .wrapper .group .border:after {
	content: "";
    display: block;
  	clear: both;
}
.voice .wrapper .group .border:before{
	content: "";
  	position: absolute;
  	left: 0;
  	bottom: -3px;
  	width: 420px;
  	height: inherit;
  	border-bottom: 3px solid #219c85;
}
.voice .wrapper .group .border img{
	height: 50px;
	display: inline-block;
	float: left;
	margin-right: 20px;
	margin-bottom: 10px;
}
.voice .wrapper .group .border h3{
	display: inline-block;
	font-size: 26px;
	float: left;
	margin-top: 10px;
	color: black;
	font-weight: 500;
}
.voice .wrapper .group .border p{
	display: inline-block;
	font-size: 20px;
	float: right;
	color: black;
	font-weight: 500;
}
.voice .wrapper .group p{
	padding-top: 15px;
}
/*お客様の声*/





/*ご予約・お問い合わせ*/
.book {
	background: url(../images/background_05.jpg),#fff;
	background-repeat:  no-repeat;
	background-size: 100%;
	text-align: center;
}

/*題名*/
.book .titleimg1 {
	margin-top: 110px;
}
.book .titleimg1 img{
	height: 65px;
}
.book .sectitle h2{
	font-size: 26px;
	margin: 15px 0 10px;
	padding: 0;
}
.book .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
.book .titleimg2 img{
	width: 165px;
	height: auto;
}
/*題名*/


.book .bookbtn a{
	width: 260px;
	height: 60px;
	font-size: 16px;
	color: #fff;
	background: #282828;
	margin-bottom: 65px;
	display: inline-block;
	line-height: 60px;
}
.book .bookbtn a:hover{
	opacity: .7;
	transition: .3s;
	cursor: pointer;
}

.book .bookinfo {
	margin-bottom: 60px;
}
.book .bookinfo h4{
	background: #282828;
	font-size: 16px;
	color: #fff;
	display: inline-block;
	width: 100px;
	padding: 3px;
	margin-right: 10px;
	vertical-align: middle;
}
.bookinfo img {
	width: 350px;
	height: auto;
	vertical-align: middle;
}
.book .bookinfo p{
	font-size: 14px;
	margin-top: 15px;
}
.book .bookask {
	margin-bottom: 35px;
	line-height: 40px;
}
.book .bookask span{
	color: #219c85;
}
.book form {
	width: 925px;
	margin: 0 auto;
}





.book form input {
	background: #d6e9e6;
	width: 760px;
	height: 45px;
	border: solid 0;
	margin-top: 15px;
	font-size: 100%;
}
.book form textarea {
	background: #d6e9e6;
	width: 760px!important;
	height: 145px;
	border: solid 0;
	margin-top: 15px;
	/*margin-bottom: 40px;*/
	font-size: 100%;
}


/*項目名*/
.book form .name{
	position: relative;
}
.book form .name:before{
	content: "お名前";
	position: absolute;
	top: 15px;
	left: -70px;
	font-size: 16px;
	color: #282828;
	font-weight: 500;
}
.book form .name:after{
	content: "*";
	position: absolute;
	top: 15px;
	left: -15px;
	font-size: 16px;
	color: #219c85;
	font-weight: 500;
}
.book form .mail{
	position: relative;
}
.book form .mail:before{
	content: "メールアドレス";
	position: absolute;
	top: 15px;
	left: -70px;
	font-size: 16px;
	color: #282828;
	font-weight: 500;
}
.book form .mail:after{
	content: "*";
	position: absolute;
	top: 15px;
	left: 47px;
	font-size: 16px;
	color: #219c85;
	font-weight: 500;
}
.book form .tel{
	position: relative;
}
.book form .tel:before{
	content: "電話番号";
	position: absolute;
	top: 15px;
	left: -70px;
	font-size: 16px;
	color: #282828;
	font-weight: 500;
}
.book form .tel:after{
	content: "*";
	position: absolute;
	top: 15px;
	left: 0;
	font-size: 16px;
	color: #219c85;
	font-weight: 500;
}
.book form .message{
	position: relative;
}
.book form .message:before{
	content: "メッセージ";
	position: absolute;
	top: 15px;
	left: -70px;
	font-size: 16px;
	color: #282828;
	font-weight: 500;
}
/*.book form .message:after{
	content: "*";
	position: absolute;
	top: 15px;
	left: 17px;
	font-size: 16px;
	color: #219c85;
	font-weight: 500;
}*/
/*項目名*/


.book .info_scroll{
	width: 760px;
	height: 95px;
	overflow: scroll;
	margin: 30px auto 40px;
	padding: 20px;
	border: 1px solid #219c85;
	text-align: left;
	font-size: 12px;
	box-sizing: border-box;
	line-height: 1.7em;
}
.book .submit button {
	width: 260px;
	height: 55px;
	background: #282828;
	font-size: 16px;
	color: #fff;
	margin-bottom: 115px;
	/*margin-bottom: 50px;*/
	text-shadow: none;
}
.book .submit button:hover{
	opacity: .7;
	transition: .3s;
	cursor: pointer;
}
.book .submit button.mfp_element_reset{
	color: #282828;
	background: #FFF;
	border: 1px solid #282828;
	margin-right: 2em;
}
/*ご予約・お問い合わせ*/

/* 240307 価格改定 */
#price_revision{
	text-align: center;
}
#price_revision .titleimg1 {
	margin-top: 50px;
}
#price_revision .titleimg1 img{
	height: 65px;
}
#price_revision .sectitle h2{
	font-size: 26px;
	line-height: 1;
	margin: 15px 0 55px;
	padding: 0;
}
#price_revision .sectitle h2::after{
	content: "";
	position: relative;
	display: block;
	width: 163px;
	height: 20px;
	background: url(../images/title_after_waveGreen.svg) no-repeat center center / contain;
	margin: 17px auto 0;
}
#price_revision .sectitle h2 .en{
	position: relative;
	display: block;
	color: #27A290;
	font-size: 12px;
	font-weight: 400;
	font-family: "Arial", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;
	line-height: 1;
	margin-top: 20px;
	padding-top: 0;
}
#price_revision .titleimg2{
	margin-top: 20px;
	margin-bottom: 40px;
}
#price_revision .titleimg2 img{
	width: 165px;
	height: auto;
}
#price_revision p:last-child{
	margin-top: 1em;
}
/* //240307 価格改定 */


#instagram{
	padding-top: 50px;
}
#instagram .bookbtn{
	position: relative;
	display: block;
	width: 260px;
	height: 60px;
	overflow: hidden;
	border-radius: 13px;
	margin: 30px auto 0;
}
#instagram .bookbtn a{
	position: relative;
	display: block;
	width: 100%;
	height: 60px;
	font-weight: 600;
	text-align: center;
	line-height: 60px;
	background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	border-radius: 13px;
}
#instagram .bookbtn a:hover{
	opacity: .7;
}
#instagram .bookbtn a span{
	position: relative;
	display: inline-block;
	z-index: 1;
}
#instagram .bookbtn a span::before{
	content: "";
	position: relative;
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url(../images/icon_instaW.svg) no-repeat center center;
	background-size: contain;
	vertical-align: middle;
	margin: -3px 10px 0 0;
}
#instagram .bookbtn a::before{/*グラデーションを重ねるため*/
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;/*全体を覆う*/
	height: 100%;/*全体を覆う*/
	background: -webkit-linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
	background: linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
}

/*footer*/
footer {
	width: 100%;
	height: 500px;
	background: url(../images/footer_img.jpg);
	background-repeat:  no-repeat;
	background-size: cover;
	text-align: center;
	color: #fff;
}
footer ul {
	padding-top: 90px;
	padding-bottom: 70px;
}
footer ul li {
	display: inline-block;
	font-size: 16px;
	margin: 0 35px;
	font-weight: bold;
	font-weight: 500;
}
footer .footertitle h2{
	font-size: 17px;
	padding-bottom: 15px;
	font-weight: 500;
}
footer .footertitle img {
	width: 165px;
	height: auto;
}
footer .footertitle img:hover{
	opacity: .6;
}
footer .footerinfo {
	vertical-align: bottom;
	padding-top: 30px;
	font-size: 14px;
	line-height: 24px;
}
footer .footerinfo p span{
	font-weight: 500;
}
footer .footerinfo　p {
	margin-bottom: 70px;
}
/*footer*/
/*Copyright*/
#copyright{
	position: relative;
	display: block;
	width: 100%;
	height: 94px;
	color: #FFF;
	font-size: 12px;
	text-align: center;
	letter-spacing: .1em;
	line-height: 94px;
	background: #219c85;
}
#copyright a{
	color: #FFF;
	line-height: 2em;
}
#copyright a:after{
	border-color: #FFF;
}
/*Copyright*/

/*////////////////////////////////
********************************
////////////////////////////////*/

/* page top */
.pagetop {
	position: fixed;
	bottom: 60px;
	right: 60px;
	opacity: 0;
	filter: alpha(opacity=0);
	-webkit-transform: scale(1.5);
	-moz-transform: scale(1.5);
	-ms-transform: scale(1.5);
	-o-transform: scale(1.5);
	transform: scale(1.5);
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
	z-index: 10!important;
}
.pagetop a{
	display: block;
	width: 46px;
	height: 46px;
	text-indent: -9999px;
	background: #d6e9e6;
	border: 1px solid #219c85;
	padding: 5px;
}
.pagetop a::before{
	content: "";
	position: absolute;
	display: block;
	width: 35px;
	height: 20px;
	background: url(../images/arrow.png) no-repeat top center;
	-webkit-background-size: contain;
	background-size: contain;
	-moz-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	-o-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	transform: rotate(-180deg);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.pagetop.show{
	opacity: 1;
	filter: alpha(opacity=100);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}
.pagetop a:hover{
	opacity: .7;
}


@supports (-ms-ime-align: auto) {
	/* Edge のみ適用される */
	.sf_insole .rightclm img{
		margin-bottom: 64px;
	}
}
@-moz-document url-prefix(){
	/* Firefox のみ適用される */
	.sf_insole .rightclm img{
		margin-bottom: 64px;
	}
}
@media all and (-ms-high-contrast: none){
	/*IEのみ適用*/
	.sf_insole .rightclm img{
		margin-bottom: 64px;
	}
	.concept .menulist .menuA:after{
		position: absolute;
		content: "A";
		color: #fff;
		top: -22px;
		left: 50%;
		font-size: 30px;
		transform: translateX(-50%);
	}
	.concept .menulist .menuB:after{
		position: absolute;
		content: "B";
		color: #fff;
		top: -22px;
		left: 50%;
		font-size: 30px;
		transform: translateX(-50%);
	}
	.concept .menulist .menuC:after{
		position: absolute;
		content: "C";
		color: #fff;
		top: -22px;
		left: 50%;
		font-size: 30px;
		transform: translateX(-50%);
	}
	.concept .menulist .menuD:after{
		position: absolute;
		content: "D";
		color: #fff;
		top: -22px;
		left: 50%;
		font-size: 30px;
		transform: translateX(-50%);
	}
	#menu .contents .abcd1:after {
		position: absolute;
		content:"A";
		top: 25px;
		left: -77px;
		color: #282828;
		font-size: 33px;
	}
	#menu .contents .abcd2:after {
		position: absolute;
		content:"B";
		top: 25px;
		left: -77px;
		color: #282828;
		font-size: 33px;
	}
	#menu .contents .abcd3:after {
		position: absolute;
		content:"C";
		top: 25px;
		left: -77px;
		color: #282828;
		font-size: 33px;
	}
	#menu .contents .abcd4:after {
		position: absolute;
		content:"D";
		top: 25px;
		left: -77px;
		color: #282828;
		font-size: 33px;
	}
	#menu .make .no1:after{
		content: "1";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
	#menu .make .no2:after{
		content: "2";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
	#menu .make .no3:after{
		content: "3";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
	#menu .make .no4:after{
		content: "4";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
	#menu .make .no5:after{
		content: "5";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
	#menu .make .no6:after{
		content: "6";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
	#menu .make .no7:after{
		content: "7";
		position: absolute;
		top: -10px;
		right: 50%;
		transform: translateX(50%);
		font-size: 30px;
		color: #fff;
	}
}

/* 200302 N追記ここから〜 */
.book form input,.book form textarea{
	box-shadow: none;
	border-radius: 0;
}
.book form#mailformpro dl dt,
.book form#mailformpro dl dd{
	border-top: 0;
}
.book form#mailformpro dl dt{
	color: #282828;
	font-size: 16px;
	font-weight: 500;
}
form#mailformpro .form_top ul li{
	position: relative;
	display: inline-block;
}
form#mailformpro .form_top ul li:first-child{
	/*margin-right: 30px;*/
	margin-right: 10px;
}
.book form#mailformpro dl dd label{
	font-size: 16px;
	font-weight: 500;
	vertical-align: top;
}
.book form#mailformpro .form_top input[type="radio"]{
	width: auto;
	height: auto;
	margin-top: 0;
}
.book form#mailformpro .form_top dt,
.book form#mailformpro #reservation_bottom dl dt{
	position: absolute;
	width: 170px;
	text-align: left;
	left: 60px;
}
.book form#mailformpro #reservation_bottom dl dt .must{
	position: relative;
	display: inline-block;
	float: none;
	color: #219c85;
	font-size: 16px;
	font-weight: 500;
	padding: 0;
	background-color: transparent;
	border: 0;
	text-shadow: none;
	box-shadow: none;
}
.book form#mailformpro #reservation_bottom .float .fl_l{
	width: 330px;
}
.book form#mailformpro #reservation_bottom .float .fl_r{
	width: 500px;
}
.book form .name:before,.book form .mail:before,
.book form .tel:before,.book form .message:before{
	left: -117px;
}
.book form .name:after{
	left: -65px;
}
.book form .mail:after{
	left: 0;
}
.book form .tel:after{
	left: -48px;
}
.book form .message:after{
	left: -30px;
}
.book form#mailformpro .form_top dd,
.book form#mailformpro #reservation_bottom dl dd{
	padding-left: 80px;
}
.book form#mailformpro .form_top dd div.mfp_err,
.book form#mailformpro #reservation_bottom dl dd div.mfp_err{
	padding-left: 20px;
	background-position: left top 2px;
}
.book form#mailformpro .form_top dd{
	/*padding: 13px 5px 20px 80px;*/
	padding: 2px 5px 20px 80px;
}
.book form#mailformpro #reservation_bottom dl dd input,
.book form#mailformpro #reservation_bottom dl dd textarea{
	margin-top: 0;
	font-size: 16px;
}
.book form#mailformpro #reservation_bottom dl dd p{
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
}
.book form#mailformpro #reservation_bottom dl dd p.caution{
	font-size: 14px;
}
.book .submit button{
	border: 0;
	border-radius: 0;
}
.book form#mailformpro .form_top input[type="radio"]{
	display: none;
}
.book form#mailformpro .form_top input[type="radio"] + label,
.book form#mailformpro .form_top input[type="hidden"] + label{
	position: relative;
	display: inline-block;
	min-width: 100px;
	color: #000;
	text-align: center;
	line-height: 30px;
	margin-right: 4px;
	padding: 6px 20px 4px;
	-webkit-border-radius: 6px 6px 0 0;
	border-radius: 6px 6px 0 0;
	background: #ddd;
	cursor: pointer;
	z-index: 100;
}
.book form#mailformpro .form_top input[type="radio"]:checked + label,
.book form#mailformpro .form_top input[type="radio"]:checked + input[type="hidden"] + label{
	background: #219c85;
	color: #fff;
}
.book form#mailformpro .form_top input[type="radio"]:checked + label::after,
.book form#mailformpro .form_top input[type="radio"]:checked + input[type="hidden"] + label::after {
	content: "";
	position: absolute;
	display: block;
	border: 9px solid transparent;
	border-top: 9px solid #219c85;
	margin-top: 4px;
	margin-left: -9px;
	left: 50%;
}
.book form#mailformpro select::-ms-expand {
	display: none;
}
.book form#mailformpro select{
	font-size: 16px;
	height: 40px;
	box-shadow: none;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin-bottom: 20px;
	padding: 10px 30px 10px 10px;
	line-height: 1.1em;
	border-radius: 0;
	border: none;
	background-image: url(../images/arrow.png);
	background-repeat: no-repeat;
	-webkit-background-size: 12px auto;
	background-size: 12px auto;
	background-position: right 10px center;
	background-color: #d6e9e6;
	cursor: pointer;
}
.book form#mailformpro #reservation_bottom dl dd p.outline{
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 20px;
}
.book form .size{
	position: relative;
}
.book form .size:before{
	content: "靴のサイズ(cm)";
	position: absolute;
	top: 15px;
	left: -116px;
	font-size: 16px;
	color: #282828;
	font-weight: 500;
}
.book form .size:after{
	content: "*";
	position: absolute;
	top: 15px;
	left: 10px;
	font-size: 16px;
	color: #219c85;
	font-weight: 500;
}
.contact_form_recaptcha_btn{
	display: flex;
	justify-content: center;
	margin: 0 auto 50px;
}

/* thanks */
.titlebox{
	position: relative;
	display: block;
	width: 100%;
	height: 500px;
	background: url(../images/thanks_bg.jpg) no-repeat center bottom;
	-webkit-background-size: cover;
	background-size: cover;
}
#thanks{
	text-align: center;
	padding-bottom: 100px;
}
#thanks .title{
	text-align: center;
	margin-top: 80px;
}
#thanks .title .titleimg1{
	position: relative;
	display: inline-block;
	width: 29px;
	height: 66px;
}
#thanks .title .titleimg1 img{
	position: relative;
	display: block;
	width: 100%;
	height: auto;
}
#thanks .bookinfo {
	margin: 30px auto;
}
#thanks .bookinfo h4{
	display: inline-block;
	color: #fff;
	font-size: 16px;
	vertical-align: middle;
	padding: 3px 10px;
	margin-right: 10px;
	background: #282828;
}
#thanks .bookinfo p{
	font-size: 14px;
	margin-top: 10px;
}
#thanks .btn a{
	width: 260px;
	height: 60px;
	font-size: 16px;
	color: #fff;
	background: #282828;
	display: inline-block;
	line-height: 60px;
	text-align: center;
	margin: 50px auto 0;
}
#thanks .btn a:hover{
	opacity: .7;
	transition: .3s;
	cursor: pointer;
}
/* //thanks */


/* 200302 N追記ここまで〜 */







