@charset "utf-8";
/*@font-face {
	font-family: 'bebas-neue';
	src: url("../fonts/BebasNeueBold.ttf") format("truetype");
  font-display: swap;
}*/

* {
	margin: 0;
	padding: 0
}
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style: normal;
	font-weight: 400;
	font-size: 100%;
	vertical-align: baseline;
	box-sizing: border-box
}
article, aside, details, figcaption, figure, footer, header, hgroup, img, menu, nav, section {
	display: block
}
img {
	width: 100%
}
blockquote, q {
	quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
	content: '';
	content: none
}
input, textarea {
	margin: 0;
	padding: 0
}
strong {
  font-weight: bold;
}
ol {
	margin-left: 18px;
	padding: 0
}
ul {
	list-style: none;
	padding: 0
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
caption, th {
	text-align: left
}
a:focus {
	outline: 0
}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden
}
.clearfix {
	min-height: 1px
}
* html .clearfix {
	height: 1px
}
.both {
	clear: both
}
.inline_block {
	display: inline-block;
 *display: inline;
 *zoom: 1
}
.anim {
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s
}
a, a:hover {
	color: #000;
	text-decoration: none
}
.red-text {
	color: #f32e2e
}
.black {
	color: #000
}
.white {
	color: #fff
}
.black2 {
	color: #333
}
.red {
	color: #fff;
	background: red
}
.brown {
	color: #8e8579
}
h2.brown span {
	border-bottom: 2px solid #8e8579 !important
}
.bg-white {
	background: #fff;
}
.bg-gray {
	background: #f7f7f7;
}
.bg-gray2 {
	background: #fbfbfb;
}
.bg-pink {
	background: #fff9f9 !important;
}
.bg-table-gold{
  background: #f1ede7 !important;
}
.bg-table-gold2{
  background: #fbfaf9 !important;
}
.bg-ttl-gold{
  background: #9c9487 !important;
}
.sub-text {
	display: inline-block;
	font-weight: 700;
	margin-bottom: 4px
}
.text-underline {
	text-decoration: underline
}

.underline-y {
  background: linear-gradient(transparent 50%, #fffa2d 50%);
}
.text-shadow {
	text-shadow: 0 0 3px #000
}
.shadow {
	filter: drop-shadow(0px 0px 3px #ddd);
}
span.indent {
	padding-left: 1em;
	text-indent: -1em;
	display: inline-block
}
.black-bg {
	color: #fff;
	background: #000
}
.white-bg {
	color: #333;
	background: #fff
}
.beige-bg{
	color: #333;
	/*background: #dfdbd6;*/
	background: #cbc9c2
}
.opacity:hover {
	opacity: .8
}
.d-none, .sp-menu {
	display: none
}
.d-block {
	display: block
}
.font-bold{
  font-weight: bold;
}
.font-normal{
  font-weight: normal !important;
}
.font-min{
  font-size: 1rem;
}
.font-size-0{
  font-size: 1rem;
}
.font-size-1{
  font-size: 1.1rem;
}
.font-size-2{
  font-size: 1.2rem;
}
.font-size-3{
  font-size: 1.3rem;
}
.font-size-4{
  font-size: 1.4rem;
}
.font-size-5{
  font-size: 1.5rem;
}
.font-size-6{
  font-size: 1.6rem;
}
.font-size-7{
  font-size: 1.7rem;
}
.font-size-8{
  font-size: 1.8rem;
}
.font-size-9{
  font-size: 1.9rem;
}
.font-size-20{
  font-size: 2rem;
}

.mb-0 {
	margin-bottom: 0 !important
}
.mb-8 {
	margin-bottom: 8px !important
}
.mb-16 {
	margin-bottom: 16px !important
}
.mb-24 {
	margin-bottom: 24px !important
}
.mb-32 {
	margin-bottom: 32px !important
}
.mb-40 {
	margin-bottom: 40px !important
}
.mb-60 {
	margin-bottom: 60px !important
}
.mb-80 {
	margin-bottom: 80px !important
}
.mb-100 {
	margin-bottom: 100px !important
}
.m-center {
  margin: 0 auto;
}
.padding-16{
  padding: 24px;
}
.padding-24{
  padding: 24px;
}
.padding-32{
  padding: 32px;
}
.padding-40{
  padding: 40px;
}
.p-top-0{
  padding-top: 0 !important;
}

.p-lr-8{
  padding-left: 8px;
  padding-right: 8px;
}
.p-lr-10{
  padding-left: 10px;
  padding-right: 10px;
}
.p-lr-16{
  padding-left: 16px;
  padding-right: 16px;
}
.p-lr-20{
  padding-left: 20px;
  padding-right: 20px;
}
.p-lr-24{
  padding-left: 24px;
  padding-right: 24px;
}
.p-tb-8{
  padding-top: 8px;
  padding-bottom: 8px;
}
.p-tb-10{
  padding-top: 10px;
  padding-bottom: 10px;
}
.p-tb-16{
  padding-top: 16px;
  padding-bottom: 16px;
}
.p-tb-20{
  padding-top: 20px;
  padding-bottom: 20px;
}
.p-tb-24{
  padding-top: 24px;
  padding-bottom: 24px;
}
.w-10 {
  width: 10%;
}
.w-20 {
  width: 20%;
}
.w-30 {
  width: 30%;
}
.w-40 {
  width: 40%;
}
.w-44 {
  width: 44%;
}
.w-45 {
  width: 45%;
}
.w-46 {
  width: 46%;
}
.w-48 {
  width: 48%;
}
.w-50 {
  width: 50%;
}
.w-60 {
  width: 60%;
}
.w-65 {
  width: 65%;
}
.w-70 {
  width: 70%;
}
.w-75 {
  width: 75%;
}
.w-80 {
  width: 80%;
}
.w-85 {
  width: 85%;
}
.w-90 {
  width: 90%;
}
.w-100 {
  width: 100%;
}

.w-200 {
  width: 200px;
}
.w-600 {
  max-width: 600px;
}
.w-800 {
  max-width: 800px;
}

.space-top-bottom {
	padding-top: 5pc !important;
	padding-bottom: 75pt !important
}
.subText {
	font-size: 75.5%;
	vertical-align: bottom;
	position: relative;
	top: 0.1em
}
.f-bold {
	font-weight: bold;
}
.bold {
	font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, sans-serif;
	font-weight: 700
}
.pc-enter {
	display: inline-block
}
.t-center {
	text-align: center
}
.pc-t-center {
	text-align: center
}
.t-right {
	text-align: right
}
.t-left {
	text-align: left !important
}
.v-middle{
  vertical-align: middle;
}
.under-line {
	text-decoration: underline;
}
.margin-auto {
	margin-left: auto;
	margin-right: auto
}
.float-l {
	float: left
}
.float-r {
	float: right
}
.flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex
}
.between {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.flex-wrap {
	flex-wrap: wrap;
}
.flex-center {
	justify-content: center;
}
.flex-end{
  align-items: flex-end;
}
.flex-baseline{
  align-items: baseline;
}
.flex-width-on{
  flex-shrink: 0;
}
.pc {
	display: block
}
.sp, .sp-640 {
	display: none
}
.show {
	display: block !important;
	transform: unset !important
}
.not-found {
	text-align: center;
	padding: 75pt 0
}
.border-none {
	border-bottom: 0 0 !important
}
.no-contents {
	width: 100%
}
.mintyo {
	font-family: 游明朝, YuMincho, ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, HG明朝E, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-family: 游ゴシック Medium, meiryo, Yu Gothic Medium, 游ゴシック, Yu Gothic, メイリオ, sans-serif;
	font-weight: 500
}
body {
	font-size: 1pc;
	font-size: 1.6em;
	line-height: 1.6;
	color: #333;
}
img {
	width: 100%
}
.eng {
	font-family: bebas-neue, sans-serif;
	font-style: normal;
	font-weight: 400
}
.post-not-found {
	text-align: center;
	padding: 300px 0;
	font-size: 2rem
}
.black-link-btn {
	width: 100%;
	height: 60px;
	line-height: 60px;
	font-size: 1.8rem;
	background: #333;
	font-weight: 700;
	color: #fff;
	display: block;
	position: relative;
	text-align: center;
	border: 1px solid #fff
}
.black-link-btn:after {
	border-top: solid 2px #fff;
	border-right: solid 2px #fff
}
.black-link-btn:after, .black-link-btn:hover:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 19px;
	width: 7px;
	height: 7px;
	/*border: 0;*/
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s
}
.black-link-btn:hover:after {
	border-top: solid 2px #000;
	border-right: solid 2px #000
}
.black-link-btn:hover {
	color: #000;
	background: #fff;
	border: 1px solid #000;
	text-decoration: none
}
.black-link-btn:hover:after {
	color: #000;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s
}
.black-link-btn2 {
	width: 100%;
	height: 60px;
	padding-left: 24px;
	line-height: 60px;
	color: #fff;
	display: block;
	position: relative;
	text-align: center;
	border: 1px solid #fff;
	font-size: 2.4rem;
	font-weight: 700;
	background: #000 url(../images/common/tell-white.png)no-repeat;
	background-position: 10% center;
	background-size: 22px
}
:root .black-link-btn2, _::-webkit-full-page-media, _:future {
 font-size: 2rem
}
.black-link-btn2:hover {
	color: #000;
	border: 1px solid #000;
	text-decoration: none;
	background: #fff url(../images/common/tell-black.png)no-repeat;
	background-position: 10% center;
	background-size: 22px
}
.white-link-btn {
	width: 100%;
	height: 60px;
	line-height: 60px;
	font-size: 1.8rem;
	font-weight: 700;
	background: #fff;
	color: #333;
	display: block;
	position: relative;
	text-align: center;
	border: 1px solid #fff
}
.white-link-btn:hover {
	color: #fff;
	background: #333;
	border: 1px solid #fff;
	text-decoration: none
}
.white-link-btn:after {
	border-top: solid 2px #333;
	border-right: solid 2px #333
}
.white-link-btn:after, .white-link-btn:hover:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 19px;
	width: 7px;
	height: 7px;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg)
}
.white-link-btn:hover:after {
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s
}
.insta_btn2 {
	color: #fff;
	border-radius: 7px;
	position: relative;
	display: inline-block;
	height: 50px;
	width: 190px;
	text-align: center;
	font-size: 25px;
	line-height: 50px;
	background: -webkit-linear-gradient(135deg, #427eff 0, #f13f79 70%)no-repeat;
	background: linear-gradient(135deg, #427eff 0, #f13f79 70%)no-repeat;
	overflow: hidden;
	text-decoration: none
}
.insta_btn2:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-linear-gradient(15deg, #ffdb2c, #f9764c 25%, rgba(255,77,64,0) 50%)no-repeat;
	background: linear-gradient(15deg, #ffdb2c, #f9764c 25%, rgba(255,77,64,0) 50%)no-repeat
}
.insta_btn2 a {
	font-size: 35px;
	position: relative;
	top: 4px
}
.insta_btn2 span {
	display: inline-block;
	position: relative;
	transition: 0.5s
}
.insta_btn2:hover span {
	-webkit-transform: rotateX(360deg);
	-ms-transform: rotateX(360deg);
	transform: rotateX(360deg)
}
.top-ttl, .top-ttl-white {
	font-size: 6rem;
	text-align: center;
	display: inline-block;
	position: relative;
	margin: 0 0 3pc
}
.top-ttl-white:after, .top-ttl:after {
	content: "";
	position: absolute;
	bottom: 9pt;
	left: 0;
	width: 100%;
	height: 2px
}
.top-ttl {
	color: #333
}
.top-ttl-white {
	color: #fff
}
.top-ttl:after {
	background: #333
}
.top-ttl-white:after {
	background: #fff
}
/*===================================================================
    h1
===================================================================*/

/*  h1タグ追加 20191205  */
h1.contents-ttl-02 {
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 5pc;
	font-weight: 700
}
h1.contents-ttl-02 span {
	border-bottom: 2px solid #000;
	font-weight: 700
}
h1.eng-ttl-01 {
	font-size: 4.6rem;
	text-align: center;
	margin-bottom: 60px
}
h1.eng-ttl-01 span {
	border-bottom: 4px solid #000
}
/*  h1タグ追加 20191205  */


/*===================================================================
    h2
===================================================================*/
h2.contents-ttl-base {
	margin-bottom: 60px;
	padding: 10px 8px 10px 1pc;
	font-size: 2.4rem
}

/*  h2タグ追加 20191205  */
h2.contents-ttl-03 {
	font-size: 2.4rem;
	padding-left: 1pc;
	margin-bottom: 24px;
	font-weight: 700;
	position: relative
}
h2.contents-ttl-03:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	border-left: 4px double #000
}
/*  h2タグ追加 20191205  */

h2.eng-ttl-01 {
	font-size: 4.6rem;
	text-align: center;
	margin-bottom: 60px
}
h2.eng-ttl-01 span {
	border-bottom: 4px solid #000
}
h2.contents-ttl-01 {
	background: #e8e8e8;
	margin-bottom: 60px;
	padding: 10px 8px 10px 1pc;
	font-size: 2.4rem
}
h2.contents-ttl-02 {
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 5pc;
	font-weight: 700
}
h2.contents-ttl-02 span {
	border-bottom: 2px solid #000;
	font-weight: 700
}

/*===================================================================
    h3
===================================================================*/
h3.contents-ttl-01 {
	background: #e8e8e8;
	margin-bottom: 60px;
	padding: 10px 8px 10px 1pc;
	font-size: 2.4rem
}

h3.contents-ttl-base {
	font-size: 2.4rem;
	padding-left: 1pc;
	margin-bottom: 24px;
	font-weight: 700;
	position: relative
}
h3.contents-ttl-03 {
	font-size: 2.4rem;
	padding-left: 1pc;
	margin-bottom: 24px;
	font-weight: 700;
	position: relative
}
h3.contents-ttl-03:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	border-left: 4px double #000
}
h3.list-contents-ttl-03 {
	font-size: 2.4rem;
	padding-left: 1pc;
	margin-bottom: 24px;
	font-weight: 700;
	position: relative
}
h3.list-contents-ttl-03:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	border-left: 4px double #000
}
h3.contents-ttl-04 {
	font-size: 2.4rem;
	font-weight: 700;
  margin-bottom: 40px;
}
h3.contents-ttl-04 span{
  /*background: #9e9587;*/
  background: #696969;
  color: #fff;
  padding: 8px 16px;
  width: 600px;
  display: block;
  margin: 0 auto;
}
h3.contents-ttl-04-gold {
	font-size: 2.4rem;
	font-weight: bold;
  margin-bottom: 40px;
}
h3.contents-ttl-04-gold span {
  color: #766f66;
  padding: 8px 16px;
  display: block;
  margin: 0 auto;
  font-weight: bold;
  border-bottom: 1px solid #766f66;
}
h3.contents-ttl-05 {
	font-size: 2.4rem;
	font-weight: 700;
  margin-bottom: 40px;
}
h3.contents-ttl-05 span{
  background: #9c9487;
  color: #fff;
  padding: 8px 16px;
  width: 600px;
  display: block;
  margin: 0 auto;
}
h3.contents-ttl-06 {
  font-size: 2.2rem;
  font-weight: bold;
	position: relative;
  overflow: hidden;
  padding: 8px 16px 4px 130px;
  color: #343434;
  border: 2px solid #343434;
}
h3.contents-ttl-06 span{
  font-size: 3.4rem;
  position: absolute;
  z-index: 1;
  top: -3px;
  bottom: 0;
  left: 20px;
  right: 0;
  margin: 0 auto;
  display: block;
  color: #fff;
}
h3.contents-ttl-06:before {
  position: absolute;
  top: -150%;
  left: -110px;
  width: 195px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #343434;
}

/*===================================================================
    h4
===================================================================*/
h4.contents-ttl-base {
	margin-bottom: 60px;
	padding: 8px 8px 8px 1pc;
	font-size: 2.4rem
}
h4.contents-ttl-01 {
	background: #eceae4;
	margin-bottom: 60px;
	padding: 8px 8px 8px 1pc;
	font-size: 2.4rem
}
h4.contents-ttl-02 {
	background: #ececec;
	margin-bottom: 60px;
	padding: 8px 8px 8px 1pc;
	font-size: 2.4rem;
  text-align: center;
}
h4.contents-ttl-03 {
	font-size: 2.4rem;
	padding-left: 1pc;
	margin-bottom: 24px;
	font-weight: 700;
	position: relative
}
h4.contents-ttl-03:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	border-left: 4px double #000
}
h4.contents-ttl-04 {
	font-size: 2.2rem;
	font-weight: 700
}
h4.contents-ttl-gray {
	font-size: 2.4rem;
	padding-left: 1pc;
	margin-bottom: 24px;
	font-weight: 700;
	position: relative;
  color: #5f5f5f;
}
h4.contents-ttl-gray:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	border-left: 4px double #5f5f5f
}

/*===================================================================
    title
===================================================================*/
.ttl-white {
  background: #fff;
}
.ttl-gray {
  background: #f1f1f1;
}
.ttl-gray-01 {
  background: #eaeaea;
}
.ttl-gray-02 {
  background: #cecece;
}
.ttl-cold {
  background: #cabfab;
}
.ttl-cold-01 {
  background: #dacfb1;
}
.ttl-cold-02 {
  background: #b7a481;
}
.ttl-beige {
  background: #eceae4;
}
.ttl-under-line {
  border-bottom: 2px solid #000;
}


/*===================================================================
    header
===================================================================*/
header {
	width: 100%;
	padding: 0 20px
}
.header-area {
	max-width: 80pc;
	margin: 0 auto
}
.logo {
	padding-top: 23px;
	margin: 0 0 23px;
	width: 314px;
	height: 2pc
}
.tel-reservation-wrap {
	width: 500px;
	margin-left: auto
}
.tel-area {
	min-width: 13pc;
	margin-right: 24px;
	font-size: 1.4rem;
	padding-top: 20px
}
.tel-area, .tel-area p {
	line-height: 1;
	color: #333
}
.tel-area p {
	margin-bottom: 7px;
	font-weight: 700
}
.tel-area p a {
	color: #333
}
.tel-text {
	font-size: 2.2rem;
	font-weight: 700;
	margin-bottom: 5px !important
}
.tel-text .fa-phone {
	display: inline-block;
	margin-right: 4px;
	font-size: 2.2rem
}
.contact-link, .reserve-link {
	padding-top: 20px
}
.contact-link {
	margin-right: 10px
}
.contact-link a, .reserve-link a {
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center;
	padding: 7px 25px;
	display: block;
	color: #fff;
	background: #6b6760
}
.g-nav ul li {
	/*width: 10%*/
}
.g-nav ul li a {
	display: block;
	text-align: center;
	padding: 24px 0 18px;
	position: relative;
	font-size: 2.4rem;
	color: #333
}
.g-nav ul li a:before {
	display: block;
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
	height: 3px;
	background-color: #333
}
.g-nav ul li a:before, .g-nav ul li a:hover:before {
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s
}
.g-nav ul li a:hover:before {
	width: 88%;
	left: 6%
}
.page-top-wrap {
	position: fixed;
	bottom: 75pt;
	right: 0;
	z-index: 1
}
.page-top-wrap a {
	display: block;
	padding: 8px 1pc;
	color: #fff;
	background: hsla(0, 0%, 44%, 0.5);
	text-align: center;
	border-radius: 0;
	font-size: 2rem
}
.page-top-wrap a:hover {
	background: #333
}
.clone-nav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	transition: 0.3s;
	transform: translateY(-100%);
	background: rgba(0, 0, 0, .8)
}
.clone-nav ul {
	max-width: 765pt;
	margin: 0 auto;
	padding: 0 10px
}
.is-show {
	transform: translateY(0)
}
.copy {
	display: none
}
.contact-wrap {
	color: #fff;
	background: #333 url('../images/common/bg-white.png');
	text-align: center;
	padding: 53px 0 75pt
}
.cv-btn-area {
	width: 35pc;
	margin: 0 auto
}

.cv-btn-area ul{
	justify-content: center;
}

.cv-area-wap h3 {
	font-size: 2.4rem;
	position: relative;
	margin-bottom: 40px
}
.cv-area-wap h3:after {
	content: "";
	position: absolute;
	bottom: -13px;
	left: 50%;
	width: 90px;
	height: 4px;
	margin-left: -45px;
	background: #fff
}
.cv-btn-area ul li {
	width: 250px
}
.cv-area-wap .text-area {
	margin-bottom: 38px
}
.cv-btn-area .line-btn {
	width: 300px;
}
.clinic-name {
	font-size: 4rem;
	margin-bottom: -9pt !important
}
.clinic-name-kana {
	margin-bottom: 24px !important
}
.clinic-addess {
	padding: 0 16px
}
.irregular-holidays {
	margin: 0 0 0 -51px
}
.irregular-holidays span {
	margin-left: 1pc
}
.breadcrumbs-area {
	padding: 10px 0
}
.breadcrumbs {
	max-width: 783pt;
	margin: 1pc auto;
	padding: 0 10px
}
.contents-wrap {
	width: 45pc
}
.contents-wrap-1024 {
	max-width: 783pt;
	padding: 0 10px;
	margin: 0 auto 5pc
}
.width-1024 {
	max-width: 783pt;
	margin: 0 auto;
	padding: 0 10px
}
.under-page {
	max-width: 783pt;
	padding: 0 10px;
	margin: 0 auto 75pt
}
.google-map-wap {
	height: 500px;
	overflow: hidden
}
footer {
	background: #333
}
.footer-wrap {
	margin: 0 auto 53px;
	padding: 70px 10px 0;
	max-width: 783pt
}
.footer-ttl {
	margin-bottom: 14px;
	font-size: 2.4rem;
	color: #fff;
	display: inline-block;
	position: relative
}
.footer-ttl:after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #fff
}
.footer-ttl-jp {
	font-size: 1.8rem;
	margin-bottom: 20px;
	color: #fff;
	font-weight: 700;
	display: inline-block;
	position: relative
}
.footer-ttl-jp:after {
	content: "";
	position: absolute;
	bottom: -4px;
	left: 0
}
.footer-bottom-ttl {
	color: #fff;
	margin-bottom: 4px
}
.footer-bottom-ttl a {
	color: #fff
}
.footer-nav-top-list {
	margin-bottom: 44px
}
.footer-nav-top-list li a {
	font-size: 2rem;
	color: #fff;
	position: relative;
	padding-left: 10px;
	margin-right: 31px;
	text-align: center
}
.footer-nav-top-list li:last-child a {
	margin-right: 0
}
.footer-bottom-ttl a:hover, .footer-nav-bottom-list a:hover, .footer-nav-top-list li a:hover {
	opacity: .8
}
.footer-nav-top-list li a:after {
	content: "";
	position: absolute;
	top: 7px;
	left: 0;
	box-sizing: border-box;
	width: 0;
	height: 0;
	border: 4px solid transparent;
	border-left: 5px solid #fff
}
.footer-nav-bottom-list li a {
	position: relative;
	padding-left: 9pt;
	color: #fff;
	font-size: 1.4rem
}
.footer-nav-bottom-list li a:after {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	box-sizing: border-box;
	width: 0;
	height: 0;
	border: 4px solid transparent;
	border-left: 5px solid #fff
}
.copyright {
	text-align: center;
	background: #333;
	color: #fff;
	line-height: 60px
}
.page-title-wap {
	height: 25pc;
	position: relative
}
.page-title-text {
	width: 100%;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
	color: #fff;
	font-size: 8rem
}
.page-link {
	flex-wrap: wrap;
}
.page-link li {
  width: 25%;
  display: flex;
}
.page-link a {
  width:  100%;
	display: block;
	margin: 0 10px 1pc;
	padding: 8px 20px;
	border: 2px solid #000;
	color: #fff;
	text-align: center;
	background: #000;
	/*white-space: nowrap;*/
	position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.page-link a:hover {
	border: 2px solid #000;
	color: #000;
	background: #fff
}
.page-link a:after {
	content: "";
	position: absolute;
	bottom: -3px;
	right: -3px;
	box-sizing: border-box;
	width: 0;
	height: 0;
	border: 5px solid transparent;
	border-left: 5px solid #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg)
}
.page-link a:hover:after {
	border-left: 5px solid #000
}

/*===================================================================
    supervision-doctor 2021/01/11
===================================================================*/
.supervision-doctor-wrap{
  padding: 53px 0 60px;
  border-top: 2px solid #333;
  background: #fdfdfd url('../images/common/bg-marble.jpg') repeat;
}
.supervision-doctor-img-wrap {
  width: 240px;
  margin: 0 auto 60px;
}

.gaidline-text{
  background: #333;
  outline: solid 4px #333;
  outline-offset: 3px;
  margin: 7px;
  padding: 40px 24px;
  text-align: center;
  color: #fff;
}


@media(max-width:1024px) {
.contact-link a,  .reserve-link a {
	font-size: 1.4rem;
	padding: 7px 22px
}
.tel-area {
	min-width: 185px;
	margin-right: 25px;
	padding-top: 20px
}
.tel-text {
	font-size: 2rem
}
.g-nav ul li a {
	padding: 22px 0 1pc
}
.footer-wrap {
	padding: 70px 30px 0;
	max-width: 798pt
}
}
@media(max-width:920px) {
.logo {
	padding-top: 27px;
	width: 260px
}
.g-nav ul li a {
	font-size: 1.8rem
}
}
@media(max-width:850px) {
header {
	padding: 0 10px
}
.logo {
	padding-top: 26px;
	width: 230px
}
.tel-area p {
	margin-bottom: 4px
}
.tel-area {
	min-width: 185px;
	margin-right: 10px
}
.tel-text {
	font-size: 1.8rem
}
.cv-btn-area {
	width: 6in
}
}
@media(max-width:800px) {
.contact-link a,  .reserve-link a {
	font-size: 1.4rem;
	padding: 7px 14px
}
}
@media(max-width:768px) {
body {
	margin-bottom: 67px
}
.pc {
	display: none
}
.sp {
	display: block
}
.pc-t-center {
	text-align: start
}
.black-link-btn,  .black-link-btn2,  .white-link-btn {
	height: 50px;
	line-height: 50px
}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%
}
header {
	padding: 0;
	background: #000;
	z-index: 3
}
.header-wrap {
	position: relative
}
.copy {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 55px;
	transition: 0.3s;
	background: rgba(0, 0, 0, .9);
	transform: translateY(-200%)
}
.tel-reservation-wrap {
	display: none
}
.logo {
	width: 200px;
	padding-top: 18px;
	margin: 0 0 23px 8px
}
.menu {
	position: absolute
}
.copy .menu,  .menu {
	top: 11px;
	right: 1pc
}
.copy .menu {
	position: fixed
}
.sp-nav-text {
	position: absolute;
	left: 1px;
	bottom: -14px;
	color: #fff;
	font-size: 1.4rem;
	letter-spacing: 0.05rem
}
.menu-trigger,  .menu-trigger span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box
}
.menu-trigger {
	position: relative;
	width: 30px;
	height: 22px
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #fff;
	border-radius: 4px
}
.menu-trigger span:nth-of-type(1) {
	top: 0
}
.menu-trigger span:nth-of-type(2) {
	top: 9px
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0
}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(20px) rotate(-45deg);
	transform: translateY(9px) rotate(-45deg)
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-20px) rotate(45deg);
	transform: translateY(-9px) rotate(45deg)
}
.sp-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 0;
	background: #000;
	z-index: 3;
	overflow-y: scroll !important
}
.sp-nav {
	padding-top: 55px
}
.clone-nav-sp {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	transition: 0.3s;
	transform: translateY(-100%);
	background: rgba(0, 0, 0, .9)
}
.is-show {
	transform: translateY(0) !important
}
.sp-nav-list dt {
	padding: 9pt 6px 9pt 18px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	margin-top: -1px;
	color: #fff;
	background: #000;
	position: relative
}
.sp-nav-list dt:after {
	content: "▼"
}
.sp-nav-list dt.active:after,  .sp-nav-list dt:after {
	position: absolute;
	font-size: 1.4rem;
	top: 9pt;
	right: 24px;
	box-sizing: border-box;
	width: 10px;
	height: 10px
}
.sp-nav-list dt.active:after {
	content: "▲"
}
.sp-nav-list dd {
	display: none
}
.sp-nav-list dd a {
	display: block;
	padding: 9pt 6px 9pt 24px;
	background: #fff;
	border-bottom: 1px solid #000;
	position: relative
}
.sp-nav-list dd a:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 1pc;
	box-sizing: border-box;
	width: 0;
	height: 0;
	border: 4px solid transparent;
	border-left: 5px solid #000
}
.sp-header-navi {
	padding-bottom: 66px
}
.sp-header-navi li a {
	display: block;
	background: #fff;
	padding: 9pt 0 9pt 1pc;
	margin-bottom: 0;
	border-bottom: 1px solid #000;
	position: relative;
	color: #000
}
.sp-header-navi li a:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 1pc;
	box-sizing: border-box;
	width: 0;
	height: 0;
	border: 6px solid transparent;
	border-left: 7px solid #000
}
.sp-header-navi li .sp-menu-span {
	width: 70px;
  display: inline-block;
}
.sp-header-navi li .sp-menu-span-jp {
	font-size: 1.2rem;
}
.contents-wrap {
	width: 100%;
	margin-bottom: 60px
}
.width-1024 {
	max-width: initial;
	margin: 0 auto;
	padding: 0 20px
}
.under-page {
	max-width: initial;
	width: 100%;
	padding: 0
}
.cv-btn-area {
	width: 100%;
	margin: 0
}
.cv-btn-area ul {
	display: block
}
.cv-btn-area li {
	width: 60% !important;
	margin: 0 auto
}
.cv-area-wap ul li:not(last-child),  .tel-btn {
	margin-bottom: 1pc
}
.black-link-btn2 {
	background-position: 28% center
}
.google-map-wap {
	height: 0;
	overflow: hidden;
	padding-bottom: 70%;
	position: relative
}
.google-map-wap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%
}
.footer-wrap {
	padding: 70px 30px 0;
	max-width: initial;
	width: 100%
}
.footer-sp {
	width: 100%;
	position: fixed;
	bottom: 0;
	z-index: 4;
	background: rgba(0, 0, 0, .8);
	border-top: 1px solid #fff;
	transition: 0.3s;
	transform: translateY(200%)
}
.footer-sp ul li {
	width: 49.5%;
}
.footer-sp ul li a {
	display: block;
	width: 100%;
	text-align: center;
	color: #fff
}
.footer-sp ul li a img {
	width: 105px;
	margin: 0 auto
}
.footer-contact,  .footer-reservation,  .footer-tel {
	background: #000;
	padding: 8px 0;
	display: block
}

}
@media(max-width:767px) {
.breadcrumbs {
	width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	white-space: nowrap
}
.page-top-wrap {
	bottom: 5pc
}
.page-top-wrap a {
	padding: 8px;
	font-size: 1.4rem
}
.sp-flex-none {
  display: block
}
h3.contents-ttl-04 span{
	display: block;
	width: 100%;
}
h3.contents-ttl-05 span{
	display: block;
	width: 100%;
}
  
.sp-w-10 {
  width: 10%;
}
.sp-w-20 {
  width: 20%;
}
.sp-w-30 {
  width: 30%;
}
.sp-w-40 {
  width: 40%;
}
.sp-w-50 {
  width: 50%;
}
.sp-w-60 {
  width: 60%;
}
.sp-w-70 {
  width: 70%;
}
.sp-w-80 {
  width: 80%;
}
.sp-w-90 {
  width: 90%;
}
.sp-w-100 {
  width: 100%;
}  
/*===================================================================
    supervision-doctor 2021/01/11
===================================================================*/
.gaidline-text{
  padding: 24px 16px;
  text-align: left;
}
.supervision-doctor-img-wrap {
  width: 200px;
}
}

@media(max-width:640px) {
.pc-640 {
	display: none
}
.sp-640 {
	display: block
}
.cv-btn-area li {
	width: 70% !important
}
.cv-btn-area {
	width: 100%;
	margin: 0
}
.black-link-btn2 {
	background-position: 25% center
}
.footer-wrap {
	margin: 0 auto 33px
}
.footer-ttl {
	margin-bottom: 40px
}
.footer-ttl-jp {
	margin-bottom: 43px
}
.footer-inner-bottom,  .footer-nav-top-inner {
	text-align: center
}
.footer-nav-top-list li {
	width: 49%
}
.footer-nav-top-list li a {
	color: #fff;
	font-size: 1.6rem;
	border: 1px solid #fff;
	margin: 0;
	padding: 4px 0;
	display: block
}
.footer-nav-top-list li:nth-child(odd) {
	margin: 0 1% 2% 0
}
.footer-nav-top-list li:nth-child(even) {
	margin: 0 0 2% 1%
}
.footer-nav-top-list li:nth-last-child(-n + 2) {
	margin-bottom: 0 !important
}
.footer-nav-top-list li a:after {
	display: none
}
.footer-bottom-sp-nav {
	padding: 0
}
.footer-bottom-sp-nav .sp-nav-list dt {
	padding: 9pt 6px 9pt 18px;
	border: 1px solid #fff;
	margin-top: -1px;
	color: #fff;
	background: #000;
	position: relative;
	text-align: left
}
.footer-bottom-sp-nav .sp-nav-list dd a {
	display: block;
	padding: 9pt 6px 9pt 24px;
	color: #000;
	background: #fff;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #000;
	position: relative;
	text-align: left
}
.page-link {
	flex-wrap: wrap
}
.page-link li {
	width: 50%;
  display: flex;
}
.page-link a {
  width: 100%;
	margin: 0 4px 8px;
	padding: 8px;
	white-space: normal;
  display: flex;
  justify-content: center;
  align-items: center;
}
}
@media(max-width:500px) {
.black-link-btn2,  .black-link-btn2:hover {
	background-position: 20% center
}
.page-link a {
	font-size: 1.4rem
}
}
@media(max-width:414px) {
.black-link-btn2 {
	font-size: 2.2rem
}
.black-link-btn2,  .black-link-btn2:hover {
	background-position: 12% center
}
.footer-bottom-sp-nav .sp-nav-list dt:after {
	content: "▼"
}
.footer-bottom-sp-nav .sp-nav-list dt.active:after,  .footer-bottom-sp-nav .sp-nav-list dt:after {
	position: absolute;
	font-size: 1.2rem;
	top: 17px;
	right: 20px;
	box-sizing: border-box;
	width: 10px;
	height: 10px
}
.footer-bottom-sp-nav .sp-nav-list dt.active:after {
	content: "▲"
}
/*  h1タグ追加 20191205  */
h1.contents-ttl-02 {
	font-size: 3rem
}
/*  h1タグ追加 20191205  */
h2.contents-ttl-02 {
	font-size: 3rem
}
  
h3.contents-ttl-06 {
  font-size: 2rem;
  border: 1px solid #000;
  padding: 7px 16px 5px 130px;
}
h3.contents-ttl-06 span{
  font-size: 3rem;
  top: -1px;
  bottom: 0;
  left: 12px;
}
h3.contents-ttl-06:before {
  width: 170px;
}  
  
}
@media(max-width:375px) {
.black-link-btn2,  .black-link-btn2:hover {
	background-position: 14% center
}
.black-link-btn:after,  .black-link-btn:hover:after {
	right: 10px
}
}
@media(max-width:374px) {
.page-link {
	flex-wrap: wrap
}
.page-link li {
	width: 100%
}
.page-link a {
	display: block;
	margin: 0 4px 8px;
	padding: 8px;
	white-space: normal
}
}
@media(max-width:320px) {
.black-link-btn2,  .black-link-btn2:hover {
	background-position: 10% center
}
}
