@charset "utf-8";
/* --------------------------------------------------------------------------------------------------
setting
-------------------------------------------------------------------------------------------------- */

* {
	box-sizing: border-box;
}

html, body,dl,dd,figure,ol,ul,pre {
	margin: 0;
	padding: 0;
	border:0;
	outline:0;
}

ol, ul {
	padding: 0;
	margin: 0;
	vertical-align: top;
}

/*ol:not([class]),
ul:not([class]) {
	margin-left: 1.5rem;
}
*/

.nolist {
	list-style-type: none;
}




img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
	width: 100%;
}

.nosp {
	display: none!important;
}

.img_l,
.img_r {
	display: block;
	margin: 0 auto 1em;
}

.mt1 {margin-top: 1rem;}
.mt2 {margin-top: 2rem;}
.mb1 {margin-bottom: 1rem;}
.mb2 {margin-bottom: 2rem;}

.txt-center {text-align: center;}
.txt-right {text-align: right;}

.mb_20 {
	margin-bottom: 20px !important;
}
/* pcより引き継ぎ */
.red {
	color: #ff5900;
}
.clr_red {
	color: #FF5A00;
}
.line-through {
	text-decoration: line-through;
}
.bold {
	font-weight: bold !important;
}

/* --------------------------------------------------------------------------------------------------
site
-------------------------------------------------------------------------------------------------- */

html {
	font-size: 62.5%;
}

body {
	font-size: 1.5rem;
	line-height: 1.5;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	color: #663300;
}

a {
	color: #ff5900;
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
}

.image {
	text-align: center;
	margin-bottom: 1rem;
}

.image span {
	display: block;
	padding: 1rem 0 0;
}

.image img {
	max-width: 80%;
}


.right img,
.left img {
	max-width: 60%;
}

.right_text {
	text-align: right;
}

.breadcrumb {
	justify-content: end;
}


/* ------------------------------------------------------------------------
title
--------------------------------------------------------------------------- */

.keyword_box {
	background: #ff9800;
}

h1 {
	width: 100%;
	margin: 0;
	padding: .5em 1em;
	line-height: 1;
	font-size: .6rem;
	color: #fff;
	font-weight: normal;
	overflow: auto;
	white-space: nowrap;
}

h2 {
	width: 100%;
}

h3:not(.notitle) {
	padding-left: 0;
	font-size: 1.16em;
}

h4 {
	font-size: 1.13em;
}

h5 {
	font-size: 1em;
	padding-left: 5px;
	border-left: 10px solid;
	border-bottom: 1px dotted;
}


/* ------------------------------------------------------------------------
header
--------------------------------------------------------------------------- */
header {
	border-bottom: 1px solid #ff9800;
}

.header_top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	background: #ffffad;
}


.header_top .h_logo {
	width: 80%;
	max-width: 300px;
}

.header_top .h_tel {
	width: 20%;
	max-width: 75px;
}


/* menu */

.sp_menu {
	padding: 20px 5%;
	background: #ffffdd;
	border-bottom: 1px solid #ff9800;
}

.sp_menu_btn {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	padding: 5px;
	color: #fff;
	cursor: pointer;
	text-shadow: 0 1px 0 rgba(0,0,0,0.2);
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
	border: 1px solid #ff9800;
	background: #ff9800;
}

.sp_menu_btn p {
	font-size: 1.4em;
	margin: 0;
	font-weight: bold;
	display: flex;
	align-items: center;
}

.sp_menu_btn p span {
	font-size: .9rem;
	font-weight: normal;
}

.sp_menu_btn div {
	position: relative;
	width: 24px;
	height: 21px;
	margin-right: 15px;
}
.sp_menu_btn div span {
	display: block;
	position: absolute;
	width: 100%;
	border-bottom: solid 3px #fff;
	transition: all ease .4s;
}

.sp_menu_btn div span:nth-child(1) {top: 0;}
.sp_menu_btn div span:nth-child(2) {top: 9px;}
.sp_menu_btn div span:nth-child(3) {top: 18px;}


.sp_menu_btn.active {background: #ff6c00;}
.sp_menu_btn.active div span:nth-child(1) {
	transform: translateY(8px) rotate(-135deg);
}
.sp_menu_btn.active div span:nth-child(2) {opacity: 0;}
.sp_menu_btn.active div span:nth-child(3) {
	transform: translateY(-10px) rotate(135deg);
}

.js-aco_body {
	display: none;
	margin-top: 10px;
}


.sp_menu_list {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ff9800;
	border-left: 1px solid #ff9800;
}

.sp_menu_list li {
	flex-grow: 1;
	width: 50%;
	list-style-type: none;
	border-right: 1px solid #ff9800;
	border-bottom: 1px solid #ff9800;
}


.sp_menu_list li a {
	display: block;
	padding: .5em 1em;
	background: #fff;
	font-size: 1em;
	text-decoration: none;
}


/* ------------------------------------------------------------------------
main
--------------------------------------------------------------------------- */
.main {
	padding: 0 5%;
}
.under {
	display: flex;
	flex-wrap: wrap;
}
#left_main {
	width: 100%;
	order: 2;
}
#right_main {
	width: 100%;
	order: 1;
	padding-bottom: 65px;
	background: url("../image/access-map1.gif") no-repeat bottom -14px center;
}
.con {
	margin-bottom: 3em;
}
.con_sub:not(last-of-type) {
	margin-bottom: 2em;
}

.con_sub_in:not(last-of-type) {
	margin-bottom: 1.5em;
}

#keyvisual {
	margin: 0 0 10px;
}


/* ------------------
timeline
--------------------*/
.timeline .hour {
	font-size: 1em;
}

.timeline_text dt {
	width: 80px;
}

.timeline_text dd {
	width: calc(100% - 80px);
}

/* ------------------
timeline_footer
--------------------*/
.timeline_footer {
	border-collapse: collapse;
	width: 100%;
	background: #fff;
	margin-bottom: 5px;
}

.timeline_footer th,
.timeline_footer td {
	border: 1px solid #6a3906;
	padding: 5px 0;
}

.timeline_footer th {
	padding: 3px;
	color: #fff;
	background: #6a3906;
	border-right-color: #9a6227;
}

.timeline_footer td {
	text-align: center;
}


.timeline_footer_text p {
	margin:0 auto;
	font-size: .85em;
}

#yasumi {
	color: red;
}


/* ------------------------------------------------------------------------
footer
--------------------------------------------------------------------------- */
.footer_menu {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ff9800;
}

.footer_menu li {
	flex-grow: 1;
	width: 50%;
	list-style-type: none;
	border-right: 1px solid #ff9800;
	border-bottom: 1px solid #ff9800;
}


.footer_menu li a {
	display: block;
	padding: .5em 1em;
	background: #fff;
	font-size: .85em;
	text-decoration: none;
}

.fotoer {
	width: 100%;
	background: #ff9800;
	position: relative;
	padding-bottom: 50px;
}

.copyright {
	text-align: center;
	padding: 1em 0;
	color: #fff;
	font-size: 10px;
}

#pagebottom {
	border-top: 1px solid #d6cfcf;
	position: fixed;
	display: flex;
	position: fixed;
	left: 0;
	bottom: -50px;
	z-index: 10;
	width: 100%;
	height: 50px;
	transition: bottom .3s ease;
}
#pagebottom.show {
	bottom: 0;
}

#pagebottom .item {
	flex-grow: 1;
	display: block;
	width: 25%;
	height: 50px;
	text-align: center;
	border-right: 1px solid #fff;
}

#pagebottom .item a {
	display: block;
	width: 100%;
	height: 100%;
}

#pagebottom .item img {
	height: 100%;
}

#pagebottom .item:last-of-type {
	border-right: 0;
}

.item_tel {
	background: #77b530;
}

.item_access {
	background: #77b530;
}

.item_pagetop {
	background: #77b530;
}



/* ------------------
under footer
--------------------*/
.footer_clinic {
	border-top: 5px solid #fede58;
	background: #fffbea;
	padding: 0 5%;
}

.clinic_naiyo h2 {
	font-size: 1.6em;
	margin-bottom: 5px;
	text-align: center;
}

.clinic_naiyo h2 span {
	font-size: .6em;
	display: block;
}

.clinic_naiyo h3 {
	font-size: 1.1em;
	margin-top: 0;
	text-align: center;
}

.footer_telbox {
	text-align: center;
}

.footer_telbox p {
	margin: 0 auto 5px;
}

.footer_telbox a {
	display: inline-block;
	padding: 10px;
	border-radius: 4px;
	font-weight: bold;
	text-decoration: none;
	color: #fff;
	text-shadow: 0 1px 0 rgba(0,0,0,0.2);
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
	border: 1px solid #99cf16;
	background: #99cf16;
}

.footer_add,
.footer_access {
	padding-top: 1em;
	margin-top: 1em;
	border-top: 1px dashed #cec6a6;
}

.footer_access {
	padding-bottom: 1em;
	margin-bottom: 1em;
	border-bottom: 1px dashed #cec6a6;
}


.footer_map {
	margin-top: 1em;
	padding-top: 1em;
	border-top: 1px dashed #cec6a6;
	text-align: center;
}

.footer_map a {
	text-decoration: none;
	color: #fff;
	padding: .2em 1em;
	margin: 1em 0;
	display: inline-block;
	text-shadow: 0 1px 0 rgba(0,0,0,0.2);
	border-radius: 30px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
	border: 1px solid #99cf16;
	background: #99cf16;
}

.index_body #link {
	margin-right: -5%;
	margin-left: -5%;
}

#link {
	background: #fffbea;
}

#link ul {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ffc264;
}

#link ul li {
	flex-grow: 1;
	width: 50%;
	list-style-type: none;
	border-right: 1px solid #ffc264;
	border-bottom: 1px solid #ffc264;
}

#link ul li:nth-of-type(even) {
	border-right: 0;
}


#link ul li a {
	display: block;
	padding: .5em 1em;
	color: #ff9800;
	background: #fff;
	font-size: .85em;
	text-decoration: none;
}


/* ------------------------------------------------------------------------
index
--------------------------------------------------------------------------- */
/* news */

#top-info {
	max-height: 450px;
	overflow: auto;
	margin-bottom: 2em;
}

.news {
	height: 100%;
}

.news dt {
	font-weight: bold;
	color: #ff9900;
}

.news .date {
	font-size: 12px;
	color: #a9a9a9;
	font-weight: lighter;
}

.news dt {
	margin-bottom: .5em;
}

.news dd + dt {
	border-top: 1px dashed #ccc;
	padding-top: 1.5em;
	margin-top: 1.5em;
}

/* feature */
.feature {
	text-align: center;
	padding-bottom: 1.5em;
	margin-bottom: 1.5em;
	border-bottom: 1px dashed #ccc;
}

.feature img {
	width: 80%;
	max-width: 320px;
}

.top_tokutyo {
	font-weight: bold;
	padding: .5em 0;
	display: block;
	background: #efefef;
}

.top_tokutyo span {
	color: #ff5900;
}

.top_tokutyo_s {
	text-align: left;
}

.top_tokutyo_s p {
	margin-bottom: 0;
}

.top_tokutyo_s p+p {
	margin-top: .5em;
}

/* ind_bnr */
.ind_bnr h2 {
	background: #fbfbfb;
	border-radius: 0;
	font-size: 1.1em;
	padding: .5em;
	border-color: #dedede;
	font-weight: bold;
}

.ind_bnr h2 span {
	background: none;
	padding: 0;
	text-shadow: none;
}


.top_info_corona {
	width: 100%;
	/*margin-left: 10px;
	margin-top: 20px;
	margin-bottom: 10px;*/
	border: double 10px #80ac16;
	padding: 5px;
}

.top_info_corona p.ttl  {
	/*padding-left: 10px;*/
	padding: 0 10px;
	text-align: center;
	font-size: 1.0em;
	line-height: 1.5;
	font-weight: bold;
}


/* ------------------------------------------------------------------------
under
--------------------------------------------------------------------------- */
/* ------------------
#image
--------------------*/
#image {
	position: relative;
	overflow: hidden;
	height: 100px;
}

#image img {
	position: absolute;
	top: 0;
	left: 0;
	max-width: none;
}


/* ------------------------------------------------------------------------
access
--------------------------------------------------------------------------- */
/* access_info */
.access_info img {
	display: block;
	margin: 10px auto;
}

.access_info h2 {
	font-size: 5.85vmin;
	margin-bottom: 5px;
	text-align: center;
}

.access_info h2 span {
	font-size: .6em;
}

.access_info h3 {
	font-size: 4.8vmin;
	margin-top: 0;
	text-align: center;
}

.access_info p {
	padding: 1em 0;
	border-width: 1px 0 0;
	border-style: dashed;
	border-color: #ccc;
	margin-bottom: 0;
}


/* tex_box */
.tex_box {
	padding: 1em 0;
	border-width: 1px 0;
	border-style: dashed;
	border-color: #ccc;
}

.tex_box p {
	margin: 0
}
/* access_bus */
.access_bus {
	display: inline-flex;
	flex-wrap: wrap;
	margin-bottom: .5em;
	padding-bottom: .5em;
	border-bottom: 1px dashed #ccc;
}

.access_bus dt {
	color: #970f00;
	width: 100%;
}

.access_bus dd {}

.access_bus_station {
	padding-bottom: .5em;
	margin-bottom: .5em;
}

.access_bus_station b {
	display: inline-block;
	font-size: 1.2em;
	margin: 0 .5em;
}

/* ------------------------------------------------------------------------
aisatu
--------------------------------------------------------------------------- */
#rinen dt {
	font-weight: bold;
	margin-bottom: 5px;
}

#rinen dd + dt {
	margin-top: 1em;
	padding-top: 1em;
	border-top: 1px dashed #ccc;
}

.keireki table {
	width: 100%;
	font-size: .9em;
}

.keireki .nen {
	width: 90px;
}
.keireki td {
	padding: 4px 0;
	vertical-align: top;
}

.ttl_greeting {
	border-bottom: 1px dashed #ccc;
	color: #970f00;
	padding-bottom: 5px;
	font-weight: bold;
}

/* ------------------------------------------------------------------------
annai
--------------------------------------------------------------------------- */

.yousu {
	font-size: .86em;
}

.yousu h4 {
	padding: .2em 1em;
	margin-bottom: 10px;
	border-radius: 4px;
	background: #e6e4e4;
}

.yousu p {
	display: flex;
}

.yousu img {
	display: block;
	margin-right: 1em;
}


.machine {
	font-size: .9em;
}

.machine .item:not(:last-of-type) {
	margin-bottom: 2em;
}

.machine h4 {
	padding: .2em 1em;
	margin-bottom: 10px;
	border-radius: 4px;
	background: #e6e4e4;
}

.machine p {
	display: flex;
	flex-wrap: wrap;
}

.machine img {
	display: block;
	margin: 0 auto 1em;
}


/* ------------------------------------------------------------------------
examination
--------------------------------------------------------------------------- */
.pricetable {
	font-size: .8em;
}

.pricetable th {
	background: #fede58;
	font-weight: normal;
}

.pricetable td {
	border: 1px solid #fede58;
	text-align: center;
	padding: 3px 0;
}

.pricetable .yen {
	background: #ffff9e;
	min-width: 65px;
}

.type1 th {
	border-top: 1px solid #fede58;
	border-right: 1px solid #e4c230;
	padding: 5px 0;
	vertical-align: middle;
}

.type1 th span {
	display: block;
	writing-mode: vertical-rl;
	white-space: nowrap;
	text-orientation: upright;
	margin: 0 auto;
}

.type1 th:last-of-type {
	border-color: #fede58;
}

.type2 th {
	border: 1px solid #e4c230;
}

#tokutyo ul {
	margin-left: 1em;
	list-style-image: url(../image/a_blt007.gif);
}

#tokutyo ul h4 {
	font-size: 1.12em;
}


/* ------------------------------------------------------------------------
jihi
--------------------------------------------------------------------------- */
#jihi h4 {
	background: #ffff99;
	padding: 2px 1em;
	font-size: 1em;
}

#jihi h4 img {
	margin-right: 10px;
}

.jihi_table {
	font-size: .85em;
}

.jihi_table th,
.jihi_table td {
	border: 1px solid #663300;
}

.jihi_table th {
	width: 80px;
	padding: 5px 0;
}

.jihi_table td {
	padding: 5px 1em;
}

/* ------------------------------------------------------------------------
preview
--------------------------------------------------------------------------- */

.pic_grid {
	text-align: center;
}

.pic_grid figure {
	margin-bottom: 1em;
}


/* ------------------------------------------------------------------------
sinryo
--------------------------------------------------------------------------- */
.sinryo_box {
	text-align: center;
}

#naisikyo h4 {
	border: double #fede58;
	padding: 5px 10px;
	font-size: 1.12em;
}


/* ------------------------------------------------------------------------
vaccination
--------------------------------------------------------------------------- */
.vaccination_table {
	font-size: .8em;
	text-align: left;
}

.vaccination_table th {
	background: #fede58;
	font-weight: normal;
}
.vaccination_table th,
.vaccination_table td {
	padding: 5px;
}

.vaccination_table td {
	border: 1px solid #fede58;
}

.vaccination_table .bgyellow {
	background: #ffff9e;
}

.vaccination_table.type3 th {
	border-bottom: 1px solid #e4c230;
}


/* ------------------------------------------------------------------------
sinryo
--------------------------------------------------------------------------- */
.sinryo_doctor {
	margin-bottom: 1em;
}

.sinryo_doctor * {
	box-sizing: border-box;
}

.sinryo_doctor dl {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: .4em;
	margin-bottom: .4em;
	border-bottom: 1px dashed #ccc;
}

.sinryo_doctor dl dt {
	width: 80px;
	display: flex;
	justify-content: space-between;
}

.sinryo_doctor dl dt span {
	margin-left: auto;
}

.sinryo_doctor dl dd {
	width: calc(100% - 80px);
	padding-left: .8em;
	box-sizing: border-box;
}

.pl_2em {
	padding-left: 2em!important;
}
.pl_3em {
	padding-left: 3em!important;
}
/* covid-table */
.covid-table {
  border-collapse: collapse;
width: 100%;
}
.covid-table th, .covid-table td {
  border: 1px solid #6a3906;
}
.covid-table th {
  padding: 3px;
  color: #6a3906;
  background:#d0cece;
  border-right-color: #9a6227;
}
.covid-table th:last-of-type {
  border-right-color: #6a3906;
}
.covid-table td {
  padding: 5px 3px;

}

.bnr {
	width: 90%;
	margin: 10px auto;
	display: block;

}
.bnr li{
	list-style: none;
	background: #4c1f02;/*#99cf16*/
	border-radius: 20px;
	text-align: center;
	margin-bottom: 10px;
}
.bnr li a{
	display: block;
	color: #FFF;
	text-decoration: none;
	font-weight: bold;
	padding: 10px;
}
.bnr li:first-child{
width: 100%;
}
.bnr li:last-child:not(.single){
width: 100%;
	background-color: #4c1f02;
}
.bnr.annai {
	margin: 15px auto;
}

/* ------------------------------------------------------------------------
renewal
--------------------------------------------------------------------------- */
#renewal h4 {
	background: #ffff99;
	padding: 2px 1em;
	font-size: 1em;
}
#renewal h4 img {
	margin-right: 10px;
}
#renewal .renewal_box {
	margin: 0 0 1em;
}
#renewal .renewal_box figure {
	width: 162px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}
#renewal .renewal_box figure img {
	vertical-align: bottom;
	line-height: 1;
}
#renewal .renewal_box figure::before {
	display: block;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 0.2em;
}
#renewal .renewal_box figure.before {
	background: #99cf16;
	border: 1px solid #99cf16;
}
#renewal .renewal_box figure.before::before {
	content: '改装前';
}
#renewal .renewal_box figure.after {
	margin: 1em auto 0;
	background: #fea620;
	border: 1px solid #fea620;
}
#renewal .renewal_box figure.after::before {
	content: '改装後';
}

.flex2{
	display: block;
}
.cardbox_brown {
margin: 0 auto 10px;
padding: 10px;
border:#573000 2px solid;
background: #FFDFB7;
}
.cardbox_brown.mb_20 {
	margin: 0 auto 20px;

}

.cardbox_green {
	margin: 0 auto;
padding: 10px;
	border:#7BAD00 2px solid;
	background: #EBFFC1;
	text-align: center;
	font-weight: bold;
	font-size: 120%;
	color: #7BAD00;
	line-height: 1.6;
}

.cardbox_ipl {
  margin-block-end:20px ;
	border:#DD75E6 2px solid;
	text-align: center;
	line-height: 1.4;
	border-radius: 10px;
  .inner{
      display: flex;
      align-items: center;
	  padding-inline: 1em;
	  p{
		padding-inline: .5em;
	  }
  }
}
.cardbox_ipl a{
	text-decoration: none;
	display: block;
}
.cardbox_ipl a:hover{
	color: inherit;
}
.cardbox_ipl h2{
	color: #DD75E6;
	font-weight: normal;
	font-size: 16px;
	margin-bottom: 10px;
	
}
.cardbox_ipl h2 strong{
	font-size: 30px;
}

.cardbox_ipl p.catch{
	background-color: #DD75E6;
	color: #fff;
	padding: 5px 20px;
	text-align: center;
	display: inline-block;
}

.txt_c {
  text-align: center;
}
.txt_r {
  text-align: right;
}
.txt_l {
  text-align: left;
}