@charset "UTF-8";

/* 薄赤　#ff7670 */
/* 赤　#E7211A */
/* 薄紫　#E7E8F0 */
/* 濃紫　#8389AC */
/* 濃濃紫　#6D69A3*/

/* --------------------------------------------------------------------
	reset
-------------------------------------------------------------------- */

* {
	border:0;
	outline:0;
	margin:0;
	padding:0;
	font-size:inherit;
	font-weight:inherit;
	vertical-align:baseline;
	background-color:transparent;
}
ul,ol,li {
	list-style-type:none;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
select,input[type="submit"] {
	appearance:none;
	-moz-appearance:none;
	-webkit-appearance:none;
}

/* --------------------------------------------------------------------
	共通
-------------------------------------------------------------------- */

html,body {
	color:#333333;
	font-size:16px;
	line-height:1.5em;
	letter-spacing:0.05em;
	overflow-x:hidden;
	font-weight:400;
	-webkit-text-size-adjust:100%;
	font-family:"Roboto","Noto Sans JP","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;
  scroll-behavior: smooth;
}
a {
	color:#333333;
}
.is_pc{
  display:block;
}
.is_sp{
  display:none;
}

@media screen and (max-width:770px){
	html,body {
		font-size:14px;
		line-height:1.5em;
	}
	.is_pc{
		display:none;
	}
	.is_sp{
		display:block;
	}
}

.wrapper {
	margin:0 auto;
	width:94%;
	max-width:1000px;
}
.back_wrapper {
	background:URL(../images/floor_back.png) repeat-y 0 360px;
	background-size:100%;
	padding-bottom:100px;
}



/* --------------------------------------------------------------------
	header
-------------------------------------------------------------------- */

.header {
	display: flex;
  justify-content:space-between;
  width:94%;
  max-width: 1100px;
  margin:0 auto;
}
.header_l {
	width:40%;
  padding:12px 0 0;
}
.header_l ._logo {
	font-size:0.8em;
	line-height:1.5em;
}
.header_l ._logo img {
	width:95%;
  max-width: 400px;
	margin-top:12px;
}
.header_r {
	width:60%;
}
.header_r ._language ul {
  display: flex;
  justify-content: flex-end;
  width:40%;
  margin:0 0 5px auto;
}
.header_r ._language ul li {
	font-size:0.8rem;
	margin:-1px auto 7px;
  border:1px solid #AAAAAA;
  width:47%;
  margin-left: 3%;
  text-align: center;
}
.header_r ._language ul li a {
  display: block;
  padding:3px 10px 5px;
  transition: 0.3s;
}
.header_r ._language ul li a:hover {
  background:#e9e9ed;
  text-decoration: none;
}
.header_r ._reserve ul {
  display: flex;
  justify-content: flex-end;
}
.header_r ul li.web a, .header_r ul li.line a {
	color:#FFFFFF;
	display:block;
	padding:32px 5px 3px;
	text-decoration:none;
  border-radius: 5px;
	font-size:0.9em;
	text-align:center;
  margin:0 5px;
  width:100px;
}	
.header_r ul li.web a {
	background:URL("../images/icon_web_white.png") no-repeat #e76c66 center 3px;
  background-size:30px;
  border:1px solid #e76c66;
  transition: 0.3s;
}
.header_r ul li.web a:hover {
	background:URL("../images/icon_web.png") no-repeat #FFFFFF center 3px;
  background-size:30px;
  border:1px solid #e76c66;
  color:#e76c66;
}
.header_r ul li.line a {
  background:URL("../images/icon_line_white.png") no-repeat #53b551 center 3px;
  background-size:30px;
  border:1px solid #53b551;
  transition: 0.3s;
}
.header_r ul li.line a:hover {
  background:URL("../images/icon_line.png") no-repeat #FFFFFF center 3px;
  background-size:30px;
  border:1px solid #53b551;
  color:#53b551;
}
.header_r ul li.tel {
  margin-left: 12px;
  font-size: 0.9em;
  text-align: center;
}
.header_r ul li.tel a {
  font-size:2.5em;
  text-decoration: none;
  font-weight: 500;
}
.header_r ul li.tel img {
  width:22px;
  margin-right: 3px;
}
header ._staff {
  text-align: center;
  margin:12px auto -5px;
}
header ._staff img {
  width: 100%;
  max-width: 1100px;
}

@media screen and (max-width:900px){
  .header {
    display:inherit;
  }
  .header_l {
    width:100%;
    padding:10px 0 0;
  }
  .header_l ._logo img {
    width:75%;
    margin-top:10px;
  }
  .header_r {
    display: none;
  }
  header ._staff {
    margin:10px auto 0;
    background:#FFFFFF;
    height:auto;
  }
}

/* --------------------------------------------------------------------
	gnavi
-------------------------------------------------------------------- */

#gnavi {
	background:#e5e6ef;
}
#gnavi ul {
	display: flex;
  justify-content:flex-end;
  max-width:1000px;
  width: 100%;
  margin:0 auto;
}
#gnavi ul li a {
	color:#333333;
	font-weight:500;
	font-size:1.0rem;
	text-decoration:none;
	display:block;
	margin-left:30px;
	padding:14px 0;
	position: relative;
}
#gnavi ul li a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background:#6D69A3;
    transition: all .3s;
    transform: scale(0, 1);
    transform-origin: center top;
}
#gnavi ul li a:hover::after {
    transform: scale(1, 1);
}

@media screen and (max-width:871px){
	#gnavi {
		display:none;
	}
}


/* --------------------------------------------------------------------
	fixed_reserve
-------------------------------------------------------------------- */

@media screen and (min-width: 770px){
	#fixed_reserve {
		display:none;
	}
}

@media screen and (max-width:770px){
	#fixed_reserve {
		position:fixed;
		bottom:0;
		background:#FFFFFF;
		z-index:99;
		text-align:center;
		width:100%;
		margin-bottom:-5px;
	}
	#fixed_reserve p {
		background:#ffeb97;
		padding:5px 0 8px;
		margin-bottom:1px;
		border-top:3px solid #ffd72e;
	}
	#fixed_reserve p a {
		text-decoration:none;
		font-size:0.85rem;
		letter-spacing:0.01em;
	}
	#fixed_reserve p a img {
		max-width:25px;
		margin-right:5px;
		margin-bottom:-8px;
	}
	#fixed_reserve ul {
		font-size:0;
		text-align:center;
    display: flex;
    justify-content: space-between;
    margin-top:2px;
	}
	#fixed_reserve ul li {
		width:33.1%;
	}
	#fixed_reserve ul li a {
		text-decoration:none;
		text-align:center;
		font-size:0.85rem;
		letter-spacing:0.01em;
		padding:4px 0 6px;
    display: block;
	}
	#fixed_reserve ul li a img {
		max-width:23px;
		margin-bottom:-8px;
	}
	
	#fixed_reserve ul li.line {
		background:#99d898;
		border-top:3px solid #53b551;
	}
	#fixed_reserve ul li.web {
		background:#f9a5a5;
		border-top:3px solid #e76c66;
	}
	#fixed_reserve ul li.tel {
		background:#aac2f9;
		border-top:3px solid #6789e5;
	}
}


/* --------------------------------------------------------------------
	page_top
-------------------------------------------------------------------- */

#page_top {
	position:fixed;
	bottom:20px;
	right:20px;
	font-size:0.7rem;
  line-height: 1.0em;
}
#page_top a {
	background:URL(../images/top_arrow.png) no-repeat #b9b9b9 center 15px;
  background-size: 35px;
	text-decoration:none;
	color:#FFFFFF;
	width:70px;
	height:31px;
	padding:39px 0 0;
	text-align:center;
	display:block;
	border-radius:50%;
	opacity:0.7;
}
#page_top a:hover {
	text-decoration:none;
	background:URL(../images/top_arrow.png) no-repeat #b9b9b9 center 15px;
  background-size: 35px;
	opacity:1.0;
}

@media screen and (max-width:770px){
  #page_top {
    bottom:17%;
    right:2%;
  }
  #page_top a {
    background:URL(../images/top_arrow.png) no-repeat #b9b9b9 center 8px;
    background-size: 20px;
    width:50px;
    height:27px;
    padding:23px 0 0;
  }
  #page_top a:hover {
    text-decoration:none;
    background:URL(../images/top_arrow.png) no-repeat #b9b9b9 center 8px;
    background-size: 20px;
  }
}


/* --------------------------------------------------------------------
	copyright
-------------------------------------------------------------------- */

#copyright {
	background:#8389AC;
	text-align:center;
	padding:15px;
	font-size:0.9rem;
	line-height:1.5em;
	color:#FFFFFF;
}

@media screen and (max-width:770px){
	#copyright {
		margin-bottom:25%;
		padding:10px;
	}
}

















/* --------------------------------------------------------------------
	title
-------------------------------------------------------------------- */

.title_grad01 {
	width:100%;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	line-height:1.3em;
	text-align:center;
  padding:15px;
  color:#FFFFFF;
  font-family: 'Noto Serif JP', serif;
  background:linear-gradient(-90deg, #FFFFFF, #8389AC, #8389AC, #8389AC, #FFFFFF);
  width:100%;
  max-width: 1200px;
  margin:0 auto 30px;
}

.title_flower01 {
  width:100%;
  background:URL(../images/title_flower.gif);
  background-size: cover;
  font-family: 'Noto Serif JP', serif;
  font-size: 1.8em;
  line-height: 1.1em;
  height:150px;
  text-align:center;
  padding-top:110px;
  letter-spacing: 0.05em;
}
.title_flower01 .line02 {
  margin-top:-40px;
}
.title_flower01 span {
  font-size:1.4rem;
}

.title01 {
	text-align:center;
	font-family: 'Noto Serif JP', serif;
	font-weight:500;
	font-size:2.5rem;
	letter-spacing:0.1em;
	line-height:1.0em;
}
.title01 span {
	font-size:32px;
}
.title02 {
	text-align:center;
	font-family: 'Noto Serif JP', serif;
	font-size:40px;
	letter-spacing:0.08em;
	background:URL(../images/top_main_back_02.jpg);
	background-size:100%;
	width:100%;
	height:170px;
	padding-top:100px;
}
.title02 span {
	font-size:23px;
	line-height:2.5em;
}
.title03, .title03_dark {
	width:100%;
	margin: 50px auto 70px;
	font-size: 2rem;
	font-weight:500;
	letter-spacing: 0.05em;
	line-height:1.3em;
	position: relative;
	text-align:center;
	z-index: 1;
}
.title03 span, .title03_dark span {
	z-index:2;
	position: relative;
	transform:translateZ(1px);
}
.title03 span span, .title03_dark span span {
	font-size: 1.5rem;
	line-height:1.7em;
}
.title03 span p, .title03_dark span p {
	font-size: 1.5rem;
	line-height:1.7em;
}
.title03::after {
	content: "";
	position: absolute;
	bottom: -25px;
	left:0;
	background:linear-gradient(-45deg, #e5e6ef, #FFFFFF, #e5e6ef);
	width: 100%;
	height: 45px;
	z-index: 1;
}
.title03_dark::after {
	content: "";
	position: absolute;
	bottom: -30px;
	left:23%;
	background:linear-gradient(-45deg, #8389AC, #e5e6ef, #8389AC);
	width: 650px;
	height: 50px;
	z-index: 1;
}
.title04 {
	text-align:center;
	font-size:1.6rem;
	font-weight:500;
	margin:20px auto 10px;
	display: flex;
	align-items: center;
	width:100%;
	margin-bottom:30px;
  line-height: 1.4em;
}
.title04 span {
  font-size:1.2rem;
}
.title04:before,
.title04:after {
	content: "";
	flex-grow: 1;
	height: 3px;
	background: #8389AC;
	margin:0 2em;
}

.title05 {
  font-size:1.3rem;
  font-weight: 500;
  margin: 15px 0 15px;
}

/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
  .title_grad01 {
    font-size: 1.3rem;
    padding:11px 5px 12px;
    margin: 0 auto 20px;
  }
  .title_flower01 {
    height:80px;
    padding-top:55px;
  }
  .title_flower01 .line02 {
    margin-top:-20px;
  }
  .title_flower01 span {
    font-size: 1.2rem;
  }
  
  
.title01 {
	font-size:2.0rem;
}
.title01 span {
	font-size:22px;
}
.title02 {
	background-image:URL(../images/top_main_back_02.jpg) center top;
	background-repeat:no-repeat;
	background-size:110%;
	font-size:28px;
	height:90px;
	padding-top:50px;
}
.title02 span {
	font-size:18px;
	line-height:2.2em;
}
	.title03, .title03_dark{
		margin:0 auto 30px;
		font-size:1.4rem;
		line-height:1.3em;
		width:100%;
	}
	.title03 span span, .title03_dark span span{
		font-size:1rem;
		letter-spacing:0.01em;
	}
	.title03 span p, .title03_dark span p {
		font-size:0.8rem;
		line-height:1.6em;
	}
	.title03::after{
		bottom:-10px;
		left:0;
		width:100%;
		height:100%;
	}
	.title03_dark::after{
		bottom:-10px;
		left:0;
		width:100%;
		height:100%;
	}
.title04 {
	font-size:1.3rem;
}
.title04 span span {
	font-size:1.0rem;
}
.title04:before,
.title04:after {
	margin:0 0.5em;
}
}

/* --------------------------------------------------------------------
	button
-------------------------------------------------------------------- */

.button_purple01 {
  text-align: center;
  display: block;
  background:#6D69A3;
	color:#FFFFFF;
  text-decoration:none;
  padding:15px;
  border-radius:5px;
  font-size:1.1rem;
  width:80%;
  margin:0 auto;
  border:none;
}
.button_purple01:hover {
	background:#8389AC;
}




.button01 a {
	text-align:center;
	margin:50px auto;
	width:80%;
	border-radius:5px;
	max-width:500px;
	background:#6D69A3;
	color:#FFFFFF;
	display:block;
	text-decoration:none;
	padding:15px;
	font-size:1.1rem;
	font-weight:500;
}
.button01 a:hover {
	background:#8389AC;
}
/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
.button01 a {
	margin:40px auto;
	padding:10px;
	font-size:1.1rem;
}
}


/* --------------------------------------------------------------------
	breadcrumbs　●
-------------------------------------------------------------------- */
.breadcrumbs  {
	margin:30px auto 80px;
  width:96%;
	max-width:1000px;
}
.breadcrumbs li {
	display:inline;
	font-size:13px;
}
.breadcrumbs li::after {
	content:'>';
	display:inline-block;
	padding:0 10px;
}
.breadcrumbs li:last-child::after {
	display:none;
}
.breadcrumbs li a {
	color:#333333;
}
@media screen and (max-width:770px){
	.breadcrumbs  {
		margin:30px 10px 50px;
	}
	.breadcrumbs li {
		font-size:0.7rem;
		line-height:1.7em;
		letter-spacing:0;
	}
	.breadcrumbs li::after {
		padding:0 5px;
	}
}


/* --------------------------------------------------------------------
	clinic_time
-------------------------------------------------------------------- */
table.clinic_time {
	margin:30px auto;
	background:#FFFFFF;
	width:100%;
	max-width:800px;
	border-top:20px solid #FFFFFF;
	border-bottom:20px solid #FFFFFF;
	border-left:30px solid #FFFFFF;
	border-right:30px solid #FFFFFF;
}
table.clinic_time caption {
	font-size:18px;
	font-weight:600;
	margin-bottom:10px;
}
table.clinic_time th {
	font-weight:500;
	text-align:center;
	padding:10px 5px;
}
table.clinic_time td {
	font-weight:normal;
	text-align:center;
	padding:10px 5px;
	border-top:1px dotted #bbbbbb;
	vertical-align:middle;
}
table.clinic_time th.sunday {
	color:#E7211A;
}
table.clinic_time th.saturday {
	color:#039;
}
table.clinic_time td.day {
	font-weight:500;
	font-size:19px;
}

table.clinic_time th.time, table.clinic_time td.time {
	width:20%;
}

/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
table.clinic_time {
	margin:30px auto 20px;
	border:10px solid #FFFFFF;
	font-size:12px;
	line-height:1.4em;
}
table.clinic_time caption {
	font-size:16px;
}
table.clinic_time th {
	padding:7px 0px;
}
table.clinic_time td {
	padding:7px 0px;
}
table.clinic_time th.time, table.clinic_time td.time {
	width:17%;
}
table.clinic_time td.sunday, table.clinic_time td.saturday, table.clinic_time td.day {
	font-size:17px;
}
}

/* --------------------------------------------------------------------
	doctor_time
-------------------------------------------------------------------- */
table.doctor_time {
	margin:30px auto;
	background:#FFFFFF;
	width:100%;
	max-width:800px;
	border-top:20px solid #FFFFFF;
	border-bottom:20px solid #FFFFFF;
	border-left:30px solid #FFFFFF;
	border-right:30px solid #FFFFFF;
	box-shadow:3px 3px 3px -1px #e5e6ef;
}
table.doctor_time_in {
	margin-bottom:50px;
}
table.doctor_time th {
	font-weight:500;
	text-align:center;
	padding:10px 5px;
	border-right:1px dotted #bbbbbb;
}
table.doctor_time td {
	font-weight:normal;
	text-align:center;
	padding:20px 5px;
	border-top:1px dotted #bbbbbb;
	border-right:1px dotted #bbbbbb;
	font-size:15px;
	width:11.5%;
	line-height:1.5em;
}
table.doctor_time th.sunday {
	color:#E7211A;
}
table.doctor_time th.saturday {
	color:#039;
}
table.doctor_time td.day {
	font-weight:500;
	font-size:19px;
}
table.doctor_time td span.mens {
	color:#3a71ee;
}
table.doctor_time td.subject {
	width:19%;
}
table.doctor_time td.empty {
	background:#EEEEEE;
}
table.doctor_time tr.skin {
	border-bottom:3px solid #efc849;
}
table.doctor_time tr.skin td.subject {
	background:#faf1d6;
}
table.doctor_time tr.ladies {
	border-bottom:3px solid #d695b8;
}
table.doctor_time tr.ladies td.subject {
	background:#f9e7f1;
}
table.doctor_time tr.internal {
	border-bottom:3px solid #87b181;
}
table.doctor_time tr.internal td.subject {
	background:#e5f1e3;
}
table.doctor_time tr.external {
	border-bottom:3px solid #87bec5;
}
table.doctor_time tr.external td.subject {
	background:#deecee;
}
table.doctor_time tr.dental {
	border-bottom:3px solid #5c629c;
}
table.doctor_time tr.dental td.subject {
	background:#ebedf9;
}


/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
table.doctor_time {
	margin:30px auto 20px;
	border:10px solid #FFFFFF;
	font-size:12px;
	line-height:1.4em;
}
table.doctor_time th {
	padding:7px 0px;
}
table.doctor_time td {
	padding:7px 0px;
	vertical-align:middle;
	font-size:11px;
}
}




/* --------------------------------------------------------------------
	footer
-------------------------------------------------------------------- */

footer {
	background:#e5e6ef;
	padding:40px 0;
}
.footer_logo {
  text-align: center;
  margin-bottom: 25px;
}
.footer_logo img {
  width:70%;
  max-width: 450px;
}
.footer_google {
  margin:0 auto 40px;
}
.footer_access {
  display: flex;
  justify-content:space-between;
  width:94%;
  max-width: 1000px;
  margin:40px auto 50px;
  padding-bottom: 50px;
  border-bottom: 4px dotted #FFFFFF;
}
.footer_map {
  width:63%;
}
.footer_map img {
  width:100%;
  max-width: 600px;
}
.footer_address {
  width:37%;
}
.footer_address ._address {
  margin-bottom: 20px;
}
.footer_address ._subway {
  background:#FFFFFF;
  padding:15px 20px;
}
.footer_address ._subway li {
  margin-bottom: 7px;
}
.footer_address ._subway li::before {
  content: "";
	width:8px;
	height:8px;
	display:inline-block;
	background-color:#6D69A3;
	border-radius:50%;
	margin-right:7px;
}
.footer_address ._entrance {
  font-size:0.9rem;
  margin-top: 15px;
}
.footer_table {
  width:94%;
  max-width: 1000px;
  border-bottom: 4px dotted #FFFFFF;
  padding-bottom: 40px;
  margin:0 auto;
}
.footer_link {
  width:96%;
  max-width: 1000px;
  margin:40px auto;
}
.footer_link ul {
  display: flex;
  justify-content:center;
  flex-wrap: wrap;
}
.footer_link ul li {
  margin:0 15px 7px;
}
.footer_link ul li a:before {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  margin-right: 3px;
  border: transparent solid 6px;
  border-left-color: #6D69A3;
  vertical-align: 0;
}
.footer_reserve {
  background:#FFFFFF;
  padding:30px 0 0;
}
.footer_reserve ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width:96%;
  max-width: 1000px;
  margin:0 auto;
}
.footer_reserve ul li {
  width:30%;
  margin-bottom: 20px;
}
.footer_reserve ul li._line {
  text-align: right;
  margin-right: 10px;
}
.footer_reserve ul li._tel {
  width:50%;
  text-align: center;
}
.footer_reserve ul li img {
  width:70%;
}
.footer_sns ul {
  display: flex;
  justify-content: center;
  margin:30px auto 30px;
}
.footer_sns ul li {
  background: #FFFFFF;
  border-radius: 100%;
  width:55px;
  height:55px;
  margin-right: 20px;
  padding:15px 0 0 15px;
}
.footer_sns ul li img {
  width:40px;
}

/*===============================================
●画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px){
}
/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
  footer {
    padding:30px 0;
  }
  .footer_logo {
    margin-bottom: 15px;
  }
  .footer_access {
    display:block;
    margin:20px auto;
    padding-bottom: 30px;
  }
  .footer_google {
    margin:0 auto 20px;
  }
  .footer_map {
    width:100%;
    margin-bottom: 15px;
  }
  .footer_address {
    width:100%;
  }
  .footer_address ._subway {
    padding:10px 15px;
    margin:0 auto;
  }
  .footer_table {
    padding-bottom: 30px;
  }
  .footer_link {
    margin:30px auto;
  }
  .footer_reserve {
    display: none;
  }
  .footer_sns ul {
    margin:0 auto 20px;
  }
  .footer_sns ul li {
    width:45px;
    height:45px;
    margin-right: 10px;
    padding:10px 0 0 10px;
  }
  .footer_sns ul li img {
    width:35px;
  }
}



/* --------------------------------------------------------------------
	nav
-------------------------------------------------------------------- */

nav {
  display: block;
  position: fixed;
  top: 0;
  left: -800px;
  bottom: 0;
  max-width: 800px;
  width:90%;
  background: #FFFFFF;
  overflow-x: hidden;
  overflow-y: auto;
  /*-webkit-overflow-scrolling: touch;*/
  transition: all .5s;
  z-index: 5;
  opacity: 0;
}
.open nav {
  left: 0;
  opacity: 1;
}
nav .inner {
  padding: 0;
}
.toggle_btn p {
	font-size:0.7rem;
	position:absolute;
	top:25px;
	text-align:center;
	letter-spacing:0em;
  margin-left: -2px;
}
.toggle_btn p#menu {
	color:#333333;
}
.toggle_btn p#close {
	color:#FFFFFF;
}
.toggle_btn p#close {
	display:none;
}
.open .toggle_btn p#close {
	display:block;
}

/*===============================================
●画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px){
.toggle_btn {
	display: block;
	position: fixed;
	top: 12px;
	right: 18px;
	width: 30px;
	height: 30px;
	transition: all .5s;
	cursor: pointer;
	z-index: 3;
}
}

/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
nav {
	left: -85%;
	width: 85%;
}
.toggle_btn {
	display: block;
	position: fixed;
	top: 10px;
	right: 15px;
	width: 30px;
	height: 30px;
	transition: all .5s;
	cursor: pointer;
	z-index: 9;
	color:#fff;
}
.toggle_btn p {
  margin-left: 0;
}
}

.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
  transition: all .5s;
  color:#fff;
}
.toggle_btn span:nth-child(1) {
  top: 4px;
}
.toggle_btn span:nth-child(2) {
  top: 14px;
}
.toggle_btn span:nth-child(3) {
  bottom: 4px;
}
.open .toggle_btn span {
  background-color: #fff;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(10px) rotate(-315deg);
  transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}

/********************** #mask ***********************/

#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
}

/* --------------------------------------------------------------------
	nav inner
-------------------------------------------------------------------- */

#navArea .inner {
}
#navArea .inner .inner_logo {
	text-align:center;
	background:URL(../images/header_back.png);
	background-size:100%;
	padding:20px 20px 10px;
}
#navArea .inner .inner_logo img {
	max-width:350px;
	width:90%;
}
#navArea .inner .inner_cn {
  font-size:0.8rem;
  border:1px solid #AAAAAA;
  padding:3px;
  width:80px;
  text-align: center;
  margin:0 auto 15px;
}
#navArea .inner .inner_cn img {
	width:17px;
  margin:0 2px -2px 0; 
}

#navArea .inner h2 {
	text-align:center;
	font-size:1.2rem;
	font-weight:500;
	padding:10px;
	margin-bottom:5px;
	display: flex;
	align-items: center;
}
#navArea .inner h2:before,
#navArea .inner h2:after {
	content: "";
	flex-grow: 1;
	height: 2px;
	background: #8389AC;
	margin:0 2em;
}
.inner_main_list {
	padding:20px 10px 20px;
	margin:0 auto 30px;
	text-align:center;
	background:#e5e6ef;
}
.inner_main_list ul li {
	display:inline-block;
	max-width:135px;
	width:23%;
	color:#8389AC;
	margin-bottom:5px;
}
.inner_main_list ul li a {
	border:2px solid #FFFFFF;
	display:block;
	color:#8389AC;
	padding:55px 0 10px;
	text-decoration:none;
	font-size:14px;
	font-weight:500;
	letter-spacing:0.05em;
	line-height:1.3em;
}
.inner_main_list ul li a:hover {
	border:2px solid #8389AC;
}

.inner_main_list ul li#about a {
	background:URL(../images/icon_about.png) no-repeat #FFFFFF center 7px;
	background-size:40px;
}
.inner_main_list ul li#about a:hover {
	background:URL(../images/icon_about.png) no-repeat center 7px #e5e6ef;
	background-size:40px;
}
.inner_main_list ul li#access a {
	background:URL(../images/icon_access.png) no-repeat #FFFFFF center 7px;
	background-size:40px;
}
.inner_main_list ul li#access a:hover {
	background:URL(../images/icon_access.png) no-repeat center 7px #e5e6ef;
	background-size:40px;
}
.inner_main_list ul li#doctor a {
	background:URL(../images/icon_doctor.png) no-repeat #FFFFFF center 7px;
	background-size:45px;
}
.inner_main_list ul li#doctor a:hover {
	background:URL(../images/icon_doctor.png) no-repeat center 7px #e5e6ef;
	background-size:45px;
}
.inner_main_list ul li#agreement a {
	background:URL(../images/icon_agreement.png) no-repeat #FFFFFF center 7px;
	background-size:45px;
}
.inner_main_list ul li#agreement a:hover {
	background:URL(../images/icon_agreement.png) no-repeat center 7px #e5e6ef;
	background-size:45px;
}
.inner_main_list ul li#recruit a {
	background:URL("../images/icon_recruit.png") no-repeat #FFFFFF center 7px;
	background-size:45px;
}
.inner_main_list ul li#recruit a:hover {
	background:URL("../images/icon_recruit.png") no-repeat center 7px #e5e6ef;
	background-size:45px;
}
.inner_main_list ul li#news a {
	background:URL(../images/icon_news.png) no-repeat #FFFFFF center 7px;
	background-size:40px;
}
.inner_main_list ul li#news a:hover {
	background:URL(../images/icon_news.png) no-repeat center 7px #e5e6ef;
	background-size:40px;
}
.inner_main_list ul li#media a {
	background:URL(../images/icon_media.png) no-repeat #FFFFFF center 7px;
	background-size:40px;
}
.inner_main_list ul li#media a:hover {
	background:URL(../images/icon_media.png) no-repeat center 7px #e5e6ef;
	background-size:40px;
}
.inner_main_list ul li#reserve a {
	background:URL(../images/icon_reserve.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#reserve a:hover {
	background:URL(../images/icon_reserve.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}
.inner_main_list ul li#online a {
	background:URL(../images/icon_online.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#online a:hover {
	background:URL(../images/icon_online.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}
.inner_main_list ul li#movie a {
	background:URL(../images/icon_movie.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#movie a:hover {
	background:URL(../images/icon_movie.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}
.inner_main_list ul li#book a {
	background:URL(../images/icon_book.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#book a:hover {
	background:URL(../images/icon_book.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}

.inner_main_list ul li#cosme a {
	background:URL(../images/icon_cosme.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#cosme a:hover {
	background:URL(../images/icon_cosme.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}

.inner_main_list ul li#tiktok a {
	background:URL(../images/icon_tiktok.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#tiktok a:hover {
	background:URL(../images/icon_tiktok.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}

.inner_main_list ul li.insta a {
	background:URL(../images/icon_insta.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li.insta a:hover {
	background:URL(../images/icon_insta.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}

.inner_main_list ul li#info a {
	background:URL(../images/icon_info.png) no-repeat #FFFFFF center 7px;
	background-size:42px;
}
.inner_main_list ul li#info a:hover {
	background:URL(../images/icon_info.png) no-repeat center 7px #e5e6ef;
	background-size:42px;
}
.inner_main_list ul:nth-child(3) {
	border-top:3px solid #FFFFFF;
	padding-top:10px;
	margin-top:10px;
}

#navArea .inner p.img {
	text-align:center;
	margin:0 auto 150px;
}
#navArea .inner p.img img {
	width:96%;
	max-width:800px;
}

/*===============================================
●画面の横幅が9200px以上
===============================================*/
@media screen and (min-width: 920px){
  #navArea .inner .inner_cn {
    display: none;
  }
}

/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
.inner_main_list ul li a {
	padding:45px 0 5px;
	font-size:0.75rem;
	line-height:1.3em;
	letter-spacing:0.01em;
}
.inner_main_list ul li#about a, .inner_main_list ul li#about a:hover, .inner_main_list ul li#access a, .inner_main_list ul li#access a:hover, .inner_main_list ul li#doctor a, .inner_main_list ul li#recruit a, .inner_main_list ul li#recruit a:hover, .inner_main_list ul li#doctor a:hover, .inner_main_list ul li#news a, .inner_main_list ul li#news a:hover, .inner_main_list ul li#reserve a, .inner_main_list ul li#reserve a:hover, .inner_main_list ul li#online a, .inner_main_list ul li#online a:hover, .inner_main_list ul li#movie a, .inner_main_list ul li#movie a:hover, .inner_main_list ul li#book a, .inner_main_list ul li#book a:hover, .inner_main_list ul li#tiktok a, .inner_main_list ul li#tiktok a:hover, .inner_main_list ul li.insta a, .inner_main_list ul li.insta a:hover, .inner_main_list ul li#info a, .inner_main_list ul li#info a:hover {
	background-size:50%;
}
#navArea .inner h2:before,
#navArea .inner h2:after {
	margin:0 0.7em;
}
}

.inner_menu_list {
	margin:0 auto 40px;
	text-align:center;
}
.inner_menu_list ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.inner_menu_list ul li {
	margin:5px;
}
.inner_menu_list ul li#menu_list_skin a {
  background:url(../images//top_menu_skin.png) top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_skin a:hover {
  background:url(../images//top_menu_skin.png) top center;
  background-size: 105%;
}
.inner_menu_list ul li#menu_list_regenerative a {
  background:url("../images//top_menu_regenerative.png") top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_regenerative a:hover {
  background:url("../images//top_menu_regenerative.png") top center;
  background-size: 105%;
}
.inner_menu_list ul li#menu_list_artmake a {
  background:url("../images//top_menu_artmake.png") top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_artmake a:hover {
  background:url("../images//top_menu_artmake.png") top center;
  background-size: 105%;
}
.inner_menu_list ul li#menu_list_internal a {
  background:url("../images//top_menu_internal.png") top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_internal a:hover {
  background:url("../images//top_menu_internal.png") top center;
  background-size: 105%;
}
.inner_menu_list ul li#menu_list_ladies a {
  background:url("../images//top_menu_ladies.png") top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_ladies a:hover {
  background:url("../images//top_menu_ladies.png") top center;
  background-size: 105%;
}
.inner_menu_list ul li#menu_list_science a {
  background:url("../images//top_menu_science.png") top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_science a:hover {
  background:url("../images//top_menu_science.png") top center;
  background-size: 105%;
}
.inner_menu_list ul li#menu_list_dental a {
  background:url("../images//top_menu_dental.png") top center;
  background-size: 100%;
}
.inner_menu_list ul li#menu_list_dental a:hover {
  background:url("../images//top_menu_dental.png") top center;
  background-size: 105%;
}
.inner_menu_list ul li a {
	text-align:center;
	display:block;
	border:3px solid #E7E8F0;
  width: 165px;
  height:54px;
  text-decoration: none;
  padding-top:111px;
  line-height: 1.3em;
  transition: 0.3s;
}
.inner_menu_list ul li:nth-child(5) a {
  line-height: 0.3em;
}
.inner_menu_list ul li a p {
  background:rgba(255, 255, 255, 0.7);
  padding:5px 0;
}
.inner_menu_list ul li a p span {
  font-size:0.6rem;
}
.inner_menu_list ul li a:hover {
	border:3px solid #8389AC;
  transition: 0.3s;
}
.inner_menu_list ul li a img {
	width:100%;
}

/*.inner_menu_list {
	margin:0 auto 40px;
	text-align:center;
}
.inner_menu_list:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.inner_menu_list ul li {
	display:inline-block;
	max-width:140px;
	width:30%;
	vertical-align:middle;
	text-align:center;
	margin-bottom:5px;
}
.inner_menu_list ul li:last-child {
	margin-right:0;
}
.inner_menu_list ul li a {
	text-align:center;
	display:block;
	border:3px solid #8389AC;
	border-radius:500px;
	padding:10px 0 5px;
	
}
.inner_menu_list ul li a:hover {
	background:#e5e6ef;
}
.inner_menu_list ul li a img {
	width:85%;
}*/


/*===============================================
●画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px){
}
/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
  .inner_menu_list ul li {
    margin:2px;
  }
  .inner_menu_list ul li a {
    border:2px solid #E7E8F0;
    width: 87px;
    height:37px;
    padding-top:50px;
    font-size: 0.85rem;
    letter-spacing: 0.01;
  }
  .inner_menu_list ul li a p span {
    font-size:0.4rem;
  }
}

.inner_trouble_list {
	margin:0 auto 50px;
}
.inner_trouble_list ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin:0 auto 0 15px;
}
.inner_trouble_list ul li {
	background:#333333;
	width:47%;
	max-width:240px;
  margin:3px;
}

/*.inner_trouble_list ul li {
	background:#333333;
	display:inline-block;
	width:47%;
	max-width:240px;
}*/
.inner_trouble_list ul li img {
	width:100%;
}
.inner_trouble_list ul li a img {
	opacity:0.6;
	display:block;
}
.inner_trouble_list ul li a:hover img {
	opacity:1;
	transition:0.5s;
}

.inner_trouble_list .trouble_box {
	position:relative;
}
.inner_trouble_list .trouble_box a p {
	position:absolute;
	color:#FFFFFF;
	top:40%;
	left:5%;
	font-size:1.0rem;
	line-height:1.3em;
	text-align:left;
	padding:2px;
}
.inner_trouble_list .trouble_box a:hover p {
	color:#333333;
	background:rgba(255,255,255,0.7);
	transition:0.5s;
}
.inner_trouble_list .trouble_box a p span {
	font-size:13px;
}

.inner_treatment_list {
	margin:0 auto 50px;
	text-align:center;
}
.inner_treatment_list h3 {
  font-weight: 500;
  font-size:1.0rem;
  margin:10px auto 5px;
}
.inner_treatment_list ul li {
	display:inline-block;
	margin-bottom:10px;
	width:96%;
	max-width:365px;
}
.inner_treatment_list ul li:nth-child(even) {
	margin-right:0;
}
.inner_treatment_list ul li a {
	display:block;
	background:#e5e6ef;
	color:#333333;
	padding:13px 10px;
	font-size:0.9rem;
	letter-spacing:0.05em;
	text-align:left;
	border:1px solid #cfd1e3;
	text-decoration:none;
}
.inner_treatment_list ul li a:hover {
	background:#cfd1e3;
	transition:0.5s;
	text-decoration:underline;
}
.inner_treatment_list ul li a span {
	font-size:12px;
}

/*===============================================
●画面の横幅が770pxまで
===============================================*/
@media screen and (max-width:770px){
  .inner_treatment_list ul li {
    margin-bottom:8px;
  }
  .inner_treatment_list ul li a {
    padding:10px 12px;
    line-height:1.5em;
    letter-spacing:0.05em;
  }
}


/* --------------------------------------------------------------------
	共通
-------------------------------------------------------------------- */

.tlC {text-align:center;}
.tlR {text-align:right;}
.tlL {text-align:left;}
.vlT {vertical-align: top;}
.vlM {vertical-align: middle;}

.paT5 {padding-top:5px;}
.paT10 {padding-top:10px;}
.paT15 {padding-top:15px;}
.paT20 {padding-top:20px;}
.paT25 {padding-top:25px;}
.paT30 {padding-top:30px;}
.paT35 {padding-top:35px;}
.paT40 {padding-top:40px;}
.paT45 {padding-top:45px;}
.paT50 {padding-top:50px;}

.paB5 {padding-bottom:5px;}
.paB10 {padding-bottom:10px;}
.paB15 {padding-bottom:15px;}
.paB20 {padding-bottom:20px;}
.paB25 {padding-bottom:25px;}
.paB30 {padding-bottom:30px;}
.paB35 {padding-bottom:35px;}
.paB40 {padding-bottom:40px;}
.paB45 {padding-bottom:45px;}
.paB50 {padding-bottom:50px;}

.paL5 {padding-left:5px;}
.paL10 {padding-left:10px;}
.paL15 {padding-left:15px;}
.paL20 {padding-left:20px;}
.paL25 {padding-left:25px;}
.paL30 {padding-left:30px;}
.paL35 {padding-left:35px;}
.paL40 {padding-left:40px;}
.paL45 {padding-left:45px;}
.paL50 {padding-left:50px;}

.paR5 {padding-right:5px;}
.paR10 {padding-right:10px;}
.paR15 {padding-right:15px;}
.paR20 {padding-right:20px;}
.paR25 {padding-right:25px;}
.paR30 {padding-right:30px;}
.paR35 {padding-right:35px;}
.paR40 {padding-right:40px;}
.paR45 {padding-right:45px;}
.paR50 {padding-right:50px;}

.maT5 {margin-top:5px;}
.maT10 {margin-top:10px;}
.maT20 {margin-top:20px;}
.maT30 {margin-top:30px;}
.maT40 {margin-top:40px;}
.maT50 {margin-top:50px;}
.maT60 {margin-top:60px;}
.maT70 {margin-top:70px;}
.maT80 {margin-top:80px;}
.maT90 {margin-top:90px;}
.maT100 {margin-top:100px;}

.maB10 {margin-bottom:10px;}
.maB20 {margin-bottom:20px;}
.maB30 {margin-bottom:30px;}
.maB40 {margin-bottom:40px;}
.maB50 {margin-bottom:50px;}
.maB60 {margin-bottom:60px;}
.maB70 {margin-bottom:70px;}
.maB80 {margin-bottom:80px;}
.maB90 {margin-bottom:90px;}
.maB100 {margin-bottom:100px;}

.maL10 {margin-left:10px;}
.maL20 {margin-left:20px;}
.maL30 {margin-left:30px;}
.maL40 {margin-left:40px;}
.maL50 {margin-left:50px;}
.maL60 {margin-left:60px;}
.maL70 {margin-left:70px;}
.maL80 {margin-left:80px;}
.maL90 {margin-left:90px;}
.maL100 {margin-left:100px;}

.maR10 {margin-right:10px;}
.maR20 {margin-right:20px;}
.maR30 {margin-right:30px;}
.maR40 {margin-right:40px;}
.maR50 {margin-right:50px;}
.maR60 {margin-right:60px;}
.maR70 {margin-right:70px;}
.maR80 {margin-right:80px;}
.maR90 {margin-right:90px;}
.maR100 {margin-right:100px;}

.maLRauto {margin-left:auto; margin-right:auto;}

.fs12 {font-size:12px;}
.fs13 {font-size:13px;}
.fs14 {font-size:14px;}
.fs15 {font-size:15px;}
.fs16 {font-size:16px;}
.fs17 {font-size:17px;}
.fs18 {font-size:18px;}
.fs19 {font-size:19px;}
.fs20 {font-size:20px;}
.fs21 {font-size:21px;}
.fs22 {font-size:22px;}
.fs23 {font-size:23px;}
.fs24 {font-size:24px;}
.fs25 {font-size:25px;}

.fwB {font-weight:bold;}
.fwN {font-weight:normal;}
.fw500 {font-weight:500;}
.fw600 {font-weight:600;}

.fcRed01 {color:#E7211A;}
.bgWhite {background:#FFFFFF;}
.bgPurple01 {background:#E7E8F0;}