@charset "UTF-8";
/* ========================================================
	Base
======================================================== */
/* Reset */
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;font-style: normal;font-weight: normal;vertical-align:baseline;background:transparent;}
body {line-height:1;-webkit-text-size-adjust: 100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;}
ul,ol {list-style:none;}
img {border: 0;}
a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;text-decoration: none;}
table {border-collapse:collapse;border-spacing:0;}
input, select {vertical-align:middle;}
textarea {resize: vertical;}

html {
	overflow-y: scroll;
	font-size: calc(100vw / 3.75);
}
body {
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",YuGothic,"游ゴシック",sans-serif;
	position: relative;
	text-align: center;
	width: 100%;
	font-feature-settings:'palt';
	overflow-x: hidden;
}
a {
	color: inherit;
	outline: none;
	word-wrap: break-word;
}
img {
	width: auto;
	max-width: 100%;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
h1,h2,h3,h4,h5,h6 {
	line-height: 1;
}
p,ul,ol,dl,table {
	line-height: 1.6;
}

/* ========================================================
	Utility
======================================================== */
.clearfix::after,
.wrap::after {
	content: "";
	display: block;
	clear: both;
}
.clearfix::before,
.wrap::before {
	content: "";
	display: block;
	clear: both;
}
.clearfix,
.wrap {
	display: block;
}
.clear { clear: both;}

.gf-nt {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.filter {
	text-shadow: 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1);
	position: relative;
	z-index: 1;
}

.mb0 { margin-bottom: 0 !important;}
.mb10 { margin-bottom: 1em !important;}
.mt0 { margin-top: 0 !important;}
.pb0 { padding-bottom: 0 !important;}
.pt0 { padding-top: 0 !important;}
.tac { text-align: center !important;}
.tar { text-align: right !important;}
.tal { text-align: left !important;}
.fs65 { font-size: 0.65em !important;}
.fs70 { font-size: 0.7em !important;}
.fs80 { font-size: 0.8em !important;}
.fs85 { font-size: 0.85em !important;}
.fs90 { font-size: 0.9em !important;}
.fs95 { font-size: 0.95em !important;}
.fs130 { font-size: 1.3em !important;}
.fw600 { font-weight: 600 !important;}
.fw700 { font-weight: 700 !important;}
.fw800 { font-weight: 800 !important;}
.ls02 {letter-spacing: -.2em;}
.ls01 {letter-spacing: -.1em;}
.ls0 {letter-spacing: 0;}
.wd50 {width: 50%;}
.wd60 {width: 60%;}
.wd70 {width: 70%;}
.wd80 {width: 80%;}
.wd85 {width: 85%;}
.wd90 {width: 90%;}
.wd95 {width: 95%;}

.bgcl { background: #F6F1F1; padding: 1em 0 .8em;}
.bgw { background: #FFF;}

.dib {display: inline-block;}

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


@media screen and (max-width : 767px) {
.pc { display: none !important;}
/*
html {
    scroll-padding-top: 50px;
}
*/
body {
	font-size: 0.165rem;
	padding: 2.5em 0 3em;
/*    height: 100dvh;*/
}
.wrap {
	width: 92%;
}
.wdful {
	margin-left: -4.1% !important;
	margin-right: -4.1% !important;
}
}

@media screen and (min-width : 600px) {
html {
	font-size: 62.5%;
}
body {
	font-size: 1.8rem;
}
}

@media screen and (min-width : 768px) {
.sp { display: none !important; }
/*
html {
    scroll-padding-top: 13em;
}
*/
.wrap {
	width: min(96%,1000px);
}
.wdful {
	margin-left: auto !important;
	margin-right: auto !important;
}
}


/* ========================================================
	Header&Footer
======================================================== */
.header {
	background: #fff;
	z-index: 200;
}
.header .header_clinic img {
	height: 1em;
	vertical-align: middle;
}
.header .header_clinic span img {
	height: .8em;
	margin-left: .3em;
}
.header .snav li a {
    display: block;
    background-size: auto 55% !important;
    border-radius: .5em;
    height: 2.5em;
    text-indent: 500%;
    white-space: nowrap;
    overflow: hidden;
}
.header .snav li:nth-of-type(1) a { background: url(/img/snav_news.png) no-repeat 50% 45% #FA8A5A;}
.header .snav li:nth-of-type(2) a { background: url(/img/snav_access.png) no-repeat 50% 45% #FA8A5A;}
.header .snav li:nth-of-type(3) a { background: url(/img/snav_tel.png) no-repeat 50% 45% #FA8A5A;}
.header .header_nav_menu {
	width: 100%;
}
.footer small {
	display: block;
	color: #fff;
	background: #FA8A5A;
	padding: 1em 0;
	font-size: 0.8em;
}
.footer small span {
	font-size: 1.7em;
	vertical-align: middle;
}
.footer .pagetop {
	display: block;	
	position: fixed;
	right: 3%;
	bottom: 4em;
	border-radius: 50%;
	text-indent: -9999px;
	outline: none;
	width: 3em;
	height: 3em;
	background: rgba(242,132,83,.3);
	z-index: 100;
    transition: .3s;
    opacity: 0;
    visibility: hidden;
}
.footer .pagetop.active {
    opacity: 1;
    visibility: visible;
}
.footer .pagetop::after {
	content: "";
	position: absolute;
	top: .7em;
	left: .8em;
	display: inline-block;
	background: #FFF;
	width: 1.5em;
	height: 1.2em;
	clip-path: polygon(0 100%, 50% 0, 100% 100%);
}
.fixed {
    position: fixed;
    top: 0;
	left: 0;
	width: 100%;
}


@media screen and (max-width : 767px) {
.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	height: 2.5em;
/*    will-change: transform;*/
}
.header .header_clinic a {
	display: flex;
	align-items: center;
    justify-content: center;
	height: 2.5em;
    padding-right: 2em;
}
.header .header_clinic a img {
    margin-bottom: .1em;
}
.header .snav {
    position: fixed;
    width: 97%;
    bottom: .3em;
    left: 1.5%;
    display: flex;
    justify-content: space-between;
/*height: calc(50px + env(safe-area-inset-bottom));*/
}
.header .snav li {
    width: 32.5%;
}
.header .header_nav_btn {
	position: fixed;
	right: 0;
	top: 0;
	background: #FFF;
	display: block;
	font-size: 1em;
	width: 2em;
	height: 2.5em;
	border: none;
	cursor: pointer;
	color: #fff;
	outline: none;
	z-index: 100;
}
.header .header_nav_btn span {
	height: 100%;
	display: flex;
    justify-content: center;
    align-items: flex-end;
}
.header .header_nav_btn::before,
.header .header_nav_btn::after,
.header .header_nav_btn span::before {
	position: absolute;
	content: "";
	display: block;
	width: 1.3em;
	height: 1.5px;
	background: #FA8A5A;
	right: .5em;
}
.header .header_nav_btn::before {top: 0.7em;}
.header .header_nav_btn::after {top: 1.2em;}
.header .header_nav_btn span::before {top: 1.7em;}
.header .active::before {
	transform: rotate(45deg);
	top: 1.2em;
}
.header .active::after {
	transform: rotate(-45deg);
	top: 1.2em;
}
.header .active span::before {
	display: none;
}
.header .header_nav_menu {
	display: none;
	background: #FA8A5A;
	position: fixed;
	left: 0;
	top: 2.5em;
	text-align: left;
/*    will-change: transform;*/
}
.header .header_nav_menu li a {
	display: block;
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	padding: 0.7em 5%;
	letter-spacing: 0;
}
.header .header_nav_menu li:last-of-type a {
	border-bottom: none;
}
}

@media screen and (min-width : 768px) {
.header {
    padding-bottom: .5em;
}
.header .header_clinic {
    width: min(99%,1000px);
    margin: auto;
    text-align: left;
	font-size: min(3.2vw,1.6em);
    line-height: 1.6;
}
.header .snav li a {
    position: absolute;
}
.header .snav li:first-of-type {
    display: none;
}
.header .snav li:nth-of-type(2) a {
    background:  linear-gradient(90deg,rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 80%, #FA8A5A 80%, #FA8A5A 100%),url(/img/snav_access.png) no-repeat .5em 50% #FA8A5A;
    background-size:auto, auto 70% !important;
	font-size: min(2.2vw,1.1em);
    width: 1.8em;
    height: 1.8em;
    border-radius: 50%;
    top: .35em;
    left: min(65%,590px);
}
.header .snav li:last-of-type a {
    background: none;
	font-size: min(3.2vw,1.6em);
    color: #FA8A5A;
    text-indent: 0;
    top: .15em;
    right: .5%;
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    height: auto;
    border-radius: 0;
}
.header .header_nav {
	width: min(100%,1000px);
	margin: auto;
}
.header .header_nav_btn {
	display: none;
}
.header .header_nav_menu {
    display: flex !important;
    justify-content: space-between;
	font-size: .8em;
    text-align: center;
    margin: .5em auto;
}
.header .header_nav_menu li {
    text-align: center;
    width: 16%;
}

.header .header_nav_menu li a {
	display: block;
    padding: .4em 0;
}
.header .header_nav_menu li a:hover {
	color: #FA8A5A;
	transition : .2s;
}
.header .header_nav_menu li:nth-of-type(n + 2) a {
	border-left: 1px solid #6C6C6C;
}
.footer .pagetop {
	font-size: 1.2em;
	bottom: 5%;
}
}

@media screen and (min-width : 1000px) {
.header .snav li:nth-of-type(2) a {
    left: calc(50% + 90px);
}
.header .snav li:last-of-type a {
    right: calc(50% - 500px);
}
.header .header_nav_menu {
	border-left: 1px solid #6C6C6C;
	border-right: 1px solid #6C6C6C;
	width: calc(100% - 2px);
}
}


/* ========================================================
	Common
======================================================== */
.cmn {
    margin-top: 2em;
}
.cmn .infotbl dt img {
    height: 1.2em;
    margin-bottom: .8em;
}
.cmn .infotbl p {
    text-align: left;
}
.cmn .infotbl dd p.tac {
    margin-bottom: .7em;
}
.cmn .infotbl table {
    width: 100%;
    margin: 0 auto .7em;
}
.cmn .infotbl tr {
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
}
.cmn .infotbl tr:first-of-type th {
    padding: .3em 0;
}
.cmn .infotbl th,
.cmn .infotbl td {
    vertical-align: middle;
}
.cmn .infotbl td strong {
    color: #FA8A5A;
    font-size: 1.5em;
}
.cmn .infotbl td:not(:last-of-type) {
    width: 9%;
}
.cmn .gmap {
    width: 100%;
    height: 20em;
    margin: 3% auto 5%;
}
.cmn .fnav ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.cmn .fnav ul:first-of-type {
    border-top: 1px solid #A6A6A6;
}
.cmn .fnav ul:first-of-type li {
    width: 50%;
    border-bottom: 1px solid #A6A6A6;
}
.cmn .fnav ul:first-of-type li:nth-of-type(even) a {
    border-left: 1px solid #A6A6A6;
}
.cmn .fnav ul:first-of-type li a {
    display: block;
    padding: .7em 0;
}
.cmn .fnav ul:last-of-type li a::before {
    content: "・";
}
.cmn .fnav ul:last-of-type li {
    margin: .8em 2%;
}
.index .cmn .infotbl {
    display: none;
}
.index .cmn .gmap {
    margin-top: 0;
}


@media screen and (max-width : 767px) {
.cmn .infotbl dd p.tac {
    letter-spacing: -.03em;
    font-size: .95em;
}
}

@media screen and (min-width : 768px) {
.cmn {
    margin-top: 3em;
}
.cmn .infotbl table {
    width: 55%;
    margin: .3em 3% 0 0;
    float: left;
}
.cmn .infotbl p:not(.tac) {
    margin-left: 58%;
}
.cmn .fnav ul:first-of-type li {
    width: 25%;
}
.cmn .fnav ul:first-of-type li:nth-of-type(4n - 1) a {
    border-left: 1px solid #4d4d4d;
}
}


/* ========================================================
	Page
======================================================== */
.cont h1.ttl {
    background: url("/img/ttl_bg.png") no-repeat 50%;
    background-size: 100% auto;
    padding: 8% 0;
    margin: 0 auto .7em;
    width: min(100%, 1000px);
}
.cont h1.ttl strong {
    color: #F87E52;
    font-size: 1.4em;
    font-weight: 700 !important;
}
.cont .breadcrumb {
    text-align: left;
    font-size: .8em;
    margin: -.5em auto 0;
}
.cont .breadcrumb li {
    display: inline-block;
}
.cont .breadcrumb li:nth-of-type(n + 2)::before {
    content: "＞";
    margin-right: .3em;
}
.cont .breadcrumb li:first-of-type a {
    background: url(/img/home.png) no-repeat 0 0;
    background-size: auto .9em;
    padding-left: 1.3em;
}
.cont h2.hlttl {
    font-size: 1.3em;
    letter-spacing: -.02em;
    margin: 2em auto .8em;
    font-weight: 600;
}
.cont h2.hlttl::before,
.cont h2.hlttl::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 2.5em;
    height: .6em;
    background: url(/img/hl_bg.png) no-repeat;
    background-size: auto 100%;
    margin-bottom: .2em;
}
.cont h2.hlttl::after {
    transform: scale(-1, 1)
}
.cont h2.lead {
    text-align: left;
    font-size: 1.2em;
    color: #F87E52;
    line-height: 1.5;
    margin: auto;
    width: min(100%, 600px);
    display: flex;
    align-items: flex-end;
    height: 6em;
    padding-bottom: 2em;
}
.cont h3.hl {
    text-align: left;
    color: #F87E52;
    background: url(/img/hl_icon.png) no-repeat 0 .1em;
    background-size: auto .9em;
    font-size: 1.2em;
    font-weight: 600;
    padding-left: 1.2em;
    margin: 1em auto .5em;
}
.cont h4.shl {
    color: #F87E52;
    font-size: 1.02em;
    letter-spacing: -.03em;
    margin: 1em auto .7em;
}

.cont p {
    text-align: justify;
    margin-bottom: .7em;
}
.cont figure {
	margin: 0 auto .8em;
}

.cont .drlead {
    position: relative;
    margin: 0 auto .7em;
    width: min(100%, 600px);
}
.cont .drlead img {
    position: absolute;
    width: 11em;
    bottom: .5em;
    right: -2.5em;
}
.cont .drlead figcaption {
    text-align: right;
}

.cont .txtlink {
	text-align: right !important;
}
.cont .txtlink a {
    color: #F87E52;
}
.cont .txtlink a::after {
	content: "＞＞";
	display: inline-block;
	vertical-align: middle;
	letter-spacing: -.2em;
	transform: scale(.7, 1);
	margin-bottom: s.1em;
}

.cont .mnav {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 1.05em;
    font-weight: 600;
}
.cont .mnav li {
    width: 100%;
    margin-top: .5em;
}
.cont .mnav li a {
    display: block;
    padding-top: 1.25em;
    padding-bottom: 1.25em;
}
.cont .mnav li:nth-of-type(1) a {
    background: url(/img/bnricon_first.png) calc(50% - 7.5em) 50% no-repeat,url(/img/bnrbg_first.png) 50% no-repeat;
    background-size: auto 2.8em, cover;
    padding-left: 2.5em;
}
.cont .mnav li:nth-of-type(2) a {
    background: url(/img/bnrbg_clinic.png) 50% no-repeat;
    background-size: cover;
}
.clinic .cont .mnav {
    justify-content: center;
}

.cont .clinictbl {
    width: 100%;
    margin: 1em auto;
    text-align: left;
    line-height: 1.3;
    border-bottom: 1px solid #B4B4B4;
}
.cont .clinictbl th,
.cont .clinictbl td {
    vertical-align: middle;
    padding-top: .7em;
    padding-bottom: .7em;
}
.cont .clinictbl .tac:not(:last-of-type) {
    width: 8.9%;
}
.cont .clinictbl .tac:last-of-type {
    width: 12%;
}
.cont .clinictbl tr:nth-of-type(-n + 5) {
    border-top: 1px solid #B4B4B4;
}
.cont .clinictbl tr:nth-of-type(-n + 5) th:first-of-type {
    position: relative;
}
.cont .clinictbl tr:nth-of-type(-n + 5) th:first-of-type::after {
    content: "：";
    position: absolute;
    right: 2%;
}
.cont .clinictbl tr:nth-of-type(n + 6) th,
.cont .clinictbl tr:nth-of-type(n + 6) td {
    padding-top: .2em;
    padding-bottom: .2em;
}
.cont .clinictbl tr:nth-of-type(5) th,
.cont .clinictbl tr:nth-of-type(5) td {
    padding-bottom: .1em;
}
.cont .clinictbl tr:last-child th,
.cont .clinictbl tr:last-child td {
    padding-bottom: .7em;
}
.cont .clinictbl th:first-of-type {
    padding-left: 1%;
    width: 24.5%;
}
.cont .clinictbl tr:nth-of-type(2) th span,
.cont .clinictbl tr:nth-of-type(4) th span {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: 2em;
    margin-right: -2em;
}
.cont .btn {
    display: block;
    border-radius: .6em;
    font-size: 1.1em;
    color: #FFF;
    border: 1px solid #FFF;
    background:#CEBDB4;
    padding: .3em 0 .2em;
    margin: 1em auto 2em;
    width: min(80vw, 500px);
    box-shadow: 0 2px 1px #D8D0CB;
}
.cont .btn::before {
    content: "";
    display: inline-block;
    width: 1.3em;
    height: 2em;
    vertical-align: middle;
    margin-right: .1em;
}
.cont .gmapbtn::before {
    background: url(/img/gmapbtn.png) no-repeat 0 40%;
    background-size: auto 1.5em;
}
.cont .drbtn::before {
    background: url(/img/drbtn.png) no-repeat 0 40%;
    background-size: auto 1.3em;
}
.cont .slideimg {
    margin: 2em 0 1em;
}
.cont .slideimg .slick-list {
  margin: 0 -.2em;
}
.cont .slideimg .slick-slide {
  margin: 0 .2em;
}
.cont .slideimg img {
    width: 200px !important;
}
.clinic .cont .slideimg {
    overflow: hidden;
    height: 37vw;
}
.clinic .cont .slideimg img {
    width: 350px !important;
}

@media screen and (max-width : 767px) {
.cont h2.lead {
    letter-spacing: -.03em;
}
.cont .breadcrumb {
	width: 92%;
}
.cont .clinictbl tr:nth-of-type(4) td,
.cont .clinictbl tr:nth-of-type(5) th:last-of-type {
    letter-spacing: -.05em;
}
}

@media screen and (min-width : 600px) {
.cont .clinictbl th:first-of-type {
    width: 17%;
}
.cont .clinictbl tr:nth-of-type(-n + 5) td {
    padding-left: 3%;
}
.cont .clinictbl tr:nth-of-type(-n + 5) th:first-of-type::after {
    right: 20%;
}
.cont .clinictbl .tac:not(:last-of-type) {
    width: 7%;
}
.cont .clinictbl .tac:last-of-type {
    padding-right: 6%;
}
.cont .clinictbl tr:nth-last-of-type(-n + 2) th {
    width: 17.1%;
}
.clinic .cont .slideimg {
    height: 201px;
}
}

@media screen and (min-width : 768px) {
.cont h1.ttl {
    padding: 8% 0;
    font-size: 1.5em;
    margin-bottom: 1em;
}
.cont .breadcrumb {
	width: min(96%,1000px);
}
.cont h2.hlttl {
    font-size: 1.5em;
}
.cont h2.lead {
    font-size: 1.5em;
}
.cont h3.hl {
    font-size: 1.3em;
}
.cont h4.shl {
    font-size: 1.1em;
    letter-spacing: 0;
}
.cont figure.fl-r {
    float: right;
    width: 30%;
    margin: 0 0 1em 3%;
}
.cont figure.fl-l {
    float: left;
    width: 40%;
    margin: 0 3% 1em 0;
}
.cont .drlead {
    margin-bottom: 1.5em;
}
.cont .drlead img {
    width: 14em;
}
.cont .mnav li {
    width: 49%;
    font-size: 1.1em;
}
.cont .clinictbl th:first-of-type {
    padding-left: 5%;
}
.cont .slideimg img {
    width: 300px !important;
}
.clinic .cont .slideimg img {
    width: 350px !important;
}
}

@media screen and (min-width : 1000px) {
.cont h1.ttl {
    padding: 3em 0;
}
}


/*	index 
-----------------*/
.secbg {
    background: #F8F6F4;
    padding-bottom: 1em;
    margin-bottom: 1em;
}
.secbg .wrap {
    background: #FFF;
    margin: auto;
    padding: .5em 2%;
    width: 88%;
}
.secbg h2.gf-nt {
    background: #FFF;
    margin-bottom: .7em;
    padding-bottom: .8em;
}
.secbg > h3 {
    background: #FFF;
    width: min(92%,1000px);
    margin: 0 auto;
    border-top: solid 1em #F8F6F4;
    padding: .5em 0 0;
}
.secbg > h3 span {
    display: inline-block;
    background: #FA8A5A;
    color: #FFF;
    border-radius: 1em;
    font-size: 1.2em;
    font-weight: 600;
    padding: .5em 0;
    width: min(70%,450px);
    margin: auto;
}

.index .mv {
	margin: 0 auto 1em;
	text-align: center;
	position: relative;
	visibility: hidden;
    z-index: -1;
    overflow: hidden;
}
.index .mv.slick-initialized{
	visibility: visible;
}
.index .mv::after {
	content: "";
	display: block;
	width: calc(100% + 3em);
	height: 4em;
	position: absolute;
	background: #FFF;
	bottom: -2em;
	border-radius: 50% 50% 0 0;
	margin: 0 -1.5em;
}
.index .mv .slick-dots {
	position: absolute;
	width: 100%;
	left: 0;
	bottom: -.5em;
	z-index: 10;
}
.index .mv .slick-dots li {
	display: inline;
	margin: 0 1%;
}
.index .mv .slick-dots li button {
	background: #F2EBEA;
	display: inline-block;
	text-indent: -9999px;
	width: .8em;
	height: .8em;
	border-radius: 50%;
	border: none;
	padding: 0;
	cursor: pointer;
	outline: none;
}
.index .mv .slick-dots li.slick-active button {
	background: #FA8A5A;
}

.index .catch {
    line-height: 1.4;
    color: #F87E52;
    font-size: 1.2em;
}
.index .drmsg {
    position: relative;
    padding-top: 7em;
}
.index .drmsg img {
    position: absolute;
    bottom: 0;
    right: -2em;
    width: 11em;
}
.index .drmsg figcaption {
    background: url(/img/bg_dr.png) calc(100% - 2em) 0 no-repeat;
    background-size: auto 100%;
    padding: 1.7em 22% 1.7em 0;
    text-align: right;
}
.index .news_list {
    overflow-y: scroll;
    height: 20em;
    text-align: left;
    padding-top: 1em;
}
.index .news_list dt {
    font-size: .9em;
}
.index .news_list dt.news_cat {
    float: right;
    background: #F99D74;
    color: #FFF;
    display: inline-block;
    width: 6em;
    text-align: center;
}
.index .news_list dd {
    clear: both;
    border-bottom: 1px solid #BABABA;
    padding: .5em 0;
    margin-bottom: 1em;
}
.index .news_list dd h3 {
    font-size: 1.05em;
    line-height: 1.3;
    margin-bottom: .5em;
}
.index .news_list dd p {
    margin-bottom: .5em;
}

.index .dr img {
    width: min(75%, 400px);
}
.index .dr figcaption {
    border-bottom: 1px solid #989898;
    border-top: 1px solid #989898;
}
.index .dr dl {
    text-align: left;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: auto;
    width: min(96%,650px);
}
.index .dr dl dt {
    padding: .7em 0;
    width: 100%;
}
.index .dr dl dd {
    margin-bottom: .7em;
    width: 100%;
}
.index .dr dl p {
    text-indent: -4.7em;
    padding-left: 4.7em;
    margin-bottom: 0;
}


@media screen and (max-width : 767px) {
.index .mv {
    height: min(64vw,480px);
}
}

@media screen and (min-width : 768px) {
.secbg {
    padding-bottom: 2em;
    margin-bottom: 1.5em;
}
.secbg .wrap {
    width: min(92%, calc(1000px - 4%));
    padding-top: 1em;
}
.secbg h2.gf-nt {
    margin-bottom: 1.2em;
}
.secbg > h3 {
    padding-top: 1em;
    border-top: solid 1.7em #F8F6F4;
}

.index .mv {
    height: min(62vw,616px);
}
.index .mv figure {
	background-size: 100% auto !important;
	background-color:rgba(255,255,255,0.8) !important;
	background-blend-mode:lighten !important;
}
.index .mv figure:nth-of-type(1) {background: url(/img/mv01.jpg) no-repeat 50%;}
.index .mv figure:nth-of-type(2) {background: url(/img/mv02.jpg) no-repeat 50%;}
.index .mv figure:nth-of-type(3) {background: url(/img/mv03.jpg) no-repeat 50%;}
.index .mv figure:nth-of-type(4) {background: url(/img/mv04.jpg) no-repeat 50%;}
.index .mv figure:nth-of-type(5) {background: url(/img/mv05.jpg) no-repeat 50%;}
.index .mv img {
	margin: auto;
	width: min(100%,1000px) !important;
}
.index .mv::after {
	width: min(120%,1200px);
	left: 50%;
	height: 10em;
	transform: translateX(-50%);
	bottom: -7em;
	margin: 0;
}
.index .mv .slick-dots {
	bottom: -.5em;
	bottom: 0;
}
.index .mv .slick-dots li {
	font-size: 1.2em;
}

.index .catch {
    font-size: 1.7em;
}
.index .drmsg {
    font-size: 1.3em;
}
.index .drmsg img {
    right: 0;
}
.index .drmsg figcaption {
    background-position: calc(100% - 4em) 0;
    font-size: .9em;
}
.index .dr dl dd:nth-of-type(1) {
    width: 55%;
}
.index .dr dl dd:nth-of-type(2) {
    width: 40%;
}
}


/*	 doctor
-----------------*/
.doctor .drprof table {
    grid-column-start: 1;
    grid-row-start: 2;
    width: 100%;
    margin: 0 auto 1em;
    border: 1px solid #999;
}
.doctor .drprof table th {
    background: #F8F3F0;
    width: 5em;
}
.doctor .drprof table td {
    text-align: left;
    padding: .5em 3%;
}
.doctor .drprof p {
    border: 1px solid #999;
    padding: .5em 3%;
    margin-bottom: 1.5em;
}

@media screen and (min-width : 768px) {
.doctor .drprof {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 2em;
}
.doctor .drprof h3 {
    width: 100%;
}
.doctor .drprof h3:last-of-type {
    grid-column-start: 2;
    grid-row-start: 1;
    width: 95%;
    margin-left: 5%;
}
.doctor .drprof p {
    margin-left: 5%;
    width: 89%;
    height: 5em;
}
}


/*	 clinic
-----------------*/
.clinic .cont h2.lead {
    text-indent: 4%;
}
.clinic .wrap.fs95 span {
    margin-bottom: .3em;
}
.clinic .accinfo {
    text-align: left;
    margin-bottom: 1em;
    position: relative;
}
.clinic .accinfo dt {
    background: #FA966C;
    color: #FFF;
    font-size: 1.15em;
    padding: .3em 0;
    margin-bottom: .7em;
}
.clinic .accinfo dt::before {
    content: "";
    background: #FFF;
    display: inline-block;
    width: .8em;
    height: .8em;
    vertical-align: middle;
    margin: 0 .3em .2em 2%;
}
.clinic .accinfo.pnl::after {
    content: "";
    position: absolute;
    right: 2%;
    top: .4em;
    display: inline-block;
    background: #FFF;
    width: 1.5em;
    height: 1.5em;
    border-radius: 50%;
}
.clinic .accinfo.pnl dt {
    cursor: pointer;
}
.clinic .accinfo.pnl dt::after {
    content: "";
    display: inline-block;
    width: .7em;
    height: .65em;
    background: #FA966C;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    position: absolute;
    right: 2%;
    top: .7em;
    z-index: 2;
    margin-right: .3em;
}
.clinic .accinfo.pnl dt.close::after {
    top: .6em;
    clip-path: polygon(0 100%, 50% 0, 100% 100%);
}
.clinic .accinfo dd figure {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.clinic .accinfo dd figure img,
.clinic .accinfo dd figure figcaption {
    width: 100%;
}
.clinic .accinfo dd figure figcaption {
    margin: .5em 0;
}

@media screen and (max-width : 767px) {
.clinic .accinfo:not(.pnl) dd figure img {
    width: 85%;
    margin: auto;
}
}

@media screen and (min-width : 768px) {
.clinic .accinfo dd figure img {
    width: 35%;
}
.clinic .accinfo dd figure figcaption {
    width: 62%;
}
}


/*	 medical
-----------------*/
.medical .medlist {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 1.1em;
    margin: 1em auto;
}
.medical .medlist li {
    margin: .2em 0;
    width: 48.5%;
}
.medical .medlist li a {
    display: block;
    padding: .4em 0;
    color: #FFF;
    background: #F89163;
}
.medical .medlist li a::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: .9em;
    background: #FFF;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    vertical-align: middle;
    margin: 0 0 .2em .3em;
}
.medical .medpic {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: auto;
}
.medical .medpic figure {
    margin: .7em 0;
}
.medical .medpic figcaption {
    font-size: 1.15em;
    margin-top: .5em;
}

@media screen and (max-width : 767px) {
.medical .medlist {
    width: 90%;
}
.medical .medlist li:nth-of-type(3n) {
    width: 100%;
}    
.medical .medpic figure {
    width: 49%;
}
.medical .medpic figure img {
    width: 70%;
}
.medical figure.fl-r {
    width: 75%;
}
}

@media screen and (min-width : 768px) {
.medical .medlist {
    width: 100%;
}
.medical .medlist li {
    margin: .5% 0;
    width: 32.5%;
}
.medical .medpic {
    justify-content: center;
}
.medical .medpic:first-of-type figure:nth-of-type(1){
    margin-left: 1%;
}
.medical .medpic:first-of-type figure:nth-of-type(3){
    margin-right: 1%;
}
.medical .medpic figure {
    width: 25%;
}
.medical .medpic figure img {
    width: 80%;
}
}


/*	 first
-----------------*/
.first h2.lead {
    width: 100%;
    margin-top: .5em;
    align-items: center;
    height: 5.5em;
    padding: 0 4.1% 0;
    background: url(/img/bg_first.jpg) no-repeat calc(100% + 1em) 100%;
    background-size: auto 160%;
}
.first .firstflow {
    margin-bottom: 1.5em;
}
.first .firstflow figure {
    width: 80%;
    margin: .5em auto 0;
}
.first .firstflow li:nth-of-type(3) .clearfix figure img {
    width: 49%;
}
.first .firstflow li:nth-of-type(3) .clearfix figure img:first-of-type {
    margin-right: 2%;
}
.first .firstflow strong.gf-nt {
    display: block;
    text-align: left;
    color: #F87E52;
    font-size: 1.1em;
    font-weight: 600;
    margin: .5em 0 0;
}
.first .firstflow strong.gf-nt::before {
    content: "";
    display: inline-block;
    width: 1.3em;
    height: 1.3em;
    vertical-align: middle;
    margin: 0 .3em .15em 0;
    background-size: 100% auto !important;
}
.first .firstflow li:nth-of-type(1) strong.gf-nt::before { background:  url(/img/firstflow01.png) no-repeat;}
.first .firstflow li:nth-of-type(2) strong.gf-nt::before { background:  url(/img/firstflow02.png) no-repeat;}
.first .firstflow li:nth-of-type(3) strong.gf-nt::before { background:  url(/img/firstflow03.png) no-repeat;}
.first .firstflow li:nth-of-type(4) strong.gf-nt::before { background:  url(/img/firstflow04.png) no-repeat;}

@media screen and (max-width : 767px) {
.first .firstwrap figure {
    width: 80%;
}
.first .firstflow li:nth-of-type(3) .clearfix figure {
    width: 100%;
    margin-bottom: .5em;
}
}

@media screen and (min-width : 768px) {
.first h2.lead {
    width: 100%;
    margin: .5em auto 0;
    padding: 0;
    background: url(/img/bg_first.jpg) no-repeat calc(50% + 7em) 100%;
    background-size: auto 160%;
    text-align: center;
    justify-content: center;
}
.first .firstwrap {
    position: relative;
    padding: 0 33% 1em 0;
}
.first .firstwrap figure {
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
}
.first .firstflow li {
    clear: both;
}
.first .firstflow figure {
    width: 30%;
    margin: 0 0 1em 3%;
    float: right;
}
}


/*	 sitemap
-----------------*/
.smtree {
    text-align: left;
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    line-height: 2;
    padding: .6em 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.smtree li {
    width: 100%;
}
.smtree li::before {
    content: "";
    display: inline-block;
    width: .7em;
    height: .7em;
    margin: 0 .4em .3em 0;
    vertical-align: middle;
    background: #FA8A5A;
}

@media screen and (min-width : 768px) {
.smtree {
    padding: 1em 5%;
    line-height: 3;
}
.smtree li {
    width: 49%;
}
}

