@charset "utf-8";
/* ----------------------------------------------------------------------------------
	common
---------------------------------------------------------------------------------- */
html {
  font-size: 62.5%;
} /* 1.0em ≒ 10px */
body {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 1.6rem;
  line-height: 1.6;
  border-top: #A8CE45 1rem solid;
}
/* Font
-------------------------------*/
@font-face {
  font-family: "LogoTypeGothic";
  src: url("../font/07LogoTypeGothic7.eot?") format('eot'), url("../font/07LogoTypeGothic7.woff") format('woff');
}
.LogoType {
  font-family: "LogoTypeGothic", "Noto Sans Japanese", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
/* InnerFrame
-------------------------------*/
.inner {
  padding: 0;
}
/* Link
-------------------------------*/
a:link {
  color: #8DC21F;
}
a:visited {
  color: #8DC21F;
}
a:hover {
  color: #C2DB7D;
}
/* Index
-------------------------------*/
h2 {
  /*	text-align: center;
	font-weight: normal;*/
  font-family: "Hiragino Maru Gothic ProN";
  font-size: 2rem;
  margin-bottom: 10px;
  color: #534640;
}
#SubPage h2 {
  text-align: center;
  position: relative;
  margin: 0;
  padding: 2.5rem 0 1.5rem;
  background: #A67D30;
  letter-spacing: 0.5rem;
  /*
background: -moz-linear-gradient(to bottom, #CDBDA9, #A67D30);
background: -webkit-linear-gradient(to bottom, #CDBDA9, #A67D30);
background: linear-gradient(to bottom, #CDBDA9, #A67D30); */
  color: white;
  font-weight: lighter;
  border-bottom: 1px solid #A67D30;
  box-shadow: 0 2px 3px rgba(166, 125, 48, 0.8);
  box-sizing: border-box;
}
#SubPage h2::before {
  content: '';
  position: absolute;
  height: 1rem;
  width: 100%;
  border: solid 5px #6c3d09;
  box-sizing: border-box;
  top: 0;
  left: 0;
  box-shadow: 0 2px 3rem rgba(255, 255, 255, 0.7);
}



#SubPage .overview h2 {
font-weight: bold !important;
font-family: "Hiragino Maru Gothic ProN";
color: #534640;
background: none !important;
border-bottom: 0px !important;
box-shadow: none !important;
letter-spacing: normal;
margin-bottom: 2rem !important;
}

#SubPage .overview h2::before {
  height: auto;
  width: auto;
  border: 0;
  box-sizing: border-box;
}



h3 {
  color: #86C03F;
  font-family: "Hiragino Maru Gothic ProN";
  font-size: 2rem;
  font-weight: bold;
  padding: 2rem 0 0 8rem;
  margin-bottom: 1.5rem;
  top: 1rem;
  background: url(../images/common/icon_h3.png) left center no-repeat;
  min-height: 70px;
  vertical-align: middle;
  letter-spacing: 0.2rem;
}
h4 {
  font-size: 1.6rem;
  font-weight: normal;
  padding: 0.5rem 0 0.5rem 8rem;
  background: url(../images/common/icon_h4.png) no-repeat 2rem center;
  border-bottom: solid 0.3rem #ccc;
  border-top: solid 0.3rem #ccc;
  margin-bottom: 1.2rem;
}
h5 {
  padding: 5px 1rem;
  background: -moz-linear-gradient(to top, #ecf4dd, transparent);
  background: -webkit-linear-gradient(to top, #ecf4dd, transparent);
  background: linear-gradient(to top, #ecf4dd, transparent);
  font-size: 1.6rem;
  font-weight: normal;
  color: #544741;
  margin-bottom: 1rem;
}
/*h6 {
	font-size: 1.6rem;
	font-weight: normal;
	padding: 0.5rem;
	border-bottom: 1px dashed #60351B;
	color: #60351B;
	margin-bottom: 1rem;
}*/
section {
  margin: 0 auto 3rem;
  overflow: hidden;
}
section section {
  margin: 2rem auto 2rem;
}
section section section {
  margin: 1.5rem auto;
}
.clear {
  clear: both;
}
/* Header
-------------------------------*/
h1 {
  font-size: 0.5rem;
  color: #ccc;
  text-align: left;
  padding: 0.2rem
}
header {
  padding: 1rem;
  text-align: center;
}
header img {
  margin-bottom: 1rem
}
/* Navigation
-------------------------------*/
nav {
  display: block;
}
nav ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  border-top: 1px solid #C6C6C6;
}
nav li {
  width: 50%;
  text-align: center;
  flex-wrap: wrap;
  line-height: 0;
  background-color: #fff;
  border-bottom: 1px solid #C6C6C6;
  background: url(../images/common/bg_gnav.png) no-repeat;
  background-size: auto;
}
nav li a {
  display: block;
  text-align: center;
  padding: 10px;
}
/* Main
-------------------------------*/
.mainarea {
  padding: 2rem 1rem;
}
/* SideNavi
-------------------------------*/
.s_navi {
  width: 100%;
}
.s_navi dt {
  text-align: center;
}
.s_navi ul {
  /* flex化 */
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  padding: 0;
  border-top: #a2ca11 3px solid;
  border-bottom: #a2ca11 3px solid;
}
.s_navi ul li {
  width: 50%;
  padding: 0.8rem 1rem;
  border-bottom: 1px dotted #E4F0C8;
}
.s_navi ul li:nth-child(odd) {
  border-right: 1px dotted #E4F0C8;
}
.s_navi ul li:last-child {
  border-bottom: none;
}
/* Footer
-------------------------------*/
/*footer{

	background-color:#E0F7FF; 
	font-size:1.6rem;
	line-height: 1.6;
	border-top:#a2ca11 1px solid;
}
 */
.overview {
  background: #E4D8C0;
  margin-bottom: 0;
}
/*#SubPage .overview {
  background-color: transparent;
}*/
.overview dt {
  padding: 2px 1rem;
  text-align: center;
  border: 1px solid #fff;
  margin-bottom: 0.5rem;
  color: #534640;
  font-family: "Hiragino Maru Gothic ProN";
  width: 10rem;
  -moz-text-align-last: justify;
  text-align-last: justify;
  font-size: 1.5rem;
}
.accesspage .overview dt {
  border-color: #ED7892 !important;
  ;
}
#access .overview .transportation dt {
  width: auto;
  -moz-text-align-last: center;
  text-align-last: center;
  font-size: 1.5rem;
}
.overview dd {
  margin-bottom: 1rem;
}
footer .overview h2 {
  text-align: center;
  padding: 1.5rem 0 !important;
}
footer .overview .data_area {
  margin: 2rem auto;
}
footer .overview .data_area p {
  font-size: 1.3rem;
}
.f_navi {
  display: none;
}
/* 診療時間のテーブル
-------------------------------*/
table.time {
  font-size: 1.4rem;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 1px;
  text-align: center;
  width: 100%;
}
table.time tr {
  background: #fff;
}
table.time tr.week {
  background: #ED7892;
  color: #fff;
}
table.time th {
  padding: 0.7rem;
  vertical-align: middle;
}
table.time td {
  padding: 0.7rem;
  vertical-align: middle;
}
table.time tr td:first-child {
  background: #e7e7e7;
  font-size: 1.1rem;
}
table.time tr td:nth-of-type(2) {
  text-align: right;
}
/*#access table.time {
  background-color: #E4D8C0;
}*/
.open {
  color: #ED7892;
}
/* ----------------------------------------------------------------------------------
	Modules
---------------------------------------------------------------------------------- */
/*	flex setting
-------------------------------*/
.flex_LRTB, .flex_RLTB {
  flex-direction: column;
  -webkit-flex-direction: column;
}
/* シンプルテーブル
------------------------------- */
table.tbl_sim {
  box-sizing: border-box;
}
table.tbl_sim caption {
  font-weight: bold;
  color: #ED7892;
}
table.tbl_sim thead th {
  display: none;
}
table.tbl_sim tbody tr {}
table.tbl_sim td, table.tbl_sim th {
  border: 1px solid #f4ddec;
  padding: 10px;
  width: 100%;
  display: block;
  border-collapse: collapse;
}
table.tbl_sim thead th {
  background: #f4ddec;
}
table.tbl_sim tbody th {
  background: #f4ddec;
  border-bottom: none;
  font-weight: normal;
}
/* テキスト関連
------------------------------- */
.txt_red {
  color: #f00;
}
/* signature
-------------------------------
.signature{
	font-size: 2rem;
}
.signature span{
	font-size: 1.6rem;
}
.signature span:after{
	content:"　";
}
*/
/*	GoogleMaps
-------------------------------
.gmap{
	width:100%;
	min-height:40rem;
	margin-bottom:1rem;
}*/
/* List
-------------------------------*/
/*.list_dot ,.list_caution , .list_rule {
	padding-left: 1rem;
} */
.list_dot li {
  margin-left: 0;
}
.list_dot li::before {
  display: inline-block;
  content: "●";
  font-weight: 100;
  font-style: normal;
  color: #ED7892;
  margin-right: 0.2rem;
}
.list_caution {
  margin-bottom: 2rem;
}
.list_caution li {
  text-indent: -1.75rem;
  margin-left: 1.75rem;
}
.list_caution li:before {
  content: "※ ";
}
.list_check {
  margin-left: 1.5em;
}
.list_check li {
  text-indent: -0.6em;
}
.list_check li::before {
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  content: "\f14a";
  font-weight: bold;
  font-style: normal;
  color: #ED7892;
  width: 0.6em;
}
.list_rule li {
  border-bottom: 1px dotted #ccc;
  padding: 0.3rem;
}
.list_inline li {
  display: inline-block;
  margin-right: 1rem;
}
ol.def_ol li {
  list-style: decimal;
  margin-left: 2rem;
}
dl.dl_sim dt {
  border-bottom: 3px double #A77F33;
  padding: 0.3rem 0 0.3rem 0.5rem;
}
dl.dl_sim dt i {
  color: #ED7892;
  width: 1.5em;
}
dl.dl_sim dd {
  margin: 0.3rem 0 1.5rem;
}
/* ColoredBox
-------------------------------*/
.box_gr {
  background-color: #ecf4dd;
  padding: 1.5rem;
  margin: 1.5rem 0;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}
.box_gr .title {
  font-size: 1.7rem;
  margin-bottom: 1rem;
  color: #02722F;
  font-weight: bold;
}
div.box_gr *:last-child {
  margin-bottom: 0;
}
/* 流れ図 
-------------------------------*/
ol.flow_list {
  list-style: none;
  padding: 0;
  margin: 0;
}
ol.flow_list li {
  border: 5px solid #C3E2F9;
  border-radius: 10px;
  margin-bottom: 35px;
  padding: 4px 10px;
  position: relative;
}
ol.flow_list li::after {
  bottom: -34px;
  color: #C3E2F9;
  content: "▼";
  font-size: 24px !important;
  left: 48%;
  position: absolute;
}
ol.flow_list li:last-child::after { /*最後の▼を外す*/
  content: "";
}
ol.flow_list li p.title {
  font-weight: bold;
  font-size: 2rem;
}
ol.flow_list li p.title::first-letter { /*1文字めを大きく*/
  font-family: Monotype Corsiva, garamond, times;
  font-size: 3.5rem;
  font-style: italic;
  letter-spacing: 0.15em;
  color: #54ADF1;
}
/* Link Button
-------------------------------*/
.linkbox, .linkbox_s {
  margin: 1rem auto;
}
.linkbox a:link {
  display: inline-block;
  padding: 0.5rem 1rem;
  background-color: #ED7892;
  color: #ffffff;
  border-radius: 0.5rem;
  width: 100%;
  text-align: center;
}
.linkbox a:visited, .linkbox_s a:visited {
  color: #ffffff;
}
.linkbox a:hover, .linkbox_s a:hover {
  color: #ffffff;
  background-color: #D14477;
}
.linkbox_s a:link {
  display: inline-block;
  padding: 0.5rem;
  background-color: #ED7892;
  color: #ffffff;
  border-radius: 0.5rem;
  width: 100%;
  text-align: center;
}
a.gm:before {
  font-family: "Font Awesome 5 Free";
  content: '\f279';
  font-weight: 900;
  padding-right: 1rem;
}
a.aacr:before {
  font-family: "Font Awesome 5 Free";
  content: '\f35a';
  font-weight: 900;
  padding-right: 1rem;
}
/* GoToTop
-------------------------------*/
#pageTop {
  display: block;
  position: fixed;
  z-index: 9999;
  bottom: 2rem;
  right: 2rem;
}
#pageTop a::before {
  content: "\f0d8\00a0";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
#pageTop a {
  display: block;
  color: #562e00;
  text-align: center;
  text-decoration: none;
  background-color: #DAA6B2;
  border-radius: 10rem;
  font-size: 1.2rem;
  line-height: 1.2rem;
  padding: 0.7rem 1rem;
  opacity: 0.8;
}
#pageTop a:hover {
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
  display: block;
}
/* 画像のフロート SP時は解除 */
figure.float-l, figure.float-r {
  float: none;
  margin: auto;
  width: 100%;
  text-align: center;
  margin-bottom: 1rem;
}
/* キャッチコピー
-------------------------------*/
.catchcopy {
  vertical-align: middle;
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #ccc;
  background: #E4D8C0;
  padding: 0.5rem;
  margin-bottom: 1rem;
}
.catchcopy span {
  font-size: 2rem;
  position: relative;
  padding: 0.5rem 0 0 5rem;
  display: inline-block;
}
.catchcopy span::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  content: "\f0eb";
  background: #ce6b81;
  color: white;
  font-weight: normal;
  font-size: 2.5rem;
  border-radius: 50%;
  left: 0;
  width: 3.5rem;
  height: 3.5rem;
  line-height: 3.5rem;
  text-align: center;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.catchcopy span:after { /*吹き出しのちょこんと出た部分*/
  content: '';
  display: block;
  position: absolute;
  left: 3rem;
  height: 0;
  width: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 12px solid #ce6b81;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
/* ----------------------------------------------------------------------------------
	トップ
---------------------------------------------------------------------------------- */
/* Index
-------------------------------*/
/*	キービジュアル
-------------------------------*/
.kv_area {
  text-align: center;
  position: relative;
  line-height: 0;
  margin-bottom: 1rem;
}
.kv_base img {
  margin: 0;
  padding: 0;
  display: inline-block;
}
.keyv_area .kv_word_n {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 40%;
  margin: 0;
}
/*	お知らせ
-------------------------------*/
.news h2 {
  text-align: left;
}
.news dl {
  margin-bottom: 2rem;
  overflow: auto;
  max-height: 400px;
  border-bottom: #eee solid 1px;
  border-top: #eee solid 1px;
  padding: 1rem 0;
}
.news dt {
  font-size: 1.7rem;
  font-weight: bold;
  color: #ED7892;
	cursor: pointer;
	position: relative;
	padding-left: 1.3em;
}
.news dt::before {
	content: '▼';
	position: absolute;
	left: 0;
	top: 0;
}
.news dt.active::before {
  content: '▲';
}
.news dt:not(:first-of-type) {
	margin-top: 1em;
}
.news dt .date {
	display: block;
}
.news dd {
	margin: 0.5em 0 1.5em 1.3em;
}
/*	appeal
-------------------------------*/
#appeal {
  margin: 2rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}
#appeal figure {
  width: 100%;
  text-align: center;
}
#appeal figure img {
	max-width: 250px;
	height: auto;
}
/*	理念 idea
-------------------------------*/
#idea {
  background: #E4F0C8;
  padding: 2rem 0;
}
#idea div {
  background: #D2E69F url(../images/common/bg_logo.png) no-repeat;
  background-position: top left;
  padding: 1rem;
}
#idea div h2 {
  marghin-bottom: 1rem;
  border-bottom: #B8CA8C solid 1px;
  padding-bottom: 0.5rem;
}
/*	医院概要
-------------------------------*/
footer .overview {
  padding: 0 1rem 2rem;
}
.overview dl {
  margin-top: 1rem;
}
.overview address {
  font-style: normal;
}
.overview .f_left p {
  font-size: 1.5rem;
}
.overview iframe {
  margin-top: 10px
}
/* Copyright
-------------------------------*/
small {
  margin: -1rem auto 0;
  display: block;
  background: #544741;
  color: #fff;
  width: 100%;
  text-align: center;
  font-weight: 100;
  font-family: "Hiragino Maru Gothic ProN";
  font-size: 1.1rem;
}
/* ----------------------------------------------------------------------------------
	下層
---------------------------------------------------------------------------------- */
/*	院長紹介
-------------------------------
.bio dt{
	float:left;
	width:10rem;
	clear:both;
}
.bio dd{
	margin-left:10rem;
}*/
/*	診療案内
-------------------------------*/
/*	クリニック紹介
-------------------------------*/
ul.photos {
  display: flex;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
ul.photos li {
  widht: 100%;
  margin-bottom: 2rem;
  font-weight: bold;
}
.photos_L span {
  display: block;
  text-align: center;
  font-weight: bold;
}
/*	アクセス 駅から当院まで
-------------------------------*/
.route_thumb {
  overflow: hidden;
  list-style: none;
  margin: 0 auto 0 auto;
  padding: 1em 0 0 0;
  text-align: center;
}
.route_thumb li {
  display: inline-block;
  width: 100%;
  vertical-align: top;
  text-align: left;
  margin-bottom: 1.5rem;
}
.route_thumb li figure {
  text-align: center;
}
.mainarea .overview {
  border: none;
}
.icon_map {
  margin-bottom: 2rem;
  margin-top: 1rem;
}
/*	下層フッター
-------------------------------*/

.s_navi figure {
  width: 85%;
  margin: 1rem auto;
  padding: 0 0 1rem;
}

/* -----------------------------------------------------------------------------------------------------------------------------------
	PC
----------------------------------------------------------------------------------------------------------------------------------- */
@media print, screen and (min-width: 46.875em) {
  /* Common
-------------------------------*/
  body {
    font-size: 1.6rem;
    margin: 0;
    background: #EDF6DB;
  }
  /* 幅指定
-------------------------------*/
  div.wrapper {
    max-width: 115rem;
    margin: 0 auto;
  }
  /* 白背景
-------------------------------*/
  body > div.wrapper {
    background: #fff;
  }
  /* InnerFrame
-------------------------------*/
  .inner {
    margin: 0 auto;
    padding: 0;
  }
  /* Header
-------------------------------*/
  h1 {
    font-size: 0.7rem;
    margin: 0;
    padding-left: 2rem;
  }
  header {
    /* flex化 */
    display: flex;
    display: -webkit-flex;
    /* 両端に配置 */
    justify-content: space-between;
    -webkit-justify-content: space-between;
    /* 上下配置中央 */
    align-items: center;
    -webkit-align-items: center;
  }
  .head_logo {
    padding-left: 2rem;
  }
  .head_info figure {
    display: flex;
  }
  /* GlovalNavi
-------------------------------*/
  /* nav{
	background : linear-gradient(to bottom, #6dbcb9 50%, #62a9a6 50.01%);
} */
  nav ul {
    /*	font-size:1.6rem; */
    border-top: none;
  }
  nav li {
    /*	float:left; */
    width: 20%;
    margin-bottom: 0;
    background-image: none;
    border-bottom: 1px solid #e7e7e7;
    border-right: 1px solid #e7e7e7;
  }
  nav li:last-child {
    border-right: none;
  }
  nav li a {
    height: 100%;
    padding: 0.5rem 1rem;
  }
  nav li a img {
    padding-bottom: 1px;
  }
  nav li a:hover {
    background-color: #f8f8f8;
  }
  /*	nav .inner{
	padding:0;
}*/
  /* Mainarea 
-------------------------------*/
  .mainarea {
    width: 88rem;
    margin-top: 2rem;
    padding: 2rem 3rem;
  }
  /* SideNavi
-------------------------------*/
  .s_navi {
    margin-top: 4rem;
    width: 27rem;
  }
  .s_navi dl {
    background-color: #E4D8C0;
    text-align: left;
    margin-right: 2rem;
    border: solid 2px #E4D8C0;
    padding: 2rem 1.5rem;
    border-radius: 0 40px 0 0; /* 角を丸くする */
  }
  .s_navi ul {
    margin: 2rem 0 0;
    padding: 0;
    border: none; /*	border-top:#a2ca11 3px solid;
	border-bottom:#a2ca11 3px solid;
	width: calc(100% - 3rem); */
  }
  .s_navi ul li {
    width: 100%;
    margin: 0;
    text-align: left;
    border: none;
    padding: 0;
  }
  .s_navi ul li:last-child {
    border-bottom: none;
  }
  .s_navi ul li:nth-child(odd) {
    border-right: none;
  }
  .s_navi ul li a {
    display: block;
    width: 100%;
    padding: 0.5rem 0.5rem 0.5rem 1.5rem;
    background: #A8CE47;
    border: none;
    margin-bottom: 0.5rem;
  }
  .s_navi ul li a:hover {
    background: #D2E69F;
  }
  .s_navi figure {
	width: 100%;
    margin-right: 2rem;
    padding: 1rem 1.5rem;
  }
  /* キャッチコピー
-------------------------------*/
  .catchcopy {
    text-align: center;
  }
  /* Footer
-------------------------------*/
  /*.f_right{
	display: block;
}
.f_right ul{
	margin:0 2em 0 1em;
	display: block;
}
.f_right ul li{
	display:inline-block;
	margin-right:1em;
}
.f_right ul li::before{
	font-family: FontAwesome;
	content: "\f0da \00a0";
}　*/
  /* FooterNavi
-------------------------------*/
  .f_navi {
    text-align: left;
    width: 100%;
    margin-top: 0;
    background: #C2DB7D;
    display: block;
  }
  .f_navi .wrapper {
    padding: 1rem 1.5rem;
    display: flex;
    justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
  }
  .f_navi dl {
    padding: 0.5rem 0.2rem;
    font-size: 1.3rem;
  }
  .f_navi dt {
    border-bottom: 1px double#544741;
    text-align: left;
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
  }
  .f_navi ul {
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
  }
  .f_navi li {
    display: inline-block;
    padding: 0.3rem;
  }
  .f_navi a::before {
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-right: 0.1rem;
  }
  .f_navi li:last-child:after {
    content: none;
  }
  .f_navi a {
    color: #666;
  }
  /* Footer 所在地
-------------------------------

footer dl,
footer dt,
footer dd {
  box-sizing: border-box;
}
	
footer dt,
footer dd {
  padding: 0.5rem;
}

footer dt{
	width:7rem;
  border: 1px solid #ccc;
  float: left;
	}
footer dd:after {
  content: '';
  display: block;
  clear: both;
}*/
  /* LowerFooter
-------------------------------*/
  /*	キービジュアル
-------------------------------*/
  .kv-container {
    overflow: hidden;
    width: 100%;
  }
  .swiper-container {
    width: 200%;
    margin: 0 -50% !important;
  }
  .swiper-button-prev {
    left: calc(10px + 50%);
  }
  .swiper-button-next {
    right: calc(10px + 50%);
  }
  .swiper-slide {
    pointer-events: none;
    opacity: .5;
    -webkit-transition: opacity .5s;
    -moz-transition: opacity .5s;
    -ms-transition: opacity .5s;
    -o-transition: opacity .5s;
    transition: opacity .5s;
  }
  .swiper-slide-next {
    pointer-events: auto;
    opacity: 1;
  }
  .swiper-slide img {
    width: 100%;
  }
  /* 見出し 調整
-------------------------------*/
  #SubPage section h2:after {
    position: relative !important;
    content: url(../images/icon_h2.png);
    margin: 10px;
    top: 50%;
  }
  h2 {
    font-size: 2.3rem;
  }
  h3 {
    font-size: 2rem;
  }
  h4 {
    font-size: 2rem;
  }
  h5 {
    font-size: 1.8rem;
  }
  /* ----------------------------------------------------------------------------------
	Modules
---------------------------------------------------------------------------------- */
  /* PCで左→右に配置／SPで上→下に配置 */
  .flex_LRTB {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    -webkit-flex-direction: row;
  }
  /* PCで右→左に配置／SPで上→下に配置 */
  .flex_RLTB {
    display: flex;
    display: -webkit-flex;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
  }
  /* 画像のフロート SP時は解除 */
  figure.float-r {
    float: right;
    width: auto;
    margin-left: 2rem;
    margin-bottom: 1.5rem;
  }
  figure.float-l {
    float: left;
    width: auto;
    margin-right: 2rem;
    margin-bottom: 1.5rem;
  }
  /* リンクボタン */
  .linkbox {
    margin: 2rem auto;
    text-align: center;
  }
  .linkbox a:link {
    width: auto;
    padding: 0.7rem 4rem;
  }
  .linkbox_s {
    margin: 1.5rem auto;
    text-align: center;
  }
  .linkbox_s a:link {
    width: auto;
    padding: 0.2rem 4rem;
  }
  /* シンプルテーブル
------------------------------- */
  table.tbl_sim td, table.tbl_sim th, table.tbl_sim thead th {
    width: auto;
    display: table-cell;
  }
  table.tbl_sim tbody th {
    background: #faf0f7;
  }
  table.tbl_sim thead th {
    background: #f4ddec
  }
  table.tbl_sim th.nowrap {
    white-space: nowrap !important;
  }
  /* ColoredBox
-------------------------------*/
  .greenBox {
    padding: 2rem;
  }
  /* トップページ
-------------------------------*/
  /*	appeal
-------------------------------*/
  #appeal {
    margin: 6rem;
		flex-direction: row;
		justify-content: center;
		gap: 8rem;
  }
  #appeal figure {
		width: auto;
  }
  /* 理念 idea
-------------------------------*/
  #idea div {
    padding: 3rem 0 3rem 13rem;
  }
  #idea h2 {
    margin-bottom: 2rem;
  }
  /* 診療案内
-------------------------------*/
  /*	クリニック紹介
-------------------------------*/
  ul.photos {
    justify-content: space-around;
    margin-bottom: 3rem;
  }
  ul.photos li {
    widht: 32%;
    margin-bottom: 2rem;
  }
  .photos_L {
    margin-bottom: 2rem
  }
  .photos_L img {
    display: block;
    width: 45%;
    float: right;
    margin-right: 1rem;
  }
  /*	医院概要
-------------------------------*/
  .overview {}
  footer .overview {
    padding: 1rem;
  }
  .overview_fb {
    display: flex;
    padding: 0 1.5rem;
  }
  .overview_fb div {
    flex: 1;
  }
  footer .overview .data_area, footer .overview .data_area dl {
    margin-top: 0;
  }
  .overview .data_area dt {
    float: left;
    width: 9rem;
    margin-right: 1rem;
    margin-bottom: 0.1rem;
    font-size: 1.3rem;
  }
  .overview dd {
    margin-left: 10rem;
    margin-bottom: 0.5rem;
  }
  .overview dd::after {
    content: '';
    display: block;
    clear: both;
  }
  footer .overview h2 {
    margin-bottom: 2rem;
  }
  .overview table.time {
    width: 95%;
    font-size: 1.6rem;
    margin-left: 0;
  }
  .overview table.time th, .overview table.time td {
    padding: 1rem;
  }
  small.copyright {
    margin: 0;
    padding: 0.5rem;
  }
  /* アクセス 駅から当院まで
-------------------------------*/
  .route_thumb li {
    width: 24%;
  }
  .mainarea .overview {
    padding-top: 0;
    background: none !important;
  }
  .mainarea .overview dd {
    margin-left: 10rem;
  }
  #SubPage .mainarea .overview dd {
    width: calc(100% - 11rem);
    margin-left: 11rem;
  }
  #access table.time th {
    padding: 0.7rem;
    vertical-align: middle;
    width: 5rem;
  }
  table.time td {
    padding: 0.7rem 1rem;
    vertical-align: middle;
  }
  #SubPage .overview .transportation dt {
    width: 20rem;
    -moz-text-align-last: justify;
    text-align-last: justify;
  }
  #SubPage .overview .transportation dd {
    width: calc(100% - 21rem);
    margin-left: 21rem;
    padding-left: 0;
  }
  #SubPage .overview .transportation table.time th {
    width: 3.5rem;
  }
  #SubPage .overview .transportation table.time {
    width: calc(100% - 8rem);
    margin-right: 0;
  }
}
/* -----------------------------------------------------------------------------------------------------------------------------------
	Tablet 73.063=1169px  60em=960px
----------------------------------------------------------------------------------------------------------------------------------- */
/*
@media screen and (min-width: 46.875em) and (max-width: 73.063em){
}
*/

.bnr_caption {
	margin-top: 0.5em;
	color: #ED7892;
	font-weight: bold;
}
header .bnr_caption {
	margin: 0 0 1em;
	font-size: 1.4rem;
	text-align: left;
}

